Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Online Examination Management System.

Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

AN

INTERNSHIP REPORT
ON
ONLINE EXAMINATION MANAGEMENT SYSTEM

In partial fulfillment of the requirements for the degree of


M.sc
In
COMPUTER SCIENCE AND INFORATION
TECHNOLOGY
Submitted To :
DEPARTMENT OF COMPUTER SCIENCE AND
INFORMATION TECHNOLOGY
TRIBHUVAN UNIVERSITY
Kirtipur, Kathmandu (Nepal)
Submitted By:
Kamal Acharya
April,2022

1
INDEX
Sr.No. Topic Page
1 Acknowledgement 3
2 Introduction 4
 Purpose
 Project Overview
 Objectives of the project
 System Requirements Analysis
 Background of the project
 Methodologies Used
3 Data flow Diagrams 15
4 Snapshots 17
5 Results and Conclusions 27
6 Bibliography 28

2
ACKNOWLEDGEMENT
The satisfaction that accompanies that the successful completion of any task
would be incomplete without the mention of people whose ceaseless cooperation
made it possible, whose constant guidance and encouragement crown all efforts
with success.
My extreme gratitude to Mr. Dipendra Singh Airee who guided me throughout
the project. Without his willing disposition, spirit of accommodation, frankness
and timely clarification, this project could not have been completed in due time.
His readiness to discuss all important matters at work deserves special attention.

I am highly indebted to OOPS INFOSOLUTIONS for providing excellent


support for the project.

Kamal Acharya

3
INTRODUCTION

Online Examinations are being launched because a need for a destination that is
beneficial for both institutes and students. With this project, institutes can register
and host online exams. Students can give exams and view their results. This
project is an attempt to remove the existing flaws in the manual system of
conducting exams.

Purpose:
Online Exams System fulfils the requirements of the institutes to conduct the
exams online. They do not have to go to any software developer to make a
separate site for being able to conduct exams online. They just have to register on
the site and enter the exam details and the lists of the students which can appear
in the exam.
Students can give exam without the need of going to any physical destination.
They can view the result at the same time.
Thus the purpose of the site is to provide a system that saves the efforts and time
of both the institutes and the students.

Project Overview:
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
students. 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.

Online Exams System provides the platform but does not directly
participate in, nor is it involved in any tests conducted. Questions are posted not
by the site, but users of the site. The site requires an institute to register before
posting the questions. The site has an administrator who keeps an eye on the
overall functioning of the system. The site gets revenue by charging the institutes
each time they want to conduct the exam. The system entitled “Online Exams
System” is application software, which aims at providing

4
services to the institutes and providing them with an option of
selecting the eligible students by themselves. It is developed by using
J2EE technology and related database.

But in my project Online Examination testing is not based on internet we make


our project at college level in which there is no need of internet. The testing is
done with the help of database. Our project has a frontend that is acts as an
interface to the users of the application and a backend that aids in the
management of the application. The features of both are listed below.

Salient Features in Project:


 User friendly.
 Providing protection to data, through password.
 Efficient retrieval of information.
 Ensure accuracy of data, with in-built validations and checks.
 Efficient linkage of information.
 Informative reports.
 Elimination of paper works to a great extent.

Objectives of The Project:


After thoroughly analyzing the existing system the following objectives have
been set:

 Providing user friendly interface


 Keeping exams online
 Easy access of data
 Elimination of paper works to a great extent.
 Maintaining data consistency
 Providing better performance

5
 Facility to update the data time to time
 Adequate security of the database
 Providing protection to data, through password.
 Efficient retrieval of information.

System Requirements Analysis:


Prior to the software development efforts in any type of system it is very
essential to understand the requirements of the systems and users. A complete
specification of the software is the 1st step is the analysis of system.
Requirements analysis provides the designer with the representation of functions
and procedures that can be translated into data, architecture and procedural
design.

The goal of requirement analysis is to find out how the current system is working
and if there are any areas where improvement is necessary and possible. This may
result in using alternative ways to data capturing and processing.

Interface Requirements:

1. User Interface
The package must be user friendly and robust. It must prompt the user with proper
message boxes to help them perform various actions and how to precede further
the system must respond normally under any in out conditions and display proper
message instead of turning up faults and errors.

