rsm final report official

Upload: juan-pham

Post on 03-Jun-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 RSM Final Report Official

    1/318

    The Roll System using Mobile Device Page 1

    MINISTRY OF EDUCATION AND TRAINING

    FPT UNIVERSITY

    Capstone Project Document

    The Roll System using Mobile Device

    Group 1

  • 8/12/2019 RSM Final Report Official

    2/318

    The Roll System using Mobile Device Page 2

    Group member Pham Huy Hoang Team Leader 60740

    Nguyen Thanh Binh Team Member - 60321

    Nguyen Quoc Huy Team Member - 60551

    Do Minh Dat Team Member - 60545

    Supervisor Mr. Kieu Trong Khanh

    Ext. Supervisor N/ACapstone Project

    code

    RSM

    -Ho Chi Minh City, 09/2013-

  • 8/12/2019 RSM Final Report Official

    3/318

  • 8/12/2019 RSM Final Report Official

    4/318

  • 8/12/2019 RSM Final Report Official

    5/318

    The Roll System using Mobile Device Page 5

    Table of Contents

    Table of Contents ......................................................................................................................... 5

    List of Tables .............................................................................................................................. 10

    List of Figures ............................................................................................................................. 13

    Definitions, Acronyms, and Abbreviations .................................................................................... 19

    A. Introduction ........... ............ ............ ............ ............ ............ ............ ............ ............ ............ ............ ... 20

    1. Project Information ............ ............ ............ ............ ............ ............ ............ ............ ............ ....... 20

    2. Introduction ............ ............ ............ ............ ............. ........... ............ ............ ............ ............ ......... 20

    3. Current Roll Call System ........... ............ ............ ............ ............ ............ ............ ............ ........... 20

    4. Problem Definition.................. ............ ............ ............ ............ ............ ............ ............ ............ ... 20

    5. Proposed Solution ........... ............ ............ ............ ............ ............ ............ ............ ............ ........... 21

    Feature functions ............................................................................................................... 215.1

    Advantage and disadvantage ........... ............ ............ ............ ............ ............ ............ ..... 225.2

    6. Functional Requirement ........... ............ ............ ............ ............ ............ ............ ............ ........... 22

    Attendance Checking ........... ............ ............ ............ ............ ............ ............ ............ ......... 226.1

    Attendance Report ........... ............ ............ ............ ............ ............ ............ ............ ............ . 226.2

    Roll Call Management ........... ............ ............ ............ ............ ............ ............ ............ ....... 236.3

    Calendar Syncing ............ ............ ............ ............ ............ ............ ............ ............ ............ ... 236.4

    Student Management ............ ............ ............ ............ ............ ............ ............ ............ ....... 236.5 Create Account ........... ............ ............ ............ ............ ............ ............ ............ ............ ......... 236.6

    Instructor Management ........... ............ ............ ............ ............ ............ ............ ............ ... 236.7

    Class Management ............ ............ ............ ............ ............ ............ ............ ............ ............ . 236.8

    Subject Management ........... ............ ............ ............ ............ ............ ............ ............ ......... 236.9

    Semester Management ........... ............ ............ ............ ............ ............ ............ ............ ..... 246.10

    7. Role and Responsibility ............ ............ ............ ............ ............ ............ ............ ............ ........... 24

  • 8/12/2019 RSM Final Report Official

    6/318

    The Roll System using Mobile Device Page 6

    B. Software Project Management Plan ........... ............ ............ ............ ............ ............ ............ ..... 25

    1. Problem Definition.................. ............ ............ ............ ............ ............ ............ ............ ............ ... 25

    Name of this Capstone Project ...................................................................................... 251.1

    Problem Abstract ............ ............ ............ ............ ............ ............ ............ ............ ............ ... 251.2

    Project Overview ............ ............ ............ ............ ............ ............ ............ ............ ............ ... 251.3

    2. Project organization ........... ............ ............ ............ ............ ............ ............ ............ ............ ....... 28

    Software Process Model .................................................................................................. 282.1 Roles and responsibilities ........... ............ ............ ............ ............ ............ ............ ........... 302.2

    Tools and Techniques ........... ............ ............ ............ ............ ............ ............ ............ ....... 312.3

    3. Project Management Plan ............ ............ ............ ............ ............ ............ ............ ............ ....... 31

    Iteration ................................................................................................................................. 313.1

    Iteration Detail ........... ............ ............ ............ ............ ............ ............ ............ ............ ......... 343.2

    All Meeting Minutes ........... ............ ............ ............ ............ ............ ............ ............ ........... 413.3

    4. Coding Convention ............ ............ ............ ............ ............ ............ ............ ............ ............ ......... 41

    C. Software Requirement Specification ............ ............ ............ ............ ............ ............ ............ ... 42

    1. User Requirement Specification ............ ............ ............ ............ ............ ............ ............ ....... 42

    Instructor Requirement .................................................................................................. 421.1

    Admin Requirement ............ ............ ............ ............ ............ ............ ............ ............ ......... 421.2

    Staff Requirement ........... ............ ............ ............ ............ ............ ............ ............ ............ ... 421.3

    System Requirement ........... ............ ............ ............ ............ ............ ............ ............ ......... 431.4 Student Requirement ............ ............ ............ ............ ............ ............ ............ ............ ....... 431.5

    Guest Requirement ............ ............ ............ ............ ............ ............ ............ ............ ........... 431.6

    2. System Requirement Specification ........... ............ ............ ............ ............ ............ ............ ... 43

    External Interface Requirement .................................................................................. 432.1

    System Overview Use Case ........... ............ ............ ............ ............ ............ ............ ......... 452.2

    List of Use Case ............ ............ ............ ............ ............ ............ ............ ............ ............ ....... 472.3

  • 8/12/2019 RSM Final Report Official

    7/318

    The Roll System using Mobile Device Page 7

    3. Software System Attribute ........... ............ ............ ............ ............ ............ ............ ............ .... 185

    Usability .............................................................................................................................. 1853.1

    Reliability ........... ............ ............ ............ ............ ............ ............ ............ ............ ............ .... 1853.2

    Availability ............ ............ ............ ............ ............ ............ ............ ............ ............ ............ 1853.3

    Security ........... ............ ............ ............ ............. ........... ............ ............ ............ ............ ........ 1853.4

    Maintainability ........... ............ ............ ............ ............ ............ ............ ............ ............ ...... 1853.5

    Portability ............ ............ ............ ............ ............ ............ ............ ............ ............ ............ .. 1863.6 Performance ........... ............ ............ ............ ............ ............ ............ ............ ............ .......... 1863.7

    4. Conceptual Diagram ........... ............ ............ ............ ............ ............ ............ ............ ............ .... 186

    Data Dictionary ............................................................................................................................. 188

    D. Software Design Description ........... ............ ............ ............ ............ ............ ............ ............ .... 188

    1. Design Overview ............ ............ ............ ............ ............ ............ ............ ............ ............ .......... 188

    2. System Architectural Design ........... ............ ............ ............ ............ ............ ............ ............ 190

    3. Component Diagram ............ ............ ............ ............ ............ ............ ............ ............ ............ .. 192

    4. Detailed Description of Components ........... ............ ............ ............ ............ ............ ........ 194

    Class Diagram ................................................................................................................... 1944.1

    Class Diagram Explanation ........... ............ ............ ............ ............ ............ ............ ...... 1964.2

    Sequence Diagram ............ ............ ............ ............ ............ ............ ............ ............ .......... 2104.3

    5. User Interface Design ........... ............ ............ ............ ............ ............ ............ ............ ............ .. 234

    Instructor Interface Design ......................................................................................... 2345.1 Admin Interface Design ............ ............ ............ ............ ............ ............ ............ ............ 2465.2

    Staff Interface Design ............ ............ ............ ............ ............ ............ ............ ............ .... 2535.3

    Mobile Interface Design ........... ............ ............ ............ ............ ............ ............ ............ 2615.4

    6. Database Design ........... ............ ............ ............ ............ ............ ............ ............ ............ ............ 270

    Entity Relationship Diagram ...................................................................................... 2706.1

    Data Dictionary ............ ............ ............ ............ ............ ............ ............ ............ ............ .... 2726.2

  • 8/12/2019 RSM Final Report Official

    8/318

  • 8/12/2019 RSM Final Report Official

    9/318

  • 8/12/2019 RSM Final Report Official

    10/318

    The Roll System using Mobile Device Page 10

    List of Tables

    Table 1: Roles and Responsibility ..................................................................................................... 24

    Table 2: Hardware Requirement for Server ................................................................................. 27

    Table 3: Hardware Requirement for Mobile App ....................................................................... 28

    Table 4: Roles and Responsibility Details ...................................................................................... 31

    Table 5: Iteration ..................................................................................................................................... 33

    Table 6: Phase 1: Preliminary Investigation or Analysis ......................................................... 34

    Table 7: Phase 2: Face Detect & Recognize ................................................................................... 35

    Table 8: Phase 3: Student Management .......................................................................................... 36

    Table 9: Phase 4: Roll Call Management ......................................................................................... 38

    Table 10: Phase 5: Web Service Implement .................................................................................. 39

    Table 11: Phase 6: Attendance Checking........................................................................................ 40

    Table 12: Phase 7: Study Session Management ........................................................................... 40

    Table 13: Add Image for Single Student ..................................................................... 53

    Table 14: Add Image for Multi Students ............ ............ ............ ............ ............ ......... 56

    Table 15: Remove Student Images................................................................................ 60

    Table 16: Get Image From Log Image ........................................................................... 63

    Table 17: Create Request ................................................................................................... 66

    Table 18: Accept Request .................................................................................................. 68Table 19: Deny Request ..................................................................................................... 71

    Table 20: Create Account .................................................................................................. 75

    Table 21: Active Account .................................................................................................. 77

    Table 22: Inactive Account ............................................................................................... 80

    Table 23: Config System .................................................................................................... 82

    Table 24: Face Detection ................................................................................................. 86

  • 8/12/2019 RSM Final Report Official

    11/318

    The Roll System using Mobile Device Page 11

    Table 25: Recognize Student .......................................................................................... 88

    Table 26: Auto Free Storage Space .............................................................................. 89

    Table 27: Auto Active Roll Call ...................................................................................... 91

    Table 28: Auto Inactive Roll Call................................................................................... 93

    Table 29: Report Roll Call Attendance Rate.................................................................... 97

    Table 30: Edit Roll Call ......................................................................................................... 118

    Table 31: Add Subject .......................................................................................................... 121Table 32: Edit Subject .......................................................................................................... 124

    Table 33: Active Subject ..................................................................................................... 126

    Table 34: Inactive Subject .................................................................................................. 129

    Table 35: Add Class .............................................................................................................. 147

    Table 36 Edit Class ................................................................................................................ 150

    Table 37: Check Attendance by Taking Picture ........... ............ ............ .......... 155

    Table 38: Check Attendance Manually ............ ............ ............ ............ ............ .. 160

    Table 39: View Roll Call List .................................................................................. 163

    Table 40: Report Attendance by Class............................................................... 165

    Table 41: CheckPresent Rate ..................................................................................... 169

    Table 42: Check Present Rate By Learned Course ........... ............ ............ .......... 171

    Table 43: Check Present Rate by Learning Course.............. ............ ............ ...... 173

    Table 44: Upload Images as Request ....................................................................... 176Table 45: Login .................................................................................................................... 179

    Table 46: < Authorized User> Change Password ........... ............ ............ ............ ............ .......... 182

    Table 47: Logout ............................................................................................ 184

    Table 48: Entity Data Dictionary .................................................................................................... 272

    Table 49: Attribute Data Dictionary .............................................................................................. 275

    Table 50: Core Workflow Test Case .............................................................................................. 289

  • 8/12/2019 RSM Final Report Official

    12/318

  • 8/12/2019 RSM Final Report Official

    13/318

    The Roll System using Mobile Device Page 13

    List of Figures

    Figure 1: Agile Development Model ................................................................................................. 29

    Figure 2: System Overview Use Case ............................................................................................... 47

    Figure 3: Overview Use Case ............................................................................................ 49

    Figure 4: Add Image for Single Student ...................................................................... 49

    Figure 5: Add Image for Multi Student ........... ............ ............ ............ ............ ............ . 53

    Figure 6: Remove Student Image .................................................................................. 57

    Figure 7: Get Image From Log Images ........... ............ ............ ............ ............ ............ ... 60

    Figure 8: Create Request .................................................................................................... 63

    Figure 9: Accept Request ................................................................................................... 66

    Figure 10: Deny Request .................................................................................................... 69

    Figure 11: Create Account ................................................................................................ 72

    Figure 12: Active Account ................................................................................................ 75

    Figure 13: Inactive Account ............................................................................................. 78

    Figure 14: Config System .................................................................................................. 80

    Figure 15: Overview Use Case ....................................................................................... 83

    Figure 16: Face Detection ................................................................................................ 84

    Figure 17: Recognize Student ........................................................................................ 86

    Figure 18: Auto Free Storage Space ............................................................................ 88Figure 19: Auto Active Roll Call .................................................................................... 90

    Figure 20: Auto Inactive Roll Call ............ ............ ............ ............ ............ ............ ......... 92

    Figure 21: Overview Use Case ............................................................................................. 94

    Figure 22: Report Roll Call Attendance Rate ............ ............ ............ ............ ............ ..... 95

    Figure 23: Report Student List for Final Exam ............ ............ ............ ............ ............ . 97

    Figure 24: Add Roll Call ....................................................................................................... 100

  • 8/12/2019 RSM Final Report Official

    14/318

    The Roll System using Mobile Device Page 14

    Figure 25: Add Session ......................................................................................................... 103

    Figure 26: Change Session Time ...................................................................................... 107

    Figure 27: Change Session Instructor ............................................................................ 111

    Figure 28: Edit Roll Call ....................................................................................................... 115

    Figure 29: Add Subject ........................................................................................................ 118

    Figure 30: Edit Subject ........................................................................................................ 121

    Figure 31: Add Instructor ................................................................................................... 139Figure 32: Edit Instructor ................................................................................................... 142

    Figure 33: Add Class ............................................................................................................ 145

    Figure 34: Edit Class ............................................................................................................ 148

    Figure 35: Overview Use Case .............................................................................. 151

    Figure 36: Capture and Show result attendance ............ ............ ............ ........ 152

    Figure 37: Check Attendance Manually .................... ............ ............ ............ .... 156

    Figure 38: View Roll Call Detail ............ ............ ............ ............ ............ ............ .... 160

    Figure 39: Report Attendance by Class ........... ............ ............ ............ ............ .. 163

    Figure 40: Overview Use Case ................................................................................... 166

    Figure 41: CheckPresentPresent Rate ........... ............ ............ ............ ............ .......... 166

    Figure 42: Check Present Rate by Learned Course .................... ............ ............ 169

    Figure 43: Check Present Rate by Learning Course ........... ............ ............ ........ 172

    Figure 44: Upload Image as Request ...................................................................... 174Figure 45: Overview Use Case ....................................................................................... 177

    Figure 46: Login .................................................................................................................. 177

    Figure 47: < Authorized User> Overview Use Case................................................................. 179

    Figure 48: < Authorized User> Change Password ........... ............ ............ ............ ............ ........ 180

    Figure 49: < Authorized User> Logout ......................................................................................... 182

    Figure 50: Conceptual Diagram ...................................................................................................... 188

  • 8/12/2019 RSM Final Report Official

    15/318

    The Roll System using Mobile Device Page 15

    Figure 51: Multi-tier Architecture (N-tier Architecture) ............ ............ ............ ............ ...... 191

    Figure 52: Component Diagram...................................................................................................... 194

    Figure 53: Class Diagram ................................................................................................................... 196

    Figure 54: Add Image for Singe Student Sequence Diagram ........... ............ ............ ............ 210

    Figure 55: Add Image for Many Students Sequence Diagram ........... ............ ............ .......... 211

    Figure 56: Delete Student Image Sequence Diagram ............................................................. 212

    Figure 57: Create Account Sequence Diagram .......................................................................... 213Figure 58: Configure System Sequence Diagram ..................................................................... 214

    Figure 59: Face Detection Sequence Diagram ........................................................................... 215

    Figure 60: Face Recognition Sequence Diagram ...................................................................... 216

    Figure 61: Auto Free Storage Space Sequence Diagram ........... ............ ............ ............ ........ 217

    Figure 62: Auto Active Roll Call Sequence Diagram................................................................ 218

    Figure 63: Add Roll Call Sequence Diagram ............................................................................... 219

    Figure 64: Edit Roll Call Sequence Diagram ............................................................................... 220

    Figure 65: Import Student List Sequence Diagram ................................................................. 221

    Figure 66: Export Report Sequence Diagram ............................................................................ 222

    Figure 67: Add Student Sequence Diagram ................................................................................ 223

    Figure 68: Add Class Sequence Diagram ..................................................................................... 224

    Figure 69:Edit Class Sequence Diagram ...................................................................................... 225

    Figure 70: Add Subject Sequence Diagram................................................................................. 226Figure 71: Edit Subject Sequence Diagram................................................................................. 227

    Figure 72: Take Attendance Auto Sequence Diagram ............ ............ ............ ............ ............ 228

    Figure 73: Take Attendance Manual Sequence Diagram ................ ............ ............ ............ .. 229

    Figure 74: Take Attendance Offline & Sync Data Sequence Diagram..................... .......... 230

    Figure 75: View Roll Call Detail Sequence Diagram ............ ............ ............ ............ ............ .... 231

    Figure 76: Report Attendance by Class Sequence Diagram ........... ............ ............ ............ .. 232

  • 8/12/2019 RSM Final Report Official

    16/318

    The Roll System using Mobile Device Page 16

    Figure 77: Check Present Rate Sequence Diagram ............ ............ ............ ............ ............ ...... 233

    Figure 78: Instructor Home Page ................................................................................................... 234

    Figure 79: Instructor Teaching Calendar ................................................................................. 236

    Figure 80: Instructor Present Roll Call ..................................................................................... 238

    Figure 81: Instructor Roll Call Detail ......................................................................................... 241

    Figure 82: Instructor Check Attendance Manual .................................................................. 244

    Figure 83: Admin Home Page .......................................................................................................... 246Figure 84: Admin Student List ..................................................................................................... 248

    Figure 85: Admin Single Student Info ....................................................................................... 250

    Figure 86: Admin Select Images for Students ........................................................................ 252

    Figure 87: Staff - Roll Call List ......................................................................................................... 254

    Figure 88: Staff - Create Roll Call .................................................................................................... 257

    Figure 89: Staff - Check Attendance .............................................................................................. 259

    Figure 90: Login Activity ................................................................................................................... 261

    Figure 91: Course Activity ................................................................................................................. 263

    Figure 92: Camera Activity ............................................................................................................... 265

    Figure 93: Roll Call Activity .............................................................................................................. 267

    Figure 94: Check Attendance Activity .......................................................................................... 269

    Figure 95: Entity Relationship Diagram ...................................................................................... 272

    Figure 96: Example of Haar Future ............................................................................................... 276Figure 97: Apply Haar future to sub-window ........................................................................... 276

    Figure 98: Classifier Cascade ........................................................................................................... 276

    Figure 99: Viola-Jones method flowchart ................................................................................... 278

    Figure 100: Face Recognition Process ......................................................................................... 279

    Figure 101: Face Recognition Algorithm Flowchart ........... ............ ............ ............ ............ .... 281

    Figure 102: Database Relationship Diagram ............................................................................. 283

  • 8/12/2019 RSM Final Report Official

    17/318

  • 8/12/2019 RSM Final Report Official

    18/318

  • 8/12/2019 RSM Final Report Official

    19/318

    The Roll System using Mobile Device Page 19

    Definitions, Acronyms, and Abbreviations

    RSM Roll System MobileFace Detection Face detectionis a computer technology that determines the

    locations and sizes of human faces in arbitrary (digital) images.It detects facial features and ignores anything else, such asbuildings, trees and bodies.

    http://en.wikipedia.org/wiki/Face_detectionFace Recognition Face recognition is the task of identifying an already detected

    object as a KNOWN or UNKNOWN face, and in more advancedcases, telling EXACTLY WHO'S face it is!

    Student List forfinal exam

    A list contains all the students who can take part in the finalexam of a roll call (Student with absent rate > 20%cant takepart in final exam).

    http://en.wikipedia.org/wiki/Face_detectionhttp://en.wikipedia.org/wiki/Face_detectionhttp://en.wikipedia.org/wiki/Face_detection
  • 8/12/2019 RSM Final Report Official

    20/318

    The Roll System using Mobile Device Page 20

    A.Introduction1.Project Information

    - Project name: The roll system using mobile device- Project Code: RSM- Product Type: Website, Phone Application- Start Date: September 9th, 2013

    - End Date: December14th, 2013

    2.IntroductionRoll system was known with HPLite32, SimplePass of HP fingerpint system; roll system with ID card using by almost corporationor company around the world; the system face identify by Uniqul Finland publish on 7/15/2013 or LogonSmart by Asus. Today,the trend machines replace humans in the hard work or the work does not require high intelligence became popular. So rollsystem face recognition becomes ever more necessary. The number of students in a university as well as the number ofemployees in large corporations in Vietnam is increasing dramatically, which means that the system should have professional rollwith accuracy high.

    3.Current Roll Call SystemBelow are some current roll call systems:- By manual: This system is widely used in school, university. The instructor will call the name of each student, check the

    absent, then submit the result to log system.- Using ID card: This system is usually used in corporations. Each employee has a card. The card will be read by a card reader

    to check the attendance of the employee.- Using fingerprint: This system is currently used in FPT University. 15 minutes before and after a studying session, the student

    must show his fingerprint to a machine to take attendance.- Using camera + face recognition: This system is just in experimental stage. Each classroom has a camera. At the beginning of

    the studying session, the instructor uses the computer, connect to the camera and take picture of classroom. The system willrecognize the student in the picture, write to roll call log system.

    4.Problem DefinitionBelow are the advantage and disadvantage of current roll call systems:

  • 8/12/2019 RSM Final Report Official

    21/318

    The Roll System using Mobile Device Page 21

    - By manual+ Advantage: Simple to implement, cheap.+ Disadvantage: The roll call take 3-5 minutes, take effort of instructor, wrong roll call.

    - Using ID card+ Advantage: High accuracy, not take much effort to check attendance.+ Disadvantage: High cost (ID Card, Card Reader). Risk of ID card lending, missing.

    - Using fingerprint

    + Advantage: Quickly. No effort must be made from instructor.+ Disadvantage: Cost of fingerprint reading machine. Attendance Data is lost in case of network error.- Using camera + face recognition

    + Advantage: Quickly compare to traidional method (10-30 seconds). The entire class picture can be stored as log.+ Disadvantage: High cost (Camera cost). Face recognition is not accuracy.

    5.Proposed SolutionThe system is intended for used in only school or university, where the pupils/students sit in a classroom/examine room (Asmall room, from 20-30 students). The system must to manage the course, teacher, check attendance. In detail, the system willenable following function:

    Feature functions5.1- The system will provide a method for admin to upload the students images, select the students in the images to make

    training data.- The admin can select image from log files, or make request for student to upload images to make training data.- The staff can manage information about semester, course, class, instructor, students.

    - The system will make a roll call list (Contains: Course, Class, Time, Instructor, Student List) for each class, based on the inputinformation.

    - The system will provide a method to assign instructor and student to course. The system must check the availability of theinstructor and class before assigning.

    - The system must support a method to change instructor of a course (When instructor is sick or busy), change or add newstudy session for a course. The system will send a mail to notify the instructor about schedule changing.

    - The system can output attendance report of a roll call, or the student list for final exam.

  • 8/12/2019 RSM Final Report Official

    22/318

    The Roll System using Mobile Device Page 22

    - The instructor/examiner can view info about: The course they are teaching (Contains class, subject, student list of thatcourse).

    - The instructor can view his teaching calendar, or sync this calendar to his/her Google Calendar account.- The instructor will use the mobile application. At the beginning of a studying session, a picture of entire class will be taken for

    checking attendance.Base on the student list, the system will recognize the students from the picture. The mobile app willnotify attendance result to instructor.

    - In case of network error or wrong recognition, the instructor can check attendance manually.

    - The student can view info about what course theyre studying.- The student can view their own attendance of the course they participated in.

    Advantage and disadvantage5.2The advantage and disadvantage of the proposed solution:- Advantage: Small cost or no cost (If the instructor has phone). Face Recognition accuracy is about 70~80%, will reach 100%

    with confirm from instructor. The attendance check is quickly (10~30 seconds). The taken picture can be stored as log.- Disadvantage: Complex to implement. The accuracy can vary depend on: Noise, brightness, number of people, image

    solution Need student information to setup (Each student must have at least 10 images as image data).

    6.Functional RequirementFunction requirement of the system are listed as below:

    Attendance Checking6.1- At the beginning of each studying session, the instructor takes a picture of entire class for attendance checking.The mobile

    app will notify the result to the instructor.

    - In case of wrong recognition, the instructor can re-check attendance manually. The system must support instructor to checkattendance offline when the server or network is not available.- The instructor can view/re-check the attendance log of the course they are teaching.- The student can view the attendance log of the course they are studying.

    Attendance Report6.2- The system will make attendance report, which shows the attendance, absent of student.- The system can export report about the student list for final exam.

  • 8/12/2019 RSM Final Report Official

    23/318

    The Roll System using Mobile Device Page 23

    - The report is only available to staff and instructor.

    Roll Call Management6.3- The staff can add/edit/active/inactive roll call.- The staff must input info of a roll call: The course, the instructor who teaches the course, the student list, the time of the

    course (Begin, End Date).- The staff can change schedule, change instructor of a study session in roll call. The staff can also create add new study

    session.

    - When the schedule is changed, an email will be sent to instructor.

    Calendar Syncing6.4- The instructor can see his teaching calendar: What class, subject he will teach at time. - This calendar can be synced with the instructors Google Calendar account.

    Student Management6.5- The staff can add/edit/active/inactive student.- Each student must has a training set, contains 8-20 images for face recognizing. The admin can upload images, select the faces

    of the students to add. The admincancan also remove images from training set.- The admin can use the log images to get student images, or send upload request to student.

    Create Account6.6- The account of staff, instructors and students create by admin.- Each user can change their password.

    Instructor Management6.7- The staff can add/edit/active/inactive instructor.

    Class Management6.8- The staff can add/edit/active/inactive class.

    Subject Management6.9- The staff can add/edit/active/inactive subject.

  • 8/12/2019 RSM Final Report Official

    24/318

    The Roll System using Mobile Device Page 24

    Semester Management6.10- The staff can add/edit/active/inactive semester.

    7.Role and ResponsibilityNo Full Name Role Position Contact

    1 Kiu TrngKhnh

    ProjectManager

    Instructor [email protected]

    2 Phm HuyHong

    Developer Team Leader [email protected]

    3 Nguyn ThanhBnh

    Developer Team Member [email protected]

    4 Nguyn QucHuy

    Developer Team Member [email protected]

    5 Minh t Developer Team Member [email protected]

    Table 1: Roles and Responsibility

    mailto:[email protected]:[email protected]:[email protected]:[email protected]
  • 8/12/2019 RSM Final Report Official

    25/318

    The Roll System using Mobile Device Page 25

    B.Software Project Management Plan1.Problem Definition

    Name of this Capstone Project1.1The roll system using mobile device(RSM)

    Problem Abstract1.2

    Roll system was known with HPLite32, SimplePass of HP fingerpint system; roll system with ID card using by almostcorporation or company around the world; the system face identify by Uniqul Finland publish on 7/15/2013 orLogonSmart by Asus. Today, the trend machines replace humans in the hard work or the work does not require highintelligence became popular. So roll system face recognition becomes ever more necessary. The number of students in auniversity as well as the number of employees in large corporations in Vietnam is increasing dramatically, which means thatthe system should have professional roll with accuracy high.

    Project Overview1.3 The Current System1.3.1Below are some current roll call systems:

    - By manual: This system is widely used in school, university. The instructor will call the name of each student, check theabsent, then submit the result to log system.+Advantage: Simple to implement, cheap.+Disadvantage: The roll call take 3-5 minutes, take effort of instructor, wrong roll call.

    - Using ID card: This system is usually used in corporations. Each employee has a card. The card will be read by a card reader

    to check the attendance of the employee.+Advantage: High accuracy, not take much effort to check attendance.+Disadvantage: High cost (ID Card, Card Reader). Risk of ID card lending, missing.

    - Using fingerprint: This system is currently used in FPT University. 15 minutes before and after a studying session, the studentmust show his fingerprint to a machine to take attendance.+ Advantage: Quickly. No effort must be made from instructor.+ Disadvantage: Cost of fingerprint reading machine. Attendance Data is lost in case of network error.

  • 8/12/2019 RSM Final Report Official

    26/318

  • 8/12/2019 RSM Final Report Official

    27/318

    The Roll System using Mobile Device Page 27

    - In case of network error or wrong recognition, the instructor can re-check attendance manually.

    Boundaries of the System1.3.3

    - The system is intended for using university, with small classroom, or for the examine room (The testing site will be FPTUniversity).

    - The maximum number of a room is 30 people. The room size is about: 5m x 8m- The system is not intended for managing these aspect:

    + Auto-arranging the teaching calendar of instructor, teaching calendar of semester.

    + Managing instructor qualification, salary info.+ Managing the testing, mark of student of each class.

    - The language of the system is English.- The complete product includes:

    + The website, for admin, staff and students. Instructor can also use the website to change profile, view roll call info,check attendance.+ Mobile Application for instructor to check attendance.+ All the process involved document.

    Development Environment1.3.4

    1.3.4.1Hardware requirementsFor Server

    Windows Minimum Requirements Recommended

    Internet Connection Cable, Wifi (4 Mbps) Cable, Wifi (8 Mbps)

    Operating System XP, Vista, 7, 8 XP, Vista, 7, 8

    Computer Processor Intel Core 2 Duo Intel Core(TM) i5 CPU , M 460@ 2.53GHz

    Computer Memory 1GB RAM 3GB or more

    Table 2: Hardware Requirement for Server

    For Mobile Application

    Mobile Minimum Requirements Recommended

    Internet Connection Wifi (2Mbps) Wifi (4Mbps)

  • 8/12/2019 RSM Final Report Official

    28/318

    The Roll System using Mobile Device Page 28

    Operating System Android 4.0 or later version Android 4.4

    Hardware Touchscreen, Camera 2.0 MP orabove

    Touchscreen, Camera 4.0 MP orabove

    Memory 512 MB or more 1 GB or more

    Table 3: Hardware Requirement for Mobile App

    1.3.4.2Software requirements- Microsoft Windows 7 Service Pack 1: operating system and platform for development.- SQL Server 2008 Express:used to create and manage the database for system.- StarUML: used to create models and diagrams- Skype: used for communication and meeting- Visual Studio 2010: used to implement website and web service.- Eclipse Juno 4.4, Android SDK 22.0.5, ADT 22.0.5 & JDK 7u25: used to implement mobile application.- Google Code & TortoiseSVN: used for source control.

    2.Project organizationSoftware Process Model2.1

    Project is developed under agile model.

  • 8/12/2019 RSM Final Report Official

    29/318

    The Roll System using Mobile Device Page 29

    Figure 1: Agile Development Model

    For more information:http://www.indicthreads.com/1439/quick-introduction-to-agile-software-development/

    (Owner: IndicThreads.com. Online Software Developer Magazine and Conferences)

    http://www.indicthreads.com/1439/quick-introduction-to-agile-software-development/http://www.indicthreads.com/1439/quick-introduction-to-agile-software-development/http://www.indicthreads.com/1439/quick-introduction-to-agile-software-development/http://www.indicthreads.com/1439/quick-introduction-to-agile-software-development/
  • 8/12/2019 RSM Final Report Official

    30/318

    The Roll System using Mobile Device Page 30

    Roles and responsibilities2.2No Full name Role in Group Responsibilities

    1 Kiu Trng Khnh Project manager Specify userrequirement

    Control thedevelopment process

    Give out technique and

    business analysissupport

    2 Phm Huy Hong Team Leader,BA, DEV, Tester

    Managing process

    Designing database

    Clarifying requirements

    Prepare documents

    GUI Design

    Create test plan Coding Testing

    3 Nguyn Thanh Bnh Team Member,BA, DEV, Tester

    Designing database

    Clarifying requirements

    Prepare documents

    GUI Design

    Create test plan Coding

    Testing4 Nguyn Quc Huy Team Member,

    BA, DEV, Tester Designing database

    Clarifying requirements

    Prepare documents

    GUI Design

  • 8/12/2019 RSM Final Report Official

    31/318

  • 8/12/2019 RSM Final Report Official

    32/318

  • 8/12/2019 RSM Final Report Official

    33/318

    The Roll System using Mobile Device Page 33

    class andcourse .

    process.

    Web Service

    Implement

    -Create anddeploy theweb serviceon server.Provide

    RestFulservice.

    -Runningweb service

    20 man-days

    Depend onRoll callmanagement

    Lack ofexperience onmaking anddeploying webservice.

    Attendance

    checking

    -Instructoruse mobileapp to takepicture, usepicture forattendancechecking.-Instructorand admincan viewreports.

    -Android Appwithattendancecheckingfunction

    25 man-days

    Depend onWeb ServiceImplement

    Lack ofexperience onAndroiddevelopment,transfer filebetweenAndroid andweb service.No Androiddeviceavailable fortesting.

    Study

    sessionmanagement

    - Staff can

    add session,chanageinstructor,teaching timeof existedsession

    - Study

    sessionmanagementfunction.

    20 man-

    days

    N/A Lack of

    experience ofmaking report.Not have aclearunderstandingabout businessprocess.

    Table 5: Iteration

  • 8/12/2019 RSM Final Report Official

    34/318

    The Roll System using Mobile Device Page 34

    Iteration Detail3.2 Phase 1: Preliminary Investigation or Analysis3.2.1Task Description Author

    1. Identifying and

    studying existing

    systems

    Find which systemscurrently provide similarservice, their strengths andweakness.

    HuyNQ, HoangPH, BinhNT

    2. Identifying and

    clarifying main functionsDefine which main functionssystem should provide.

    HuyNQ, HoangPH, BinhNT

    3. Introduction Complete IntroductionReport.

    HoangPH

    4. Project Management

    Plan

    Prepare ProjectManagement Plan.

    HoangPH

    5. Website Prototype Build a prototype ofproposed system (Website).

    HuyNQ, HoangPH

    6. Mobile Prototype Build a prototype ofproposed system (MobileApp).

    BinhNT, HoangPH

    7. Design ER diagram Design ER diagram. HoangPH, HuyNQ, BinhNT

    Table 6: Phase 1: Preliminary Investigation or Analysis

    Phase 2: Face Detect & Recognize3.2.2

    Task Description Author

    1. Identifying

    Requirement and

    Planning

    Which feature this functionshould have and how toimplement.

    HoangPH

    2. Studying Face

    Detection & Recognition

    Studying algorithm,implement by using library

    HoangPH

  • 8/12/2019 RSM Final Report Official

    35/318

  • 8/12/2019 RSM Final Report Official

    36/318

    The Roll System using Mobile Device Page 36

    student list from excel file.4. Manage Student Face Each student has a training

    set, which contains 8-20faces.Allow admin to add, editimages in this training set.

    HoangPH, HuyNQ

    5. Use Log Image for

    Recognizer Training

    Admin can select image

    from log to train therecognizer, for higheraccuracy

    HoangPH

    6. Send Image Upload

    Request to Student

    If the student image isntenough, admin can sendrequest for student toupload image

    HuyNQ, HoangPH

    7. Implement GUI Create the interface formanaging student info

    HuyNQ, HoangNQ, BinhNT

    8. Testing Test system behavior andperformanceTest user behavior andperformance

    HoangPH, HuyNQ

    9. Document Adding SRS, SDD,Installation Guide, Manual

    Guide

    HoangPH, HuyNQ

    Table 8: Phase 3: Student Management

    Phase 4: Roll Call Management3.2.4

    Task Description Author

    1. Identifying

    Requirement and

    Which feature this functionshould have and how to

    HoangPH, HuyNQ, BinhNT

  • 8/12/2019 RSM Final Report Official

    37/318

    The Roll System using Mobile Device Page 37

    Planning implement.2. Manage Instructor Allow staff to

    add/edit/active/inactiveinstructor

    HuyNQ

    3. Manage Course Allow staff toadd/edit/active/inactivecourse

    HuyNQ

    4. Manage Class Allow staff toadd/edit/active/inactivecourse.Assign student to class

    HuyNQ

    5. Manage semester Allow staff toadd/edit/active/inactivesemester

    HuyNQ

    6. Manage Roll Call Allow staff tocreate/edit/delete roll call.Each roll call contain info:The instructor, the studentlist, the course, time, begin end dateAssign, remove studentto/from roll call

    HuyNQ, HoangPH

    7. Export Excel Report Export the attendancereport (Containsattendance, absent rate ofstudent in a roll call).Export the student list forfinal exam of a roll call.

    HoangPH, HuyNQ

    8. Implement GUI Create the interface formanaging roll call

    HuyNQ, BinhNT

  • 8/12/2019 RSM Final Report Official

    38/318

    The Roll System using Mobile Device Page 38

    9. Testing Test system behavior andperformanceTest user behavior andperformance

    HoangPH, HuyNQ, BinhNT

    10. Document Adding SRS, SDD,Installation Guide, ManualGuide

    HoangPH, HuyNQ, BinhNT

    Table 9: Phase 4: Roll Call Management

    Phase 5: Web Service Implement3.2.5

    Task Description Author

    1. Identifying

    Requirement and

    Planning

    Which feature this functionshould have and how toimplement.

    HoangPH, HuyNQ, BinhNT

    2. Studying WebService Studying the create andusing of web serivce

    HuyNQ, HoangPH

    3. Instructor Login Check the input id andpassword from mobile tologin instructor

    HuyNQ

    4. Get Instructor Info,

    Roll Call List

    Based on the instructors id,show to current roll call list

    HuyNQ, HoangPH

    5. Face Recognize From

    Android Camera

    Studying about transferringimage files between Androidand webserivceTransfer the result back toMobile for showing

    HuyNQ, BinhNT

    6. Check Attendance

    Manually

    Allow instructor to confirmand re-check attendance

    HoangPH, HuyNQ, BinhNT

    7. Testing Test system behavior and HoangPH, HuyNQ, BinhNT

  • 8/12/2019 RSM Final Report Official

    39/318

  • 8/12/2019 RSM Final Report Official

    40/318

  • 8/12/2019 RSM Final Report Official

    41/318

    The Roll System using Mobile Device Page 41

    All Meeting Minutes3.3Referto Meeting Minutes folder.

    4.Coding ConventionJava: Using to develop Android App.

    Summary:

    - Naming Convention.

    - Indentation.- Declaration.

    - Code Examples

    Follow Code Conventions for the Java TM Programming Language, by Sun Microsystems, rev April 20, 1999.

    C#: Using to develop website and web service.

    Summary:

    - Naming Convention.

    - Layout Convention.

    - Commenting Convention.

    - Language Guidelines

    Using C# Code Convention From:

    http://msdn.microsoft.com/en-us/library/vstudio/ff926074.aspx

    http://msdn.microsoft.com/en-us/library/vstudio/ff926074.aspxhttp://msdn.microsoft.com/en-us/library/vstudio/ff926074.aspxhttp://msdn.microsoft.com/en-us/library/vstudio/ff926074.aspx
  • 8/12/2019 RSM Final Report Official

    42/318

    The Roll System using Mobile Device Page 42

    C.Software Requirement Specification1.User Requirement Specification

    Instructor Requirement1.1Instructor is teacher of the university. Instructors account iscreated by admin.Instructor can use mobile app or website, that can

    do functions:

    Check Attendance Auto/Manually View/Sync Teaching Calendar

    Get Attendance Report

    Admin Requirement1.2Admin is the one who maintained and config the system, and manage the image data of student. Admin can do functions:

    Manage Student Image: Add/Delete Students Image

    Use log image to train the face recognizer

    Manage Image Upload Request: Create/Accept/Deny

    Manage Account: Create/Edit/Active/Inactive Account

    Configure System

    Staff Requirement1.3Staff is the employee of the university office. Staffs account is created by admin. Staff can use website with these functions:

    Manage Roll Call: Add/Edit Roll Call. Change Roll Call Student List

    Manage Study Session: Add/Change Time/Instrctuor of Study Session

    Report Attendance Rate: Report by Class, Block, Student. Export report

    Manage Subject: Add/ Edit/Active/ Inactive Subject

    Manage Class: Add/Edit /Active/ Inactive Class

    Manage Instructor: Add/Edit/Active/InactiveInstructorInstructor

    Manage Semester: Add/Edit/Active/InactiveSemesterSemester

  • 8/12/2019 RSM Final Report Official

    43/318

    The Roll System using Mobile Device Page 43

    Manage Student: Add/Edit Student. Import Student List

    Check Attendance of existed Roll Call

    System Requirement1.4System is also an actor, run in the background to keep the system working. System can do functions:

    Auto free storage space

    Face Detection

    Face Recognition: Recognition Student/Store Result Manage Roll Call: Auto Active/Inactive Roll Call

    Student Requirement1.5Student is the student of the university. Students account is created by admin. . Staff can use website with function:

    Check own present rate

    Guest Requirement1.6Guest is a person who doesnt have access to the system. To use system functions, guest must Login.

    2.System Requirement SpecificationExternal Interface Requirement2.1 User Interface2.1.1

    The interface of website is clear, do not annoy customer.

    The interface of mobile app must be clear, compatibale with touch screen. The size of controls must be big enough totouch on smartphone.

    The error, warning messages must be make clear, easy to understand. Error warning does not disturb customer.

    Hardware Interface2.1.2

    The system will use the standard hardware and data communications resources of a standard computer.

    Software Interface2.1.3

    Firefox Browser, Chromes with Resolution (1024*768) or bigger and support JavaScript and HTML5

  • 8/12/2019 RSM Final Report Official

    44/318

    The Roll System using Mobile Device Page 44

    Smartphone with Android 4.0 or above. Screen size (70 x 120 mm) or bigger.

    Communication Protocol2.1.4

    Website using HTTP protocol for communication between the web browser and the web server.

    Mobile app using HTTP protocol for communicating between app and web service.

  • 8/12/2019 RSM Final Report Official

    45/318

    The Roll System using Mobile Device Page 45

    System Overview Use Case2.2

  • 8/12/2019 RSM Final Report Official

    46/318

  • 8/12/2019 RSM Final Report Official

    47/318

    The Roll System using Mobile Device Page 47

    Figure 2: System Overview Use Case

    List of Use Case2.3 Overview Use Case2.3.1

  • 8/12/2019 RSM Final Report Official

    48/318

    The Roll System using Mobile Device Page 48

  • 8/12/2019 RSM Final Report Official

    49/318

    The Roll System using Mobile Device Page 49

    Figure 3: Overview Use Case

    2.3.1.1 Add Image for Single StudentUse Case Diagram

    Figure 4: Add Image for Single Student

    Use Case Specification

    USE CASE AD001

    Use Case No. AD001 Use Case Version 2.0

    Use Case Name Add Image for Single StudentAuthor Pham Huy HoangDate 20/09/2013 Priority Normal

    Actor:AdminSummary:

    This user case allow admin add image data for a student.Goal:

    Image of a students will be stored on server, the links to images is stored in databaseTriggers:

    - For face recognition, our system must store images of students face.

  • 8/12/2019 RSM Final Report Official

    50/318

  • 8/12/2019 RSM Final Report Official

    51/318

    The Roll System using Mobile Device Page 51

    Class: Dropdownlist, data source:All active class in database.

    2 Click on images button.Redirect to Student Detail Page, containsdetail of Student Image Data, include:

    Student Current Image: A list ofimages

    File Upload Control Upload: button

    2 Select the students imagesfrom computer.

    The selected images will be displayed asthumbnails.[Exception 1]

    3 Click Upload button.System will detect student faces fromuploaded images, then display image fullsize with white face regions (See UseCase SY001)[Exception 2, 3]

    4 Select students face fromface region.

    Click Submit Result button.The selected face region will be croppedfrom original picture, stored into server.Faces owner and link will be stored indatabase. [Exception 4]The pop-up is closed. The Student ListPage is auto refresh.

  • 8/12/2019 RSM Final Report Official

    52/318

    The Roll System using Mobile Device Page 52

    Alternative Scenario:No Actor Action System Response1 [Alternative 1]

    - Select a class from Classdrop down list.- Press Select button.

    A table show the records of all students in

    selected class.Table with 5 columns:

    - Student Code: label- Name: label- Email: label- Image Data: images button- Request Request Upload

    button.Exceptions:

    No Actor Action System Response1 Select more than 20 images Display error message: Too much

    images. Only process first 20 images2 Not select image, click

    Upload buttonDisplay error message: Please chooseimages for uploading

    3 - Upload images dont

    contain human faces.Or-No faces detected fromuploaded images

    Display error message: No face found.

    Select another images

    4 The selected face already inthe database

    Display message: Face XXX existed indatabase

    Relationships: Login,Manage Student Image

  • 8/12/2019 RSM Final Report Official

    53/318

    The Roll System using Mobile Device Page 53

    Business Rules:

    - For saving storage space, only students face is stored. The face is saved asjpeg, resolution 100 x 100.

    - The recommend number of image for a student is larger than 10 foracceptable accuracy.

    - The original uploaded images willbe stored on Temp folder on server.This Temp folder will be emptied at time interval (See Use Case SY001).

    Table 13: Add Image for Single Student

    2.3.1.2 Add Image for Multi StudentUse Case Diagram

    Figure 5: Add Image for Multi Student

    Use Case SpecificationUSE CASE AD002

    Use Case No. AD002 Use Case Version 2.0Use Case Name Add Image for Multi StudentAuthor Pham Huy HoangDate 20/09/2013 Priority NormalActor:AdminSummary:

  • 8/12/2019 RSM Final Report Official

    54/318

    The Roll System using Mobile Device Page 54

    This user case allow admin to add image data for many students.Goal:

    Image of students will be stored on server, the links to images is stored in databaseTriggers:

    - For face recognition, our system must store images of students face.With more images, we can have better recognition accuracy.

    - To add new image for a single student, admin must: Click menu itemManage Student Image -> Add Image for Students. Upload images. System will detect student faces from uploaded images. Select the student faces from images.

    Select the each faces owner. Press Submit Result to save the images and students.

    Preconditions: - User must logged in the system with the role is admin.- There must be at lease one student in the student list.- The admin has images contain the students face.

    Post Conditions:

    - Success:The images of students will be stored on server and database- Fail:No image added

    Main Success Scenario:

    Step Actor Action System Response1 - Click menu itemManage

    Student Image- Click choose Add Image forStudents.

    Redirect to Add Image for Students Page,contains:

    Upload Students Images: text label File Upload Control

  • 8/12/2019 RSM Final Report Official

    55/318

  • 8/12/2019 RSM Final Report Official

    56/318

    The Roll System using Mobile Device Page 56

    database. [Exception 4]

    Alternative Scenario:

    No Actor Action System Response1 Admin doesnt choose the

    faces owner.The suggestion textbox is cleared.

    Exceptions:

    No Actor Action System Response

    1 Select more than 20 images Display error message: Too muchimages. Only process first 20 images

    2 Not select image, clickUpload button

    Display error message: Please chooseimages for uploading

    3 Upload images dont containhuman faces.No faces detected fromuploaded images

    Display error message: No face found.Select another images

    4 The select face already in thedatabase

    Display message: Face XXX existed indatabase

    Relationships: Login,Manage Student ImageBusiness Rules:

    - The same as Use Case AD005.- The auto-complete textbox must show the students face, name, ID and

    class, as the same as facebook.Table 14: Add Image for Multi Students

    2.3.1.3 Remove Student ImageUse Case Diagram

  • 8/12/2019 RSM Final Report Official

    57/318

    The Roll System using Mobile Device Page 57

    Figure 6: Remove Student Image

    Use Case Specification

    USE CASE AD003

    Use Case No. AD003 Use Case Version 2.0Use Case Name Remove Student ImageAuthor Pham Huy HoangDate 20/09/2013 Priority NormalActor:AdminSummary:

    This user case allow admin to remove image of a student.Goal:

    Remove an/many images from a student Image DataTriggers:

    - For face recognition, our system must store images of students face.Sometimes, the admin can add the wrong face of students, which lowerthe accuracy. So the admin must be able to remove image of a student.

    - To remove image of a single student, admin must: Click menu itemManage Student Image -> Student List. On the Student List Page, click Detail to view image data of a student.

  • 8/12/2019 RSM Final Report Official

    58/318

    The Roll System using Mobile Device Page 58

    Click on the X button at the top-right corner of the image. Click Ok

    Preconditions: - User must logged in the system with the role is admin.- There must be at lease one student in the student list. This student must

    has at least 1 face image.Post Conditions:

    - Success:The image of a student will be removed from server anddatabase

    - Fail:No image removedMain Success Scenario:

    Step Actor Action System Response1 Click menu itemManage

    Student Image -> StudentList.[Alternative 1] Redirect to Student List Page, contains :

    Table with 5 columns, record of 30lastest students:- Student Code: label- Name: label- Email: label- Image Data: images button

    - Request Request Uploadbutton.

    Class: dropdownlist, data source:All active class in database.

    2 Click on Detail buttonRedirect to Student Detail Page, containsdetail of Student Image Data, include:

  • 8/12/2019 RSM Final Report Official

    59/318

  • 8/12/2019 RSM Final Report Official

    60/318

    The Roll System using Mobile Device Page 60

    Relationships: Login,Manage Student ImageBusiness Rules: N/A

    Table 15: Remove Student Images

    2.3.1.4 Get Image From Log Images

    Use Case Diagram

    Figure 7: Get Image From Log Images

    Use Case Specification

    USE CASE AD004

    Use Case No. AD004 Use Case Version 2.0Use Case Name Get Image From Log ImagesAuthor Pham Huy Hoang

    Date 20/09/2013 Priority NormalActor:AdminSummary:

    This user case allow admin to select student image from log images (Images stored aslog for attendance checking).Goal:

    Select student image from log images, to train the face recognizer for higher accuracy.

  • 8/12/2019 RSM Final Report Official

    61/318

    The Roll System using Mobile Device Page 61

    Triggers:

    - When the instructor take attendance, the images of class will be stored adlog images. We can use these log images to add image data for student,without uploading new image.

    - To get image from log images, admin must: Click menu itemManage Student Image -> Log Images. Select the begin date, end date, class to get log.

    Select the log images to used. Select the face owner from log images. Presss Submit Result button.

    Preconditions: - User must logged in the system with the role is admin.- There must be at lease one log images in database.

    Post Conditions:

    - Success:The selected image will be stored to database.- Fail:No image removed

    Main Success Scenario:

    Step Actor Action System Response1 Click menu itemManage

    Student Image -> LogImages.

    Redirect to Log Image Page, contains : Start Date: datepicker End Date: datepicker

    Class: dropdownlist, data source:All active class in database

    2 Click on Find buttonShow the log image of selected class, fromstart date to end date.

  • 8/12/2019 RSM Final Report Official

    62/318

    The Roll System using Mobile Device Page 62

    Date and class of the images are shownwhen user hover the mouse on images.

    3 Click the image to select.Press Use selected imagesbutton.

    System will detect student faces fromuploaded images, then display image full

    size with white face regions (See UseCase SY002)

    4 Select students face fromface region, select the faceowner[Alternative 1] When user hover into a face region, the

    face owner is shown. If user click theregion, a suggesion textbox will be shown.(This suggestion textbox help admin tochoose the faces owner.)The textbox data source is all students indatabase. A suggestion record includes:

    Student Face: image

    Student ID: label

    Full name: label

    Class: label5 Press Save button

    The selected face region will be croppedfrom original picture, stored into server.Faces owner and link will be stored indatabase. [Exception 1]

    Alternative Scenario:

  • 8/12/2019 RSM Final Report Official

    63/318

    The Roll System using Mobile Device Page 63

    No Actor Action System Response

    1 Admin doesnt choose thefaces owner.

    The suggestion textbox is cleared.

    Exceptions:

    No Actor Action System Response1 The select face already in the

    databaseDisplay message: Face XXX existed indatabase

    Relationships: Login,Manage Student ImageBusiness Rules: N/A

    Table 16: Get Image From Log Image

    2.3.1.5 Create RequestUse Case Diagram

    Figure 8: Create Request

    Use Case Specification

    USE CASE AD005

    Use Case No. AD005 Use Case Version 2.0Use Case Name Create RequestAuthor Pham Huy Hoang

  • 8/12/2019 RSM Final Report Official

    64/318

    The Roll System using Mobile Device Page 64

    Date 20/09/2013 Priority NormalActor:AdminSummary:

    This user case allow admin to create an image uploading requestGoal:

    An image uploading request is createdTriggers:

    - For face recognition, our system must store images of students face. If thestudent images isnt enough, the admin can create a request for thestudent to upload his/her own images.

    - To create a request, admin must: Click menu itemManage Student Image -> Student List. On the Student List Page, click Request Upload to send request to a

    student. Enter the request content.

    Press Send Request content.Preconditions:

    - User must logged in the system with the role is admin.- There must be at least 1 inactive account in database.

    Post Conditions:

    - Success:A request will be created.- Fail:No request created.

    Main Success Scenario:Step Actor Action System Response

    1 - Click menu itemManageStudent Image- Click choose Student Listmenu.

    Redirect to Student List Page, contains :

  • 8/12/2019 RSM Final Report Official

    65/318

    The Roll System using Mobile Device Page 65

    Table with 5 columns, record of 30lastest students:- Student Code: label- Name: label- Email: label- Image Data: images button- Request Request Upload

    button. Class: Dropdownlist, data source:

    All active class in database.2 Click Request Upload

    button. Redirect to Create Request Page, contains:

    Request to: textbox (uneditable)

    Content: textbox (max length: 50,required).

    Send Request: button

    3 Click Send Request button.Redirect back to the Request List Page,contains:

    Table with 4 columns, record ofpending request:- No: label

    - Student Code: label- Full Name: label- Images: images button

    Alternative Scenario: N/AExceptions:N/ARelationships: Login,Manage Image Upload RequestBusiness Rules:

  • 8/12/2019 RSM Final Report Official

    66/318

  • 8/12/2019 RSM Final Report Official

    67/318

    The Roll System using Mobile Device Page 67

    upload images as request, the request will be viewed by admin. If adminaccept the request, all the images sent by request will be saved as studentimage data

    - To accept a request, admin must: Click menu itemManage Request -> Pending Request. On the Request List Page, click images button to view request

    detail.

    Press Accept button.Preconditions:

    - User must logged in the system with the role is admin.- There must be at least 1 pending request from student.

    Post Conditions:

    - Success:The request is accepted. Images in the request are saved. - Fail:No request accepted.

    Main Success Scenario:

    Step Actor Action System Response1 - Click menu itemManage

    Request- Click choose PendingRequestmenu.

    Redirect back to the Request List Page,contains:

    Table with 4 columns, record ofpending request:- No: label- Student Code: label- Full Name: label- Images: images button

    2 Click images button.Redirect to Request Detail Page, contains:

  • 8/12/2019 RSM Final Report Official

    68/318

    The Roll System using Mobile Device Page 68

    Student name: label Student Code: label Class: label

    Request Image: images Accept: button

    Deny. Send request again: button

    3 Click Accept button.

    [Alternative 1] All the images in the request will be savedas student image data.Redirect back to the Request List Page,contains:

    Table with 4 columns, record ofpending request:- No: label- Student Code: label- Full Name: label- Images: images button

    Alternative Scenario:

    No Actor Action System Response1 Click the X button as the

    top right corner of requestimage.

    The image is removed from request.

    Exceptions: N/ARelationships: Login,Manage Image Upload Request, Create RequestBusiness Rules:N/A

    Table 18: Accept Request

    2.3.1.7 Deny RequestUse Case Diagram

  • 8/12/2019 RSM Final Report Official

    69/318

    The Roll System using Mobile Device Page 69

    Figure 10: Deny Request

    Use Case Specification

    USE CASE AD007

    Use Case No. AD007 Use Case Version 2.0Use Case Name Deny Request

    Author Pham Huy HoangDate 20/09/2013 Priority Normal

    Actor:AdminSummary:

    This user case allow admin to deny an image uploading requestGoal:

    An image uploading request from student is deniedTriggers:

    - When student login, they can see the request from admin. If the studentupload images as request, the request will be viewed by admin. If admindenied the request, student must upload image again.

    - To accept a request, admin must:

  • 8/12/2019 RSM Final Report Official

    70/318

    The Roll System using Mobile Device Page 70

    Click menu itemManage Request -> Pending Request. On the Request List Page, click images button to view request

    detail. Press Deny. Send request again button.

    Preconditions: - User must logged in the system with the role is admin.- There must be at least 1 pending request from student.

    Post Conditions:- Success:The request is accepted. Images in the request are saved. - Fail:No request accepted.

    Main Success Scenario:

    Step Actor Action System Response1 - Click menu itemManage

    Request- Click choose PendingRequestmenu.

    Redirect back to the Request List Page,contains:

    Table with 4 columns, record ofpending request:- No: label- Student Code: label

    - Full Name: label- Images: images button

    2 Click images button.Redirect to Request Detail Page, contains:

    Student name: label

    Student Code: label Class: label

  • 8/12/2019 RSM Final Report Official

    71/318

  • 8/12/2019 RSM Final Report Official

    72/318

    The Roll System using Mobile Device Page 72

    Figure 11: Create Account

    Use Case Specification

    USE CASE AD008

    Use Case No. AD008 Use Case Version 2.0Use Case Name Create AccountAuthor Pham Huy HoangDate 20/09/2013 Priority NormalActor:AdminSummary:

    This user case allow admin to create an account for login the systemGoal:

    A new account (For student, instructor or staff) will be added to databaseTriggers:

    - In our system, the account of a student or instructor is auto created whenstaff create new instructor/new student. This function is used to createstaff, student or instructor account, in case of backup.

    - To create a new account, admin must: From the admin Home Page, click the menu item Manage Account. In the Account Manager Page, click on the Tab Staff Accounts. Input new account information, click Create to finish.

    Preconditions:

  • 8/12/2019 RSM Final Report Official

    73/318

    The Roll System using Mobile Device Page 73

    - User must logged in the system with the role is adminPost Conditions:

    - Success:A new account will be created. The acocunt will be displayed onaccount list.

    - Fail:No acocunt created.Transfer to error page or still in current page.Main Success Scenario:

    Step Actor Action System Response

    1 Click menu itemAccount Manager.Redirect to Account Manager Page, includes apanel with 2 tabs:

    Account List Create Account

    Current tab is Account List. This tab includes: Table with 5 column:

    - Account ID: label- Username: label- Email: label- Role: label- Select: checkbox

    Action: dropdownlist, values: Inactive,Active.

    Process: button2 Click Tab Create

    Account.Display a tab panel includes:

    Username: textbox (min length:5, maxlength: 30, required).

    Password: textbox (password box, min

  • 8/12/2019 RSM Final Report Official

    74/318

    The Roll System using Mobile Device Page 74

    length,:5 max length: 30, required).

    Password: textbox (password box, minlength:5, max length: 30, required).

    Roles : dropdownlist, values: Admin, Staff,Instructor, Student.

    Create: button Reset: button

    3 Input new accountinformation.Click Create button.[Alternative 1] System will add the account to database.

    Show the tab panel Account List[Exception 1,2,3,4]

    Alternative Scenario:No Actor Action System Response1 Click on Reset button The form is emptied.

    Exceptions:

    No Actor Action System Response1 Not enter enough require

    information.Display error message: Please enter allrequire information.

    2 Username/password is notin range [6,30]

    Display error message:Username/Password must in range[6,30].

    3 Confirm password is notequal password

    Display error message:Password and confirm not match.

    4 Username or email existed indatabase

    Display error message:Username/Email already exist.

    Relationships: Login,Manage AccountBusiness Rules:

  • 8/12/2019 RSM Final Report Official

    75/318

    The Roll System using Mobile Device Page 75

    - Each account is active when added to database.- The confirm password value must match password value.

    Table 20: Create Account

    2.3.1.9 Active AccountUse Case Diagram

    Figure 12: Active Account

    Use Case Specification

    USE CASE AD009

    Use Case No. AD009 Use Case Version 2.0Use Case Name Active AccountAuthor Pham Huy HoangDate 20/09/2013 Priority Normal

    Actor:AdminSummary:

    This user case allow admin to active an accoutGoal:

    A inactive account will be activatedTriggers:

    - In our system, when we do not want an user to login, we inactive his/heraccount (See Use Case AD003). We can active the inactivated account so

  • 8/12/2019 RSM Final Report Official

    76/318

    The Roll System using Mobile Device Page 76

    they can login again.- To active an account, admin must:

    From the admin Home Page, click the menu item Account Manager. Check the Select checkbox of the account record, select Active on the

    drop down list, and press Process button.Preconditions:

    - User must logged in the system with the role is admin.

    - There must be at least 1 inactive account in database.Post Conditions:

    - Success:The selected account(s) will be activated. - Fail:No acocunt activated.Transfer to error page.

    Main Success Scenario:

    Step Actor Action System Response

    1 Click menu itemAccountManager.

    Redirect to Account Manager Page,includes a panel with 2 tabs:

    Account List Create Account

    Current tab is Account List. This tabincludes:

    Table with 5 column:

    - Account ID: label- Username: label- Email: label- Role: label- Select: checkbox

    Action: dropdownlist, values:Inactive, Active.

  • 8/12/2019 RSM Final Report Official

    77/318

    The Roll System using Mobile Device Page 77

    Process: button2 Check the checkboxs of the

    account(s), select Active onthe drop down list, and pressProcess button.

    The selected account(s) will be activated[Exception 1,2]

    Alternative Scenario: N/AExceptions:

    No Actor Action System Response1 The account has already

    been activated by anotheradmin

    Nothing happen, the account(s) status isactive

    2 Check no checkbox, pressProcess button

    Display error message:Please select account to activated.

    Relationships: Login,Manage AccountBusiness Rules:

    - Admin cant active/inactive account of themselves or other admin.Table 21: Active Account

    2.3.1.10 Inactive AccountUse Case Diagram

  • 8/12/2019 RSM Final Report Official

    78/318

    The Roll System using Mobile Device Page 78

    Figure 13: Inactive Account

    Use Case Specification

    USE CASE AD010

    Use Case No. AD010 Use Case Version 2.0Use Case Name Inactive AccountAuthor Pham Huy Hoang

    Date 20/09/2013 Priority NormalActor:AdminSummary:

    This user case allow admin to active an accoutGoal:

    A active account will be inactivatedTriggers:

    - In our system, when we do not want an user to login, we inactive his/heraccount. The account can be activated later.

    - To active an account, admin must: From the admin Home Page, click the menu item Account Manager. Check the Select checkbox of the account record, select Active on the

    drop down list, and press Process button.Preconditions:

    - User must logged in the system with the role is admin

  • 8/12/2019 RSM Final Report Official

    79/318

    The Roll System using Mobile Device Page 79

    - There must be at least 1 active account in database. Post Conditions:

    - Success:The selected account(s) will be inactivated.- Fail:No acocunt inactivated.Transfer to error page.

    Main Success Scenario:

    Step Actor Action System Response1 Click menu itemAccount

    Manager. Redirect to Account Manager Page,includes a panel with 2 tabs:

    Account List

    Create AccountCurrent tab is Account List. This tabincludes:

    Table with 5 column:- Account ID: label- Username: label- Email: label- Role: label- Select: checkbox

    Action: dropdownlist, values:Inactive, Active.

    Process: button

  • 8/12/2019 RSM Final Report Official

    80/318

  • 8/12/2019 RSM Final Report Official

    81/318

    The Roll System using Mobile Device Page 81

    Use Case Specification

    USE CASE AD011

    Use Case No. AD011 Use Case Version 2.0

    Use Case Name Configure SystemAuthor Pham Huy HoangDate 20/09/2013 Priority NormalActor:Admin

    Summary:This user case allow admin to configure systems properties. Goal:

    Change current properties of the systemTriggers:

    - For some reason, administrator needs to re-configure systemsproperties.

    - To config the system, admin must: Click menu itemConfiguration. On the configuration page, edit properties and click on Update button

    corresponding with each properties in list.Preconditions:

    - User must logged in the system with the role is admin.Post Conditions:

    - Success:Systems properties is updated to new value.- Fail:Nothing changed.

    Main Success Scenario:

    Step Actor Action System Response1 Click menu item

    Configuration.Redirect to System Configuration Page,with list of systems properties include:

  • 8/12/2019 RSM Final Report Official

    82/318

    The Roll System using Mobile Device Page 82

    Name: label Value: textbox Update: button

    2 Editproperty value and clickUpdate button.

    Show confirms windows with message:Are you sure to change this property?

    3 Click Ok to confirm.[Alternative 1] Update property value to new value.

    Alternative Scenario:No Actor Action System Response1 Click Cancel. Nothing happen, the value is unchanged.

    Exceptions: N/ARelationships: LoginBusiness Rules:

    - Configure systems properties will affect to all function using theseproperties..

    Table 23: Config System

    Overview Use Case2.3.2

  • 8/12/2019 RSM Final Report Official

    83/318

    The Roll System using Mobile Device Page 83

    Figure 15: Overview Use Case

    2.3.2.1 Face DetectionUse Case Diagram

  • 8/12/2019 RSM Final Report Official

    84/318

    The Roll System using Mobile Device Page 84

    Figure 16: Face Detection

    Use Case Specification

    USE CASE SY001

    Use Case No. SY001 Use Case Version 2.0Use Case Name Face DetectionAuthor Pham Huy HoangDate 21/09/2013 Priority HighActor:System.Summary:

    This Use Case is used to detect the face regions in an image after it is uploadedsuccessful.Goal:

    Detect the face regions in an imageTriggers:

    - When admin upload images for Manage Student Image (See Use CaseAD005, AD006), or instructor send images for Checking Attendance (SeeUse Case IU001), system will detect the face regions in the upload images.

    - The detected region will be displayed at client, or used to recognize thestudents in the images.

    Preconditions: - The images are uploaded to server successful.

  • 8/12/2019 RSM Final Report Official

    85/318

    The Roll System using Mobile Device Page 85

    Post Conditions:

    - Success:The face regions is detected. Send result to front end fordisplaying.

    - Fail:No face detectedMain Success Scenario:

    Step Actor Action System Response1 - Admin upload image for

    Manage Student Image.Or- Instructor send image forChecking Attendance.

    Detect the face in the images, create a listof face regions. A face regions properties:

    Top position Left position

    Height

    WidthThe face region can be stored as ImageData for Students, or for StudentRecognition (See Use Case SY002)[Exception 1,2]

    Alternative Scenario: N/A

    Exceptions:No Actor Action System Response

    1 The upload image is corrupt Show error message: The image XXX iscorupted.

    2 Upload images dont containhuman faces.No faces detected from

    Display error message: No face found.Select another images

  • 8/12/2019 RSM Final Report Official

    86/318

    The Roll System using Mobile Device Page 86

    uploaded images.

    Relationships: LoginBusiness Rules:

    - The accuracy of face detection is larger than 80%. Picture with higherbrightness and resolution will has higher accuracy.

    - If the uploaded images are too big, the image will be resized for fasterprocessing.

    Table 24: Face Detection

    2.3.2.2 Recognize Stude