Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 18

A MICRO PROJECT REPORT

ON

“ Online quiz management using java ”

SUBMITTED BY

Kurandale Chaitanya Laxaman

UNDER THE GUIDANCE OF


Prof. Walunj S.S.

In partial fulfillment for the award


Of

DIPLOMA IN COMPUTER ENGINEERING

Sanjivani Pratisthan’s

S. P. I. T. POLYTECHNIC, KURUND

2021 – 2022
Sanjivani Pratisthan’s
S. P. I. T. POLYTECHNIC, KURUND

CERTIFICATE
This is to certify that a micro project work entitled

“ Online quiz management using java ”

is bonafide work carried out by following students

Name of Student Enrollment Number

Kurandale Chaitanya Laxaman 2211720159

in partial fulfillment for the award of “Diploma in Computer Engineering” during


the year 2023-24 as required by the Maharashtra State Board of Technical Education,
Mumbai. The micro project report has been approved as it satisfies the academic
requirements in respect of micro project work prescribed by MSBTE, Mumbai.

Place: Kurund, Ahmednagar.


Date: / / 2023

Project Guide Head of Department Principal


(Prof. Walunj S.S.) (Prof. Pawar T. S.) (Prof. Kapse S. D.)
ACKNOWLEDGEMENT
This project is done as a Fifth semester project, as a part course titled “ONLINE
QUIZ MANAGEMENT USING JAVA”.

I am really thankful to our course the Principal Prof. Kapse S. D.and the HOD Prof.
Walunj S.S. S.P.I.T.Polytechnic,kurund for his invaluable guidance and assistance,
without which the accomplishment of the task would have never been possible.

I also thank Prof. Pawar T.S. for giving this opportunity to explore into the real world
and realize the interrelation without which a Project can never progress. In our
present project I have chosen the topic-

“ONLINE QUIZ MANAGEMENT USING JAVA”.

I also thankful to parents, friend and all staff of Computer engineering department,
for providing us relevant information and necessary clarifications, and great support.
CERTIFICATE

This is to certify that Software Engineering project report entitled "

Online quiz management using java " is the work carried out

Kurandale Chaitanya Laxaman students of Diploma in Computer

Engineering V Semester, S.P.I.T.Polytechnic,kurund under the

supervision of Prof. Walunj S.S.This report has not been submitted to

any other organization/institution for the award any other degree/diploma.


ABSTRACT

OnlineQuizSystem is an intelligent prototype developed as a multiple choice question


examination system which is built as a Web based application scalable to run on both
intranet and internet. OnlineQuizSystem is intelligent enough and equipped with a
level of automation to guide the students to get proficiency/become subject matter
experts by taking the tests. The core underlying automation of the OnlineQuizSystem
will generates questions and options on the fly basis and captures the answers from
students into the database.

It ensures that students will have the Mock Tests for practice, and can get the
results displayed in their panel. The OnlineQuizSystem is designed for three major
roles. Those are  An administrator who controls all the level of roles and creates the
tests.  An Instructor should be able to create test questions and manage tests.

A Student who is an end user for the tests. The main objective of the
OnlineQuizSystem is to efficiently evaluate the student using a fully automated
system that not only saves a lot of time but also gives fast results. Technologies used
to develop this website are HTML, CSS, and JavaScript for client side validation, C#
& ASP.NET for dynamic content update. Microsoft SQL Server is used as a data base
server for this application.

The system has been seeded with about 300 questions that would allow
generation of multiple choice questions of tester selected topics from an
undergraduate class in relational databases. Grading can be done immediately, for
student practice purposes, or if the exam is given simultaneously to student of a class,
grading can be delayed until everyone is done with the quiz. Another salient features
of Online Quiz system is the support for templated question formats. The main
advantage of templated questions are, during an assessment each student will receive
different questions based on same concept. This helps faculty to avoid any
INTRODUCTION

A Quiz Management System In Java is to perform the examination for the


