You are on page 1of 38

SYNOPSIS

This project is entitles as “EXAM HALL ARRANGEMENT TOOL” is

developed using Sublime Text as front end, PHP as coding language, MYSQL as back end.

This main objective of this project is to develop a web application for exam

planning and seat scheduling. This application will reduce the work burden of staffs for seat

allocation and reallocation. In some cases seat allocation is a tedious practice this is because

these work can be done through manual, also many confusions may occur during scheduling

like staff allocation, Room allocation and seating arrangement. Also sometimes repeat of roll

number and class rooms may occur. For these cases a single change in the classroom or roll

number may affect the entire schedule system. This case makes uncomfortable for both staffs

and students in the last minute of examination. And these problems will occur during all

exams. Basically scheduling Exam is a time consuming job for administrators. Many

constraints are defined for classrooms, faculty members, and courses.

So the primary goal of this system is to find a good scheduling program that

result in an efficient use of each exam hall, in relation to time, space, and constraints. This

application will supports for web based application for multiple user access. Also here Jquery

and Java script are enabled for client server operation module; So that all departments can be

inter related using internet connection. Backups can be taken for each exam also allocation

can be done through one touch system.

The basic input of this project is user data like number of staffs, number of

blocks, number of students and exam details. These data will be taken as input and scheduled

for even class room allocation using a prior Procedure. So that One touch program can be

enabled here for exam management. In case of changes in class room or staffs of students the

allocation result may get changed. At that time reallocation should be done for best result.

1
OBJECTIVE:

1. Saves time by fetching the details easily.

2. Allotting and viewing of seats made systematically.

3. Student details maintained in a proper way.

4. User friendly.

2
1. INTRODUCTION
1.1 ORGANIZATION PROFILE

ABOUT THE COMPANY:

3
1.2 SYSTEM SPECIFICATION

1.2.1 HARDWARE SPECIFICATION

PROCESSOR : Intel Pentium Dual Core 1.8 GHz

MOTHERBOARD : Intel 915GVSR chipset board

RAM : 4 GB DDR3 RAM

HARD DISK DRIVE : 160 GB

FLOPPY DRIVE : 1.44 MB

DVD/CD DRIVE : Sony 52 x Dual layer drive

MONITOR : 17” Color TFT Monitor

KEYBOARD : Multimedia Keyboard 108 Keys

MOUSE : Logitech Optical Mouse

CABINET : ATX iball.

HUB : Compex 16 lines.

BANDWIDTH : 100 mbps.

1.2.2 SOFTWARE CONFIGURATION

FRONTEND : Sublime Text

BACK END : MYSQL

PROGRAMMING LANGUAGE : PHP

OPERATING SYSTEMS : Microsoft windows 7 / above

DOCUMENTATION : Microsoft word 2007.

4
1.3 SOFTWARE FEATURES

PHP
PHP is a server-side scripting language designed for web development but also used as
a general-purpose programming language. Originally created by Rasmus Lerdorf in 1994, the
PHP reference implementation is now produced by The PHP Group PHP originally stood
for Personal Home Page, but it now stands for the recursive backronym PHP: Hypertext
Preprocessor.

PHP code may be embedded into HTML code, or it can be used in combination with


various web template systems, web content management system and web frameworks. PHP
code is usually processed by a PHP interpreter implemented as amodule in the web server or
as a Common Gateway Interface (CGI) executable. The web server combines the results of
the interpreted and executed PHP code, which may be any type of data, including images,
with the generated web page. PHP code may also be executed with a command-line
interface (CLI) and can be used to implement standalone graphical applications.

The standard PHP interpreter, powered by the Zend Engine, is free software released under
the PHP License. PHP has been widely ported and can be deployed on most web servers on
almost every operating system and platform, free of charge.[7]

The PHP language evolved without a written formal specification or standard until 2014,
leaving the canonical PHP interpreter as a de facto standard. Since 2014 work has gone on to
create a formal PHP specification.

Rasmus Lerdorf, who wrote the original Common Gateway Interface (CGI) component,


together with Andi Gutmansand Zeev Suraski, who rewrote the parser that formed PHP 3.

PHP development began in 1994 when Rasmus Lerdorf wrote several Common Gateway


Interface (CGI) programs in C, which he used to maintain his personal homepage. He
extended them to work with web forms and to communicate with databases, and called this
implementation "Personal Home Page/Forms Interpreter" or PHP/FI.

PHP/FI could be used to build simple, dynamic web applications. To accelerate bug reporting


and improve the code, Lerdorf initially announced the release of PHP/FI as "Personal Home
Page Tools (PHP Tools) version 1.0" on the Usenetdiscussion