6
2. Hardware Specification

HARDWARE SPECIFICATION

CPU Intel Pentium IV

SPEED 1.5GHz

RAM 256 MB

HARD DISK 40GB

KEYBOARD 105 Keys

Software Specifications:

Software is a set of program, documents, and procedure, routines associated


with computer system. Software is an essential complement to hardware. It is the
computer programs which when “Student Management System” has been
developed using the following tools:

 Java Swing, Awt


 MYSQL

7
SYSTEM DEVELOPMENT LIFE CYCLE MODEL (SDLC MODEL):

This is also known as Classic Life Cycle Model (or) Linear Sequential Model (or)
Waterfall Method. This has the following activities.

1. System/Information Engineering and Modeling

2. Software Requirements Analysis

3. Systems Analysis and Design

4. Code Generation

5. Testing

6. Maintenance

System/Information Engineering and Modeling:


As software is always of a large system (or business), work begins by establishing
requirements for all system elements and then allocating some subset of these
requirements to software. This system view is essential when software must
interface with other elements such as hardware, people and other resources.
System is the basic and very critical requirement for the existence of software in
any entity. So if the system is not in place, the system should be engineered and
put in place. In some cases, to extract the maximum output, the system should be
re-engineered and spruced up. Once the ideal system is engineered or tuned, the
development team studies the software requirement for the system.

Software Requirement Analysis:


This is also known as feasibility study. In this phase, the development team visits
the customer and studies their system. They investigate the need for possible
software automation in the given system. By the end of the feasibility study, the
team furnishes a document that holds the different specific recommendations for
the candidate system. It also includes the personnel assignments, costs, project
schedule, and target dates. The requirements

8
gathering process is intensified and focused specially on software. To understand
the nature of the program(s) to be built, the system engineer ("analyst") must
understand the information domain for the software, as well as required function,
behavior, performance and interfacing. The essential purpose of this phase is to
find the need and to define the problem that needs to be solved.

System Analysis and Design:


In this phase, the software development process, the software's overall structure
and its nuances are defined. In terms of the client/server technology, the number
of tiers needed for the package architecture, the database design, the data structure
design etc are all defined in this phase. A software development model is created.
Analysis and Design are very crucial in the whole development cycle. Any glitch
in the design phase could be very expensive to solve in the later stage of the
software development. Much care is taken during this phase. The logical system
of the product is developed in this phase.

Code generation:
The design must be translated into a machine-readable form. The code generation
step performs this task. If the design is performed in a detailed manner, code
generation can be accomplished without much complication. Programming tools
like Compilers, Interpreters, and Debuggers are used to generate the code.
Different high level programming languages like C, C++, Pascal, and Java are
used for coding. With respect to the type of application, the right programming
language is chosen.

Testing

Once the code is generated, the software program testing begins. Different testing
methodologies are available to unravel the bugs that were committed during the
previous phases. Different testing tools and methodologies are already available.
Some companies build their own testing tools that are tailor made for their own
development operations.

9
Background of The Project:

1. Setting up a Database

We will assume that the database COFFEEBREAK already exists.


(Creating a database is not at all difficult, but it requires special permissions and
is normally done by a database administrator.) When you create the tables used
as examples in this tutorial, they will be in the default database. We purposely
kept the size and number of tables small to keep things manageable.

Suppose that our sample database is being used by the proprietor of a small
coffee house called The Coffee Break, where coffee beans are sold by the pound
and brewed coffee is sold by the cup. To keep things simple, also suppose that
the proprietor needs only two tables, one for types of coffee and one for coffee
suppliers.

First we will show you how to open a connection with your DBMS, and
then, since what JDBC does is to send your SQL code to your DBMS, we will
demonstrate some SQL code. After that, we will show you how easy it is to use
JDBC to pass these SQL statements to your DBMS and process the results that
are returned.

This code has been tested on most of the major DBMS products. However,
you may encounter some compatibility problems using it with older ODBC
drivers with the JDBC-ODBC Bridge.

10
2. Establishing a Connection

The first thing you need to do is establish a connection with the DBMS you want
to use. This involves two steps: (1) loading the driver and (2) making the
connection.

