Professional Documents
Culture Documents
Chapter 1 INTRODUCTION
1.1 PURPOSE
1.2 SCOPE
Proposed system allows the students to type the answers in the space provided for each
question. When students submit the exam, system automatically collects all the questions
and corresponding answers into a file and converts it into pdf and then uploads it to the
server by encrypting the person-specific details. Staff related to corresponding subject can
only access these answer sheets for evaluation and allots marks base on the performance.
Students can view their answer script and marks obtained for each question, when the
results are announced. It improves transparency and credibility on the examination system.
It will minimize the utilization of manpower to great extent.
Present system conducts the exam manually where the student has to write the exams on the
paper with a pen. Answer sheets of all the students will be handed over to the invigilator.
The invigilator will submit the bundle to the university. There the concerned staff will do
evaluation of the papers. The person who evaluated the paper has to sign on the paper
indicating that he himself has evaluated the paper. After evaluating marks are allotted to the
student basing on his performance and then feed into the system
2
In this current system entire examination process is being conducted manually where there
is a lot of scope for security threats, improper evaluation. This system places lot of burden
over students in writing their exam, staff in evaluating the answers and entering the marks
separately in the system. It requires lot of man power to conduct the exam. . It provides less
security to the answer sheets of the students from third party manipulations. As mentioned
earlier, it takes extrinsic parameters like handwriting, presentation into consideration for
evaluation. It provides less transparency to the students from the evaluation process. It also
requires lot of man power for conducting the exams.
Every student has to submit his user id, course, year of study, branch, and subject-code
details before taking the exam. After entering into the system he can answer to the question
paper. He has to answer the question paper in the text area provided to him for each question.
After writing the exam, the student has to upload answered document to the server. To protect
the answer sheet from illegitimate modifications, we have to convert it into PDF before
storing in the server.
Depending on the subject code, answer sheets belonging to a particular subject are
automatically uploaded to corresponding staff’s user. Staff member who is going to correct
this particular subject can access these answer sheets by logging into his account. After
evaluating the paper, marks are allotted for each answer depending on his performance. These
marks will be entered into the database by the staff after correcting the paper. Invigilator after
writing the exam gives the feedback about the examination process, which will be collected
by staff when he logged into the system.
In the evaluation process, staff after need to input marks obtained for each question
irrespective of choice, the system automatically chooses answers with highest marks into
account thereby reducing burden on the staff. Administrator maintains the system in order to
allot require resources for achieving the functionality.
1
)
.
4
The application involves different kinds of users namely Admin who maintains the system,
Student who can take an exam by logging into the system, Staff who can evaluate answer
sheets of students by logging into the system, Invigilator can report feedback after the
examination to the system.
Operating Environment
Software Requirement:
The application runs on java runtime interface .The web server Oracle10g should be
installed and started access should be made with the database .Any browser that allows state
management.
5
The product is provided with built-in manual that would help the end user use the system for
functioning.
The application is provided with keyboard shortcuts and a facility to use the mouse to trigger
the required actions. They act as shortcuts and provide an easy navigation within the software.
The application concentrates on handling examination’s online and does have dependency on
the network and protocols. The application can also be executed from a standalone machine
without the above dependency.
The incoming data to the product would be raw text data and outgoing data would be the
same data but HTML formatted. Java and Html provides with the required web forms.
Controls are used in them for user friendliness. The middle tier is Oracle 10g and acts as a
request/response oriented server. The data is stored, processed from the Ms-access database.
2.7.2 Student:
a) Writing the exam
b) Uploading the answer paper
c) Viewing the results
6
2.7.3 Staff:
a) Evaluating the answer papers
b) Allotting marks
c) Viewing Marks
d) Updating Marks
e) View Attendance
2.7.4 Admin:
2.7.5 Invigilator:
Chapter 3 METHODOLOGY
3.1 ANAYSIS:
Analysis is concerned with the primary abstractions and mechanism that are present in
the problem. The classes that are models these are identified along with their
Relationships to each other. In the analysis, only classes that are in the problem domain
Use-case model
Analysis model
Listing the use cases that are involved in the use case diagram.
1. Login
2. Student details
3. Staff details
4. Exam settings
5. Invigilator details
6. Take exam
7. Submit exam
8. Cancel exam
9. View results
10. Evaluate paper
11. Change marks
12. Report feedback
13. Invigilate
14. View marks
8
1. Admin login:
9
USE CASE NAME: Admin login USE CASE ID: 1
PARTICIPATING The Administrator, EOC, login (db).
ACTORS:
DESCRIPTION: The admin logs into the system and maintains the database.
TYPICAL COURSE
OF EVENTS(Main Actor Action System Response
Flow):
Step 1: The admin clicks on admin
login
Step 2: The system displays the login page
ALTERNATE FLOW :
AF 1: If admin presses others login
AF 2: If the admin types wrong password
POST-CONDITION: The system displays profile according to which the admin has asked.
NON FUNCTIONAL --------------------------------------------------------------------
REQ.
2. Others login:
POST-CONDITION: The system opens profile according to the roles the users has been assigned.
-----------------------------------------------------------------------
NON FUNCTIONAL REQ.
10
3. Student details:
ALTERNATE FLOW :
AF 1: The admin may not click on student details.
4. Staff details:
5. Invigilator details:
6. Exam settings:
ALTERNATE FLOW :
AF 1: The admin may not click on exam settings.
POST-CONDITION: Only the admin can view the exam settings.
NON FUNCTIONAL REQ. The logged in user must be an admin.
12
7. Take exam:
ALTERNATE FLOW :
AF 1: The student might click on view instructions.
AF 2: The student might click on view marks.
POST-CONDITION: Only the student can take an exam.
NON FUNCTIONAL REQ. The logged in user must be a student.
USE CASE NAME: Evaluate and allocate marks. USE CASE ID: 8
PARTICIPATING Staff, EOC, the database.
ACTORS:
DESCRIPTION: The staff will evaluate the answer sheets and allocate marks.
PRE-CONDITION: The logged in user must be a staff member.
TYPICAL COURSE
Actor Action System Response
OF EVENTS(Main Flow):
Step 1: The user must click on Others
login and enter his details and log
onto the system.
Step 2: The system displays the staff home page.
Step 3: The staff must click on evaluate
Step 4: The system displays the answer sheet.
ALTERNATE FLOW :
AF 1: The user might click on view results.
POST-CONDITION: Only the staff can evaluate and allocate marks.
NON FUNCTIONAL REQ. The logged in user must be a staff.
13
9. View marks:
USE CASE NAME: Invigilate and report feedback USE CASE ID: 10
PARTICIPATING Invigilator, EOC, the database.
ACTORS:
DESCRIPTION: Invigilator must log in and report feedback.
PRE-CONDITION: The logged in user must be an invigilator.
TYPICAL COURSE
Actor Action System Response
OF EVENTS(Main Flow):
Step 1: The user must enter the invigilator
details.
Step 2: The system displays the invigilator home
page.
Step 3: The invigilator must click on
report feedback.
Step 4: The system displays the feedback page.
Step 5: User might click on report
absentees, debarred and any
technical problems.
ALTERNATE FLOW :
AF 1: The logged in user might not be an invigilator.
POST-CONDITION: Only invigilator can report feedback.
NON FUNCTIONAL REQ. The logged in user might not be an invigilator.
14
login
administrator
check type
staff
invigilator student
submit answer
paper
evaluate answer
paper
Login:
Student details:
17
Staff details:
Exam settings:
18
Invigilator details:
Take exam:
19
Submit exam:
Cancel exam:
20
View results:
Evaluate paper:
21
Change marks:
View marks:
22
Invigilate:
Report feedback:
23
Login:
24
Student details:
Staff details:
25
Invigilator details:
Exam settings:
26
Take exam:
Submit exam:
27
Cancel exam:
View results:
28
Evaluate paper:
Change marks:
29
View marks:
Invigilate:
30
Report feedback:
31
The three-tier software architecture (a.k.a. three layer architectures) emerged in the
1990s to overcome the limitations of the two-tier architecture. The third tier (middle tier
server) is between the user interface (client) and the data management (server) components.
This middle tier provides process management where business logic and rules are executed
and can accommodate hundreds of users (as compared to only 100 users with the two tier
architecture) by providing functions such as queuing, application execution, and database
staging.
The three tier architecture is used when an effective distributed client/server design is
needed that provides (when compared to the two tier) increased performance, flexibility,
maintainability, reusability, and scalability, while hiding the complexity of distributed
processing from the user. These characteristics have made three layer architectures a popular
choice for Internet applications and net-centric information systems.
32
Technical Details:
A three tier distributed client/server architecture includes a user system interface top
tier where user services (such as session, text input, dialog, and display management) reside .
Advantages of Three-Tier:
HTTP
JDBC
Request
HTTP JDBC
Response
SERVER
CLIENT RDBMS
4.2.2 Tables
STUDENT TABLE
TABLE 4.2.2.1
STAFF TABLE
COURSES TABLE
TABLE.4.2.2.3
BRANCHES TABLE
TABLE 4.2.2.4
SUBCODES TABLE
TABLE 4.2.2.5
37
INVIGILATOR TABLE
TABLE 4.2.2.6
ADMIN TABLE
TABLE 4.2.2.7
38
SECTION1 TABLE
SECTION2 TABLE
TABLE 4.2.2.9
39
SECTION3 TABLE
TABLE 4.2.2.10
SECTION4 TABLE
TABLE 4.2.2.11
SECTION5 TABLE
TABLE 4.2.2.12
40
SECTION1MARKS TABLE
Attribute Data type Size Mandatory Key
Subcode Varchar2 5 Not null references
sbcode(sbcode)
User-id Varchar2 15 Not null References
student(userid)
Q1 Number 1 Not null
Q2 Number 1 Not null
Q3 Number 1 Not null
Q4 Number 1 Not null
Q5 Number 1 Not null
Q6 Number 1 Not null
Q7 Number 1 Not null
Q8 Number 1 Not null
Q9 Number 1 Not null
Q10 Number 1 Not null
Q11 Number 1 Not null
Q12 Number 1 Not null
Q13 Number 1 Not null
Q14 Number 1 Not null
Primary key is the combination of both subcode & user-id
TABLE 4.2.2.13
SECTION2MARKS TABLE
Attribute Data type Size Mandatory Key
SECTION3MARKS TABLE
Attribute Data type Size Mandatory Key
SECTION4MARKS TABLE
TABLE 4.2.2.16
42
SECTION5MARKS TABLE
TABLE 4.2.2.17
TOTALMARKS TABLE
Attribute Data type Size Mandatory Key
TABLE 4.2.2.18
ABSENTIES TABLE
Attribute Data type Size Mandatory Key
DEBARRED TABLE
TABLE 4.2.2.20
TECHPROB TABLE
Attribute Data type Size Mandatory Key
PDFFILES TABLE
Attribute Data type Size Mandatory Key
Table 4.2.2.22
44
Chapter 5 TESTING
TESTING:
role for quality assurance and for ensuring the reliability of software. The results of testing are
The aim of testing is often to demonstrate that a program works by showing that it has
no errors. The basic purpose of testing phase is to detect the errors that may be present in the
program. Hence one should not start testing with the intent of showing that a program works,
but the intent should be to show that a program doesn’t work. Testing is the process of
executing a program with the intent of finding errors.
In order to uncover the errors present in different phases we have the concept of
levels of testing. The basic levels of testing are as shown below…
Acceptance 47
Testing
Client Needs
System Testing
Requirements
Integration Testing
Design
Unit Testing
Code
1. Unit Testing
2. Integration Testing
3. System Testing
4. Acceptance Testing
Unit testing focuses verification effort on the smallest unit of software i.e. the
module. Using the detailed design and the process specifications testing is done to uncover
errors within the boundary of the module. All modules must be successful in the unit test
before the start of the integration testing begins.
In this project each service can be thought of a module. There are so many modules
like Login, Admin module which further involves student details, staff details, invigilator
details, exam settings etc, student module which contains exam and results sub modules, staff
module and invigilator module. As a part of unit testing we tested every program or function
separately after coding of that particular program. We tested whether the program is meeting
the requirements placed by the requirements phase. If not we modified programs according to
our requirements.
Login paper
Action Performed: Enter invalid login details\leave any field without blank
Action Performed: leaving details \ leave any field blank\ already existing
Result: Success
Expected Results: Give warning message like invalid user/ question paper not set
Conditions Verified: yes
Result: Success
54
After the unit testing we have to perform integration testing. The goal here is to see if modules can
be integrated properly, the emphasis being on testing interfaces between modules. This testing activity can
be considered as testing the design and hence the emphasis on testing module interactions.
In this project integrating all the modules forms the main system. When integrating all the modules
I have checked whether the integration effects working of any of the services by giving different
combinations of inputs with which the two services run perfectly before Integration.
After the completion of unit testing, we tested the functionality of entire system by integrating all
the modules.
For example, in order a student to write an exam for a subject first he must be added as a student to
that course by admin, and also question paper must also be loaded into the database for that subject.
So here student module is depending on admin module. So we checked whether all students added
by the admin are able to access the system to write the exams of their respective courses or not.
55
In this way integration testing is followed also to test the interaction among all modules so
that the functionality of one module may not affect the functionality of another module in adverse
way.
Here the entire software system is tested. The reference document for this process is the
requirements document, and the goal as to see if software meets its requirements.
In the system testing we tested the entire system basing on System requirements specification
document i.e., whether the functionality we proposed in document is achieved or not. Here we achieved
everything whatever we specified write from the login, taking exam, pdf conversion, evaluation to viewing
results by the student.
Acceptance Test is performed with realistic data of the client to demonstrate that the software is
working satisfactorily. Testing here is focused on external behavior of the system; the internal logic of
program is not emphasized.
Test cases should be selected so that the largest number of attributes of an equivalence class is
exercised at once. The testing phase is an important part of software development. It is the process of
finding errors and missing operations and also a complete verification to determine whether the objectives
are met and the user requirements are satisfied. Our system underwent acceptance test from people who are
not involved in the project.
1) Test cases that reduced by a count that is greater than one, the number of additional test
cases that much be designed to achieve reasonable testing.
2) Test cases that tell us something about the presence or absence of classes of errors, rather
than an error associated only with the specific test at hand.
In order to test the overall system only one method of testing is not enough, so we have done wide range of
tests to validate the functionality of the system.
56
Home page
57
Admin Login
Staff Details
63
View Staff
Students Login
72
Staff Login
76
In the proposed system we are unable to include rich text editor, which supports drawings. So this
can be carried out in future. We can extend the system to different levels of stakeholders with different
privileges.
80
Chapter 8 BIBILOGRAPHY
1. Ali Bahraini (2003),”Object Oriented Analysis and Design using UML”, 2nd Edition Tata McGraw-
Hill.
2. Herbert Schildt (2002),”Java 2 Programmers Reference”, 1st edition, McGraw -Hill companies.
3. Jason Hunter William Crawford and Paula Ferguson (1999) ,”Java Servlet Programming”, 2nd
Edition.
4. Roger S.Pressman (2002),”Software Engineering: A Practioners Approach”, 5th Edition, Tata
McGraw-Hill.
WEBSITES
1. WWW.java.sun.com
2. WWW.w3schools.com
81