5
group comp.infosystems.www.authoring.cgi on June 8, 1995. This release already had the
basic functionality that PHP has as of 2013. This included Perl-like variables, form handling,
and the ability to embed HTML. The syntax resembled that of Perl but was simpler, more
limited and less consistent.

Early PHP was not intended to be a new programming language, and grew organically, with
Lerdorf noting in retrospect: "I don’t know how to stop it, there was never any intent to write
a programming language […] I have absolutely no idea how to write a programming
language, I just kept adding the next logical step on the way." A development team began to
form and, after months of work and beta testing, officially released PHP/FI 2 in November
1997.

The fact that PHP was not originally designed but instead was developed organically has led
to inconsistent naming of functions and inconsistent ordering of their parameters. In some
cases, the function names were chosen to match the lower-level libraries which PHP was
"wrapping", while in some very early versions of PHP the length of the function names was
used internally as a hash function, so names were chosen to improve the distribution of hash
values. PHP 3 and 4

Zeev Suraski and Andi Gutmans rewrote the parser in 1997 and formed the base of PHP 3,
changing the language's name to the recursive acronym PHP: Hypertext Preprocessor.
Afterwards, public testing of PHP 3 began, and the official launch came in June 1998.
Suraski and Gutmans then started a new rewrite of PHP's core, producing the Zend Engine in
1999. They also founded Zend Technologies in Ramat Gan, Israel.

On May 22, 2000, PHP 4, powered by the Zend Engine 1.0, was released. As of August 2008
this branch reached version 4.4.9. PHP 4 is no longer under development nor will any
security updates be released

PHP 5

On July 13, 2004, PHP 5 was released, powered by the new Zend Engine II. PHP 5 included
new features such as improved support for object-oriented programming, the PHP Data
Objects (PDO) extension (which defines a lightweight and consistent interface for accessing
databases), and numerous performance enhancements. [22] In 2008 PHP 5 became the only
stable version under development. Late static binding had been missing from PHP and was
added in version 5.3.

6
Many high-profile open-source projects ceased to support PHP 4 in new code as of February
5, 2008, because of the GoPHP5 initiative, provided by a consortium of PHP developers
promoting the transition from PHP 4 to PHP 5. Over time, PHP interpreters became available
on most existing 32-bit and 64-bit operating systems, either by building them from the PHP
source code, or by using pre-built binaries. [28] For the PHP versions 5.3 and 5.4, the only
available Microsoft Windows binary distributions were 32-bit x86 builds, requiring Windows
32-bit compatibility mode while using Internet Information Services (IIS) on a 64-bit
Windows platform. PHP version 5.5 made the 64-bit x86-64 builds available for Microsoft
Windows.[31]

PHP 6 and Unicode

PHP received mixed reviews due to lacking native Unicode support at the core language
level. In 2005, a project headed by Andrei Zmievski was initiated to bring native Unicode
support throughout PHP, by embedding the International Components for Unicode (ICU)
library, and representing text strings as UTF-16 internally. Since this would cause major
changes both to the internals of the language and to user code, it was planned to release this
as version 6.0 of the language, along with other major features then in development.

However, a shortage of developers who understood the necessary changes, and performance
problems arising from conversion to and from UTF-16, which is rarely used in a web context,
led to delays in the project As a result, a PHP 5.3 release was created in 2009, with many
non-Unicode features back-ported from PHP 6, notably namespaces. In March 2010, the
project in its current form was officially abandoned, and a PHP 5.4 release was prepared
containing most remaining non-Unicode features from PHP 6, such as traits and closure re-
binding. Initial hopes were that a new plan would be formed for Unicode integration, but as
of 2014 none has been adopted.

PHP

During 2014 and 2015, a new major PHP version was developed, which was numbered PHP
7. The numbering of this version involved some debate. [38] While the PHP 6 Unicode
experiment had never been released, several articles and book titles referenced the PHP 6
name, which might have caused confusion if a new release were to reuse the name. After a
vote, the name PHP 7 was chosen.

The foundation of PHP 7 is a PHP branch that was originally dubbed PHP next


generation (phpng). It was authored by Dmitry Stogov, Xinchen Hui and Nikita Popov, and

7
aimed to optimize PHP performance by refactoring the Zend Engine while retaining near-
complete language compatibility. As of 14 July 2014, WordPress-based benchmarks, which
served as the main benchmark suite for the phpng project, showed an almost 100% increase
in performance. Changes from phpng are also expected to make it easier to improve
performance in the future, as more compact data structures and other changes are seen as
better suited for a successful migration to a just-in-time (JIT) compiler. Because of the
significant changes, the reworked Zend Engine is called Zend Engine 3, succeeding Zend
Engine 2 used in PHP 5.

Because of major internal changes in phpng, it must receive a new major version number of