student where an teacher can add questions, set password for quiz ,set timer for the
exam and types of examination depends on the category. As a user student can attend
those exams. The student user can submit the test after finish the exam and get results
through mail on there email id(it is implemented by mail services in java). A teacher
and admin user can get the history of his exam results. Admin also can check the
complete activity of all the users and teacher users. Like exams and results.

Quiz Management System project is a desktop application which is developed in


Java platform. This Java project with tutorial and guide for developing a code. Quiz
Management System is a open source you can Download zip and edit as per you need.
If you want more latest Java projects here. This is simple and basic level small project
for learning purpose. Also you can modified this system as per your requriments and
develop a perfect advance level project. Zip file containing the source code that can
be extracted and then imported into eclipse,netbeans. This Source code for BE,
BTech, MCA, BCA, Engineering, Bs.CS, IT, Software Engineering final year
students can submit in college. This script developed by ravindra jain. This desktop
application 100% working smooth without any bug. It is developed using Java and
Database mysql. This software code helpful in academic projects for final year
students. We have a great collection of Java projects.
ABOUT PROJECT

The „MCQ Quiz Application‟ project will be developed to overcome the time
consuming problem of manual system. Apart from that in current system, checking
the answer sheets after taking test, waste the examiners time, so this application will
check the correct answer and save the examiner time and carry the examination in an
effective manner. The users which are use this system don‟t need to high computing
knowledge and also system will inform them while entering invalid data.

The aim of this project is to computerized the existing manual system and help
the examiners to save their valuable time and important data. Apart from this, data
which are exist in this system, will exist for long period of time and will be easy
accessible. This project helps the examiners to manage their services in a good way
and provide a better service to their users.

The objective of this project is to manage the details of students, examinations,


marks, courses and papers in a good manner. The performance of the application will
be fully control by administrator and administrator can guaranty any one to access.
The project will reduce the manual process in managing

examinations and all issues regarding that.


Functionalities of the project will be as following:

- Able the examiners to punch the MCQ questions online;


- Able the users to solve the questions online;
- Examiners can manage the information regarding exam;
- Correct answers will be evaluated by system (First it should be determining by
examiner); - Users can see their result after submitting the test.

To design and implement this project we plan that the project support to different
types of users apart from its administrative part. When project is run for the first time
it allowed the user to select as who he/she wants to login in the system. Project
support login as teacher and login as student. If a user who is student, try to login as
teacher system will not allow him and vice versa. User who add as teacher in system
will be able to punch test and questions to system and also will be able to observe the
result of the student which attempt tests. User who login to system as student will be
able to select a particular test and attempt questions depend on this test. After
attempting the test and submitting that user will receive a message that you have
attempt the test successfully and if the user tries to attempt the same test, system will
not allow him/her. Also a user which login to system as student will be able to
observe the result of test he/she attempt.

 Index: Which allow users to select their type of login to system;

 Teacher Login: Able the teachers to login to system with a valid user name and
password. If a teacher is successfully login to system, he/she will have access to
following pages:

 Teacher Home: Which have information about Online MCQ Quiz and
issues support by this system for the teachers;
 Punch Test: Which able the teacher to punch a test and after entering
the test name and clicking on „Submit
 Students Marks: Which able the teacher to observe the result of all student who
have attempt the tests;

 Student Login: Able the students to login to system with a valid user name and
password. If student is successfully login to system, he/she will have access to
following pages:
 Student Home: Which have information about Online MCQ Quiz and issues
support by this system for students;
 Attempt Test: Which able the student to select a particular test for attempting
from the existing test in system selected test‟, the questions of selected test will be
displayed for the student to attempt. Than student will be able to attempt the
questions and after submitting, student will receive a message that test is
successfully attempt.
 Marks: Which able the particular students to have access to result of the test
which he/she attempt.

