Aniket Synopsis 2
Aniket Synopsis 2
Aniket Synopsis 2
“Online Examination”
Submitted in the partial fulfilment of the requirements for the degree
of
B. Tech (Computer Science Engineering)
Submitted By:
Aniket Behal
B.Tech(CSE) 8th Sem
17032000379
Supervised By:
Amit Chabbra
Department of Computer Engineering & Technology.
Guru Nanak Dev University
I hereby declare that the Industrial Training Report Entitled (“Online Examination”) is an
authentic record of my own work as requirements of 6-month Industrial Training during the
period from January, 2024 to May, 2024 for the degree of B. Tech. (Computer Science and
Engineering) from Department of Computer Engineering and Technology, Guru Nanak Dev
Date: 30-05-2024
Aniket Behal
17032000379
This is to certify that above statement made by the candidate is correct and true to the best of
my knowledge.
ACKNOWLEDGEMENT
ANIKET BEHAL
17032000379
INDEX
S. N CONTENTS
1. INTRODUCTION
2. ANALYSIS
3. DESIGN APPROACH
4. PROJECT MODULES
5. IMPLEMENTATION
5.2 TESTING
6. FUTURE ENHANCEMENTS
1.INTRODUCTION:
As the modern organizations are automated and computers are working as per the
instructions, it becomes essential for the coordination of human beings, commodity and
computers in a modern organization.
The administrators ,instructor,Students who are attending for online examination can
communicate with the system through this projects, thus facilitating effective implementation
and monitoring of various activities of Online Examinations like conducting Exams as per
scheduled basis and delivering result to that particular use or student.And the details of
students who attempted Online Examination are maintained at administrator.
2.SYSTEM ANALYSIS:
1. Existing System
Existing system is a manual one in which users are maintaining books to store the
information like Student Details,Instructor Details,Schedule Details and feedbacks about
students who attempted exam as per schedule.. It is very difficult to maintain historical data.
DISADVANTAGES:
The following drawbacks of existing system emphasize the need for computerization:
2. Proposed System
This application is used to conduct online examination. The students can sit at individual
terminals and login to write the exam in the given duration. . The questions have to be given
to the students.This application will perform correction, display the result immediately and
also store it in database. This application provides the administrator with a facility to add new
exams.This application provides the Instructor add questions to the exam, modify questions
in the exam in a particular exam. This application takes care of authentication of the
administrator,Instructor as well as the student.
The objective of the Online Examination Tool is to provide better information for the users
of this system for better results for their maintainence in student examination schedule details
and grading details.
2.2 System Specifications
Hardware Requirements:-
Pentium-IV(Processor).
256 MB Ram
512 KB Cache Memory
Hard disk 10 GB
Microsoft Compatible 101 or more Key Board
Software Requirements: -
Web-Technology: PHP
Front-End: HTML,CSS,JAVASCRIPT
Back-End: MySQL
3.1 INTRODUCTION:
Design is the first step in the development phase for any techniques and principles for the
purpose of defining a device, a process or system in sufficient detail to permit its physical
realization.
Once the software requirements have been analyzed and specified the software design
involves three technical activities - design, coding, implementation and testing that are
required to build and verify the software.
The design activities are of main importance in this phase, because in this activity, decisions
ultimately affecting the success of the software implementation and its ease of maintenance
are made. These decisions have the final bearing upon reliability and maintainability of the
system. Design is the only way to accurately translate the customer’s requirements into
finished software or a system.
Design is the place where quality is fostered in development. Software design is a process
through which requirements are translated into a representation of software. Software design
is conducted in two steps. Preliminary design is concerned with the transformation of
requirements into data.
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.
Data objects represented by labeled arrows and transformation are represented by circles also
called as bubbles. DFD is presented in a hierarchical fashion i.e. the first data flow model
represents the system as a whole. Subsequent DFD refine the context diagram (level 0 DFD),
providing increasing details with each subsequent level.
The DFD enables the software engineer to develop models of the information domain &
functional domain at the same time. As the DFD is refined into greater levels of details, the
analyst perform an implicit functional decomposition of the system. At the same time, the
DFD refinement results in a corresponding refinement of the data as it moves through the
process that embody the applications.
A context-level DFD for the system the primary external entities produce information for use
by the system and consume information generated by the system. The labeled arrow
represents data objects or object hierarchy.
Identify and label each process internal to the system with Rounded circles.
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.
Make sure the names of the processes accurately convey everything the process is done.
Identify all data flows for each process step, except simple Record retrievals.
STUDENT
EXAM SCHEDULE
ADMIN
REGISTRATION / LOGIN ONLINE
EXAMINATION
LEVEL-0 DFD
LEVEL-1 DFD
LOGIN FAILED
1 ADMIN
STUDENT
LOGIN SUCCESSFUL STUDENT
RESPONSE REGISTRATION
AND LOGIN
REQUEST REQUEST
DATABASE 2
RESPONSE ADMIN
ACTIVITY
REQUEST
RESPONSE
3
PRINT
REPORT
LEVEL-3 DFD
LOGIN
ADMIN
TO CHECK
SYSTEM ROLES OF
ACCESS
MANAGE TIMETABLE
FORGOT DETAILS
PASSWORD
CHECK
CREDENTIALS
MANAGE CLASS DETAILS
MANAGE
MODULES
MANAGE STUDENT DETAILS
SEND
EMAIL TO
USER
MANAGE BRANCH DETAILS
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,
All notational styles represent entities as rectangular boxes and relationships as lines
connecting boxes. Each style uses a special set of symbols to represent the cardinality of a
connection. The notation used in this document is from Martin. The symbols used for the
basic ER constructs are:
entities are represented by labeled rectangles. The label is the name of the entity.
relationships are represented by a solid line connecting two entities. The name of the
attributes, when included, are listed inside the entity rectangle. Attributes which are
cardinality of many is represented by a line ending in a crow's foot. If the crow's foot
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
E-R DIAGRAM
EXAM ID
USER NAME
MARKS
USER ID
USER
NAME
PASSWORD
C DBMS
C++ OS
4.ONLINE EXAMINATION SYSTEM MODULES:
MODULES:
1:ADMIN MODULE
2.INSTRUCTOR MODULE
3.STUDENT MODULE
1.ADMIN MODULE:
1.:REGISTER
2.LOGIN
3.CHANGE PASSWORD&FORGOTPASSWORD
4.STUDENT -MODIFING DETAILS
5.DEPARTMENTS-ENTERING/MODIFYING DETAILS
6.INSTRUCTOR DETAILS-MODIFYING DETAILS
3. STUDENT DETAILS:
1.REGISTER
2.LOGIN
3.TAKE EXAM- MULTIPLE CHOICE TRUE/FALSE
4. SEE EXAM RESULTS
5.LOGOUT
1.REGISTER:To be authenticated firest have to be registered.
2.LOGIN:The Registered User Can be allowed to view innerdetails for which he Permitted
3.TAKE EXAM- MULTIPLE CHOICE, TRUE/FALSE:The registred student allowed
to start the exam
4. SEE EXAM RESULTS:After Completion of exam he can view at his result.
5.LOGOUT:After the process of examination he turned to Logout page.
5.IMPLIMENTETION/TESTING:
The testing phase is an important part of software development. It is the puterized system will
help in automate 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.
1.The first includes unit testing, where in each module is tested to provide its
correctness, validity and also determine any missing operations and to verify whether
the objectives have been met. Errors are noted down and corrected immediately. Unit
testing is the important and major part of the project. So errors are rectified easily in
particular module and program clarity is increased. In this project entire system is
divided into several modules and is developed individually. So unit testing is
conducted to individual modules.
2.The second step includes Integration testing. It need not be the case, the software whose
modules when run individually and showing perfect results, will also show perfect results
when run as a whole. The individual modules are clipped under this major module and tested
again and verified the results. This is due to poor interfacing, which may results in data being
lost across an interface. A module can have inadvertent, adverse effect on any other or on the
global data structures, causing serious problems.
3.The final step involves validation and testing which determines which the software
functions as the user expected. Here also some modifications were. In the completion of the
project it is satisfied fully by the end user.
Software Testing is an empirical investigation conducted to provide stakeholders with
information about the quality of the product or service under test, with respect to the context
in which it is intended to operate. Software Testing also provides an objective, independent
view of the software to allow the business to appreciate and understand the risks at
implementation of the software. Test techniques include, but are not limited to, the process of
executing a program or application with the intent of finding software bugs. It can also be
stated as the process of validating and verifying that a software program/application/product
meets the business and technical requirements that guided its design and development, so that
it works as expected and can be implemented with the same characteristics.
Software Testing, depending on the testing method employed, can be implemented at any
time in the development process, however the most test effort is employed after the
requirements have been defined and coding process has been completed.
Unit Testing:
The primary goal of unit testing is to take the smallest piece of testable software in the
application, isolate it from the remainder of the code, and determine whether it behaves
exactly as you expect. Each unit is tested separately before integrating them into modules to
test the interfaces between modules. Unit testing has proven its value in that a large
percentage of defects are identified during its use.
Unit testing is a software verification and validation method where the programmer gains
confidence that individual units of source code are fit for use. A unit is the smallest testable
part of an application. In procedural programming a unit may be an individual program,
function, procedure, etc., while in object-oriented programming, the smallest unit is a class,
which may belong to a base/super class, abstract class or derived/child class.
Ideally, each test case is independent from the others: substitutes like method stubs, mock
objects, fakes and test harnesses can be used to assist testing a module in isolation. Unit tests
are typically written and run by software developers to ensure that code meets its design and
behaves as intended. Its implementation can vary from being very manual (pencil and paper)
to being formalized as part of build automation.
Integration Testing:
Integration testing, also known as integration and testing (I&T), is a software development
process which program units are combined and tested as groups in multiple ways. In this
context, a unit is defined as the smallest testable part of an application. Integration testing can
expose problems with the interfaces among program components before trouble occurs in
real-world program execution. Integration testing is a component of Extreme Programming
(XP), a pragmatic method of software development that takes a meticulous approach to
building a product by means of continual testing and revision.
There are two major ways of carrying out an integration test, called the bottom-up method
and the top-down method. Bottom-up integration testing begins with unit testing, followed by
tests of progressively higher-level combinations of units called modules or builds. In top-
down integration testing, the highest-level modules are tested first and progressively lower-
level modules are tested after that. In a comprehensive software development environment,
bottom-up testing is usually done first, followed by top-down testing.
Validation testing:
At the validation level, testing focuses on user visible actions and user recognizable output
from the system. Validations testing is said to be successful when software functions in a
manner that can be reasonably expected by the customer. Two types of validation testing
1. Alpha testing is simulated or actual operational testing by potential users/customers
or an independent test team at the developers' site. Alpha testing is often employed for
off-the-shelf software as a form of internal acceptance testing, before the software
goes to beta testing.
2. Beta testing comes after alpha testing. Versions of the software, known as beta
version, are released to a limited audience outside of the programming team. The
software is released to groups of people so that further testing can ensure the product
has few faults or bugs. Sometimes, beta versions are made available to the open
public to increase the feedback field to a maximal number of future users.
3. Gray box testing Grey box testing is the combination of black box and white box
testing. Intention of this testing is to find out defects related to bad design or bad
implementation of the system.it is used for web application.
Maintenance and environment:
The maintenance phase focuses on change that is associated with error correction, adaptations
required as the software's environment evolves, and changes due to enhancements brought
about by changing customer requirements. Four types of changes are encountered during the
maintenance phase.
Correction
Adaptation
Enhancement
Prevention
Correction:
Even with the best quality assurance activities is lightly that the customer will uncover defects
in the software. Corrective maintenance changes the software to correct defects.
Maintenance is a set of software Engineering activities that occur after software has been
delivered to the customer and put into operation. Software configuration management is a set
of tracking and control activities that began when a software project begins and terminates
only when the software is taken out of the operation.
ADAPTATION:
Over time, the original environment (E>G., CPU, operating system, business rules, external
product characteristics) for which the software was developed is likely to change. Adaptive
maintenance results in modification to the software to accommodate change to its external
environment.
ENHANCEMENT:
As software is used, the customer/user will recognize additional functions that will
provide benefit. Perceptive maintenance extends the software beyond its original
function requirements.
PREVENTION :
Computer software deteriorates due to change, and because of this, preventive
maintenance, often called software re engineering, must be conducted to enable the
software to serve the needs of its end users. In essence, preventive maintenance makes
changes to computer programs so that they can be more easily corrected, adapted, and
enhanced. Software configuration management (SCM) is an umbrella activity that is
applied throughout the software process.
6.FUTURE ENHANCEMENTS:
This application avoids the manual work and the problems concern with it. It is an easy way
to obtain the information regarding the different scheduled examinations information that are
Currently issued.
Well I and my team members have worked hard in order to present an improved website
better than the existing one’s regarding the information about the various activities.
Still ,we found out that the project can be done in a better way. Primarily, when we request
information about a particular schedules it just shows the exam date and platform. So, after
getting the information we can get access to the onlineexam.
The enhancement that we can add the searching option. We can directly search to the
particular student details from this site.
7. BIBILOIGRAPHY:
Websites referred:-
http://www.google.co.in
https://www.tutorialspoint.com/
https://www.sqlservertutorial.net/