PHP, rather than a minor PHP 5 release, according to PHP's release process. Major versions
of PHP are allowed to break backward-compatibility of code and therefore PHP 7 presented
an opportunity for other improvements beyond phpng that require backward-compatibility
breaks. In particular, it involved the following changes:

 Many fatal- or recoverable-level legacy PHP error mechanisms were replaced with
modern object-oriented exceptions
 The syntax for variable dereferencing was reworked to be internally more consistent
and complete, allowing the use of the operators ->, [], (), {}, and :: with arbitrary
meaningful left-hand-side expressions

 Support for legacy PHP 4-style constructor methods was removed

 The behavior of the foreach statement was changed to be more predictable

 Constructors for the few classes built-in to PHP which returned null upon failure were
changed to throw an exception instead, for consistency

 Several unmaintained or deprecated server application programming


interfaces (SAPIs) and extensions were removed from the PHP core, most notably the
legacy mysqlextension

 The behavior of the list() operator was changed to remove support for string

 Support for legacy ASP-style PHP code delimiters (<% and %>, <script


language=php> and </script>) was removed

 An oversight allowing a switch statement to have multiple default clauses was fixed[54]

8
 Support for hexadecimal number support in some implicit conversions from strings to
number types was removed

 The left-shift and right-shift operators were changed to behave more consistently


across platforms

 Conversions between integers and floating point numbers were tightened and
implemented more consistently across platforms

PHP 7 also included new language features. Most notably, it introduces return type
declarations for functions which complement the existing parameter type declarations, and
support for the scalar types (integer, float, string, and boolean) in parameter and return type
declarations

MySQL (officially pronounced as /maɪ ˌɛskjuːˈɛl/ "My S-Q-L",) is an open-source relational


database management system(RDBMS);in July 2013, it was the world's second most widely
used RDBMS, and the most widely used open-sourceclient–server model RDBMS. It is
named after co-founder Michael Widenius's daughter, MyThe SQL acronym stands
forStructured Query Language. The MySQL development project has made its source
code available under the terms of theGNU General Public License, as well as under a variety
of proprietary agreements. MySQL was owned and sponsored by a single for-profit firm,
the Swedish company MySQL AB, now owned by Oracle Corporation. For proprietary use,
several paid editions are available, and offer additional functionality.

MySQL is a popular choice of database for use in web applications, and is a central
component of the widely used LAMPopen-source web application software stack (and other
"AMP" stacks). LAMP is an acronym for "Linux, Apache, MySQL,Perl/PHP/Python". Free-
software open-source projects that require a full-featured database management system often
use MySQL. Applications that use the MySQL database
include: TYPO3, MODx, Joomla, WordPress, phpBB, MyBB, Drupal and other software.
MySQL is also used in many high-profile, large-scale websites, including Google[12]
[13]
 (though not for searches), Facebook, Twitter Flickr, and YouTube. On all platforms except
Windows, MySQL ships with no GUI tools to administer MySQL databases or manage data
contained within the databases. Users may use the included command line tools, or
install MySQL Workbench via a separate download.

9
Deployment

LAMP software bundle, displayed here together with Squid.

MySQL can be built and installed manually from source code, but it is more commonly
installed from a binary package unless special customizations are required. On most Linux
distributions, the package management system can download and install MySQL with
minimal effort, though further configuration is often required to adjust security and
optimization settings.

Though MySQL began as a low-end alternative to more powerful proprietary databases, it


has gradually evolved to support higher-scale needs as well. It is still most commonly used in
small to medium scale single-server deployments, either as a component in a LAMP-based
web application or as a standalone database server. Much of MySQL's appeal originates in its
relative simplicity and ease of use, which is enabled by an ecosystem of open source tools
such as phpMyAdmin. In the medium range, MySQL can be scaled by deploying it on more
powerful hardware, such as a multi-processor server with gigabytes of memory.

There are however limits to how far performance can scale on a single server ('scaling up'), so
on larger scales, multi-server MySQL ('scaling out') deployments are required to provide
improved performance and reliability. A typical high-end configuration can include a
powerful master database which handles data write operations and is replicated to multiple
slaves that handle all read operations The master server continually pushes binlog events to
connected slaves so in the event of failure a slave can be promoted to become the new master,

10
minimizing downtime. Further improvements in performance can be achieved by caching the
results from database queries in memory using memcached, or breaking down a database into
smaller chunks called shards which can be spread across a number of distributed server
clusters.

2. SYSTEM STUDY

2.1 EXISTING SYSTEM

EXISTING SYSTEM:

The existing system facing various drawbacks in schools, colleges and


institutions, this is because all the allocation will be done through manual. Also more paper
should be done for perfect result. The various disadvantages of the existing system are
follows.