(a)Loading Drivers

Loading the driver or drivers you want to use is very simple and involves just one
line of code. If, for example, you want to use the JDBC-ODBC Bridge driver, the
following code will load it:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Your driver documentation will give you the class name to use. For instance, if
the class name is jdbc.DriverXYZ , you would load the driver with the following
line of code:

Class.forName("jdbc.DriverXYZ");

You do not need to create an instance of a driver and register it with the
DriverManager because calling Class.forName will do that for you automatically.
If you were to create your own instance, you would be creating an unnecessary
duplicate, but it would do no harm.

When you have loaded a driver, it is available for making a connection with a
DBMS.

(b)Making the Connection

The second step in establishing a connection is to have the appropriate driver


connect to the DBMS. The following line of code illustrates the general idea:

Connection con = DriverManager.getConnection(url,


"myLogin", "myPassword");

This step is also simple, with the hardest thing being what to supply for url
. If you are using the JDBC-ODBC Bridge driver, the JDBC URL will start with
jdbc:odbc: . The rest of the URL is generally your data source name or database
system. So, if you are using ODBC to access an ODBC data source called " Fred,
" for example, your JDBC URL could be jdbc:odbc:Fred . In place of " myLogin
" you put the name you use to log in to the DBMS; in place of " myPassword "

11
you put your password for the DBMS. So if you log in to your DBMS with a
login name of " Fernanda " and a password of " J8, " just these two lines of code
will establish a connection:

String url = "jdbc:odbc:Fred";


Connection con = DriverManager.getConnection(url, "Fernanda", "J8");

If you are using a JDBC driver developed by a third party, the


documentation will tell you what subprotocol to use, that is, what to put after
jdbc: in the JDBC URL. For example, if the driver developer has registered the
name acme as the subprotocol, the first and second parts of the JDBC URL will
be jdbc:acme: . The driver documentation will also give you guidelines for the
rest of the JDBC URL. This last part of the JDBC URL supplies information for
identifying the data source.

If one of the drivers you loaded recognizes the JDBC URL supplied to the
method DriverManager.getConnection, that driver will establish a connection to
the DBMS specified in the JDBC URL. The DriverManager class, true to its
name, manages all of the details of establishing the connection for you behind the
scenes. Unless you are writing a driver, you will probably never use any of the
methods in the interface Driver , and the only DriverManager method you really
need to know is DriverManager.getConnection .

The connection returned by the method DriverManager.getConnection is


an open connection you can use to create JDBC statements that pass your SQL
statements to the DBMS. In the previous example, con is an open connection, and
we will use it in the examples that follow.

3. Creating JDBC Statements

A Statement object is what sends your SQL statement to the DBMS. You
simply create a Statement object and then execute it, supplying the appropriate
execute method with the SQL statement you want to send. For a SELECT
statement, the method to use is executeQuery . For statements that create or
modify tables, the method to use is executeUpdate .

It takes an instance of an active connection to create a Statement object. In


the following example, we use our Connection object con to create the Statement
object stmt :

Statement stmt = con.createStatement();

12
At this point stmt exists, but it does not have an SQL statement to pass on
to the DBMS. We need to supply that to the method we use to execute stmt. For
example, in the following code fragment, we supply executeUpdate with the SQL
statement from the example above:

stmt.executeUpdate("CREATE TABLE COFFEES " +


"(COF_NAME VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, "
+
"SALES INTEGER, TOTAL INTEGER)");

Since we made a string out of the SQL statement and assigned it to the variable
createTableCoffees , we could have written the code in this alternate form:

stmt.executeUpdate(createTableCoffees);

4. Executing Statements

We used the method executeUpdate because the SQL statement contained


in createTableCoffees is a DDL (data definition language) statement. Statements
that create a table, alter a table, or drop a table are all examples of DDL statements
and are executed with the method executeUpdate . As you might expect from its
name, the method executeUpdate is also used to execute SQL statements that
update a table. In practice, executeUpdate is used far more often to update tables
than it is to create them because a table is created once but may be updated many
times.

Methodologies Used:
A. Programming Language(JAVA)
B. Database(Back-End)

