SlideShare a Scribd company logo
1 of 124
Final Project Report
MobiQuiz
Project Supervisor
Sarfraz Ahmad Awan
Submitted By
S13CS61920410
Page | 1
Ahid Hussain MC120202860
Software Projects & Research Section,
Department of Computer Sciences,
Virtual University of Pakistan
CERTIFICATE
This is to certify that Mc120202860 (Mc120202860) have worked on and
completed their Software Project at Software & Research Projects Section,
Department of Computer Sciences, Virtual University of Pakistan in partial
fulfillment of the requirement for the degree of BS in Computer Sciences under
my guidance and supervision.
In our opinion, it is satisfactory and up to the mark and therefore fulfills the
requirements of BS in Computer Sciences.
Supervisor / Internal Examiner
Sarfraz Ahmad Awan
Supervisor,
Page | 2
Software Projects & Research Section,
Department of Computer Sciences
Virtual University of Pakistan
___________________
(Signature)
External Examiner/Subject Specialist
___________________
(Signature)
Accepted By:
_____________
(For office use)
EXORDIUM
In the name of Allah, the Compassionate, the
Merciful.
Page | 3
Praise be to Allah, Lord of Creation,
The Compassionate, the Merciful,
King of Judgment-day!
You alone we worship, and to You alone we pray for
help,
Guide us to the straight path
The path of those who You have favored,
Not of those who have incurred Your wrath,
Nor of those who have gone astray.
Page | 4
DEDICATION
Dedicated to loving, caring, affectionate Parents,
Brothers, Sister, little Niece and Nephew.
Page | 5
ACKNOWLEDGEMENT
First of all, I am great full to the ALLAH Almighty the
most Merciful and Beneficent who guides us in
darkness and helps I difficulties.
All respect for his prophet (P.B.U.U) whose gracious
favor and blessings enable me to complete this research
successfully.
I regarded it a great honor and privilege to express my
deepest sense of gratitude and appreciation to my
learned worthy and honorable guide Mr. Sarfraz
Ahmad for his great guidance encouragement excellent
attitude and sincere personal involvement through out
the study.
I am also thankful to all those who helped me in
collection of relevant material.
Abid Hussain
Page | 6
PREFACE
This Project Report describes an examination by using
GSM mobiles. By making the examination procedure
automated. We can overcome the many human mistakes
and time consuming method (manually checking).
Any university, college or school with a computerized
education system can adopt this system. There is an expert
part in our system, which uses AI to generate questions.
The system will show result after the examination is
finished and also be able to provide feedback according to
the participant’s demand.
Administrative control of the whole system is provided. A
teacher has control in the question bank and is suppose to
make schedule for quiz.
The document also addresses other issues such as
preventing networking bottlenecks, proper error handling,
security features, client side validations and support for
multiple clients simultaneously. Some of the future
enhancements that could improve the application design
are also addressed.
In early examination systems every work is done by
manually. Which cause the time consuming and many
human errors.
Now by automated examination system prone to error in
examination is less than earlier and very fast work is done
in result announcements.
Page | 7
TABLE OF CONTENTS
CHAPTER NO. 1
GATHERING & ANALYZING INFO...................................................10
1.1 Introduction…………………………………………………...........11
1.2 purpose……………………………………………………………...11
1.3 scope………………………………………………………………...12
1.4 definitions, acronyms and abbreviations…………………………13
1.5 use cases and usage scenarios……………………………………...15
1.5.1 Use Case Diagrams………………………………………………………...15
1.5.2 Usage Scenarios……………………………………………………………16
1.6 supplementary requirements……………………………………..24
1.6.1 Usability……………………………………………………………………24
1.6.2 Reliability…………………………………………………………………..25
1.6.3 Supportability………………………………………………………………25
1.6.4 System Requirements………………………………………………………26
CHAPTER NO. 2
PLANNING THE PROJECT..............................................................27
2.1 Introduction………………………………………………………..28
2.2 Methodology……………………………………………………….35
Page | 8
Available Methodologies………………………………………………….35
Chosen Methodology……………………………………………………...43
Reasons for Chosen Methodology……………………………………….45
Work Plan…………………………………………………………………46
Project Structure………………………………………………………….47
2.3.1 Team Structure……………………………………………………………...47
2.3.2 Project Schedule (Submission Calendar)…………………………………...49
CHAPTER NO. 3
DESIGNING THE PROJECT............................................................50
3.1 Introduction………………………………………………………...51
3.2 purpose……………………………………………………………55
3.3 scope……………………………………………………………….55
definitions, acronyms and abbreviations………………………………56
Architectural Representation (Architecture Diagram)………………58
Dynamic Model: Sequence Diagrams………………………………….59
Object Model/Logical Model: Class Diagram………………………...61
Deployment Model (Deployment Diagram)……………………………62
Database Model (Database Diagram)…………………………………63
Graphical User Interfaces………………………………………………64
Page | 9
CHAPTER NO.4
DEVELOPMENT.............................................................................86
4.1 Development plan (Architecture Diagram)……………………... 87
4.2 Activity Diagram………………………………………………….92
CHAPTER NO.5
DEPLOYMENT...............................................................................93
5.1 Deployment Plan (Deployment Diagram)……………………….94
5.2 Overview ………………………………………………………..95
5.3 Deployment Planning…………………………………………….. .95
5.4 RESOURCES…………………………………………………………………98
5.5 Training…………………………………………………………….99
APPENDIX………………………………………………………………102
Page | 10
CHAPTER 1
Gathering & Analyzing Info
Page | 11
1.1 Introduction
Page | 12
The MobiQuiz system will be an Examination System (SMS-
based examination) for an Educational Institute (University,
College, and School).
This system is designed to reduce the hectic job of assessing
the answers given by candidates manually.
also reduce the scarcity of resources computer systems) that
arise during the processing of existing online examination
system.
In this system the mobiles phone technology will be used to
allow the Students to attend the exam through GSM mobile
(global system for mobile communication) using SMS (Short
messaging services) facility.
The system will also provide the online interface to the student
to attend the examination.
System will allow the faculty member to create and present the
question in the form of MCQs and the students will be able to
answer through the SMS (GSM mobile will be used for this
feature) and online interface.
Responses by the candidates will be checked automatically
and instantly. Being an integrated Online Examination System
it will reduce paper work and scarcity of resources (computer
systems) that arise during the processing of existing online
examination system.
1.2 Purpose:
Mobiquiz fulfills the requirements of the institutes to conduct the
exams online and also using the GSM technology Students can give
exam without the need of going to any physical destination.
Page | 13
Thus the purpose of the Mobiquiz is to provide a system that saves
different resources like the efforts and time of both the institutes and
the students, paper work and scarcity of expensive resources
(computer systems, electricity).
1.3 scope:
This system will be an Examination System (SMS-based
examination) for an Educational Institute (University, College,
and School) .This system will be designed to reduce the
scarcity of resources (computer systems) that arise during the
processing of existing online examination system.
In this system the mobiles phone technology will be used to
allow the Students to attend the exam through GSM mobile
(global system for mobile communication) using SMS (Short
messaging services) facility. The system will also provide the
online interface to the student to attend the examination.
System will allow the faculty member to create and present the
question in the form of MCQs and the students will be able to
answer through the SMS (GSM mobile will be used for this
feature) and online interface.
1.4 Definitions, Acronyms and Abbreviations
GSM stands for Global System for Mobile Communication
Page | 14
SMS stands for Short Message Service
MCQ’s stands for Multiple Choice Questions
DB stands for Database
PHP: Hypertext Preprocessor
HTML: Hypertext Transfer Protocol is a transaction or oriented
client/server protocol between web browser & a Web Server.
Bootstrap: Sleek, intuitive, and powerful front-end framework
for faster and easier web development
CSS: Cascading Style Sheet
MySQL: My Structured Query Language; MySQL is a free of
charge relational database. It is open source software and a
quality database server. MySQL supports most of the ANSI
standard SQL92.
Administrator: Administrator is user of this system that
manages the Faculty, Students, Examination, Results and
Degree Programs.
Faculty: Faculty is a user of this system that manages the
questions and prepares the quizzes.
Student: Student is a user of this system that takes quiz and
solves that quiz.
Application Server: An application server is a provider of
Service for the clients of the application in a computer network
Which is dedicated to running certain software application?
An application server is a component-based product. It resides
In the middle-tier of a server centric architecture. Its
Page | 15
Functionality includes providing middleware services for
security and state maintenance, along with data access and
persistence.
Browser: A web browse, apart from being used in computers
is also increasingly used on other devices as well. It helps to
locate, display and interact with web pages and other
resources on the Internet. A Browser is also used to access
resources on networks other than internet; this includes local
area networks (LAN), home networks, and the same computer
on which the browser is running.
Framework: A frame work can be described as reusable
Software that implements a generic solution to a generalized
problem. It provides facilities which are useful to different
application programs. Framework helps designers to
concentrate their effort in fulfilling the software requirements
rather than working on low level details for providing the
working system.
GUI: A graphical user interface(GUI) provides a way for
humans to interact with computers. It uses windows, icons
and menus and it can be manipulated by a mouse (and to a
little extent by keyboard)
Use Cases and Usage Scenarios
1.5.1 Use Case Diagrams
Page | 16
Page | 17
1.5.2 Usage Scenarios:
Table 1.Login.
Use Case Title Login
Action User select the login form and fill up it
Actor User
Use case Id UC01
Description 1. Enter user name
2. Enter password
3. Click login
4. System login and display welcome screen
Alternative Display login error ”The user name or password incorrect try again”
Pre Conditions Load the login screen
Post Conditions User logged in
Author Mc120202860
Exceptions The user will not be able to access the system resources without
correct username and password and the system will show the
registration form.
Table 2.Management
Use Case Title Management
Action Administrator manage the all users and exams and select the
management option.
Actor Administrator
Page | 18
Use case Id Uc02
Description Select the section of management
1. Add, Edit, Delete, List view, Block/Unblock user management.
2. Add, Edit, Delete, List view, Block/Unblock degree management.
3. Add, Edit, Delete, List view, Block/Unblock course management.
Alternative Display login error ”The user name or password incorrect try again”
Pre Conditions Login as Admin
Post Conditions System alternated.
Author Mc120202860
Exceptions
Table 3.Create Exam.
Use Case Title Create Exam
Action 1) The use case starts when the faculty member wants to create the
question paper for students.
2) The user selects the subject of which exam he/she wants to
create.
3) The user selects the lectures from which exam would be created.
4) The user will conform that the exam is created or not after
setting the question paper.
Actor Faculty Member
Use case ID Uc03
Page | 19
Description 1) go to profile
2) Select create exam
3) Select subject and lectures
4) Enter questions in exam
5) Create new exam
6) Invite students to exam
Alternative If the user does not confirm to create exam to the system, the exam
will not be created.
User cancel action.
Pre Conditions Login as faculty member and plays the role of paper setter.
Post Conditions Exam created.
Author Mc120202860
Exceptions The system will not allow a user to create exam of the other subject
that is not assigned to him/her.
Table 4.Edit Exam.
Use Case Title Edit/create new quiz
Action 1) The use case starts when the user wants to edit and update the
question paper.
2) The user selects the subject of which exam wants to edit.
3) The user selects the lectures from which exam would be created.
4) The user will conform that the exam is updated or not after
setting the question.
Actor Faculty member
Use case Id Uc04
Page | 20
Description 1) go to profile
2) Select create exam
3) Select subject and lectures
4) Edit questions, description , exam title
5) Save exam settings.
Alternative If the user does not confirm to update exam to the system, the exam
will not be updated.
User cancel action.
Pre Conditions Login as faculty member and plays the role of paper setter.
Post Conditions Exam updated successfully.
Author Mc120202860
Exceptions The system will not allow a user to update exam of the other subject
that is not assigned to him/her.
Table 5 Take Exam.
Use Case Title Take Exam
Action 1) The use case starts when the user wants to take or attempt exam.
2) The user selects the subject of which exam he/she wants to take.
Summary The student can attend the exam which he/she has enrolled
Actor Student
Use case Id Uc05
Description 1. Login to mobiquiz
Page | 21
2. Authentication of the user
3. Take exam in which student is enrolled
Alternative If the user do not want to take exam he/she can cancel the exam.
Pre Conditions Login as user and plays the role of Student and select the take exam
option. User should have a subject enrolled.
Post Conditions Exam taken
Author Mc120202860
Exceptions If the you student is not enrolled in a subject and has not a valid
username and password, he can not take or attempt exam paper.
Table 6 Submit Exam
Use Case Title Submit Exam
Action 1. The use case starts when the user wants to submit exam after
attempting it.
2. Student selects the submit button or save and also through the
send button from mobile phone.
Summary The student can submit he exam through mobile and web based
interface
Actor Student
Use case Id Uc06
Description 1. Go to submit
2. Make sure you have attempt the complete paper
Page | 22
3. Select yes to make sure
From mobile
1. Send exam
2. Exam successfully submitted
Alternative If the user wants to edit exam he/she can select No option.
Pre Conditions Login as user and plays the role of Student.
Post Conditions Exam successfully submitted
Author Mc120202860
Exceptions
Table 7 View grade book.
Use Case Title View grade book
Action 1. The use case starts when the Student wants to view his/her exam
result or grade book.
2. Student selects the grade book link to view the grades.
Summary The student can view the grade book through web based interface.
Actor Student
Use case Id UC7
Description 1. Login
2. Go to profile
3. Select the grade book
4. Select midterm grade book link to view midterm grades
Alternative Display your MobiQuiz Status is blocked
Pre Conditions Login as user and plays the role of Student and select the grade
book.
Post Conditions Result viewed/checked
Author Mc120202860
Page | 23
Exceptions
1.6 Supplementary Requirements
1.6.1 Usability
System load-time is reasonable at all devices. Font
size/spacing is easy to read. Main navigation is easily
identifiable and labels are clear & concise
The web server used should provide services like session
management to maintain
Sessions in the application.
Links are consistent & easy to identify. The user is facilitated
to view and make entries in the forms. Validations are
provided in each field to avoid inconsistent or invalid entry in
the databases. Some forms consists hyper links, which
provides further details. Reports screen contains text boxes
and drop down lists, so that reports can be produced.
Interface of the Mobiquiz is user friendly and designed using
bootstrap.
Page | 24
Bootstrap is a free collection of tools for creating 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. It is the most popular project on GitHub and has
been used by NASA and MSNBC among others.
Features of bootstrap:
Basic information of compatibility of websites or applications
is available for all devices and browsers. There is a concept of
partial compatibility that makes the basic information of a
website available for all devices and browsers. For example,
the properties introduced in CSS3 for rounded corners,
gradients and shadows are used by Bootstrap despite lack of
support by older web browsers.
1.6.2 Reliability
System will allow only valid users to access their accounts.
There are three types of users of this system namely
Administrator, Student and faculty member. The security is
based upon Mobile Number and password for the student.
1.6.3 Supportability
LEVEL 1 SUPPORT
Answering questions on execution or usage through a call
center service; this is typically done by the customer.
LEVEL 2 SUPPORT
Restoring service and fixing production problems with the
application. This may include minor modification to scripts or
to configuration parameters.
LEVEL 3 SUPPORT
Page | 25
Focuses on corrective modification. Code changes to the
application are released either as emergency or planned
releases.
It is very important for this system suppose now this system is
dealing with only MCQ’s in future it can be extended to other
type of question answer then the technical support will be
given to up this system. By extending it to true false question
in MobiQuiz the amount of Questions can increase in future.
So the maintainability should be high.
1.6.4 System Requirements
Operating System (Windows)
Web Browser
AppServ Open Project - 2.6.0 for Windows
PHP Version 6.0.0-dev
Apache Web Server Version 2.2.8
MySQL Database Version 6.0.4-alpha
PhpMyAdmin Database Manager Version 2.10.3
Hardware Requirements:
Server
The minimum hardware as recommended by all of the
software required on server side say web server, operating
system and development software
• Intel motherboard and processor (High End)
• At least 2 GB RAM
• GSM Modem and Subscriber identity module with SMS
subscription
Page | 26
• High capacity hard drive
• Network interface
Client
The minimum hardware as recommended by all of the
software required on client side say web browser, operating
system Intel motherboard and processor
• Minimum hardware depending on the operating system
used
• 80 GB hard disk
• True color visual display unit
• User peripherals for better interaction
• Graphic card
CHAPTER 2
Planning the Project
Page | 27
2.1 Introduction of the Planning Phase
Page | 28
Project planning is a discipline for stating how to complete a project
within a certain timeframe, usually with defined stages, and with
designated resources. One view of project planning divides the activity
into:
• Setting objectives (these should be measurable)
• Identifying deliverables
• Planning the schedule
• Making supporting plans
Supporting plans may include those related to: human resources,
communication methods, and risk management.
2.1.1 Objective of the MobiQuiz:
This system will be an Examination System (SMS-based examination) for
an Educational Institute (University, College, and School) .This system
will be designed to reduce the scarcity of resources (computer systems)
that arise during the processing of existing online examination system.
In this system the mobiles phone technology will be used to allow the
Students to attend the exam through GSM mobile (global system for
mobile communication) using SMS (Short messaging services) facility.
The system will also provide the online interface to the student to attend
the examination.
System will allow the faculty member to create and present the question
in the form of MCQs and the students will be able to answer through the
SMS (GSM mobile will be used for this feature) and online interface.
The questions for exam will randomly generated so that there is very less
chance to repeat the question in the question paper. It will happen only if
there is less amount of question in database.
1.1.1 Limitations:
• On-line Exam system is designed for Educational Institutes (like
schools, universities, training centers).
• Student can send request to start paper using SMS. (GSM mobile
will be used for this feature.)
• Allow students to see or display his answers after the exam is
finish.
• The type of questions is only multiple choice or true and false.
Page | 29
2.1.2 Deliverables of the system:
1.1.2 Creating data bank
2 Question can be categorized according to lectures, subjects,
types etc.
3 Exam can be created random basis per student.
4 System can automatically add the marks allocated in each
question to determine the total mark for the exam.
4.1.1 Control Mechanism in the Exam
1. Time limit can be set for the exam.
2. The sequence of question can be randomized.
3. Student can navigate within a exam (i.e. backward & forward) can
be set navigation tool/button can be selected for a exam & these
button can be switched.
4. Student can be allowed to exit the exam before completing the
entire question.
5. A specific date for a exam to be active can be set.
4.1.2Question Types
1. Multiple Choices: This allows the user to select one correct answer.
2. Free Format: This type of question will used to take a written exam
of the student which is very often used by educational institute to
conduct an exam.
4.1.3Other Essential Requirements
1. Negative marking should be possible in all the question types.
2. Remaining time can be displayed.
3. Free format question can be saved in Data Bank.
Page | 30
4. A paper for written exam can be generated with the help system
Data Bank.
5. Answer can be saved at real time.
4.1.4
4.1.5Security
1. Only registered student are able to access the exam.
2. Exam can be made available on special dates.
4.1.6Reporting
The following results on the exam performance can be obtained.
1. Average time used by the student
2. Time taken for each individual student to complete the test.
2.1.3 Supporting Plans:
This section deals with plans you should create as part of the planning
process.
These can be included directly in the plan.
1.3 Human Resource Plan:
Staffing Plan
The purpose of the staffing plan is to make certain the project has
sufficient staff with the right skills and experience to ensure a successful
project completion.
Page | 31
Communication Methods:
Weekly or monthly progress report, describing how the projectis
performing, milestones achieved and work planned for the next period
will be send to the customer.
Risk Management Plan:
Risk management is an important part of project management. Although
often over looked, it is important to identify as many risks to your project
as possible, and be prepared if something bad happens.
Here are some examples of common project risks:
1. Time and cost estimates too optimistic.
2. Customer review and feedback cycle too slow.
3. Unexpected budget cuts.
Page | 32
Job Title Description
1 Project Manager • To manage all processes in the project
2
SW Designer
• To design the models and diagrams
that helps the programmer in
implementation phase.
3 Two Testers • One from outside the team and the
other from the inside the project team.
4
Two
programmers
• Professional in ASP.NET,PHP,JAVA etc
and SQL
• Well versued in web designing and
database designing.
• To programming the processes of the
project.
5 SW Analyst • To analyze the requirements of On-
Line Exam System.
6
Writer
• Collects drafts from each member.
• Rewrite and reformate the documents
come from each member.
• Have good print skills.
• Have a good skill to correct grammars
of statements.
4. Unclear roles and responsibilities.
5. Stakeholder input is not sought, or their needs are not properly
understood.
6. Stakeholders changing requirements after the project has started.
7. Stakeholders adding new requirements after the project has
started.
8. Poor communication resulting in misunderstandings, quality
problems and rework.
9. Lack of resource commitment.
Risks can be tracked using a simple risk log. Add each risk you have
identified to
your risk log; write down what you will do in the event it occurs, and
what you will
do to prevent it from occurring. Review your risk log on a regular basis,
adding new
risks as they occur during the life of the project. Remember, when risks
are ignored
they don't go away.
Risk analysis and risk planning:
Project Risks:
Risk Probabilit
y
Effects Risk planning
strategy
The experience
staff in the
team leave the
project before
it is finish, or
someone was
ill
low serious Use more than one
staff for each
section, which
might minimize
this risk. Also,
manager tries to
increase salary for
him.
The
methodology to
solve the
problem can't
work in a
proper
high serious Must be study
more than one
methodology to
minimize this risk.
Page | 33
manner.
Budget does
not enough or
there is no
budget.
low catastrophic Put a condition in
the contract if
there any more
expenses, the
funded side must
be pay it. To avoid
this risk.
HW
requirement
can't come in
the time.
moderate serious See if there is any
more time to delay
the project or not.
If there is no more
time work by the
team computers,
to minimize this
risk.
Product Risks:
Risk Probabilit
y
Effects Risk planning
strategy
Packages and
Development
tools does not
enough.
high serious Put a condition in
the contract to
increase the time
of project delivery
depends on the
problem occur. To
avoid this risk.
Can't found the
suitable
components.
high tolerable Programmer must
have professional
programming skills
to write a new
code, which
minimize this risk.
Business Risks:
Risk Probabilit
y
Effects Risk planning
strategy
Can't found the
suitable place
moderate tolerable Monitoring the
work by E-mail
Page | 34
for meeting the
team.
every day. To avoid
this risk.
Damage the
electricity
generator.
high serious There is a spare
generator to avoid
this risk.
Marketing the
product
system.
low catastrophic Distribution of
advertisements,
which minimize
this risk.
4.2 Monitoring and reporting mechanisms:
The manager should monitor all activities in the project via minimize,
avoid the risks or via management control as follows:
1.Put a table for all SW requirements and print in percentage how
much finish.
2.Using software programming to monitor programmer's progress.
3.Using spyware profile to monitor the team.
4.Using software that calculate how many lines written per hour.
5.monitoring the risks as follows:
a.Change the probability and effect.
b.Delete risks or add a new one depends on the working on
project.
Advantages of Planning Project
 Finish the project on time.
 Continuous, uninterrupted work flow with no delays.
 Cost Control.
 Reduced amount of re-work, fewer changes.
 Increased knowledge of project status via timely reports to