DRAWBACKS OF EXISTING SYSTEM

 More staffs needed for manual paper work.


 Time consuming.
 Stress and human work load will increases for staffs.
 Problems in maintaining data.
 Previous records can’t be saved.
 Could not able to do cross verification.
 Last minute tension for staffs and students.

11
12
2.2 PROPOSED SYSTEM

The proposed system is developed by analyzing various testing


method and analysis method. So that here we are introducing a quality exam scheduler which
over came all the drawbacks faced in the existing system. More Validations are used in the
proposed system.

Here the validation plays am important role like numeric validation, data
validation and character validation also done in this project. So system will not accept
unwanted data and irrelevant data, this is the best case to avoid garbage collection. By using
these methods data redundancy will be avoid and the performance of the database can be
increased. The advantages of the proposed system are follows.

ADVANTAGES OF PROPOSED SYSTEM

 Masters are available for one time data storage like class room creation, student’s
creation, department creation and staffs creations.
 One touch exam scheduling can be enabled.
 Backups can be taken for prior exams and reuse can be done through data wise.
 No need for more staffs for allocation only one admin enough to schedule all the
exam process in the college, even exam schedule can be done at the last minute of the
examinations.
 Unlimited data can be stored in the stored in the database.
 Can be accessed through internet, so that multiple users can be accessed at same time.

13
3. SYSTEM DESIGN AND DEVELOPMENT

3.1 FORM DESIGN

3.2 INPUT DESIGN


Input design encompasses internal and external program interfaces and the design of
user interfaces. Internal and external interface designs are guided by information obtained
from the analysis model. This defines user tasks and actions either an elaborative or object
oriented approach. Design issues such as response time, comma structure, error handling and
help facilities are considered and a design model for the system is defined. A set of generic
design guidelines governs general interaction, information display and data entry.

It is a process of converting user-oriented to a computer based formatted goal of the


input design is to make a data entry easier, logical, and free of error. Error in the input data is
controlled by the input design. The quality of the system input determines the quality of
system output specification describes manner in which the data entered in the system
processing. Input design futures can ensure the reliability of the system and produced result
from accurate data or they can result in Production of erroneous information as result in
feeding the faulty data.

14
3.3 OUTPUT DESIGN

An application is successful only when it provides effective and efficient reports.


Reports are actually presentable form of data the reports are the main source of information
for user operated and managements. After any valid processing, the reports are same are
commenced and generated filled for future use. The reports are generated with great care
because it places an important design making. With the quality output the entire system may
appear to be unnecessary that user will avoid using it.

Reports are generated with the up-to-date details according to user requirement. The
report produced should be only concise with only necessary information. No unnecessary
information should be produced in the output reports.

3.4 DATABASE DESIGN

The most important aspect of building the system is database design. Instead of each
program managing its own data, the authorized persons share date across application with
database an entity. It is logical development in the methods used by the computers to access
manipulated data stored in the various parts of computer system. It is data base information
from several files is co-ordination, accessed and operated upon as through it is a single file. A
database is a collection of interrelated data stored with a minimum redundancy to serve many
users quickly and efficiently. The objective is to make information access easy and quick,
inexpensive, and flexible to the user. While designing a database several objectives must be
considered.

They include redundancy of

 Easy of learning and use


 Data independence
 More information at low cost
 Accuracy and integrity

15
Normalization:

It is a technique for designing relational database tables to minimize duplication of


information.

The goals of normalization are,

 Eliminating redundant data


 Ensuring data dependencies make sense.

Types of Normalization are:

 1st Normal form.


 2nd Normal form.
 3rd Normal form.

First Normal Form (1NF)

First Normal Form is calls for the elimination of repeated groups of data by creating
separate tables of related data.1NF - A relation in which the intersection of each row and
column contains one and only one value.

 Converting from UNF to 1NF:


 Select attribute(s) to act as the key. Identify the repeating groups in the un normalized
table which repeats for the key attributes.
 Entering data into empty columns of rows which contain the repeating data .
 Placing the repeating data along with a copy of the original key attributes into the
separate relation.

Second Normal Form (2NF)

 Elimination of redundant data.


 A relation that is in 1NF and every non - primary key attribute is fully functionally
dependent on the primary key.

16
 Transitive dependency: A condition where A, B and C are attributes of a relation such
That is A → B and B → C, then C is transitively dependent on A via B Provided that A is not
functionally dependent on B or C.

Third Normal Form (3NF)

 A relation that is in 1NF and 2NF and which no non-primary key attribute is
transitively dependent on the primary key.
 Conversion 2NF → 3NF.
 Remove transitive dependencies: the transitively dependent attributes are removed
from the relation by placing them in a new relation along with a copy of their determinant.
 The normalization process decomposes the original relation using a series of relation
