Sie sind auf Seite 1von 36

ABSTRACT

The use of computer has been steadily increasing in science and technology since its invention. Computer Technology has spread its root in various areas including Industry, Science, Technology, Education and Business. Their application is increasing day by day in various other fields and their most recent conquest is Online Applications. With the advent of various online systems for example: Online reservations, online banking, online shopping, auctioning etc., appearing for an examination through Internet or rather we will say online has become an essential part of a students life. We have tried to design a system, which can be used by the students to take tests for various subjects. The questions have been designed to be objective/multiple type instead of elaborative. The user has to register for the test. The Administrator provides an unique user name and password to the student. The user name and password will be required by the student for taking the test. At the end of the test the student can see his Result. The Administrator can only add a teacher and the teacher can provide questions for only one subject only. The teacher will also be given a specific user name and password, by which the teacher can login in and add/update questions. The teacher will have to provide questions in the multiple choice format. The teacher will provide the right answer also. The administrator can view, update records of the users and can add/modify users details i.e. the administrator has the rights to make any changes in the database.

CHAPTER-1 INTRODUCTION

1.1 PROPOSED SYSTEM:


E-TEST is helpful for the students to check out their performance in various subjects. Authenticated user can access to the website. Only Admin can add new questions to any subject with one right answer. And they can delete questions as well. Students have to log in, select the subject and can take the test. Floating difficulty level of the questions based on students performance. Only the correct answer provided by Admin will fetch marks to the students.

The Format of the test will be as follows: When a student starts a test, he will get a simple level question. If the student gives the right answer, then he will get the Next question. If the students gives the right answer to to all question of chosen language then he will be given question of other two language with previous one disabled..The first question of the test will be a question from the simple question database.

Scoring in the Exam: The scoring in the exam will be done in the end after completion of test:

1.2 WHY IS ONLINE BETTER THEN PAPER BASED?

Lower long-term costs : Although the initial expenditure to set up the system will be on the higher side, but when the system becomes fully operative and functional ,it will be economically beneficial. Instant feedback to students: The students can get the result instantaneously. Greater flexibility with respect to location and timing. The students can give the test any time they want and the test location is also flexible. The student can give the exam at any time or place. Improved reliability: Machine marking is much more reliable than human marking. Enhanced question styles which incorporate interactivity and multimedia

1.3 MODULES

ADMINISTRATOR:

The administrator will perform the most important responsibilities of the system He will overlook the entire functioning of the project .He will be like an overseas over the teacher and student .The administrator will have all the rights in the system .Functions of the Administrator are:

LOGIN: The student can login in using a valid username and password provided by the administrator.

ADD STUDENT: The administrator can only add a new student and as well his details.

MODIFY STUDENT: The administrator can modify an already existing student record as well as delete an existing one.

ADD QUESTIONS: The administrator can only add a new Question and as well his options and answer.

DELETE QUESTIONS: The administrator can only elete a Question and as well his options and answer.

STUDENT:

Every student that enrolls for the online examination is provided with a secret user name and a secret password. Whenever the student wants to give the examination it is required to enter that user name and password. This will ensure the security of the system. After the password is accepted by the system the student is made to choose the subject of the exam. This can be done by selecting the category option provided in the system.

After that the question paper will be generated in front of the student with the questions comprising of multiple choices as answers where in the student can mark only one choice. After submitting the student can move to the next question. At the end of the exam student can obtain the final result for the test along with the correct answers for the wrong choices marked by him

The student can perform the following functions:

LOGIN: The teacher can login in using a valid username and password provided by the administrator.

CATEGORY: The student can select the category o the test, i.e. the subject in which the student wants give the test.

TEST: The test will be a multiple choice question exam. The student will have to tick one option as correct. Whether the answer is correct or wrong will be displayed there and then. The student cannot move to the next question until he ticks one option. The student cant also move back to the previous question.

RESULT: The result will be generated at the end of the exam.

LOGOUT: At the end of the exam the student can logout. He can even logout in between the test also if he wants to.

1.4

OBJECTIVES