management.
 Knowledge of scheduled times for key project parts.
 Stability of people, defined responsibility and authority.
 Clear understanding of who does what, when and for how much?
 Integration of all work to insure a quality project for the owner.
Page | 35
 You run the project instead of the project running you.
 Everyone is clear on what the milestone are and when.
 Everyone is aware of the dependencies and what other work is
happening when.
 You are able to clearly track progress.
 You are unlikely to miss something major by having a plan.
2. Methodologies
Every software development methodology framework acts as a basis for
applying specific approaches to develop and maintain software. Several
software development approaches have been used since the beginning of
information technology. Existing methodologies which are commonly
used in IT industry are listed below.
2.1 Existing Methodologies
Each methodology having its strengths and weaknesses and suitable
in different situations and project types. The list of models includes
the following:
• Waterfall model
• Incremental model
• Rapid prototyping model
• Extreme programming
• Spiral model
Waterfall Model
The first published model of the software development process was derived from other
engineering processes. Because of the cascade from one phase to another, this model is
known as the waterfall model. This model is also known as linear sequential model. This
model is depicted in the following diagram.
Page | 36
The principal stages of the model map directly onto fundamental development activities.
It suggests a systematic, sequential approach to software development that begins at the
system level and progresses through the analysis, design, coding, testing, and
maintenance.
In the literature, people have identified from 5 to 8 stages of software development.
The five stages above are as follows:
1. Requirement Analysis and Definition: What - 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.
2. System and Software Design: How – The system design process partitions the
requirements to either hardware of software systems. It establishes and overall
system architecture. Software design involves fundamental system abstractions
and their relationships.
3. Implementation and Unit Testing: - How – During this stage the software design
is realized as a set of programs or program units. Unit testing involves verifying
that each unit meets its specifications.
4. Integration and system testing: The individual program unit or programs are
integrated and tested as a complete system to ensure that the software
requirements have been met. After testing, the software system is delivered to the
customer.
5. Operation and Maintenance: Normally this is the longest phase of the software
life cycle. The system is installed and put into practical use. Maintenance involves
correcting errors which were not discovered in earlier stages of the life-cycle,
improving the implementation of system units and enhancing the system’s
services as new requirements are discovered.
Page | 37
In principle, the result of each phase is one or more documents which are approved. No
phase is complete until the documentation for that phase has been completed and
products of that phase have been approved. The following phase should not start until the
previous phase has finished.
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.
Because of the costs of producing and approving documents, iterations are costly and
require significant rework.
The Waterfall Model is a documentation-driven model. It therefore generates complete
and comprehensive documentation and hence makes the maintenance task much easier. It
however suffers from the fact that the client feedback is received when the product is
finally delivered and hence any errors in the requirement specification are not discovered
until the product is sent to the client after completion. This therefore has major time and
cost related consequences.
4.3 Incremental Models
As discussed above, 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.
Page | 38
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 can be incorporated at a much lesser cost. It is therefore less
traumatic as compared to the waterfall 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.
Page | 39
In a more risky version, once the user requirements have been elicited, the specifications
of the first build are drawn up. 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.
Rapid Prototyping Model
The Rapid Prototyping Model is used to overcome issues related to understanding and
capturing of user requirements. In this model a mock-up application is created “rapidly”
to solicit feedback from the user. Once the user requirements are captured in the
prototype to the satisfaction of the user, a proper requirement specification document is
developed and the product is developed from scratch.
An essential aspect of rapid prototype is embedded in the word “rapid”. The developer
should endeavor to construct the prototype as quickly as possible to speedup the software
development process. It must always be kept in mind that the sole purpose of the rapid
prototype is to capture the client’s needs; once this has been determined, the rapid
prototype is effectively discarded. For this reason, the internal structure of the rapid
prototype is not relevant.
Page | 40
Implementation,
integration
Deliver to clientDesignSpecification
Implementation,
integration
Deliver to clientDesignSpecification
Implementation,
integration
Deliver to clientDesignSpecification
Build 1
Implementation,
integration
Deliver to clientDesignSpecification
Build 2
Build 3
Build n
Specification team
Design team
Implementation,
integration team
Spiral Model
This model was developed by Barry Boehm. 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.
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.
Page | 41
Risk Analysis
Verify
Rapid Prototype
Specification
Design
Implementation
A full version of the Spiral Model is shown below:
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.
Page | 42
eXtreme Programming
It is a somewhat controversial new approach. In this approach user requirements are
captured through stories which are the scenarios presenting the features needed by the
client? Estimate for duration and cost of each story is then carried out. Stories for the next
build are selected. Then each build is divided into tasks. Test cases for task are drawn up
first before and development and continuous testing is performed throughout the
development process.
Page | 43
Plan Next
Phase
Determine
objectives,
alternatives,
constraints
Identify and
resolve risks
Develop
and verify
next-level
product
Architectural
spike
User stories
Release
Planning
Spike
Iteration Acceptance
test
Small release
One very important feature of eXtreme programming is the concept of pair programming.
In this, a team of two developers develop the software, working in team as a pair to the
extent that they even share a single computer.
In eXtereme Programming model, computers are put in center of large room lined with
cubicles and client representative is always present. One very important restriction
imposed in the model is that no team is allowed to work overtime for 2 successive weeks.
XP has had some successes. It is good when requirements are vague or changing and the
overall scope of the project is limited. It is however too soon to evaluate XP.
2.2 Adopted Methodology
The adopted methodology for this project is VU Process Model which is a combination
of waterfall and spiral models.
5 Vu process model
Vu process model is proposed software engineering process by virtual university of
Pakistan which is the combination of waterfall model and spiral model in software
development. Basically, a process model explains the simplified description of software
processes in iteration to avoid maximum risk. There are many existing methodologies in
software engineering processes such as waterfall model, spiral model, building and fix
model , rapid prototyping model, incremental model, fountain model. These
methodologies helps to successful delivery of product, however two methodologies can
also be combined like VU process model combines waterfall and spiral model.
5.1 Waterfall model:
Page | 44
In this approach, we see that processes flows in a downward fashion from requirement
phase to accepting phase which meets to client satisfaction. Requirements phase collects
software specifications, functional and non functional requirements in SRS (software
requirement specification) document of VU final project. Analysis phase analyzes cases
and work plan on the basis of software requirement phase that covers use case scenarios
up to methodology and work plan. Design phase goes through with flow charts,
algorithms and GUI on the basis of analysis phase. Coding phase generates the actual
logic of the application and provide functionality to the system. The system logic is
tested if it is working as it is as in designing phase. Finally, client acceptance phase verify
if application meets to the client’s requirement.
5.2 Spiral model:
Spiral model overcomes the cons of waterfall model by adding risk analysis to its phase
and these phases are iteratively followed by one after another in order to avoid maximum
risk during software development. By Iteratively followed means that task move through
four processes many times until quality ensured.
Planning phase covers scope, requirements and functionality of the system. Second phase
Risk analysis is most important phase of spiral model which defines cost-effective
strategies in project development. Risk at any stage indicates that requirements must be
reviewed to find out solution for the problem by given data in the previous phase before
proceed to the next. Development phase covers the designing, coding and testing and
finally application is delivered to client for further evaluation. In case of any change it is
required to iterate the application from all four phases again. That’s why it is called spiral
model.
Page | 45
5.3 VU Process Model (combination of waterfall and spiral
model):
2.3 Reasons for choosing the Methodology
Combination of both waterfall and spiral model is called hybrid approach of system
development that maximize the quality of system and minimize the disadvantages and
risk. VU process model has four phases which further divides the waterfall processes.
These processes are in iteration until system meets to client requirement.
Page | 46
3. Work Plan (Use MS Project to create Schedule/Work Plan)
Page | 47
Project Structure
2.3.1 Team Structure
Page | 48
2.3.2 Project Schedule (Submission Calendar)
The project schedule is one of the most important parts of the
project development plan.
The plan includes:
• Scheduling of development activities and
• Scheduling of project resources, particularly people
The project development plan describes in detail:
• how the project manager plans to develop the project
• what resources will be required and
• how these resources will be applied
No matter how well the project schedule is prepared, that
schedule is useless unless it is adhered to. It is the project
Page | 49
Job Title Description
1 Project Manager To manage all processes in the project
2
SW Designer
To design the models and diagrams that
helps the programmer in implementation
phase.
3
Testers
One from outside the team and the
other from the inside the project team.
4
programmer
Professional in ASP.NET,PHP,JAVA etc
and SQL
Well versed in web designing and
database designing.
To programming the processes of the
project.
5
SW Analyst
To analyze the requirements of On-Line
Exam System.
manager's responsibility to withstand pressure and to assure
that the project is developed in an orderly fashion, according
to the schedule. Whenever circumstances change, the project
schedule should then be updated to reflect the new situation.
A schedule is a list of:
– Activities and
– Anticipated time of implementation of these activities
There are many ways of representing a schedule:
– Lists of activities,
– Diagrams,
– Graphs etc.
The most common methods of schedule representation are :
– precedence network diagrams (such as PERT),
– Gantt charts and
– lists of milestones
The goal of a software project schedule is to determine the
duration of the software project and the phases with in the
project. A software project schedule enables you to distribute the
estimated effort to be spent in performing the critical activities.
Gantt chart:
The Submission Calendar for this project is hereunder:
Page | 50
Page | 51
CHAPTER 3
Designing the Project
Page | 52
3.1 Introduction (of analysis and design phase)
INTRODUCTION:
Systems are created to solve problems. One can think of the systems
approach as an organized way of dealing with a problem. In this dynamic
world, the subject System Analysis and Design (SAD) mainly deals with the
software development activities.
System Analysis:
Systems analysis is a process of collecting factual data, understand the
processes involved, identifying problems and recommending feasible
suggestions for improving the system functioning. This involves studying
the business processes, gathering operational data, understand the
information flow, finding out bottlenecks and evolving solutions for
overcoming the weaknesses of the system so as to achieve the organizational
goals. System Analysis also includes sub-dividing of complex process
involving the entire system, identification of data store and manual
processes.
The major objectives of systems analysis are to find answers for each
business process: What is being done, How is it being done, who is doing it,
When is he doing it, Why is it being done and How can it be improved? It is
Page | 53
more of a thinking process and involves the creative skills of the System
Analyst. It attempts to give birth to a new efficient system that satisfies the
current needs of the user and has scope for future growth within the
organizational constraints. The result of this process is a logical system
design. Systems analysis is an iterative process that continues until a
preferred and acceptable solution emerges.
System analysis is the way of studying a system with an eye on solving its
problem using computer. It is the most essential part of the development of a
project of a system analysis. System analysis consists of system element,
process and technology.
To analyze a system, has to study the systems in details. The analyst has to
understand the functioning and concept of the system in detail, before design
the appropriate computer based system that will meet all the requirements of
the existing system. The system analyst has to carry out a customary
approach to use the computer for problem solving.
System analysis includes the following basic concepts:
1.Preliminary investigation
2.Requirements specification
3.Feasibility study
4.Detailed investigation
5.Drawing up of strategies
6.Design and coding
7.Testing and training
8.Implementation
The above steps constitute the logical framework for the system analysis.
After the preliminary investigation and feasibility study, the scope of the
Page | 54
defined and comparable items are set forth and hence detailed investigation
is executed. This allows the system analyst to comprehend the full scope of
the project. Soon after the implementation of the newly developed system,
followed by the training of the users, the system analysis is included.
System Design:
Based on the user requirements and the detailed analysis of the existing
system, the new system must be designed. This is the phase of system
designing. It is the most crucial phase in the developments of a system. The
logical system design arrived at as a result of systems analysis is converted
into physical system design. Normally, the design proceeds in two stages:
• Preliminary or General Design
• Structured or Detailed Design
Preliminary or General Design:
In the preliminary or general de-sign, the features of the new system are
specified. The costs of implementing these features and the benefits to be
derived are estimated. If the project is still considered to be feasible, we
move to the de-tailed design stage.
Structured or Detailed Design:
Page | 55
In the detailed design stage, computer oriented work begins in earnest. At
this stage, the design of the system becomes more structured. Structure
design is a blue print of a computer system solution to a given problem
having the same components and inter-relationships among the same
components as the original problem. Input, output, databases, forms,
codification schemes and processing specifications are drawn up in de-tail.
In the design stage, the programming language and the hard-ware and
software platform in which the new system will run are also decided.
There are several tools and techniques used for describing the sys-tem
design of the system.
These tools and techniques are:
• Flowchart
• Data flow diagram (DFD)
• Data dictionary
• Structured English
• Decision table
• Decision tree
The system design involves:
i. Defining precisely the required system output.
ii. Determining the data requirement for producing the output.
iii. Determining the medium and format of files and databases.
iv. Devising processing methods and use of software to produce output.
v. Determine the methods of data capture and data input.
Page | 56
vi. Designing Input forms.
vii. Designing Codification Schemes.
viii. Detailed manual procedures.
ix. Documenting the Design.
3.2 Purpose:
This system will be an Examination System (SMS-based
examination) for an Educational Institute (University,
College, and School) .This system will be designed to reduce
the scarcity of resources (computer systems) that arise
during the processing of existing online examination
system.
In this system the mobiles phone technology will be used to
allow the Students to attend the exam through GSM mobile
(global system for mobile communication) using SMS (Short
messaging services) facility. The system will also provide the
online interface to the student to attend the examination.
System will allow the faculty member to create and present
the question in the form of MCQs and the students will be
able to answer through the SMS (GSM mobile will be used
for this feature) and online interface.
3.3 Scope of Project:
This system will be an Examination System (SMS-based examination) for
an Educational Institute (University, College, and School) .This system will
be designed to reduce the scarcity of resources (computer systems) that arise
during the processing of existing online examination system.
Page | 57
In this system the mobiles phone technology will be used to allow the
Students to attend the exam through GSM mobile (global system for mobile
communication) using SMS (Short messaging services) facility. The system
will also provide the online interface to the student to attend the
examination.
System will allow the faculty member to create and present the question in
the form of MCQs and the students will be able to answer through the SMS
(GSM mobile will be used for this feature) and online interface.
Definitions, Acronyms and Abbreviations
GSM stands for Global System for Mobile Communication
SMS stands for Short Message Service
MCQ’s stands for Multiple Choice Questions
DB stands for Database
PHP: Hypertext Preprocessor
HTML: Hyper Text Markup Language
Bootstrap: Sleek, intuitive, and powerful front-end framework
for faster and easier web development
CSS: Cascading Style Sheet
MySQL: My Structured Query Language; MySQL is a free of
charge relational database. It is open source software and a
quality database server. MySQL supports most of the ANSI
standard SQL92.
Administrator: Administrator is user of this system that
manages the Faculty, Students, Examination, Results and
Degree Programs.
Page | 58
Faculty: Faculty is a user of this system that manages the
questions and prepares the quizzes.
Student: Student is a user of this system that takes quiz and
solves that quiz.
Application Server: An application server is a provider of
Service for the clients of the application in a computer network
Which is dedicated to running certain software application?
An application server is a component-based product. It resides
In the middle-tier of a server centric architecture. Its
Functionality includes providing middleware services for
security and state maintenance, along with data access and
persistence.
Browser: A web browse, apart from being used in computers
is also increasingly used on other devices as well. It helps to
locate, display and interact with web pages and other
resources on the Internet. A Browser is also used to access
resources on networks other than internet; this includes local
area networks (LAN), home networks, and the same computer
on which the browser is running.
Framework: A frame work can be described as reusable
Software that implements a generic solution to a generalized
problem. It provides facilities which are useful to different
application programs. Framework helps designers to
concentrate their effort in fulfilling the software requirements
rather than working on low level details for providing the
working system.
GUI: A graphical user interface(GUI) provides a way for
humans to interact with computers. It uses windows, icons
and menus and it can be manipulated by a mouse (and to a
little extent by keyboard)
Page | 59
Architecture Design Diagram
Student/Teacher’s Interface
Page | 60
Mobile GatewayMobile Gateway
MobiQuiz
Database
MobiQuiz
Database
ASP.NET/JSP/PHP /C# Engine
MobiQuizMobiQuiz
LoggingLogging
Role checkingRole checking Form & Menu ManagerForm & Menu Manager Data ValidationData Validation
Security ManagerSecurity Manager Data Import & ExportData Import & Export
Transaction Management for MobiQuiz DatabaseTransaction Management for MobiQuiz Database
ODBC/JDBC/DAOODBC/JDBC/DAO
Sequence Diagrams (To be developed using Rational Rose)
Page | 61
Login:
Page | 62
Page | 63
Page | 64
Class Diagram
Page | 65
1….*
0….*
1….*
1….*
1
1
1….*
1
1….*
1
1….*
1….*
Faculty
showTeacherInfo() :
void
#perpareExam()
#declareResult()
facId:int
fName: varchar
fQual: varchar
fSal, :int
rank: varchar
Student
+showStudentInfo() :
void
+Register()
+answerQuiz
-stId:int
-stName: varchar
- stFName: varchar
- stAdres: varchar
-stPhone:int
-prName: varchar
-curSem,:small int
-cgpa:int
Administrator
+showStudentInfo
() : void
- Admin_ID:int
- F_name : varchar
- l_name : varchar
Question
+getquestionID().int
+setquestionID().int
+getQuestion().string
+setQuetionD().string
+getchoices().string
+setchoices().string
+getcorrectchoice()
+setcorrectchoice()
-questionID:int
-quistion: char
-choices: char
-correctchoice:char
User
+showStudentInfo() :
void
-username:varchar
- password: varchar
-PhoneNo: int
Result
+getStudentID()
+setStuentID()
+getExamID()
+setExamID()
+calculateCgpa()
-StudentID:int
-ExamID:int
-Cgpa:int
-phonNo: varchar
SMS
+getStudentID().int
+getPoneNo().int
+sendResutls().string
- TextMessage:stringCourses
showAllQuizes(): string
showGradeSheet(): string
-crCode:int
-crName: varchar
- crCredits: varchar
-prName: varchar
Quiz
+getquizID():int
+setquizID():int
+getquizNameID():int
+setquizName():varchar
+getTimerPerQuiz().dat
etime
+set TimerPerQuiz()
+getTimerPerQuestion(
)
+setTimerPerQuestion(
)
-quizID:int
-quizName: varchar
timePerQuestion:dateti
-timePerQuiz:datetime
Deployment Model
Database Design
Page | 66
Interface Design
Page | 67
Homepage
Login:
Interface for login to MobiQuiz System is hereunder.
Page | 68
Admin controls:
Page | 69
Page | 70
Faculty management:
Page | 71
Adding new faculty members:
Page | 72
Student management:
Page | 73
Page | 74
Adding new students:
Page | 75
Course management:
Page | 76
Adding new course:
Page | 77
Page | 78
Assigning courses to faculty:
Page | 79
Semester detail:
Page | 80
Adding new semester:
Page | 81
Page | 82
Degree program management:
Page | 83
Adding new degree programs:
Page | 84
Registration for exam
Page | 85
Page | 86
User management
Page | 87
List of Assigned courses to faculty:
Page | 88
Page | 89
Creating exam questions:
Page | 90
Student panel
Page | 91
Results in student panel
Page | 92
Page | 93
Login Page for Exams
Page | 94
Exam Page
Page | 95
CHAPTER 4
Development
Page | 96
Page | 97
Mobile GatewayMobile Gateway
MobiQuiz
Database
MobiQuiz
Database
ASP.NET/JSP/PHP /C# Engine
MobiQuizMobiQuiz
LoggingLogging
Role checkingRole checking Form & Menu ManagerForm & Menu Manager Data ValidationData Validation
Security ManagerSecurity Manager Data Import & ExportData Import & Export
Transaction Management for MobiQuiz DatabaseTransaction Management for MobiQuiz Database
ODBC/JDBC/DAOODBC/JDBC/DAO
1. Activity Diagram
User Login Activity Diagram
Page | 98
Enter Username & Password
Invalid Username & Password
Valid
Exam Creation Activity Diagram
Page | 99
Submit Username & Password
Chec
k
validi
ty
Redirect to Welcome Screen
Login
Select Subject & lecture
Create Exam Edit Exam
Modify Quiz/add
Add more quiz
Done adding exam
Solve Exam Activity Diagram
Until timeout
Page | 100
Set title
Add Quiz
Add
ed
Put Correct Ans
Add Choices
Login
Take Exam/attend exam
Answer Quiz/Solve
Submit Exam
Exam Mark/ Result Activity Diagram
Page | 101
Faculty View Exam
View Solved Exam
Mark Exam
Declare Results
Registration Activity Diagram
Page | 102
Open Registration form
Enter User detail
Submit Form
CHAPTER 4
Development
Page | 103
Deployment Model
Page | 104
1. Overview
Under this Deployment Plan of MobiQuiz we will provide
necessary information about MobiQuiz as a comprehensive
online examination system that allows you to create exam and
conduct web based and also sms based examination.
It contains the planning, resources, implementation,
installation and training plan will be fully presented with
equipped information that is relevant to the entire deployment
plan.
2. Deployment Planning
The following are the activities performed in deploying the
product to the customer.
• Coding- Process whereby the physical design
specifications created by system developers are turned
into working computer code by the programming team .
• Testing- Begin as coding for each module is completed.
1. Software Testing : Check each module’s proper
operation
Page | 105
• Documentation:
• System documentation
 Detailed information about a system’s design