algebra projections. This result in a lossless decomposition, which is reversible using the
natural join operation (primary key / foreign key mechanism).

3.5 SYSTEM DEVELOPMENT


3.5.1 DESCRIPTION OF MODULES

MODULES

1. Admin
2. Teacher Management
3. Student Management
4. Class Management
5. Exam Management

17
MODULES DESCRIPTION:

ADMIN MODULE

Here admin has to login by using their unique username and password. Admin is the only

permit person to access this module for security purpose. So other users don’t get rights to

access this module for their purpose

TEACHER MODULE:

In this module the faculties can sign up by providing the necessary details. The

faculties can then login and view the allotted hall number and session.

STUDENT MODULE:

18
In this module the students can then login and view the allotted hall number and seat number

during the examinations.

CLASS ROOM MODULE:

In this module Admin can update the necessary details for generating seating

arrangement. The details to be specified includes room numbers, the capacity of the rooms,

the number of students, their department and year.

COURSE MODULE:

All the required courses are created in the course master and the system also

shows the available courses. The students are allotted with these courses.

EXAM MANAGEMENT

This module will be interrelated with master module so that the data

accessing can be done easily. Here the data saved from the various master tables can be

displayed, so that the admin can select their required details for class room allocation. While

selecting the departments the courses will be shown, after selecting the courses the concern

19
staff and class room details will be enabled. So that admin can able to view the available seats

in the prior class rooms. This process will be done through data validation using java script.

Automatically students will be allocated through these methods. Thus class room, staffs and

students will be allocated as quickly as possible.

20
4. TESTING AND IMPLEMENTATION

4.1 SYSTEM TESTING

System testing is the final step in which the entire system form whole with all forms of
code and class modules. It is used to uncover the weakness of the system that was found in
earlier tests and the total system is tested for recovery and fallback after major failure to
ensure that no data are lost during the emergency. Record locking was checked for the
particular transaction to avoid duplications. Only, after transaction is complete the record is
released.

4.1.1 SOFTWARE TESTING TYPES

UNIT TESTING

The functionality of the module was also tested in separate units:

 Order process module when the product has been added to the cart it has been made
sure that if the item already exists in the shopping cart then the quantity increased by one else
new item is added to the shopping cart.
 Gallery module has been tested that all images are displayed properly.
 Cart details has been tested when user edits a quantity or remove a product from the
cart, total price is updated accordingly. Visual studio 2008 has in built support for testing
application and it can be done without the need of any external application, tests run under
the PHP context which means settings from the web con fig file are automatically picked up
once the test case starts running. Methods are written to retrieve all manufacturers from the
database, all images that belong to the particular products gets retrieved automatically by
generating the methods.

INTEGRATION TESTING

All the modules were integrated after the completion of unit test. While Top - Down
Integration was followed, the modules are integrated by moving downward through the
control hierarchy, beginning with the main module. Since the modules were unit - tested for

21
no errors, the integration of those modules was found perfect and working fine. As a next step
to integration, other modules were integrated with the former modules.

Acceptance testing is black-box testing performed on a system (e.g. software, lots of


manufactured mechanical parts, or batches of chemical products) prior to its delivery. It is
also known as functional testing, black-box testing, release acceptance, QA testing,
application testing, confidence testing, final testing, validation testing, or factory acceptance
testing.

In software development, acceptance testing by the system provider is often


distinguished from acceptance testing by the customer (the user or client) prior to accepting
transfer of ownership.

The purpose of code is to facilitate the identification and retrieval of items of


information. Codes are built with the mutually exclusive features. They are used to give
operational distractions and other information. Codes also show interrelationship among
different items. Codes are used for identifying, accessing, sorting and matching records. The
code ensures that only one value of code with single meaning is correctly applied to give
entity or attribute as described in various ways. Codes can also be designed in a manner
easily understood and applied by the user.

Black box testing techniques has 3 main components:

 Validation criteria (no. in place of number and car in place of character).


 Configuration review to ensure the completeness of software configuration.
 Alpha & beta testing, alpha testing is done at developer’s site at home page.
 Beta testing is used only when the application gets deployed.
 Since I have not deployed any application and working fine.

WHITE BOX TESTING

The logical path through the software are tested by providing the test case that exercise
the specific sets of conditions and loops, at every stage of project development, the logics of
the programs have been tested by applying invalid inputs and generating respective error
messages, loops and conditional statements are tested to the boundary conditions and validate
properly.

22
VALIDATION TESTING

At the end of Integration Testing, Software is completely assembled as a package,


Interfacing errors have been uncovered and correction testing begins.

VALIDATION TEST CRITERIA

