Online Registration System
Online Registration System
net/publication/261203302
CITATIONS READS
3 19,050
5 authors, including:
Abdullah Bajahzar
Majmaah University
45 PUBLICATIONS 1,248 CITATIONS
SEE PROFILE
All content following this page was uploaded by Emad Shafie on 10 October 2016.
Abstract-When a student comes to the lecture, it is necessary attendance online for any lecture they present. Moreover, the
for the lecturer to save his/her attendance which helps the administrator will have full access to the application for
instructor or the teacher to evaluate students' interests and controlling and managing the system. Therefore, this paper
behaviour. On the other hand, the student will be able to concentrates on the student attendance process by
remind the lecturer of his/her attendance. Therefore, this developing a web based system to serve the university
paper is developed for academic purposes to control and save
students and teachers.
student attendance data, by using a web based application.
The main contribution of this paper is to facility students'
There are three main types of users who can use this system:
registration which saves tutors time, support the intended
student, instructor and administrator. Each one of these users
task effectively, deliver an easy to use website with good
can have different options to use the system. The student can
usability, provide teachers with useful statistics about the
access the application to show his/her time table and the
history of his/her attendance of the lecture or other module
student attendance and provide students about their
activities. The instructor can use the system to register the
attendance.
students' attendance and to show the students' attendance This paper will develop by using some programming
history. In addition, the instructor has a choice to update the tools that can be used for software implementation, such as
student attendance. Moreover, the system administrator JSTL (JavaServer Pages Standard Tag Library)
controls the system by managing (add, delete, update) Student, programming language and HTML, Tomcat as a sever type,
instructor, module and programme data. The administrator MYSQL as an application database, Adobe Dreamweaver
can also add the semester data. Furthermore, this paper has 9.0 as a web designer and Windows XP as an operating
been developed by using Waterfall model methodology. system software.
The paper is organized as follows. Section 2 describes
Keywords- Student, Instructor, Teacher, JSTL, MYSQL, the system problem. System analysis and requirements are
Tomcat. explained in Section 3. Section 4 illustrates system design
and implementation. Discussion is shown in Section 5.
I.INTRODUCTION
Finally, conclusion and future work are presented in Section
There are many reasons for the success of the 6.
educational process, such as developing good study plans
and the efficiency of teachers and others. However, to make II.SYSTEM PROBLEM
sure this process will be successful, the students' responses Teachers and instructors are currently using different
and interaction in terms of their attendance have to be ways to register student attendance. For example, the student
recorded and evaluated. Moreover, this is important also to writes their student number, their name and signs on the
distinguish between students' levels and to make sure that all physical paper then they pass it to other friends. Another
students are in a good physical and mental status. method is when the student passes their card in front of a
DMU (De Montfort University), as with any other card reader to register their attendance. A final method is
university, needs to maintain these records in all group when the teacher reads the student's name and registers their
activities (labs, tutorials, etc). This is now done by a manual attendance and records it on paper or in electronic format.
registration system which does not provide statistical Consequently, there are multiple ways to register the
information as it is collected in different Excel spreadsheets. student's attendance and this constitutes as the first step to
So, this can be enhanced by a web system which can be register data for the student. The other step is how to save
accessed online in www.cse.dmu.ac.uk. The web based the student attendance data and how to use this to improve
system will have the functionality required for the the education process. However, if that way was perfect
registration process. It will be used by DMU teachers and there would not be a need to look for a new system to
students who have different levels of ability which makes it achieve the intended purpose of this system. In the next
important to design the system to be easy to understand and paragraph the problem of the system will be discussed.
easy to use. DMU uses a traditional way to register student
Although the website will be available online, not attendance by teachers. The teacher reads the student' s name
everyone will be allowed to access the application. The and then he marks near the student name in the student list
DMU students, tutors and application administrators are the whether the student is present or absent. Another way that
only allowed users. The students will be able to view their attendance is kept is when the teacher asks the student to
attendance, and the tutor will be able to register the write their name on a piece of paper. After students finish
doing that, they pass the paper to the teacher. However, system, and each of them have to have different options
through this method the student does not have access to the available to them based on their account type. The use case
history of their previous attendance. So the advantages of diagram below clarifies the available options to each of the
this system compared with the disadvantages are little. different account types. There are two diagrams showing the
As mentioned previously, there are different ways to use case depending on the user type: (1) Instructor use cases
register student attendance. Each of these ways has its own as in Fig.1 and (2) Student use cases as in Fig. 2 bellow:
disadvantages. Several methods were previously discussed.
One method mentioned was when a teacher registers
attendance on a piece of paper. However, the disadvantage
of this method is that this piece of paper could become lost
or damaged after the attendance has been recorded. Another
way that was mentioned before included asking students to
write their name and ID and pass it to other students. The
problem here is more complicated because the data written Instructo
by the student may be wrong (i.e. a student writing the name
of another friend' s name) which can mean less reliability of Figure 1. Instructor use case diagram
the captured data. Also, if the student' s handwriting is not
clear it also creates another problem. The last way There are seven use cases allocated for instructor users
mentioned in last paragraph suggests a method where which are: login, logout, view time table, view student
students could scan their student card with a card reader attendance, online attendance register, change student
which would allow for the data to be saved automatically to attendance and change password.
the server data.
Furthermore, the problems discussed before are related
to registration attendance methods. However, an additional
problem is how can we make the data useful and accessible?
For example, what happens if a student needs to view their
View Student
attendance including issues of trust? If this is the case, how
can we give this authority to the student to allow them to Change Password
175
2011 3rd International Conference on Advanced Computer Control (ICACC 2011)
It is important to supply the user with a suitable web for systems that are mission-critical and for integrating into
application. There are some points that can be determined as mass-deployed software [8].
non-functional system requirements which are as follow [4,
F. Apache Tomcat
5]:
• Hardware is required to run the system which is It is software that is open-sourced implemented using
determined as follows: (1) server with good both Java Servlet and JavaServer Pages, the specifications of
specifications, (2) personal computer or laptop used which are developed within the Java Community Process. It
to run the application and (3) internet access to is created in an environment that is open and participatory
connect to the server. and then provided under Apache Software Licensing.
• Software is required to run the system which is Apache Tomcat is a product of collaboration between the
determined as follows: (I) server side: install tomcat best developers in the world [9, 10].
server and MYSQL database to run the application,
IV.SYSTEM DESIGN AND IMPLEMENTATlON
(2) client side: internet browser such as Windows
Explorer, Safari, and (3) usability: the website There are several techniques used to develop this work.
design should have an average usability such as use Also there are different methodologies to develop the system.
cases that follow same page style sheets and the In this part, the differences between system development
application should be easily usable. methodologies will be discussed, and the suitable
As mentioned in the introduction, this paper will be built methodology will be adopted to develop this work.
by using JSTL web developing language and the server type The waterfall model: it can be used to develop software;
used to run this application is tomcat. The database used is it employs a sequential technique so the development flows
MYSQL. Moreover, Adobe Dreamweaver 9.0 will be used downwards through specific phases which are analysis of
as a programming tool. In this part, the technology used will requirements, designing, implementation, testing, integration,
be highlighted and clarified in regards to why these and finally maintenance. It is a popular opinion that the
technologies have been chosen to develop this system. waterfall model is more suitable for software papers in
which the requirements do not change, and if it can be
C. The JSTL programming language assumed that the designers are likely to envisage any
It is an integrated programming language into JSP (Java possible future problems thus creating a 'correct' design
Server Pages). So, to understand JSTL we need to have a before the system is implemented. Methodologies that are
simple preview of JSP. JSP technology helps web more agile tend not to place an emphasis on documentation
developers and designers to develop web pages that are instead preferring to focus on creating a working code.
maintainable, full of information and dynamic that utilizes However, with these agile development methods paper
effectively existing business systems. JSP technology allows knowledge is kept mentally by developers which considered
web-based applications to be platform independent. a disadvantage [II, 12].
However, an experienced web developer or designer, who SSADM (Structured Systems Analysis and Design
has experience with HTML, can use JSP technology without Method): it is also used for information systems' design.
the need to learn Java. JSP technology can be used without SSADM was initially developed in the UK by the CCT
having to know how to write Java scriplets. Moreover, JSTL (Central Computer and Telecommunications Agency) during
has now been integrated into JSP technology and upgraded the 1980's. SSADM has been used to development medium
to offer support functions. JSP technology employs XML or large size systems, although there is a micro version
like tags which have the logic needed for the content for the known as 'Micro SSADM' designed for smaller systems.
page [6]. SSADM begins with a definition of the information system
strategy and subsequently creates a feasibility study. After
D. JSP technology
these two there is analysis of requirements, specification of
It has been derived from Java Servlet technology. requirements, system specification and a finally the actual
Servlets are modules that are platform-independent and system design [13, 14].
server-side, they can be integrated seamlessly into the The main advantages of SSADM are: (1) provides three
framework of a Web server and can also enhance the different viewpoints of the system, (2) mature, (3) logical
capabilities of Web servers whilst minimising overheads, and physical aspects are separated and (5) users are well
support and the need for maintenance. Servlets are different involved. The disadvantages are: (1) great amount of
to other scripting languages because there are no platform investment in training, (2) user involvement, (3) changing
specific considerations involved; they can be downloaded, requirements is difficult, and (4) cost associated with
whenever needed, to be used in the part of the system that documentation [15].
requires them [4, 7]. RAD (Rapid Application Development): it is another
development method, which builds applications very rapidly;
E. MySQL
however it can be beset with compromises in usability,
It is a widely used open source developed by MySQL features and the speed of execution. It was developed to help
who is a commercial company providing services related to describe a development process which involved prototyping
the MySQL. MySQL software provides a fast, multi and iterative development. RAD has some advantages that
threaded, sound SQL database server. It has been designed are a rapid speed of development and better quality. There
176
2011 3rd International Conference on Advanced Computer Control (ICACC 2011)
are two gauges for determining quality with RAD firstly to define the database connection and the database user by
how successfully the system meets the users requirements running tomcat server and mysql database engine.
and secondly if the system has low maintenance costs [16, Router: The router in JSP can be defining as the
17]. controller of servlet because it routes an application web
Considering the above discussion the waterfall model flow [15]. So, the router determines which use case has been
will be adopted because it is simple and more disciplined. requested. It considers as system index. For example:
The approach is very structured because it progresses <c:url var="reqHomeURL" scope="session" value="home" />
linearly and logically through easy to understand and explain <c:url var="pgeUcOOIURL" scope="session" value="ucOOI" />
"phases", furthermore it provides "milestones" which help to <c:url var="pgeUcOIOURL" scope="session" value="ucOIO" />
mark the phases of the development process [17, 18]. This code has been written in router file to define the
There are two steps used to design this system which are path info for the use cases which is illustrated as a value of
user interface design and database design. the URL variable.
User Interface Design: while designing the system, the JS TL Pages: all of the use case that developed are
use cases created will be designed with the same style sheets consists of two file at least which are uc???p (for process
so that all use cases will be consistent. So, when the users page) and uc ...v.(visible page) Also some of that use case
login, thel' are presented with an appropri at e list of opt i ons .
includes one more file which is uc ...v2 (to confirm the user
J � OMJs 5b.dent Attendance System order). In addition, all JSP pages used in the system have
DlVIU's Student Attendunce System been defined in the router. The uc ... v file is used to take the
information from the user to show some information for
LOser Login
himlher, then it will be forwarded to uc ... p which is used to
Cn-reszistred usrer.
• Display:\'fodule schedule
process that order. And the uc ... v2 is used to confirm the
user order.
De :'vlontfort LiID:ersity An Right Resern�d Contact Cs
Main Queries: there are some SQL commands which
Figure 3. System page layout
are used to sort the data as the user request from the
application as:
Database: The database engine that will be used during
Statistic the student attendance:
system development is MYSQL. The reasons are: (1) it is SELECT dbActivity,dbGroup,a. dbLectureCode,dbLecturedesc,dbday,
free resources, (2) compatibility with JSP application. There MAX( dblectureno) LectureNO,
are thirteen tables that need to be allocated during the design SUM(IF(dbAttendanceType='O', 1,0)) AS Absent,
of the system. These tables have been illustrated in Fig. 4 SUM(IF(dbAttendanceType='I" I,0)) AS present,
throu gh the E n ti ty Rel ati on ship Diagram: SUM(IF(dbAttendanceType='2', I ,0)) AS late,
I M M SUM(IF(dbAttendanceType='3', 1,0)) AS absentwitheexecuse
Facuit Program I FROM StudentAttendance a, Lecture b
.......-
. --'�
- �L1--:-e""7"--' WHERE b.dblecturecode =a . dblecturecode and
dbstudentid=? and
M
dbModuleCode =?
StudentSched
GROUP BY dbActivity, a.dblecturecode order by dbActivity desc
This query is used to statistic the student attendance
regarding to hislher attendance. It calculates the sum of the
same student status by using mysql function.
Main Functions: The first main function of this system is
to register the attendance by the instructors or the teachers.
This function developed in suitable design. When the
teacher chooses the data which is need to register attendance
(module code, group, and lecture time), then the system
show this data in a table include the student data of module.
This data will sort in sequence variable (loop) to prepare
this data to be saved in the system database. The loop
defines the variable whereas each row in the table have id
used to determine other variable in same row.
(name="id_${ myRow4.dbStudentId} ")
Figure 4. Entity Relationship Diagram When the system receive request to save data, the code
which is used to save this data is:
To run this system, there are some steps must be <c:forEach items="${ param}" var="p">
prepared before system running: (1) system files with other <c:if test="${ fn:startsWith(p.key, 'id_')}" >
system components saved in C: \j3t\webappfolder\WEB The code above used the loop to process all parameter
INF\jsp folder, (2) All jsp files should be defined in router from the submitted page, the (p.key, 'id_') used as key to
file, (3) Tomcat server configuration with MYSQL database other parameter. The id has been determined by function
by modifY web.xml file. The tomcat configuration is by called startswith (check all parameter in a loop). Then the
editing web.xml to define the servlet mapping (router), also data will be stored in the database.
177
2011 3rd International Conference on Advanced Computer Control (ICACC 2011)
178
2011 3rd International Conference on Advanced Computer Control (ICACC 2011)
179