Online Exam

Published on December 2016 | Categories: Documents | Downloads: 36 | Comments: 0 | Views: 280
of 38
Download PDF   Embed   Report




When A computer Software succeeds-when it meets the needs the people who use it, when it performs flawlessly over along of time, when it is easy to modify and even easier to use-it can and does change things for the better. But when software fails-when its users are dissatisfied, When it is difficult to change and even harder to use-bad things can and do happen. We all want to build software that makes things better, avoiding the bad things that lurk in the shadow of failed efforts. To succeed we need discipline when software is designed and built. Many individuals and companies still develop software haphazardly, even as build systems to service the most advanced technologies of the day. As a result, the quality of the software that we produce suffers and bad things happen. This project report is intended to serve as a guide to the software developed on ONLINE EXAMINATION. We have tried to follow the principles and rules as suggested by the software engineers as far as possible, in order to make this software a Successful one. The emphasis in this report is to document the important concepts and techniques used for the successful development of this project.


1. Abstract 2. Synopsis 3. Software Development Life Cycle 4. Software Requirement Specification a. Requirement Analysis b. Feasibility Study c. Analysis d. Preliminary Design e. Design f. Coding g. Testing h. Maintenance i. Acceptance & Test Generation j. Database Conversion k. Procedure Description l. Installation m. Usage Scenario n. Data Description 5. Technology Overview a. JDBC b. JSP 6. Snapshots 7. Scope of project 8. Conclusion 9. Bibliography .. . . ................. .. . . . . .. .. . .. ... .. . .

The purpose of on-line test simulator is to take online test in an efficient manner and no time wasting for checking the paper. The main objective of on-line test simulator is to efficiently evaluate the candidate thoroughly through a fully automated system that not only saves lot of time but also gives fast results. For students they give papers according to their convenience and time and there is no need of using extra thing like paper, pen etc.

The scope of the project is very wide, it can be used by anyone. y Provides secure registration for the users.

Can be used anywhere anytime as it is a web application(no location of the user needed to be specified). No restriction that the examiner has to be present at the time when candidate takes the test.
It provides performance result after completion of each test.


y y y y

Secure Easy to use Reliable and Accurate No need of examiner

Online examination are conducted through the internet to test a remote candidate. The purpose of On-line examination system is to take online exam in an efficient manner and no time wasting for checking the paper. The main objective of an on-line examination system is to efficiently evaluate the candidates thoroughly through a fully automatic system that not only saves a lot of time but also gives fast and accurate results. The Students can be able give the papers according to their convenience and time and there is no need of using extra things like paper, pen etc. Candidate is given a limited time to answer the questions and the time expiry the answer paper is disabled automatically and answer is sent to the examiner. Online examinations can be conducted at any time and does not incur high cost as traditional exam scenario as there is no paper work involved.

This Web Application 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. 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 the results as well.

Module 1: Home

y It consist of all the links through which anyone can access the entire

information. y From the home page user can login to give the test. y FAQ link contains all the frequently asked questions which help to understand easily. y About Us link contains the information about the designers of the website. y The contact us link can be used to get the contact information about the designers.

Module 2: Registration

y Anyone can register on the site to give the

tests. y The remote user just have to fill some basic information to create his/her account. y The registered user can login anytime with their unique userid¶s. y The registration is free of cost.

Module 3: Section

y This module consist of three main sections.

C language C++ language Java language
y The user can choose from any of the above and on submitting he can give test of the

subject. y User will be given questions, selected randomly from the database. y User will only be given a limited time to do all the questions . y After that result will be generated automatically .

Module 4: Result

y It the last section of the test. y A score card on the basis of the marks obtained will generated

automatically. y This will help to evaluate your knowledge about the particular field.

Hardware/ Software Requirements


A minimum computer system that will help you access all the tools in the courses is a Pentium 200 or a higher capability CPU. 256 Megabytes of RAM or higher. Convenient device to access internet. Modem ,Datacard etc.

y y


y y y y y

