Slide 1: Java Based RFID Attendance Management System
A graduation project for the future..
Supervised by
Prof.Dr.Hesham Arafat Ali
Slide 2: Agenda
Introduction ● A problem to solve and a solution. ● System purpose ● System features. ● Where? ● Used tools ●Phases ● Planning, gathering information phase ● Design, Application and Database Design ● Implementation ● Testing ●Future applicable extensions ●A Thank you! Word and Questions
●
Slide 3: Introduction
Ibrahim Abdel Fattah Mohammed
Slide 4: Introduction: System Purpose
The purpose of this project is to develop an automated class attendance checking system for each and every lecture room in the university.
●
Slide 5: Introduction: Where?
Slide 6: Introduction: Key Technology
The primary technology to be used is Radio Frequency Identification technology or RFID ●A system of identification wherein an electronic device that uses radio frequency or magnetic field variations to communicate is attached to an item. ●Why RFID? 1. Alignment is not necessary. 2. High inventory speeds. 3. Variety of form factors. 4. Item-level tracking. 5. Rewritability (This depends on the type of the Tag).
●
Slide 8: Introduction: Used Tools
RFID, The Key Technology ●Linux, The Base Operating System ●JAVA, Application logic and the middle-ware ●MySQL, The Back-end Database ●GWT, Google Web Toolkit
●
Slide 9: Planning & Analysis
Eman Mahmoud Abdel Fattah
Slide 10: Planning
●
●
We believe that the best way to get a good working application is to give enough time for planning and designing. In our planning phase,we passed through the following..
Slide 11: Know the scale and working environment
●
large number of students ,class rooms and teaching stuff. Limited resources. Searching for suitable RFID-Reader to work efficiently with minimum cost. System has to be scalable
●
●
Slide 12: Analysis: Technical
- H/W requirements: RFID-Readers – Tags – Server machine - S/W requirements:
–
Linux Operating System – Database – Apache web server - Who uses the system:
– – – –
Students Teachers Professors
Slide 13: System Analysis
The system should be divided into 3 modules - The RFID module for using the RFID-Reader. - The Database module for recording the attendance. - The View module to view recorded attendance.
Slide 14: Analysis: Economic
●
Initial costs
●
RFID-Reader: 500 EGP for each Classroom RFID-Tag for each student Electricity cost Maintenance cost
●
●
Running costs
●
●
Slide 15: Application & Database Design
Eman Sa'ad El-Dien El-Zahy
Slide 16: Design
As in the planning phase we have 3 modules - The RFID module - The Database module - The View module
Slide 17: RFID
Designing Java classes which function is:
●
When students pass through the RFID-Reader with their ID-cards,The RFIDReader reads the ID of each student passes and sends it to the server for processing .
●
The server takes the ID of the student, process it and record the attendance in the database.
Slide 18: Database
●
Included two phases: 1- Designing the Database creating tables that mirrors the structure of the environment and the relations between these tables. – Normalizing tables. 2- Designing Database Java classes:
– –
–
Classes that records the attendance data in the database. Classes that retrieves the attendance data to view it using the systems' GUI.
Slide 19: View
●
Designing login form to check authentication. Designing needed forms for possible users of the system depending on the permissions given to each type of users (professor,TA,student).
●
Slide 20: The Environment
Moustafa Mahmoud Al-Sherbiny
Slide 21: The Environment: Linux
We use Linux as the base OS for our server In spite of that , Our Software is tested under Microsoft Windows. And can be deployed on any other platform that supports Java
●
●
Slide 22: The Environment: Why Linux?
• Mainly , It is free – FREE of charge. – FREE source – Rapid development – More Secure. • Security –User Privileges –No Executables –No Registry • Stability. • Multi-User , Networked OS
Slide 23: The Environment: Java
• Java is an Open Source Object Oriented Programming Language. • Platform independent • Secure • Simple • Multi-Threaded • Distributed
Slide 24: The Environment: MySQL
• Relational (RDBMS)
database
management
system
• Providing multiuser access to a number of databases • Works on many different system platforms
Slide 25: The Environment: GWT Google Web ToolKit
• A JAVA to JavaScript cross-compiler •It takes Java code and compiles it into JavaScript to be run in a browser with AJAX style • GWT-RPC : A technology used to remotely invoke code component from remote server
Slide 26: Implementation
Amal Abdel Naby Al-Shihaby
Slide 27: Implementation: Reader API
●
We create a class that will listen to the reader and if the reader read a tag it will capture this ID and the time of Attendance
Slide 28: View: Login Interface
The client will send this information to the server using RPC to check if this user is authenticated.
●
Slide 29: View: Student Interface
●
For student he can view only his attendance.
Slide 30: View: Professor Interface
●
For professors ,each one can view attendance in his subjects.
Slide 31: View: Teacher Interface
● ● ●
Switch on/off interface View student attendance View section attendance
Slide 32: Teacher: Reader Interface
●
The teacher can switch on/off the reader from the interface
Slide 33: Model
●
We create number of classes that will execute the query on the database and return the required data.
Slide 34: Controller
●
Google Web Toolkit provides us with some of tools like RPC package. We used this package to connect the view with the model
●
Slide 35: Future Extensions
Ibrahim Abdel Fattah Mohammed
Slide 36: Future Extensions
●
Email integration and notification SMS integration and cooperation Cooperation with university's current system, proxy and email accounts Bullet-in boards, forums and presentations views. Classes Assignments Sections Cancellation
●
●
●
●
●
Slide 37: Question?
Slide 38: Thanks!