Online exam is helpful for the students to check out their performance in various subjects. Authenticated user can access to the website. Only teachers can add new questions to any subject with one right answer. And they can delete questions as well.

Students have to log in, select the subject and can take the test. Floating difficulty level of the questions based on students performance.
Only the correct answer provided by teacher will fetch marks to the students.

CHAPTER-2 SYSTEM ANALYSIS


2.1 DETAILED PROBLEM
Basically our project aims at replacing the existing examination that includes tedious paper work and manual work to large extent. By making this project we want to make examination conduction a very easy and machine based system that can reduce the human work to negligible

As we all know that the planning is the most important part of the project and so it is the most time consuming one too. After planning came the turn of the design issues of the project which in itself was a time consuming and tedious task. Finally we started up with what we all were anxiously waiting for and it was the coding part of the project. Our project comprised of the three main modules i.e.

STUDENT TEACHER ADMINISTRATOR

2.2 REQUIREMENT ANALYSIS


Online Examination system operates on terminals which are Intel compatible, Pentium IV processors or an equivalent processor. It supports forward compatibility. The processors must be running at a minimum of 1.6 GHz.

2.2.1 HARDWARE REQUIREMENTS


Processor RAM Hardisk Intel or compatible Pentium 4 512 MB 10 GB

2.2.2 SOFTWARE REQUIREMENTS

Database Technology MySql Server Programming Language J2ee (servlet) Operating System

Windows XP-2

2.3 SOFTWARE DEVELOPMENT CYCLE:-

Project lifecycle

For the successful project there was a need for reorganization of the life cycle of the online examination system. So, gradual progress was made from one stage to another methodically. Herby, answering, questioning and achieving results in each stage was the need of the hour. As a result, we studied the complex system in the following respect

2.3.1Initial investigation

The company was following the tradition manual system of data entry. We went through numerous registers and files being maintained by the officials and clerical staff. Weekdays were the most tiring for the staff members because on these days, a reconciliation of the whole week's progress had to be made in time and paper, thus consuming are lots of time and effort. As individual, did the work it was prone to human and logical errors

2.3.2Feasibility study

Depending on the results of the initial investigation, our survey was expanded to a more detailed feasibility study. Our efforts were extended to test the proposed computerized system according to its:

Workability Impact on the organization Ability to meet users need Effective use of available resources

2.3.3 Analysis

After the acceptance of the initial thought of the computerized system, a detailed study was carried out on the operation of the proposed system and its relationship within and outside the organization. Data was collected from the files being maintained and the transactions being handled by the existing manual system. A thorough understanding was required of the tasks to be done by the computerized system

2.3.4 Design

This was the most creative and challenging phase of the system lifecycle. Here an effort was made to describe the final system and the process by which it be developed. The technical requirement of both hardware and software were specified and the user of a variety of test data repeatedly tested the programs being developed. The desired format of the output was provided to the user by a presentation of sample reports. Careful preparations and maintenance of the input data and master files was required. Also, an effort was made to completely document the source for thereby keeping a margin for Re-enhancement of the project. Details related to justification of the system and an estimate of the impact of the system on the user and the company were documented and evaluated by the management as a step toward implementation.Procedural DFD's, record layouts, and report layouts were prepared for the effective and complete portrayal of the candidate system.

2.3.5 Implementation

This phase is concerned with training the official and staff of the installation of new system. The system is finally tested for checking whether it is working properly runs or not. The user appreciated the readiness and accuracy of the reports in the click of a button.Test data were fed in to the system and finally, the software was run with live data to locate errors in the program. Repeated testing added assurance against error in the candidate system and also gave the user staff and opportunity to obtain experience to operations

2.3.6 Post implementation and maintenance


After the installation phase was completed, the staff was adjusted to the changes created by candidates system; periodic changes are required for both hardware and software. Software
9

changes would have to be made if the new information it is inconsistent with the design specifications. Also periodic maintenance of the hardware is required to keep the tune with designs specifications

2.4 OBJECT MODEL

10

2.4 DYNAMIC MODELS

11

12

FUNCTIONAL MODELS

STUDENT:

13