Existing Systems:
There are various MCQ quiz applications exist in the internet with
different criteria. Each of the existing applications has their own goodness
and problems. In this MCQ quiz application which is designed and
implemented in JSP based we try to overcome the existing problems with
following features: - Remove source confuse issue;
- Better management;
- Connection to database for better storing of data;
- Better frontend management; - Better backend management; - Try to decrease error
issuer during runtime.
Project Objectives :

The main objective of the project MCQ Quiz Application is to manage


the details of students, examinations, marks, courses and papers. The
project is totally at administrative end and thus only the administrator is
granted the access. The purpose of the project is to build an application to
reduce the manual work for managing the MCQ quiz and we will follow
to achieve these objectives in this project.
- To create an appropriate platform for best managing of MCQ test;
- To overcome the time consuming issues and taking MCQ tests;
- To release the marks of the test taker as soon as possible;
- To manage the information of different tests

Methodology :

The methodology of developing of project will be a step-by-step sequence


to design, develop and deliver the application. In software engineering
this methodology called „waterfall model‟ which one portion of work
follows after another in a linear sequence. Following steps will be
followed in this methodology:

- Initiation (Requirement Specification);

- Planning and design;

- Execution (construction and coding);

- Validation (Testing);

- Closure (Installation and Maintenance).


SOURCE CODE OF PROJECT

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;

class OnlineTest extends JFrame

implements ActionListener

{ private static final long

serialVersionUID = 1L;

JLabel label;
JRadioButton radioButton[] = new JRadioButton[5];
JButton btnNext, btnBookmark;
ButtonGroup bg;
int count = 0, current = 0, x = 1, y = 1, now = 0;
int m[] = new int[10];

// create jFrame with radioButton and JButton


OnlineTest(String s) {
super(s);
label = new JLabel();
add(label);
bg = new ButtonGroup();
for (int i = 0; i < 5; i++) {
radioButton[i] = new JRadioButton();
add(radioButton[i]);
bg.add(radioButton[i]);
}
btnNext = new JButton("Next");
btnBookmark = new JButton("Bookmark");
btnNext.addActionListener(this);
btnBookmark.addActionListener(this);
add(btnNext);
add(btnBookmark);
set();
label.setBounds(30, 40, 450, 20);

//radioButton[0].setBounds(50, 80,

200, 20);

radioButton[0].setBounds(50, 80, 450, 20);


radioButton[1].setBounds(50, 110, 200, 20);
radioButton[2].setBounds(50, 140, 200, 20);
radioButton[3].setBounds(50, 170, 200, 20);
btnNext.setBounds(100, 240, 100, 30);
btnBookmark.setBounds(270, 240, 100, 30);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(null);
setLocation(250, 100);
setVisible(true);
setSize(600, 350);
}

// handle all actions based on event


public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnNext) {
if (check())
count = count + 1;
current++;
set();
if (current == 9) {
btnNext.setEnabled(false);
btnBookmark.setText("Result");
}
}
if (e.getActionCommand().equals("Bookmark")) {
JButton bk = new JButton("Bookmark" + x);
bk.setBounds(480, 20 + 30 * x, 100, 30);
add(bk);
bk.addActionListener(this);
m[x] = current;
x++;
current++;
set();
if (current == 9)
btnBookmark.setText("Result"); setVisible(false);
setVisible(true);
}
for (int i = 0, y = 1; i < x; i++, y++) {
if (e.getActionCommand().equals("Bookmark" + y)) {
if (check())
count = count + 1;
now = current;
current = m[y];
set();
((JButton) e.getSource()).setEnabled(false);
current = now;
}
}

if (e.getActionCommand().equals("Result")) {
if (check())
count = count + 1;
current++;
JOptionPane.showMessageDialog(this, "correct answers= " + count);
System.exit(0);
}
}

// SET Questions with options


