280 likes | 304 Views
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
E N D
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 Biometrics Fingerprint Sensors Database Application Server System Requirements System Architecture Database Design Prototype Implementation Application Server Fingerprint Terminal Emulator Web Interface Testing Security Conclusion Demo
Objective To implement a system that track attendance using: Database system: Track of all information Fingerprints: Identity Recognition Automatically generates absent warning
Biometrics • What Biometric is?
Database • Files Vs. DBMS • Files Complex Code for Queries • Security of Data • RDBMS
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)
System Requirements • Non-Functional Requirements • Cost-effective • Open source • Usability
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)
ECCE5009 Wednesday 8:00am Class Started Z z z ECCE5009 Wednesday 10:00am End of the Class Attendees • Attendees • Ishaq • Attendees • Ishaq • Al Muatasim Database absence_records
System Architecture • Decentralized Vs. Centralized. • Factors - Fingerprints Capacity - Labor work - Flexibility Centralized Wins !!
Prototype Implementation
Application Server • All responses are encoded in JSON (JavaScript Object Notation) • Binary Data are Base64 encoded • Provide a pre-defined tasks to the fingerprint terminal • 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.
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
Web Interface • Levels of Access • One level • Instructor • Functions: • Detailed Report of Students’ Attendance in a Section • View, edit absence records • Email • Approve Warnings
Testing • Validation Testing • Fingerprint Terminal • Database • Web Interface • Release Testing • Class Attendance Tracking Database System
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
Conclusion • Engineering Aspects • Sustainability & Manufacturability • Prototype Implementation • Economic
Conclusion • Standards • Fingerprint Terminal Emulator • Java Standard Edition 6 (1.6) • Web Interface • 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)
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)