ADMINISTRATOR:

14

CHAPTER-3 SYSTEM DESIGN


3.1 MODULAR DESIGN

15

3.2 DATABASE TABLES

16

17

3.4 E-R DIAGRAM

18

3.5 INTERFACE

Home page

19

Registration Page

20

Admin Login Page

21

Language selection page

22

Question Page

23

Insert/Update/Delete of Questions and users

24

CHAPTER 4 SYSTEM IMPLEMENTATION


4.1 PLATFORM USED
Front end: J2ee ( Servlet ) Back end: MySql

4.1.1 ABOUT J2ee


Today more and more developments want to write distributed transactional applications for the enterprise and leverage the speed, security and reliability of server side technology. J2EE is a platform independent, java centric environment from sun for developing, building and deploying web based enterprise application online. The J2EE platform consists of a set of services, APIs and protocols that provide functionality for developing multitier web based application.

At the client side tier, J2EE supports pure HTML as well as java applets or applications. It relies on JSP and Servlet codes to create HTML or other formatted data for the client. EJB provide another layer where the platforms logic is stored. An EJB server provides functions such as threading, concurrency, security and memory management. To reduce costs and fasttrack enterprise application design and development, the java2 platform, Enterprise edition (J2EE) technology provides a component-based approach to the design, development, assembly and distributed application model, the ability to reuse components; integrated Extensible Markup Language (XML) based data interchange, a unified security model, and flexible transaction control.

DISTRIBUTED MULTI TIERED APPLICATIONS The J2EE platform uses a multi tiered distributed application model. Application logic is divided into components according to function, and the various application components that make up a J2EE application are installed on different machines depending on the tier in the multi tiered J2EE environment to which the application component belongs. The figure shown below shows two multi tiered j2EE applications divided into the tiers described in the following list. The J2EE application parts shown in Figure

Client-tier components run on the client machine. Web-tier components run on the J2EE server.
25

Business-tier components run on the J2EE server. Enterprise information system (EIS)-tier software runs the EIS server.

J2EE COMPONENTS
J2EE Application1 Application Client J2EE Application2 Dynamic HTML Pages Client Machine

Client tier

JSP Pages

Web Tier

J2EE Server

Enterprise Beans

Enterprise Beans

Business Tier

Machine

Database

Database

EIS Tier

Database Server Machine

J2EE applications are made up of components. A J2EE component is a self-contained functional software unit that is assembled into a J2EE application with its related classes and files and that following J2EE components: Application clients and applets are components that run on the client.

Java Servlet and Java Server Pages (JSP) technology components are Web components that run on the server. Enterprise Java Beans (EJB) components are business components that run on the server. J2EE components are written in the java programming language and are compiled in the same way as any program in the language. The difference between J2EE components and standard java classes is that J2EE components are assembled into a J2EE application. Verified to be well formed and in compliance with managed by the J2EE server.
26

J2EE CONTAINERS

Normally, thin-client multi tiered applications are hard to write because they involve many lines of intricate code to handle transaction and state management, multithreading, resource pooling, and other complex low-level details. The component-based and platformindependent J2EE architecture makes J2EE applications easy to write because business logic is organized into reusable components. In addition, the J2EE server provides underlying services in the form of a container for every component type. Because you do not have to develop these services yourself, you are free to concentrate on solving the business problem at hand. Containers provide the runtime support for J2EE application components. Containers provide a federated view of the underlying J2EE APIs to the application components. J2EE application components never interact directly with other J2EE application components. They use the protocols and methods of the container for interacting with each other and with platform services. Interposing a container between the application components and the J2EE services allows the container to transparently inject the services defined by the components deployment descriptors, such as declarative transaction management, security checks, resource pooling, and state management. A typical J2EE product will provide a container for each application component type: application client container, applet container, web component container, and enterprise bean container.

Figure: J2EE Server and Containers

Browser

J2EE Server Servlet

JSP Page

Application Client Application client container

Web Container

Enterprise Bean EJB Container

Enterprise Bean

Database 27

Client Machine

J2EE SERVER

