Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ON
Submitted by
SAMUEL ANYIMAH
(1410000576)
Of
MASTER OF SCIENCE
IN
INFORMATION TECHONOLOGY
OCTOBER, 2015
EXAMINER’S CERTIFICATION
SAMUEL ANYIMAH
(1410000576)
Titled
Sign………………………. Sign…………………………
Date………………………. Date…………………………
Name……………………… Name…………………………
…………………………….... ………………………………...
ii
BONAFIDE CERTIFICATE
Certified that this project report titled EXAMINATION AND ASSESSMENT SYSTEM FOR
HUNI-VALLEY SENIOR HIGH SCHOOL is the bonafide work of SAMUEL ANYIMAH
who carried out the project work under my supervision.
Campus Head
Kumasi, Ghana
iii
STUDENT DECLARATION
Of
To Sikkim Manipal University, is my original work and not submitted for the award of any other
degree, diploma, fellowship, or any other similar title or prizes.
Student Name:................................................
Roll. No:...............................................................
iv
ACKNOWLEDGEMENT
All praises and thanks to God the Almighty. The immense help and guidance offered me by Mr.
Mahendra Kumar Shrivas to the success of this project is immeasurable. I also acknowledge the
staff and student of Huni-Valley Senior High School for given me a problem to solve. I
appreciate each and every individual who in one way or the other helped to make this project
fruitful.
v
ABSTRACT
vi
ABBREVIATION
vii
LIST OF TABLES
Table 3.1 Us case Table…………………………………………………………………….14
viii
LIST OF FIGURES
Fig 2.1 Waterfall Model……………………………………………………………………10
ix
TABLE OF CONTENTS
Chapter 1: Introduction ......................................................................................... 1
1.1 Background……………………………………………………………………...1
1.2 Problem Statements……………………………………………………………..1
1.3 Objectives……………………………………………………………………….1
1.4 Scope and Limitation………………………………………………………… 2
x
Chapter 4 Development and Testing ................................................................... 29
4.1 Coding …………………………………………………………………………29
4.1.1 Back End ....................................................................................................... 29
4.1.1.1 Database Source Code ............................................................................... 29
4.1.2 Front End ...................................................................................................... 41
4.1.2.1 Front End Source Code .............................................................................. 41
4.1.3 Middle End .................................................................................................... 50
4.1.3.1 Middle End Source Code ........................................................................... 50
4.2 Testing…………………………………………………………………….…...55
4.2.1 Testing Methods and Techniques……………………………………………55
4.2.2 Test Cases and Test Result……………………………………………….….56
xi
CHAPTER 1
INTRODUCTION
1.1 BACKGROUND
Computed –based examination is an application that builds a network between educational
institutions and eligible candidates for examination. The institutions formulate the questions,
which are displayed as an exam for eligible candidates to answer. The responses given by the
candidates are evaluated, ranked and stored.
This project therefore proposes an efficient and accurate computer-based system to curb the
numerous problems with the traditional paper-based examination administering system.
1.3 OBJECTIVES
The aims of this project is to completely replace the current existing paper-based examination
systems with its associated shortcomings with an efficient computer-based test, which inhibits
human effort in the collating, processing, checking and evaluation of scripts.
1
1.4 SCOPE AND LIMITATION
SCOPE
The application from this project will be beneficial to any educational institution which seeks to
regularly evaluate its students objectively and provide results to students which will also be
accessed by the examiner and administrator. The scope of this system includes:
2. Time is saved as the manpower duties of mechanical collating, marking and processing
are all automated.
4. The results of the test are immediately accessed by students after the test
6. Records of test are safe and easily retrieved when needed with little searching
Limitations:
The following are the limitations of the system:
1. This system heavily supports only objective form of test (Multiple Choice Questions and
True/False) but not subjective or written test.
2. The system does not support the use of graphical sketches and diagrams.
3. The initial preparation of the application for the computer-based test takes a great deal of
time
4. An equal number of computers to the number of students to take the test are needed in the
case where students are required to start at the same time on the school premises.
2
CHAPTER 2
SYSTEM STUDY AND ANALYSIS
(Kelly, 2015) identifies the following as the paramount reasons and purpose of testing:
1. To measure how much of the lessons taught that students have learned.
(Ogunniyi, 1984), also iterate the following as aims and objectives of test:
3
5. Reshape teaching items, especially where tests show that certain items are poorly learnt
either because they are poorly taught or difficult for the learners to learn. Reshaping
teaching items may involve resetting learning objectives, teaching objectives, sequencing
of teaching items or grading of the items being taught for effective learning.
Essay test is a test format which requires students to write long responses to questions. It is
subjective in nature.
2. Objective test
Objective test is a test format which requires candidates to choice from pre-determined options
the most appropriate answers. The scoring is done objectively.
Types of tests
Test, either essay or objective can be packaged in the following types;
4
The Existing System
The current system of test administering still follows the traditional paper-based approach. Some
known setbacks and problems of this system include;
1. The high demand for invigilators corresponding to the increasing student population.
2. Manual distribution of test paper.
3. Excessive use of papers and stationeries.
4. Lot of physical space to keep marked scripts.
5. Lot of time in processing and mechanically evaluating scripts.
6. Possible loss of records or crediting marks to wrong candidates.
7. Time consuming and wearisome task of collating and searching large records.
In this system, the administrator creates the examiner’s account. The questions are added by the
examiner (employee) who login with his/her account to create the exams on departmental basis.
Students register and perform login during the time of the examination. When the exam is over,
the result is immediately displayed for the student to view and the administrator as well as the
examiner can also access it. The system automatically ranks students on merit.
5
2.3 DATA ANALYSIS TOOLS & TECHNIQUES
The data was collated with many instruments and techniques. The outcome was represented for
easy interpretation using tables, charts and graphs. The aim for the conducting of the system
analysis include;
• Identifying the basis for computerization of the exams system.
• Analysing the economical and technical viability of the proposed system.
User Requirements
Administrator Side
1. Modifying the super password.
2. Having the privilege to editing or delete and creating the records.
3. Enrolling the examiner
4. Adding the department
5. Backing up the database.
6
Student Side:
1. Registration.
2. Appearing for the examination.
3. Login into the system.
4. Answering the questions.
5. Reviewing the given responses.
6. Altering and modifying password.
7. Resetting of forgotten password.
Analysis
1. Validating users based on user ID and password
2. Checking students’ responses to every question.
3. Awarding marks for the students’ responses.
4. Collating the results of students’ for the various subjects/courses.
5. Keeping history of students’ mark card or reports.
Functionality
User friendliness
The application should require minimum effort for users to operate (user friendly)
Platform independent
This application is made using Java which is platform independent and architectural
neutral.
7
2.4.3 Software Requirement
Operating System : Window 2000/XP/7.
Programming Language : JAVA sdk1.5
IDE : Netbeans 7.3
Documentation tools : Microsoft Office Word 2007
UML : Visual Paradigm 8.0 Enterprise Edition
Database : MySQL 5.0
8
speed. Therefore, the cost of maintenance can be reduced. Since,processing speed is very high
and the work is reduced in the maintenance point of view management convince that the project
is operationally feasible.
9
System Requirements
Software Requirements
Analysis
Program Design
Coding
Testing
Operations
10
2.6.3 Time Scheduling (GANTT Chart)
11
CHAPTER 3
SYSTEM DESIGN
3.1 DIAGRAM
Diagrams captured within this chapter include Use cases, Entity Relationship, Data Flow
Diagram and Class Diagram.
12
Name of Use Case Student registration
Main actor(s) Student
Action(s) Student registers for the exams
13
Name of Use Case View result
Main actor(s) Administrator, Examiner and Student
Action(s) All permitted users with valid User ID and
password logon into the system to view
result
14
3.1.1.1 Use case Diagram
15
3.1.2 Database Tables Specifications
Course Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Course ID VarChar 10 Primary Key
2 Course Name VarChar 45 Not Null
3 Course Description VarChar 45 Not Null
4 Number of Terms TinyInt 3 Not Null
Table 3.2 Course Table
Department Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Department ID VarChar 10 Primary Key
2 Name VarChar 45 Not Null
3 Department Head VarChar 45 Not Null
4 Office Line 1 VarChar 10 Not Null
5 Office Line 2 VarChar 10 Not Null
Table 3.3Department Table
16
Login Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Login ID VarChar 10 Primary Key
2 Employee ID VarChar 10 Not Null
3 Password VarChar 10 Not Null
4 Security Question VarChar 45 Not Null
5 Security Answer VarChar 45 Not Null
6 Role Date 20 Not Null
Table 3.5 Login Table
Question Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Question ID VarChar 10 Primary Key
2 Option 1 VarChar 45 Not Null
3 Option 2 VarChar 45 Not Null
4 Option 3 VarChar 45 Not Null
5 Option 4 VarChar 45 Not Null
6 Answer VarChar 45 Not Null
7 Marks VarChar 10 Not Null
8 Subject ID VarChar 10 Not Null
9 Lesson Number VarChar 3 Not Null
01 Question Explanation VarChar 45 Not Null
Table 3.6 Question Table
Result Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Result ID VarChar 10 Primary Key
2 Test ID VarChar 10 Not Null
3 Total Marks Int 3 Not Null
4 Student ID VarChar 10 Not Null
5 Testing Date Date Not Null
Table 3.7 Result Table
17
Student Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Student ID VarChar 10 Primary Key
2 First Name VarChar 45 Not Null
3 Middle Name VarChar 45 Null
4 Last Name VarChar 45 Not Null
5 Gender VarChar 6 Not Null
6 Date of Birth VarChar 20 Not Null
7 Email VarChar 20 Not Null
8 Nationality VarChar 20 Not Null
9 Photo Blob Null
10 Parent Name/Guardian VarChar 45 Not Null
11 Town VarChar 45 Not Null
12 House Number VarChar 10 Null
13 Mobile 1 VarChar 10 Not Null
14 Mobile 2 VarChar 10 Null
15 Admission Date VarChar 20 Not Null
Table 3.8 Student Table
Subject Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Subject ID VarChar 10 Primary Key
2 Subject Name VarChar 20 Not Null
3 Course ID VarChar 10 Not Null
4 Term VarChar 5 Not Null
5 Subject type VarChar 45 Not Null
Table 3.9 Subject Table
18
Testing Setting Table
S. No Filed Name Data Type Length Constrain/Remarks
1 Test ID VarChar 10 Primary Key
2 One Mark TinyInt 3 Not Null
3 Two Marks TinyInt 3 Not Null
4 Four Marks TinyInt 3 Not Null
5 Five Marks TinyInt 3 Not Null
6 Minimum Passing Marks TinyInt 3 Not Null
Table 3.11 Test Setting Table
19
3.2.2.1 Entity Relationship Daigram
20
3.2.3 Data Flow Diagram
21
3.2.4 Class Daigram
22
3.3 MODULE DESCRIPTIONS
There are seven (7) types of modules described here.
1. Administrator module:
This module has the full-fledged right and responsibility to manage all modules.
2. Examiner module:
The examiner enter the test item to create the exams.
3. Student module: Students appearing for the exams login into the system after being registered
aforetime.
4. Registration module: This module requires students to register aforetime before the time of
examinations to be able to perform login to start the exams.
5. Course module: This module shelters all the information about the different types of courses to
be examined on.
6. Exams module:
This is where the exams is performed with the suitable marks assigned to each question
answered.
23
3.4 INTERFACE DESIGN
24
Figure 3.7 Login Form
25
Figure 3.9 Course Form
26
Figure 3.11 Testing Schedule
27
Figure 3.13 Question Form
28
CHAPTER 4
DEVELOPMENT AND TESTING
4.1 CODING
29
`CourseName` varchar(45) NOT NULL,
`CourseDescription` varchar(45) NOT NULL,
`NoOfTerms` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`CourseID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `course`
--
--
-- Definition of table `department`
--
--
-- Dumping data for table `department`
--
30
INSERT INTO `department`
(`DepartmentID`,`Name`,`DepartmentHead`,`OfficeLine1`,`Officeline2`) VALUES
('DEP1000001','Science','Joseph Arhin','0123456789','0123456789'),
('DEP1000002','Mathematics','Wisdom Ahiabley','0247895623',NULL),
('DEP1000003','ICT','Joseph Arlloh','0233698547',NULL),
('DEP1000004','Home Economics','Lydia Adu Gyamfi','0245874521',NULL),
('DEP1000005','General Arts','James Arthur','0247951357',NULL);
/*!40000 ALTER TABLE `department` ENABLE KEYS */;
--
-- Definition of table `employee`
--
--
-- Dumping data for table `employee`
--
31
INSERT INTO `employee`
(`EmployeeID`,`FirstName`,`MiddleName`,`LastName`,`Gender`,`DOB`,`Email`,`Mobile1`,`Mo
bile2`,`Category`,`DepartmentID`,`Photo`) VALUES
('EID1000000','Joseph ','HG','Arhin','Male','1960-01-
01','arhin@gmail.com','0241478102',NULL,'Senior Staff','DEP1000001',NULL),
('EID1000001','Joseph',NULL,'Arlloh','Male','1965-02-
02','profarlloh@yahoo.com','0245856309',NULL,'Senior Staff','DEP1000003',NULL),
('EID1000002','Wisdom',NULL,'Ahiabley','Male','1974-03-
03','wisdy@yahoo.com','0247954751',NULL,'Senior Staff','DEP1000002',NULL),
('EID1000003','Lydia','Adu','Gyamfi','Female','1975-07-
07','mamalee@yahoo.com','0263541021',NULL,'Senior Staff','DEP1000004',NULL),
('EID1000004','James',NULL,'Arthur','Male','1968-08-
08','jamesarthur@yahoo.com','0206747488',NULL,'Senior Staff','DEP1000005',NULL);
/*!40000 ALTER TABLE `employee` ENABLE KEYS */;
--
-- Definition of table `login`
--
--
-- Dumping data for table `login`
--
32
INSERT INTO `login`
(`LogInID`,`EmployeeID`,`Password`,`SecurityQuestion`,`SecurityAnswer`,`Role`) VALUES
('LID1000000','EID1000000','kojo','Where did you meet your spouse?','church','Employee'),
('LID1000001','EID1000001','kojo','What is your mother\'s maiden name?','Rose','Employee'),
('LID1000002','EID1000002','kojo','Where did you meet your spouse?','Library','Employee'),
('LID1000003','EID1000003','kojo','Where did you meet your spouse?','Bus','Employee'),
('LID1000005','EID1000004','kojo','What is your mother\'s maiden name? ','Ama','Employee');
/*!40000 ALTER TABLE `login` ENABLE KEYS */;
--
-- Definition of table `question`
--
--
-- Dumping data for table `question`
--
33
INSERT INTO `question`
(`QuestionID`,`Question`,`Option1`,`Option2`,`Option3`,`Option4`,`Answer`,`Marks`,`SubjectI
D`,`LessonNo`,`QuestionExplanation`) VALUES
('QUE1000000','Who is SADIC ','IT GURU','administrator','Reverse Only Memory','Return
Often Memory',0x31,'2','SUB1000000','14',''),
('QUE1000010','hi','A','B','C','D',0x32,'1','SUB1000000','1','hi'),
('QUE1000011','The acronymn RAM stands for ','Random Access
Memory','Read Access Memory','Reverse Access Memory','Readable Access
Memory',0x31,'1','SUB1000000','1','hi'),
('QUE1000012','The acronymn RAM stands for ','Random Access
Memory','Read Access Memory','Reverse Access Memory','Readable Access
Memory',0x31,'1','SUB1000000','4','hi'),
('QUE1000013','The acronymn RAM stands for ','Random Access
Memory','Read Access Memory','Reverse Access Memory','Readable Access
Memory',0x31,'1','SUB1000000','4','hi'),
('QUE1000014','What is the use of the monitor
','typing','displaying','inputting','scanning',0x32,'2','SUB1000000','5','hi'),
('QUE1000015','CPU stands for ','Central Processing
Unit','jjjj','lll','ffff',0x31,'2','SUB1000000','6','hi'),
('QUE1000016','SAMMY ','KOJO','YAW','MANSA','ABU',0x32,'2','SUB1000000','7',''),
('QUE1000017','Mahendra is a good person','ama','grace','Mat','go',0x32,'2','SUB1000000','8',''),
('QUE1000018','F','F','F','F','F',0x34,'2','SUB1000000','1','F'),
('QUE1000019','Which among the following is an output device','Printer','Mouse','System
Unit','Keyboard',0x32,'2','SUB1000000','10',''),
('QUE1000020','The fastest printer among the following is ','Inkjet','Laserjet','Epson
Workforce','Maxima',0x31,'2','SUB1000000','11',''),
('QUE1000021','What does the acronymn ROM stands for','Random Only Memory','Read Only
Memory','Reverse Only Memory','Return Often Memory',0x31,'2','SUB1000000','1','');
/*!40000 ALTER TABLE `question` ENABLE KEYS */;
--
-- Definition of table `registration`
--
34
`RegisteredDate` date NOT NULL,
`Class` varchar(5) NOT NULL,
PRIMARY KEY (`RegistrationID`),
KEY `FK_registration_1` (`StudentID`),
KEY `FK_registration_2` (`CourseID`),
CONSTRAINT `FK_registration_1` FOREIGN KEY (`StudentID`) REFERENCES `student`
(`StudentID`),
CONSTRAINT `FK_registration_2` FOREIGN KEY (`CourseID`) REFERENCES `course`
(`CourseID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `registration`
--
--
-- Definition of table `result`
--
35
CONSTRAINT `FK_result_1` FOREIGN KEY (`TestID`) REFERENCES `test_settings`
(`TestID`),
CONSTRAINT `FK_result_2` FOREIGN KEY (`StudentID`) REFERENCES `student`
(`StudentID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `result`
--
--
-- Definition of table `student`
--
--
-- Dumping data for table `student`
--
36
/*!40000 ALTER TABLE `student` DISABLE KEYS */;
INSERT INTO `student`
(`StudentID`,`FirstName`,`MiddleName`,`LastName`,`Gender`,`DOB`,`Email`,`Nationality`,`Par
entName_Guardian`,`Town`,`HouseNumber`,`Mobile1`,`Mobile2`,`AdmissionDate`) VALUES
('SID1000000','Samuel
','','Anyimah','Male','23/12/1985','samanyimah@gmail.com','Ghanaian','Mr. Anthony
Essel','Prestea','WC 4/13','0246244662','0206488747','01/11/2014'),
('SID1000001','Isaac ','','Essel','Male','26/03/1995','ikessel@yahoo.com','Ghanaian','Mr.
Elizaphan Essel','Tarkwa','EA 2/23','0245123456',NULL,'01/11/2013'),
('SID1000002','Anthoniette
','Afia','Assan','Female','05/07/1986','anthoassan@yahoo.com','Ghanaian','Mr. Enock
Assan','Nanako','MD 34','0249883692',NULL,'01/11/2014'),
('SID1000003','Kojo ','','Owusu','Male','14/05/1984','kowusu@gmail.com','Ghanaian','Mrs.
Charlotte Anyimah','Agona Nsaba','AH 87','0201456987',NULL,'01/12/2014'),
('SID1000004','Grace
','Adjoaba','Boadi','Female','03/06/1987','graceboadi@gmail.com','Ghanaian','Mr. Kofi
Boadi','Sunyani','BL 4','0249885524',NULL,'01/11/2014'),
('SID1000005','Sadic','Ibn','Abubakar','Male','17/11/1985','olando2@yahoo.com','Ghanaian','Oma
r Abu','Bolga','BC 8','0205847147',NULL,'01/11/2013'),
('SID1000006','KWAKU','','MAU','Male','23/11/1985',NULL,'GHANAIAN','KANKUZINI','WI
AWSO','WO 14','0247396852','','01/11/2013'),
('SID1000007','Sadic','Ibn','Abubakar','Male','17/11/1985','olando2@yahoo.com','Ghanaian','Oma
r Abu','Bolga','BC 8','0205847147','','01/11/2013'),
('SID1000008','Samuel
','','Anyimah','Male','23/12/1985','samanyimah@gmail.com','Ghanaian','Mr. Anthony
Essel','Prestea','WC 4/13','0246244662','0206488747','01/11/2014'),
('SID1000009','Samuel
','','Anyimah','Male','23/12/1985','samanyimah@gmail.com','Ghanaian','Mr. Anthony
Essel','Prestea','WC 4/13','0246244662','0206488747','01/11/2014'),
('SID1000010','KWAKU','','MAU','Male','23/11/1985','','GHANAIAN','KANKUZINI','WIAWS
O','WO 14','0247396852','','01/11/2013'),
('SID1000011','Elizaphan','Abena','Essel','Female','08/09/2015','eliza@gmail.com','Ghanaian','Sa
muel Anyimah','Aboso','WC 4/13','0246244662','0206488747','01/11/2014'),
37
('SID1000012','Jonathan','Kobina','Yankson','Male','09/06/1965','biobio@gmail.com','Ghanaian','
Mr. Anthony Essel','Eikwe','BN 5/6','0246852147','0206488747','01/11/2013'),
('SID1000013','Isaac ','Kwame','Essel','Male','26/03/1995','ikessel@yahoo.com','Ghanaian','Mr.
Elizaphan Essel','Tarkwa','EA 2/23','0245123456','','01/11/2013'),
('SID1000014','Collins','Opoku','Ampofo','Male','23/12/1985','colopo@gmail.com','Ghanaian','M
r. Jacob Opoku Ampofo','Kumasi','HV 14/45','0254789635','0547856321','01/11/2015');
/*!40000 ALTER TABLE `student` ENABLE KEYS */;
--
-- Definition of table `subject`
--
--
-- Dumping data for table `subject`
--
38
--
-- Definition of table `test_settings`
--
--
-- Dumping data for table `test_settings`
--
--
-- Definition of table `testing_schedule`
--
39
KEY `FK_testing_schedule_2` (`SubjectID`),
KEY `FK_testing_schedule_3` (`Generated_By`),
CONSTRAINT `FK_testing_schedule_1` FOREIGN KEY (`CourseID`) REFERENCES
`course` (`CourseID`),
CONSTRAINT `FK_testing_schedule_2` FOREIGN KEY (`SubjectID`) REFERENCES
`subject` (`SubjectID`),
CONSTRAINT `FK_testing_schedule_3` FOREIGN KEY (`Generated_By`) REFERENCES
`employee` (`EmployeeID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `testing_schedule`
--
40
4.1.2 Front End
Java Netbeans IDE 7.3 was used for the front end coding.
import exams.dao.QuestionDAO;
import exams.model.Question;
import java.awt.Color;
import javax.swing.JOptionPane;
/**
*
* @author PC
*/
public class QuestionForm extends javax.swing.JFrame{
/**
* Creates new form Question
*/
public QuestionForm() {
initComponents();
}
/**
* 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() {
41
lblOption2 = new javax.swing.JLabel();
lblOption3 = new javax.swing.JLabel();
lblOption4 = new javax.swing.JLabel();
lblAnswer = new javax.swing.JLabel();
txtOption1 = new javax.swing.JTextField();
txtOption2 = new javax.swing.JTextField();
txtOption3 = new javax.swing.JTextField();
txtOption4 = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
txtareaQuestionExp = new javax.swing.JTextArea();
btnAdd = new javax.swing.JButton();
btnReset = new javax.swing.JButton();
cmbAnswer = new javax.swing.JComboBox();
btnUpdate = new javax.swing.JButton();
btnSearch = new javax.swing.JButton();
lblSID = new javax.swing.JLabel();
txtSID = new javax.swing.JTextField();
lblLessonNo = new javax.swing.JLabel();
txtLessonNo = new javax.swing.JTextField();
lblMarks = new javax.swing.JLabel();
txtMarks = new javax.swing.JTextField();
lblQExplanation = new javax.swing.JLabel();
jScrollPane2 = new javax.swing.JScrollPane();
txtareaQuestion = new javax.swing.JTextArea();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setBackground(new java.awt.Color(153, 204, 0));
getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
42
}
});
getContentPane().add(txtQID, new org.netbeans.lib.awtextra.AbsoluteConstraints(180, 50,
208, -1));
43
getContentPane().add(txtOption4, new org.netbeans.lib.awtextra.AbsoluteConstraints(170,
410, 323, -1));
txtareaQuestionExp.setColumns(20);
txtareaQuestionExp.setRows(5);
jScrollPane1.setViewportView(txtareaQuestionExp);
44
});
getContentPane().add(btnUpdate, new org.netbeans.lib.awtextra.AbsoluteConstraints(240,
480, 129, 36));
txtSID.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
txtSIDFocusLost(evt);
}
});
getContentPane().add(txtSID, new org.netbeans.lib.awtextra.AbsoluteConstraints(180, 80,
210, -1));
45
lblQExplanation.setForeground(new java.awt.Color(0, 102, 204));
lblQExplanation.setText("Question Explaination");
getContentPane().add(lblQExplanation, new
org.netbeans.lib.awtextra.AbsoluteConstraints(30, 270, -1, -1));
txtareaQuestion.setColumns(20);
txtareaQuestion.setRows(5);
jScrollPane2.setViewportView(txtareaQuestion);
pack();
}// </editor-fold>
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(this, ex);
}
46
}
txtSID.setText(ques.getSubjectID());
47
txtLessonNo.setText(ques.getLessonNo());
txtMarks.setText(ques.getMarks() + "");
txtareaQuestion.setText(ques.getQuestion());
txtOption1.setText(ques.getOption1());
txtOption2.setText(ques.getOption2());
txtOption3.setText(ques.getOption3());
txtOption4.setText(ques.getOption4());
cmbAnswer.setSelectedItem(ques.getAnswer());
txtareaQuestionExp.setText(ques.getQuestionExplanation());
} else {
JOptionPane.showMessageDialog(this, "No Record Found..");
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(this, ex);
}
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
48
/* 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(QuestionForm.class.getName()).log(java.util.logging.Level.S
EVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(QuestionForm.class.getName()).log(java.util.logging.Level.S
EVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(QuestionForm.class.getName()).log(java.util.logging.Level.S
EVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(QuestionForm.class.getName()).log(java.util.logging.Level.S
EVERE, null, ex);
}
//</editor-fold>
49
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JLabel lblAnswer;
private javax.swing.JLabel lblLessonNo;
private javax.swing.JLabel lblMarks;
private javax.swing.JLabel lblOption1;
private javax.swing.JLabel lblOption2;
private javax.swing.JLabel lblOption3;
private javax.swing.JLabel lblOption4;
private javax.swing.JLabel lblQExplanation;
private javax.swing.JLabel lblQID;
private javax.swing.JLabel lblQuestion;
private javax.swing.JLabel lblSID;
private javax.swing.JTextField txtLessonNo;
private javax.swing.JTextField txtMarks;
private javax.swing.JTextField txtOption1;
private javax.swing.JTextField txtOption2;
private javax.swing.JTextField txtOption3;
private javax.swing.JTextField txtOption4;
private javax.swing.JTextField txtQID;
private javax.swing.JTextField txtSID;
private javax.swing.JTextArea txtareaQuestion;
private javax.swing.JTextArea txtareaQuestionExp;
// End of variables declaration
}
QuestionDAO
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package exams.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
50
import exams.model.Question;
/**
*
* @author PC
*/
public class QuestionDAO {
51
ps.setString(10, reg.getLessonNo());
ps.setString(11, reg.getQuestionExplanation());
result = ps.executeUpdate();
}
return result;
}
/**
*
* @param reg
* @return
* @throws Exception
*/
public int modifyQuestion(Question reg) throws Exception {
int result;
try (Connection con = Connector.getCon()) {
PreparedStatement ps = con.prepareStatement("update question set question=?,
Option1=?,Option2=?,Option3=?,Option4=?,Answer=?,Marks=?,SubjectID=?,LessonNo=?,Que
stionExplanation=? where questionid=?");
ps.setString(1, reg.getQuestion());
ps.setString(2, reg.getOption1());
ps.setString(3, reg.getOption2());
ps.setString(4, reg.getOption3());
ps.setString(5, reg.getOption4());
ps.setString(6, reg.getAnswer());
ps.setInt(7, reg.getMarks());
ps.setString(8, reg.getSubjectID());
ps.setString(9, reg.getLessonNo());
ps.setString(10, reg.getQuestionExplanation());
ps.setString(11, reg.getQuestionID());
result = ps.executeUpdate();
}
return result;
}
52
PreparedStatement ps = con.prepareStatement("delete from question where
questionid=?");
ps.setString(1, regid);
result = ps.executeUpdate();
}
return result;
}
53
while (rs.next()) {
Question reg = new Question();
reg.setQuestionID(rs.getString(1));
reg.setQuestion(rs.getString(2));
reg.setOption1(rs.getString(3));
reg.setOption2(rs.getString(4));
reg.setOption3(rs.getString(5));
reg.setOption4(rs.getString(6));
reg.setAnswer(rs.getString(7));
reg.setMarks(rs.getInt(8));
reg.setSubjectID(rs.getString(9));
reg.setLessonNo(rs.getString(10));
reg.setQuestionExplanation(rs.getString(11));
list.add(reg);
}
}
return list;
}
}
54
4.2 TESTING OF SOFTWARE
Testing is the practice of evaluating a system and its components with the sole aim of finding
whether the specified requirements are met or not. It is also a means finding out flaws in a
software that is obstructing the proper functioning of the system. (Sharma, Ayushi, & Ojha ,
2014). Testing is therefore done to discover any gaps, errors (initialization and termination
errors), and missing requirements which conflicts the actual requirements.- (Work Breakdown
Structure Retrieved).
55
Execution of all boundaries loops.
Maintenance of the validity of the internal data structure
(Jovanovi, 2009)
56
9 First name should not Blank Message: Message: Passed the
be blank in “Kindly enter “Kindly test
registration form First name” enter First
name”
10 Surname cannot be Empty/Blank Message: Message: Passed the
empty in registration “Kindly enter “Kindly test
form Surname” enter
Surname”
11 Date of Birth should Blank Message: Message: Passed the
not be blank “Kindly enter “Kindly test
Date of enter Date
Birth” of Birth”
12 Mobile 1 should be 02498836 Message: Message: Passed the
exactly ten digits “Kindly enter “Kindly test
a valid enter a valid
mobile mobile
number” number”
13 Mobile 1 should not Blank Message: Message: Passed the
be null “Kindly enter “Kindly test
Mobile enter Mobile
number” number”
14 Gender should not be Blank Message: Message: Passed the
null “Kindly “Kindly test
choose choose
Gender” Gender”
15 Role should not be Blank Message: Message: Passed the
null “Kindly “Kindly test
select your select your
role” role”
16 Generated By should No data No data Passed the
be created by the input input test
system
57
CHAPTER 5:
SUPPORT
5.2 Maintenance
System maintenance is the practice of varying a system that is already in service for the sole aim
of sustaining its survival ability. Therefore, maintenance is a support stage in the development of
reliable software. Maintenance centers on alterations relating to;
The system will be maintained by qualified and trained professionals in Information Technology
(IT). Redemptive measures were initiated for the system’s maintenance.
(Garrido)
58
CHAPTER 6
CONCLUSION AND FUTURE PLAN
The examination and assessment system has been developed and tested with appropriate data to
obtain a desirable output. In comparison to the existing paper-based system of conducting exams,
the benefit of the computerized system has been time saving and stress-free. Scoring and marks
card preparation have been effortless. The system therefore solves the problem for which it was
intended to solve.
As part of future development, more security measures should be applied, such as biometric
finger print authentication to curb the problem of impersonation of candidates.
BIBLIOGRAPHY
3. Jovanovi, I. (2009, January). Transactions on Internet Research (TIR) - Journals. Retrieved from
Software Testing Methods and : http://tir.ipsitransactions.org/2009/January/Paper%2006.pdf
5. Krishna , M., Syed Saqib , A., Ajit , P. M., Shashank , K. S., & Awanish, K. G. (2010). A Project Report on
Online Exams System. DLW Training Centre.
6. Measurement and Evaluation in education (PDE 105). (n.d.). Retrieved from http://www.nti-
nigeria.org/nti-pgde/PGDE-6.pdf
8. Sharma, S., Ayushi, C., & Ojha , S. (2014). Testing Methodology to test Online Examination Application
developed in SAP ABAP. International Journal of Engineering, Business and Enterprise
Applications (IJEBEA), 158-163.
59
9. Strauss, V. (2012, December 3). The Washington Post. Retrieved from How the first standardized tests
helped start a war — really: https://www.washingtonpost.com/blogs/answer-
sheet/wp/2012/12/03/how-the-first-standardized-tests-helped-start-a-war-really/
60
APPENDIX
Similarity Index
19%
Similarity by Source
Internet Sources:
14%
Publications:
2%
Student Papers:
16%
sources:
1
5% match (student papers from 27-May-2011)
Submitted to University of Greenwich on 2011-05-27
2
2% match (student papers from 04-Oct-2015)
Class: MSCIT_SEM_2_SP_15
Assignment:
Paper ID: 579473869
3
1% match (student papers from 13-Jul-2015)
Submitted to University of Ghana on 2015-07-13
4
1% match (Internet from 25-Jun-2014)
http://nti-nigeria.org/nti-pgde/PGDE-6.pdf
5
1% match (student papers from 01-Oct-2015)
Class: MSCIT_SEM_2_SP_15
Assignment:
Paper ID: 578386939
6
< 1% match (Internet from 28-May-2010)
http://elearning.nic.in/student-trainee-report/chief-minister-monitoring-system/project-report-
harbaksh.doc/download
7
< 1% match (student papers from 21-Dec-2013)
Submitted to University of Bahrain on 2013-12-21
8
< 1% match (student papers from 23-May-2008)
61
Submitted to Manchester Metropolitan University on 2008-05-23
9
< 1% match (student papers from 24-Apr-2014)
Submitted to RDI Distance Learning on 2014-04-24
10
< 1% match (student papers from 06-Oct-2015)
Class: MSCIT_SEM_2_SP_15
Assignment:
Paper ID: 578411688
11
< 1% match (student papers from 30-Mar-2015)
Submitted to University of Mauritius on 2015-03-30
12
< 1% match (Internet from 16-Jul-2010)
http://www.iisjaipur.org/iiim-current-08/MCA_IV_Sem_Pro_Eva/10.Project-
%20online%20exam%20system.pdf
13
< 1% match (Internet from 28-Aug-2003)
http://www.cbr.clw.csiro.au/aclep/pcsites/pcsites.pdf
14
< 1% match (student papers from 13-Nov-2013)
Submitted to Myanmar Computer Company Ltd (MCC) - Yatanarpon on 2013-11-13
15
< 1% match (Internet from 14-Aug-2014)
http://712educators.about.com/od/assessments/tp/The-Purpose-Of-Tests.htm
16
< 1% match (student papers from 13-Nov-2013)
Submitted to Myanmar Computer Company Ltd (MCC) - Yatanarpon on 2013-11-13
17
< 1% match (student papers from 13-Nov-2013)
Submitted to Myanmar Computer Company Ltd (MCC) - Yatanarpon on 2013-11-13
18
< 1% match (student papers from 11-Feb-2013)
Submitted to Swansea Metropolitan University on 2013-02-11
19
< 1% match (student papers from 02-Jan-2011)
Submitted to Informatics Education Limited on 2011-01-02
20
< 1% match (student papers from 10-Jan-2013)
Submitted to University of Greenwich on 2013-01-10
21
< 1% match ()
http://www2.middleware-company.com/casestudy/specification.pdf
22
< 1% match (student papers from 09-Oct-2014)
Submitted to Midlands State University on 2014-10-09
23
62
< 1% match (student papers from 01-Jun-2015)
Submitted to HELP UNIVERSITY on 2015-06-01
24
< 1% match (Internet from 06-Oct-2015)
http://docslide.us/documents/itr.html
25
< 1% match (student papers from 30-Apr-2009)
Submitted to University of Greenwich on 2009-04-30
26
< 1% match (student papers from 14-May-2015)
Submitted to University of Sunderland on 2015-05-14
27
< 1% match (Internet from 10-Oct-2011)
http://www.slideshare.net/Softwarecentral/microsoft-powerpoint-ch6softwaretesting0714
28
< 1% match (Internet from 23-Apr-2010)
http://meta.wikimedia.org/wiki/Folklore,_myth_and_religion
29
< 1% match (Internet from 30-Jan-2015)
http://www.slideshare.net/fiu025/online-examination
30
< 1% match (student papers from 13-May-2015)
Submitted to Midlands State University on 2015-05-13
31
< 1% match ()
http://www.rusak.info/en/news/4.aspx
32
< 1% match (Internet from 14-Oct-2010)
http://www.ed.gov.nl.ca/edu/k12/studentsupportservices/rts/principal_instructions.pdf
33
< 1% match (Internet from 18-Oct-2012)
http://internetjournals.net/journals/tir/2009/January/Full%20Journal.pdf
63