College Admission
College Admission
College Admission
[
Revision History
Document Approval
The following Software Requirements Specification has been accepted and approved by the
following:
2
TABLE OF CONTENTS
Chapter 1: Introduction
3
Chapter 1
Introduction
1 INTRODUCTION
1.1 What is Online Admission?
History
The Online Admission Application System allows institutes to receive applications through
the web and candidates need not collect physical forms. Candidates are required to visit the
admission website of the institute. All eligibility criteria, no. of seats, selection criteria etc are
mentioned in the website. Candidates are required to fill in the online admission form and
submit it online. On successful submission of the application the candidate receives a unique
form no. against which he / she is required to make the payment of the application form. For
institutes willing to receive the application fees online we can also integrate the payment
gateway. Merit list of eligible candidates are generated through the application and published
on the admission website. The Online Admission Application System can also be programmed
to electronically notify candidates about the outcome of the admission process.
4
1.4. Project Scope:
1. A web server that provides interaction with the system to the users.
2. A database is required.
3. User Can apply online for admission.
4. User can see result, list and fee information online
5. Admin will have an authentication.
6. Admin will have a facility to contact with student and management via email.
7. The system will be accessible to all who have a valid login; users with a valid login can
access the system virtually anywhere and do the required task where computer and
Internet facilities are available.
5
Chapter 2
Feasibility Study
2 Feasibility Study
A feasibility study is a preliminary study undertaken to determine and document a project’s
viability. The results of this study are used to make a decision whether to proceed with the
project , or not.
A feasibility study could be used to test a new working system, which could be used because :
1. Technical
2. Operation
3. Economics
4. Schedule
5. Specification
6. Information
7. Motivational
1) Technical Feasibility:
The system which is to be developed is web based, and PHP technology along with MySql will
be used to develop it. The project team has got the status to use these technologies. The
software required for doing this project is easily available.
6
2) Operational Feasibility:
The staff that will be designed software so that it is easy to use. They will additionally provided
with help and guidance (if needed) to operate the software.
3) Economic Feasibility:
There is no need for purchasing the tools and license used during the development of the
project. All tool and technologies that are required during development are already with the
development team. This makes the development economically feasible. Only costing factor
is the effort of the project members and time that is utilized in project development. The
maintenance cost and operation cost is there.
4) Schedule Feasibility:
Time is an important factor. We have got the required team and resources to complete the
project on time. We all are in the final semester of our program and there is sufficient time
available to us for completing this project on the required date and time.
5) Specification Feasibility:
The project team has a clear picture of what we have to develop and what the system must
have in it to be successful. The project team will have a complete and clearer picture when
we are through with the requirements specification and gathering phase. The requirements
are becoming clearer and definite with the passage of time.
6) Information Feasibility:
The information regarding its completion, reliability, and meaningfulness is ensured by the
use of the Internet, books, and software development requirements. The project will itself be
informative and helpful to the concerned authorities after completion.
7) Motivational Feasibility:
The client’s staff that will actually using the system are motivated to use this system as one
of the goals of the system is helping them with their work.
7
Chapter 3
Requirement Analysis
Tools Required
Wamp Web server Version
PHP Script Language Version 5.1.1
MYSQL Database Manager Version 2.6.4-pl4
Adobe Dreamweaver Version CS 6
Mozilla Firefox
INTRODUCTION OF PHP:
PHP, which stands for "PHP: Hypertext Preprocessor" is a widely-used Open Source general-
purpose scripting language that is especially suited for Web development and can be embedded
into HTML PHP has come a long way in the last few years. Growing to be one of the most
prominent languages powering the Web was not an easy task PHP is a widely-used general-
purpose scripting language that is especially suited for Web development. Its syntax draws upon
C, Java, and Perl, and is easy to learn. The main goal of the language is to allow web developers
to write dynamically generated web pages quickly.
Cross-Platform:
You can run most PHP code, without alteration, on computers running many different operating
systems. A PHP script that runs on Linux will generally run on Windows as well.
HTML-Embedded:
8
PHP code is written in files containing a mixture of PHP instructions and HTML code.
Server-Side:
The PHP programs we write are run on a server – specifically, a web server.
We run PHP programs via a web browser. We access the web server on which they reside, and
this runs the program, sending any resulting output back to the browser. This is different from
a script written in other languages like Perl or C -- instead of writing a program with
lots of commands to output HTML, you write an HTML script with some embedded
code to do something (in this case, output some text). The PHP code is enclosed in
special start and end tags that allow you to jump into and out of "PHP mode".
PHP 4:
By the winter of 1998, shortly after PHP 3.0 was officially released, Andi Gutmans and Zeev Suraski
had begun working on a rewrite of PHP's core. The design goals were to improve performance of
complex applications, and improve the modularity of PHP's code base. Such applications were
made possible by PHP 3.0's new features and support for a wide variety of third party databases
and APIs, but PHP 3.0 was not designed to handle such complex applications efficiently.
The new engine, dubbed 'Zend Engine' (comprised of their first names, Zeev and Andi), met these
design goals successfully, and was first introduced in mid 1999. PHP 4.0, based on this engine, and
coupled with a wide range of additional new features, was officially released in May 2000, almost
two years after its predecessor, PHP 3.0. In addition to the highly improved performance of this
version, PHP 4.0 included other key features such as support for many more Web servers, HTTP
sessions, output buffering, more secure ways of handling user input and several new language
constructs.
PHP 4 is currently the latest released version of PHP. Work has already begun on modifying and
improving the Zend Engine to integrate the features which were designed for PHP 5.0.
Today, PHP is being used by hundreds of thousands of developers (estimated), and several million
sites report as having it installed, which accounts for over 20% of the domains on the Internet.
PHP 5:
The future of PHP is mainly driven by its core, the Zend Engine. PHP 5 will include the new Zend
Engine 2.0. To get more information on this engine
9
PEARL
PEARL, the PHP Extension and Application Repository (originally, PHP Extension and Add-on
Repository) is PHP's version of foundation classes, and may grow in the future to be one of the
key ways to distribute both PHP and C-based PHP extensions among developers.
Server-side scripting. This is the most traditional and main target field for PHP. You need
three things to make this work. The PHP parser (CGI or server module), a web server and
a web browser. You need to run the web server, with a connected PHP installation. You
can access the PHP program output with a web browser, viewing the PHP page through
the server.
Command line scripting. You can make a PHP script to run it without any server or
browser. You only need the PHP parser to use it this way. This type of usage is ideal for
scripts regularly executed using cron (on *nix or Linux) or Task Scheduler (on Windows).
These scripts can also be used for simple text processing tasks.
Writing Client-Side GUI Applications: PHP is probably not the very best language to
write windowing applications, but if you know PHP very well, and would like to use
some advanced PHP features in your client-side applications you can also use PHP-GTK
to write such programs. You also have the ability to write cross-platform applications
this way. PHP-GTK is an extension to PHP, not available in the main distribution.
PHP can be used on all major operating systems, including Linux, many UNIX variants, Microsoft
Windows, Mac OS, and probably others. PHP has also support for most of the web servers
today. This includes Apache, Microsoft Internet Information Server, Personal Web Server,
Netscape and iPlanet servers for the majority of the servers PHP has a module, for the others
supporting the CGI standard, PHP can work as a CGI processor.
So with PHP, you have the freedom of choosing an operating system and a web server.
Furthermore, you also have the choice of using procedural programming or object oriented
programming, or a mixture of them. Although not every standard OOP feature is realized in the
current version of PHP, many code libraries and large applications (including the PEAR library)
are written only using OOP code.
With PHP you are not limited to output HTML. PHP's abilities include outputting images, PDF
files and even Flash movies (using libswf and Ming) generated on the fly. You can also output
easily any text, such as XHTML and any other XML file. PHP can auto generate these files, and
save them in the file system, instead of printing it out, forming a server-side cache for your
dynamic content.
10
Support for a wide range of database:
One of the strongest and most significant features in PHP is its support for a wide range of
databases. Writing a database-enabled web page is incredibly simple. The following databases
are currently supported:
. Additionally PHP supports ODBC, the Open Database Connection standard, so you can connect
to any other database supporting this world standard.
PHP also has support for talking to other services using protocols such as LDAP, IMAP, SNMP,
NNTP, POP3, HTTP, COM (on Windows) and countless others. You can also open raw network
sockets and interact using any other protocol. PHP has support for the WDDX complex data
exchange between virtually all Web programming languages. Talking about interconnection,
PHP has support for instantiation of Java objects and using them transparently as PHP objects.
While using PHP in the e-commerce field, you'll find the Cybercash payment,
CyberMUT, VeriSign Payflow Pro and CCVS functions useful for your online payment
programs.
PHP is the best language for web programming, but what about other
languages?
1. PHP vs. ASP?
2. Is there an ASP to PHP converter?
3. PHP vs. Cold Fusion?
4. PHP vs. Perl?
The biggest advantage of PHP over Perl is that PHP was designed for scripting for
the web where Perl was designed to do a lot more and can because of this
get very complicated. The flexibility / complexity of Perl makes it easier to
write code that another author / coder has a hard time reading. PHP has a
less confusing and stricter format without losing flexibility. PHP is easier to
integrate into existing HTML than Perl. PHP has pretty much all the 'good'
functionality of Perl: constructs, syntax and so on, without making it as
complicated as Perl can be. Perl is a very tried and true language, it's been
around since the late eighties, but PHP is maturing very quickly.
3.1. 2 MySql
2.1 Introduction
12
for support. In addition, because database engines often had substantial hardware requirements
to run with any reasonable performance, the cost was even greater.
The no-to-low cost database arena is MySQL, a SQL (Structured Query Language) client/server
relational database management system originating from Scandinavia. MySQL includes a SQL
server, client programs for accessing the server, administrative tools, and a programming
interface for writing your own programs.
MySQL's roots began in 1979, with the UNIREG database tool created by Michael "Monty"
Widenius for the Swedish company TcX. In 1994, TcX began looking around for a SQL server for
use in developing Web applications. They tested some commercial servers, but found all too slow
for TcX's large tables. They also took a look at MySQL, but it lacked certain features TcX required.
Consequently, Monty began developing a new server. The programming interface was designed
explicitly to be similar to the one used by MySQL because several free tools were available for
MySQL; by using a similar interface, those same tools could be used for MySQL with a minimum
of porting effort.
MySQL continues to develop. The addition of features such as transactions, row-level locking,
foreign key support, and replication has caused people who once would have considered only "big
engine" databases for their applications to give MySQL a second look.
MySQL is an Open Source project that can be used for free under most circumstances, for which
reason it enjoys widespread popularity in the Open Source community. But MySQL's popularity
isn't limited to Open Source enthusiasts. Yes, it runs on personal computers (indeed, much MySQL
development takes place on inexpensive Linux systems). But MySQL is portable and runs on
commercial operating systems (such as Solaris, Mac OS X, and Windows) and on hardware all the
way up to enterprise servers. Furthermore, its performance rivals any database system you care
to put up against it, and it can handle large databases with millions of records.
Speed:
MySQL is fast. The developers contend that MySQL is about the fastest database
you can get. You can investigate this claim by visiting
http://www.mysql.com/benchmark.html, a performance-comparison page on the
MySQL Web site.
Ease of use:
MySQL is a high-performance but relatively simple database system and is much less
complex to set up and administer than larger systems.
13
MySQL understands SQL, the language of choice for all modern database
systems.
Capability:
Many clients can connect to the server at the same time. Clients can use multiple
databases simultaneously. You can access MySQL interactively using several interfaces
that let you enter queries and view the results: command-line clients, Web browsers, or
X Window System clients. In addition, a variety of programming interfaces are available
for languages such as C, Perl, Java, PHP, and Python. You can also access MySQL using
applications that support ODBC (Open Database Connectivity), a database
communications protocol developed by Microsoft. Thus, you have the choice of using
prepackaged client software or writing your own for custom applications.
MySQL is fully networked, and databases can be accessed from anywhere on the Internet,
so you can share your data with anyone, anywhere. But MySQL has access control so that
people who shouldn't see your data can't. To provide additional security, MySQL now
supports encrypted connections using the Secure Sockets Layer (SSL) protocol.
Portability:
MySQL runs on many varieties of UNIX, as well as on other non-UNIX systems, such as
Windows and OS/2. MySQL runs on hardware from home PCs to high-end servers.
Small size:
MySQL has a modest distribution size, especially compared to the huge disk space
footprint of certain commercial database systems.
MySQL is an Open Source project, freely available under the terms of the GNU General
Public License (GPL). This means that MySQL is free for most in-house uses. (If you want
to sell MySQL or services that require it, that is a different situation and you should
contact MySQL AB.)
Open distribution:
MySQL is easy to obtain; just use your Web browser. If you don't understand how
something works or are curious about an algorithm, you can get the source code and poke
around in it. If you don't like how something works, you can change it.
14
The MySQL community, developers and non-developers alike, is very responsive. Answers to
questions on the mailing list often arrive within minutes. When bugs are reported, the developers
generally release a fix quickly, and fixes become available immediately over the Internet.
A SQL server:
This is the engine that powers MySQL and provides access to your databases.
An interactive program allows you to enter queries directly and view the
results, and several administrative and utility programs help you run your
site. One utility allows you to control the server. Others let you import or
export data, check access permissions, and more.
You can write clients in C because the library is in C, but the library also provides the
basis for third-party bindings for other languages.
3.1.3.1 Introduction :
Often reffered to as simply Apache,a public-domain open source Web server developed by a
loosely-knit group of programmers.The first version of Apache, based on the NCSA http Web
server,was developed in 1995.
Core development of the Apache Web server is performed by a group of about 20 volunteer
programmers, called the Apache Group.However, because the source code is freely
available,anyone can adopt server for specific needs,and there is a large public library of
Apache add-ons.In many respect, development of Apache is similar to development of the
Linux operating system.
he original version of Apache was written for UNIX, but there are new versions that run under
OS/2, Windows and other platforms.
The name is a tribute to the Native American Apache Indian tribe,a tribe well known for its
endurance and skill in warfare.A common misunderstanding is that it was called the name a
patchy server , or Apache server.
15
3.1.4.1 What is phpMyAdmin ?
phpMyAdmin is a tool written in PHP intended to handle the administration of MySQL over the
Internet.Currently it can creat and drop databases,creat/drop/alter tables, delete/edit/add
fields, execute any SQL statement, and manage keys on fields.
3.1.4.2 History :
Tobias Ratschiller, then an IT consultant and later founder of the software company
Maguma,started to work on a PHP-based web frontend to MySQL in 1998, inspired by Peter
Kuppelwieser’s MySQL-Webadmin. When he gave up the project in 2000 because of lack of
time, phpMyAdmin had already become one of the most popular PHP application and MySQL
administration tools with a large community of users and contributors.it is also included in
many Linux distributions.
In order to coordinate the growing number of patches, a group of three developers, Olivier
Muller, Marc Delisle and Loic Chapeaux, registered the phpMyAdmin Project at SourceForge
and took over the development in 2001.
*Processor:
2.0 Core2 Duo
*RAM:
4GB
*Hard Disk:
320 GB
*Operating System:
Window7
Window Xp
16
Chapter 4
OBJECT ORIENTED ANALYSIS & DESIGN
4. Introduction :
For analysis and design purpose the Unified Modeling Language (UML) is used. Is UML, a
system is represented using five different “Views” that describe the system from distinctly
different perspective. Each view is defined by a set of diagrams. The following three views is
UML will be discussed.
Inception
Elaboration
Construction
Transition
1. User
2. Administration
4.1.1 Administrator:
For the security reason we have separated the admin interface separate, which is known
to the administrator only.
17
After the administrator login, he will reach to the admin control panel. In the admin control
panel there are some main contents to be discussed.
4.1.2.1 Admission:
Add New
View / Edit
In the phase I shall identify system boundaries, by identifying actors and use cases and I shall
break the system into sub systems.
4.2.1 Actors:
User
Administrator
Administrator User
4.2.2.1 Administrator:
He is the main controller of the web site. He can Add/Delete Categories, Users etc.
18
View Home Admission
Area
(View All)
Admin area
Home
Content area
Fee Area
List area
Result area
Picture Gallery
19
4.2.3 Use Case Name :Administrator Login
Description
This use case describe the process that how the administrator log in the system.
Through this the admin can enter into the admin control panel.
Actors :
Login
Administrator
(From Actors)
Pre Conditions :
The user must have the access rights to run the current system.
Flow of Events :
Scenario Variation :
The database notifies the user when his password or name is invalid.
Login form will reappear for entering again name and password.
The use case ends.
20
Activity Diagram login the System
Start
Incorrect URL
Correct URL
Login Page Open
End
21
Sequence Diagram login the System
22
User Request
Actor:
User.
Pre Conditions:
Login
Flow of Event:
Primary Scenarios:
Secondary Scenarios:
23
Sequence Diagram
3:Click Sign Up
4:Registration Page
24
4.2.6 Use Case Name :Administrator Option
Through this the Administrator can View/Update, Add New Admin and can change Password.
Actors :
Preconditions :
Flow of Events :
Primary Scenarios :
Secondary Scenarios :
25
Activity Diagram of Add New Administrator
Start
Show Filled
Information
Admin Registered
End
26
Sequence Diagram of Add New Administrator
27
Sequence Diagram of Update Account
28
Activity Diagram of Update Account
Start
Select Delete/Edit
If Administrator
If Account
Cancel
Confirm Delete
Account Updated
End
29
Sequence Diagram of Change Admin Password
30