It is a runtime portion of a J2EE product. A J2EE server provides EJB and Web containers. The component-based and platform-independent J2EE architecture makes J2EE applications easy to write because business logic is organized into reusable components and the J2EE server provides underlying services in the form of a container for every component type.

CONTAINERS AND SERVICES

Components are installed in their containers during deployment and are the interface between a component and the low-level platform-specific functionality that supports the component. Before a web, enterprise bean, or application client component can be executed, it must be assembled onto a J2EE application and deployed into its container. The assembly process involves specifying container settings for each component in the J2EE application and for the J2EE application itself. Container settings customize the underlying support provided by the J2EE Server, which include services such as security, transaction management, Java Naming and Directory Interface (JNDI) lookups, and remote connectivity. Here are some of the highlights:

The J2EE security model lets you configure a web component or enterprise bean so system resources are accessed only by authorized users. The J2EE transaction model lets you specify relationships among methods that make up a single transaction so all methods in one transaction are treated as a single unit. JNDI lookup services provide a unified interface to multiple naming and directory services in the enterprise so application components can access naming and directory services. The J2EE remote connectivity model manages low-level communications between clients and enterprise beans. After an enterprise bean is created, a client invokes methods on it as if it were in the same virtual machine.

28

J2EE PLATFORM ROLES

The J2EE platform also defines a number of distinct roles that are performed during the application development and deployment life cycle:

The product provider designs and offers the J2EE platform, APIs, and other features that are defined in the J2EE specification for purchase. The tool provider offers tools that are used for the development and packaging of application components as part of the J2EE specifications. The application component provider creates Web components, enterprise beans, applets, or application clients to use in J2EE applications. The application assembler takes a set of components that are developed by component providers and assembles them in the form of an enterprise archive (EAR) file. The deplorer is responsible for deploying an enterprise application into a specific operational environment that corresponds to a J2EE platform product. The system administrator is responsible for the operational environment in which the application runs.

Product providers and tool providers have a product focus. Application component providers and application assemblers focus on the application. Deployers and system administrators focus on providing the J2EE application with platform-specific artifacts, and on the platform run time.

These roles help identify the tasks and people involved. Understanding this separation of roles is important because it helps to determine the approach when developing and deploying J2EE applications.

29

J2EE BENEFITS

The J2EE specification provides customers a standard which can be used to ensure investment protection when purchasing or developing applications. Comprehensive, independent Compatibility Test Suites ensure vendor compliance with J2EE standards. Some benefits of deploying to J2EE architecture include:

A simplified architecture that is based on standard components, services, and clients. The architecture maximizes the write-once, run-anywhere Java technology. Services providing integration with existing systems, including Java DataBase Connectivity (JDBC); Java Message Service (JMS); Java Connector Architecture (JCA); Java Interface Definition Language (Java IDL); the JavaMail API; and Java Transaction API (JTA and JTS) for reliable business transactions. Scalability to meet demand, by distributing containers across multiple systems and using database connection pooling, for example. A better choice of application development tools and components from vendors providing standard solutions. A flexible security model that provides single sign-on support, integration with legacy security schemes, and a unified approach to securing application components.

30

CHAPTER-5 TESTING

5.1 SOFTWARE TESTING


TESTING: What is it? Once the source code has generated, software must be tested to uncover as many errors as possible. Our goal must be to design a series of test cases that have a high likelihood of finding errors. This is done through software testing techniques. These techniques provide systematic guidance for designing that- exercise the internal logic of software components and exercise the input and output domains of the program to uncover errors in program function, behavior and performance. Importance of testing: Reviews and other software quality assurance activities can also uncover errors but they are not sufficient. Every time the program is executed, the customer tests it. Therefore, you have to execute the program before it gets to the customer with the specific intent of finding and removing errors. In order to find the highest possible number of errors, tests must be conducted systematically and test cases must be designed using disciplined techniques. Testing: Who does it A software engineer performs all tests during early stages of testing. As the testing progresses, testing specialists may also be involved. Testing: Steps Software is tested from two different perspectives: Program logic is exercised using White Box Testing. Software requirements are exercised using Black Box Testing. In both the cases, the intent is to find the maximum number of errors with the minimum amount of effort and time.