Software Testing and Validation is achieved through serried of black box tests that
demonstrate conformity with the requirements. A test plan outlines the classes of tests to be
conducted and a test procedure defines specific test cases that will be used to demonstrate
conformity with requirements. Both the plan and the procedure are designed to ensure that all
functional requirements are achieved, documentation is correct and other requirements are
met.

TEST CASES

A test case in software engineering is a set of conditions or variables under which a


tester will determine whether an application or software system is working correctly or not.
The mechanism for determining whether a software program or system has passed or failed
such a test is known as a test oracle. In some settings, an oracle could be a requirement or use
case, while in others it could be a heuristic. It may take many test cases to determine that a
software program or system is functioning correctly. Test cases are often referred to as test
scripts, particularly when written. Written test cases are usually collected into test suites.

 Formal Test Cases

In order to fully test that all the requirements of an application are met, there must be
at least two test cases for each requirement: one positive test and one negative test; unless a
requirement has sub-requirements. In that situation, each sub-requirement must have at least
two test cases. Keeping track of the link between the requirement and the test is frequently
done using a traceability matrix. Written test cases should include a description of the
functionality to be tested, and the preparation required to ensure that the test can be
conducted. What characterizes a formal, written test case is that there is a known input and an
expected output, which is worked out before the test is executed. The known input should test
a precondition and the expected output should test a post condition.

23
 Informal Test Cases

For applications or systems without formal requirements, test cases can be written
based on the accepted normal operation of programs of a similar class. In some schools of
testing, test cases are not written at all but the activities and results are reported after the tests
have been run. In scenario testing, hypothetical stories are used to help the tester think
through a complex problem or system. The ideal scenario test is a story that is motivating,
credible, complex, and easy to evaluate. They are usually different from test cases in that test
cases are single steps while scenarios cover a number of steps.

4.2 SYSTEM IMPLEMENTATION

The user then changes over to this new fully tested system and old system is
discontinued. Implementation is one of the most important tasks in project is the phase in
which one has to be cautions because all the efforts undertaken during the project will be very
interactive. Implementation is the most crucial stage in achieving successful system and
giving the users confidence that the new system is workable and effective.

Each program is tested individually at the time of development using the sample data
and has verified that these programs link together in the way specified in the program
specification. The computer system and its environment are tested to the satisfaction of the
user.

The major steps involved in the implementation are:

 Careful planning
 Investigation of the current system and its constraints
 Design of methods to achieve the change over
 An evaluation of change over methods apart from planning
 The implementation phase comprises of several activities

TRAINING ACTIVITIES

In the implementation of any new system, it is necessary to ensure that the consumer
community is best positioned to utilize the system once deployment efforts have been

24
validated. Therefore, all necessary training activities must be scheduled and coordinated. As
this training is often the first exposure to the system for many individuals, it should be
conducted as professionally and competently as possible.

A positive training experience is a great first step towards customer acceptance of the
system. During system implementation it is essential that everyone involved be absolutely
synchronized with the deployment plan and with each other. Often the performance of
deployment efforts impacts many of the performing organization’s normal business
operations.

SYSTEM MAINTENANCE

The maintenance phase of the software life cycle is the time period in which a software
product performs useful work. For maintaining this system properly the following points are
to be followed strictly. The executable file of forms and repots are given to the end users.
Also the backup should be taken in order to safe guard the system. Maintenance activities
involve making enhancement to software products, adapting products to new environment
and correction problems. Software product enhancement may involve providing new
functional capabilities, improving use displays and modes of interaction, upgrading external
documents and internal documentation or upgrading the performance characteristics of a
system.

Adaptation of software to a new environment may involve moving software to a new


environment, faces a lot of maintenance problems. Problem correction involves modification
and revalidation of software to correct errors. Some errors require immediate attention and
some others can be corrected on a scheduled, periodic basis, and others are known but never
corrected. Therefore greater care should be taken in software development that leads to the
production of maintainable systems.

Software maintenance is a microcosm of software development cycle. Enhancement


and adaptation of software, reinitiates development in the analysis phase while correction of a
software problem may reinitiates then development cycle in the analysis phase, design phase
or implementation phase. Thus all the tools and techniques used to develop software are
potentially useful for software maintenance.

25
5. CONCLUSION

5.1 CONCLUSION

The Project titled “EXAM HALL ARRANGEMENT TOOL” is tested with sample
data and found to be working well. The project has been completed successfully with the
maximum satisfaction of the organization. It has been designed to meet the requirements.
This software was tested and found to work satisfactorily without any problem. Various test
factors are also followed; it was error free and was found to work satisfactorily.

Testing and implementation are done successfully. The system satisfies all
requirements needed by the user. I conclude the software as best to my knowledge.

5.2 SCOPE FOR FURURE ENHANCEMENT