Apache Tomcat Server. Notepad++ Dreamweaver. Fireworks. Window XP or higher operating system.

Economic analysis is most frequently used for evaluation of the effectiveness of the system. More commonly knows as cost/benefit analysis the procedure is to determine the benefit and saving that are expected from a system and compare them with costs, decisions is made to design and implement the system. This part of feasibility study gives the top management the economic justification for the new system. This is an important input to the management the management, because very often the top management does not like to get confounded by the various technicalities that bound to be associated with a project of this kind. A simple economic analysis that gives the actual comparison of costs and benefits is much more meaningful in such cases. In the system, the organization is most satisfied by economic feasibility. Because, if the organization implements this system, it need not require any additional hardware resources as well as it will be saving lot of time.

Technical feasibility centers on the existing manual system of the test management process and to what extent it can support the system. According to feasibility analysis procedure the technical feasibility of the system is analyzed and the technical requirements such as software facilities, procedure, inputs are identified. It is also one of the important phases of the system development activities. The system offers greater levels of user friendliness combined with greater processing speed. Therefore, the cost of maintenance can be reduced. Since, processing speed is very high and the work is reduced in the maintenance point of view management convince that the project is operationally feasible.


People are inherently resistant to change and computer has been known to facilitate changes. An estimate should be made of how strong the user is likely to move towards the development of computerized system. These are various levels of users in order to ensure proper authentication and authorization and security of sensitive data of the organization.

The whole process of assigning test and evaluating their scores after the test, was done manually till date. Processing the test paper i.e. checking and distributing respective scores used to take time when the software was not installed.

y y y

The current system is very time consuming. It is very difficult to analyze the exam manually. To take exam of more candidates more invigilators are required but no need of invigilator in case of on line exam. Results are not precise as calculation and evaluations are done manually. The chances of paper leakage are more in current system as compared to proposed system. Result processing takes more time as it is done manually

y y y

The online test created for taking online test has following features y In comparison to the present system the proposed system will be less time consuming and is more efficient.
y y

Analysis will be very easy in proposed system as it is automated Result will be very precise and accurate and will be declared in very short span of time because calculation and evaluations are done by the simulator itself. The proposed system is very secure as no chances of leakage of question paper as it is dependent on the administrator only. The logs of appeared candidates and their marks are stored and can be backup for future use.



Software Development Life Cycle SDLC:

Software Development Life Cycle (SDLC) is a structured sequence of phases for implementing an information system. A System/Software development life cycle (SDLC) is a logical process by which systems analysts, software engineers, programmers and end-users build information systems and computer application to solve business problems and needs. The System/Software development life cycle (SDLC) is a conceptual model used in project management that describes the stages involved in an information system development project, from an initial feasibility study through maintenance of the completed application. In the software development process we focus on the activities directly related to the production of the software, for example, design, coding, and testing. A development process is a sequence of steps. Each step performs a well-defined activity leading towards the satisfaction of the project goals, with the output of one step forming the input of the next one. We have followed the concept of SDLC in the following way:

Survey Feasibility Study Analysis Preliminary Design System Design Implementation Acceptance Test Generation Quality Assurance Database Conversion Installation

Software Requirement Analysis:Requirement Analysis:
Requirement Analysis is the first phase of the SDLC. First, we need to figure out what the problem is (analysis)? We must know exactly what we want to do before we can begin to do it. A clear understanding of exactly what is needed is necessary for creating a solution. In this phase Business Analysts (BA), find out what is the problem and what are requirements and so on.It begins with a request from the user for a new system. It involves the following: Identify the requirement for the system. Clarify deficiencies in the current system. Identify deficiencies in the current system. Establish goals and objectives for the new system. Determine the feasibility for the new system. Prepare a project charter that will be used to guide the reminder of the project.

Analysis is a detailed study of the various operations performed by a system and their relationships within and outside of the system. This activity is also used to study the system in details. The objective of this step is to develop structured system specifications for the proposed system. The structured system specification will be called the Essential Model. It involves: Detailed study of the system. Understand the procedure of the system. Determine the scope of the system. Define the goals of the proposed system.