void set() {
radioButton[4].setSelected(true);
if (current == 0) {
label.setText("Que1: Which of the following is not introduced with Java 8?");
radioButton[0].setText("Stream API");
radioButton[1].setText("Serialization");
radioButton[2].setText("Spliterator");
radioButton[3].setText("Lambda Expression");
}
if (current == 1) {
label.setText("Que2: Which feature of java 7 allows to not explicitly close IO
resource?");
radioButton[0].setText("try catch finally");
radioButton[1].setText("IOException");
radioButton[2].setText("AutoCloseable");
radioButton[3].setText("Streams");
}
if (current == 2) {
label.setText("Que3: SessionFactory is a thread-safe object.");
radioButton[0].setText("true");
radioButton[1].setText("false");
radioButton[2].setText("don't know");
radioButton[3].setText("false");
}
if (current == 3) {
label.setText("Que4: Which is the new method introduced in java 8 to iterate over a
collection?");
radioButton[0].setText("for (String i : StringList)");
radioButton[1].setText("foreach (String i : StringList)");
radioButton[2].setText("StringList.forEach()");
radioButton[3].setText("List.for()");
}
if (current == 4) {
label.setText("Que5: What is the substitute of Rhino javascript engine in Java
8?");
radioButton[0].setText(" Nashorn");
radioButton[1].setText("V8");
radioButton[2].setText("Inscript");
radioButton[3].setText("Narcissus");
}
if (current == 5) {
label.setText("Que6: How to read entire file in one line using java 8?");
radioButton[0].setText("Files.readAllLines()");
radioButton[1].setText("Files.read()");
radioButton[2].setText("Files.readFile()");
radioButton[3].setText("Files.lines()");
}
if (current == 6) {
label.setText("Que7: Which feature of java 7 allows to not explicitly close IO
resource?");
radioButton[0].setText("try catch finally");
radioButton[1].setText("IOException");
radioButton[2].setText("AutoCloseable");
radioButton[3].setText("Streams");
}
if (current == 7) {
label.setText("Que8: Which of the following is not a core interface of
Hibernate?");
radioButton[0].setText("Configuration");
radioButton[1].setText("Criteria");
radioButton[2].setText("SessionManagement");
radioButton[3].setText("Session");
}
if (current == 8) {
label.setText("Que9: SessionFactory is a thread-safe object.");
radioButton[0].setText("true");
radioButton[1].setText("false");
radioButton[2].setText("don't know");
radioButton[3].setText("false");
}
if (current == 9) {
label.setText("Que10: Which of the following is not a state of object in Hibernate?");
radioButton[0].setText("Attached()");
radioButton[1].setText("Detached()");
radioButton[2].setText("Persistent()");
radioButton[3].setText("Transient()");
}
label.setBounds(30, 40, 450, 20);
for (int i = 0, j = 0; i <= 90; i += 30, j++)
radioButton[j].setBounds(50, 80 + i, 200, 20);
}

// declare right answers. boolean check()

{
if (current == 0)
return (radioButton[1].isSelected());
if (current == 1)
return (radioButton[1].isSelected());
if (current == 2)
return (radioButton[0].isSelected());
if (current == 3)
return (radioButton[2].isSelected());
if (current == 4)
return (radioButton[0].isSelected());
if (current == 5)
return (radioButton[0].isSelected());
if (current == 6)
return (radioButton[1].isSelected());
if (current == 7)
return (radioButton[2].isSelected());
if (current == 8)
return (radioButton[0].isSelected());
if (current == 9)
return (radioButton[0].isSelected());
return false;
}

public static void main(String s[])


{
new OnlineTest("Online Test App");
}
}
OUTPUT OF PROJECT
CONCLUSION

As mentioned the project is on java platform which is coded in NetBeans IDE


with help HTML, CSS and JavaScript and running as web page by Apache Tomcat
web server. But this project is only for MCQ test but in the future we have plan to
extended it to support subjective type of questions with more functionality. We will
add Administrative part on it which able the system to delete test, add user, delete
user and so on graphically vie the web.

To conclude, this is a simple Online MCQ Quiz which able a teacher to punch
MCQ question to system which will be store in SQL Server database and able the
student to attempt any test for once. The marks of student will be calculated according
to questions they attempt and will be displayed by the system to teachers and student.

You might also like