The window application has developed in such way that enhancement can be done
easily. The changes can be updated with less time and have no risk to add a new modules.
The system will be improved for further enhancements, whenever the user needs an
additional feature. It also helps to enhance their window application and thus it is helpful for
the growth of the organization.

The below mentioned enhancements are likely to happen in the near future. The
system can be easily upgraded to hold these features.

After administrator authentication of user name and password for employees, the user
name and password can be sent via Mail and SMS to particular user.

This project can be further enhanced based on the future trends and strategies.

26
BIBLIOGRAPHY

REFERENCE BOOKS
1) Programming Introduction to PHP 4.0 Edition paperback bt  W Jason Gilmore
2) Head First PHP & MYSQL by Lynn Beighley and Michael Morrison 1st Edition
O'Reilly Media
3) Beginning PHP & MYSQL from Novice To Professional by W. Jason Gilmore 4th
Edition by Apress

REFERENCE WEBSITES

 www.PHP/index.comhttp://www.tizag.com

 http://www.php.net

 http://www.phpbuddy.com

 https://derickrethans.nl/talks/phparch-php-variables-article.pdf

27
B. TABLE STRUCTURE

TABLE NAME: ADMIN

TABLE NAME: ALLOT

TABLE NAME: ALLOT STUDENT

28
TABLE NAME: STUDENT

TABLE NAME: SUBJECT

TABLE NAME:TEACHER

29
C. SAMPLE CODING

Login

<?php session_start();?>
<?php include('head.php');?>
<link rel="stylesheet" href="popup_style.css">