The most creative and challenging phase of the system life cycle is System Design. The term design describes the final system and the process by which it is developed. This activity deals with certain design issues that are to be finalized in consultation with the user. The two most important issues of relevance to the user are the automation boundary & the human machine interface. The output of this activity is the user implementation model. This model, in addition to the essential model defines the following for the system: Automation Boundary Report Layout Workable plan for implementing the candidate system. Screen layouts for the data entry forms Menus Information on personnel, money, hardware, facilities, and their estimated cost must also be available.

System Design involves the transformation of the user implementation model into software design. The first step is to determine how the output is to be produced and in what format. Second, input data and master files (database) have to be designed to meet the requirements of the proposed output. The design specification of the proposed system consists of the following: Database schema Pseudo code for all the modules.

After designing the new system/software, the whole system/software is required to be converted into computer language. Coding the new system/software into computer programming language does this. It is an important stage where the defined procedures are transformed into control specifications by the help of a computer language. This is also called the Programming Phase in which the programmer converts the program specifications into computer instructions, which we refer as programs. The programs coordinate the data movement as and control the entire process in a system/software.

Before actually implementing the new system/software into operations, a test run of the system/software is done removing all the bugs, if any. It an important phase of a successful system. After codifying the whole programs of the system, a test plan should be developed and run on a given set of test data. In the system/software testing stage, we check the overall behavior of the system/software against the functional and the performance requirements. There are two type of testing: White-Box: Internal part (code) of the project is testing. Black-Box: System behavior (input/output) is checked.

After having the user acceptance of the new system/software developed, the Implementation phase begins. Implementation is the stage of a project during which theory is turned into practice. In this phase, user can know how to execute the package, how to enter data and so on. y The implementation phase is less creative then system design. This activity includes programming, testing & integration of modules into progressively more complete system.


It is primarily concerned with user training, site preparation, and file conversion. During the final testing user acceptance is tested, followed by user training. System testing checks the readiness and accuracy of the system to access, update, and retrieve data from new files. The output of this activity is the complete integrated system. Major sub activities Coding Integration Testing Debugging



Inputs Project character Design specification


Outputs Integrated Systems

When the implementation report is submitted, an Maintenance should be made to determine whether the system/software meets the objectives stated in the general design report. In this phase, users may be able to suggest the easy-to-implement improvements.


This activity generated a set of test data that can be used to test the new system before accepting it. If successful, the program(s) is then run with ³live´ data. Otherwise a diagnostic procedure is used to locate and correct errors in the program.

Input Project Character


Output Quality Assurance test set

This activity involves conversion of data from the existing system (if any) to the new system.

The objective of this step is to produce a manual, which may be used as a guide for operating the system. Inputs Project Character User implementation model Outputs User manual (guide for end user)

This is another activity of the System Development Life Cycle. The change over from the current system to the new system is done.

Inputs Project Character User manual Outputs Installed system

This project involves all the activities of the System Development Life Cycle except for the database conversion and installation.

Product Functions Overview
The Web Application Online Book Shop is designed to enable its customer and members to buy books see books , buy online and order books to be shipped to their house,office or to their required place. The members of company see books selected in shopping cart , see total amount to be paid , pay money by help of Visa/Bank account/ATM/Demand Draft/Checks/Pay on Home Delivery etc as per company regulation.The user can SignIn/SignUp. The member holds an Login by help of which he accesses his account in which he can see his ordered books, orders status ,buy new books, review old orders ,email to company,other special offers for him. The Administrator¶s check their business growth to ensure business progress also. He can see at his present members , manage their passwords , view customer , status of orders , send mail to cutomer , see who¶s online , check stocks present status, Check/Edit/Delete present Subjects-Groups-Books available , change his own password,change password , change email sending methods(SMTP/Local Connection) , etc.

This Web Application is developed for make online Books selling and share the information between Company Administrator and Company members. Having studied the various requirements of the customer, the Team of SunShine InfoSoft (I) Pvt. Ltd. concluded the following requirements of the Application:

The user of the site: a. Administrator: Administrator will access all the page of site. b. Registered User : Registered user has interaction all the information of site. Its business information is showed directly on various web paged. It will be provided Login Name and password to login into Site and access all the pages. c. Normal User: Any type of user that is not member of the Company will access all the informations about books.

y y

The system should contain all the information of registered member. The Web Application should be able to add, delete and update the information about company activity and members informations.

DFD(Data Flow Diagram)
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an information system. DFDs can also be used for the visualization of data processing (structured design).A DFD provides no information about the timing of processes, or about whether processes will operate in sequence or in parallel. It is therefore quite different from a flowchart, which shows the flow of control through an algorithm, allowing a reader to determine what operations will be performed, in what order, and under what circumstances, but not what kinds of data will be input to and output from the system, nor where the data will come from and go to, nor where the data will be stored.

User table

User login Reg_table







Calculate result

ER Diagram Entity relationship Diagram
In software engineering, an entity-relationship model (ERM) is an abstract and conceptual representation of data. Entity-relationship modeling is a database modeling method, used to produce a type of conceptual schema or semantic data model of a system, often a relational database, and its requirements in a top-down fashion. Diagrams created by this process are called entityrelationship diagrams, ER diagrams, or ERDs. Consists of the following major components:

Rectangles:- which represent entity sets. Ellipses:- which represent attributes. Diamonds:- which represent relationship sets. Lines:- which link attributes to entity sets and entity sets of relationship sets. Double ellipses:- which represent multivalue attributes. Dashed ellipses:- which denote derived attributes. Double lines:- which indicate total participation of an entity in a relationship set. Double rectangles:- which represent weak entity sets.


An entity may be defined as a thing which is recognized as being capable of an independent existence and which can be uniquely identified. An entity is an abstraction from the complexities of some domain. When we speak of an entity we normally speak of some aspect of the real world which can be distinguished from other aspects of the real world.

Usage scenario:-

A use case is a set of scenarios that describing an interaction between a user and a system. A use case diagram displays the relationship among actors and use cases. The two main components of a use case diagram are use cases and actors.


Use Case

An actor is an external view of the system that will interact with the system you are modeling. Use Case:A use case is an external view of the system that represents some action the user might perform in order to complete a task. Draw use cases using ovals. Label with ovals with verbs that represent the system¶s functions.

Fig: Functions for Use Case and Actor

Fig: User Process

Relationships:Illustrate relationship between an actor and a use case with a sample line. For relationships among use cases, use arrows labeled either ³uses´ or ³extends´. A ³uses´ relationship indicates that one use case is needed by another in order to perform a task. An ³extends´ relationship indicates alternative options under a certain use case.

When to Use: Use Cases Diagrams
Use cases are used in almost every project. They are helpful in exposing requirements and planning the project. During the initial stage of a project most use case should be defined, but as the project continues more might become visible.

User profiles:Use case are a relatively easy UML diagram to draw, start by listing a sequence of steps a user might take search the Books to complete an action. We follow this following step for online examination 1. Login 2. Registration 3. Take test 4. Result Use-case:This diagram shows the user as a actor because the user purchase Books. The diagram takes the simple steps listed above and shows them as actions the user might perform. Login


Take Test

Fig: Use Case of Project


