The document is a project report submitted by Praveen Patel for the development of an online examination system. It discusses the technologies used such as Java, servlets, and Oracle database. It provides requirements for the system including functional and non-functional requirements. It also discusses the design of the system using use case and class diagrams. The development was done using the waterfall model. Various features of the system are described along with testing and validation. Finally, it provides an estimation of the project cost using function point analysis.
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
online examination management system
1. A Project Report
On
Content Management For
Online Examination
Submitted in partial fulfilment of
the requirements for the award of the degree of
Bachelor of Technology
in
Computer Science & Engineering
Submitted by
Praveen Patel
MUR1000192
Under the guidance of
Mr. Ankit Saraswat
Session 2013-2014
Department of Computer Science & Engineering
Mewar University
Gangrar, Chittorgarh, Rajasthan, India-312001
2. Recommendation
This is to certify that the Project report on “Content Management For
Online Examination” is a bonafide work carried out by Praveen Patel
in partial fulfillment of the award of the degree of Bachelor of Technology in
Computer Science and Engineering of Mewar University, Chittorgarh, dur-
ing the year 2014. It is certified that all corrections / suggestions indicated
during reviews have been incorporated in the report. The Project report
has been approved as it satisfies the academic requirements in respect of the
Project report prescribed for the Bachelor of Technology Degree.
Co-Guide
Mr. Gaurav Kakhani
Assistant Professor,
Department of CSE,
Mewar University, Chittorgarh
Head of the Department
Mr. B. L. Pal
Assistant Professor & Head,
Department of CSE,
Mewar University, Chittorgarh
Faculty of Engineering & Technology
Department of(CSE)
Mewar University
Chittorgarh (Raj.)
July-2014
i
3. Acknowledgements
The project report presented here is the through work of me with proper
guidence of my project guide. This is presented before you after rigorous
studies and experimentation and we hope that it is applaud by sll.
I am highly indebted to Mr. Vinod Kumar Meena my tutor and project
guide for providing valuble theory concepts for understanding the complete
java and it’s fremwork. He has guided me throughout the documentation of
this project.
I would also like to thank Mr. Ankit Saraswat our co-project guide
to help us in practical implementation of the project. We would make this
project a running one due to his high efforts.
I would also like to thanks my university project co-ordinator Mr. Gaurav
Kakhani for his efforts to build this project in a proper way. I would also
like to thanks Mr. B.L. Pal our HOD for supervising all the works related
to this project.
I would like to express my gratitude towards my parents and member of
Freedu Solution Pvt Ltd. for their kind co-operation and encouragement
which help me in completion of this project.
At last I would like to thank all my friends who contributed directly or
indirectly to this project.
ii
4. Abstract
Online Examination System is used for conducting online objective test, the
test will be customized such that system will have automated checking of
answers based on the user interaction. This project helps the faculties to
create their own test based on the subject and for students we make online
assessment facility. This also helps the instruction to perform online quiz,
test paper such that the academic performance of the students can be in-
creased and can take the feedback from both students and parents.
Exam System is very useful for Educational Institute to prepare an exam,
safe the time that will take to check the paper and prepare mark sheets. It
will help the Institute to testing of students and develop their skills. But
the disadvantages for this system, it takes a lot of times when you prepare
the exam at the first time for usage. And we are needs number of computers
with the same number of students.
iii
9. Organisation Profile
Freedu Solution Pvt.Ltd believe in imparting education to everyone, be-
cause we all deserve it. We are not asking for money in return but a better
society to live in. Freedu is an online venture by the students of IIT Jodhpur
to help the students get premium quality education without paying even a
single penny from their pocket. Freedu is an idea nourished so well, which is
intended to change the course of education stream in India. We are inbuated
at Innovation and Incubation centre IIT Jodhpur, Rajasthan, India and fi-
nancially supported by Government of Rajasthan
Freedu solution business serves the entire spectrum of free education and
placement requirements across all college students by provideing them Digi-
tal Content of & Learning Solutions.
Freedu Solution Pvt.Ltd covers the entire spectrum of education and in-
ternship & palcement requirements across all colleges, individuals. Through
our programmes within college premises for a batch of students. All students
get a valid While doing Online Courses, solving questions in Question Bank
or taking Quizzes you will earn Coins and Points. Coins are Freedu currency.
They represent economic value of your performance. Points are representa-
tion of your academic quotient. They will help in determining your rank and
performances in freedu community will improve your college in positioning
itself better for prospective campus recruiters.
As an Online Test system providers, we are offering
• Customized Examination procedure
• Exam participants log in and profile management
• Multiple questions style layouts
• Exam Session Management
• Accurate result generation
• Reports
• Data Security
viii
10. Chapter 1
Introduction
1.1 Content Management System
CMS became a buzz word in the web development industry because of its
benefits. CMS stands for Content Management System. It is a term and
has not been endorsed with a solid definition. A CMS can have multiple
meanings depending on the scenarios and the person’s or project objectives.
At the time of this writing, for most scenarios, when someone in the web
development industry is talking about CMS (Content Management System),
or ECMS (Enterprise Content Management System), he / she is more likely
referring to either the first or second definition below. The definition of a
CMS is an application (more likely web-based), that provides capabilities for
multiple users with different permission levels to manage (all or a section
of) content, data or information of a website project, or internet / intranet
application.
Managing content refers to creating, editing, archiving, publishing, collabo-
rating on, reporting, distributing website content, data and information.
An example of a CMS application is a Web Application that provides the
following administration, control panel or website management functionali-
ties:
• Create, Edit, Publish, Archive web pages
• Create, Edit, Publish, Archive articles
• Create, Edit, Publish, Archive press releases
Our online Exam Management system also takes into account practical
exams for different subjects and gives the option to define User Profile
1
11. Figure 1.1: CMS as Total Sample
Figure 1.2: Open Source Sample
1.2 About Online Examination System:
1.2.1 Managing students online
The impact of time and place may cause anxieties for some lecturers as well
as some students. The remoteness of the online learning environment can
generate concerns about plagiarism and assessment of collaborative work. If
courses are to be offered internationally, there may be further issues relating
to language, culture, pedagogical assumptions, as well as transferability and
accreditation.
Online examination time is mostly front-loaded; getting collaborative
group work established is usually more demanding than keeping it active
2
12. Table 1.1: For Open sourse CMS
and useful.
For the new Online Examination System, examination overload can be
an off-putting experience. However, overload is mostly an “early adopter”
phenomenon and can be spotted by three basic problems (Mason, 2000):
• too many messages (probably also true of student overload),
• messages directed solely at the examination rather than amongst stu-
dent groups ambiguities about examination responsibilities (which con-
ferences, frequency of log-ons, pastoral and technical support expected)
• At the start, it can often simply reflect a kind of suppressed interaction
on the part of the student that is opened up by provision of an on-
line outlet. The overwhelming demands can therefore settle down over
time as students become more selective about what and when they
communicate online.
A useful framework is to consider the learning management issues at var-
ious stages of the course, e.g. before, during and after the course or online
activity, as appropriate.
The peer-to-examination and peer-to-peer interactions made possible in
online learning can bring clear benefits in terms of overcoming isolation and
3
13. enhancing learning. The Online Examination System must take responsibil-
ity for choosing the types of communications, for encouraging and facilitating
social and educational interactions and for ensuring that participation is ap-
propriate and balanced. Pedagogical input and guidance will be a key task
for making sure the activities are initiated, steered, nurtured, monitored,
summarized and concluded effectively, including considerations of the role of
assessment.
With online courses, you can learn on your own schedule and even con-
tinue working a full-time job in the meantime. And because all your materi-
als will be in one placein your computereverything you need will be at your
fingertips when its time to communicate with teachers or fellow students.
Online courses are interactive, which means you will get feedback from your
instructors and peers, and possibly even more individualized attention as
well.
In our project, the student needs to register by giving the necessary details,
for the desired course. Once the registration is done successfully, the student
can avail the course. The student is given an user id and password using
which he can login and use the online system. He will then be taught via
video conferencing using which he can learn from any place (all he has to do
is just login with his username and password or Facebook/Gmail Account ).
Additional informative materials are also provided to the student.
Motivation
Online Exam Portel is being launched because a need for a destination that
is beneficial for both institutes and students. With this site, institutes can
register with us and we will organise online exam to juge a fate of student
ane show his improvement by staticaly based on his result basicaly oriented
for 4-5 exmas series. This site is an attempt to remove the existing flaws in
the manual system of conducting exams.
What is Online Exams System all about?
Online Exams System is a web application that establishes a network between
the institutes and the students. Institutes enter on the site the questions they
want in the exam. These questions are displayed as a test to the eligible stu-
dents. The answers enter by the students are then evaluated and their score
is calculated and saved. This score then can be accessed by the institutes to
determine the passes students or to evaluate their performance.
4
14. • To increase and manage student interaction in the classroom;
• To assess students understanding of a subject and misunderstanding of
any content in a lecture;
• To guide thinking and review the learning materials;
• To create an interface which will allow a large number of students to
participate and learn in a single classroom session and also create an
interface which will allow students from remote center to participate in
the classroom session conducted at some other place.
5
15. Chapter 2
Technology Used
2.1 Overview of Java Technology
Java was conceived by James Gosling, Patrick Naughton, Chris Warth, Ed
Frank and Mike Sheridan at Sun Microsystems[3] Inc.in 1991. It took 18
months to develop the first working version. This language was initially
called Oak but was renamed as Java in 1995. Between the initial implemen-
tation of Oak in the fall of 1992 and the public announcement of Java in the
spring of 1995, many more people contributed to the design and evolution of
the language[4].
The main properties of the Java, which made Java so popular, are as follows:
1 Managed memory model. No dangling pointers. No buffer overruns.
Much harder to create memory leaks than in C or C++.
2 Security. You can precisely control, what code can and what can’t do.
Private is private, you can’t e.g. set a private property of an object, if
you don’t have rights to.
3 Well standardized and portable, no problems with non-standard com-
pilers.
4 Huge standard library. Lots of third-party libraries.
5 High performance, great support for multicore.
6 Multi threaded
7 Architecture-Neutral
6
16. 8 Interpreted
9 Simple language, much fewer caveats and sharp-edges than in C++.
10 Distribute
The most striking feature of the language is that is a platform-neutral
language. Java is first programming language that is not tied to any par-
ticular hardware or operating system. Programs developed in Java can be
executed anywhere on any system.
2.1.1 Features Of Java
• Java is object-oriented language and supports encapsulation, inheri-
tance, polymorphism and dynamic binding, but does not support mul-
tiple inheritances. Everything in java is an object except some primitive
data types.
• Java is portable architecture neutral that is java programs once com-
piled can be executed on any machine that is enabled.
• JAVA is distributed in its approach and used for internet programming.
• Java is robust, secured, high performing and dynamic in nature.
• Java supports multi threading. There for different parts of the program
can be executed at the same time[5]
2.1.2 Java Environment
Java environment includes a large number of development tools and hun-
dreds of classes and methods. The development tools are the part of the
system known as Java Development Kit (JDK) and the classes are methods
are part of the Java standard library (JSL), also known as the Application
Programming Interface (API).
2.1.3 Java virtual machine
When we compile the code, java compiler creates machine code (byte code)
for a hypothetical machine called java virtual machine (jvm). The jvm will
execute the byte code and overcomes the issue of portability. The code is
written and compile for one machine and interpreted all other machines[7].
This machine is called java virtual machine.
7
17. 2.1.4 Application program interface
The Java standard library includes hundreds of classes and methods grouped
into several functional packages. Most commonly used packages are:
• Language support package: A collection of classes and methods re-
quired for implementing basic features of java.
• Utilities package: A collection of classes to provide utility functions
such as date and time functions.
• Input/Output package: A collection of classes required for input and
output manipulations.
• Networking package: A collection of classes for communication with
other computers via Internet.
• AWT package: The abstract window toolkit package contains classes
that implements platform independent graphical user interface.
• Applet package: This includes a set of classes that allows us to create
Java applets[8].
2.1.5 Java script
Java script is a general purpose, prototype based, object oriented scripting
language developed jointly by sun and Netscape and is meant for the WWW.
It is designed to be embedded in diverse applications and systems, without
consuming much memory[9]. Java script borrows most of its syntax from
java but also inherits from awk and Perl, with some indirect influence from
self in its object prototype system.
Java script is a high level scripting language that does not depend on or
expose particular machine representations or operating system services. It
provides automatic storage management, typically using a garbage collec-
tor[10].
2.1.6 Servlet
Servlets are modules that extend request/response-oriented servers, such as
Java-enabled web servers. For example, a Servlet might be responsible for
taking data in an HTML order-entry form and applying the business logic
used to update a company’s order database.
8
18. Figure 2.1: Servelet overview
Servlets are to servers what applets are to browsers. Unlike applets, how-
ever, servlets have no graphical user interface.
Servlets can be embedded in many different servers because the Servlet API,
which you use to write servlets, assumes nothing about the server’s envi-
ronment or protocol. Servlets have become most widely used within HTTP
servers; many web servers support the Servlet API.
2.1.7 Servlet Lifecycle
• Each Servlet has the same life cycle:
• A server loads and initializes the Servlet
• The Servlet handles zero or more client requests
• The server removes the Servlet
2.2 Oracle
2.2.1 Introduction
Oracle is a relational database management system, which organizes data in
the form of tables. Oracle is one of many database servers based on RDBMS
model, which manages a seer of data that attends three specific things-data
structures, data integrity and data manipulation. With oracle cooperative
server technology we can realize the benefits of open, relational systems for
all the applications. Oracle makes efficient use of all systems resources, on all
9
19. Figure 2.2: Servelet lifecycle
hardware architecture; to deliver unmatched performance, price performance
and scalability.
Distinct Feature Of Oracle
• Oracle is portable:
• Oracle is compatible:
10
20. Chapter 3
Software Requirement
Specification
3.1 Analysis Phase
Systems analysis is the study of sets of interacting entities, including com-
puter systems analysis. This field is closely related to operations research.
It is also ”an explicit formal inquiry carried out to help someone (referred to
as the decision maker) identify a better course of action and make a better
decision than he might otherwise have made.”
3.1.1 Functional Requirements
The purpose of a functional specification is to define the requirements to be
implemented by the software solution. Now, as business analysts, not all
aspects of our solutions are software-based. A perfectly legitimate solution
to a business problem could involve a business process change, organizational
change, or even a configuration adjustment. There are three sub modules in
this phase.
• Candidate module.
• Examiner module.
• Administrator module.
The functionality of each module is as follows
• Candidate module:
The candidate will login to the software and take his examination.
11
21. He can also check his previous examinations marks and his details.
The candidate will get result immediately after the completion of the
examination.
• Examiner module:
The database is prepared & loaded into the software. Selection for
examination can be done language wise by the examiner. The results
will be displayed immediately after completion of the examination.
• Administrator module:
The administrator collects all the results after successful completion of
the examination and sends to the head quarters as and when required.
3.1.2 Non-Functional Requirements
This section includes performance of the product that is set by user interac-
tion and studying the existing system of the organization. These are stated
in complete measurable terms, so that they can be verified during system
evaluation phase. Some of the performance requirements are stated below:
User Friendly:-
The system produced is user friendly, understandable and easy to use so that
the users of the system can easily learn to use the system. For this the system
is made menu-driven with well-documented programs.
Time Element (response and processing time):-
The response time of the system is very less and takes less time to execute
queries and triggers.
Robustness:-
The system will be able to handle undesirable situations and errors encoun-
tered at various levels e.g. if the user supplies invalid input for processing,
the system gracefully halts, displaying a message to the user indicating the
cause of the error and prompting him it enter the correct input.
Flexibility:-
The system is flexible in nature so that likely changes and alterations can
easily be made.
Moral and User Satisfaction:-
System will be able to satisfy the user requirements; this is the main and
12
22. conspicuous measure of the system performance. Also the system must raise
the moral of the user. The higher the moral, greater the expected work
performance level.
3.1.3 External Interfaces and Data Flow
This heading specifies the externally observable characteristics of the software
product. Several graphical tools are used to express the requirements of a
system rather than writing long lines of text. These are very effective tools
for use during the system analysis phase.
3.1.4 User Displays
These are extremely useful tools for interactive applications where fast re-
sponse is needed. The user displays consist of screens that help in designing
a menu driven system. The menus attached to the screens help in making a
system interactive and user friendly by providing an easy to use point and
click interface to the application. These menus consist of a list of options
from which the user can choose an action depending on the task to be per-
formed. So these forms or so called user displays is the key to the success of
the entire system.
The development of this project deals with the following environment
1 Hardware requirements
2 Software requirements
3.2 Hardware Requirements
The Manufacturing Optimization can be efficiently run on Pentium system
with at least 128 MB RAM and Hard disk drive having 20 GB, 14 inch
Samsung color monitor suits the information system operation.(A Printer is
required for hard copy output).
1. Pentium processor ——– 233 MHZ or above
2. RAM Capacity ——– 128MB
3. Hard Disk ——– 20GB
13
23. 3.3 Software Requirements
One of the most difficult tasks is that, the selection of the software, once
system requirement is known is determining whether a particular software
package fits the requirements. After initial selection further security is needed
to determine the desirability of particular software compared with other can-
didates. This section first summarizes the application requirement question
and then suggests more detailed comparisons.
• Operating System ——– Windows 7,8, Mac
• Web/Application Server ——– Java Web Server2.0, Tomcat5.0
• Database Server ——– Oracle
• Other Tools Technologies ——– Java ,JavaScript, HTML
14
24. Chapter 4
System Design
4.1 Design
The most creative and challenging phase of the life cycle is system design.
The term design describes a final system and the process by which it is
developed. It refers to the technical specifications that will be applied in
implementations of the candidate system. The design may be defined as
the process of applying various techniques and principles for the purpose of
defining a device, a process or a system with sufficient details to permit its
physical realization.
The designers goal is how the output is to be produced and in what format.
Samples of the output and input are also presented. Second input data and
database files have to be designed to meet the requirements of the proposed
output. The processing phases are handled through the program Construc-
tion and Testing. Finally, details related to justification of the system and
an estimate of the impact of the candidate system on the user and the or-
ganization are documented and evaluated by management as a step toward
implementation
The importance of software design can be stated in a single word Quality.
Design provides us with representations of software that can be assessed for
quality. Design is the only way where we can accurately translate a cus-
tomers requirements into a complete software product or system. Without
design we risk building an unstable system that might fail if small changes
are made. It may as well be difficult to test, or could be one whos quality
cant be tested. So it is an essential phase in the development of a software
product.
Data flow diagram is a structure analysis tool that is used for graphical
representation of Data processes through any organization. The data flow
15
25. approach emphasis on the logic underlying the system, by using combination
of only 4 symbols. It follows a top down approach. A full description of
a system actually consists of set of DFD s, which comprises of various lev-
els. And initial over view model is exploded lower level diagrams that show
additional feature of the system. Further each process can be broken down
into a more detailed DFD. This occurs repeatedly until sufficient details are
described.
Table 4.1: User Table
4.2 Overview of Use Case Diagrams
Use case diagrams are usually referred to as behavior diagrams used to de-
scribe a set of actions (use cases) that some system or systems (subject)
should or can perform in collaboration with one or more external users of
the system (actors). Each use case should provide some observable and valu-
able result to the actors or other stakeholders of the system.
Note, that UML 2.0 to 2.4 specifications also described use case diagram
as a specialization of a class diagram, and class diagram is a structure dia-
gram.
Use case diagrams are in fact twofold - they are both behavior diagrams,
because they describe behavior of the system, and they are also structure
diagrams - as a special case of class diagrams where classifiers are restricted
to be either actors or use cases related to each other with associations.
16
27. Figure 4.2: All Component Class Diagram
Figure 4.3: User Diagram
18
28. Chapter 5
Development Model And
Implementation
5.1 Waterfall Model
System analysis first stage according to System Development Life Cycle
model. This System Analysis is a process that starts with the analyst[1].
Analysis is a detailed study of the various operations performed by a system
and their relationships within and outside the system. One aspect of analysis
is defining the boundaries of the system and determining whether or not a
candidate should consider other related systems. During analysis, data is
collected from the available files, decision points, and transactions handled
by the present system.
The waterfall model maintains that one should move to a phase only
when its preceding phase is completed and perfected. Phases of development
in the waterfall model are thus discrete, and there is no jumping back and
forth or overlap between them. Logical system models and tools are used in
analysis. Training, experience, and common sense are required for collection
of the information needed to do the analysis[2].
Advantages of using Waterfall Model
The waterfall model, as described above, offers numerous advantages for
software developers.
First, the staged development cycle enforces discipline: every phase has
a defined start and end point, and progress can be conclusively identified
19
29. Figure 5.1: Water fall cycle model
(through the use of milestones) by both vendor and client.
The emphasis on requirements and design before writing a single line
of code ensures minimal wastage of time and effort and reduces the risk of
schedule slippage, or of customer expectations not being met.
Getting the requirements and design out of the way first also improves
quality; it’s much easier to catch and correct possible flaws at the design stage
than at the testing stage, after all the components have been integrated and
tracking down specific errors is more complex.
Finally, because the first two phases end in the production of a formal
specification, the waterfall model can aid efficient knowledge transfer when
team members are dispersed in different locations.
20
30. 5.2 Features of Project
5.2.1 Existing system
In the existing system the patient or the user has to go the hospital with
his total prescriptions and everything. It is also very economic if you went
to multispeciality hospitals and also when you transfer or migrate from one
location to another location.
5.2.2 Proposed system
Online Examination Systeming can be defined as teaching, support, man-
agement and assessment of students on programmes of study that involve
a significant use of online technologies (TechLearn, 2000). Thus, at first
glance, Online Examination Systeming is only different to examinationing in
terms of the involvement of technology. Herein, however, are contained vital
differences in terms of time, distance and the specific technologies adopted,
and these all have implications for teaching staff. The capabilities required
can be quite different to face-to-face teaching both in terms of integrating
appropriate forms of technology into learning activities and in managing and
supporting students’ learning online.
This guidance note is aimed at teaching staff involved in designing and de-
livering online learning. There are unfortunately few ”quick tips and tricks”
for being an effective Online Examination System. The purpose of this guide
is to assist lecturers in identifying the main challenges of Online Examina-
tion Systeming and to consider the kinds of skills and capabilities that being
an effective Online Examination System might require. Awareness of the
distinctive considerations for Online Examination Systeming coupled with a
reflective approach to one’s own practice, should equip teaching staff with a
useful set of principles for designing and delivering teaching online. Oppor-
tunities and support at Warwick for developing online learning and teaching
are also outlined and further guidance resources provided.
21
31. 5.2.3 Assess learners’ Performance
Evaluate and continuously improve Online Examination Systeming support
Distinguishing a good online examination from an excellent one may rely on
an ability to deploy technologies effectively and imaginatively - a pedagogic
skill rather than a technical skill. Choosing between communication tech-
nologies such as email, conferencing, chat or video conferencing will depend
on what is appropriate to a given learning situation, rather than a knowledge
of the technologies per se. Information retrieval skills will determine whether
the examination makes good use of the easy access to web resources as well
as an ability to evaluate the quality of materials held on remote web sites.
Practice Test Offered in Review and Exam Mode
Students can take the practice test in Review or Exam mode.
• In the Review mode, students can take their own time in answering the
questions. The correct answer and explanations are shown immediately
after the students submit their response for each question.
• The Exam mode practice test is a timed practice that simulates the ac-
tual exam experience. The correct answer and explanations are shown
after completion of all questions.
5.3 Project description
Here we are discussing all the necessary requirements and objective of the
project .
5.3.1 Purpose of Project
The main purpose of a Content Management System (relating to web) is to
provide the capability for multiple users with different permission levels to
manage a website or a section of the content.
For example, you can take a website which has Articles, Blogs, Press
Releases, Store, Events and assign each section or a part of a section to
user(s) to create, edit, and archive.
• This take test in an efficient manner and no time wasting for checking
the paper. Provides facility to conduct online examination world wide.
22
32. Figure 5.2: Review model
• It saves time as it allows number of students to give the exam at a time.
The main objective of this test is to efficiently evaluate the candidate
thoroughly through a fully automated system that not only saves lot
of time but also gives fast results.
• It is automatically generated by the server.
• Administrator has a privilege to create, modify and delete the test
papers and its particular questions.
• User can register, login and give the test with his specific id, and can
see his performance as well according to their convenience and time.
The platform provide the most important questions types:
• Single Choice
• Multiple Choice
• True/False
• Yes/No
• Fill-in the Blanks
23
33. • Essay Questions
Figure 5.3: Web-based Assessment Authoring
5.3.2 Scope
Scope of this project is very broad in terms of other manually taking exams.
Few of them are
This can be used in educational institutions as well as in corporate world.
No restriction that examiner has to be present when the candidate takes the
test.
5.3.3 Features
• Secure
• Easy to use
• Reliable and accurate
• No need of examiner
5.3.4 Overview
The test application created for taking test has following stages
• Login
• Test
• Result
24
34. 5.3.5 Login
There is a quality login window because this is more secure than other login
forms as in a normal login window there are multiple logins available so that
more than one person can access to test with their individual login. It include
two login windows one for administrator and another one for student. Both
are can be login with their Facebook Id or Twitter Id also to make login easy
we use this method.
5.3.6 Test
Test page is the most creative and important page in this project. It consists
of 2 modules namely:
• Subject selection
• Utilities
5.3.7 Utilities
It includes skip and come back to the question afterwards if needed. Gives
the list of attempted and unattempted questions and can go to any ques-
tion directly and can either attempt or change the answer of the already
attempted question. He may be change after his answer or marks for review
before lock or submit the exam sheet User must sure about time remaining
and reviewing the question and answers.
5.3.8 Goals/Aim of the project
The main goal of or project is to reduce the burden of prescriptions and
provide all details in one card for the participant in Online exams .
25
35. Chapter 6
Testing and Validation
6.1 Introduction
Software testing is an investigation conducted to provide stakeholders with
information about the quality of the product or service under test. Software
testing can also provide an objective, independent view of the software to
allow the business to appreciate and understand the risks of software imple-
mentation. Test techniques include, but are not limited to the process of
executing a program or application with the intent of finding software bugs
(errors or other defects).Software testing can be stated as the process of val-
idating and verifying that a computer program/application/product meets
the requirements that guided its design and development,can be implemented
with the same characteristics,and satisfies the needs of stakeholders.Software
testing, depending on the testing method employed, can be implemented at
any time in the software development process. Traditionally most of the test
effort occurs after the requirements have been defined and the coding process
has been completed, but in the Agile approaches most of the test effort is
on-going. As such, the methodology of the test is governed by the chosen
software development methodology.
6.1.1 Testing Strategies
Testing is a set of activities that can be planned in advance and conducted
systematically. A strategy for software testing must accommodation low-
level tests that are necessary to verify that a small source code segment has
been correctly implemented as well as high-level tests that validate major
system functions against customer requirements
26
36. Software testing is one element of verification and validation. Verification
refers to the set of activities that ensure that software correctly implements as
specific function. Validation refers to a different set of activities that ensure
that the software that has been built is traceable to customer requirements.
The objective of software testing is to uncover errors. To fulfill this ob-
jective, a series of test steps unit, integration, validation and system tests
are planned and executed. Each test step is accomplished through a series
of systematic test technique that assist in the design of test cases. With
each testing step, the level of abstraction with which software is considered
is broadened.
Unit Testing
Unit testing focuses verification effort on the smallest unit of software design
the module. The unit test is always white box oriented. The tests that
occur as part of unit testing are testing the module interface, examining
the local data structures, testing the boundary conditions, executing all the
independent paths and testing error-handling paths.
Integration Testing
Integration testing is a systematic technique for constructing the program
structure while at the same time conducting tests to uncover errors associ-
ated with interfacing. Scope of testing summarizes the specific functional,
performance, and internal design characteristics that are to be tested. It
employs top-down testing and bottom-up testing methods for this case.
Software testing methods are traditionally divided into white- and black-
box testing. These two approaches are used to describe the point of view
that a test engineer takes when designing test cases.
1. White-box testing (also known as clear box testing, glass box testing,
transparent box testing and structural testing) tests internal structures
or workings of a program, as opposed to the functionality exposed to the
end-user. In white-box testing an internal perspective of the system,
as well as programming skills, are used to design test cases. The tester
chooses inputs to exercise paths through the code and determine the
appropriate outputs. This is analogous to testing nodes in a circuit,
e.g. in circuit testing (ICT). While white-box testing can be applied at
the unit, integration and system levels of the software testing process,
27
37. it is usually done at the unit level. It can test paths within a unit,
paths between units during integration, and between subsystems during
a system level test. Though this method of test design can uncover
many errors or problems, it might not detect unimplemented parts of
the specification or missing requirements.
2. Black-box testing treats the software as a ”black box”, examining
functionality without any knowledge of internal implementation. The
testers are only aware of what the software is supposed to do, not how
it does it.Black-box testing methods include: equivalence partitioning,
boundary value analysis, all-pairs testing, state transition tables, deci-
sion table testing, fuzz testing, model-based testing, use case testing,
exploratory testing and specification-based testing.
6.2 Design of test cases
I have discussed the various test case designs that can be implemented in
this project.
6.2.1 Login
The test case design of login is given below.
Description of test case Client will login
Pre-condition Project is running
Expected Result OK
Pass/Fail Criteria Pass when OK fail when other
Table 6.1: Login
6.2.2 Register
This test case checks whether client is able to register.
Description of test case Client will register itself
Pre-condition Project is running
Expected Result OK
Pass/Fail Criteria Pass when OK fail when other
Table 6.2: User Register
28
38. 6.2.3 Registration for Examnitation
This test case checks whether User is successfully registered for Online Ex-
amnitation.
Description of test case Examnitation Register
Pre-condition Project is running
Expected Result OK
Pass/Fail Criteria Pass when working OK,else fail
Table 6.3: Register for Examination
6.3 Validation
Validation[16] is the process of checking that a software system meets spec-
ifications and that it fulfills its intended purpose. It may also be referred
to as software quality control. It is normally the responsibility of software
testers as part of the software development life cycle.Validation checks that
the product design satisfies or fits the intended use (high-level checking), i.e.,
the software meets the user requirements. This is done through dynamic
testing and other forms of review.
Results of validation testing of test case scenarios are:-
Test Case ID Expected Result Actual Result Pass/Fail
6.2.1 Login OK Pass
6.2.2 Register OK Pass
6.2.3 User Register for Exam OK Pass
Table 6.4: Validation
6.4 Conclusion
In this chapter various test cases were designed and validated.The project
passed the all four test cases designed.
29
39. Chapter 7
Project Cost Estimation
Project cost Estimation was done under Function Point Analysis(FPA)
7.1 Function Point Analysis (FPA)
FPA was originally developed by Allan Albrecht in the late 1970s at IBM,
and has been further developed by the International Function Point Users
Group (IFPUG).
FPA provides a set of rules to functionally size the software work product.
This work product is the output of software new development and enhance-
ment projects for subsequent releases. It is the software which is migrated
to the production application at project implementation.
Function Point Analysis (FPA) is a method of Functional Size Measurement.
It assesses the functionality delivered to its users, based on the users exter-
nal view of the functional requirements. It measures the logical view of an
application as compared to measuring the physically implemented view or
the internal technical view.
FPA measures these functional requirements in terms of the:
• Business transactions (Processes) (e.g. Enquire on Customer Record)
that the user can perform using the software
• Business data (Data Groups) (e.g. Customer File) that the software
can store and access.
The activity of performing Function Point Analysis is frequently referred
to as a Function Point Count and it involves the identification, classifica-
tion and weighting of each of these Process and Data Group components.
The weighting’s are combined to give the Functional Size as an Unadjusted
30
40. Function Point Count (UFP). This is the Functional Size as defined by the
ISO/IEC standard 20926, the IFPUG CPM 4.3 and ISO/IEC 14143-1
Before IFPUG 4.3 FPA included an additional optional step that involves
assessing the technical and quality features embedded in the software prod-
uct and adjusting the Functional Size accordingly. The result is referred to
as the Adjusted Function Point Count (AFP) or the Product Size. IFPUG
no longer recommends this adjustment to measure functional size.
The Function Point Analysis technique is used to assess the functionality
delivered by software and an unadjusted function point (UFP) is the unit of
measurement
Once you have a Function Point count, you can use the resultant measure of
the software product, either on its own or combine it with other measures to
develop the following project performance indicators:
• The scope of the software development product (e.g. software units to
be delivered or worked on).
• Quality indicators (e.g. the number of defects per software unit).
• Productivity (e.g. the cost per software unit).
• Performance (e.g. staff resources per software unit).
SCOPE facilitates a better understanding of a software application by
displaying each functional area to be sized in a hierarchical tree display, thus
providing an easy to interpret map of the application itself.
31
42. Conclusion
This System provides facility to conduct online examination worldwide.
It saves time as it allows number of students to give the exam at a time and
displays the results as the test gets over, so no need to wait for the result.
It is automatically generated by the server. System is developed using Java
Platform that fully meets the objectives of the system for which it has been
developed. The system has reached a steady state where all bugs have been
eliminated.
The system is operated at a high level of efficiency and all the teachers
and user associated with the system understands its advantage. Adminis-
trator has a privilege to create, modify and delete the test papers and its
particular questions. User can register, login and give the test with his spe-
cific id, and can see the results as well.
33
43. Future Enhancement
The basic aim of the project was to pave way for a user-friendly and an
interactive session in the classroom for a better future. The task has been
successfully completed by the team and all the above mentioned features
and characteristics have been incorporated in the project. The future work
Figure 7.2: Examination control in Future
regarding this project can be:
• Add images with Questions for better understanding of questions.
• Polling should have editable options and a feature to add more choices
when needed, also students can optionally give their views in brief with
votes on same topic.
• Enable students to know their relative performance after each quiz.
• Teacher should able to view a Students performance for entire semester,
overall performance as well as performance in each quiz.
34
44. • Lastly, if the Instructor is physically unable to attend any lecture, he
can conduct the lecture remotely or have pre-planned activity for stu-
dents, which would be conducted automatically in absence of Instruc-
tor.
• Tutorials can be integrated into the application where in the student
can browse through the subject whenever required.
• Use GPS for giving quiz such that, no two near students gets the same
order.
• To implement batching algorithm so that access point will be more.
35
45. References
[1] H.M.DIETEL.P.J.DIETEL,Java How to Program,PhL, Second Edition,
page 169.
[2] Gray Cornett, Horstmann, Corel Java, Sunsoft Press, 1996.
[3] Grady Booch, Object Oriented Analysis and Design with Applications,
the Benjamin and Cummings, 1994.
[4] Baker, F. T. “Chief Programmer Team Management of Production Pro-
gramming,” IBM Systems Journal, 11(1), 1972.
[5] http://stackoverflow.com/questions/tagged/java
[6] http://www.javatpoint.com/encrypt-servlet.html
[7] http://www.ibm.com/developerworks/library
[8] http://www.java.sun.com/products/java
[9] http://www.javaworld.com/category/java-app-dev
36
46. Appendix I:User Manual
For running the project you have to use the following software’s and their
installation is been described as below:
1 Java Development Kit(JDK)
2 Eclipse IDE
3 Apache Tomcat Server
Java Development Kit(JDK)
• Step 1 Double click the JDK down loaded file, the executable extracts
the required Contents to the temporary directory and then License
agreement screen appears. On the license agreement page read and
accept the license and the click the next button.
• Step 2 The custom setup screen appears
• Step 3 Click on the change button to change the installation directory.
click on the “Ok” button. After clicking on the “Ok” button installation
begins:
• Step 4 In the next window installer asks for the installing the runtime
• Step 5 Click on next button install the J2SE runtime on your machine.
Next screen shows the browser selection
• Step 6 Once the installation is finished it shows you the final screen
indications the success. Now you have successfully installed J2SE on
your machine. Installer shows the following final confirmation window.
37
47. Eclipse
1 After the download completes, run the installer.
• For Windows, the installer executable file has the .exe extension. Double-
click the installer file to run it.
• For Solaris and Linux platforms, the installer file has the .sh extension.
For these platforms, you need to make the installer files executable by
using the following command: chmod +x ¡installer-file-name¿
2 To choose the tools and runtimes to install, perform the following steps
at the Welcome page of the installation wizard:
a Click Customize.
b In the Customize Installation dialog box, make your selections.
• Click OK
3 At the Welcome page of the installation wizard, click Next.
4 At the License agreement page, review the license agreement, click the
acceptance check box, and click Next.
5 At the Eclipse IDE installation page, do the following:
a Accept the default installation directory for the Eclipse IDE or specify
another directory. The installation directory must be empty and the
user profile you are using to run the installer must have read/write
permissions for this directory.
b Accept the default JDK installation to use with the Eclipse IDE or
select a different installation from the drop-down list. If the installation
wizard did not find a compatible JDK installation to use with the
Eclipse IDE, your JDK is not installed in the default location. In this
case, specify the path to an installed JDK and click Next, or cancel the
current installation. After installing the required JDK version you can
restart the installation.
6 If the GlassFish Server Open Source Edition 3.0.1 installation page
opens, accept the default installation directory or specify another in-
stallation location.
7 If you are installing Apache Tomcat, on its installation page, accept the
default installation directory or specify another installation location.
38
48. 8 At the Summary page, verify that the list of components to be installed
is correct and that you have adequate space on your system for the
installation.
9 Click Install to begin the installation.
Apache TomCat Installation Steps
• Goto http://tomcat.apache.org Downloads Tomcat 8.0 “8.0.xx” (where
xx is the latest upgrade number) Binary Distributions Core “zip”
package (e.g.,“apache-tomcat-8.0.xx.zip”, about 8 MB).
• UNZIP into a directory of your choice. DO NOT unzip onto the Desk-
top (because its path is hard to locate). I suggest using “d:myproject”.
Tomcat will be unzipped into directory “d:myprojectapache-tomcat-
8.0.xx”. For ease of use, we shall shorten and rename this direc-
tory to “d:myprojecttomcat”. Take note of Your Tomcat Installed
Directory. Hereafter, I shall refer to the Tomcat installed directory
as < TOMCAT − HOME > (or < CATALINA − HOME > -
“Catalina” is the codename for Tomcat 5 and above).
Tomcat’s Directories
Take a quick look at the Tomcat installed directory. It contains the following
sub-directories:
• bin: contains the binaries; and startup script (startup.bat for Windows
and startup.sh for Unix and Mac), shutdown script (shutdown.bat for
Windows and shutdown.sh for Unix and Mac), and other binaries and
scripts.
• conf: contains the system-wide configuration files, such as server.xml,
web.xml, context.xml, and tomcat-users.xml.
• lib: contains the Tomcat’s system-wide JAR files, accessible by all
webapps. You could also place external JAR file (such as MySQL
JDBC Driver) here.
• logs: contains Tomcat’s log files. You may need to check for error
messages here.
• webapps: contains the webapps to be deployed. You can also place the
WAR (Webapp Archive) file for deployment here.
39
49. • work: Tomcat’s working directory used by JSP, for JSP-to-Servlet con-
version.
• temp: Temporary files.
The project is a type of server client application,hence to access the ap-
plication it is necessary for the user to know the url of the application.The
user first needs to be connected to the server.This can be either achieved by
connecting via LAN or through wireless communication.After this he has to
type the url as given below.
localhost:8080/project
This will direct him to the home page.The user can only access the ap-
plication if he is a member.To become the member there is a link on the
rightmost corner of the home page saying SIGNUP.The user needs to fol-
low this link to become a member.If he enters all data correctly he will be
redirected to the home page where he can login now to the main working
page.Here the user can either search for vehicle availability or register vehi-
cle.The user can now logout after completing his work.
40