Class Attendance Tracking Database System Done by: Hussain Al-Lawati Isehaq Al-Mamari Al-Muatasim Al-Bahri Under Supervision of: Dr. Fahad Bait Shiginah Class Attendance Tracking Database System Current Attendance Tracking System: Papers Waste of resources Bins full of papers Signatures Cheating (Illegal) Presentation Outline Objective Background System Requirements System Architecture Database Design Prototype Implementation Biometrics Fingerprint Sensors Database Application Server Application Server Fingerprint Terminal Emulator Web Interface Testing Security Conclusion Demo 3 Objective To implement a system that track attendance using: Database system: Fingerprints: Track of all information Identity Recognition Automatically generates absent warning 4 Background 5 Biometrics What Biometric is? Types of Biometrics: Properties Fingerprints Fingerprints are unique for each finger of a person Face Recognition non-intrusive, hands-free, continuous and accepted by most users Speaker Recognition Easy to implement Iris Recognition It does not require physical contact with a scanner, Expensive. Hand and Finger Geometry These methods of personal authentication are well established. Signature Verification Uses the dynamic analysis of a signature to authenticate a person. 6 Fingerprint Sensors Fingerprint sensors how its work? price Optical Capture a digital image of the fingerprint. 50 -100 $ Ultrasonic Use very high frequency sound waves to enter the epidermal layer of skin. 500-1000 $ Capacitance Use the principles associated with capacitance in order to form fingerprint images. 100-150 $ Thermal Sensors Use the same pyro-electric material that is used in infrared cameras. 200 $ RF Sensors Low radio frequency (RF) signal is applied to the user’s finger. 200 $ 7 Database Files Vs. DBMS Files Complex Code for Queries Security of Data RDBMS 8 Application Server Using PHP under LAMP (GNU/Linux , Apache , MySQL, PHP) CodeIgniter: Open source PHP web application framework Small footprint MVC structured code (Model-View-Controller) Internal security features (XSS Filtering, Encryption classes, input validation classes) 9 System Requirements Non-Functional Requirements Cost-effective Open source Usability 10 System Requirements Functional Requirements Instructor enable the terminal (tracking) Students register attendance (fingerprint) Record absentees Send notification email to them Generate warnings automatically Instructor detailed reports of attendance in his classes (web interface) 11 System Use-Case Diagram 12 ECCE5009 Wednesday 8:00am Class Started ECCE5009 Wednesday 10:00am End of the Class Attendees • Ishaq • Al Muatasim 13 System Architecture Decentralized Vs. Centralized. Factors - Fingerprints Capacity - Labor work Centralized Wins !! - Flexibility 14 System Architecture 15 ER Diagram 16 Database Design 17 Prototype Implementation 18 Application Server All responses are encoded in JSON (JavaScript Object Notation) Provide a pre-defined tasks to the fingerprint terminal Binary Data are Base64 encoded Authorize instructors Provide a list of students along with their fingerprints in the current class using instructor id & current date and time Add absent students to the database. Limit what users can do with the database. 19 Fingerprint Terminal Emulator Written in Java Object Oriented Programming paradigm Using Eclipse as an integrated development environment Futronic Fingerprint Software Development Kit for fingerprint matching “json_simple” for JSON encoding & decoding Communicate with the Application server using HTTP protocol Emulate both the numbered keyboard and the LCD screen Communicate with the fingerprint sensor using Futronic Fingerprint SDK 20 Web Interface Levels of Access One level Instructor Functions: Detailed Report of Students’ Attendance in a Section View, edit absence records Email Approve Warnings 21 Testing Validation Testing Fingerprint Terminal Database Web Interface Release Testing Class Attendance Tracking Database System 22 Security Avoid Security By Obscurity Allow only authorized users to gain access Restrictive regarding which characters to allow in URL strings Filter the data as if it were tainted Validate the data to ensure it confirms the correct type, length and size Escape the data before submitting it into the database All cookies are encrypted 23 Conclusion Engineering Aspects Sustainability & Manufacturability Prototype Implementation Economic 24 Conclusion Standards Fingerprint Terminal Emulator Web Interface Java Standard Edition 6 (1.6) XHTML 1.0 (A Reformulation of HTML 4 in XML 1.0) Cascading Style Sheets 2.1 (CSS 2.1) ECMAScript (aka. JavaScript) ECMA-262 specification and ISO/IEC 16262 Communication Hypertext Transfer Protocol -- HTTP/1.1 (RFC 2616) JSON (JavaScript Object Notation) (RFC 4627) 25 Conclusion Why SQU should adapt this solution? Environment (paperless) Lower total-cost of ownership Time-effective Easy and fast access to data Less human error (more affective tracking system) 26 DEMO 27 Questions !! 28