specifications, its internal workings, and its
functionality
 Internal (part of the program source
code)
 External (all diagramming techniques such as
data flow diagrams and entity relationship
diagrams)
• User documentation
 Manual containing information about how
the application system works and how to use
it.
 Quick reference guide, user’s guide, release
description (for a new version), system’s
administrator’s guide, index, help, etc.
• User training
 Group presentations
 Web-based tutorial (self-paced)
 Class-integrated
Page | 106
• Frequency of training
 Initial (new system)
 Subsequent training
 System update
 System migration (new training)
• Support
 Answer user questions about system
 Assist with wide range of computer needs and
system access
 Provided through a help desk and online
 Technical support
• Maintenance
o Environmental care
 Endpoints of LAN (e.g., cabling) to be placed in
a secure wiring closet
 Safety for staff and users
 Hardware safety
o System backup
 Back up the files daily and weekly
 Make more than one backup copy
 Keep one backup copy outside of the agency
for security purposes
 Make sure to have UPS device
Page | 107
• System security
• Install firewalls to protect the system/network from
breaching into by computer hackers
• Install virus protection software
• Install locking devices to prevent theft of hardware
• Have a security system to protect theft of facilities and
materials
• Database Maintenance
 Cataloging database
 Other databases, as applicable
3. Resources
3.1 Facilities
• The facilities required to test and deploy the
software are the following:
• USB Data Cable that connects the SMS server to
GSM Modem (for the transmission of data from PC
to mobile phone), to send data directly to the
mobile phone.
Page | 108
3.2 Hardware
• Computer system
• Gsm enabled mobile phone
• A Modem with USB Cable for the transmission of
data from PC to mobile phone.
3.3 Support Documentation:
• We will provide a user manual,
• quick reference guide,
• and online assistance
4. Training :
The instructor will show how the software works to the end-
users which are: the faculty members and the students.
The programmer and developer will conduct two separate
training seminars, one for the faculty members and the other
one is for the student.
First seminar for Faculty members:
This will be the first seminar to conduct because they are the
one who will use the website. The instructor will teach them
how to navigate on the website, how to check assigned courses
Page | 109
to them, how to add questions and quiz for exam creation and
how to view submitted exam and mark the exam.
Training for the students:
The second training seminar is for the students. The
instructor will teach them how to navigate in the website and
how to interact with exam system with their mobiles. The
facilitator and support personnel must help in the training of
the students and must be knowledge on how to navigate the
site on different models of the mobile phones.
Page | 110
REFERENCES
en.wikipedia.org
www.academia.edu
www.slideshare.net
www.pmi.org
www.uml.org
https://www.publicengagement.ac.uk
www.projecttimes.com/articles/10-steps-to-creating-a-
project-plan.html
CS504 Software Engineering – I
CS605 Software Engineering – II
CS403 Database Management System
CS614 SOFTWARE PROJECT MANAGEMENT
Page | 111
APPENDIX
A.1 Introduction
A.1.1. Purpose of the Document
The purpose of this Software Requirements Specification (SRS)
document is to give an overview of the requirements for Mobi
Quiz. The SRS will define how the final product will be
envisioned and the characteristics or functionality that is
desired but not absolutely necessary
1.3 Scope of Project:
This system will be an Examination System (SMS-based
examination) for an Educational Institute (University, College,
and School) .This system will be designed to reduce the
scarcity of resources (computer systems) that arise during the
processing of existing online examination system.
In this system the mobiles phone technology will be used to
allow the Students to attend the exam through GSM mobile
(global system for mobile communication) using SMS (Short
messaging services) facility. The system will also provide the
online interface to the student to attend the examination.
System will allow the faculty member to create and present the
question in the form of MCQs and the students will be able to
answer through the SMS (GSM mobile will be used for this
feature) and online interface.
Page | 112
Definitions, Acronyms and Abbreviations
GSM stands for Global System for Mobile Communication
SMS stands for Short Message Service
MCQ’s stands for Multiple Choice Questions
DB stands for Database
PHP: Hypertext Preprocessor
HTML: Hyper Text Markup Language
Bootstrap: Sleek, intuitive, and powerful front-end framework
for faster and easier web development
CSS: Cascading Style Sheet
MySQL: My Structured Query Language; MySQL is a free of
charge relational database. It is open source software and a
quality database server. MySQL supports most of the ANSI
standard SQL92.
Administrator: Administrator is user of this system that
manages the Faculty, Students, Examination, Results and
Degree Programs.
Faculty: Faculty is a user of this system that manages the
questions and prepares the quizzes.
Student: Student is a user of this system that takes quiz and
solves that quiz.
Page | 113
Application Server: An application server is a provider of
Service for the clients of the application in a computer network
Which is dedicated to running certain software application?
An application server is a component-based product. It resides
In the middle-tier of a server centric architecture. Its
Functionality includes providing middleware services for
security and state maintenance, along with data access and
persistence.
Browser: A web browse, apart from being used in computers
is also increasingly used on other devices as well. It helps to
locate, display and interact with web pages and other
resources on the Internet. A Browser is also used to access
resources on networks other than internet; this includes local
area networks (LAN), home networks, and the same computer
on which the browser is running.
Framework: A frame work can be described as reusable
Software that implements a generic solution to a generalized
problem. It provides facilities which are useful to different
application programs. Framework helps designers to
concentrate their effort in fulfilling the software requirements
rather than working on low level details for providing the
working system.
JavaScript: JavaScript equips web developers to turn static
HTML pages into interactive applications. JavaScript can
control every aspect of a Web page, including the contents,
forms and design. JavaScript accesses this information via the
DOM (document object model, a standard of the World-Wide
Web Consortium for describing HTML and XML documents)
Page | 114
This document describes the software requirements for
MobiQuiz online examination system. Section 2 gives the
detailed description of functional and nonfunctional
requirements.
Functional Requirements for MobiQuiz are as follows…..
The Administrator should provide the following functionally…..
 User Management (Add, Edit, Delete, Block/Unblock and
List View of Users).
 Faculty Management (Add, Edit, Delete, Block/Unblock
and List View of Faculty Members).
 Course Management (Add, Edit, Delete, Block/Unblock
and List View of Courses).
 Student Management (Add, Edit, Delete, Block/Unblock
and List View of Students).
 Assign Course(s) of degree program to the faculty