13
Programming Language(JAVA):
JAVA is the most widely used object-oriented
language today. It is faster and more powerful than Java, another popular object-
oriented language, which lacks certain features such as pointers and multiple
inheritance.
Some important concepts of the object-oriented programming
language are as follows:

• Objects
• Classes
• Data abstraction and encapsulation
• Inheritance
• Polymorphism
• Dynamic binding
• Message passing

JDBC :
JDBC is a Java-based data access technology (Java Standard Edition
platform) from Sun Microsystems. It is an acronym as it is unofficially referred
to as Java Database Connectivity, with DB being universally recognized as the
abbreviation for database. This technology is an API for the Java programming
language that defines how a client may access a database. It provides methods for
querying and updating data in a database.

JDBC allows multiple implementations to exist and be used by the same


application. The API provides a mechanism for dynamically loading the correct
Java packages and registering them with the JDBC Driver Manager. The Driver
Manager is used as a connection factory for creating JDBC connections.
JDBC connections support creating and executing statements. These may be
update statements such as SQL's CREATE, INSERT, UPDATE and DELETE,
or they may be query statements such as SELECT.

14
Data Flow Diagrams

For the administrator:

For the student:

15
16
SNAP SHOTS

Project Developed During course of Industrial


Training:

 Compile the application by typing the command javac login4.java on the


MS DOS prompt.

 Run the application by typing the command java login4 on the Command
prompt to display the login screen of the Online examination System
application.

The figure shows the login screen of the Online examination System application:

Login page
 The figure shows the Login screen of the Online examination System
application that prompts you to enter the login name and password:

17
 Enter correct username and password and then click ok to open next
screen of Online examination System

 If we enter wrong user name or password then the incorrect user name
or password error will shown.

18
 Click the ok button in login screen will open a menu screen of Online

examination system.

19
 The administrator can add, update or see the questions list in the master

menu of the window.

20
 The student starts the test by clicking in the “Start Test” option in the Test

menu.

21
 After starting the test, the questions appear on the screen which are

multiple choice questions with only one answer and the student has to

mark the checkbox corresponding to his answer.

22
 After finish test the following result window is displayed in which result
of a given test are shown.

23
 This will appear when our test time is over.

24
 In the User Details menu, the new users can be added, the list of users can

be shown

25
26
Result and Conclusions
The Online Examination is a great improvement over the manual system using
case fields and paper. The computerization of the system has sped up the process.
In the current system, the front office managing is very slow. The Online
Examination System was thoroughly checked and tested with dummy data and
thus is found to be very reliable.

This project that I undertook was truly a very rewarding experience for me
in more than one way. It has given a big thrust to my technical knowledge as
prospective Software professional. It has also helped me enhance my skills on the
personal front.

And I feel extremely satisfied by the fact that I have managed to develop
the project of course with equal contribution from my team members. I think I
have exploited the opportunity that came my way to the fullest extent by
increasing my technical know-how and also gaining the valuable work experience
apart from studying the other subjects in our curriculum.

27
Reference and Bibliography
1. Acharya, Kamal. "STUDENT INFORMATION MANAGEMENT
SYSTEM." Authorea Preprints (2023).
2. Acharya, Kamal. "Library Management System." Available at
SSRN 4807104 (2019).
3. ACHARYA, KAMAL, et al. "LIBRARY MANAGEMENT SYSTEM."
(2019).
4. Acharya, Kamal. "Online bus reservation system project
report." Authorea Preprints (2024).
5. Acharya, Kamal. "Online bus reservation system project report."
(2024).
6. Acharya, Kamal. “Online Bus Reservation System.” SSRN
ElectroNIC ASIA Journal (2024): n. pag.
7. Acharya, Kamal. “Student Information Management System
Project.” SSRN ElectroNIC ASIA Journal (2024): n. pag.
8. Acharya, Kamal. “ATTENDANCE MANAGEMENT
SYSTEM.” International Research Journal of Modernization in
Engineering Technology and Science (2023): n. pag.
9. Acharya, Kamal. “College Information Management
System.” SSRN ElectroNIC ASIA Journal (2024): n. pag.

28

You might also like