rsm final report official
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