EXAM CELL AUTOMATION SYSTEM
EXAM CELL AUTOMATION SYSTEM
EXAM CELL AUTOMATION SYSTEM
Project ID- 10
Submitted By
University of Education
EXAM CELL AUTOMATION SYSTEM
BS in Information
Technology-2024
MUHAMMAD ALI
INSTITUTE OF SCIENCE
AND TECHNOLOGY
LAYYAH
AFFILETED WITH
UNIVERSITY OF
EDUCATION LAHORE
August 2024
“I hereby declare that I have read this project documentation and in my opinion this project is sufficient
in terms of scope and quality for the award of the degree of BS in Information Technology.”
Lecturer Designation
Signature: Signature:
Name: Name:
Date: Date:
PLAGIARISM UNDERTAKEN
Signature: Signature:
Name: Name:
Date: Date:
CERTIFICATE OF APPROVAL
Signature: Signature:
Name: Name:
Date: Date:
Lecturer Designation
NOTIFICATION
No: Date:
It is notified for the nomination of all the concerned that Mr./Ms. (name of
the student-1), (name of the student-2), (name of the student-1), (name of
the student-1) BS/MSc student of Name of the department of University of
Education has completed all the requirements for the award of BS/MSc
Degree in the discipline of Information Technology as per detail given
hereunder:
Signed by
Controller of
Examination
CC:
1. abcd
2. xyz3
ACKNOWLEDGEMENT
1- Mr. Furqan
2- Mr. Akram
Date:
March 11, 2016
ABSTRACT
Examination is a core activity of any educational institution. As the examination arrives there
exists a lot of work like consolidating the timetable, seating arrangement, and invigilation
allotment which will be done manually it takes a lot of time, and requires manpower. Thus, an
automated system would solve the above stated problem in just few clicks of work. The purpose
of developing an Examination Management Automation System is to computerize the traditional
way of conducting exams. It is a web and android application that can be used by students and
exam cell coordinator using their smart phones or PCs. The project keeps track of various details
in modules such as Students Details, Staff Details, and Hall Details with proper descriptions. It
also has some features to generate reports for bundle handovers, absentee’s statements and roll
lists. The exam Cell Automation System is developed for the college or institute to computerize
the traditional way of conducting exams and to simplify examination hall allotment and seating
arrangement. Also, automating the timetable generating process will help get rid of various
anomalies caused due to human error. Mostly staff faces many problems in assigning exam halls
depending upon the availability of classes, capacity of classes, student details, allotment of duties
to the respective teachers, etc. And the manual system of preparing time table in colleges is very
time consuming and usually ends up with various classes clashing either at same room or with
same teachers having more than one class at a time. To overcome all these problems, an
automated system is proposed. -
Contents
CHAPTER NO 1: Information Gathering............................................................................................xiii
1.1. Introduction.................................................................................................................................xiii
1.2 PURPOSE.......................................................................................................................................xv
1.2.1 Disadvantages of the current system:........................................................................................xv
1.2.2 Advantages over the current system:.........................................................................................xv
1.3 Problem Statement.........................................................................................................................xv
1.4 Objective........................................................................................................................................xvi
1.5 Methodology.....................................................................................................................................xvii
1.5.1 Existing Methodologies............................................................................................................xviii
1.5.2 Waterfall Model......................................................................................................................xviii
1.5.1.1 Requirement Analyses and Definition....................................................................................xx
1.5.1.2. System and software Design:................................................................................................xx
1.5.1.3. Implementation and testing:..................................................................................................xx
1.5.1.4. Integration and system testing:.............................................................................................xxi
1.5.1.5. Operations and Maintenance:...............................................................................................xxi
1.5.2 Incremental Models.................................................................................................................xxii
1.5.3 Spiral Model...........................................................................................................................xxiv
1.6. Adopted Methodology....................................................................................................................xxvi
1.6.1. Reasons for choosing the Methodology................................................................................xxvii
CHAPTER NO 2: Software Requirement Specification...................................................................xxviii
2.1. Functional Requirement...............................................................................................................xxviii
2.2 Non- Functional Requirement........................................................................................................xxix
2.3 Tools and Techniques........................................................................................................................xxx
2.3.1 PHP.........................................................................................................................................xxx
2.3.2 Xampp.....................................................................................................................................xxxi
2..3.3 MYSQL...................................................................................................................................xxxii
2.3.4 HTML.....................................................................................................................................xxxii
2.3.5 Bootstrap...............................................................................................................................xxxii
2.3.6 Java Script.............................................................................................................................xxxiii
2.3.7 Sublime Text..........................................................................................................................xxxiii
2.3.8 CSS........................................................................................................................................xxxiii
CHAPTER NO 3: Analysis.................................................................................................................xxxiv
3.1 Use Cases for Online Exam Cell Automation System..............................................................xxxiv
3.2 . Actors........................................................................................................................................xxxiv
3.4. Detailed Use Case Examples....................................................................................................xxxvi
CHAPTER NO 4: Design..................................................................................................................xxxviii
4.2. Entity-Relationship Diagram (ERD).......................................................................................xxxix
4.3. Data Flow Diagram (DFD)...........................................................................................................xli
4.4. Class Diagram..............................................................................................................................xliii
4. 5. Sequence Diagram......................................................................................................................xliv
Visual Representation........................................................................................................................xlv
CHAPTER NO 5: Graphical user Interface........................................................................................xlvi
5.1 Login Page....................................................................................................................................xlvi
5.2 Dashboard....................................................................................................................................xlvii
5.3 Teacher Module...........................................................................................................................xlvii
5.3.1 View Teacher.........................................................................................................................xlviii
5.4 Add Student................................................................................................................................xlviii
5.4.1 View Student...........................................................................................................................xlix
5.5 Subject Management....................................................................................................................xlix
5.5.1 View Subject................................................................................................................................l
5.6 Class Management............................................................................................................................l
5.6.1 View Class.................................................................................................................................li
5.7 Exam Management........................................................................................................................li
CHAPTER NO 6: Test Cases...................................................................................................................lii
6.1 Test Scenario.......................................................................................................................................lii
6.2 Test Plan...........................................................................................................................................lii
CHAPTER NO 7: Conclusion and Future work...................................................................................lv
Future Work........................................................................................................................................lv
List of Images
Figur.Error! Use the Home tab to apply 0 to the text that you want to appear here..1.2 Waterfall
Model 2.....................................................................................................................................................xxi
Figure 1.Error! Use the Home tab to apply 0 to the text that you want to appear here..2 Incremental
Model......................................................................................................................................................xxiii
Figure1.3 Stages of Incremental Model...................................................................................................xxiv
Figure 1.4 Spiral Model.............................................................................................................................xxv
Figure 1..5 Full Version of Spiral Model...................................................................................................xxvi
List Of Table
1.2 PURPOSE
The purpose of developing the Examination Management Automation System is to
automate the regular way of organizing the examinations in an educational institute and
generating reports according to the examination type and time.
1.4 Objective
The primary objective of the Exam Cell Automation System (ECAS) is to enhance the
efficiency, accuracy, and transparency of examination management processes within educational
institutions. By leveraging automation, ECAS aims to streamline various exam-related tasks,
thereby reducing manual intervention and the associated risks of errors and delays. The specific
objectives of the system are as follows:
Automate Exam Scheduling: Develop a system that automatically schedules exams,
considering factors such as available time slots, exam venues, and the availability of
invigilators, to optimize resource utilization and minimize scheduling conflicts.
Efficient Invigilator Allocation: Create an automated process for assigning invigilators
to exams, ensuring fair and balanced distribution of duties while taking into account
individual preferences and availability.
Streamline Result Processing: Implement a robust mechanism for the automated
processing, verification, and dissemination of exam results, ensuring accuracy and
reducing the time taken to publish results.
Enhance Communication: Facilitate seamless communication between students,
faculty, and administrative staff regarding exam schedules, venues, and results through
automated notifications and updates.
Improve Data Management: Establish a centralized database to store and manage all
exam-related data securely, enabling easy access, retrieval, and analysis of information
while ensuring data integrity and confidentiality.
Increase Transparency and Accountability: Provide real-time tracking and monitoring
of examination activities, enhancing transparency and accountability in the management
of exams.
Minimize Human Errors: Reduce the dependency on manual processes to minimize the
risk of human errors in scheduling, invigilation, and result processing, thereby improving
the overall reliability of the examination system.
Optimize Resource Utilization: Ensure efficient utilization of available resources,
including exam venues and personnel, to avoid underutilization or overcrowding and to
create an optimal examination environment.
1.5 Methodology
In software engineering, various methodologies can be adopted to manage and execute projects
efficiently. For the "Online Exam Cell Automation System," it is essential to choose a
methodology that ensures a structured approach, facilitates collaboration, and provides flexibility
to adapt to changes.
The systems services, constraints and goals are established by consultation with system users.
They are then defined in detail and serve as a system specification.
Real projects rarely follow the sequential flow that the model proposes. In general these phases
overlap and feed information to each other. Hence there should be an element of iteration and
feedback.
A mistake caught any stage should be referred back to the source and all the subsequent stages
need to be revisited and corresponding documents should be updated accordingly. This feedback
path is shown in the following diagram.
Figur.Error! Use the Home tab to apply 0 to the text that you want to appear here..1.2 Waterfall Model 2
Because of the costs of producing and approving documents, iterations are costly and require
significant rework.
The major drawbacks of the waterfall model are due to the fact that the entire product is
developed and delivered to the client in one package.
This results in delayed feedback from the client. Because of the long elapsed time, a huge new
investment of time and money may be required to fix any errors of omission or commission or to
accommodate any new requirements cropping up during this period. This may render the product
as unusable.
Incremental model may be used to overcome these issues. In the incremental models, as opposed
to the waterfall model, the product is partitioned into smaller pieces, which are then built and
delivered to the client in increments at regular intervals.
Since each piece is much smaller than the whole, it can be built and sent to the client quickly.
This results in quick feedback from the client and any requirement related errors or changes
could be incorporated at a much lesser cost. It is therefore less traumatic as compared to the
waterfall model.
Figure 1.Error! Use the Home tab to apply 0 to the text that you want to appear here..2 Incremental Model
It also required smaller capital outlay and yield a rapid return on investment. However, this
model needs and open architecture to allow integration of subsequent builds to yield the bigger
product. A number of variations are used in object-oriented life cycle models.
There are two fundamental approaches to the incremental development. In the first case, the
requirements, specifications, and architectural design for the whole product are completed before
implementation of the various builds commences. In a more risky version, once the user
requirements have been elicited, the specifications of the first build are drawn up.
Figure1.3 Stages of Incremental Model
When this has been completed, the specification team turns to the specification of the second
build while the design team designs the first build. Thus the various builds are constructed in
parallel, with each team making use of the information gained in the all the previous builds. This
approach incurs the risk that the resulting build will not fit together and hence requires careful
monitoring.
Barry Boehm developed this model. The main idea of this model is to avert risk, as there
is always an element of risk in development of software. For example, key personnel may resign
at a critical juncture, the manufacturer of the software development may go bankrupt, etc. In its
simplified form, the Spiral Model is Waterfall model plus risk analysis. In this case each stage is
preceded by identification of alternatives and risk analysis and is then followed by evaluation
and planning for the next phase. If risks cannot be resolved, project is immediately terminated.
This is depicted in the following diagram.
Figure 1.4 Spiral Model
As can be seen, a Spiral Model has two dimensions. Radial dimension represents the cumulative
cost to date and the angular dimension represents the progress through the spiral. Each phase
begins by determining objectives of that phase and at each phase a new process model may be
followed.
Figure 1..5 Full Version of Spiral Model
The main strength of the Spiral Model comes from the fact that it is very sensitive to the risk.
Because of the spiral nature of development it is easy to judge how much to test and there is no
distinction between development and maintenance. It however can only be used for large-scale
software development and that too for internal (in-house) software only.
There are many reasons to choose the incremental development, the main reasons for
choosing the Incremental model are:
Requirement
ID Description Priority
Type
NFR-
Non-Functional Performance High
01
The system shall handle up to 1,000 concurrent users without
performance degradation.
NFR-
Non-Functional Security High
02
The system shall ensure data encryption, secure access, and
protection against common security threats.
NFR-
Non-Functional Usability Medium
03
The system shall have an intuitive user interface that is easy
to navigate for all user roles.
NFR-
Non-Functional Reliability High
04
The system shall have an uptime of 99.9% and be resilient to
failures.
NFR-
Non-Functional Scalability Medium
05
The system shall be scalable to accommodate increasing
numbers of users and data.
NFR-
Non-Functional Maintainability Medium
06
The system shall be designed for easy maintenance and
updates.
NFR-
Non-Functional Compatibility Medium
07
The system shall be compatible with major web browsers
and mobile devices.
Requirement
ID Description Priority
Type
NFR-
Non-Functional Backup and Recovery High
08
The system shall have automated backup and recovery
processes to prevent data loss.
NFR-
Non-Functional Documentation Medium
09
The system shall include comprehensive documentation for
users and administrators.
Table 2. 2 Non-Functional Requirement
Php
Xampp
Mysql yog
HTML
Bootstrap
Sublime text
Git hub
Java Script
Css
2.3.1 PHP
Hypertext Preprocessor (or simply PHP) is a server-side scripting language designed for
Web development, but also used as a general-purpose programming language. It was
originally created
by Rasmus Lerdorf in 1994,] the PHP reference implementation is now produced by The PHP
Group. PHP originally stood for Personal Home Page,] but it now stands for the recursive
acronym PHP: Hypertext Preprocessor.
PHP code may be embedded into HTML code, or it can be used in combination with
various web template systems, web content management systems, and web frameworks.
PHP code is usually processed by a PHP interpreter implemented as a module in the web
server or as a Common Gateway Interface (CGI) executable. The web server combines the
results of the interpreted and executed PHP code, which may be any type of data, including
images, with the generated web page. PHP code may also be executed with a command-
line interface (CLI) and can be used to
implement standalone graphical applications.
2.3.2 Xampp
XAMPP is a free and open source cross-platform web server solution stack package
developed by Apache Friends, consisting mainly of the Apache HTTP Server, MariaDB
database, and interpreters for scripts written in the PHP and Perl programming languages.
XAMPP stands for Cross-Platform (X), Apache (A), MariaDB (M), PHP (P) and Perl (P).
It is a simple, lightweight Apache distribution that makes it extremely easy for developers
to create a local web server for testing and deployment purposes. Everything needed to set
up a web server – server application (Apache), database (MariaDB), and scripting language
(PHP) – is included in an extractable file. XAMPP is also cross-platform, which means it
works equally well on Linux, Mac and Windows. Since most actual web server
deployments use the same components as XAMPP, it makes transitioning from a local test
server to a live server extremely easy as well.
2..3.3 MYSQL
MySQL Workbench is a unified visual tool for database architects, developers, and DBAs.
MySQL Workbench provides data modeling, SQL development, and comprehensive
administration tools for server configuration, user administration, backup, and much more.
MySQL Workbench is available on Windows, Linux and Mac OS X.
2.3.4 HTML
Hypertext Markup Language (HTML) is the standard markup language for creating web
pages and web applications. With Cascading Style Sheets (CSS) and JavaScript, it forms a
triad of cornerstone technologies for the World Wide Web.[4]
Web browsers receive HTML documents from a web server or from local storage and
render the documents into multimedia web pages. HTML describes the structure of a web
page semantically and originally included cues for the appearance of the document.
HTML elements are the building blocks of HTML pages. With HTML constructs, images
and other objects such as interactive forms may be embedded into the rendered page. HTML
provides a means to
create structured documents by denoting structural semantics for text such as headings,
paragraphs, lists, links, quotes and other items.
2.3.5 Bootstrap
Bootstrap is a free and open-source front-end framework for designing websites and web
applications. It contains HTML- and CSS-based design templates for typography, forms,
buttons, navigation, and other interface components, as well as optional JavaScript
extensions. Unlike many web frameworks, it concerns itself with front-end development
only.
Alongside HTML and CSS, JavaScript is one of the three core technologies of the World Wide
Web. JavaScript enables interactive web pages and thus is an essential part of web
applications. The vast majority of websites use it, and all major web browsers have a
dedicated JavaScript engine to execute it.
Sublime Text is a proprietary cross-platform source code editor with a Python application
programming interface (API). It natively supports many programming languages and markup
languages, and functions can be added by users with plugins, typically community-built and
maintained under free software licenses.
2.3.8 CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation
of a document written in a markup language like HTML. CSS is a cornerstone technology
of the World Wide Web, alongside HTML and JavaScript.
CSS is designed to enable the separation of presentation and content, including layout, colors,
and fonts. This separation can improve content accessibility, provide more flexibility and
control in the specification of presentation characteristics, enable multiple web pages to
share formatting by specifying the relevant CSS in a separate css file, and reduce
complexity and repetition in the structural content.
CHAPTER NO 3: Analysis
To provide a visual representation, a use case diagram typically includes the main actors (users)
and their interactions with the system. Since a visual diagram cannot be provided directly here,
below is a detailed textual description of the use cases along with the actors involved.
3.2 . Actors
Administrator: Manages user roles, schedules exams, and oversees the overall
system.
Teacher: Creates and manages exams, adds questions to the question bank, grades
subjective questions, and reviews results.
Student: Takes online exams, views exam schedules, and checks results.
System: Handles automated processes such as authentication, auto-grading,
notifications, and report generation.
Actor(s): Teacher
Description:
o Precondition: Teacher is logged into the system.
o Main Flow:
1. Teacher navigates to the 'Create Exam' section.
2. Teacher enters exam details (title, date, duration).
3. Teacher selects questions from the question bank.
4. Teacher saves the exam.
o Postcondition: The new exam is created and saved in the system.
Actor(s): Student
Description:
o Precondition: The student is logged into the system and has a scheduled exam.
o Main Flow:
1. Student navigates to the 'Scheduled Exams' section.
2. The student selects the exam and starts it.
3. Student answers the questions within the given time frame.
4. Student submits the exam.
o Post condition: The exam is submitted for grading.
CHAPTER NO 4: Design
Description: The architecture design provides a high-level overview of the system's structure,
including its components, their interactions, and the technologies used. The architecture of the
Online Exam Cell Automation System is based on a multi-tier architecture, consisting of the
following layers:
1. Presentation Layer: This is the front-end of the system, including the user interface. It
interacts with users (administrators, teachers, and students) through web pages or mobile
applications.
2. Application Layer: This is the business logic layer that processes user inputs, applies
business rules, and manages data flow between the presentation and data layers.
3. Data Layer: This layer includes the database management system (DBMS) and handles
data storage, retrieval, and management.
Technologies:
Description: The ERD depicts the data model and relationships between entities in the system.
Key entities and their relationships are illustrated.
User: Represents users in the system (attributes: user_id, username, password, role).
Exam: Represents exams created by teachers (attributes: exam_id, title, date, duration).
Question: Represents questions in the question bank (attributes: question_id, text, type,
answer).
Result: Represents the results of exams (attributes: result_id, student_id, exam_id, score).
Relationships:
User - Exam: One-to-many relationship (one teacher can create multiple exams).
Exam - Question: Many-to-many relationship (an exam consists of multiple questions,
and a question can be part of multiple exams).
User - Result: One-to-many relationship (one student can have multiple results).
Figure 4. 2 ERD
4.3. Data Flow Diagram (DFD)
Description: The DFD illustrates how data moves through the system and the processes
involved at each stage.
Levels:
Level 0 (Context Diagram): Shows the system as a single process interacting with
external entities (users: administrators, teachers, and students).
Level 1: Breaks down the system into major sub-processes (e.g., user management, exam
management, result processing).
Processes:
Description: The class diagram models the static structure of the system by showing its classes,
attributes, operations, and relationships among objects.
Classes:
Relationships:
Association: User creates Exam, Exam contains Questions, User receives Result.
Inheritance: User has subclasses (Administrator, Teacher, Student) with specific roles
and permissions.
Description: The sequence diagram depicts the interactions between objects in a sequential
order, focusing on the flow of messages over time for a specific scenario.
Objects:
Sequence of Interactions:
Visual Representation
Creating visual diagrams is crucial for a complete understanding. Here are the suggested steps
for creating them:
The Exam Cell Automation System (ECAS) needs to be tested to ensure that it performs as
expected across all its functionalities. The testing will cover both black-box and white-box
testing approaches to validate the system's functionality, performance, and security.
Scope:
Testing will cover all modules of the ECAS, including exam scheduling, invigilator allocation,
result processing, notifications, and data management.
Objectives:
Ensure that the system functions correctly, efficiently, and securely. Identify and fix any defects
before deployment.
Resources:
Test team, test environment (including software and hardware), test data, and tools.
Schedule:
Testing will be carried out over a defined period, with specific milestones for different phases
such as unit testing, integration testing, system testing, and acceptance testing.
Types of Tests:
Black-Box Testing: Functional testing without considering internal code structure.
White-Box Testing: Structural testing considering the internal workings of the system.
Definition of Test Case
A test case is a set of conditions or variables used to determine if a system under test satisfies
requirements and works correctly. Each test case includes inputs, execution conditions, and
expected results.
The Exam Cell Automation System (ECAS) project has successfully demonstrated the potential
to revolutionize the management of examination processes within educational institutions. By
automating critical tasks such as exam scheduling, invigilator allocation, result processing, and
communication, ECAS offers a robust solution to the inefficiencies and inaccuracies associated
with traditional manual methods. The system has shown significant improvements in terms of:
1. Efficiency: Automation of repetitive tasks has drastically reduced the time and effort
required from administrative staff.
2. Accuracy: The elimination of human errors in scheduling, invigilation, and result
processing has led to higher accuracy and reliability.
3. Resource Utilization: Optimal allocation of resources, including exam venues and
invigilators, has enhanced the overall management of examinations.
4. Transparency and Accountability: Real-time tracking and monitoring of examination
activities have increased transparency and accountability in the exam management
process.
5. Communication: Automated notifications and updates have facilitated seamless
communication between students, faculty, and administrative staff.
Overall, the implementation of ECAS has resulted in a more streamlined, efficient, and user-
friendly examination management system that benefits all stakeholders involved.
Future Work
While the current implementation of ECAS addresses many challenges associated with
traditional exam management, there are several areas for future enhancement and development to
further improve its functionality and adaptability:
By focusing on these future enhancements, ECAS can continue to evolve and remain at the
forefront of exam management solutions, offering even greater value to educational institutions
and their stakeholders.