5.2 TESTING METHODOLOGY


A methodology for testing integrates test case design techniques into a well-planned series of steps that results in the successful construction of the software. The first step in system testing is to prepare a plan that will test all the aspects of system, in a way that promotes its credibility among potential users. A workable test plan is prepared in accordance with the established specification. Procedure for using test data, personnel and
31

training requirements after the test plan were develops, and all tests can be planned and designed before any code is generated. Except for small programs, system should not be tested as a single unit. Large systems are built out of modules that in turn are composed of functions and procedures, the testing process should therefore proceed in stages where testing is carried out incrementally in conjunction with the system implementation. The testing process is an iterative one with information being feedback from later stage to earlier parts of the process. Therefore testing can be categorized into following forms: 1. Unit testing 2. Module testing 3. System testing 4. Alpha/ Beta testing 5. White Box/ Black Box testing

UNIT TESTING:
The methodology of unit testing was followed in the manner that each and every piece of code was tested as a soon as it was written. The individual components were tested to ensure that they operate correctly and independently. Lets have a closer look at this kind of pattern: Each component is tested independently without the other system components. It is the first level of testing and the different modules are tested against the specifications. Unit testing is essential for verification of the code product during the coding phase, and hence the goal is to test the internal logic of the module. Unit testing focuses in the verification effort of the smallest unit of software design module.

MODULE TESTING:
A module is a collection of dependent components such as procedures and functions. A module encapsulates related components so that it can be tested without other system modules. Module testing is a systematic technique for constructing the program structure while at the same time conducting test to uncover errors associated with interfacing. The program is constructed and testing in small segments where errors are easier to isolate and correct interfaces are more likely to be tested completely.

SYSTEM TESTING:
Collections of modules make a sub-system and collection of sub-systems makes the entire system. This phase involves testing of collection of sub-systems, which have been integrated into the entire system. Aim is to find out errors, which normally result from unanticipated interaction

32

between sub-systems and components. It is also concerned with validating that the system meets its functional and non-functional requirements. Generally, it begins with low volumes of transactions based on live data.System testing is actually a series of different tests whose primary purpose is to fully exercise the computer-based system. In system testing, performance and acceptance standards are developed.

5.3 TESTING STRATEGIES FOLLOWED IN THE PROJECT


We also began with unit testing procedures. In this we tested individual forms developed to meet different requirements, to find and remove the errors. Following problems were encountered while making our project: syntax error caused due to misspelling or missing clause. Unrecognized command verb, phrase and keywords. Data types mismatched. Expected errors. Connectivity errors and logic errors. These errors were removed using following techniques: Monitoring the compilation of the program. By appropriate statements in the program. By applying the right logic. Finally the project is run to test the connectivity and integrity of different options given in the menu to choices given by the user. This is to ensure that the system is responding well and giving best results as per user expectations and requirements.

33

CHAPTER-6 CONCLUSION
The project has performed all the basic features, which are required to make the project alive. We have tried to design a system, which can be used by the students to take tests for various subjects. The questions have been designed to be objective/multiple type instead of elaborative. It is also authentic from the security point of view where in all the rights are reserved by the concerned authority. The online examination system tests the true caliber of the student with the application of enhanced features included in our project. It also makes sure that the manual work in the examination system is reduced to negligible.

6.1 FUTURE SCOPE:


There are limited numbers of questions. We can include more number of questions. On Re-Test a student may get the same questions again. That can be removed. Once an answer is selected, it cannot be changed. We are also planning to include Tutorials, on-line. The possibility of reviewing the paper and to help the student in correcting his/her mistakes, with some description automatically, so that the same mistakes are not made again.

34

6. BIBLIOGRAPHY AND REFERENCES


BIBLIOGRAPHY
Complete Reference for j2ee Software Engineering (fifth edition) by Ian Somerville

REFERENCE
www.gre.com

www.roseindia.com
www.studentforum.com www.onlinetutorials.com

35

Das könnte Ihnen auch gefallen