<?php
include('connect.php');
if(isset($_POST['btn_login']))
{
$unm = $_POST['email'];
$sql = "SELECT * FROM admin WHERE email='" .$unm . "' and password = '".
$_POST['password']."'";
$result = mysqli_query($conn,$sql);
$row = mysqli_fetch_array($result);

$_SESSION["id"] = $row['id'];
$_SESSION["username"] = $row['username'];
$_SESSION["password"] = $row['password'];
$_SESSION["email"] = $row['email'];
$_SESSION["fname"] = $row['fname'];
$_SESSION["lname"] = $row['lname'];
$_SESSION["image"] = $row['image'];
$count=mysqli_num_rows($result);
if($count==1 && isset($_SESSION["email"]) && isset($_SESSION["password"]))
{
?>
<div class="popup popup--icon -success js_success-popup popup--visible">
<div class="popup__background"></div>
<div class="popup__content">
<h3 class="popup__content__title">
Success
</h1>
<p>Login Successfully</p>
<p>

<?php echo "<script>setTimeout(\"location.href = 'index.php';\",1500);</script>"; ?>


</p>
</div>
</div>

<?php
}

else {?>
<div class="popup popup--icon -error js_error-popup popup--visible">
<div class="popup__background"></div>

30
<div class="popup__content">
<h3 class="popup__content__title">
Error
</h1>
<p>Invalid Email or Password</p>
<p>
<a href="login.php"><button class="button button--error" data-for="js_error-
popup">Close</button></a>
</p>
</div>
</div>

<?php

}
?>

<div id="main-wrapper">
<div class="unix-login">
<?php
$sql_login = "select * from manage_website";
$result_login = $conn->query($sql_login);
$row_login = mysqli_fetch_array($result_login);
?>
<div class="container-fluid" style="background-image:
url('uploadImage/Logo/1.jpg<?php //echo $row_login['background_login_image'];?>');
background-image: url('uploadImage/exam.png ">
<div class="row justify-content-center" >
<div class="col-lg-4">
<div class="login-content card">
<div class="login-form">
<center><!--<img src="uploadImage/Logo/1.png" style="width:50%;">--
></center><br>
<form method="POST">
<div class="form-group">
<b><font face="cambria"
size="20">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbspL
OGIN</font></b>
<br><br><br>
<!--<label>Email address</label>-->
<input type="email" name="email" class="form-control"
placeholder="Email" required="">
</div>
<div class="form-group">
<!--<label>Password</label>-->
<input type="password" name="password" class="form-control"
placeholder="Password" required="">
</div>

31
<div class="checkbox">
<!--<label class="pull-right">
<a href="forgot_password.php">Forgotten Password?</a>
</label> -->
</div>
<button type="submit" name="btn_login" class="btn btn-primary btn-
flat m-b-30 m-t-30">Sign in</button>

</form>
</div>
</div>
</div>
</div>
</div>
</div>

</div>

<script src="js/lib/jquery/jquery.min.js"></script>

<script src="js/lib/bootstrap/js/popper.min.js"></script>
<script src="js/lib/bootstrap/js/bootstrap.min.js"></script>

<script src="js/jquery.slimscroll.js"></script>

<script src="js/sidebarmenu.js"></script>

<script src="js/lib/sticky-kit-master/dist/sticky-kit.min.js"></script>

<script src="js/custom.min.js"></script>

</body>

</html>

View Student:

<?php include('head.php');?>
<?php include('header.php');?>
<?php include('sidebar.php');

if(isset($_GET['id']))
{ ?>
<div class="popup popup--icon -question js_question-popup popup--visible">
<div class="popup__background"></div>

32
<div class="popup__content">
<h3 class="popup__content__title">
Sure
</h1>
<p>Are You Sure To Delete This Record?</p>
<p>
<a href="del_student.php?id=<?php echo $_GET['id']; ?>" class="button button--
success" data-for="js_success-popup">Yes</a>
<a href="view_student.php" class="button button--error" data-for="js_success-
popup">No</a>
</p>
</div>
</div>
<?php } ?>

<div class="page-wrapper">

<div class="row page-titles">


<div class="col-md-5 align-self-center">
<h3 class="text-primary"> View Student</h3> </div>
<div class="col-md-7 align-self-center">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="javascript:void(0)">Home</a></li>
<li class="breadcrumb-item active">View Student</li>
</ol>
</div>
</div>

<div class="container-fluid">

<div class="card">
<div class="card-body">
<?php if(isset($useroles)){ if(in_array("add_student",$useroles)){ ?>
<a href="add_student.php"><button class="btn btn-primary">Add
Student</button></a>
<?php } } ?>
<div class="table-responsive m-t-40">
<table id="myTable" class="table table-bordered table-striped">
<thead>
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Class</th>
<th>Email</th>
<th>Gender</th>
<th>Birth Date</th>
<th>Contact No.</th>
<th>Address</th>
<th>Action</th>

33
</tr>
</thead>
<tbody>
<?php
include 'connect.php';
$sql = "SELECT * FROM `tbl_student`";
$result = $conn->query($sql);
$i=0;
while($row = $result->fetch_assoc()) {
$sql2 = "SELECT * FROM `tbl_class` WHERE id='".
$row['classname']."'";
$result2=$conn->query($sql2);
$row2=$result2->fetch_assoc();
?>
<tr>
<td><?php echo $row['sfname']; ?></td>
<td><?php echo $row['slname']; ?></td>
<td><?php echo $row2['classname']; ?></td>
<td><?php echo $row['semail']; ?></td>
<td><?php echo $row['sgender']; ?></td>
<td><?php echo $row['sdob']; ?></td>
<td><?php echo $row['scontact']; ?></td>
<td><?php echo $row['saddress']; ?></td>

<td>
<?php if(isset($useroles)){ if(in_array("edit_student",$useroles)){ ?>
<a href="edit_student.php?id=<?php echo $row['id'];?
>"><button type="button" class="btn btn-xs btn-primary" ><i class="fa
fa-plus-square"></i></button></a>
<?php } } ?>

<?php if(isset($useroles)){ if(in_array("delete_student",$useroles)){ ?>


<a href="view_student.php?id=<?php echo $row['id'];?
>"><button type="button" class="btn btn-xs btn-danger" ><i class="fa
fa-trash"></i></button></a>
<?php } } ?>

</td>
</tr>
<?php $i++;}
?>

</tbody>
</table>
</div>
</div>
</div>

<?php include('footer.php');?>

34
<link rel="stylesheet" href="popup_style.css">
<?php if(!empty($_SESSION['success'])) { ?>
<div class="popup popup--icon -success js_success-popup popup--visible">
<div class="popup__background"></div>
<div class="popup__content">
<h3 class="popup__content__title">
Success
</h1>
<p><?php echo $_SESSION['success']; ?></p>
<p>
<button class="button button--success" data-for="js_success-popup">Close</button>
</p>
</div>
</div>
<?php unset($_SESSION["success"]);
} ?>
<?php if(!empty($_SESSION['error'])) { ?>
<div class="popup popup--icon -error js_error-popup popup--visible">
<div class="popup__background"></div>
<div class="popup__content">
<h3 class="popup__content__title">
Error
</h1>
<p><?php echo $_SESSION['error']; ?></p>
<p>
<button class="button button--error" data-for="js_error-popup">Close</button>
</p>
</div>
</div>
<?php unset($_SESSION["error"]); } ?>
<script>
var addButtonTrigger = function addButtonTrigger(el) {
el.addEventListener('click', function () {
var popupEl = document.querySelector('.' + el.dataset.for);
popupEl.classList.toggle('popup--visible');
});
};

Array.from(document.querySelectorAll('button[data-for]')).
forEach(addButtonTrigger);
</script>

35
D. SAMPLE INPUT
ADMIN Dashboard:

View Teachers

36
View Student

View Allotment

37
38

You might also like