Java Documentation 1
Java Documentation 1
Project Report
on
“JAVA E-CODER”
In partial fulfillment of requirements for the degree of
Bachelor of
Computer Application
Under the Guidance of:-
Miss. Ishita Maheshwari
(Assistant Professor)
BCA DEPARTMENT
Submitted By:-
Ramesh Gharami
1
CERTIFICATE
This is certify that project work entitled “JAVA E-CODER” is a bonafide work carried out in the
sixth semester in partial for the award of Bachelor of Computer Application From Droan College
of Education & Technology affiliated to Kumaun University Nainital during the academic year
2018-2019. Who carried out of the project work under the guidance and no part of this work has been
submitted earlier for the award of any degree.
Ramesh Gharami
2
ACKNOWELEDGEMENT
I have taken efforts in this project. However, it would not have been possible without the kind of
support and help of many individuals and organizations. I would like to extend my sincere thanks to
all of them.
I would like to express my gratitude towards our parents for their kind co-operation and
encouragement, which help me in completion of this project.
I would like to express our special and gratitude and thanks to college staff for giving me such attention
and time.
I am highly indebted to Mr. Kishor Kumar (Chairman), Mr. Shamsher Singh (H.O.D.) for
providing us the desired platform and deliver the learning in effective and efficient manner.
My thanks and appreciations also go to my project guide “Miss Ishita Maheshwari” in completing
the project and people who have willingly helped me out with their abilities.
3
ABSTRACT
The current scenario of the software industry relating to software programming languages is
you have an huge collection of programming languages wherein the importance of one cannot be
underlined with the other and every language presents some features which makes a given language
more suitable than the other for a given set of domains thereby a programmer has to confront the need
to write code in different languages for example a program needs to write code in java, html, java
script etc. to name a few and each of these language has its own syntax ,code formatting and
commenting techniques.
E-Coder is aimed to help a programmer in editing code in these languages different tool vendors
provide their own individual editors so now to use these tools a programmer should be fully aware of
the features supported by different editors in these scenario a need for a single unified editor which
can support editing of multiple programming language code is extremely felt.
E-CODER is a powerful, pure Java text editor primarily targeted for use by programmers. For this
reason, E-CODER provides many useful programming functions: syntax colorization, auto
indentation, a source code browser, a class browser, and an integrated console. Other users will find
some additional advanced E-CODER functions useful. These include: HTML editing, the ability to
send mail directly, scripting, and a configurable clip library. Lastly, E-CODER is fully customizable
with the help of plugins and XML configuration files. This enables anyone to easily translate E-
CODER from English into other languages.
Thus, the project work principles have been successfully implemented to the better service to
the user. The further details of the project software are discussed in the later chapters.
4
INDEX
Certificates
Acknowledge
Abstract
1. INTRODUCTION.............................................................................................. 07
1.1.1 PURPOSE……………………………………………………………………………...08
1.1.2 SCOPE…………………………………………………………………………………08
1.1.3 ABOUT THE PROJECT…………………………………………………...09
1.1.4 EXTERNAL INTERFACE REQUIREMENTS .......................................................... 09
1.3.3 LOGIN INTERFACE ................................................................................................ 09
1.3.2 REGISTRATION INTERFACE ................................................................................. 10
1.3.4 EXAMINATION INTERFACE ................................................................................. 10
1.3.5 CONTACT INTERFACE ........................................................................................... 11
3. ANALYSIS ........................................................................................................ 19
3.1 SYSTEM ANALYSIS ....................................................................................................20
3.2 SYSTEM SPECIFICATIONS .........................................................................................21
5
4.2 INTRODUCTION TO DESIGN ..................................................................................... 29
4.3 DATA FLOW DIAGRAMS ........................................................................................... 29
4.4 E-R DIAGRAMS ........................................................................................................... 33
5. TESTING............................................................................................................37
6.1. INTRODUCTION TO TESTING .................................................................................... 38
6.1.1. BLACK-BOX TESTING ......................................................................................... 38
6.1.2. WHITE-BOX TESTING .......................................................................................... 40
6.2. TESTING STRATEGIES ............................................................................................... 41
2. 6.2. TESTING DOCUMENTATIOM .................................................................................... 42
6. SNAPSHOTS ...................................................................................................... 44
6.1 DECLARATION PAGE................................................................................................. 45
6.1.1 DECLINE PAGE ..................................................................................................... 46
6.2 HOME PAGE .................................................................................................................. 47
6.3 LOGIN PAGE ................................................................................................................. 48
6.3.1 EXAMINATION WELL COME PAGE ................................................................. 49
6.3.1.1 SUBJECT SELECTION PAGE ...................................................................... 50
7.3.1.1 EXAMINATION PAGE ........................................................................... 51
7.3.1.1 RESULT PAGE ..................................................................................... 52
6.3.2 REGISTRATION PAGE ........................................................................................ 53
6.3.2.1 REGISTRATION SUCCESS PAGE ............................................................ 54
6.4 CONTACT US PAGE ..................................................................................................... 55
6.4.1 CONTACT REQUEST SUBMIT PAGE ................................................................ 56
6.5 ABOUT DEVELOPER PAGE .........................................................................................57
6.6 ALARTS SCREEN......................................................................................................... 58
7. CONCLUSION ................................................................................................. 62
8. FUTURE ENHANCEMENTS .......................................................................... 64
9. BIBILIOGRAPHY ............................................................................................ 66
6
4
What is a text editor? :-
Software used to create and edit files that contain only text; for example, batch files, address
lists and source language programs. Text editors produce raw ASCII or EBCDIC text files, and unlike
word processors, they may not support formatting (word wrap, fonts, bold, italic, etc.).
Editors that are part of a development environment are designed for writing source code and
provide automatic indention and multiple windows into the same file. They also display-reserved
words of a particular programming language in bold or in a different typeface, and any of these layout
codes that are embedded in the file are bypassed when the program is compiled.
E-Coder is being launched because a need for a destination that is beneficial for both individual
and team. With this application, both individual and group can register and create effective programming
environment. Users can protect their projects and coordinates with their teammates. This application
is an attempt to remove the existing flaws in the manual system of programming.
Purpose:-
E-Coder fulfills the requirements of the programmers. A text editor that is specialized for
writing software. A source code editor may be a stand-alone program or part of an integrated
development environment (IDE). They make writing and reading the source code easier by
differentiating the elements and routines so programmers can more easily look at their code. Using a
regular text editor, large programs would be more cumbersome to review later.
4
About the Project:-
E-CODER is a Java application built on top of Swing E-CODER is a powerful, pure Java text
editor primarily targeted for use by programmers. For this reason, E-CODER provides many useful
programming functions: syntax colorization, auto indentation, a source code browser, a class browser,
and an integrated console. Other users will find some additional advanced E-CODER functions
useful. These include: HTML editing, the ability to send mail directly, scripting, and a configurable
clip library. Lastly, E-CODER is fully customizable with the help of plugins and XML configuration
files. This enables anyone to easily translate E-CODER from English into other languages.
E-CODER is full of useful shortcuts, which will help improve your productivity. After having
read this documentation, you will be able to make the most of all of E-CODER's many features.
4
4
JAVA
Java is a programming language and a platform. Java is a high level, robust, object-oriented and
secure programming language. Platform: Any hardware or software environment in which a program
runs, is known as a platform. Since Java has a runtime environment (JRE) and API, it is called a
platform.
History of Java:-
Java was originally designed for interactive television, but it was too advanced technology for the
digital cable television industry at the time. The history of java starts with Green Team. Java team
members (also known as Green Team), initiated this project to develop a language for digital devices
such as set-top boxes, televisions, etc. However, it was suited for internet programming.
Later, Netscape incorporated Java technology. The principles for creating Java programming were
"Simple, Robust, Portable, Platform-independent, Secured, High Performance, Multithreaded,
Architecture Neutral, Object-Oriented, Interpreted and Dynamic".
Currently, Java is used in internet programming, mobile devices, games, e-business solutions, etc.
There are given the significant points that describe the history of Java.
James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in
June 1991. The small team of sun engineers called Green Team.
Originally designed for small, embedded systems in electronic appliances like set-top boxes.
Firstly, James Gosling called it “Green talk”, and file extension was “.gt”.
After that, it was called Oak and was developed as a part of the Green project.
Firstly, James Gosling called it “Green talk”, and file extension was “.gt”.
In 1995, Oak Technologies renamed Oak as “Java” because it was already a trademark.
4
The team gathered to choose a new name. The suggested words were "dynamic",
"revolutionary", "Silk", "jolt", "DNA", etc. They wanted something that reflected the
essence of the technology: revolutionary, dynamic, lively, cool, unique, and easy to spell
and fun to say.
According to James Gosling, "Java was one of the top choices along with Silk". Since Java
was so unique, most of the team members preferred Java than other names.
Java is an island of Indonesia where first coffee was produced (called java coffee).
In 1995, Time magazine called Java one of the Ten Best Products of 1995.
Many java versions have been released till now. The current stable release of Java is Java SE
10.
4
Java SE 7 (28th July 2011)
Features of Java:-
The primary objective of Java programming language creation was to make it portable, simple and
secure programming language. Apart from this, there are also some excellent features, which play an
important role in the popularity of this language. The features of Java are also known as
java buzzwords.
Simple
Object-Oriented
Portable
Platform independent
Secured
Robust
Architecture neutral
Interpreted
High Performance
Multithreaded
Distributed
Dynamic
4
OOP’s Concept
Java is an object-oriented programming language. Everything in Java is an object. Object-
oriented means we organize our software as a combination of different types of objects that
incorporates both data and behavior.
Object
Class
Inheritance
Polymorphism
Abstraction
Encapsulation
Object:-
Any entity that has state and behavior is known as an object. For example a chair, pen, table,
keyboard, bike, etc. It can be physical or logical.
An Object can be defined as an instance of a class. An object contains an address and takes up
some space in memory. Objects can communicate without knowing the details of each other's data or
code. The only necessary thing is the type of message accepted and the type of response returned by
the objects.
Example: A dog is an object because it has states like color, name, breed, etc. as well as behaviors
like wagging the tail, barking, eating, etc.
Classes:-
Collection of objects is called class. It is a logical entity.
A class can also be defined as a blueprint from which you can create an individual object. Class
does not consume any space.
When one object acquires all the properties and behaviors of a parent object, it is known as
inheritance. It provides code reusability. It is used to achieve runtime polymorphism.
4
Polymorphism:-
If one task is performed by different ways, it is known as polymorphism.
For example: to convince the customer differently, to draw something, for example, shape,
triangle, rectangle, etc.
In Java, we use method overloading and method overriding to achieve polymorphism.
Another example can be to speak something; for example, a cat speaks meow, dog barks woof,
etc.
Abstraction:-
Hiding internal details and showing functionality is known as abstraction. For example
phone call, we don't know the internal processing.
In Java, we use abstract class and interface to achieve abstraction.
Encapsulation:-
Binding (or wrapping) code and data together into a single unit are known as encapsulation.
For example capsule, it is wrapped with different medicines.
A java class is the example of encapsulation. Java bean is the fully encapsulated class because
all the data members are private here.
4
Java AWT
Java AWT (Abstract Window Toolkit) is an API to develop GUI or window-based
applications in java.
Java AWT components are platform-dependent i.e. components are displayed according to
the view of operating system. AWT is heavyweight i.e. its components are using the resources of OS.
The java.awt package provides classes for AWT api such as TextField, Label, TextArea,
RadioButton, CheckBox, Choice, List etc.
Container:-
The Container is a component in AWT that can contain another components like buttons,
textfields, labels etc. The classes that extends Container class are known as container such as Frame,
Dialog and Panel.
4
Window:-
The window is the container that have no borders and menu bars. You must use frame, dialog
or another window for creating a window.
Panel:-
The Panel is the container that does not contain title bar and menu bars. It can have other
components like button, textfield etc.
Frame:-
The Frame is the container that contain title bar and can have menu bars. It can have other
components like button, textfield etc.
4
Event and Listener
Changing the state of an object is known as an event. For example, click on button, dragging
mouse etc. The java.awt.event package provides many event classes and Listener interfaces for event
handling.
ActionEvent ActionListener
MouseWheelEvent MouseWheelListener
KeyEvent KeyListener
ItemEvent ItemListener
TextEvent TextListener
AdjustmentEvent AdjustmentListener
WindowEvent WindowListener
ComponentEvent ComponentListener
ContainerEvent ContainerListener
FocusEvent FocusListener
Registration Methods:-
For registering the component with the Listener, many classes provide the registration
methods. For example:
Button
4
o public void addActionListener(ActionListener a){}
MenuItem
TextField
TextArea
Checkbox
Choice
List
4
Java Swing Tutorial
Java Swing tutorial is a part of Java Foundation Classes (JFC) that is used to create window-
based applications. It is built on the top of AWT (Abstract Windowing Toolkit) API and entirely
written in java.
Unlike AWT, Java Swing provides platform-independent and lightweight components.
The javax.swing package provides classes for java swing API such as JButton, JTextField,
JTextArea, JRadioButton, JCheckbox, JMenu, JColorChooser etc.
3 AWT doesn't support pluggable look Swing supports pluggable look and
and feel. feel.
JFC:-
The Java Foundation Classes (JFC) are a set of GUI components, which simplify the
development of desktop applications.
4
Hierarchy of Java Swing classes:-
4
Commonly used Methods of Component class:-
The methods of Component class are widely used in java swing that are given below.
Method Description
public void setLayout(LayoutManager m) sets the layout manager for the component.
4
MySQL
MySQL Introduction:-
There are a large number of database management systems currently available, some
commercial and some free. Some of them: Oracle, Microsoft Access, Mysql and PostgreSQL. These
database systems are powerful, feature-rich software, capable of organizing and searching millions
of records at very high speeds.
Understanding Databases, Records, and Primary Keys Every Database is composed of one or
more tables. These Tables, which structure data into rows and columns, Impose organization on the
data.
The records in a table (below) are not arranged in any particular order. To make it easy to
identify a specific record, therefore, it becomes necessary.
Standing Relationships and Foreign Keys (RDBMS), you already know that a single database
can hold multiple tables. In a Relational database management system (RDBMS), these tables can be
linked to each other by one or more common fields, called foreign keys.
4
INTRODUCTION TO JDBC
JDBC:-
JDBC (Java Database Connectivity) is a front-tool for connecting to a server and is similar to
ODBC in the respect. However, JDBC can connect only Java clients and uses ODBC for the
connectivity. JDBC is essentially a low-level Application, Programming Interface. It is called a low-
level API since any data manipulation, storage and retrieval has to be done by the program itself.
Some tools that provide a higher-level abstraction are expected shortly.
4
JDBC ARCHITECTURE:-
JDBC architecture is shown below. Components of JDBC are
JDBC Driver Manager
JDBC Driver
JDB-ODBC Bridge
Applications.
4
SQL Driver Manager
JDBC Driver Manager:-
Function of the driver manager is to find out available drivers in the system and
connects the application to the appropriate database. Whenever a connection is requested.
However, to help the driver manager identify different types of drivers, each driver should be
registered with the driver Manager.
JDBC Driver:-
Function of the JDBC Driver is to accept the SQL calls from the application and
convert them into native calls to the database. However, in this process it may take help some
other drivers or even servers, which depends on the type of Jdbc Driver we are using. Also,
it is possible that the total functionality of the database server could be built into the driver
itself.
JDBC-ODBC Bridge:-
Sunsoft provides a special JDBC Driver called JDBC-ODBC bridge driver, which can
be used to connect to any existing database, that is ODBC complaint.
4
4
SYSTEM ANALYSIS
EXISTING SYSTEM:-
Editors or text editors are software programs that enable the user to create and edit text files.
In the field of programming, the term editor usually refers to source code editors that include many
special features for writing and editing code.
Features normally associated with text editors are: - moving the cursor, deleting, replacing,
pasting, finding, finding and replacing, saving etc.
Proposed System:
The online test created for taking online test has following features:
In comparison to the present system the proposed system will be less time
consuming and is more efficient.
Analysis will be very easy in proposed system as it is automated
Result will be very precise and accurate and will be declared in very short span
of time because calculation and evaluations are done by the simulator itself.
The proposed system is very secure as no chances of leakage of question paper
as it is dependent on the administrator only.
The logs of appeared candidates and their marks are stored and can be backup
for future use
20
PAge
Online Examination System
User-friendly system
Offering several types of questions
Auto exam publish
Automatically checked answers
Group report performance analysis
System Specifications
Hardware Requirements:-
Pentium-core i3 processor
4 GB Ram
512 KB Cache Memory
Hard disk 500 GB
Microsoft Compatible 101 or more Key Board
Software Requirements: -
Web-Technology: PHP
Front-End: HTML,CSS
Back-End: MySQL
22
PAge
Online Examination System
There are various life cycle models to improve the software processes.
WATERFALL MODEL
PROTOTYPE MODEL
ITERATIVE ENHANCEMENT MODEL
EVOLUTIONARY MODEL
SPIRAL MODEL
WATERFALL MODEL
This model assumes that everything is carried out and taken place perfectly as planned
in the previous stage and there is no need to think about the past issues that may arise
in the next phase. This model does not work smoothly if there are some issues left at
the previous step. The sequential nature of model does not allow us go back and undo
or redo our actions. This model is best suited when developers already have designed
and developed similar software in the past and are aware of all its domains
24
PAge
Online Examination System
Feasibility study
When the client approaches the organization for getting the desired product
developed, it comes up with rough idea about what all functions the software must
perform and which all features are expected from the software. Referencing to this
information, the analysts does a detailed study about whether the desired system
and its functionality are feasible to develop. This study analyses whether the
software product can be practically materialized in terms of implementation,
contribution of project to organization, cost constraints and as per values and
objectives of the organization. It explores technical aspects of the project and
product such as usability, maintainability, productivity and integration ability.
The system has been tested for feasibility in the following points.
o TECHNICAL FEASIBILTIY
The technically feasibility study basically centers on alternatives for hardware,
software and design approach to determine the functional aspects of system.
This project on Online Examination will be platform independent since it is being
coded in HTML (using JSP and SERVLETS) is used to create web pages
MySQL database will be used for storing data.
Only authorized person would be able to use the website so it would be secure.
o OPERATIONAL FEASIBILTY
Operational Feasibility is a measure of how people are able to work with
system. This type of feasibility demands if the system will work when
developed and installed. Since website is very user friendly so users will find it
comfortable to work on this site.
o ECONOMICAL FEASIBILITY
Economic analysis is the most frequently used evaluating the effectiveness
of proposed system, more commonly known as Benefit analysis. The Benefit
analysis is to determine benefits and savings which are expected from
candidate system and compare them with cost. If the benefits are more than
the cost, then decision is made to design and implement the system. The cost
and benefits may be direct or indirect and tangible or intangible.
25
PAge
Online Examination System
Requirement Gathering
If the feasibility report is positive towards undertaking the project, next phase
starts with gathering requirements from the user. Analysts and engineers
communicate with the client and end-users to know their ideas on what the
software should provide and which features they want the software to include.
At this step the developers decide a roadmap of their plan and try to bring up the
best software solution model suitable for the project and make roadmap
documentation with the help of SRS. SRS is a document created by system analyst
after the requirements are collected from various stakeholders. SRS defines how
the intended software will interact with hardware, external interfaces, speed of
operation, response time of system, portability of software across various
platforms, maintainability, speed of recovery after crashing, Security, Quality,
Limitations etc.
Design
Next step is to bring down whole knowledge of requirements and analysis on the
desk and design the software product. The inputs from users and information
gathered in requirement gathering phase are the inputs of this step. The output of
this step comes in the form of two designs; logical design and physical design.
26
PAge
Online Examination System
Coding
Testing
This phase confirms the software operation in terms of more efficiency and less
errors. If required, the users are trained on, or aided with the documentation on
how to operate the software and how to keep the software operational. The
software is maintained timely by updating the code according to the changes taking
place in user end environment or technology. This phase may face challenges from
hidden bugs and real-world unidentified problems.
27
PAge
Online Examination System
28
PAge
Online Examination System
Introduction to Design
The DFD takes an input-process-output view of a system i.e. data objects flow
into the software, are transformed by processing elements, and resultant data objects
flow out of the software
DFD also known as ‘bubble chart’, has the purpose of clarifying system
requirements and identifying major transformations. It shows the flow of data
through a system. These notations are given below:-
DATA FLOW:-
The data flow is used to describe the movement of information from one part of the
system to another part. Data flow is represented by an arrow.
PROCESS:-
A circle or bubble represents a process that transforms incoming data to outgoing
data. Process shows a part of the system that transform inputs to outputs.
29
PAge
Online Examination System
EXTERNAL ENTITY:-
A square defines a source or destination of system data. External entities represent
any entity that supplies or receive information from the system but is not a part of the
system.
DATA STORE:-
The data store represents a logical file. A logical file can represent either a data store
symbol which can represent either a data structure or a physical file on disk. The data
store is used to collect data at rest or a temporary repository of data. It is represented
by open rectangle.
OUTPUT:-
The output symbol is used when a hard copy is produced and the user of the copies
cannot be clearly specified or there are several users of the output.
Output
A process is required for all the data transformation and Transfers. Therefore,
never connect a data store to a data Source or the destinations or another data
store with just a Data flow arrow.
Do not indicate hardware and ignore control information.
Make sure the names of the processes accurately convey everything the
process is done.
There must not be unnamed process.
Indicate external sources and destinations of the data, with Squares.
Number each occurrence of repeated external entities.
Identify all data flows for each process step, except simple Record retrievals.
Label data flow on each arrow.
Use details flow on each arrow.
Use the details flow arrow to indicate data movements.
DATAFLOW DIAGRAMS:
Result Statements
31
PAge
Online Examination System
STUDENT
Registr
Login Invalid User ation
Failed
Successfully
Students Profile Registered
Authenticate
Login Record
Welcome to
Examination
TAKE EXAM
No. of Questions
Compute
Subjects Selection
Calculate
Result
Student’s Name ,
Result Statements Semester, Subject,
Marks
32
PAge
Online Examination System
STUDENT
WELCOME LOGIN IF (NOT REGISTER) -REGISTRATION CONTACT ABOUT US
DECIDE
IF (LOGIN) - EXAM
SUBJECT
NO OF
TAKE EXAM
QUESTIONS
RESULT
E-R Diagrams:
The Entity-Relationship (ER) model was originally proposed by Peter in 1976
[Chen76] as a way to unify the network and relational database views. Simply stated
the ER model is a conceptual data model that views the real world as entities and
relationships. A basic component of the model is the Entity-Relationship diagram which
is used to visually represents data objects. Since Chen wrote his paper the model has
been extended and today it is commonly used for database design For the database
designer, the utility of the ER model is:
it maps well to the relational model. The constructs used in the ER model can easily
be transformed into relational tables.
it is simple and easy to understand with a minimum of training. Therefore, the model
can be used by the database designer to communicate the design to the end user.
In addition, the model can be used as a design plan by the database developer to
implement a data model in a specific database management software.
33
PAge
Online Examination System
Many-to-one − When more than one instance of entity is associated with the
relationship, it is marked as 'N:1'.
Many-to-many − When more than one instance of an entity on the left and more
than one instance of an entity on the right can be associated with the relationship.
It depicts many-to-many relationship.
34
PAge
Online Examination System
Participation Constraints
ER Notation:
entities are represented by labeled rectangles. The label is the name of the entity.
Entity names should be singular nouns.
relationships are represented by a solid line connecting two entities. The name of
the relationship is written above the line. Relationship names should be verbs
attributes, when included, are listed inside the entity rectangle. Attributes which
are identifiers are underlined. Attribute names should be singular nouns.
cardinality of many is represented by a line ending in a crow's foot. If the crow's
foot is omitted, the cardinality is one.
existence is represented by placing a circle or a perpendicular bar on the line.
Mandatory existence is shown by the bar (looks like a 1) next to the entity for an
instance is required. Optional existence is shown by placing a circle next to the
entity that is optional
35
PAge
Online Examination System
ER DIAGRAMS:
Application
Address
Process
Use
Home Page
Name of Org. MITHUN
contact
JODHVEER
User About Us
Registration
Password
Examination Perform
Re-Password
Country
E-mail Add.
Compute
Process Result
Process
36
PAge
Online Examination System
37
PAge
Online Examination System
• Errors - These are actual coding mistakes made by developers. In addition, there
is a difference in output of software and desired output, is considered as an error.
• Fault - When error exists fault occurs. A fault, also known as a bug, is a result of
an error which can cause system to fail.
• Failure - failure is said to be the inability of the system to perform the desired task.
Failure occurs when fault exists in the system.
Testing Approaches
Tests can be conducted based on two approaches –
• Functionality testing - When functionality is being tested without taking the actual
implementation in concern it is known as black-box testing.
• Implementation testing- The Implementation testing is known as white-box testing
where not only functionality is tested but the way it is implemented is also analyzed.
Black-box testing
It is carried out to test functionality of the program. It is also called ‘Behavioral’ testing.
The tester in this case, has a set of input values and respective desired results. On
providing input, if the output matches with the desired results, the program is tested
‘ok’, and problematic otherwise. Black box testing is designed to validate functional
requirements without regard to the internal workings of a program.
38
PAge
Online Examination System
In this testing method, the design and structure of the code are not known to the tester,
and testing engineers and end users conduct this test on the software.
White-box testing
In this testing method, the design and structure of the code are known to the tester.
Programmers of the code conduct this test on the code.
• Control-flow testing –
The purpose of the control-flow testing to set up test cases which covers all statements
and branch conditions. The branch conditions are tested for both being true and false,
so that all statements can be covered.
• -pt
• Data-flow testing -
This testing technique emphasis to cover all the data variables included in the program.
It tests where the variables were declared and defined and where they were used or
changed.
Online Examination System
Testing Strategies
Testing separately is done just to make sure that there are no hidden bugs or issues left
in the software. Software is tested on various levels –
Unit Testing
While coding, the programmer performs some tests on that unit of program to know
if it is error free. Testing is performed under white-box testing approach. Unit
testing helps developers decide that individual units of the program are working as
per requirement and are error free.
Integration Testing
Even if the units of software are working fine individually, there is a need to find
out if the units if integrated together would also work without errors. For example,
argument passing and data updating etc.
System Testing
The software is compiled as product and then it is tested as a whole. This can be
accomplished using one or more of the following tests:-
Functionality testing - Tests all functionalities of the software against the
equirement.
Performance testing - This test proves how efficient the software is. It tests the
effectiveness and average time taken by the software to do desired task.
Performance testing is done by means of load testing and stress testing where the
software is put under high user and data load under various environment
conditions.
Security & Portability - These tests are done when the software is meant to
work on various platforms and accessed by number of persons.
Acceptance Testing
When the software is ready to hand over to the customer it has to go through last
phase of testing where it is tested for user-interaction and response. This is
important because even if the software matches all user requirements and if user
does not like the way it appears or works, it may be rejected.
Online Examination System
Alpha testing - The team of developer themselves perform alpha testing by using
the system as if it is being used in work environment. They try to find out how
user would react to some action in software and how the system should respond
to inputs.
Beta testing - After the software is tested internally, it is handed over to the users
to use it under their production environment only for testing purpose. This is not
as yet the delivered product. Developers expect that users at this stage will bring
minute problems, which were skipped to attend.
Regression Testing
Whenever a software product is updated with new code, feature or functionality, it is
tested thoroughly to detect if there is any negative impact of the added code. This is
known as regression testing.
Testing Documentation-
Testing documents are prepared at different stages –
Before Testing
Testing starts with test cases generation. Following documents are needed for reference –
SRS document –
Functional Requirements document
Test Policy document –
This describes how far testing should take place before releasing the product.
Test Strategy document –
This mentions detail aspects of test team, responsibility matrix and
rights/responsibility of test manager and test engineer.
Traceability Matrix document –
This is SDLC document, which is related to requirement gathering process. As
new requirements come, they are added to this matrix. These matrices help testers
know the source of requirement. They can be traced forward and backward.
42
PAge
Online Examination System
Test description –
This document is a detailed description of all test cases and procedures to execute
them.
Test logs –
This document contains test logs for every test case report.
After Testing
The following documents may be generated after testing:
Test summary –
This test summary is collective analysis of all test reports and logs. It summarizes
and concludes if the software is ready to be launched. The software is released
under version control system if it is ready to launch.
43
PAge
Online Examination System
44
PAge
Online Examination System
1- DECLARATION PAGE
45
PAge
Online Examination System
46
PAge
Online Examination System
2- HOME PAGE
47
PAge
Online Examination System
3- LOGIN PAGE
48
PAge
Online Examination System
49
PAge
Online Examination System
50
PAge
Online Examination System
51
PAge
Online Examination System
52
PAge
Online Examination System
53
PAge
Online Examination System
54
PAge
Online Examination System
4- CONTACT US PAGE
55
PAge
Online Examination System
56
PAge
Online Examination System
57
PAge
Online Examination System
ALARTS SCREEN
58
PAge
Online Examination System
59
PAge
Online Examination System
60
PAge
Online Examination System
61
PAge
Online Examination System
62
PAge
Online Examination System
CONCLUSION:
The package was designed in such a way that future modifications can be done
easily. The following conclusions can be deduced from the development of the
project.
64
PAge
Online Examination System
FUTURE ENHANCEMENTS:
The future versions of the website will be having a better database to handle larger
number of records, in a more secure way. Time Limit and also separate profile
will be maintained later for all students so that he can view all his previous test
performances.
65
PAge
Online Examination System
66
PAge
Online Examination System
BIBLIOGRAPHY
The following books were referred during the analysis and execution phase of
the project
Books Referred:
BEGINNING PHP 5
-- DAVE MERCER
PHP IN A NUTSHELL
-- PAUL HUDSON
Websites Referred:
http://www.phptpoit.com
https://www.tutorialspoint.com
Mithun
ndal Digitally signed
by Mithun Mandal
67
Date: 2018.01.11
00:32:25 +05'30'
PAge