members in particular semester.
 Add new Semester in the application.
 Degree program management: (Add, Edit, Delete,
Block/Unblock and List View of Degree programs).
 Enroll/add students to the course in particular semester
of degree program.
The Faculty Member should provide the following
functionally…..
 Create questions relevant to the subject and on lecture
based.
 Create Quiz by using existing questions.
Page | 115
 Set flag with each quiz to restrict student access to the
Quiz.
 View questions and students given answer.
 Initialize checking process of particular quiz of the
course.
 View students result in a list form.
 Publish result to the students. Result will be published in
student’s account and SMS will also be sent to the
students.
The Student’s interface should provide the following
functionally…..
 View grade book and current registered courses.
 View history of Quiz and results.
 Student can login using its mobile or online interface.
 Student can send request to start paper using SMS.
(GSM mobile will be used for this feature.)
 Students can answer MCQs using SMS. (GSM mobile
will be used for this feature.)
Non Functional Requirements:
The non functional requirements put constraints on the
implementation of functional
requirements and they provide the criteria to judge the
operation of the system. So
although building the software in accordance to the non
functional requirements increases
the complexity of the development process butit is essential for
high quality software.
The non functional requirements of MobiQuiz are as follows:
Security:
System will allow only valid users to access their accounts.
There are three types of users of this system namely
Page | 116
Administrator, Student and faculty member. The security is
based upon Mobile Number and password for the student.
Maintainability:
It is very important for this system suppose now this system is
dealing with only MCQ’s in future it can be extended to other
type of question answer. By extending it to true false question
in MobiQuiz the amount of Questions can increase in future.
So the maintainability should be high.
Availability:
Systems availability is of high importance during the
conduction of online examination.
Availability of the system depends upon the availability of the
web server, internet connection. System is intended for
examination time.
Portability:
The system should be able to communicate with web browser
and also with GSM mobile phone not with TDMA and CDMA.
Specific Requirements
Internal and External Interface Requirements:
Login:
Page | 117
Preconditions User wants to test the login of administrator
on the system.
Actions Enter id & Password
Click login
System will check the info and log the user
Expected
Results
Administrator login the system
Tested By: Student
Result: Tested
User Management:
Faculty Management:
Page | 118
Preconditions User wants to test the User management by
the administrator.
Actions Administrator takes the all data of the Users
Examine the Data
Apply necessary change on data (if required)
Administrator manages the all data of the
users
Expected
Results
All users are managed by Administrator
Tested By: Student
Result: Tested
Course Management:
Add New Semester:
Page | 119
Preconditions User wants to test the Faculty management
by the administrator.
Actions Administrator takes the all data of the
Faculty
Examine the Data
Apply necessary change on data (if required)
Administrator manages the all data of the
Faculty
Expected
Results
All Faculty is managed by Administrator
Tested By: Student
Result: Tested
Preconditions User wants to test the Course management
by the administrator.
Actions Administrator takes the all data of the
Courses
Examine the Data
Apply necessary change on data (if required)
Administrator manages the all data of the
Courses
Expected
Results
All Courses are managed by Administrator
Tested By: Student
Result: Tested
Enroll Students to Course:
Create Questions:
Page | 120
Preconditions User wants to test the Add New Semester by
the administrator.
Actions Administrator takes the all data of the
Students
Checks the requirements of the Add New
semester
If student satisfy the requirements
Administrator Add the New semester for the
student
Expected
Results
New Semester is added by Administrator
Tested By: Student
Result: Tested
Preconditions User wants to test the Enrollments to Course
by the administrator.
Actions Administrator takes the all data of Student
Checks the requirements of the Enrollments
If student satisfy the requirements
Administrator Enroll the Students to course
Expected
Results
Administrator Enroll the Student to the
course
Tested By: Student
Result: Tested
Create Quiz:
Page | 121
Preconditions User wants to test the Create Question of the
Course by the Faculty.
Actions Faculty takes the data of the Courses by
Administrator
Faculty Checks the Enrolled Courses
Faculty Create the Question of the Enrolled
Courses
Expected
Results
Questions of the Enrolled Courses are
created by the Faculty
Tested By: Student
Result: Tested
Preconditions User wants to test the Create Quiz of the
Course by the Faculty.
Actions Faculty takes the data of the Question of the
Enrolled Course
Faculty Examine the Question data
Faculty Create the Quizzes
Expected
Results
Quizzes of the Enrolled Courses are created
by the Faculty
Tested By: Student
Result: Tested
Checking the Exam:
Publish Student Result:
Login:
Page | 122
Preconditions User wants to test the Checking of
Examination by the Faculty.
Actions Faculty takes the data of Answers of the
Quizzes by Student
Faculty Checks the Student Given Answers
Faculty Marks the Quizzes
Expected
Results
Examination is Checked by the Faculty
Tested By: Student
Result: Tested
Preconditions User wants to test the Publish of the Student
Result by the Faculty.
Actions Faculty Checks the Student Given Answers
Faculty Marks the Quizzes
Faculty Creates the Students Result
Faculty Publish the Students Result
Expected
Results
Result of Student is Published by the Faculty
Tested By: Student
Result: Tested
Start Paper:
Answers the Question:
Page | 123
Preconditions User wants to test the login of Student on
the system.
Actions Enter id & Password
Click login
System will check the info and log the user
Expected
Results
Student login the system
Tested By: Student
Result: Tested
Preconditions User wants to test the Start of Paper after
login.
Actions Student Select the Enrolled Course
Takes the Enrolled Course Quiz
Student Click the Start Button
Expected
Results
The Paper of Student is Started
Tested By: Student
Result: Tested
Preconditions User wants to test the Giving the Answers of
the Quiz.
Actions Students Start the Quiz
Click on the correct option of the Question
Click on the Save Button.
Expected
Results
Student Gives the Answer of the Questions.
Tested By: Student
Result: Tested
View Grade Book:
Page | 124
Preconditions User wants to test the View Grade book of
the Student.
Actions Faculty Publish the Student Result
Students Click on Result Button
Student Views the Result
Expected
Results
Student Views his Results
Tested By: Student
Result: Tested

More Related Content

What's hot

14.project online eamination system
14.project online eamination system14.project online eamination system
14.project online eamination systemjbpatel7290
 
Online examination system
Online examination systemOnline examination system
Online examination systemAj Maurya
 
Attendance Management Report 2016
Attendance Management Report 2016Attendance Management Report 2016
Attendance Management Report 2016Pooja Maan
 
Virtual classroom
Virtual classroomVirtual classroom
Virtual classroomkhalid adam
 
Online Exam Management System(OEMS)
Online Exam Management System(OEMS)Online Exam Management System(OEMS)
Online Exam Management System(OEMS)PUST
 
Online examination system project ppt
Online examination system project pptOnline examination system project ppt
Online examination system project pptMohit Gupta
 
Quiz app (android) Documentation
Quiz app (android) DocumentationQuiz app (android) Documentation
Quiz app (android) DocumentationAditya Nag
 
Online examination documentation
Online examination documentationOnline examination documentation
Online examination documentationWakimul Alam
 
HandyMan(SRS Final Presentation)
HandyMan(SRS Final Presentation)HandyMan(SRS Final Presentation)
HandyMan(SRS Final Presentation)FazleRabbi80
 
Online Attendance Management System
Online Attendance Management SystemOnline Attendance Management System
Online Attendance Management SystemRIDDHICHOUHAN2
 
Online examination system
Online examination systemOnline examination system
Online examination systemPRANJAL SAIKIA
 
15.project attendence managemnt system
15.project attendence managemnt system15.project attendence managemnt system
15.project attendence managemnt systemHaseeb Nasir
 
Online Quiz System Project PPT
Online Quiz System Project PPTOnline Quiz System Project PPT
Online Quiz System Project PPTShanthan Reddy
 
Online examination system
Online examination systemOnline examination system
Online examination systemRahul Khanwani
 
Online Attendance System
Online Attendance SystemOnline Attendance System
Online Attendance SystemAkash Kr Sinha
 

What's hot (20)

14.project online eamination system
14.project online eamination system14.project online eamination system
14.project online eamination system
 
Online Examination System
Online Examination SystemOnline Examination System
Online Examination System
 
Online quiz system
Online quiz systemOnline quiz system
Online quiz system
 
Online examination system
Online examination systemOnline examination system
Online examination system
 
Attendance Management Report 2016
Attendance Management Report 2016Attendance Management Report 2016
Attendance Management Report 2016
 
Online Exam
Online ExamOnline Exam
Online Exam
 
Virtual classroom
Virtual classroomVirtual classroom
Virtual classroom
 
Online Exam Management System(OEMS)
Online Exam Management System(OEMS)Online Exam Management System(OEMS)
Online Exam Management System(OEMS)
 
Online examination system project ppt
Online examination system project pptOnline examination system project ppt
Online examination system project ppt
 
Quiz app (android) Documentation
Quiz app (android) DocumentationQuiz app (android) Documentation
Quiz app (android) Documentation
 
Online examination documentation
Online examination documentationOnline examination documentation
Online examination documentation
 
HandyMan(SRS Final Presentation)
HandyMan(SRS Final Presentation)HandyMan(SRS Final Presentation)
HandyMan(SRS Final Presentation)
 
E learning
E learning E learning
E learning
 
Online Attendance Management System
Online Attendance Management SystemOnline Attendance Management System
Online Attendance Management System
 
Online examination system
Online examination systemOnline examination system
Online examination system
 
15.project attendence managemnt system
15.project attendence managemnt system15.project attendence managemnt system
15.project attendence managemnt system
 
Online examination software eduexam
Online examination software eduexamOnline examination software eduexam
Online examination software eduexam
 
Online Quiz System Project PPT
Online Quiz System Project PPTOnline Quiz System Project PPT
Online Quiz System Project PPT
 
Online examination system
Online examination systemOnline examination system
Online examination system
 
Online Attendance System
Online Attendance SystemOnline Attendance System
Online Attendance System
 

Viewers also liked

S13CS61920410Presentation
S13CS61920410PresentationS13CS61920410Presentation
S13CS61920410PresentationAbid Muslim
 
Hybrid Process Models
Hybrid Process ModelsHybrid Process Models
Hybrid Process Modelshreijers
 
Visual Udyog product overview
Visual Udyog product overviewVisual Udyog product overview
Visual Udyog product overviewVINIT MUNDHRA
 
Duet syllabus
Duet syllabusDuet syllabus
Duet syllabusmdnbd
 
Final project of activity ratio by Nigah-e-Nazar
Final project of activity ratio by Nigah-e-NazarFinal project of activity ratio by Nigah-e-Nazar
Final project of activity ratio by Nigah-e-NazarProdential ruls
 
