Mentor Report
Mentor Report
Mentor Report
Submitted to
RAJIV GANDHI PROUDYOGIKI VISHWAVIDYALAYA
BHOPAL (M.P)
CERTIFICATE
This is to certify that the work embodied in this project work entitled ” Language
proficiency Test” has been satisfactorily completed by the Aman Singh(Roll
No.25), Arnim mathur(Roll No.37) , It is a bonafide piece of work, carried out
under the guidance in Department of Computer Science & Engineering,
Lakshmi Narain College of Technology, Bhopal for the partial fulfillment of the
Bachelor of Engineering during the academic year 2018-19.
Guided By
Aditya patel
(Guide Name)
Designation
Approved By
SADHNA MISHRA
Prof. & Head
Department of Computer Science & Engineering
LAKSHMI NARAIN COLLEGE OF TECHNOLOGY, BHOPAL
ACKNOWLEDGEMENT
We would also thank our institution and all the faculty members without
whom this project work would have been a distant reality.
1. Problem Domain 1
2. Literature Survey 2-12
3. Major objective & scope of project. 13-14
4. Problem Analysis and requirement specification 15-23
5. Detailed Design(Modeling and ERD/DFD ) 24-36
6. Hardware/Software platform environment 37-38
7. Snapshots of Input & Output 39-45
8. Coding 46-72
9. Project limitation and Future scope 73-74
10. References 75
Introduction
Exam System is a full-fledged system which is beneficial for both teachers and students. With
this application, Administrator can allow authorized entry of users which includes faculties and
students.
Faculties are the one who register on the site and conduct timed exams in their respective
courses. They can add questions in the test by selecting the available settings.
The tests added by faculties are available to students who can attempt the testand get score then
and there. Thus the purpose of the application is to provide a system that saves the efforts and
time of both the teachers and the students.
Exam System is a Desktop application that establishes a network between the faculties and the
students.Faculties enter on the application 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 faculties
and administratorto evaluate their performance.
Exam 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 administrator keeps an eye on the overall functioning of the system which includes how
many users are using the site, how many tests are added by which faculty, how many students
have given those tests and view the score of any student.
The system entitled “Exams System” is application software, which aims at providing services to
the institutes and providing them with an option of selecting the eligible students by themselves.
CHAPTER 1
PROBLEM DOMAIN
Computers are known for their wide range of uses especially in scientific and mathematical
fields. However little or no thought has been given to designing a complete and thorough
intelligence examination System in our immediate environment. This examination system is
designed to assist Teachers in attaining a standardized sample, and as such the psychological
implication of such a design is very important. The design of the system is quite simple and
easily to understood. Its flexibility makes it amenable for future changes and amendment to
either incorporate other aspects of intelligence or to be designed for any Objective Type Exam.
The question of the examination system are programmed and visually displayed on the system's
screen in an interactive form.
Existing system The Existing system of conducting examination process is manual. Existing
system is a large man power process and is difficult to implement it at different platform. It has
so many problems. So we introduce a OLES system, which is fully computerized. Existing
system is a large man power process and is difficult to implement.
CHAPTER 2
LITERATURE SURVEY
2.1 Introduction
In this chapter, the concepts and technologies used in the work and how they are used are
explained. Also in this chapter, the works of other researchers who have worked on
related works were discussed under review of related literature, to aid the researcher in
solving the identified problems
An online website for tutoring and e-examination of economic course aimed to present a novel
software tool can be used for online examination and tutorial application of the syllabus
of economic course (EL Emary and Al Sondos, 2006). Also, among the main interests of
the paper is to produce a software through it we make sure that students have studied all
the concepts of economics. So, the proposed software is structured from two major modules: The
first one was an online website to review and make self-test for all the material of economic
course. The second part is an online examination using a large database bank of questions
through it the level of students can be evaluated immediately and some statistical evaluations
can be obtained. The developed software offers the following features:
1. Instructors could add any further questions to maximize the size of the bank of
questions.
2. Different examinations for each student with randomly selected questions from the
bank of questions can be done.
3. Different reports for the instructors, students, classes…etc. can be obtained.
4. Several students can take their exams simultaneously without any problem inside and
outside their campus. The proposed software has been designed to work base on the client
server architecture.
Electronic exam is a difficult part of e-learning security (Huszti and Petho, 2008). The paper
describes a cryptographic scheme that possesses security requirements, such that authenticity,
anonymity, secrecy, robustness, correctness without the existence of a Trusted Third Party. The
proposed protocol also provides students a receipt, a proof of a successful submission, and it is
based on existence of anonymous return channels. Another research work proposed a
theoretical approach that incorporates available fingerprint biometrics authentication
technologies in conjunction with e-learning environments to curb unethical conduct during e-
learning exam taking (Levy and Ramim, 2007). The proposed approach suggests practical
solution that can incorporate a random fingerprint biometrics user authentication during exam
taking in e-learning courses. Doing so is hypothesized to curb exam cheating in e-
learning environments.
Ayo et al (2007) proposed a model for e-Examination in Nigeria where all applicants are
subjected to online entrance examination as a way of curbing the irregularities as proposed by
the Joint Admissions Matriculation Board (JAMB), the body saddled with the responsibility of
conducting entrance examinations into all the Nigerian universities. This model was designed
and tested in Covenant University, one of the private universities in Nigeria. Their
findings revealed that the system has the potentials to eliminate some of the problems
that are associated with the traditional methods of examination such as impersonation and other
forms of examination malpractices. Based on the development of e-learning in the only
Open University in Nigeria (Ipaye, 2009), discusses the process of establishing e-learning
environment. Another paper seeks to solve a part of that problem by designing and developing a
web application where tests in multiple choice formats will be taken online and graded
immediately (Akinsanmi et al, 2010). The web application relies solely on Microsoft
developed technologies. It runs on the Microsoft.net framework, uses the ASP.NET web
server, C# as the intermediate language, ADO.NET to interact with the relational database and
Microsoft SQL server as the relational database.
A large body of literature already exists on online assessment using computers and paper. For
example, Bodmann and Robinson (2004) conducted an experimental study to compare speed
and performances differences among CBTs and PPTs.
In the experiment fifty-five
undergraduate students enrolled in
the subject of educational psychology,
participated in the
studies which were already familiar
with CBTs. Both CBTs and PPTs
contained 30 MCQs
items with 35 minute of time limit. The
findings observed that undergraduates
completed the
CBT faster than PBT with no difference in
scores. Research outcomes have thus
supported the
fact that when students are
motivated and testing conditions are
equivalent, there are no
differences between the scores
obtained via CBT or PPT (Lynch, 1997
&Marson, Patry, and
Berstein, 2001; cited by Alabi, Issa and
Oyekunle, 2012).
In the experiment fifty-five undergraduate students enrolled in the subject of educational
psychology, participated in the studies which were already familiar with CBTs. Both CBTs
and PPTs contained 30 MCQs items with 35 minute of time limit. The findings observed that
undergraduates completed the CBT faster than PBT with no difference in scores. Research
outcomes have thus supported the fact that when students are motivated and testing
conditions are equivalent, there are no differences between the scores obtained via CBT or
PPT (Lynch, 1997 &Marson, Patry, and Berstein, 2001; cited by Alabi, Issa and Oyekunle,
2012).
Gary et al (2008) at the University of New South Wales, Sydney studied the effect of online
formative assessment on learning. The outcomes support the contention that integrated
well designed online formative assessments can have significant positive effects on learning.
Web based formative assessments also support equity and inclusiveness by allowing
students to attempt each assessment anonymously on multiple occasions at any time. Lim, et al.,
(2006) examined medical students’ attitude about CB Vs PB testing in Singapore. Through an
online survey, 213 (53.5%) final-year MBBS students were tested out of which 91 (79.8%)
preferred CBT, 11 (9.6%) preferred P&P format and 12 (10.5%) were un-sure.
The study found that 42 indicated that 42 liked CBT because of good quality of images
and independent of assigned seating positions; 22 liked CBT because they could proceed at
their own pace; one stated that CBT examinations was fun; 4 enjoyed the convenience of CBT
and 6 cited “equality” as the reason they preferred CBT over P&P testing.
Karadeniz (2009) studied the impact of paper based, web based and mobile based assessment
on students’ achievement. A group of 38 students were experimented for 3 weeks. Significant
differences were found between the scores achieved by the students in second week but not in
first week. The paper revealed that students had positive attitude towards web based and
mobile based assessment due to ease of use, comprehensive and instant feedback. Moreover,
most favoured tests were web based and the least favoured were paper based.
Calarina and Wallace (2002) investigated to confirm several key factors in CBT versus PPT
assessment. Factors of the study were content familiarity, computer familiarity,
competitiveness, and gender. The study used a post-test only designed with one factor,
test mode (Computer-based and Paper-based). Students’ score on 100-item multiple choice
51 items and students’ self-report on a distance learning survey were treated as dependent
variables. Four sections of Computer Fundamental Course consisting of 105 students were
selected as sample of the investigations. Results showed that CBT delivery impacted positively
on students’ scores as compared to PPT. The study found that the CBT group out-performed
the PPT group. Gender, competitiveness, and computer familiarity were not related to this
performance difference, though content familiarity was.
Jim and Sean (2006) concluded that the e-assessment can be justified in a number of ways. It can
help avoid the meltdown of current paper-based systems; it can assess valuable life skills; and it
can be better for users. For example, by providing on demand tests with immediate
feedback and perhaps diagnostic feedback, and more accurate results via adaptive testing,
it can help improve the technical quality of tests by improving the reliability of scoring.
Therefore, a proper preparation of the students for the exam via an introduction to the software, a
CBT could be a good method to curtail examinations malpractice effectively.
A study by Ayo (2007) on Nigerian University stated that 81.3% of the applicants were
computer literate, while the remaining 18.7% were guided through the examination. The total
number 1023 (75.7%) of respondents who participated in the e-examination conducted in
Covenant University took electronic examination for the first time and as such found the
examination easy, a few found it a little challenging but adjusted with time. The study revealed
that only 327 (24.2%) of the applicants had not been involved in any form of electronic
examination before, and found it difficult.
2.3 Literature Review
There is a growing body of research focused on developing better ways to manage e-exams
systems and e-learning systems. Some of these researches focused on various sections of the
system and these includes:
Schramm (2008) looked at a e-learning web based system that could simply offer and grade
mathematical questions with infinite patience. Therefore it needs the capability for in and output
of mathematical formulas, the dynamic generation of plots and the generation of random
expressions and numbers. Al-Bayati and Hussein (2008) presents an applied Generic Software of
multiple kinds of e-exam package; this package of e-exam is oriented to Hearing Impaired (HI)
persons. Therefore the exam material of this package is translated into language of HI persons
like sign language and finger spelling. The idea of the Generic software is to present an empty
templates to the teacher who would like to develop his required e-exam for the needful topic
(mathematics, language, science, etc) and desired set of exam kinds (multiple choices, matching
between words, fill in blanks, etc).
Web-based Examination System is an effective solution for mass education evaluation
(Zhenming et al, 2003). They developed a novel online examination system based on a
Browser/Server framework which carries out the examination and auto-grading for objective
questions and operating questions, such as programming, operating Microsoft Windows, editing
Microsoft Word , Excel and PowerPoint, etc. It has been successfully applied to the distance
evaluation of basic operating skills of computer science, such as the course of computer skills in
Universities and the nationwide examination for the high school graduates in Zhejiang Province,
China. Another paper (He, 2006) presents a web-based educational assessment system by
applying Bloom’s taxonomy to evaluate student learning outcomes and teacher instructional
practices in real time. The system performance is rather encouraging with experimentation in
science and mathematics courses of two local high schools.
Another paper proposed web based online examination system (Rashad et al, 2010). The system
carries out the examination and auto-grading for students exams. The system facilitates
conducting exams, collection of answers, auto marking the supports many kinds of questions. It
was used via Internet and is therefore suitable for both local and remote examination. The system
could help lecturers, instructors, teachers and others who are willing to create new exams or edit
existing ones as well as students participating in the exams. The system was built using. various
open source technologies AJAX, PHP, HTML and MYSQL database are used in this system.
An auto-grading module was generalized to enable different exam and question types. The
system was tested in the Mansoura university quality assurance center. The test proved the
validity of using this kind of web based systems for evaluates students in the institutions with
high rate of students.
An online website for tutoring and e-examination of economic course aimed to present a novel
software tool can be used for online examination and tutorial application of the syllabus of
economic course (EL Emary and Al Sondos, 2006). Also, among the main interests of the paper
is to produce a software through it we make sure that students have studied all the concepts of
economics. So, the proposed software is structured from two major modules: The first one was
an online website to review and make self-test for all the material of economic course. The
second part is an online examination using a large database bank of questions through it the level
of students can be evaluated immediately and some statistical evaluations can be obtained. The
developed software offers the following features:
1) Instructors could add any further questions to maximize the size of the bank of questions.
2) Different examinations for each student with randomly selected questions from the bank of
questions can be done.
Electronic exam is a difficult part of e-learning security (Huszti and Petho, 2008). The paper
describes a cryptographic scheme that possesses security requirements, such that authenticity,
anonymity, secrecy, robustness, correctness without the existence of a Trusted Third Party. The
proposed protocol also provides students a receipt, a proof of a successful submission, and it is
based on existence of anonymous return channels. Another research work proposed a theoretical
approach that incorporates available fingerprint biometrics authentication technologies in
conjunction with e-learning environments to curb unethical conduct during e-learning exam
taking (Levy and Ramim, 2007). The proposed approach suggests practical solution that can
incorporate a random fingerprint biometrics user authentication during exam taking in e-learning
courses. Doing so is hypothesized to curb exam cheating in e-learning environments.
Ayo et al (2007) proposed a model for e-Examination in Nigeria where all applicants are
subjected to online entrance examination as a way of curbing the irregularities as proposed by
the Joint Admissions Matriculation Board (JAMB), the body saddled with the responsibility of
conducting entrance examinations into all the Nigerian universities. This model was designed
and tested in Covenant University, one of the private universities in Nigeria. Their findings
revealed that the system has the potentials to eliminate some of the problems that are associated
with the traditional methods of examination such as impersonation and other forms of
examination malpractices. Based on the development of e-learning in the only Open University
in Nigeria (Ipaye, 2009), discusses the process of establishing e-learning environment. Another
paper seeks to solve a part of that problem by designing and developing a web application where
tests in multiple choice formats will be taken online and graded immediately (Akinsanmi et al,
2010).
CHAPTER 3
Major Objective
Exam System is very useful for Educational Institute to prepare an exam, safe the time that will
take to check the paper and prepare mark sheets. It will help the Institute to testing of students
and develop their skills. But the disadvantages for this system, it takes a lot of times when you
prepare the exam at the first time for usage. And we are needs number of computers with the
same number of students.
The effective use of " Exam System", any Educational Institute or training centers can be use it
to develop their strategy for putting the exams, and for getting better results in less time.
Corporate between the data stored in the server of the Institution and our On-line Exam
system. To deal with On-line System in an easy way and an efficient mannered.
(connection process)
Create strong and secrete data base that allow for any connection in a secret way, to
prevent any outside or inside attacks.
Specify a privilege for each person to allow each person use this system to create his own
exam. And have a complete control on his exam.
Allow each person to create more than one exam with different way to create variant
questions.
3.2 Scope
This website provides facility to institutes to conduct online exams and maintaining the records
of users by providing authorized entry. Users can register as Faculty / Student and wait for the
admin to send a notification email. User can then login with the valid username and password
and can carry out their respective tasks
Admin can add/ delete a particular user who registers on site and can view the activities
of users i.e. how many tests are added by a particular faculty, how many tests are given
by particular student and view their respective scores.
Faculty can add time limited tests in a particular course by adding questions in the
same ,can view which student has attempted the tests and view their respective scores.
Student can attempt test added by faculty and get their score then and there. They can also get the
test review i.e. answer explanation of each question in test.
Fig 1. 1.
CHAPTER 4
4.1 Introduction
Once the visioning phase is complete, it is time to gather and analyze requirements for your
software project, system or whatever else you are planning. At this point, it is often useful to
identify a smaller subset of the stakeholder group who can work intensively with you on this
(although all stakeholders can be included, if the group is small). This is also a good time to
bring together stakeholders and key members of the development and implementation team.
Generally, requirements gathering and analysis happen over a series of meetings (at least two). I
find it best to do it freeform and capture ideas on whiteboards; more formal documentation can
follow later, or documentation can remain informal if the project doesn’t require it.
Remember that this is only the first and most intensive stage of requirements gathering. Ideally,
requirements should be continuously collected, documented, analyzed and refined throughout the
development process.
Create a context diagram, which is usually a rough drawing of the system and its context,
based on previous goal-setting with the stakeholders.
Define actors and their goals. Actors are the primary users of the system. Ask what specific
activities are each actor trying to achieve?
List initial use cases in brief narrative. Ask how each actor will achieve each goal, but don’t
try to get too detailed at this point.
Begin capturing terms to include in the glossary as they come in up in the discussion.
Identify business rules that provide constraints on the system (based on the givens identified
during the vision stage plus others subsequently identified). Ask what we can and can’t do
according to our organizational policies, laws of the land, requirements of our funders and so
forth.
Identify nonfunctional requirements (based on the givens, high-level goals and others
subsequently identified). These requirements won’t be captured in the use cases but are
important to document. They might include security, technology, system integration,
localization, reliability and similar requirements.
Identify working group members from the stakeholder group to call upon for testing and
feedback as development progresses.
In this chapter, detailed description of the system functionalities and services are described
according to systematic procedures in gathering and analysis of the different types of
requirements. We use these technologies in data gathering.
4.2 Proposed System Requirement gathering
Good requirements start with good sources. Finding those quality sources is an important task
and, fortunately, one that takes few resources. Examples of sources of requirements include:
Users
Administrators and maintenance staff
Partners
Domain Experts
Industry Analysts
Information about competitors
After you have identified these sources, there are a number of techniques that may be used to
gather requirements. The following will describe the various techniques, followed by a brief
discussion of when to use each technique.
To get the requirements down on paper, you can to do one or more of the following:
1-Admin:
2-Student
Security requirements are important factors in this system as classified data will be stored in
the database. User validation will be done during login to insure that the user is valid and that
the user only has access to his or her permission data. General users will only have access
through the user interface.
The system will have consistent interface formats and button sets for all forms in the
application, will have a form based interface for all data entry and viewing formats, and will
generate reports that are formatted in a table and that should look like the existing manual
report formats for user friendliness.
The system will be easily maintained by the developer or other authorized trained person
and it shall respond as fast as possible in generating report.
1. Security issues
2. Speed
3. Intranet services
4. Consistence
5. Efficiency
6. Services validation and verification
4.2.4 Functional System Requirement:
This section gives a functional requirement that applicable to the On-Line Exam system.
There are three sub modules in this phase.
Candidate module.
Admin module
Candidate module:
The candidate will logon to the software and take his examination. He can also check
his previous examinations marks and his details. The candidate will get result
immediately after the completion of the examination.
Administrator module:
The administrator collects all the results after successful completion of the
examination and sends to the head quarters as and when required.
The features that are available to the Administrator are:
The administrator has the full fledged rights over the OES.
Can create/delete an account.
Can view the accounts.
Can change the password.
Can hide any kind of features from the both of users.
Insert/delete/edit the information of available on OES.
Can access all the accounts of the faculty members/students.
The database may get crashed at any certain time due to virus or operating system
failure. Therefore, it is required to take the database backup.
Some of the factors that are identified to protect the software from accidental or
malicious access, use, modification, destruction, or disclosure are described below.
Keep specific log or history data sets
The Quality of the System is maintained in such a way so that it can be very user
friendly to all the users.
SYSTEM DESIGN
5.1 Introduction
System development can generally be thought of as having two major components: system
analysis and system design. System design is the process of planning a new business system or
one to replace an existing system. Before this can be done, we must thoroughly understand the
old system and determine how computer and software can be used to make the operation
effective. System analysis and Design refers to the process of examining business situation
with the intent of improving it through better procedures and methods. System analysis
and Design relates to shaping organizations, improving performance and achieving objectives
for profitability and growth. The emphasis is on system in action, the relationship among
subsystem and their contribution to meeting a common goal.
5.2 Methodology
This study relied on information obtained from secondary sources especially online materials,
documents of relevant agencies like NITDA. From these documents required information was
obtained on the performance computer based test in CCNA Certifications. The author
also examined reports, academic research papers, articles and newspaper reports on essence of
CBT in Cisco Networking Academy. The obtained information enables the critical review of
current state of Cisco Training Centre in Prof. Iya Abubukar Resource Centre, Bauchi in which
Object Oriented Analysis and Design (OOAD) methodology was used during the software
development.
Object Oriented Analysis and Design methodology is a software engineering approach that
modules a system as a group of interacting object. OOAD models are pictures that illustrate
the system’s objects from various perspectives such as structures and behaviors. Two stages are
involved in the approach; Object Oriented Analysis and Object Oriented Design. Unified
Modeling Language (UML) notation is the design tool used for modeling in this research.UML
used in the research includes: Use Case diagrams, Data Flow diagrams and Class diagrams.
This diagram represents what are the bounders and scope of On-Line Exam System project.
It describes the main objective of the system and its entities involved.
Administrator
Administrator
Faculty
Student Faculty
Student
On-Line
On-LineExam
Exam
system
system
The Administrator can be done the following:
Create/delete accounts (add a list of faculty names and list of his student)
Change password.
Choose exam.
activities
actors
business processes
database schemas
(logical) components
programming language statements
Reusable software components.
5.3.1 Diagrams in UML
Fig (1)
Use case diagrams are used during requirements collection and analysis as a graphical means
of representing the functional requirements of the system. Use cases focus on the behaviour of
the system from external point of view. Use cases are developed during requirement collection
and are further refined and corrected as they are reviewed (by stakeholders) during
analysis.Also, this diagram shows a set of use cases, actors and relationships. Actors are
external entities that interact with the system. Examples of actors include users and
administrator, bank and customer …etc., or another system like central database.
View reports
Student registeration
Set paper
Admin Student
Give paper
Edit paper
5.5 Data Flow Diagram
User
Add student
Admin Student
Exam
Exam System
System
2nd Level DFD
Student Admin
Select Add
test Course
List Of Courses
Start
test
Answer the
questions
Get Score
3rd Level DFD
Users
View
Student Admin
Edit Profile
Profile Details
Personal Information
Test Completed/Pending
Score
5.6 Entity – Relationship Diagram
It is a graphical representation of entities and their relationships to each other, typically used in
computing in regard to the organization of data within databases or information systems. An
entity is a piece of data-an object or concept about which data is stored.A relationship is how the
data is shared between entities.
Diagram
5.7 Application Structure
5.8 Database Design
The overall objective in the development of database technology has been to treat data as an
organizational resource and as an integrated whole. DBMS allow data to be protected and
organized separately from other resources. Database is an integrated collection of data. The most
significant form of data as seen by the programmers is data as stored on the direct access storage
devices. This is the difference between logical and physical data.
Database files are the key source of information into the system. It is the process of designing
database files, which are the key source of information to the system. The files should be
properly designed and planned for collection, accumulation, editing and retrieving the required
information.
SERVER database.
This database contains tables, where each table corresponds to oneparticular type of information.
Each piece of information in table is called a field or column. A table also contains records,
which is a set of fields. All records in a table have the same set of fields with different
information. There are primary key fields that uniquely identify a record in a table. There are
also fields that contain primary key from another table called foreign keys.
exam System uses the following database structure for storing user data , test data ,questions
data etc.
Tables in MySql:
1. User –
2. Exam –
3. Questions –
Question Varchar
Type
Question Varchar
Option1 Varchar
Option2 Varchar
Option3 Varchar
Option4 Varchar
CA Varchar
CHAPTER 6
Netbeans 8.0
SQL Server 2008
Microsoft .NET Framework
Notepad++ 6
DevComponent
UML Modes
Windows 10
Hardware Requirements
DevComponent Runtime
Hardware Requirements
SCREENSHOTS
1. Login
2. Admin Dashboard
3. Register New Student
4. Set Question Paper
5. Set Questions
6. View Scores
CHAPTER 8
CODING
1. Login
package techquiz.gui;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import techquiz.dao.UserDao;
import techquiz.pojo.UserPojo;
import techquiz.pojo.UserProfile;
/**
*
* @author DELL
*/
public class LoginFrame extends javax.swing.JFrame {
/**
* This method is called from within the constructor to initialize the
form.
* WARNING: Do NOT modify this code. The content of this method
is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_C
LOSE);
getContentPane().setLayout(new
org.netbeans.lib.awtextra.AbsoluteLayout());
jPanel1.setLayout(new
org.netbeans.lib.awtextra.AbsoluteLayout());
jPanel1.add(txtUsername, new
org.netbeans.lib.awtextra.AbsoluteConstraints(219, 150, 350, 40));
buttonGroup2.add(jrAdmin);
jrAdmin.setText("admin");
jrAdmin.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jrAdminActionPerformed(evt);
}
});
jPanel1.add(jrAdmin, new
org.netbeans.lib.awtextra.AbsoluteConstraints(240, 290, -1, -1));
buttonGroup2.add(jrStudent);
jrStudent.setText("user");
jrStudent.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jrStudentActionPerformed(evt);
}
});
jPanel1.add(jrStudent, new
org.netbeans.lib.awtextra.AbsoluteConstraints(460, 290, -1, -1));
txtPassword.setText("jPasswordField1");
jPanel1.add(txtPassword, new
org.netbeans.lib.awtextra.AbsoluteConstraints(230, 210, 350, 40));
getContentPane().add(jPanel1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 710, 580));
pack();
}// </editor-fold>
try
{
UserPojo user = new UserPojo();
user.setUserid(username);
user.setPassword(password);
user.setUsertype(userType);
boolean isValidUser=UserDao.validateUser(user);
if(isValidUser)
{
JOptionPane.showMessageDialog(null, "Login
Accepted!","Welcome
"+username,JOptionPane.INFORMATION_MESSAGE);
UserProfile.setUsername(username);
UserProfile.setUsertype(userType);
if(user.getUsertype().equalsIgnoreCase("admin"))
{
else
JOptionPane.showMessageDialog(null, "Invalid
UserId/Password","Login Denied!",JOptionPane.ERROR_MESSAGE);
}
catch(SQLException sq)
{
JOptionPane.showMessageDialog(null, "Error while connecting
to DB!","Exception!",JOptionPane.ERROR_MESSAGE);
sq.printStackTrace();
} // TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting
code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.htm
l
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(LoginFrame.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(LoginFrame.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(LoginFrame.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(LoginFrame.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
//</editor-fold>
if(username.isEmpty()|| pwd.length==0 )
return false;
else
{
password=String.valueOf(pwd);
return true;
}
}
private String getUserType() {
if(jrAdmin.isSelected())
return jrAdmin.getText();
else if(jrStudent.isSelected())
return jrStudent.getText();
else
return null;
}
}
2. Admin Dashboard
package techquiz.gui;
import java.awt.Color;
import java.awt.Image;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.Box;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import techquiz.pojo.UserProfile;
/**
*
* @author DELL
*/
public class NewJFrame3 extends javax.swing.JFrame {
int sec1,count,min1;
public NewJFrame3() {
initComponents();
this.setLocationRelativeTo(null);
jLabel4.setIcon(new ImageIcon(new
javax.swing.ImageIcon(getClass().getResource("abc.png")).getImage().getScaledInstance(150,
170, Image.SCALE_SMOOTH)));
jLabel4.setHorizontalAlignment(JLabel.CENTER);
jLabel4.setVerticalAlignment(JLabel.CENTER);
jLabel8.setHorizontalAlignment(JLabel.CENTER);
jLabel8.setVerticalAlignment(JLabel.CENTER);
jLabel5.setHorizontalAlignment(JLabel.CENTER);
jLabel5.setVerticalAlignment(JLabel.CENTER);
jLabel11.setHorizontalAlignment(JLabel.CENTER);
jLabel11.setVerticalAlignment(JLabel.CENTER);
jMenu1.setText(UserProfile.getUsername());
new Thread(){
public void run(){
for(sec1=Calendar.SECOND;true;){
Calendar cal=new GregorianCalendar();
int hour=cal.get(Calendar.HOUR);
int min=cal.get(Calendar.MINUTE);
int sec=cal.get(Calendar.SECOND);
if(sec1!=sec){
if(count>59){
count=0;
min1++;
}
count++;
}
sec1=sec;
int AM_PM=cal.get(Calendar.AM_PM);
String time="";
if(AM_PM==0){
time=hour+":"+min+":"+sec+" AM";
Clock.setText(time);
}
else{
time=hour+":"+min+":"+sec+" PM";
Clock.setText(time);
}
}
}
}.start();
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setBounds(new java.awt.Rectangle(0, 0, 720, 660));
setMinimumSize(new java.awt.Dimension(720, 660));
setResizable(false);
setSize(new java.awt.Dimension(720, 660));
getContentPane().setLayout(null);
jLabel2.setText("ADMINISTRATOR MENU");
jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(280, 0, 140, 30));
jLabel4.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/techquiz/gui/abc.png"))); // NOI18N
jLabel4.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jLabel4MouseClicked(evt);
}
public void mouseEntered(java.awt.event.MouseEvent evt) {
jLabel4MouseEntered(evt);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
jLabel4MouseExited(evt);
}
});
jPanel1.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 110, 230,
190));
jLabel10.setText("REGISTER STUDENT");
jPanel1.add(jLabel10, new org.netbeans.lib.awtextra.AbsoluteConstraints(510, 290, -1,
30));
jLabel5.setBackground(new java.awt.Color(153, 153, 153));
jLabel5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/techquiz/gui/icons8-
management-96.png"))); // NOI18N
jLabel5.setFocusTraversalPolicyProvider(true);
jLabel5.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jLabel5MouseClicked(evt);
}
public void mouseEntered(java.awt.event.MouseEvent evt) {
jLabel5MouseEntered(evt);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
jLabel5MouseExited(evt);
}
});
jPanel1.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(410, 100, 270,
230));
jLabel12.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/techquiz/gui/exam.jpg"))); // NOI18N
jPanel1.add(jLabel12, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 690, 620));
getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 690, 630);
jMenu1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/techquiz/gui/icons8-
male-user-32.png"))); // NOI18N
jMenuItem1.setText("Log Out");
jMenuItem1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jMenuItem1MouseClicked(evt);
}
});
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem1);
jMenuBar2.add(jMenu1);
setJMenuBar(jMenuBar2);
pack();
}// </editor-fold>
}
private void jLabel5MouseExited(java.awt.event.MouseEvent evt) {
jLabel5.setBackground(Color.GRAY);
jLabel5.setSize(270, 230);
jLabel11.setSize(275,235);
jLabel11.setSize(270,230);
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(NewJFrame3.class.getName()).log(java.util.logging.Level.S
EVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(NewJFrame3.class.getName()).log(java.util.logging.Level.S
EVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(NewJFrame3.class.getName()).log(java.util.logging.L
evel.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(NewJFrame3.class.getName()).log(java.util.logging.L
evel.SEVERE, null, ex);
}
//</editor-fold>
package techquiz.gui;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import techquiz.dao.UserDao;
import techquiz.pojo.UserPojo;
/**
*
* @author DELL
*/
public class RegisterStudentFrame extends javax.swing.JFrame {
}
private int validateInput(){
userid=txtUserid.getText();
char []pwd=txtPassword.getPassword();
char []repwd=txtReTypePassword.getPassword();
if(userid.isEmpty()|| pwd.length==0 || repwd.length==0 )
return 0;
else
{
password=String.valueOf(pwd);
String repassword=String.valueOf(repwd);
if(userid.length()<4 || pwd.length<4)
return -2;
if(password.equals(repassword)==false)
return -1;
else
return 1;
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
jButton1.setText("Register");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jPanel1.add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(60, 370, -1, -1));
txtReTypePassword.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtReTypePasswordActionPerformed(evt);
}
});
jPanel1.add(txtReTypePassword, new org.netbeans.lib.awtextra.AbsoluteConstraints(130,
270, 82, -1));
jPanel1.add(txtPassword, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 210, 82,
-1));
txtUserid.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtUseridActionPerformed(evt);
}
});
jPanel1.add(txtUserid, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 160, 82,
-1));
lblUserName.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/techquiz/gui/JJ.jpg"))); // NOI18N
jPanel1.add(lblUserName, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 690,
510));
jMenu1.setText("Back");
jMenu1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jMenu1MouseClicked(evt);
}
});
jMenuBar1.add(jMenu1);
setJMenuBar(jMenuBar1);
pack();
}// </editor-fold>
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
int response=validateInput();
if(response==0)
{
JOptionPane.showMessageDialog(null, "Username or Password cannot be left
blank!","Error!",JOptionPane.ERROR_MESSAGE);
return;
}
if(response==-1)
{
JOptionPane.showMessageDialog(null, "Password and Retype Password do not
match!","Error!",JOptionPane.ERROR_MESSAGE);
return;
}
if(response==-2)
{
JOptionPane.showMessageDialog(null, "Userid and Password should be atleast 4
characters long!","Error!",JOptionPane.ERROR_MESSAGE);
return;
}
try
{
UserPojo user=new UserPojo();
user.setUserid(userid);
user.setPassword(password);
user.setUsertype("user");
boolean status=UserDao.addUser(user);
if(status)
{
JOptionPane.showMessageDialog(null, "Registration Done!","Userid:
"+userid+"\nPassword:"+password,JOptionPane.INFORMATION_MESSAGE);
clearAll();
}
else
JOptionPane.showMessageDialog(null, "Userid Already Present","Registration
Denied!",JOptionPane.ERROR_MESSAGE);
}
catch(SQLException ex)
{
JOptionPane.showMessageDialog(null, "Error while connecting to
DB!","Exception!",JOptionPane.ERROR_MESSAGE);
ex.printStackTrace();
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(RegisterStudentFrame.class.getName()).log(java.util.logging.
Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(RegisterStudentFrame.class.getName()).log(java.util.logging.
Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(RegisterStudentFrame.class.getName()).log(java.util.logging.
Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(RegisterStudentFrame.class.getName()).log(java.util.logging.
Level.SEVERE, null, ex);
}
//</editor-fold>
txtUserid.setText("");
txtPassword.setText("");
txtReTypePassword.setText("");
}
CHAPTER 9
9.1 Limitations
The system handles all the operations, and generates reports as soon as the test is
finish, that includes name, mark, time spent to solve the exam.
Allow students to see or display his answers after the exam is finish.
In additional to develop the system by adding more reports and functions and using
indexing techniques to improve search process and increase the efficiency.
And development of the android app to add more function and communication system to
student
REFRENCES