This system proposed the student attendance online system using students smart card with QR code. The existing student attendance system(SAS) is inefficient and not systematic. In former attendance system the student attendance system needs to take time for sign the attendance sheet during the class hour.
After that the total attendance will and need to be entered into a computerized system by using Microsoft Excel. It is also affecting the efficiency of teachers where teachers have to calculate the student attendance percentages through of years.
A system that takes down SAS using QR code more efficient. In student attendance system, every student is provided with smart card containing a unique QR code. The students need to scan the code in order to confirm their attendance. Each QR code contains a unique id for students. The system will store all students’ attendance record on database.
The student must scan the smart card that containing the QR via a teacher smartphone application. Knowing that smartphones are most popular with users at the age around 26, using smartphones to speed up the process of taking attendance by school teachers would save time and hence enhance the educational process.
By using this system, not only save time but also save the efforts that were supposed to be put by teacher during each instruct. It will speed up the process of taking attendance and leave much time for the teacher to be given properly.
1.2 PROBLEM STATEMENT
Nowadays, SAS in school is still practicing the manual way of taking daily attendance. The existing manual student attendance system is inefficient and not systematic. The teacher will personally mark the attendance sheet one by one by calling out student name accordingly. However, the attendance sheet can be lost easily and the whole attendance process is tending to human mistake.
In the manual system, students can easily forge their friends signature purposely fill in the class attendance. This can cause students to be dishonest and will bring problems at work later. The issue are data not secure because all teachers or staff can get student information without student know. It will risk and harm to student if personal data is used in criminal matters.
The student attendance online system using QR code reader is the best solutions on how we can keep the data more efficient and safety. The data is always being updated in the database and the report can be viewed and be printed by the teachers and staff whenever they want.
The objectives of SAS are identified based on the review of the problem statements.
The purposes are listed as below:
To develop student attendance system using QR code.
To create the data base for student attendance online system.
To generate unique QR code based on the student information.
The main scopes of project are;
This system is developed for the teacher that working on primary and secondary school.
The proposed student attendance system used a smart card that provides with a QR code.
The QR code is generated by SAS system that can save in the document folder.
The student attendance online system using smartphone, student only use their own smart card.
1.5 THESIS ORGANIZATION
This thesis consists of three chapters which is introduction, literature review and methodology.
Chapter 1 is an introduction chapter that discuss on the introduction of the project proposed project which is student attendance system. It discusses the introduction, problem statement, objective, scope and thesis organization.
Chapter 2 discusses on literature review. The discussion is about the current systems and comparison between four existing systems for analysis. It will cover about the system flow and technique used.
Chapter 3 explain methodology used in the system. It comprises the theoretical analysis of the body, methods and principle of the body, methods and principle related with branch of the knowledge.
The reviews of related literature for this project involves local and literature either in book, websites and others forms of media that help us formulate in analysing the system that it fitted for the school. The review focuses on how to use the system effectively that related in the system. It will help me to get ideas and it became the researcher basis on how to start the document to analyses the current student attendance system of school.
2.2 EXISTING SYSTEM
The teacher will send students attendance to Pejabat Pendidikan Daerah(PPD) every day, PPD compile all information based on school before send to Kementerian Pendidikan Malaysia(KPM). Current system takes students’ attendance manually. The teachers have to write down and manually calculate the details of the attendance.
It is a very tiresome tasks to maintain the record for the teachers. Besides that, it also will be hard to retrieve all of the information since the records are written on papers and saved manually.
Purpose of this proposed system is develop a students’ attendance system that can be used during teacher take students attendance. The aims of this system is to lessen work for the filing process and save the time to create precise results from the student’s attendance. The system will be presented in a user friendly GUI.
2.1.1Golden Screen Cinemas(GSC)
Figure 2.1Golden Screen Cinemas(GSC)
According to its official website, GSC provides this QR code system through its website and mobile application. Besides using the QR code in its the web, GSC also has a mobile ticketing system. It allows clients to buy the movie ticket through hand phone. This application allows client to buy ticket using their smart phone. By using this method, clients can use the paperless ticket. All they have to do is just scan the 2D barcode using the phone screen at the cinema checkpoint gate. Clients will receive a barcode receipt in the form of QR code on the mobile phone. Hence, it will eliminate queuing line and waiting time by scanning the QR code at the auto-gate.
GSC also has mobile application that will connect with website of system and also a data update between website and mobile simultaneously. After than that the barcode automatically generates after user do payment. Next, Golden screen cinemas also have some of disadvantages such as no password rate for reconfirm when want to payment the online ticket. The GSC system only have one factor authentication for the system. Booking number not display on the screen, if have overlap ticket the booking number of seat not display. This show the system is not systematic or consistent. For any transaction that is not finished in eight minutes; the seats will be unrestricted automatically.
Before proceed with the payment process, users can review the ticket details. Through the statement above a system not friendly and not comfortable to user for use with other system. For the payment six E-Payment choices that already list name of E-banking. One account for one user only, user can buy more ticket but cannot share own account with other. Last not least, duplicate ticket between user online booking.
Figure 2.2Boarding Pass
In 2005 the IATA (International Air Transport Association) commenced a five-year project to deploy Bar Coded Boarding Passes (BCBP) across its member airlines to eliminate magnetic boarding passes. Airlines and third parties use a barcode reader to read the bar codes and capture the data. Reading the bar code usually takes place in the boarding process, but can also happen when entering the airport security checkpoints. The newest mobile developments are the ability to check-in to a flight via a mobile device using a QR code, or mobile boarding pass.
The airline sends user boarding document, with a link to user QR code, directly to user mobile device via e-mail. Anytime user need to present user boarding pass, at security checkpoints or at the gate, when on the gate user hold up user QR code to a scanner..Furthermore, TSA requirements and support the Apple Passbook electronic wallet application, while passengers with Gmail addresses get real-time flight status information and have their boarding passes displayed automatically on their smartphones. Finally, most of the information contained within the barcode is harmless,
and besides the booking reference there is nothing that can’t be gleaned from a boarding pass left behind in a seat pocket.
But user need to register first for new user of online banking or new user to buy the boarding pass. The boarding pass also use mobile application that user can buy ticket with android. System of boarding pass support for mobile application and data will update same with website.
The generate password takes input from a random or pseudo-random number generator after that password will automatically generate. For example, password for user will randomly give to user to save and staff honest about the not share user personal information for secure.
The other advantages are giving a foreign application permission they don’t recognize. So easy to user cause have multiple language for chooses. One account can buy one ticket only for boarding pass this will secure the user personal information from hacker to attack, cause if hacker know a few data of user they can fake other information
they already have. After user already done for booking ticket the QR code will be automatically generate.
Disadvantages of boarding pass are challenge when traveling with multiple people on one reservation cause will confusing if happen some changes, no two-factor authentication and no password rate such as when have multiple or second round open the QR code already display on the mobile phone. The QR code also can screen short for scanning at the gate that user no need to login. The boarding pass a not secure cause can fake QR code to spoof a boarding pass, after that boarding pass not available for more than one guest in one booking number and one accounts for one person only.
Figure2.3 Parkaide This cutting-edge technology brings together geo-location, payment platform and mobile technologies in a single application to facilitate a more convenient and reliable parking experience because of the speed achieved in its processes.
The QR code displayed on a screen mounted where user would typically find a ticket dispenser to ‘check-in’ to the parking lot pre-book a bay for user parking before proceeding to user destination. Reserve the bay an hour before reaching the car park. Additional charges are applied when user use this premium service. ParkAide lets user save the location of user parking bay in the phone. It will tell user the exact location of user car with floor and section number.
At the location user just scan the pillar after user park user car and when user return to the car park, just re-open the app and user car’s location will be displayed. The system deducts the appropriate amount of credits from the user’s account. Users only need to download the app and register for the service, buy payment tokens via a credit card or through a supporting bank .The advantages of parkaide are environmentally-friendly parking solution employing the convenience cause the system easy to use and user familiar with design interface, drivers also not use the ticketing system, the user will use the code that already generate for user make a reserve parking lot and user use the code on the mobile. Before user reserve the parking lot user must have the credit on application account cause user need to pay for booking free lot.
The parkaide application just can use one account for one parking empty. Parkaide also are open source that user can install through the phone without license or key. User can found the application on the google play. The parkaide has mobile application and always connect with website application.
Furthermore, disadvantages of parkaide are always need to connect with internet when using because the data and information will be updated after user reserve the parking lot. At Malaysia limited place using parkaide system for parking lot because parkaide system very highest cost for hardware and also will take time when troubleshooting the system. The parkaide system that user cannot upload the data, user can view and register on the parkaide password. The parkaide also cannot store files such as images, documents and not responsive web design in desktop websites.
Figure 2.4oBikeThe figure may surprise you dock less bicycle-sharing allows users to park the bicycles anywhere. With the old model of bike-sharing, people could only go from one bicycle dock to another, so this meant a lack of flexibility and convenience.
Furthermore, users should download oBike application and register for make account. User also should provide user personal information with users phone number and other needed information. Through the account the service may send user information The oBike app is used to find nearby bicycles as well as to unlock and lock the bicycles. With the app, users can see available bicycles on a map and can even reserve one.
Lastly, to unlock the bicycle, oBike users just have to scan the QR code on the bicycle. To lock it, user have to pull the lever on the lock after selecting the lock button on the app and wait for the notification that it’s been locked. All bicycles are fitted with GPS tracking devices, bells and reflectors, and the app also allows users to report faulty bicycles. oBike users must park the bicycles in either designated oBike parking lots, motorcycle or bicycle parking lots in buildings or in open public spaces.
The advantages oBike is has mobile application that easy to use cause for now all user have a mobile phone and always with own.
bike employing the convenience and also allow user to report fault of bicycles from notification owner will alert about it.
The oBike using GPS and Bluetooth for detect the location of bicycles park, to prevent the loss of the bike. Through application users can see available bicycles on a map and can even reserve one through the app. For the refundable deposit is to ensure the bicycles are taken care by users as well as for insurance, as all oBike users are insured. More secure to users when has anything happen during ride. In addition, User can share the distance of ride and how many calories already burn.
After that, for disadvantages to oBike is not have using password rates when login the application and also need to connect with internet for unlock the bike. The oBike must park on parking lots, motorcycles or open public. Furthermore, oBike app have one account for each user when using the system cause each user need to scan the code at bike.
password in mobile, one account can buy more than ticket and multiple account in one login. For GSC and boarding pass both of it have using mobile application and website at system it easy to user for using a system.
Meanwhile Parkaide system only for mobile application but three of existing system the QR code automatically generate password, password will save in mobile for each system after user register, for each system not support multiple account in one login and also all system are open source and free installer which user can find from google play application. The data at mobile application will update when website have some changes or improvement for GSC compare with boarding pass that data will not updated for last minute changes such as flight delay, seat changes, flight changes no.
The parkaide system cannot share account other,because one account can empty one parking lot . Next GSC and boarding pass can save document and image on the database of system and GSC system allow buy more ticket on one account at the same time compare with boarding pass not allow cause afraid of a problem duplicate ticket and seat. The system that have platform that support mobile application and website, automatically generate code, open source ; free, the system able to save images and document, if have some changes at website system automatically update data at mobile data one account for one user for secure the user personal information to fake from hacker.
Technique that are used in activities that may have different method. To achieve a goal, method is the technique that needed.
After that, user can generate and print their own QR codes for others to scan and use by visiting one of several pay or free QR code-generating sites or apps. Users with a camera phone equipped with the correct reader application can scan the image of the QR code to display text, contact information, connect to a wireless network, or open a web page in the telephone’s browser.
The QR codes are used over a much wider range of applications, including commercial tracking, entertainment and transport ticketing, product and loyalty marketing
The feature of QR Codes is that instead of requiring a chunky hand-held scanner to scan them, many modern cell phones can scan them. The QR code scanner, displaying the code and converting it to some useful form .Its purpose was to track vehicles during manufacturing; it was designed to allow high-speed component scanning.
Mobile operating system
A mobile operating system, also called a mobile OS, is an operating system that is specifically designed to run on mobile devices such as mobile phones, smartphones, PDAs, tablet computers and other handheld devices. The QR codes can be used on various mobile device operating systems. Mobile operating system which allows QR codes to send metadata to existing applications on the device.
Firstly, URL is an acronym for Uniform Resource Locator and is a reference (an address) to a resource on the Internet. The type the URL and often did not have a web browser in front of them when they first viewed. The advantages from URLs are URL conversion rates are fading away now that smartphones are putting web access
Barcode is an optical, machine-readable, representation of data, the data usually describes something about the object that carries the barcode. Furthermore, originally barcodes systematically represented data by varying the widths and spacing’s of parallel lines. For later two-dimensional (2D) codes were developed, using rectangles, dots, hexagons and other geometric patterns in two dimensions, usually called barcodes although they do not use bars as such.
Barcodes were initially scanned by special optical scanners called barcode readers. Their use has spread to many other tasks that are generically referred to as automatic identification and data capture (AIDC). This helps track items and also reduces instances of shoplifting involving price tag swapping, although shoplifters can now print their own barcodes. Use barcodes to uniquely identify consumers. At the point of sale, shoppers can get product discounts or special marketing offers through the address or e-mail address provided at registration.
The benefit of using barcode are Fast-selling items can be identified quickly and automatically reordered, items can be identified, preventing inventory build-up, the effects of merchandising changes can be monitored, allowing fast-moving. Historical data can be used to predict seasonal fluctuations very accurately.
The items may be repriced on the shelf to reflect both sale prices and price increases and this technology also enables the profiling of individual consumers, typically through a voluntary registration of discount cards. While pitched as a benefit to the consumer, this practice is considered to be potentially dangerous by privacy advocates.
Types of Barcodes:
A first generation, “one dimensional” barcode that is made up of lines and spaces of various widths that create specific patterns.
Table 2.6 Linear barcodes Example SymbologyUses
CodabarOld format used in libraries and
blood banks and on airbills(out of date)
Code 11 Telephones (out of date)
Code 39 Various international
The Codabar has a large installed base in libraries. It is even possible to print Codabar codes using typewriter-like impact printers, which allows the creation of a large number of codes with consecutive numbers without having to use computer equipment. After each printed code, the printer’s stamp is mechanically turned to the next number, as for example in mechanical mile counters.
Furthermore,. The barcode itself does not contain a check digit but it can be considered self-checking on the grounds that a single erroneously interpreted bar cannot generate another valid character.
Matrix (2D) barcodes
Two-dimensional (2D) barcodes. Two-dimensional (2D) barcodes look like squares or rectangles that contain many small, individual dots. A single 2D barcode can hold a significant amount of information and may remain legible even when printed at a small size or etched onto a product.
Table 2.7 Matrix (2D) barcodes Example Name Uses
Aztec Code The aztec code is also published
as ISO/IEC standard.
Data Matrix Creasingly used throughout
the United States. Single
segment Data Matrix is also
termed SemacodeHan Xin Barcode Barcode designed to encode
Chinese characters introduced
by Association for Automatic
ntification and Mobility
Thus the registration of an automobile has become much easier and quicker process. Aztec code is most widely used in the transportation section.
Next, The DataMatrix codes is surrounded by an L-shaped frame called the alignment pattern and dotted lines called the clock pattern. Readers capture these patterns to
determine the position of the code with image processing. The dominating application areas are direct part marking and laser marking both especially in the aerospace, electronics, and automotive industry.
In the next paragraphs, a comparative study on the replication strategies is discussed in the previous subsections. A table of comparison about these techniques is presented in 2.3 technique part.
For replication techniques namely QR code and barcode, barcode only holds information in the horizontal direction. They are looking at is a different matter altogether, visual representation of machine readable information about the product to which it’s attached serve the basic purpose of storing information pertaining to a certain product or an organization.
In QR codes have gained popularity during the last decade due to the rise of smartphones. QR code, just scan it using the app on your phone. The barcode only holds information in the horizontal direction, a QR code does hold information in both horizontal and vertical directions. QR code holds hundreds of times more information than a barcode, and has a greater potential to hold more information in a smaller space than a barcode.
The barcode is that small box printed on the packaging of a product, that has a small collection of black parallel lines of varying widths. Contains important information like the manufacturer’s name, type of item, price and so on. QR code contains information both in vertical and horizontal directions.
RFID doesn’t need line of sight. For a barcode to be read, the scanner must be placed directly in front of each label, and both need to be oriented in a very specific position in order to work properly. RFID tags on the other hand, don’t need to be directly in sight of an RFID reader. Because RFID uses radio waves to communicate, RFID tags only need to be within the read range of the reader, which will vary depending on the equipment.
A barcode can only be read, and the data can never be changed once it has been printed onto a label. RFID tags can be read, and the data on the tag can be rewritten or modified as needed. Barcodes are easily counterfeited, and the data itself
This chapter reviews the existing system as well as Golden screen cinema (GSC), Boarding pass, Parkaide and oBike. In addition, this chapter also analyses data replication techniques such as QR code, Bar code and RFID.
Finally, comparisons about all the techniques has been discussed. In this research, student attendance with database to manage student attendance using QR code. This new proposed technique is discussed in the next chapter.
This chapter will have discussed on what methodology will be implementation for development of this project. The methodology consists of four phase, which will guide the system developers in their choice of techniques that might be appropriate. That will help to plan, manage, control and evaluate research.
The selected methodology for the software development is considered as a structure used for planning and controlling the procedure of creating a specialized information system. There is some software development such as waterfall model, prototype methodology, Rapid Application Development (RAD) and Join Application Development, that have advantages and disadvantages.
The process into a linear flow with a specified sequence to let the users understand that further level. That user easy to understand, simple enough to handle as model is rigid and allows for easy testing and analysis. The using traditional waterfall not applicable for maintenance project, does not allow editing in the testing phase and no option to know possible outcome of project.
It is a specialized software development procedure that initiates developers towards making only the sample of the resolution to validate its functional essence to the customers. Prototype give clear idea about functional
process of the software, reduces the risk of failure in a software functionality and assist well in requirement gathering. But prototype will chance of extension in management cost, excessive involvement of client can effect processing and too many changes affect the workflow of the software.
3.2.1Rapid Application Development(RAD) Phases
The Rapid Application Development (RAD) can group into four different phases. These requirement planning phase, design phase, construction phase, cutover phase.
Figure 3.1Rapid Application Development(RAD)
18.104.22.168 Requirement Planning Phase
In the requirements planning phase, users and analysts meet to identify objectives of the application or system and to identify information requirements arising from those objectives of system and identify information requirement. The meeting that conducted is initial the development process by establish understanding of the system development.
In the meeting, will discuss about agree on business needed, project scope, constraint, and system requirement. The meeting ended with the final decision.
General task performed during this phase are:
Describe and finalize the scope and objective of the project. (Refer chapter 1)
Planning software, method, and technique that should be used in system (Refer chapter 2)
22.214.171.124 Design Phase
The objectives of the design phase stage are to develop the system structure in terms of the automated and manual functions that will comprise the system, to analyse in detail the business data associated with the proposed system area, to select the appropriate construction approach for the system the effort required to perform these
steps, to analyses in detail business activities associated with the proposed system area, to select the appropriate construction approach for the system.
General task performed during phase are:
System design: design flow of the system to show how the system work. Such as flow chart, use case diagram and context diagram. (Refer chapter 2).
Interface design: draft design of component interface in the system. During this phase, user can request and features needed to be set in the interface.
126.96.36.199 Construction Phase
The objectives of construction stage are to create and test the software that implements the proposed system, to complete the detailed design of the proposed system, to prepare documentation necessary to operate the proposed application.
General task performed during phase are:
Coding: code or programming language chosen for this system: PHP and Java script.
Testing: testing to determine whether the system meet the objective and user requirement of the project. Testing part will be done at PSM 2.
Debugging: This part is to fix any defects that come after the testing part. The defect part will be fix as long as not changing the flow the system. (PSM2)
188.8.131.52 Cutover Phase
Objective of cutover phase is the phase which client. This phase also resembles final task in the system development life cycle(SDLC) implementation phase, including data conversion, testing and user training. That compare with traditional method, the entire process is compressed.
General task performed during phase are:
Deliver: Correcting and completing all the defect, the system will be presented.
3.2.2Advantages and disadvantages
The Rapid Application Development advantages are can reusability of component. The reduced development time of system and also productivity can increase because only one developer. Requirement changes can be easily evaluated and done.
The disadvantages of RAD is reduced scalability and reduced features. Reduced stability occurs because a RAD developed application starts as a prototype and evolves into finished application
The proposed student attendance system uses smart phone. In identification, recognizes an individual by comparing their smart card with every recorded in the database. During enrolment, the smart card of the student is captured (using a smart phone for scanner) and the smart card number stored in the database. The objective of the enrolment module is to enable a student using their smart card into database after feature extraction. The enrolment process of carried out by an administrator/teacher in the attendance system. Flowchart is shown in Figure 3.2.
Figure 3.2Flow Chart of System
3.2.4 Context Diagram of Student Attendance System
The context diagram is structured graphical tool used for identifying the functional areas and the process which are performed within and between the system and outside the system. It helps in investigating the output and the process of the system. It helps defining the boundaries of the proposed system. The symbols used in the context diagrams are external entities, data storage and data flows and process. This is the Figure 3.2 contest diagram, represent student attendance system which has three external entities i.e.
Admin/Teacher, student and Server Database and the data flowing in and out of the system is the attendance details.
Figure 3.3Context Diagram of System
3.1.5Use Case Diagram of Student Attendance System
Student attendance system consists of many functions that determine the purpose of the system. The actor/use of the system is admin/teacher and student. Refer Figure 3.3 for overall illustration on system functionality and the involvement of user into the system. Use case diagram is one of the diagrams listed under Unified Modeling Language (UML) that depict the interaction between the user and system. Some of the activities in the system require the involvement of both user and the data updated by the user will be recorded sequentially into system.
Attendance report generate by admin/teacher divided into three type of report such as daily, weekly, and monthly report as documented in manual attendance recorded. Indirectly this system also aids generating warning letter to students who didn’t full the requirement on the attendance matter.
Figure 3.4Use Case Diagram of System
3.1.6Module of Student Attendance System
Figure 3.5Module Diagram of system
Teacher enter login information which password and username and the admin will enter the code for login
ii)Create Student Record Module
Teacher or Admin add student record at server database which are all student data information such as IC number, username, password, name, matric number, class name. After enter all information above teacher or admin click a button register
iii)View Student Record Module
Teacher or Admin view student record for confirmation that data given from students are right and also check the error.
iv)Update Student Record Module
The teacher always updated the student data information and will student’s attendance record at server database which daily, weekly and monthly.
Delete Student Record Module
Teacher or admin can delete data row by row or all data which not requirement or related.
Search Student Record Module
Make easy for teacher search students information or any data and also can save the time.
Generate Attendance Report Module
Teacher can generate student’s attendance report according to daily, weekly and monthly so will easy for teacher make overall of report.
Generate Student Report Module
Teacher will generate student report more detail which including all information student such as IC number, full name, year of study, and matric number.
View Report Module
Student can view student information only they can’t edit, delete or update your information.
3.1.7Dialogue Diagram of Student Attendance System
Figure 3.6Dialogue Diagram of system
The dialogue diagrams show detail and systems overview based on code implementation. The teacher, must register IC number, username, password, name, matric number, class name as to make student an account. The students can continue with login the system using username and password but student capable view only, they cannot edit, update or delete the data. After that teacher can create student account, update student record, delete student record, generate student report and save student attendance on the database server by daily, weekly and monthly.
Figure 3.7Architecture design of student attendance system
Student attendance system in use mobile phone for scanner record attendance. The data captured using mobile scanner sent to the attendance system for the purpose of recording and preparing attendance record. Refer Figure 3.6 to the high level of the student attendance system. Architecture diagram shows to high level of the attendance system. Diagram show the relation between internal and external entities in the student attendance.
Data dictionary is a medium to store the whole of data about the students’ information. It is defining and describe the element that have the data. Table below shows about all the data have been use in Student attendance online system.
Attribute Data type Length Description Key
Class_idnchar10 Class _id (PK)
Class _name nvarchar10 Class _name Student
Attribute Data type Length Description Key
Stud _id nvarchar8 Student _id (PK)
Stud_namenvarchar50 Student_nameStud_icInt12 Student_icSchool _code nvarchar15 School_codeStud _gen nvarchar10 Student _gender Teacher
Attribute Data type Length Description Key
Teach _id nvarchar10 Teacher_id(PK)
Teach_namenvarchar50 Teacher_nameTeach_gennvarchar10 Teacher gender Sub_codenvarchar10 Subject_codeClass Teacher
Attribute Data type Length Description Key
Teach _id nvarchar10 Teacher_id(FK)
Class_idnvarchar10 Class _id (FK)
Attribute Data type Length Description Key
Username nvarchar15 Staff_if(PK)
Password nvarchar- Password 39
Attribute Data type Length Description Key
Attribute Data type Length Description Key
Stud_namenvarchar30 Student_nameTeach _id nvarchar10 Teacher_id(FK)
Figure 3.8Entity relationship diagram
3.1.10 Propose User Interface
Figure 3.10Info page about Student Attendance System
Figure 3.8 shown the of info page about Student Attendance System. After admin login, this page will appear as first page before admin can proceed with the function of this system which locates at the pop of the interface. The function is register student, list student, report, attendance and log out.
Figure 3.11Registration Student Page
Based on the figure above admin have to register student. From this pages, the admin creates username and password for student to login, and all information of student will insert for generate the QR code. After done insert all data click button “Generate QR” the data will save on the database and student QR code will generate and display on next page.
Figure 3.12Display Student Registration Information and QR code
The Figure 3.10 above display after admin insert all student information. student must revise again information that have been written into system by teacher before click button” Print” for hardcopy smart card.
Figure 3.13List of Student Page
Admin will register new student; the new student can be seen in list of student page. In list of student page has three function/button which is view, update and delete. Button “View” display student information based on student id selection. Button “Delete”, for remove a student that teacher don’t want on database and lastly “Update” button for edit the error or want to add new student info.
Figure 3.14Update Information Student Page
Admin/Teacher also can update information of student. This page can update student information with edit new student info or remove not relevant info. After that click button “Update” the info will have updated on the database and list of student page.
Figure 3.15View Information Student Page
The student detail information will show for student recheck. If have any error or want to change user click back button and select button update.
Figure 3.16Delete student list
The student that not required or not have on the school should be delete so the list of student always up to date.
Figure 3.17Result from search
Teacher insert the student IC number for searching student it is can save time teacher for scroll students list.
Figure 3.18Result from search
Figure 3.19Result from search
3.3 HARDWARE AND SOFTWARE
The hardware and software tools are used to creating diagram, Web browser for compiling PHP code word processing software.
Student attendance System uses the phone for scanner QR code as a device. Beside that it need a computer that to make as a server as medium to receive and sent the data about student information.
The process to develop this system, some software is needed to use during the developing processing.
Table 3.1 Software Requirement Software Specification
PHP – For run the student attendance system
Android – To scan QR code
Database – MySQL
– store student information
Xampp- Local web server installed to store
Microsoft Project – Create Gantt Chart
Io.draw- To Drawing diagram
The implementation of project started with collecting requirement based on comparison of existing systems. Furthermore, we can produce a feature from current ones which lack of features and have some of disadvantages which will improving with add and enhancing current feature.
Project started with drawing the flow of diagrams which are Context Diagram, Use Case, Flow Chart, Dialogue Diagram and Packages Module. From the drawing we will know the flow and interaction of system analysing the structure of diagrams.
The first step of setup is installing local web server which Exampp Apache. The system will start develop the source code using a text editor name Notepad++ and also we will develop the interface of website and mobile according to the flow of the diagram already drawing.
The source code will have stored inside html, css and php file extension inside htcdocs folders in Xampp folder in local Hard Disk C. Xampp control panel and turn on both Apache and MySQL server until green indicator light on. After that enter localhost
to check the location of the folder of source code and creating database and table inside phpmyadmin.
The basic operating such as view, update, delete and search. We add student attendance and student report for generating. For generate QR code we using data encryption technique to create the QR code. The student information we will convert to Matrix barcode, the student information secure. Teacher can scan this QR code and this allows them to store the information for future reference. QR codes acts as the link and it also exposes teacher to other forms of advertising the student attendance or student report of the QR code has done.
Lastly, generate attendance and student report, teacher will generate attendance of student report within daily, weekly and monthly from database server. Meanwhile, generate student report are all student information will we add on the database for reference teacher.
For this case, have two types of testing technique which are used in this development project. These techniques provide systematic guidance for designing test that.
The internal logic of software component
The input and output domains of the program to uncover errors in the program function, behaviour and performance.
The software is tested from two different perspectives that internal program logic is exercised using white box test case design technique and software requirement are exercised using black box test case design technique. In both cases, the intent is to find the maximum number of errors with the minimum amount of effort and time.
In performance testing is designed to test the run-time performance of software within the context of an integrated system. Even at the unit level, the performance of an individual module may be assessed as white-box tests are conducted.
In White Box testing, we focus on testing activity which the internal structure, design and structure which are known by tester. We used the diagrams which are Use Case diagram, Context diagram, Package diagram and Dialogue diagrams as reference for the structure of development, interaction and modules with functions for implementation. After that including unit testing input and outputs and function of each module.
In Black Box testing, focus on testing internal structure, design and structure which are not known by tester. We will review documentations whether it is tally to the requirement and development of the prototype.
RESULTS AND DISCUSSION
This chapter will discuss about the result of the system. It will include stage of the system prototype. This part is the most important part to keep the objective of the project is achieved. This chapter also will discuss of the constraint of the project. The system will give more clear result to planning and arrangement of the system for the future work.
4.2 TESTING AND RESULT DISCUSSION
The testing method for developer is Whites Box Testing which a method where internal structure, design, implementation of tested is known to the tester and applies to lower levels of testing which are Unit Testing and Integration Testing that is included in this section. Tester will start testing using use case that contains all test plan that cover different inputs and output of the systems.
The testing method for users are Black Box Testing which a method where internal structure, design, implementation of tested is not known to the tester and applies to higher levels of testing which are Acceptance Testing and System Testing in User Acceptance Test in Appendix. Tester will start testing using use case that contains all test plan that cover different inputs and output of the systems. This session, user want to know the usage and function whether it is working as it should be. The system is tested using web browser and results are recorded in the Appendix.
The system is built by study of comparison of other three reasons. The technique used in creates a web based password management system based on the following objectives;
To develop student attendance system using QR code,
To create the data base for student attendance online.
To generate unique QR code based on the student information.
4.3 USER MANUAL
The system user guide is produced for beginners and users that want to setup the configuration of the system in local Xampp Server or online webhosting site.
The system achieved the objectives of the system based on the problem statement and objectives and with User Acceptance Test and Testing Thesis and System Testing Approval.
Below appendices are attached:
User Manual. Refer to Appendix B.
User Acceptance Test. Refer to Appendix C
Testing Thesis and System Testing Approval. Refer Appendix D
The main conclusion is that the system built according the requirements and comparison study of the existing system. The system also built according to the development schedule and performs required function. The student attendance system(SAS) to enhance taking attendance sheet, the testing can reduce the teacher time to take attendance. By having SAS possibility to process the information directly on the smart card. Student can use smart card securely because the unique identification that smart card provided.
5.2.1 Send QR code via Localhost in XamppThe system cannot send QR code in localhost when it is run in local drive using Xampp local web server. After some testes run in localhost in Xampp local web server. An error is shown because the generate QR code, open PHP website and QR code to database function only can function well in online web hosting.
5.2.2Same IP address between Mobile Phone and Web Server
The QR code, date/day and class name cannot insert to database. IP address between mobile phone and web server need to same IP because the web server cannot read from different way. But the QR code can scan and display on mobile phone.
5.2.3Inability to Make more Table
The different class cannot insert QR code and class in different table it is constraint of system. That teacher need to search from class name for calculate average students absent for each class.
5.3 FUTURE WORK
To make this system to be more realistic it should implement in each class. So that this system can be applied my any students and teacher of school. Teacher can scan the QR code using teacher mobile phone application with this system. Last but not least, the system should be able to use without any error.
1.0 GENERAL INFORMATION
1.1 System Overview
The system is Student attendance system using QR code. The system is run using localhost server which is named Apache Server, in web hosting,000webhost and contains phpmyadmin that manages the database and tables.
The system has following functions;
User enter login information which are username and password before access their account.
User Registration Module
User registers before QR code generate. The system will prompt user to enter username and password as login information for creating an account.
Save Password Module
User can decide want to remember password or not. But the way user password will save on the MYSQL database.
Generate QR code Module
User can generate unique QR code according to their information that needed to insert on system.
QR code update module
User can edit student information for update the QR code that it will more secure.
1.2 Organization of the manual
The manual includes System Configuration, User Access Levels, Installation Guide and User Guide.
2.0 SYSTEM SUMMARY
2.1 System Configuration
The system can be run using any web browser whether it is desktop or mobile browser. The Xampp server must be installed and started. The Xampp Control Panel is main menu for controlling the Apache and MySQL services. Both services must turn on. Open any web browser and enter localhost in URL on the web browser.
2.2 User Access Levels
The common user of the system can use all function. They can login and logout of the system. They can use all functions in the website which are saving password, generate unique QR code and QR code update.
3.0 GETTING STARTED
3.2 SAS Web Application
3.2.1Login category Page
Figure 3.4Login category page
This page has two type of category for login that “Teacher” and “Admin”:
If click button “Teacher” will go to the page teacher which is like figure 3.5
If click button “Admin” will go to the page admin that shown at figure 3.7
3.2.2Teacher login page
Figure 3.5Teacher login page
This page teacher need to enter username and password for using the system. For example, of username and password are username:” teacher” and password: teacher12. The password it will show in password type it for secure. If teacher enter wrong password or username the message pop up will be display as figure 3.6.
Figure 3.6Message pop up wrong password and username
Message will pop up if teacher enter wrong password or username. Click “ok” return to teacher page login.
3.2.3 Admin login page
Figure 3.7Admin login page
Admin enter code for login and done enter code click button “submit” for go to next page. If enter wrong code the message pop up will display as shown in figure 3.8. After that if click button “Back” will back to previous page such as login category.
Figure 3.8Message pop up wrong code
Message will pop up if admin enter wrong code. Click “ok” return to admin page login.
Figure 3.9About page
In this page user can view the information related to school which are location, contact number, email and schedule library give service. After that have three function link such as link for “Register student” page, “Class list” page and “log out”.
3.2.5 Register student page
Figure 3.10Register student page
The registration phase is an administrative phase in which the administrative need to log in. The teacher need to enter detail student information such as full name, address, mother name, father name, email and matric number. Then, click “Generate QR” button to submit the data to database and display to next page. If teacher click “Reset” button the form will blank and teacher need to enter again.
3.2.6 Class category page
Figure 3.11Class category page
This page “admin” and “teacher” can select class. If click button”5A” will go class “5A” page and if click button “5B” will go to class “5B” page. After that if user don’t want to continue can click “log out” link.
3.2.7 Class page
Figure 3.12Class page
The class page, user can now list of student, attendance student and know the total absent and present every day and month. If user click “List student” button the list of student for that class will be displayed. Such as if page “5A” the list of student for class”5A” will display. Furthermore, if click “Attendance” it will go to page attendance as shown figure below and click “Report” button will go the attendance detail that already calculation.
3.2.8 List of student page
Figure 3.13List of student page
Figure above shows the list of students’ names of a school. That teacher can view, delete and update student information. Teacher enter IC number at search text. The IC number compares the IC number with those stored in the database.
Match (of IC number): captured student IC number is matched with stored in database. The detail of student attendance is automatically recorded for that teacher. A message shown to show that the student has been recorded for the attendance.
Non-match (IC number): the student is not accepted for attendance and student list not shows that the IC number is invalid.
If click “View” button the student information detail will display that teacher can check with student for confirmation. Figure 3.17 shown student detail information.
If click “Delete” button the student at list will delete that id teacher selected to click for delete. Figure 3.16 shown the message pop up list student deleted.
If click “Update” button that id teacher click. The teacher can edit to update student information. Figure 3.14 shown page updated.
3.2.9 Update Student information page (specific id selected)
Figure 3.14Update Student information page
Teacher can edit student information if have some changes. After done enter student information teacher need to click “Update” button the data will update with new QR code. Figure 3.15 shown page display updated information.
Figure 3.15Update Student Information page (after edit)
3.2.10 Delete student page
Figure 3.16Delete student page
The student will remove from list of student and database. Teacher need to click “Ok” button at message pop up and click “Home” link for back to about page.
3.2.11 View student page
Figure 3.17View student page
In this page, teacher can view each student that teacher selected for recheck. If not have any wrong or missing about student information that teacher enter before teacher click “Back” button for return the previous page.
3.2.12 Student attendance page
Figure 3.18Student attendance page
Figure 3.18 shown the attendance of student, that user can select date and click “search” button, the list name of student present and absent will display with “Total present” and “Total absent”. After that user click “Send Report” button for send date, “Total Present” and “Total absent” by day to database. If user click “Submit Attendance” user will go to page attendance detail and user can see percentage student attend and absent in month.
3.2.13 Student attendance report by date page
Figure 3.19Student attendance report by date page
Figure above indicating the number of students who are absent and absent from that date. click submit report to send the report to the database which will show all dates and total attend and absent students to school.
3.2.14 Student attendance report each date page
Figure 3.20Student attendance report each date page
In this, page user can see overall of attendance for each date with total absent and present, it easy to analyses by admin and teacher. If user click view attendance will go to student attendant page as shown figure 3.18.
3.2.15 Student attendance report by month page
Figure 3.21Student attendance report by month page
Figure above shown detail attendance for each student by class selected. Teacher and admin need to select class name and select date from start date until when. The data will display with student name date absent and attend. Attend will represent with”1″ and absent “0”. Furthermore, percentage will be red colour if students attend school less than 50%.
3.2.16 Smart card with QR code
Figure 3.22Student Smart Card
3.2.17 Mobile application for scan QR code
Figure 3.23Mobile application for scan QR code
1.0 TESTING REPORT
The purpose of this section to show the User Acceptance Test(UAT) for Student Attendance System (SAS). Approval of this testing implies that reviewers are confident that following execution of the test plan, the result system will be considered fully-tested and eligible for implementation.
The chose user will go each instruction in user manual. Any errors or problems found by user must be noted on this form. The form also needs to be signed by users after the test is finished.
1.1 Use Case for Login Category Module
Table 1.1 Use Case Table Login Category Module
Event Test Data Expected Result Actual Pass/Fail Comment Result Select click “admin” or system will go to correct the selected login “teacher”buttonbutton page for login category category The system have specific, Select wrong User cannot code button for admin and ccess to system category (username and password) for teacher using 2
1.2 Use Case for User Registration Module
Table 1.1 Use Case Table for User Registration Module
Event Test Data Expected Result Actual Pass/Fail Comment Result Register Teacher Application insert all with valid show” QR code” student data in data and student data a form Register with Teacher The web will uncompletenot fill in all display only register data in a data insert. data form 3
1.3 Use Case for Login Module
Table 1.2 Use Case Table for Login Module
Event Test Data Expected Result Actual Pass/Fail Comment Result Login with Teacher insert Successfully correct Login to Correct username application and username and access to about and password password system Login with Teacher wrong Insert invalid Show error username username and message. and password password Successfully Login with Admin insert login to application and correct code correct code access class category page Login with Admin insert Show error wrong code wrong code message. 4
1.4 Use Case Student List Module
Table 1.4 Use Case Table for Student List Module
Event Test Data Expected Result Actual Pass/Fail Comment Result Teacher insert student name, IC number, matric Successfully Add new number, login to Student on address, application registration phone and access student form number, to about father name, system fatherIC, mother name, mother IC Update student Teacher edit Show “have information student info been updated in form and message”. click “Submit” button Delete Teacher click Show “data Student “Delete” have been list name button delete”message” View Teacher click All student information “View” button information will be display 5
1.5 Use Case Attendance Detail Module
Table 1.4 Use Case Table for Student Attendance Detail Module
Event Test Data Expected Result Actual Pass/Fail Comment Result Successfully Add Teacher scan QR to student Scan valid code with QR attendance mysqlscanner database,theStudent application student QR code on mobile attendance will phone display on that date. Scan unvalidTeacher scan Show wrong data Student QR unvalid QR code code with QR scanner application on mobile phone View total Teacher/admin Show total Student select date student absent absent and and present on present that day each class Analysis Teacher/admin Show all student Total click “view absent and present Student attendace”checkwith total on that attendance detail who not date selected absent and present 6
1.6 Use Case Search Student Module Table 1.5 Use Case Table for Search Student Module
Event Test Data Expected Result Actual Pass/Fail Comment Result Search Teacher insert icShow student specific number and information ic number based on click “Search” match icbutton. number. data Teacher enter Search unmatches icShow invalid invalid icnumber and message to number. click “Search” Teacher. button. 1.7 Use Case Report Student Attendance Module
Table 1.6 Use Case Table for Report Student Attendance Module
Event Test Data Expected Result Actual Pass/Fail Comment Result View total student Teacher/admin Show total absent and Student click “report” present absent and button each present each date. day View each Teacher/admin Show student Student select class name and date attendance. Attendance “from until to” Analysis Teacher/admin Show all each select 1st date date student Student of month until absent and Attendance by month end. present 7
Student Attendance System (SAS) is tested to ensure that it is meet user requirement. The list of use case above shows the result that has been recorded during testing process. Moreover, feedback form filling up by the random user include Teacher and Student at school during testing session is about discussion on the satisfaction of using this application. Table 1.7 show the example of questionaire that give to the user during testing session.
Table 1.7 Example of Questionnaires
1-Very Poor 2-Poor 3-Moderate 4-Good 5-Very Good Question 1 2 3 4 5
1. The overall rate for take SAS. 2. Does this application provide the user the convenient way for taking attendance at school 3. How easy teacher use this application for taking attendance? 4. Does the interface design is suit and easy to understand? 5. Do overall function in this application give a quick response when you using it? 8