Documente Academic
Documente Profesional
Documente Cultură
Current examination system provides less scope for justified evaluation because it
takes handwriting into consideration while evaluation, which is an extrinsic
parameter. At the same time current system provides minimum security to the answer
sheets of the student from illegitimate modifications. So the proposing Electronic
Descriptive Examination Management System is a computerized way of conducting
present day paper-based descriptive examinations in a university.
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 answersheets 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.
CONTENTS
CHAPTER 1:
CHAPTER 2:
INTRODUCTION
1.1 Current Scenario
LITERATURE OVERVIEW
2.1 Existing System
2.2 Java
2.4 Oracle
2.5 JDBC
2.5.1 JDBC overview
2.5.2 ODBC
11
2.6 JSP
18
19
20
22
23
23
26
28
30
31
46
46
46
47
CHAPTER 5: DESIGN
5.1 User Interface Design
50
73
76
76
5.3.2 Tables
77
CHAPTER 6: TESTING
6.1 Psychology of Testing
90
90
91
91
91
99
100
100
101
102
BIBILOGRAPHY
103
LIST OF TABLES
5.3.2.1
Student
77
5.3.2.2
Staff
77
5.3.2.3
Courses table
78
5.3.2.4
Branches table
78
5.3.2.5
Subcodes table
78
5.3.2.6
Invigilator table
79
79
5.3.2.8
Section1 table
80
5.3.2.9
Section2 table
80
81
81
81
82
82
83
84
84
84
84
85
85
5.3.2.22 Pdffiles
85
LIST OF FIGURES
Use case diagrams
4.1.2.1 Overall Use case diagram of the system
27
Activity diagram
4.1.3.1 Overall Activity diagram of the system
29
30
Sequence diagrams
4.1.5.1 Sequence diagram for Login
32
33
34
35
36
37
38
39
40
41
42
43
44
45
3-tier architecture
5.2.1 Three Tier Architecture
73
74
5.2.3
75
Functional Architecture
75
89
ACRONYMS
JDBC : Java Database Connectivity
ODBC: Oracle Database Connectivity
SQL : Structured Query Language
JSP
CHAPTER 1
INTRODUCTION
1.1 CURRENT SCENARIO
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.
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.
10
CHAPTER 2
LITERATURE OVERVIEW
2.1 EXISTING SYSTEM
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 evaluation
of the papers will be done by the concerned staff. 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. After marks
are allotted they are displayed to the students.
Merits and Demerits of the existing system
Merits:
1. The present system is applicable to any type of descriptive examination.
2. No need of having any computer knowledge to write the exam.
3. No chances of arising any technical problems during the process of writing,
evaluating the exam.
4. This existing system is familiar to all the actors of the system for the long
time, so it is easy to conduct exam in this pattern.
5. Evaluator can mark the mistakes done by the student on answer paper with red
ink so that he can easily understand why he has reduced the marks for the
answer written by the student when he review the answer sheet.
Demerits:
1. It provides less security to the answer sheets from third party manipulations.
2. It is costly process which requires resources like pens, papers and lot of man
power to maintain security to the answer sheets.
3. It is bit difficult to handle because it involves entering marks on answer-sheet
as well as in database separately thereby increasing the redundancy of work.
4. Existing pattern of examination doesnt provide ideal justice in evaluating the
answer of the student, because it implicitly gives priority to hand writing of the
student which should not be taken into the consideration.
11
2.2 JAVA
Java was conceived by James Gosling, Patrick Naughton, Chris Warth, Ed
Frank, and Mike Sherdian at Sun Microsystems in 1991.
Features of Java:
Simple & Secure
Java was designed to be easy for the professional programmer to learn and use
effectively. The ability to download java applets with confidence that no harm could
be done and that no security will be breached is considered by many to be the single
most important aspect of java.
Robust
The multiplatform environment of web places extraordinary demands on a
program, because the program must execute reliably in a variety of systems. Thus, the
ability to create robust programs was given priority in the design of Java. To gain
reliability, Java restricts you in a few key areas, to force you to find mistakes early in
the program development. At the same time, Java frees you in the form having to
worry about many of the common causes of programming errors. Because java is a
strictly typed language, it checks your code at compile time.
Multi-Threaded
Java was designed to meet the real-world requirement of creating interactive,
networked programs. To accomplish this, Java supports multithreaded programming
which allows you to write programs that do many things simultaneously.
Distributed
Java is designed for the distributed environment of the Internet, because it
handles TCP/IP protocols. This feature brings an unparallel level of abstraction to
client/server programming.
12
Dynamic
Java programs carry with them substantial amounts of runtime type
information that is used to verify and resolve accesses to objects at run-time. This
makes it possible to dynamically link code in a safe and expedient manner.
Encapsulation
Encapsulation is the mechanism that binds together code and the data it
manipulates, and keep both safe from outside interference and misuse. It can be
thought of as a protective wrapper that prevents the code and data from being
arbitrarily accessed by other code defined outside the wrapper.
Inheritance
Inheritance is the process by which one object acquires the properties of
another object. This is important because it supports the concept of hierarchical
classification without the use of hierarchies, each object would need to define all of its
characteristics explicitly. However, by use of inheritance, an object need only define
those qualities that make it unique within its class. It can inherit its general attributes
from its parents.
Polymorphism
Polymorphism is a feature that allows one interface to be used for a general
class of actions more generally, the concept of polymorphism is often expressed by
the phrase One Interface, Multiple Methods. This means that it is possible to design
a generic interface to a group of related activities. This helps reduce complexity by
allowing the same interface to be used to specify a general class of action.
13
JavaScript) but is also used to enable scripting access to objects embedded in other
applications. "JavaScript" is a trademark of Sun Microsystems
Popular Scripting language:
JavaScript has simple rules and procedures that make it easier to use and learn for
programmers. This has made JavaScript a popular client-side scripting language.
Interpreted Language:
It is an interpreted language, meaning that it can be used or executed with ease
without pre-compilation.
Advantages of JavaScript:
Cross-browser support, validating data on the client, and being able to create more
sophisticated user interfaces. Other advantages include the fact that you don't need
any extra tools to write JavaScript, any plain text or HTML editor will do, so there's
no expensive development software to buy. It's also an easy language to learn, and
there's a thriving and supportive online community of JavaScript developers and
information resources
2.4 ORACLE
Features of Oracle
Oracle provides efficient and effective solution with the following features:
Client/Server(distributed Processing) environment: To take full advantage of a
given network, oracle allows processing the database server and the client programs.
Large Databases and space Management: Oracle supports the large of data of
terabytes in size. To make efficient hardware devices, t allows full uses.
14
2.5 JDBC
The JDBS API provides universal data access from the Java programming
language. Using the JDBC 3.0 API, we can access virtually any data source, from
relational databases to spreadsheets and flat files. JDBC technology also provides a
common base on which tools and alternate interfaces can be built.
2.5.1 JDBC Overview
Java database Connectivity is a java API for executing SQL statements. It consists
of a set of classes and interfaces written in java programming language that makes it
easy to send SQL statements to virtually any relational database, in other words, with
the JDBC API. It is not necessary to access an Oracle database, another program to
access an Informix database, and so on. One can write a single program using the
JDBC API, and the program will be able to send SQL statements to appropriate
database. With a program written in java, one also doesnt have to worry about
15
writing different programs to run on different platform. The combination of Java and
JDBC lets a programmer to write it once and run it anywhere.
2.5.2 ODBC
ODBC (Open Database Connection) is a way to connect any front-end tool to
any back-end database engine .A front end tool is one which is used to provide a user
interface using which the user will be able to manipulate the data. Aback-end is
responsible for the actual manipulation of the database on the request of the front
end, as well as for the storage and retrieval of information. Often a back-end is also
called as a server and front end as a client. Every database software provides an
ODBC driver which follows all the specifications to the ODBC compliant, It is this
ODBC driver converts the request to match the implementation specified at the server
side. Another important features of the ODBC is that it provides a client an
opportunity to connect multiple databases simultaneously, which could be residing at
different physical locations.
What does JDBC do?
Especially JDBC does three things:
Establishing the connection to database.
Send SQL statements.
Process the results.
2.5.3 The JDBC API
The JDBC API is designed to allow developers to create database front-ends
without needing to continually rewrite their code. The ability to create robust,
platform independent applications and web-based applets prompted developers to
consider using java to develop front-end connectivity solutions.
2.5.4 How JDBC Works
JDBC provides application developers with a singular API that is uniform and
database independent. The API provides a standard to write to, and a standard that
16
takes all of various application designs into account. The solution is a set of java
interfaces that are implemented by the driver. The driver translates the standard JDBC
calls into a specific call required by the database it supports. The application can be
written once and moved to the various drivers. The application multi-tier database
design is also known as Middleware. In addition to providing developers with a
uniform and DBMS independent framework, JDBC also provides a means of allowing
developers to return the specific functionality that their database vendor offers. JDBC
and ODBC are based on X/ Open SQL 0Command Level Interface . Having the
same conceptual base allows work on the API to proceed quickly and makes
acceptance of the API easier.
2.5.5 The JDBC API Components
In general there are two levels of interfaces in the JDBC API. The application
layer where the developer uses the API to make calls to the database via SQL and
retrieve the results, and the Driver layer which handles all communication with a
specific driver implementation.
The application developer needs to use only the standard API interfaces in
order to guarantee JDBC compliance. The driver developer is responsible for
developing the code that interfaces to the database and supports the JDBC application
level calls. There are four interfaces that every driver layer must implement, and one
class that bridges the Application and Driver layers.
The four interfaces are the Driver, Connection, Statement and Result Set. The
driver interface implementation is where the connection to the database is made. In
most applications, the driver is accessed through the Driver Manager class, providing
one more layer of abstraction for the developer. The Driver vendor implemented the
connection, Statement and Result set interfaces.
These interfaces represent methods that the application developer will treat as
real object classes and allow the developer to create statement and retrieve results.
17
18
JDBC-ODBC Connectivity
Seven basic steps to JDBC:
There are seven basic steps to use JDBC to accessing a database.
1. Importing the java.sql package.
2. Load and register the driver.
3.
4. Create a statement.
5. Execute the statement.
6. Retrieve the results.
7. Close the statement and connection.
1. Importing the java.sql package:
The JDBC API is a set of classes and interfaces. The package name for these
classes and interfaces to be imported is java.sql.
Import java.sql.*;
2. Load and register the driver:
19
20
21
22
23
24
2.6 JSP
JSP is a J2EE component which uses java as its scripting languages with java
will be more flexible and robust. JSP has many more advantages.
Write once run anywhere
JSP technology is platform independent, both in its dynamic web pages, its
web servers, and its underlying server components. we can write jsp pages on any
platform, run them on any web server or web enabled application server, and access
them from any web browser. We can also build the server components on any
platform and run them on any server.
25
platform power and flexibility of the java programming language and other scripting
languages.
Separation of Dynamic and Static content
The java server pages technology enables the separation of static content from
dynamic content that is inserted into the static templates. This greatly simplifies the
creation of content.
CHAPTER 3
PROPOSED SYSTEM
3.1 OVERVIEW
Electronic descriptive examination managing system is a computerized way of
conducting present day paper-based descriptive examinations in a university by
providing much user-friendliness to students, staff, invigilators and administrator.
Every student has to submit his userid, 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 staffs 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
26
burden on the staff. Administrator maintains the system in order to allot require
resources for achieving the functionality.
The Stakeholders of the System are:
1. student
2. staff
3. invigilator
4. administrator
27
c. Viewing Marks: He can have quick glance to the marks of all students
who take the exam in that instance.
d. Updating Marks: He also has a privilege of changing marks allotted
to the students.
e. View Attendance: He can view the attendance details of the
examination.
2. Administrator: He is the person who enjoys all privileges over the system.
He can delete/add students and staff. He can also perform many privileged
activities like setting model of question paper, loading question papers etc.
a. Update Student details: He can add, delete, view, change details of
the student.
b. Update Staff details: He can also add, delete, view, change details of
the student.
c. Update Invigilator Details: He also assigns and removes invigilators
to the examinations by giving them special user-id and password.
d. Load question paper: He loads the question paper into the database
before the examination for any subject, for any course by submitting
course, branch, year and subject details.
3. Invigilator: He authenticates the exam process by providing the feed back on
the examination to the administrator. Basing on his feed back necessary action
will be taken by the administrator.
a. Feedback on Absentees: Submits the user-id's of all those students
who keep absent for the particular exam
b. Feedback on Debarred candidates: Submits user-id's of those
students who got debarred on the basis of violation of examination
rules by coping the exam.
c. Feedback on Technical problems: Submits the user-id's of those
students who are unable to take the exam due to technical problems
occurred during the process of examination.
28
29
CHAPTER 4
PROBLEM ANALYSIS AND SYSTEM REQUREMENTS
SPECIFICATIONS
4.1 PROBLEM ANALYSIS
4.1.1 Global Use-case System
Identification of actors:
Actor: Actor represents the role a user plays with respect to the system. An actor
interacts with, but has no control over the use cases.
Graphical representation:
<<Actor name>>
Actor
Is external to the system and has no control over the use cases.
30
Who is using the system? Or, who is affected by the system? Or, which groups
need help from the system to perform a task?
Who affects the system? Or, which user groups are needed by the system to
perform its functions? These functions can be both main functions and
secondary functions such as administration.
Which external hardware or systems (if any) use the system to perform tasks?
What problems does this application solve (that is, for whom)?
And, finally, how do users use the system (use case)? What are they doing
with the system?
A use case can be described as a specific way of using the system from a
31
Use cases are best discovered by examining the actors and defining what the actor
will be able to do with the system.
Guide lines for identifying use cases:
For each actor, find the tasks and functions that the actor should be able to
perform or that the system needs the actor to perform. The use case should
represent a course of events that leads to clear goal.
Describe the use cases briefly by applying terms with which the user is familiar.
This makes the description less ambiguous
Will any actor create, store, change, remove or read information in the system?
What use case will store, change, remove or read this information?
Will any actor need to inform the system about sudden external changes?
Does any actor need to inform about certain occurrences in the system?
32
View marks
Invigilate
Report feedback
4.1.2 Flow of events
A flow of events is a sequence of transactions (or events) performed by the
system. They typically contain very detailed information, written in terms of what the
system should do, not how the system accomplishes the task. Flow of events are
created as separate files or documents in your favorite text editor and then attached or
linked to a use case using the Files tab of a model element.
A flow of events should include:
use cases (system boundaries identifying what the system should do)
33
2.Uses:
A Uses relationship between the usecases is shown by generalization arrow
from the use-case.
3. Extends:
The extends relationship is used when we have one use-case that is similar to
another use-case but does a bit more. In essence it is like subclass.
34
login
<<include>>
<<include>>
<<include>>
Evaluate
<<include>>
Take Exam
student
view results
<<include>>
<<extend>>
change Marks
Review
<<include>>
Adminlogin
Administrator
submit
staff
View Marks
<<include>>
cancel
<<include>>
<<include>>
<<include>>
StudentDetails StaffDetails
Exam Settings
Invigilator
InvigilatorDetails
Report Feedback
Invigilate
35
----
state or activity.
on exit
----
The "task" must be performed when the object exits the state
or activity.
do
---- The "task" must be performed while in the state or activity and
----
received.
An end state represents a final or terminal state on an activity diagram or state
chart diagram.
A start state (also called an "initial state") explicitly shows the beginning of a
workflow on an activity diagram.
Swim lanes can represent organizational units or roles within a business
model. They are very similar to an object. They are used to determine which
unit is responsible for carrying out the specific activity. They show ownership
or responsibility. Transitions cross swim lanes
Synchronizations enable you to see a simultaneous workflow in an activity
diagram Synchronizations visually define forks and joins representing parallel
workflow.
A fork construct is used to model a single flow of control that divides
into
36
Administrator
Inv igilator
Student
Staff
login
administrator
check type
invigilator
invigilate the
exam
student
staff
write exam
submit answer
paper
set staff
details
assign
invigilators
set student
details
set question
paper
report
feedback
get feedback
evaluate answer
paper
view result
submit
results
Use case realization is nothing but an instance of a use case which involves the
identification of a possible set of classes, together with an understanding of how those
classes might interact to deliver the functionality of the use case. The set of classes is
known as collaboration.
37
Take-exam
takeexam
Submit-test
submit-test
Viewmarks
Cancel-test
viewmarks
cancel-test
38
There are two main differences between sequence and collaboration diagrams:
sequence diagrams show time-based object interaction while collaboration diagrams
show how objects associate with each other.
A sequence diagram has two dimensions: typically, vertical placement
represents time and horizontal placement represents different objects.
Object: An object has state, behavior, and identity. The structure and behavior of
similar objects are defined in their common class. Each object in a diagram indicates
some instance of a class. An object that is not named is referred to as a class instance.
The object icon is similar to a class icon except that the name is underlined: An
object's concurrency is defined by the concurrency of its class.
Message: A message is the communication carried between two objects that trigger
an event. A message carries information from the source focus of control to the
destination focus of control.
The synchronization of a message can be modified through the message specification.
Synchronization means a message where the sending object pauses to wait for results.
Link: A link should exist between two objects, including class utilities, only if there
is a relationship between their corresponding classes. The existence of a relationship
between two classes symbolizes a path of communication between instances of the
classes: one object may send messages to another. The link is depicted as a straight
line between objects or objects and class instances in a collaboration diagram. If an
object links to itself, use the loop version of the icon.
39
: User
: login interface
1: Enter login details
: Database
40
: Administrator
: Examsettings
control class
: Database
1: Login
2: select operation
4: Enter data
9: Give acknowledgement
41
: Administrator
1: Logs in
: student details
control system
: Database
42
: Administrator
1: Login
: Database
2: select operation
43
: Administrator
: Invigilator details
control system
: Database
1: Login
2: Select operation
4: Enter data
6: Handle data
9: Give acknowledgment
44
: student
1: Login
45
: student
: Submittest interface
: Submittest control
class
: Database
3: Give confirmation
9: Give acknowledgement
46
: student
: Cancel interface
3: Confirm cancellation
4: Forward confirmation
6: Give acknowledgement
47
: student
: Database
1: Login
2: Request marks
3: Submit details
4: Retrieve marks obtained
5: Forward results
6: View marks
48
: Evaluate interface
: staff
1: Login
: Evaluation control
system
: Database
7: Give acknowledgement
49
: staff
: Change marks
control system
: Database
1: Login
2: Display existing marks
6: Give acknowledgement
50
: staff
: Database
3: Handle data
5: Submit
6: View marks
51
: Invigilator
: student
: Feedback Interface
52
: Feedback control
system
: Database
1: Login
3: Submit feedback
4: Store feedback in database
5: Give acknowledgement
53
: Java
Operating System
: Windows 95/98/XP
Server
Data Base
54
55
MODULE 2
Student Module: Student interacts with this system after logging into the system by
selecting login type as student. After logging he has many student functionalities to
perform.
Functionality:
1. View instructions
2. Take exam
3. View results
1. View instructions: It contains instructions that are to be followed while writing
the exam.
2. Take exam: Here the student will take the exam in the text boxes provided under
each question. A clock will be displayed through out the exam process for the time
period of 3 hours. After writing the exam, student has to submit the answer sheet
in time.
3. View results: The student after submitting the exam, the answered sheet will be
evaluated by the staff and the results are entered into the database. Then he can
view the results obtained.
MODULE 3
Staff module: Staff interacts with the system by logging into the system by setting
login
type as staff.
Functionality:
4. Evaluate answer sheets
5. Allot marks
6. View marks
1. Evaluate answer sheets: Staff who deals the particular subject can access the
answered sheets of that particular subject belonging to the students, by
downloading the pdf documents which contains the answers written by the
students.
56
2. Allot Marks: Staff after evaluating the paper, submits the marks to the system by
selecting the marks need to be allotted in a drop down box for each question and
each section.
3. View Marks: This enables the staff to view the marks allotted to each student for
each question in every section and also he can view the total marks obtained.
MODULE 4
Invigilator Module: Invigilator interacts with the system for giving the feedback and
also authenticates the process of examination. Feedback can be given under three
functionalities.
Functionality:
1. Report absentees
2. Report debarred
3. Report technical problems
4. Report Absentees: Invigilator reports the userid's of the students who dint come
to the exam.
5.
Report debarred: He reports the candidates who got debarred for violating the
rules of examination.
6.
Report Technical problems: Reports the details of the candidate who are unable
to complete the exam due to technical problems of the system.
57
CHAPTER 5
DESIGN
Home page
58
Admin Login
59
60
61
62
63
Staff Details
64
65
66
View Staff
67
68
69
70
71
72
Students Login
73
74
75
76
Staff Login
77
78
79
80
3-Tier Architecture:
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.
81
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:
done successfully.
82
Stores
Student details
Generates user-id,
password,course,
branch year & sem
Generates user-id,
password,course,
branch year & sem
CLIENT
RDBMS
SERVER
HTTP
JDBC
Request
HTTP
Response
JDBC
SERVER
RDBMS
83
5.3.2 Tables
84
STUDENT TABLE
Attribute
Data type
Size
Mandatory
Name
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Password
Varchar2
15
Not null
Course
Varchar2
Not null
Branch
Varchar2
15
Not null
Year
Number
Not null
Semester
Number
Not null
Key
Primary key
References
courses(course)
TABLE 5.3.2.1
STAFF TABLE
Attribute
Data type
Size
Mandatory
Name
Varchar2
15
Not null
Use-rid
Varchar2
15
Not null
Password
Varchar2
15
Not null
Sub-code
Varchar2
Not null
TABLE 5.3.2.2
COURSES TABLE
Key
Primary key
Unique,
References
subcds(sbcode)
85
Attribute
Data type
Size
Mandatory
Key
Courses
Varchar2
15
Not null
Primary key
TABLE 5.3.2.3
BRANCHES TABLE
Attribute
Data type
Size
Mandatory
Key
Branch
Varchar2
15
Not null
Primary key
TABLE 5.3.2.4
SUBCODES TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
10
Not null
Primary key
Course
Varchar2
Not null
References
courses(course)
Branch
Varchar2
15
Not null
Year
Number
Not null
Semester
Number
Not null
TABLE 5.3.2.5
INVIGILATOR TABLE
86
Attribute
Data type
Size
Mandatory
Key
Invi-id
Varchar2
15
Not null
Primary key
references
staff(userid)
Password
Varchar2
15
Not null
Userid
Varchar2
15
Not null
References
staff(userid)
TABLE 5.3.2.6
ADMIN TABLE
Attribute
Data type
Size
Mandatory
Key
Userid
Varchar2
15
Not null
Primary key
Password
Varchar2
15
Not null
TABLE 5.3.2.7
SECTION1 TABLE
87
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
Not null
Primary key
references
sbcode(sbcode)
Q1
Varchar2
150
Not null
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Q14
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
Varchar2
150
150
150
150
150
150
150
150
150
150
150
150
150
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
TABLE 5.3.2.8
SECTION2 TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
Q21
Varchar2
150
Not null
Q22
Varchar2
150
Not null
TABLE 5.3.2.9
SECTION3 TABLE
88
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
Q31
Varchar2
150
Not null
Q32
Varchar2
150
Not null
TABLE 5.3.2.10
SECTION4 TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
Q41
Varchar2
150
Not null
Q42
Varchar2
150
Not null
TABLE 5.3.2.11
SECTION5 TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
Q51
Varchar2
150
Not null
Q52
Varchar2
150
Not null
TABLE 5.3.2.12
Attribute
Data type
SECTION1MARKS TABLE
Size
Mandatory
Key
89
Subcode
Varchar2
Not null
User-id
Varchar2
15
Not null
Q1
Number
Not null
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
1
1
1
1
1
1
1
1
1
1
1
1
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Q14
references
sbcode(sbcode)
References
student(userid)
Number
1
Not null
Primary key is the combination of both subcode & user-id
TABLE 5.3.2.13
SECTION2MARKS TABLE
Size
Mandatory
Attribute
Data type
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Q21
Number
Not null
Q22
Number
Not null
Key
Primary key
references
sbcode(sbcode)
References
student(userid)
90
SECTION3MARKS TABLE
Size
Mandatory
Attribute
Data type
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Q31
Number
Not null
Q32
Number
Not null
Key
Primary key
references
sbcode(sbcode)
References
student(userid)
SECTION4MARKS TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
Q41
Number
Not null
Q42
Number
Not null
SECTION5MARKS TABLE
91
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
Q51
Number
Not null
Q52
Number
Not null
TOTALMARKS TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
TOTALMARK
Number
Not null
ABSENTIES TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
DEBARRED TABLE
92
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
TABLE 5.3.2.20
TECHPROB TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
PDFFILES TABLE
Attribute
Data type
Size
Mandatory
Key
Subcode
Varchar2
15
Not null
User-id
Varchar2
15
Not null
Primary key
references
sbcode(sbcode)
References
student(userid)
Files
Long raw
Not null
93
94
95
96
InvigilatorDetails
name : String
authenticateStudent()
conductTest()
1
1
StudentDetails
<<entity class>>
regdNo : String
name : String
year : Integer
semester : Integer
branch : String
QuestionPaper
0..n
setRegdNo()
getRegdNo()
setName()
getName()
setYear()
getYear()
setSemester()
getSemester()
setBranch()
getBranch()
1
subjectCode : String
sections : String
questionNumbers : Integer
questions : String
subjectName : String
1..n
setQuestionNumbers()
getQuestionNumers()
setSubjectCode()
getSubjectCode()
setQuestions()
getQuestions()
setSubjectName()
getSubjectName()
0..n
0..n
<<entity class>>
MarksDetails
studentRegdNo : String
subjectCode : String
marks : Integer
setStudentRegdNo()
getStudentRegdNo()
setSubjectCode()
getSubjectCode()
setMarks()
getMarks()
StaffDetails
name : String
subject : String
0..n
setName()
getName()
setSubject()
getSubject()
97
CHAPTER 6
TESTING
TESTING:
Testing is the process of detecting errors. Testing performs a very critical role
for quality assurance and for ensuring the reliability of software. The results of testing
are used later on during maintenance also.
98
Client Needs
System Testing
Requirements
Design
Integration Testing
Unit Testing
Code
99
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.
In this application developer tests the programs up as system. Software units
in a system are the modules and routines that are assembled and integrated to form a
specific function. Unit testing is first done on modules, independent of one another to
locate errors. This enables to detect errors. Through this, errors resulting from
interaction between modules initially avoided. We followed basic flow testing where
we Showed screens for every path of flow for login page thereby proving cyclometric
complexity of the program.
100
login paper
101
102
103
104
105
106
107
108
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)
In order to test the over all system only one method of testing is not enough, so we
have done wide range of tests to validate the functionality of the system.
109
CHAPTER 7
CONCLUSION & FUTURE WORK
110
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, 5 th
Edition, Tata MCGraw-Hill.
WEBSITES
1. WWW.java.sun.com
2. WWW.w3schools.com