Modelling Software Requirements: Important diagrams and templates (lecture sl...
Modelling Software Requirements: Important diagrams and templates (lecture sl...Modelling Software Requirements: Important diagrams and templates (lecture sl...
Modelling Software Requirements: Important diagrams and templates (lecture sl...Dagmar Monett
 
Virtual education system
Virtual education systemVirtual education system
Virtual education systemDhara024
 
Online shopping portal: Software Project Plan
Online shopping portal: Software Project PlanOnline shopping portal: Software Project Plan
Online shopping portal: Software Project Planpiyushree nagrale
 
A Checklist for More Persuasive Presentations
A Checklist for More Persuasive PresentationsA Checklist for More Persuasive Presentations
A Checklist for More Persuasive Presentations24Slides
 
online education system project report
online education system project reportonline education system project report
online education system project reportHagi Sahib
 
PROJECT REPORT_ONLINE VOTING SYSTEM
PROJECT REPORT_ONLINE VOTING SYSTEMPROJECT REPORT_ONLINE VOTING SYSTEM
PROJECT REPORT_ONLINE VOTING SYSTEMNandasaba Wilson
 
How to Visualize Data Like a Pro
How to Visualize Data Like a ProHow to Visualize Data Like a Pro
How to Visualize Data Like a Pro24Slides
 
Shopify Online Store Presentation – Setup Your Online Store in Minutes
Shopify Online Store Presentation – Setup Your Online Store in MinutesShopify Online Store Presentation – Setup Your Online Store in Minutes
Shopify Online Store Presentation – Setup Your Online Store in MinutesAndi Boediman
 
Online Voting System Project File
Online Voting System Project FileOnline Voting System Project File
Online Voting System Project FileNitin Bhasin
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System pptMohsin Ali
 

Viewers also liked (15)

S13CS61920410Presentation
S13CS61920410PresentationS13CS61920410Presentation
S13CS61920410Presentation
 
Hybrid Process Models
Hybrid Process ModelsHybrid Process Models
Hybrid Process Models
 
Visual Udyog product overview
Visual Udyog product overviewVisual Udyog product overview
Visual Udyog product overview
 
Duet syllabus
Duet syllabusDuet syllabus
Duet syllabus
 
Final project of activity ratio by Nigah-e-Nazar
Final project of activity ratio by Nigah-e-NazarFinal project of activity ratio by Nigah-e-Nazar
Final project of activity ratio by Nigah-e-Nazar
 
Modelling Software Requirements: Important diagrams and templates (lecture sl...
Modelling Software Requirements: Important diagrams and templates (lecture sl...Modelling Software Requirements: Important diagrams and templates (lecture sl...
Modelling Software Requirements: Important diagrams and templates (lecture sl...
 
Virtual education system
Virtual education systemVirtual education system
Virtual education system
 
Online shopping portal: Software Project Plan
Online shopping portal: Software Project PlanOnline shopping portal: Software Project Plan
Online shopping portal: Software Project Plan
 
A Checklist for More Persuasive Presentations
A Checklist for More Persuasive PresentationsA Checklist for More Persuasive Presentations
A Checklist for More Persuasive Presentations
 
online education system project report
online education system project reportonline education system project report
online education system project report
 
PROJECT REPORT_ONLINE VOTING SYSTEM
PROJECT REPORT_ONLINE VOTING SYSTEMPROJECT REPORT_ONLINE VOTING SYSTEM
PROJECT REPORT_ONLINE VOTING SYSTEM
 
How to Visualize Data Like a Pro
How to Visualize Data Like a ProHow to Visualize Data Like a Pro
How to Visualize Data Like a Pro
 
Shopify Online Store Presentation – Setup Your Online Store in Minutes
Shopify Online Store Presentation – Setup Your Online Store in MinutesShopify Online Store Presentation – Setup Your Online Store in Minutes
Shopify Online Store Presentation – Setup Your Online Store in Minutes
 
Online Voting System Project File
Online Voting System Project FileOnline Voting System Project File
Online Voting System Project File
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System ppt
 

Similar to S13CS61920410

Online examination system
Online examination system Online examination system
Online examination system IRJET Journal
 
Online Examination System Project report
Online Examination System Project report Online Examination System Project report
Online Examination System Project report SARASWATENDRA SINGH
 
Online Exam System_Industrial Report
Online Exam System_Industrial ReportOnline Exam System_Industrial Report
Online Exam System_Industrial ReportManmeet Sinha
 
A Survey on Design of Online Judge System
A Survey on Design of Online Judge SystemA Survey on Design of Online Judge System
A Survey on Design of Online Judge SystemIRJET Journal
 
A_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdf
A_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdfA_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdf
A_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdfAmishGupta15
 
A Project Report ON ONLINE EXAMS SYSTEM
A Project Report ON ONLINE EXAMS SYSTEMA Project Report ON ONLINE EXAMS SYSTEM
A Project Report ON ONLINE EXAMS SYSTEMDawn Cook
 
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]ayushi goyal
 
IRJET - Implementation of Conducting Online Certification Examination in ...
IRJET -  	  Implementation of Conducting Online Certification Examination in ...IRJET -  	  Implementation of Conducting Online Certification Examination in ...
IRJET - Implementation of Conducting Online Certification Examination in ...IRJET Journal
 
online learning and examination website
online learning and examination websiteonline learning and examination website
online learning and examination websiteAnuj Kumar
 
quiz game project report.pdf
quiz game project report.pdfquiz game project report.pdf
quiz game project report.pdfzccindia
 
Online Quiz System Project Report
Online Quiz System Project Report Online Quiz System Project Report
Online Quiz System Project Report Kishan Maurya
 
Online examination system of open and distance education
Online examination system of open and distance educationOnline examination system of open and distance education
Online examination system of open and distance educationPallavi Singh
 
FINAL REPORT DEC
FINAL REPORT DECFINAL REPORT DEC
FINAL REPORT DECAxis Bank
 
IRJET - Online Assignment System
IRJET - Online Assignment SystemIRJET - Online Assignment System
IRJET - Online Assignment SystemIRJET Journal
 
Attendance management system project report.
Attendance management system project report.Attendance management system project report.
Attendance management system project report.Manoj Kumar
 
Smart Sessional with QR Attendance
Smart Sessional with QR AttendanceSmart Sessional with QR Attendance
Smart Sessional with QR Attendancerashidalyasuog
 
University android app
University android app University android app
University android app ADI ADARSH
 
ProjectReport.docx project report pdf file
ProjectReport.docx project report pdf fileProjectReport.docx project report pdf file
ProjectReport.docx project report pdf filekomkar98230
 
ProjectReport.docx project documentation
ProjectReport.docx project documentationProjectReport.docx project documentation
ProjectReport.docx project documentationkomkar98230
 

Similar to S13CS61920410 (20)

Online examination system
Online examination system Online examination system
Online examination system
 
Online Examination System Project report
Online Examination System Project report Online Examination System Project report
Online Examination System Project report
 
Online Exam System_Industrial Report
Online Exam System_Industrial ReportOnline Exam System_Industrial Report
Online Exam System_Industrial Report
 
A Survey on Design of Online Judge System
A Survey on Design of Online Judge SystemA Survey on Design of Online Judge System
A Survey on Design of Online Judge System
 
A_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdf
A_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdfA_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdf
A_Project_Report_ON_ONLINE_EXAMS_SYSTEM.pdf
 
A Project Report ON ONLINE EXAMS SYSTEM
A Project Report ON ONLINE EXAMS SYSTEMA Project Report ON ONLINE EXAMS SYSTEM
A Project Report ON ONLINE EXAMS SYSTEM
 
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
 
IRJET - Implementation of Conducting Online Certification Examination in ...
IRJET -  	  Implementation of Conducting Online Certification Examination in ...IRJET -  	  Implementation of Conducting Online Certification Examination in ...
IRJET - Implementation of Conducting Online Certification Examination in ...
 
online learning and examination website
online learning and examination websiteonline learning and examination website
online learning and examination website
 
quiz game project report.pdf
quiz game project report.pdfquiz game project report.pdf
quiz game project report.pdf
 
Online Quiz System Project Report
Online Quiz System Project Report Online Quiz System Project Report
Online Quiz System Project Report
 
Online examination system of open and distance education
Online examination system of open and distance educationOnline examination system of open and distance education
Online examination system of open and distance education
 
FINAL REPORT DEC
FINAL REPORT DECFINAL REPORT DEC
FINAL REPORT DEC
 
IRJET - Online Assignment System
IRJET - Online Assignment SystemIRJET - Online Assignment System
IRJET - Online Assignment System
 
Attendance management system project report.
Attendance management system project report.Attendance management system project report.
Attendance management system project report.
 
SDD-FinalYearProject
SDD-FinalYearProjectSDD-FinalYearProject
SDD-FinalYearProject
 
Smart Sessional with QR Attendance
Smart Sessional with QR AttendanceSmart Sessional with QR Attendance
Smart Sessional with QR Attendance
 
University android app
University android app University android app
University android app
 
ProjectReport.docx project report pdf file
ProjectReport.docx project report pdf fileProjectReport.docx project report pdf file
ProjectReport.docx project report pdf file
 
ProjectReport.docx project documentation
ProjectReport.docx project documentationProjectReport.docx project documentation
ProjectReport.docx project documentation
 

S13CS61920410

  • 1. Final Project Report MobiQuiz Project Supervisor Sarfraz Ahmad Awan Submitted By S13CS61920410 Page | 1
  • 2. Ahid Hussain MC120202860 Software Projects & Research Section, Department of Computer Sciences, Virtual University of Pakistan CERTIFICATE This is to certify that Mc120202860 (Mc120202860) have worked on and completed their Software Project at Software & Research Projects Section, Department of Computer Sciences, Virtual University of Pakistan in partial fulfillment of the requirement for the degree of BS in Computer Sciences under my guidance and supervision. In our opinion, it is satisfactory and up to the mark and therefore fulfills the requirements of BS in Computer Sciences. Supervisor / Internal Examiner Sarfraz Ahmad Awan Supervisor, Page | 2
  • 3. Software Projects & Research Section, Department of Computer Sciences Virtual University of Pakistan ___________________ (Signature) External Examiner/Subject Specialist ___________________ (Signature) Accepted By: _____________ (For office use) EXORDIUM In the name of Allah, the Compassionate, the Merciful. Page | 3
  • 4. Praise be to Allah, Lord of Creation, The Compassionate, the Merciful, King of Judgment-day! You alone we worship, and to You alone we pray for help, Guide us to the straight path The path of those who You have favored, Not of those who have incurred Your wrath, Nor of those who have gone astray. Page | 4
  • 5. DEDICATION Dedicated to loving, caring, affectionate Parents, Brothers, Sister, little Niece and Nephew. Page | 5
  • 6. ACKNOWLEDGEMENT First of all, I am great full to the ALLAH Almighty the most Merciful and Beneficent who guides us in darkness and helps I difficulties. All respect for his prophet (P.B.U.U) whose gracious favor and blessings enable me to complete this research successfully. I regarded it a great honor and privilege to express my deepest sense of gratitude and appreciation to my learned worthy and honorable guide Mr. Sarfraz Ahmad for his great guidance encouragement excellent attitude and sincere personal involvement through out the study. I am also thankful to all those who helped me in collection of relevant material. Abid Hussain Page | 6
  • 7. PREFACE This Project Report describes an examination by using GSM mobiles. By making the examination procedure automated. We can overcome the many human mistakes and time consuming method (manually checking). Any university, college or school with a computerized education system can adopt this system. There is an expert part in our system, which uses AI to generate questions. The system will show result after the examination is finished and also be able to provide feedback according to the participant’s demand. Administrative control of the whole system is provided. A teacher has control in the question bank and is suppose to make schedule for quiz. The document also addresses other issues such as preventing networking bottlenecks, proper error handling, security features, client side validations and support for multiple clients simultaneously. Some of the future enhancements that could improve the application design are also addressed. In early examination systems every work is done by manually. Which cause the time consuming and many human errors. Now by automated examination system prone to error in examination is less than earlier and very fast work is done in result announcements. Page | 7
  • 8. TABLE OF CONTENTS CHAPTER NO. 1 GATHERING & ANALYZING INFO...................................................10 1.1 Introduction…………………………………………………...........11 1.2 purpose……………………………………………………………...11 1.3 scope………………………………………………………………...12 1.4 definitions, acronyms and abbreviations…………………………13 1.5 use cases and usage scenarios……………………………………...15 1.5.1 Use Case Diagrams………………………………………………………...15 1.5.2 Usage Scenarios……………………………………………………………16 1.6 supplementary requirements……………………………………..24 1.6.1 Usability……………………………………………………………………24 1.6.2 Reliability…………………………………………………………………..25 1.6.3 Supportability………………………………………………………………25 1.6.4 System Requirements………………………………………………………26 CHAPTER NO. 2 PLANNING THE PROJECT..............................................................27 2.1 Introduction………………………………………………………..28 2.2 Methodology……………………………………………………….35 Page | 8
  • 9. Available Methodologies………………………………………………….35 Chosen Methodology……………………………………………………...43 Reasons for Chosen Methodology……………………………………….45 Work Plan…………………………………………………………………46 Project Structure………………………………………………………….47 2.3.1 Team Structure……………………………………………………………...47 2.3.2 Project Schedule (Submission Calendar)…………………………………...49 CHAPTER NO. 3 DESIGNING THE PROJECT............................................................50 3.1 Introduction………………………………………………………...51 3.2 purpose……………………………………………………………55 3.3 scope……………………………………………………………….55 definitions, acronyms and abbreviations………………………………56 Architectural Representation (Architecture Diagram)………………58 Dynamic Model: Sequence Diagrams………………………………….59 Object Model/Logical Model: Class Diagram………………………...61 Deployment Model (Deployment Diagram)……………………………62 Database Model (Database Diagram)…………………………………63 Graphical User Interfaces………………………………………………64 Page | 9
  • 10. CHAPTER NO.4 DEVELOPMENT.............................................................................86 4.1 Development plan (Architecture Diagram)……………………... 87 4.2 Activity Diagram………………………………………………….92 CHAPTER NO.5 DEPLOYMENT...............................................................................93 5.1 Deployment Plan (Deployment Diagram)……………………….94 5.2 Overview ………………………………………………………..95 5.3 Deployment Planning…………………………………………….. .95 5.4 RESOURCES…………………………………………………………………98 5.5 Training…………………………………………………………….99 APPENDIX………………………………………………………………102 Page | 10
  • 11. CHAPTER 1 Gathering & Analyzing Info Page | 11
  • 13. The MobiQuiz system will be an Examination System (SMS- based examination) for an Educational Institute (University, College, and School). This system is designed to reduce the hectic job of assessing the answers given by candidates manually. also reduce the scarcity of resources computer systems) that arise during the processing of existing online examination system. In this system the mobiles phone technology will be used to allow the Students to attend the exam through GSM mobile (global system for mobile communication) using SMS (Short messaging services) facility. The system will also provide the online interface to the student to attend the examination. System will allow the faculty member to create and present the question in the form of MCQs and the students will be able to answer through the SMS (GSM mobile will be used for this feature) and online interface. Responses by the candidates will be checked automatically and instantly. Being an integrated Online Examination System it will reduce paper work and scarcity of resources (computer systems) that arise during the processing of existing online examination system. 1.2 Purpose: Mobiquiz fulfills the requirements of the institutes to conduct the exams online and also using the GSM technology Students can give exam without the need of going to any physical destination. Page | 13
  • 14. Thus the purpose of the Mobiquiz is to provide a system that saves different resources like the efforts and time of both the institutes and the students, paper work and scarcity of expensive resources (computer systems, electricity). 1.3 scope: This system will be an Examination System (SMS-based examination) for an Educational Institute (University, College, and School) .This system will be designed to reduce the scarcity of resources (computer systems) that arise during the processing of existing online examination system. In this system the mobiles phone technology will be used to allow the Students to attend the exam through GSM mobile (global system for mobile communication) using SMS (Short messaging services) facility. The system will also provide the online interface to the student to attend the examination. System will allow the faculty member to create and present the question in the form of MCQs and the students will be able to answer through the SMS (GSM mobile will be used for this feature) and online interface. 1.4 Definitions, Acronyms and Abbreviations GSM stands for Global System for Mobile Communication Page | 14
  • 15. SMS stands for Short Message Service MCQ’s stands for Multiple Choice Questions DB stands for Database PHP: Hypertext Preprocessor HTML: Hypertext Transfer Protocol is a transaction or oriented client/server protocol between web browser & a Web Server. Bootstrap: Sleek, intuitive, and powerful front-end framework for faster and easier web development CSS: Cascading Style Sheet MySQL: My Structured Query Language; MySQL is a free of charge relational database. It is open source software and a quality database server. MySQL supports most of the ANSI standard SQL92. Administrator: Administrator is user of this system that manages the Faculty, Students, Examination, Results and Degree Programs. Faculty: Faculty is a user of this system that manages the questions and prepares the quizzes. Student: Student is a user of this system that takes quiz and solves that quiz. Application Server: An application server is a provider of Service for the clients of the application in a computer network Which is dedicated to running certain software application? An application server is a component-based product. It resides In the middle-tier of a server centric architecture. Its Page | 15
  • 16. Functionality includes providing middleware services for security and state maintenance, along with data access and persistence. Browser: A web browse, apart from being used in computers is also increasingly used on other devices as well. It helps to locate, display and interact with web pages and other resources on the Internet. A Browser is also used to access resources on networks other than internet; this includes local area networks (LAN), home networks, and the same computer on which the browser is running. Framework: A frame work can be described as reusable Software that implements a generic solution to a generalized problem. It provides facilities which are useful to different application programs. Framework helps designers to concentrate their effort in fulfilling the software requirements rather than working on low level details for providing the working system. GUI: A graphical user interface(GUI) provides a way for humans to interact with computers. It uses windows, icons and menus and it can be manipulated by a mouse (and to a little extent by keyboard) Use Cases and Usage Scenarios 1.5.1 Use Case Diagrams Page | 16
  • 18. 1.5.2 Usage Scenarios: Table 1.Login. Use Case Title Login Action User select the login form and fill up it Actor User Use case Id UC01 Description 1. Enter user name 2. Enter password 3. Click login 4. System login and display welcome screen Alternative Display login error ”The user name or password incorrect try again” Pre Conditions Load the login screen Post Conditions User logged in Author Mc120202860 Exceptions The user will not be able to access the system resources without correct username and password and the system will show the registration form. Table 2.Management Use Case Title Management Action Administrator manage the all users and exams and select the management option. Actor Administrator Page | 18
  • 19. Use case Id Uc02 Description Select the section of management 1. Add, Edit, Delete, List view, Block/Unblock user management. 2. Add, Edit, Delete, List view, Block/Unblock degree management. 3. Add, Edit, Delete, List view, Block/Unblock course management. Alternative Display login error ”The user name or password incorrect try again” Pre Conditions Login as Admin Post Conditions System alternated. Author Mc120202860 Exceptions Table 3.Create Exam. Use Case Title Create Exam Action 1) The use case starts when the faculty member wants to create the question paper for students. 2) The user selects the subject of which exam he/she wants to create. 3) The user selects the lectures from which exam would be created. 4) The user will conform that the exam is created or not after setting the question paper. Actor Faculty Member Use case ID Uc03 Page | 19
  • 20. Description 1) go to profile 2) Select create exam 3) Select subject and lectures 4) Enter questions in exam 5) Create new exam 6) Invite students to exam Alternative If the user does not confirm to create exam to the system, the exam will not be created. User cancel action. Pre Conditions Login as faculty member and plays the role of paper setter. Post Conditions Exam created. Author Mc120202860 Exceptions The system will not allow a user to create exam of the other subject that is not assigned to him/her. Table 4.Edit Exam. Use Case Title Edit/create new quiz Action 1) The use case starts when the user wants to edit and update the question paper. 2) The user selects the subject of which exam wants to edit. 3) The user selects the lectures from which exam would be created. 4) The user will conform that the exam is updated or not after setting the question. Actor Faculty member Use case Id Uc04 Page | 20
  • 21. Description 1) go to profile 2) Select create exam 3) Select subject and lectures 4) Edit questions, description , exam title 5) Save exam settings. Alternative If the user does not confirm to update exam to the system, the exam will not be updated. User cancel action. Pre Conditions Login as faculty member and plays the role of paper setter. Post Conditions Exam updated successfully. Author Mc120202860 Exceptions The system will not allow a user to update exam of the other subject that is not assigned to him/her. Table 5 Take Exam. Use Case Title Take Exam Action 1) The use case starts when the user wants to take or attempt exam. 2) The user selects the subject of which exam he/she wants to take. Summary The student can attend the exam which he/she has enrolled Actor Student Use case Id Uc05 Description 1. Login to mobiquiz Page | 21
  • 22. 2. Authentication of the user 3. Take exam in which student is enrolled Alternative If the user do not want to take exam he/she can cancel the exam. Pre Conditions Login as user and plays the role of Student and select the take exam option. User should have a subject enrolled. Post Conditions Exam taken Author Mc120202860 Exceptions If the you student is not enrolled in a subject and has not a valid username and password, he can not take or attempt exam paper. Table 6 Submit Exam Use Case Title Submit Exam Action 1. The use case starts when the user wants to submit exam after attempting it. 2. Student selects the submit button or save and also through the send button from mobile phone. Summary The student can submit he exam through mobile and web based interface Actor Student Use case Id Uc06 Description 1. Go to submit 2. Make sure you have attempt the complete paper Page | 22
  • 23. 3. Select yes to make sure From mobile 1. Send exam 2. Exam successfully submitted Alternative If the user wants to edit exam he/she can select No option. Pre Conditions Login as user and plays the role of Student. Post Conditions Exam successfully submitted Author Mc120202860 Exceptions Table 7 View grade book. Use Case Title View grade book Action 1. The use case starts when the Student wants to view his/her exam result or grade book. 2. Student selects the grade book link to view the grades. Summary The student can view the grade book through web based interface. Actor Student Use case Id UC7 Description 1. Login 2. Go to profile 3. Select the grade book 4. Select midterm grade book link to view midterm grades Alternative Display your MobiQuiz Status is blocked Pre Conditions Login as user and plays the role of Student and select the grade book. Post Conditions Result viewed/checked Author Mc120202860 Page | 23
  • 24. Exceptions 1.6 Supplementary Requirements 1.6.1 Usability System load-time is reasonable at all devices. Font size/spacing is easy to read. Main navigation is easily identifiable and labels are clear & concise The web server used should provide services like session management to maintain Sessions in the application. Links are consistent & easy to identify. The user is facilitated to view and make entries in the forms. Validations are provided in each field to avoid inconsistent or invalid entry in the databases. Some forms consists hyper links, which provides further details. Reports screen contains text boxes and drop down lists, so that reports can be produced. Interface of the Mobiquiz is user friendly and designed using bootstrap. Page | 24
  • 25. Bootstrap is a free collection of tools for creating 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. It is the most popular project on GitHub and has been used by NASA and MSNBC among others. Features of bootstrap: Basic information of compatibility of websites or applications is available for all devices and browsers. There is a concept of partial compatibility that makes the basic information of a website available for all devices and browsers. For example, the properties introduced in CSS3 for rounded corners, gradients and shadows are used by Bootstrap despite lack of support by older web browsers. 1.6.2 Reliability System will allow only valid users to access their accounts. There are three types of users of this system namely Administrator, Student and faculty member. The security is based upon Mobile Number and password for the student. 1.6.3 Supportability LEVEL 1 SUPPORT Answering questions on execution or usage through a call center service; this is typically done by the customer. LEVEL 2 SUPPORT Restoring service and fixing production problems with the application. This may include minor modification to scripts or to configuration parameters. LEVEL 3 SUPPORT Page | 25
  • 26. Focuses on corrective modification. Code changes to the application are released either as emergency or planned releases. It is very important for this system suppose now this system is dealing with only MCQ’s in future it can be extended to other type of question answer then the technical support will be given to up this system. By extending it to true false question in MobiQuiz the amount of Questions can increase in future. So the maintainability should be high. 1.6.4 System Requirements Operating System (Windows) Web Browser AppServ Open Project - 2.6.0 for Windows PHP Version 6.0.0-dev Apache Web Server Version 2.2.8 MySQL Database Version 6.0.4-alpha PhpMyAdmin Database Manager Version 2.10.3 Hardware Requirements: Server The minimum hardware as recommended by all of the software required on server side say web server, operating system and development software • Intel motherboard and processor (High End) • At least 2 GB RAM • GSM Modem and Subscriber identity module with SMS subscription Page | 26
  • 27. • High capacity hard drive • Network interface Client The minimum hardware as recommended by all of the software required on client side say web browser, operating system Intel motherboard and processor • Minimum hardware depending on the operating system used • 80 GB hard disk • True color visual display unit • User peripherals for better interaction • Graphic card CHAPTER 2 Planning the Project Page | 27
  • 28. 2.1 Introduction of the Planning Phase Page | 28
  • 29. Project planning is a discipline for stating how to complete a project within a certain timeframe, usually with defined stages, and with designated resources. One view of project planning divides the activity into: • Setting objectives (these should be measurable) • Identifying deliverables • Planning the schedule • Making supporting plans Supporting plans may include those related to: human resources, communication methods, and risk management. 2.1.1 Objective of the MobiQuiz: This system will be an Examination System (SMS-based examination) for an Educational Institute (University, College, and School) .This system will be designed to reduce the scarcity of resources (computer systems) that arise during the processing of existing online examination system. In this system the mobiles phone technology will be used to allow the Students to attend the exam through GSM mobile (global system for mobile communication) using SMS (Short messaging services) facility. The system will also provide the online interface to the student to attend the examination. System will allow the faculty member to create and present the question in the form of MCQs and the students will be able to answer through the SMS (GSM mobile will be used for this feature) and online interface. The questions for exam will randomly generated so that there is very less chance to repeat the question in the question paper. It will happen only if there is less amount of question in database. 1.1.1 Limitations: • On-line Exam system is designed for Educational Institutes (like schools, universities, training centers). • Student can send request to start paper using SMS. (GSM mobile will be used for this feature.) • Allow students to see or display his answers after the exam is finish. • The type of questions is only multiple choice or true and false. Page | 29
  • 30. 2.1.2 Deliverables of the system: 1.1.2 Creating data bank 2 Question can be categorized according to lectures, subjects, types etc. 3 Exam can be created random basis per student. 4 System can automatically add the marks allocated in each question to determine the total mark for the exam. 4.1.1 Control Mechanism in the Exam 1. Time limit can be set for the exam. 2. The sequence of question can be randomized. 3. Student can navigate within a exam (i.e. backward & forward) can be set navigation tool/button can be selected for a exam & these button can be switched. 4. Student can be allowed to exit the exam before completing the entire question. 5. A specific date for a exam to be active can be set. 4.1.2Question Types 1. Multiple Choices: This allows the user to select one correct answer. 2. Free Format: This type of question will used to take a written exam of the student which is very often used by educational institute to conduct an exam. 4.1.3Other Essential Requirements 1. Negative marking should be possible in all the question types. 2. Remaining time can be displayed. 3. Free format question can be saved in Data Bank. Page | 30
  • 31. 4. A paper for written exam can be generated with the help system Data Bank. 5. Answer can be saved at real time. 4.1.4 4.1.5Security 1. Only registered student are able to access the exam. 2. Exam can be made available on special dates. 4.1.6Reporting The following results on the exam performance can be obtained. 1. Average time used by the student 2. Time taken for each individual student to complete the test. 2.1.3 Supporting Plans: This section deals with plans you should create as part of the planning process. These can be included directly in the plan. 1.3 Human Resource Plan: Staffing Plan The purpose of the staffing plan is to make certain the project has sufficient staff with the right skills and experience to ensure a successful project completion. Page | 31
  • 32. Communication Methods: Weekly or monthly progress report, describing how the projectis performing, milestones achieved and work planned for the next period will be send to the customer. Risk Management Plan: Risk management is an important part of project management. Although often over looked, it is important to identify as many risks to your project as possible, and be prepared if something bad happens. Here are some examples of common project risks: 1. Time and cost estimates too optimistic. 2. Customer review and feedback cycle too slow. 3. Unexpected budget cuts. Page | 32 Job Title Description 1 Project Manager • To manage all processes in the project 2 SW Designer • To design the models and diagrams that helps the programmer in implementation phase. 3 Two Testers • One from outside the team and the other from the inside the project team. 4 Two programmers • Professional in ASP.NET,PHP,JAVA etc and SQL • Well versued in web designing and database designing. • To programming the processes of the project. 5 SW Analyst • To analyze the requirements of On- Line Exam System. 6 Writer • Collects drafts from each member. • Rewrite and reformate the documents come from each member. • Have good print skills. • Have a good skill to correct grammars of statements.
  • 33. 4. Unclear roles and responsibilities. 5. Stakeholder input is not sought, or their needs are not properly understood. 6. Stakeholders changing requirements after the project has started. 7. Stakeholders adding new requirements after the project has started. 8. Poor communication resulting in misunderstandings, quality problems and rework. 9. Lack of resource commitment. Risks can be tracked using a simple risk log. Add each risk you have identified to your risk log; write down what you will do in the event it occurs, and what you will do to prevent it from occurring. Review your risk log on a regular basis, adding new risks as they occur during the life of the project. Remember, when risks are ignored they don't go away. Risk analysis and risk planning: Project Risks: Risk Probabilit y Effects Risk planning strategy The experience staff in the team leave the project before it is finish, or someone was ill low serious Use more than one staff for each section, which might minimize this risk. Also, manager tries to increase salary for him. The methodology to solve the problem can't work in a proper high serious Must be study more than one methodology to minimize this risk. Page | 33
  • 34. manner. Budget does not enough or there is no budget. low catastrophic Put a condition in the contract if there any more expenses, the funded side must be pay it. To avoid this risk. HW requirement can't come in the time. moderate serious See if there is any more time to delay the project or not. If there is no more time work by the team computers, to minimize this risk. Product Risks: Risk Probabilit y Effects Risk planning strategy Packages and Development tools does not enough. high serious Put a condition in the contract to increase the time of project delivery depends on the problem occur. To avoid this risk. Can't found the suitable components. high tolerable Programmer must have professional programming skills to write a new code, which minimize this risk. Business Risks: Risk Probabilit y Effects Risk planning strategy Can't found the suitable place moderate tolerable Monitoring the work by E-mail Page | 34
  • 35. for meeting the team. every day. To avoid this risk. Damage the electricity generator. high serious There is a spare generator to avoid this risk. Marketing the product system. low catastrophic Distribution of advertisements, which minimize this risk. 4.2 Monitoring and reporting mechanisms: The manager should monitor all activities in the project via minimize, avoid the risks or via management control as follows: 1.Put a table for all SW requirements and print in percentage how much finish. 2.Using software programming to monitor programmer's progress. 3.Using spyware profile to monitor the team. 4.Using software that calculate how many lines written per hour. 5.monitoring the risks as follows: a.Change the probability and effect. b.Delete risks or add a new one depends on the working on project. Advantages of Planning Project  Finish the project on time.  Continuous, uninterrupted work flow with no delays.  Cost Control.  Reduced amount of re-work, fewer changes.  Increased knowledge of project status via timely reports to management.  Knowledge of scheduled times for key project parts.  Stability of people, defined responsibility and authority.  Clear understanding of who does what, when and for how much?  Integration of all work to insure a quality project for the owner. Page | 35
  • 36.  You run the project instead of the project running you.  Everyone is clear on what the milestone are and when.  Everyone is aware of the dependencies and what other work is happening when.  You are able to clearly track progress.  You are unlikely to miss something major by having a plan. 2. Methodologies Every software development methodology framework acts as a basis for applying specific approaches to develop and maintain software. Several software development approaches have been used since the beginning of information technology. Existing methodologies which are commonly used in IT industry are listed below. 2.1 Existing Methodologies Each methodology having its strengths and weaknesses and suitable in different situations and project types. The list of models includes the following: • Waterfall model • Incremental model • Rapid prototyping model • Extreme programming • Spiral model Waterfall Model The first published model of the software development process was derived from other engineering processes. Because of the cascade from one phase to another, this model is known as the waterfall model. This model is also known as linear sequential model. This model is depicted in the following diagram. Page | 36
  • 37. The principal stages of the model map directly onto fundamental development activities. It suggests a systematic, sequential approach to software development that begins at the system level and progresses through the analysis, design, coding, testing, and maintenance. In the literature, people have identified from 5 to 8 stages of software development. The five stages above are as follows: 1. Requirement Analysis and Definition: What - 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. 2. System and Software Design: How – The system design process partitions the requirements to either hardware of software systems. It establishes and overall system architecture. Software design involves fundamental system abstractions and their relationships. 3. Implementation and Unit Testing: - How – During this stage the software design is realized as a set of programs or program units. Unit testing involves verifying that each unit meets its specifications. 4. Integration and system testing: The individual program unit or programs are integrated and tested as a complete system to ensure that the software requirements have been met. After testing, the software system is delivered to the customer. 5. Operation and Maintenance: Normally this is the longest phase of the software life cycle. The system is installed and put into practical use. Maintenance involves correcting errors which were not discovered in earlier stages of the life-cycle, improving the implementation of system units and enhancing the system’s services as new requirements are discovered. Page | 37
  • 38. In principle, the result of each phase is one or more documents which are approved. No phase is complete until the documentation for that phase has been completed and products of that phase have been approved. The following phase should not start until the previous phase has finished. 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. Because of the costs of producing and approving documents, iterations are costly and require significant rework. The Waterfall Model is a documentation-driven model. It therefore generates complete and comprehensive documentation and hence makes the maintenance task much easier. It however suffers from the fact that the client feedback is received when the product is finally delivered and hence any errors in the requirement specification are not discovered until the product is sent to the client after completion. This therefore has major time and cost related consequences. 4.3 Incremental Models As discussed above, 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. Page | 38
  • 39. 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 can be incorporated at a much lesser cost. It is therefore less traumatic as compared to the waterfall 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. Page | 39
  • 40. In a more risky version, once the user requirements have been elicited, the specifications of the first build are drawn up. 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. Rapid Prototyping Model The Rapid Prototyping Model is used to overcome issues related to understanding and capturing of user requirements. In this model a mock-up application is created “rapidly” to solicit feedback from the user. Once the user requirements are captured in the prototype to the satisfaction of the user, a proper requirement specification document is developed and the product is developed from scratch. An essential aspect of rapid prototype is embedded in the word “rapid”. The developer should endeavor to construct the prototype as quickly as possible to speedup the software development process. It must always be kept in mind that the sole purpose of the rapid prototype is to capture the client’s needs; once this has been determined, the rapid prototype is effectively discarded. For this reason, the internal structure of the rapid prototype is not relevant. Page | 40 Implementation, integration Deliver to clientDesignSpecification Implementation, integration Deliver to clientDesignSpecification Implementation, integration Deliver to clientDesignSpecification Build 1 Implementation, integration Deliver to clientDesignSpecification Build 2 Build 3 Build n Specification team Design team Implementation, integration team
  • 41. Spiral Model This model was developed by Barry Boehm. 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. 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. Page | 41 Risk Analysis Verify Rapid Prototype Specification Design Implementation
  • 42. A full version of the Spiral Model is shown below: 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. Page | 42
  • 43. eXtreme Programming It is a somewhat controversial new approach. In this approach user requirements are captured through stories which are the scenarios presenting the features needed by the client? Estimate for duration and cost of each story is then carried out. Stories for the next build are selected. Then each build is divided into tasks. Test cases for task are drawn up first before and development and continuous testing is performed throughout the development process. Page | 43 Plan Next Phase Determine objectives, alternatives, constraints Identify and resolve risks Develop and verify next-level product Architectural spike User stories Release Planning Spike Iteration Acceptance test Small release
  • 44. One very important feature of eXtreme programming is the concept of pair programming. In this, a team of two developers develop the software, working in team as a pair to the extent that they even share a single computer. In eXtereme Programming model, computers are put in center of large room lined with cubicles and client representative is always present. One very important restriction imposed in the model is that no team is allowed to work overtime for 2 successive weeks. XP has had some successes. It is good when requirements are vague or changing and the overall scope of the project is limited. It is however too soon to evaluate XP. 2.2 Adopted Methodology The adopted methodology for this project is VU Process Model which is a combination of waterfall and spiral models. 5 Vu process model Vu process model is proposed software engineering process by virtual university of Pakistan which is the combination of waterfall model and spiral model in software development. Basically, a process model explains the simplified description of software processes in iteration to avoid maximum risk. There are many existing methodologies in software engineering processes such as waterfall model, spiral model, building and fix model , rapid prototyping model, incremental model, fountain model. These methodologies helps to successful delivery of product, however two methodologies can also be combined like VU process model combines waterfall and spiral model. 5.1 Waterfall model: Page | 44
  • 45. In this approach, we see that processes flows in a downward fashion from requirement phase to accepting phase which meets to client satisfaction. Requirements phase collects software specifications, functional and non functional requirements in SRS (software requirement specification) document of VU final project. Analysis phase analyzes cases and work plan on the basis of software requirement phase that covers use case scenarios up to methodology and work plan. Design phase goes through with flow charts, algorithms and GUI on the basis of analysis phase. Coding phase generates the actual logic of the application and provide functionality to the system. The system logic is tested if it is working as it is as in designing phase. Finally, client acceptance phase verify if application meets to the client’s requirement. 5.2 Spiral model: Spiral model overcomes the cons of waterfall model by adding risk analysis to its phase and these phases are iteratively followed by one after another in order to avoid maximum risk during software development. By Iteratively followed means that task move through four processes many times until quality ensured. Planning phase covers scope, requirements and functionality of the system. Second phase Risk analysis is most important phase of spiral model which defines cost-effective strategies in project development. Risk at any stage indicates that requirements must be reviewed to find out solution for the problem by given data in the previous phase before proceed to the next. Development phase covers the designing, coding and testing and finally application is delivered to client for further evaluation. In case of any change it is required to iterate the application from all four phases again. That’s why it is called spiral model. Page | 45
  • 46. 5.3 VU Process Model (combination of waterfall and spiral model): 2.3 Reasons for choosing the Methodology Combination of both waterfall and spiral model is called hybrid approach of system development that maximize the quality of system and minimize the disadvantages and risk. VU process model has four phases which further divides the waterfall processes. These processes are in iteration until system meets to client requirement. Page | 46
  • 47. 3. Work Plan (Use MS Project to create Schedule/Work Plan) Page | 47
  • 48. Project Structure 2.3.1 Team Structure Page | 48
  • 49. 2.3.2 Project Schedule (Submission Calendar) The project schedule is one of the most important parts of the project development plan. The plan includes: • Scheduling of development activities and • Scheduling of project resources, particularly people The project development plan describes in detail: • how the project manager plans to develop the project • what resources will be required and • how these resources will be applied No matter how well the project schedule is prepared, that schedule is useless unless it is adhered to. It is the project Page | 49 Job Title Description 1 Project Manager To manage all processes in the project 2 SW Designer To design the models and diagrams that helps the programmer in implementation phase. 3 Testers One from outside the team and the other from the inside the project team. 4 programmer Professional in ASP.NET,PHP,JAVA etc and SQL Well versed in web designing and database designing. To programming the processes of the project. 5 SW Analyst To analyze the requirements of On-Line Exam System.
  • 50. manager's responsibility to withstand pressure and to assure that the project is developed in an orderly fashion, according to the schedule. Whenever circumstances change, the project schedule should then be updated to reflect the new situation. A schedule is a list of: – Activities and – Anticipated time of implementation of these activities There are many ways of representing a schedule: – Lists of activities, – Diagrams, – Graphs etc. The most common methods of schedule representation are : – precedence network diagrams (such as PERT), – Gantt charts and – lists of milestones The goal of a software project schedule is to determine the duration of the software project and the phases with in the project. A software project schedule enables you to distribute the estimated effort to be spent in performing the critical activities. Gantt chart: The Submission Calendar for this project is hereunder: Page | 50
  • 52. CHAPTER 3 Designing the Project Page | 52
  • 53. 3.1 Introduction (of analysis and design phase) INTRODUCTION: Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic world, the subject System Analysis and Design (SAD) mainly deals with the software development activities. System Analysis: Systems analysis is a process of collecting factual data, understand the processes involved, identifying problems and recommending feasible suggestions for improving the system functioning. This involves studying the business processes, gathering operational data, understand the information flow, finding out bottlenecks and evolving solutions for overcoming the weaknesses of the system so as to achieve the organizational goals. System Analysis also includes sub-dividing of complex process involving the entire system, identification of data store and manual processes. The major objectives of systems analysis are to find answers for each business process: What is being done, How is it being done, who is doing it, When is he doing it, Why is it being done and How can it be improved? It is Page | 53
  • 54. more of a thinking process and involves the creative skills of the System Analyst. It attempts to give birth to a new efficient system that satisfies the current needs of the user and has scope for future growth within the organizational constraints. The result of this process is a logical system design. Systems analysis is an iterative process that continues until a preferred and acceptable solution emerges. System analysis is the way of studying a system with an eye on solving its problem using computer. It is the most essential part of the development of a project of a system analysis. System analysis consists of system element, process and technology. To analyze a system, has to study the systems in details. The analyst has to understand the functioning and concept of the system in detail, before design the appropriate computer based system that will meet all the requirements of the existing system. The system analyst has to carry out a customary approach to use the computer for problem solving. System analysis includes the following basic concepts: 1.Preliminary investigation 2.Requirements specification 3.Feasibility study 4.Detailed investigation 5.Drawing up of strategies 6.Design and coding 7.Testing and training 8.Implementation The above steps constitute the logical framework for the system analysis. After the preliminary investigation and feasibility study, the scope of the Page | 54
  • 55. defined and comparable items are set forth and hence detailed investigation is executed. This allows the system analyst to comprehend the full scope of the project. Soon after the implementation of the newly developed system, followed by the training of the users, the system analysis is included. System Design: Based on the user requirements and the detailed analysis of the existing system, the new system must be designed. This is the phase of system designing. It is the most crucial phase in the developments of a system. The logical system design arrived at as a result of systems analysis is converted into physical system design. Normally, the design proceeds in two stages: • Preliminary or General Design • Structured or Detailed Design Preliminary or General Design: In the preliminary or general de-sign, the features of the new system are specified. The costs of implementing these features and the benefits to be derived are estimated. If the project is still considered to be feasible, we move to the de-tailed design stage. Structured or Detailed Design: Page | 55
  • 56. In the detailed design stage, computer oriented work begins in earnest. At this stage, the design of the system becomes more structured. Structure design is a blue print of a computer system solution to a given problem having the same components and inter-relationships among the same components as the original problem. Input, output, databases, forms, codification schemes and processing specifications are drawn up in de-tail. In the design stage, the programming language and the hard-ware and software platform in which the new system will run are also decided. There are several tools and techniques used for describing the sys-tem design of the system. These tools and techniques are: • Flowchart • Data flow diagram (DFD) • Data dictionary • Structured English • Decision table • Decision tree The system design involves: i. Defining precisely the required system output. ii. Determining the data requirement for producing the output. iii. Determining the medium and format of files and databases. iv. Devising processing methods and use of software to produce output. v. Determine the methods of data capture and data input. Page | 56
  • 57. vi. Designing Input forms. vii. Designing Codification Schemes. viii. Detailed manual procedures. ix. Documenting the Design. 3.2 Purpose: This system will be an Examination System (SMS-based examination) for an Educational Institute (University, College, and School) .This system will be designed to reduce the scarcity of resources (computer systems) that arise during the processing of existing online examination system. In this system the mobiles phone technology will be used to allow the Students to attend the exam through GSM mobile (global system for mobile communication) using SMS (Short messaging services) facility. The system will also provide the online interface to the student to attend the examination. System will allow the faculty member to create and present the question in the form of MCQs and the students will be able to answer through the SMS (GSM mobile will be used for this feature) and online interface. 3.3 Scope of Project: This system will be an Examination System (SMS-based examination) for an Educational Institute (University, College, and School) .This system will be designed to reduce the scarcity of resources (computer systems) that arise during the processing of existing online examination system. Page | 57
  • 58. In this system the mobiles phone technology will be used to allow the Students to attend the exam through GSM mobile (global system for mobile communication) using SMS (Short messaging services) facility. The system will also provide the online interface to the student to attend the examination. System will allow the faculty member to create and present the question in the form of MCQs and the students will be able to answer through the SMS (GSM mobile will be used for this feature) and online interface. Definitions, Acronyms and Abbreviations GSM stands for Global System for Mobile Communication SMS stands for Short Message Service MCQ’s stands for Multiple Choice Questions DB stands for Database PHP: Hypertext Preprocessor HTML: Hyper Text Markup Language Bootstrap: Sleek, intuitive, and powerful front-end framework for faster and easier web development CSS: Cascading Style Sheet MySQL: My Structured Query Language; MySQL is a free of charge relational database. It is open source software and a quality database server. MySQL supports most of the ANSI standard SQL92. Administrator: Administrator is user of this system that manages the Faculty, Students, Examination, Results and Degree Programs. Page | 58
  • 59. Faculty: Faculty is a user of this system that manages the questions and prepares the quizzes. Student: Student is a user of this system that takes quiz and solves that quiz. Application Server: An application server is a provider of Service for the clients of the application in a computer network Which is dedicated to running certain software application? An application server is a component-based product. It resides In the middle-tier of a server centric architecture. Its Functionality includes providing middleware services for security and state maintenance, along with data access and persistence. Browser: A web browse, apart from being used in computers is also increasingly used on other devices as well. It helps to locate, display and interact with web pages and other resources on the Internet. A Browser is also used to access resources on networks other than internet; this includes local area networks (LAN), home networks, and the same computer on which the browser is running. Framework: A frame work can be described as reusable Software that implements a generic solution to a generalized problem. It provides facilities which are useful to different application programs. Framework helps designers to concentrate their effort in fulfilling the software requirements rather than working on low level details for providing the working system. GUI: A graphical user interface(GUI) provides a way for humans to interact with computers. It uses windows, icons and menus and it can be manipulated by a mouse (and to a little extent by keyboard) Page | 59
  • 60. Architecture Design Diagram Student/Teacher’s Interface Page | 60 Mobile GatewayMobile Gateway MobiQuiz Database MobiQuiz Database ASP.NET/JSP/PHP /C# Engine MobiQuizMobiQuiz LoggingLogging Role checkingRole checking Form & Menu ManagerForm & Menu Manager Data ValidationData Validation Security ManagerSecurity Manager Data Import & ExportData Import & Export Transaction Management for MobiQuiz DatabaseTransaction Management for MobiQuiz Database ODBC/JDBC/DAOODBC/JDBC/DAO
  • 61. Sequence Diagrams (To be developed using Rational Rose) Page | 61
  • 65. Class Diagram Page | 65 1….* 0….* 1….* 1….* 1 1 1….* 1 1….* 1 1….* 1….* Faculty showTeacherInfo() : void #perpareExam() #declareResult() facId:int fName: varchar fQual: varchar fSal, :int rank: varchar Student +showStudentInfo() : void +Register() +answerQuiz -stId:int -stName: varchar - stFName: varchar - stAdres: varchar -stPhone:int -prName: varchar -curSem,:small int -cgpa:int Administrator +showStudentInfo () : void - Admin_ID:int - F_name : varchar - l_name : varchar Question +getquestionID().int +setquestionID().int +getQuestion().string +setQuetionD().string +getchoices().string +setchoices().string +getcorrectchoice() +setcorrectchoice() -questionID:int -quistion: char -choices: char -correctchoice:char User +showStudentInfo() : void -username:varchar - password: varchar -PhoneNo: int Result +getStudentID() +setStuentID() +getExamID() +setExamID() +calculateCgpa() -StudentID:int -ExamID:int -Cgpa:int -phonNo: varchar SMS +getStudentID().int +getPoneNo().int +sendResutls().string - TextMessage:stringCourses showAllQuizes(): string showGradeSheet(): string -crCode:int -crName: varchar - crCredits: varchar -prName: varchar Quiz +getquizID():int +setquizID():int +getquizNameID():int +setquizName():varchar +getTimerPerQuiz().dat etime +set TimerPerQuiz() +getTimerPerQuestion( ) +setTimerPerQuestion( ) -quizID:int -quizName: varchar timePerQuestion:dateti -timePerQuiz:datetime
  • 68. Homepage Login: Interface for login to MobiQuiz System is hereunder. Page | 68
  • 72. Adding new faculty members: Page | 72
  • 79. Assigning courses to faculty: Page | 79
  • 84. Adding new degree programs: Page | 84
  • 88. List of Assigned courses to faculty: Page | 88
  • 92. Results in student panel Page | 92
  • 94. Login Page for Exams Page | 94
  • 97. Page | 97 Mobile GatewayMobile Gateway MobiQuiz Database MobiQuiz Database ASP.NET/JSP/PHP /C# Engine MobiQuizMobiQuiz LoggingLogging Role checkingRole checking Form & Menu ManagerForm & Menu Manager Data ValidationData Validation Security ManagerSecurity Manager Data Import & ExportData Import & Export Transaction Management for MobiQuiz DatabaseTransaction Management for MobiQuiz Database ODBC/JDBC/DAOODBC/JDBC/DAO
  • 98. 1. Activity Diagram User Login Activity Diagram Page | 98 Enter Username & Password
  • 99. Invalid Username & Password Valid Exam Creation Activity Diagram Page | 99 Submit Username & Password Chec k validi ty Redirect to Welcome Screen Login Select Subject & lecture Create Exam Edit Exam Modify Quiz/add
  • 100. Add more quiz Done adding exam Solve Exam Activity Diagram Until timeout Page | 100 Set title Add Quiz Add ed Put Correct Ans Add Choices Login Take Exam/attend exam Answer Quiz/Solve Submit Exam
  • 101. Exam Mark/ Result Activity Diagram Page | 101 Faculty View Exam View Solved Exam Mark Exam Declare Results
  • 102. Registration Activity Diagram Page | 102 Open Registration form Enter User detail Submit Form
  • 105. 1. Overview Under this Deployment Plan of MobiQuiz we will provide necessary information about MobiQuiz as a comprehensive online examination system that allows you to create exam and conduct web based and also sms based examination. It contains the planning, resources, implementation, installation and training plan will be fully presented with equipped information that is relevant to the entire deployment plan. 2. Deployment Planning The following are the activities performed in deploying the product to the customer. • Coding- Process whereby the physical design specifications created by system developers are turned into working computer code by the programming team . • Testing- Begin as coding for each module is completed. 1. Software Testing : Check each module’s proper operation Page | 105
  • 106. • Documentation: • System documentation  Detailed information about a system’s design specifications, its internal workings, and its functionality  Internal (part of the program source code)  External (all diagramming techniques such as data flow diagrams and entity relationship diagrams) • User documentation  Manual containing information about how the application system works and how to use it.  Quick reference guide, user’s guide, release description (for a new version), system’s administrator’s guide, index, help, etc. • User training  Group presentations  Web-based tutorial (self-paced)  Class-integrated Page | 106
  • 107. • Frequency of training  Initial (new system)  Subsequent training  System update  System migration (new training) • Support  Answer user questions about system  Assist with wide range of computer needs and system access  Provided through a help desk and online  Technical support • Maintenance o Environmental care  Endpoints of LAN (e.g., cabling) to be placed in a secure wiring closet  Safety for staff and users  Hardware safety o System backup  Back up the files daily and weekly  Make more than one backup copy  Keep one backup copy outside of the agency for security purposes  Make sure to have UPS device Page | 107
  • 108. • System security • Install firewalls to protect the system/network from breaching into by computer hackers • Install virus protection software • Install locking devices to prevent theft of hardware • Have a security system to protect theft of facilities and materials • Database Maintenance  Cataloging database  Other databases, as applicable 3. Resources 3.1 Facilities • The facilities required to test and deploy the software are the following: • USB Data Cable that connects the SMS server to GSM Modem (for the transmission of data from PC to mobile phone), to send data directly to the mobile phone. Page | 108
  • 109. 3.2 Hardware • Computer system • Gsm enabled mobile phone • A Modem with USB Cable for the transmission of data from PC to mobile phone. 3.3 Support Documentation: • We will provide a user manual, • quick reference guide, • and online assistance 4. Training : The instructor will show how the software works to the end- users which are: the faculty members and the students. The programmer and developer will conduct two separate training seminars, one for the faculty members and the other one is for the student. First seminar for Faculty members: This will be the first seminar to conduct because they are the one who will use the website. The instructor will teach them how to navigate on the website, how to check assigned courses Page | 109
  • 110. to them, how to add questions and quiz for exam creation and how to view submitted exam and mark the exam. Training for the students: The second training seminar is for the students. The instructor will teach them how to navigate in the website and how to interact with exam system with their mobiles. The facilitator and support personnel must help in the training of the students and must be knowledge on how to navigate the site on different models of the mobile phones. Page | 110
  • 112. APPENDIX A.1 Introduction A.1.1. Purpose of the Document The purpose of this Software Requirements Specification (SRS) document is to give an overview of the requirements for Mobi Quiz. The SRS will define how the final product will be envisioned and the characteristics or functionality that is desired but not absolutely necessary 1.3 Scope of Project: This system will be an Examination System (SMS-based examination) for an Educational Institute (University, College, and School) .This system will be designed to reduce the scarcity of resources (computer systems) that arise during the processing of existing online examination system. In this system the mobiles phone technology will be used to allow the Students to attend the exam through GSM mobile (global system for mobile communication) using SMS (Short messaging services) facility. The system will also provide the online interface to the student to attend the examination. System will allow the faculty member to create and present the question in the form of MCQs and the students will be able to answer through the SMS (GSM mobile will be used for this feature) and online interface. Page | 112
  • 113. Definitions, Acronyms and Abbreviations GSM stands for Global System for Mobile Communication SMS stands for Short Message Service MCQ’s stands for Multiple Choice Questions DB stands for Database PHP: Hypertext Preprocessor HTML: Hyper Text Markup Language Bootstrap: Sleek, intuitive, and powerful front-end framework for faster and easier web development CSS: Cascading Style Sheet MySQL: My Structured Query Language; MySQL is a free of charge relational database. It is open source software and a quality database server. MySQL supports most of the ANSI standard SQL92. Administrator: Administrator is user of this system that manages the Faculty, Students, Examination, Results and Degree Programs. Faculty: Faculty is a user of this system that manages the questions and prepares the quizzes. Student: Student is a user of this system that takes quiz and solves that quiz. Page | 113
  • 114. Application Server: An application server is a provider of Service for the clients of the application in a computer network Which is dedicated to running certain software application? An application server is a component-based product. It resides In the middle-tier of a server centric architecture. Its Functionality includes providing middleware services for security and state maintenance, along with data access and persistence. Browser: A web browse, apart from being used in computers is also increasingly used on other devices as well. It helps to locate, display and interact with web pages and other resources on the Internet. A Browser is also used to access resources on networks other than internet; this includes local area networks (LAN), home networks, and the same computer on which the browser is running. Framework: A frame work can be described as reusable Software that implements a generic solution to a generalized problem. It provides facilities which are useful to different application programs. Framework helps designers to concentrate their effort in fulfilling the software requirements rather than working on low level details for providing the working system. JavaScript: JavaScript equips web developers to turn static HTML pages into interactive applications. JavaScript can control every aspect of a Web page, including the contents, forms and design. JavaScript accesses this information via the DOM (document object model, a standard of the World-Wide Web Consortium for describing HTML and XML documents) Page | 114
  • 115. This document describes the software requirements for MobiQuiz online examination system. Section 2 gives the detailed description of functional and nonfunctional requirements. Functional Requirements for MobiQuiz are as follows….. The Administrator should provide the following functionally…..  User Management (Add, Edit, Delete, Block/Unblock and List View of Users).  Faculty Management (Add, Edit, Delete, Block/Unblock and List View of Faculty Members).  Course Management (Add, Edit, Delete, Block/Unblock and List View of Courses).  Student Management (Add, Edit, Delete, Block/Unblock and List View of Students).  Assign Course(s) of degree program to the faculty members in particular semester.  Add new Semester in the application.  Degree program management: (Add, Edit, Delete, Block/Unblock and List View of Degree programs).  Enroll/add students to the course in particular semester of degree program. The Faculty Member should provide the following functionally…..  Create questions relevant to the subject and on lecture based.  Create Quiz by using existing questions. Page | 115
  • 116.  Set flag with each quiz to restrict student access to the Quiz.  View questions and students given answer.  Initialize checking process of particular quiz of the course.  View students result in a list form.  Publish result to the students. Result will be published in student’s account and SMS will also be sent to the students. The Student’s interface should provide the following functionally…..  View grade book and current registered courses.  View history of Quiz and results.  Student can login using its mobile or online interface.  Student can send request to start paper using SMS. (GSM mobile will be used for this feature.)  Students can answer MCQs using SMS. (GSM mobile will be used for this feature.) Non Functional Requirements: The non functional requirements put constraints on the implementation of functional requirements and they provide the criteria to judge the operation of the system. So although building the software in accordance to the non functional requirements increases the complexity of the development process butit is essential for high quality software. The non functional requirements of MobiQuiz are as follows: Security: System will allow only valid users to access their accounts. There are three types of users of this system namely Page | 116
  • 117. Administrator, Student and faculty member. The security is based upon Mobile Number and password for the student. Maintainability: It is very important for this system suppose now this system is dealing with only MCQ’s in future it can be extended to other type of question answer. By extending it to true false question in MobiQuiz the amount of Questions can increase in future. So the maintainability should be high. Availability: Systems availability is of high importance during the conduction of online examination. Availability of the system depends upon the availability of the web server, internet connection. System is intended for examination time. Portability: The system should be able to communicate with web browser and also with GSM mobile phone not with TDMA and CDMA. Specific Requirements Internal and External Interface Requirements: Login: Page | 117 Preconditions User wants to test the login of administrator on the system. Actions Enter id & Password Click login System will check the info and log the user Expected Results Administrator login the system Tested By: Student Result: Tested
  • 118. User Management: Faculty Management: Page | 118 Preconditions User wants to test the User management by the administrator. Actions Administrator takes the all data of the Users Examine the Data Apply necessary change on data (if required) Administrator manages the all data of the users Expected Results All users are managed by Administrator Tested By: Student Result: Tested
  • 119. Course Management: Add New Semester: Page | 119 Preconditions User wants to test the Faculty management by the administrator. Actions Administrator takes the all data of the Faculty Examine the Data Apply necessary change on data (if required) Administrator manages the all data of the Faculty Expected Results All Faculty is managed by Administrator Tested By: Student Result: Tested Preconditions User wants to test the Course management by the administrator. Actions Administrator takes the all data of the Courses Examine the Data Apply necessary change on data (if required) Administrator manages the all data of the Courses Expected Results All Courses are managed by Administrator Tested By: Student Result: Tested
  • 120. Enroll Students to Course: Create Questions: Page | 120 Preconditions User wants to test the Add New Semester by the administrator. Actions Administrator takes the all data of the Students Checks the requirements of the Add New semester If student satisfy the requirements Administrator Add the New semester for the student Expected Results New Semester is added by Administrator Tested By: Student Result: Tested Preconditions User wants to test the Enrollments to Course by the administrator. Actions Administrator takes the all data of Student Checks the requirements of the Enrollments If student satisfy the requirements Administrator Enroll the Students to course Expected Results Administrator Enroll the Student to the course Tested By: Student Result: Tested
  • 121. Create Quiz: Page | 121 Preconditions User wants to test the Create Question of the Course by the Faculty. Actions Faculty takes the data of the Courses by Administrator Faculty Checks the Enrolled Courses Faculty Create the Question of the Enrolled Courses Expected Results Questions of the Enrolled Courses are created by the Faculty Tested By: Student Result: Tested Preconditions User wants to test the Create Quiz of the Course by the Faculty. Actions Faculty takes the data of the Question of the Enrolled Course Faculty Examine the Question data Faculty Create the Quizzes Expected Results Quizzes of the Enrolled Courses are created by the Faculty Tested By: Student Result: Tested
  • 122. Checking the Exam: Publish Student Result: Login: Page | 122 Preconditions User wants to test the Checking of Examination by the Faculty. Actions Faculty takes the data of Answers of the Quizzes by Student Faculty Checks the Student Given Answers Faculty Marks the Quizzes Expected Results Examination is Checked by the Faculty Tested By: Student Result: Tested Preconditions User wants to test the Publish of the Student Result by the Faculty. Actions Faculty Checks the Student Given Answers Faculty Marks the Quizzes Faculty Creates the Students Result Faculty Publish the Students Result Expected Results Result of Student is Published by the Faculty Tested By: Student Result: Tested
  • 123. Start Paper: Answers the Question: Page | 123 Preconditions User wants to test the login of Student on the system. Actions Enter id & Password Click login System will check the info and log the user Expected Results Student login the system Tested By: Student Result: Tested Preconditions User wants to test the Start of Paper after login. Actions Student Select the Enrolled Course Takes the Enrolled Course Quiz Student Click the Start Button Expected Results The Paper of Student is Started Tested By: Student Result: Tested Preconditions User wants to test the Giving the Answers of the Quiz. Actions Students Start the Quiz Click on the correct option of the Question Click on the Save Button. Expected Results Student Gives the Answer of the Questions. Tested By: Student Result: Tested
  • 124. View Grade Book: Page | 124 Preconditions User wants to test the View Grade book of the Student. Actions Faculty Publish the Student Result Students Click on Result Button Student Views the Result Expected Results Student Views his Results Tested By: Student Result: Tested