Technology Overview:Java Data Base Connectivity JDBC JDBC stands for "Java DataBase Connectivity". It is an API((ApplicationProgramming Interface) which consists of a set of Java classes, interfaces and exceptions and a specification to which both JDBC driver vendors and JDBC developers (like you) adhere when developing applications.

JDBC is a very popular data access standard. RDBMS (Relational Database Management Systems) or third-party vendors develop drivers which adhere to the JDBC specification. Other developers use these drivers to develop applications which access those databases e.g. you'll use ConnectorJ JDBC driver to access MySQL database. Since the drivers adhered to JDBC specification, the JDBC application developers can replace one driver for their application with another better one without having to rewrite their application. If they had used some proprietary API provided by some RDBMS vendor, they will not have been able to change the driver and/or database without having to rewrite the complete application.

Developing JDBC Specification

SUN prepares and maintains the JDBC specification. Since JDBC is just a specification (suggestions for writing and using JDBC drivers), third-party vendors develop JDBC drivers adhering to this specification. JDBC developers then use these drivers to access data sources.

Use of JDBC

JDBC is there only to help you (a Java developer) develop data access applications without having to learn and use proprietary APIs provided by different RDBMS vendors. You just have to learn JDBC and then you can be sure that you'll be able to develop data access applications which can access different RDBMS using different JDBC drivers.

JDBC Architecture

We'll divide it into 2 parts:
y y

JDBC API (java.sql&javax.sql packages) JDBC Driver Types

A Servlet is a Java class in Java EE that conforms to the Java Servlet API, a protocol by which a Java class may respond to HTTP requests. They are not tied to a specific client-server protocol, but are most often used with this protocol. The word "Servlet" is often used in the meaning of "HTTP Servlet". Thus, a software developer may use a servlet to add dynamic content to a Web server using the Java platform. The generated content is commonly HTML, but may be other data such as XML. Servlets are the Java counterpart to non-Java dynamic Web content technologies such as CGI and ASP.NET. Servlets can maintain state in session variables across many server transactions by using HTTP cookies, or URL rewriting. The servlet API, contained in the Java package hierarchy javax.servlet, defines the expected interactions of a Web container and a servlet. A Web container is essentially the component of a Web server that interacts with the servlets. The Web container is responsible for managing the lifecycle of servlets, mapping a URL to a particular servlet and ensuring that the URL requester has the correct access rights. A Servlet is an object that receives a request and generates a response based on that request. The basic servlet package defines Java objects to represent servlet requests and responses, as well as objects to reflect the servlet's configuration parameters and execution environment. The package javax.servlet.http defines HTTP-specific subclasses of the generic servlet elements, including session management objects that track multiple requests and responses between the Web server and a client. Servlets may be packaged in a WAR file as a Web application.

import ; import;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " + "Transitional//EN\">\n" + "<html>\n" + "<head><title>Hello World</title></head> \n" + "<body>\n" + "<h1>Hello, world!</h1> \n" + "</body></html>"); }

HTTP Servlet typically used to:
y y y

Priovide dynamic content like getting the results of a database query and returning to the client. Process and/or store the data submitted by the HTML. Manage information about the state of a stateless HTTP. e.g. an online shopping car manages request for multiple concurrent customers.

Life Cycle of a Servlet
The life cycle of a servlet can be categorized into four parts: 1. Loading and Inatantiation: The servlet container loads the servlet during startup or when the first request is made. The loading of the servlet depends on the attribute <load-onstartup> of web.xml file. If the attribute <load-on-startup> has a positive value then the servlet is load with loading of the container otherwise it load when the first request comes for service. After loading of the servlet, the container creates the instances of the servlet. 2. Initialization: After creating the instances, the servlet container calls the init() method and passes the servlet initialization parameters to the init() method. The init() must be called by the servlet container before the servlet can service any request. The initialization parameters persist untill the servlet is destroyed. The init() method is called only once throughout the life cycle of the servlet. The servlet will be available for service if it is loaded successfully otherwise the servlet container unloads the servlet. 3. Servicing the Request: After successfully completing the initialization process, the servlet will be available for service. Servlet creates seperate threads for each request. The sevlet container calls the service() method for servicing any request. The service() method determines the kind of request and calls the appropriate method (doGet() or doPost()) for handling the request and sends response to the client using the methods of the response object. 4. Destroying the Servlet: If the servlet is no longer needed for servicing any request, the servlet container calls the destroy() method . Like the init() method this method is also called only once throughout the life cycle of the servlet. Calling the destroy() method indicates to the servlet container not to sent the any request for service and the servlet releases all the resources associated with it. Java Virtual Machine claims for the memory associated with the resources for garbage collection.

Life Cycle of a Servlet

Advantages of Java Servlets
1. Portability 2. Powerful 3. Efficiency 4. Safety 5. Integration 6. Extensibilty 7. Inexpensive

Servlets have a number of advantages over CGI and other API's. They are: 1. Platform Independence Servlets are written entirely in java so these are platform independent. Servlets can run on any Servlet enabled web server. For example if you develop an web application in windows machine running Java web server, you can easily run the same on apache web server (if Apache Serve is installed) without modification or compilation of code. Platform independency of servlets provide a great advantages over alternatives of servlets. 2. Performance Due to interpreted nature of java, programs written in java are slow. But the java servlets runs very fast. These are due to the way servlets run on web server. For any program initialization takes significant amount of time. But in case of servlets initialization takes place first time it receives a request and remains in memory till times out or server shut downs. After servlet is loaded, to handle a new request it simply creates a new thread and runs service method of servlet. In comparison to traditional CGI scripts which creates a new process to serve the request. 3. Extensibility Java Servlets are developed in java which is robust, well-designed and object oriented language which can be extended or polymorphed into new objects. So the java servlets take all these advantages and can be extended from existing class to provide the ideal solutions. 4. Safety Java provides very good safety features like memory management, exception handling etc. Servlets inherits all these features and emerged as a very powerful web server extension. 5. Secure Servlets are server side components, so it inherits the security provided by the web server. Servlets are also benefited with Java Security Manager.

The goal of the java server pages specification is to simplify the creation and management of dynamic web pages, by separating contents and presentation. JSPs are basically files that combine standard HTML, tags and JSP tags(Scripting tags).The HTML tags are used for presentation while the JSP tags specify the dynamic contents. This is not to say that JSP¶s must contain HTML.A JSP page might be composed of only java code, or of custom tags that refer to externally compiled classes. JSP is not a product, but like other Java API¶s a specification provided by the sun microsystem for vendors to implement. The JSP specification builds on the functionality provided by the servlet specification. JSPs get translated into java servlets the first time they are invoked by a client. From then on, as long as the JSP source for the page is not modified, this compiled servlet process any browser request for the JSP page.

Servlet v/s JSP
Servlet executes on the server and intercept browser requests, acting as a sort of middle layer between clients and other applications. In doing so, Servlets tends to mix the dynamic content into the static part to generate HTML.JSP¶s on the other hand, separate static and dynamic contentsseparating presentation and logic in a web application. Whereas servlets force you to mix the code with the static content, JSP¶s can use beans with a specified scope to separate the code out, or tag extension.

JSP life Cycle
JSP life cycle has 3 phases: 1. Traslation 2. Compilation 3. Execution When the server receives a request for a JSP, the web server recognizes the JSP file extension in the URL requested by the browser, indicating that the requested resource is JSP, and therefore must be handled by the JSP engine(Web Container).

The JSP page is first translated into a java file, which is then compiled into a servlet.This translation and compilation phase occurs only when the JSP file is first called, or when it subsequently will notice a slightly delay the first time that a java server pages is run because of this conversion process.

Execution Life Cycle
The execution life cycle of the JSP can be further divided into following four stages,which are similar to servlets life cycle: 1.Instantiation 2.Initialization 3.Service 4.Destroy


Home Page

Registration Page


Contact us


About us

Scope of the project
y y

Provides secure registration for the users. Can be used anywhere anytime as it is a web application(no location of the user needed to be specified). No restriction that the examiner has to be present at the time when candidate takes the test.
It provides performance result after completion of each test.


The Project was completed within deadline it had all the functionalities as required. Some of the basic functions that final project are as follows:
y y y

User friendly interface. User can signup, and give tests of his choice. Tests performance report is also provided at the end of the test.

The project gave a detailed questions about the particular subject. It improves the knowledge of the student about the computer languages.

y y y y y y y y

Software Engineering(pressman) Database system Concepts(Korth) Complete reference of Java J2EE Tutorial Http:// Http:// Various E-Books for reference

Sponsor Documents

Or use your account on


Forgot your password?

Or register your new account on


Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in