SlideShare une entreprise Scribd logo
1  sur  112
Télécharger pour lire hors ligne
| Page |1
Project Report
Automated Bus Ticket Booking
System
Submitted by
Md.Farhad Hossain
ID: 111-35-181
Abdur Rahman Shobuj
ID: 111-35-158
Dept. of Software Engineering
Daffodil International University
Supervised by
Mr. Kaushik Sarker
Lecturer
Dept. of Software Engineering
Daffodil International University
| Page |2
APPROVAL
This Project titled “Automated Bus Ticket Booking system”, submitted by Md.Farhad
Hossain ID No: 111-35-181 and other group member Abdur Rahman Shobuj ID No: 111-35-
158 to the Department of Software Engineering, Daffodil International University, has been
accepted as satisfactory for the partial fulfillment of the requirements for the degree of B.Sc.
in Software Engineering and approved as to its style and contents.
BOARD OF EXAMINERS
Dr. Touhid Bhuiyan Head
Department Head
Department of Software Engineering
Faculty of Science & Information Technology
Daffodil International University
Md. Mijanur Rahman Internal Examiner
Senior Lecturer
Department of Software Engineering
Faculty of Science & Information Technology
Daffodil International University
Name External Examiner
Designation
Department of Computer Science and Engineering
Faculty of Science & Information Technology
Daffodil International University
DECLARATION
| Page |3
We hereby declare that, this project has been done by us under the supervision Mr. Kaushik
Sarker Lecturer, Department of Software Engineering, and Daffodil International
University. We also declare that neither this project nor any part of this project has been
submitted elsewhere for award of any degree.
Supervised by:
Mr. Kaushik Sarker
Lecturer
Department of Software Engineering
Daffodil International University
Submitted by:
Md. Farhad Hossain
ID: 111-35-181
Abdur Rahman Shobuj
ID: 111-35-158
Department of Software Engineering
Daffodil International University
| Page |4
Table of Contents
Project Report .........................................................................................................................................1
Chapter 1...............................................................................................................................................10
Introduction.......................................................................................................................................10
1.2 Purpose of the Project .................................................................................................................10
1.3Document Conventions................................................................................................................11
1.4 Scope...........................................................................................................................................13
1.5 Objectives ...................................................................................................................................13
CHAPTER 2 .........................................................................................................................................14
Pre-Analysis and Initiation ...............................................................................................................14
2.1Scenario........................................................................................................................................14
2.2Requiremet Collection .....................................................................................................................17
2.3Associate Review.............................................................................................................................18
2.4 Customers’ Requirements...............................................................................................................21
CHAPTER 3 .........................................................................................................................................23
Analysis ............................................................................................................................................23
3.1Introduction..................................................................................................................................23
3.1 Requirement analysis......................................................................................................................23
3.1.1 Requirement Discovery.....................................................................................................24
3.1.3: Requirement Collection functional requirements ...................................................................26
3.1.4: Collected Non –Functional Requirements..............................................................................27
3.2 Requirement analysis..................................................................................................................28
3.2.1: Introduction………………………………………………………………………………..28
3.2.2
Purpose……………………………………………………………………………………………
………………………………28
3.2.3 Scope……………………………………………………………………………………….29
3.2.4 Definition of Acronyms and Abbreviations………………………………………………29
3.3.2: Non Functional Requirements ................................................................................................32
3.3.3 Stakeholders.............................................................................................................................33
3.3.4: Software Development Plan .......................................................................................................33
3.3.5: Overview.................................................................................................................................33
3.3.5.1 Proposed System and Its benefits………………………………………………………..34
3.3.5.3Process Model……………………………………………………………………………35
3.3.5.4 Work Schedule…………………………………………………………………………...36
| Page |5
4.1Introduction..................................................................................................................................37
4.2: Purpose.......................................................................................................................................37
4.3: System Overflow .......................................................................................................................38
4.4: SYSTEM SCOPE ......................................................................................................................38
Main Inputs………………………………………………………………………………………38
Outputs…………………………………………………………………………………………...38
4.5: Design Map................................................................................................................................39
4.6: Use Case ....................................................................................................................................40
4.7: Use case Diagram for operator and Visitors /Passenger............................................................41
Use case diagram of Operator (Counter master) and General user means Registered user and non-
Registered user..................................................................................................................................41
4.8.1: Context diagram (Level 0 DFD) …………………………………………………………42
4.9 Class Diagram.............................................................................................................................43
4.2.1 Categories of Table of Physical design of database table:.......................................................45
4.2.1.1 Table name: Bus…………………………………………………………………………45
4.2.1.2 Table name: Counter…………………………………………………………………….45
4.2.1.3 Table name: User………………………………………………………………………...45
4.2.1.4 Table name: assign counter………………………………………………………………46
4.2.1.5 Table name: Station……………………………………………………………………..46
4.2.1.6Table name: Departure_config………………………………………………………….46
4.2.1.7 Table name: Bus seats…………………………………………………………………..46
4.2.1.8 Table name: Passenger………………………………………………………………….47
4.2.1.9 Table name: Seat Booking………………………………………………………………47
4.2.2 Sequence Diagram ...................................................................................................................48
4.2.3 Sequence Diagram for General User .......................................................................................49
4.5 Physical design................................................................................................................................50
4.5 .1 Registration and login pages:..................................................................................................50
4.5.2 User Registration .....................................................................................................................51
4.5.3 Bus Add ...................................................................................................................................51
4.5.4 Bus view...................................................................................................................................52
4.5.5 Counter Add.............................................................................................................................52
4.5.6 Counter view page ...................................................................................................................53
4.5.9 Passenger view page ................................................................................................................56
4.5.10 Physical Design User Interface..............................................................................................56
4.5.11 Physical Design......................................................................................................................57
| Page |6
4.5.13 Physical design Seat and passengers interface.......................................................................59
Chapter 5...............................................................................................................................................60
System Implementation ....................................................................................................................60
5.1.1 Introduction..............................................................................................................................60
5.1.2 Purpose.....................................................................................................................................60
5.1.3 System Description..................................................................................................................60
5.1.4 System Organization................................................................................................................60
5.1.5 Hardware & Software Specifications.......................................................................................61
 Hardware Requirements............................................................................................................61
Software Requirements…………………………………………………………………………..61
5.1.6 Technical Description ..............................................................................................................62
Sub Directories…………………………………………………………………………………...62
Admin or Operator operation…………………………………………………………………….63
Controller (Pages Control) ………………………………………………………………………63
5.1.7 DBConnect.php........................................................................................................................63
5.1.8 Controller:................................................................................................................................64
Config.php……………………………………………………………………………………….64
5.1.9 Admin Login and Registration:................................................................................................65
Login Form………………………………………………………………………………………66
Departure view………………………………………………………………………………….68
5.1.10.1 Add Departure Configuration and view departure…………………………………….70
5.1.11 Departure Edit........................................................................................................................71
Departure Edit……………………………………………………………………………………72
5.1.12 User Interface or Visitors Interface........................................................................................73
5.1.13 Seat Booking Interface...........................................................................................................76
Seat Booking……………………………………………………………………………………..86
CHAPTER 6 .........................................................................................................................................87
Testing ..............................................................................................................................................87
6.1 Introduction.................................................................................................................................87
6.2 Importance of testing ..................................................................................................................87
6.3.1Unit testing................................................................................................................................88
6.3.2Integration testing .....................................................................................................................88
6.3.3System testing...........................................................................................................................89
6.3.4Acceptance testing ....................................................................................................................89
| Page |7
6.3.5Recovery testing........................................................................................................................89
6.4 Test Case.....................................................................................................................................90
6.4.1 User Registration Module Test Case .......................................................................................90
Test Case Unit Test………………………………………………………………………………90
Registration module Unit Test 1…………………………………………………………………91
Registration module 2……………………………………………………………………………92
Registration module Unit Test 3…………………………………………………………………92
6.4.2 User Login Module:.................................................................................................................93
Login module Unit test1: ………………………………………………………………………..94
Login module Unit test 2: ……………………………………………………………………….94
6.4.3 Departure Configuration Module:............................................................................................96
Departure Configuration Module Unit Test 1: …………………………………………………..97
Departure Configuration Module Unit Test 2: …………………………………………………99
Bus Searching unit test 1: ………………………………………………………………………101
Bus Seat booking module Unit Test 1: ……………………………………………………….103
6.4.6 Test Report.............................................................................................................................104
Conclusion: .....................................................................................................................................104
Chapter 7.............................................................................................................................................107
Conclusion ......................................................................................................................................107
CHAPTER 8 .......................................................................................................................................108
Future Work....................................................................................................................................108
APPENDIX.....................................................................................................................................109
References.......................................................................................................................................111
| Page |8
Abstract
This project is about Automated Bus Ticket Booking System is a web based system , This is
the system for ticket booking in online remotely any type of location in Bangladesh and also
helps to the bus owner to manage their business by using this system it’s also helps to owner
record their daily collected money from bus business and also helps to reduced paper to track
any type of bus information such as ticket information passenger information, seat booking
information any type of user can see the details of seat which are booked and which is
available it’s a automated process if any user book ticket in online before confirmation of
ticket other user can book ticket no need to refresh page ,when user confirm ticket in other
side in other hand they saw the seat colors is red its totally automated system not only see
admin and operator but also seat details of bus passengers
The main purpose of our system if any user want to go anywhere any location in our country
they want to use our system in online no need to go seat booking for bus counter they can
select bus for his/her choose bus seat booking related any type of operation and any query
they can using the system whole package are here if any user want to go anywhere.
The Business Owner not only benefit general user but also maintain their business and
reduced paper to save information any type of bus ,seats ,,departure date , seat booking ,
passenger every record saved in database and also collated money from bus ticket from user
they can know the update of transaction this project done ourself we are trying our best to
save record money but in future we will try to implement this feature.
Waterfall methodology has been used to develop the our system
The modern technology is used to implement to the automated system to make it more
secured PHP object oriented concepts and MVC Framework Some client side scripts have
also been used to make it user friendly seat booking some page updating purpose using client
site programming.
| Page |9
ACKNOWLEDGEMENT
First we express our heartiest thanks and gratefulness to almighty Allah for his divine
blessing makes us possible to complete this project successfully.
We fell grateful to and wish our profound our indebtedness to, Department of Software
Engineering, Daffodil International University, Dhaka Bangladesh. Deep Knowledge & keen
interest of our supervisor Mr. Kaushik Sarker in the field of Automated Bus Ticket Booking
System. His endless patience, scholarly guidance, continual encouragement, constant and
energetic supervision, constructive criticism, valuable advice, reading many inferior draft and
correcting them at all stage have made it possible to complete this project.
I am also very grateful to all of our Teachers and friends for their valuable suggestions help
and support during completion of our project , for his kind help to finish our project and also
to other faculty member and the staff of Software Engineering department of Daffodil
International University.
We would like to thank our entire course mate in Daffodil International University, who took
part in this discuss while completing the course work.
Finally, we must acknowledge with due respect the constant support and patients of our
parents.
| Page |10
Chapter 1
Introduction
Automated Bus Ticket booking system gives the opportunity to the general users/visitors to
book the ticket remotely anytime in anywhere. By using this web application, users will be
able to select the bus reserves the seats for going from staring place to destination place at
their fixed time and date. For booking ticket, users confirm their personal information such as
name; email number and mobile number for confirmation of ticket. If any user thinks about to
go anywhere by using bus. They can get whole features in our web application. If any owner
thinks about to maintain his/her business and they can get whole privilege in our web
application.
Automated Bus Ticket Booking System is aimed at reducing paper for the bus industry and
hence improving its efficiency and speeding up of all processes.
The web apps can be accessed by the passengers from anywhere remotely in any location.
Hence, all the related information about a passenger is available to admin and customers.
Thus, this software saves the entire customers and track by phone number.
1.2 Purpose of the Project
This project is aimed at developing a web based automation application that will apply a
system approach to depict the functional architecture. The Purpose of our project is to
develop “Automated Bus Ticket Booking system” for owner to maintain their business and
total details of bus and departure bus and also know ticket information which is booked and
which is not booked and details of total collection of money for specific days and instant
details of collection of money from bus ticket. Our systems innovative facilities are added for
general users to book ticket anytime and anywhere remotely and general users can be able to
know bus details and fare and seats combination is easy to track the information of all and
| Page |11
departure destination .General users can be informed the seat which is booked and which is
not booked. This feature is added for general users. Every business owner can take the
opportunity to use our system. The main goal of our system is to build a good management
tool for all customers. The main purpose of this software is to reduce the time taken through
manual system in order to maintain all the records and operation virtually.
Those activities are longer in physically in our present life are easy to access virtually and
save the customers valuable time. All aged customers can use our software to do the
completion booking ticket online at their house and their working environment.
1.3Document Conventions
Main Chapter
 Font: Times New Roman
 Face: Bold
 Size: 18
Main Section Titles
 Font: Times New Roman
 Face: Bold
 Size: 16
| Page |12
| Page |13
Sub Section Titles
 Font: Times New Roman
 Face: Normal
 Size: 12
1.4 Scope
This System is helpful to the business owner to maintain their business by using this web
application .Owner every moment check their departure information and seats booking
information and also helps to keeping record of every transaction by using this application
not only business owner but also general user using this web application for the purpose of
ticket book in online general user can not need to go bus counter to book ticket they can book
ticket remotely anywhere in the world by fulfill this instruction
This system is helpful to reduce the time and complexity of maintaining the records. It also
helps in accurate maintenance of customers and owners.
1.5 Objectives
The objective of “Bus booking management system” is to easily track the information of all
customers, departure bus station and seats information and bus destination. The main goal of
the software is to build a good management tool for all customers. The main purpose of this
software is to reduce the paper to track information of total transaction and counter master
does not need to call other counter master to book ticket and assign ticket do n’ t tell about
ticket info they can know information by using seat booking module of our system .
| Page |14
CHAPTER 2
Pre-Analysis and Initiation
2.1Scenario
Scenario is a process used during requirement analysis to describe the use of proposed
system. Scenario is a story about proposed System scenario explains an early stage of
proposed system.
The scenario of this system is given below:
The system gives Automated Bus Ticket Booking System documentation. There are three
types of users. First, Super Admin (Head Counter master); Second, Operator (such like as
counter person) ; Third, Visitor /Registered users;
The following table shows the brief description about different users with their level.
Users Type Description
Admin (Admin-Level1) Admin totally control the
proposed system they can
action view and every work
(such as ticket are distribute
for the counter by admin and
sales info or if a new bus is
added and every counter
transaction status. If new
counter added of this
| Page |15
automated system only the
can confirm)and they create
operator (counter person)
Operator(Counter person Operator(Level-2) Operator can view seat
permutation .If a visitor or
user request for new ticket
with fully follow our
instructions of our proposed
System they confirm user to
if ticket is booked. Operator
confirm by sending
message or contact by
phone .
For(verification purpose
)ticket status
Visitor/Registered User (Basic level-3) The user can request only
new ticket from-to
destination place
In the early stage of our proposed system admin ( head of the counter) do not need to
register of our system admin are automatically manually create by System of developer.
System has one admin .Admin user insert new bus if new bus in queue for specific counter
otherwise none of them cannot insert new bus information ,admin user provide to operator
bus info with seat permutation and distributed seat for operator (counter person) .admin user
check everything of the our system ticket selling info seat information which counter how
much provide number of passengers, Current status of seat permutation also total collection
of money every day admin users check the update they can action when need to update or
delete info about bus .Only admin can create operator for (specific counter master ).Operator
they can check only current counter status .if new customer are request for a new ticket and
they can confirm user if ticket are sold
| Page |16
By email or sending message or contact by phone ,they confirm passengers ,and if seat are
whole booked they can update status for specific bus cause user/visitor can know about seat
permutation cause they do not need to request if seat whole are booked .Operator they can
contact other operator(such like other counter master) for seat info about bus .Visitor or
User can request for new ticket by fill up form they specify to fill up leaving from -Going
place or destination place and fill up date form .Users can search bus if form is fill up and
know the information about bus ,seat permutation. When user fill up the form they can know
bus name bus starting time and counter information choose the bus seat which seat are
available only they can choose these seat and buy one or more seat a single user can do. Fill
up the personal information of the visitor with payment method such like as bkash or credit
card number it’s our proposed features.
1. Pre-analysis
a. Scenario / Issue Initiation
b. Requirement Collection
2. Analysis
a. Customer Requirement Specifications (CRS)
b. Software Requirement Specifications (SRS)
3. Design
a. High Level Design (HLD)
b. Detail Level Design (Detail Level Design)
4. Implementation
1. Codes
2. Logical Design
3. Physical design
6. System Test
a. System Test Report (STR)
b. Software Development Completion Report (SDC
| Page |17
2.2Requiremet Collection
Requirements gathering are an essential part of any project and project management.
Understanding fully what a project will deliver is critical to its success. This may sound like
common sense, but surprisingly it's an area that is often given far too little attention.
Many projects start with the barest headline list of requirements, only to find later the
customers' needs have not been properly understood.
One-way to avoid this problem is by producing a statement of requirements. This document
is a guide to the main requirements of the project. It provides:
 A succinct requirement specification for management purposes.
 A statement of key objectives - a "cardinal points" specification.
 A description of the environment in which the system will work.
 Background information and references to other relevant material.
 Information on major design constraints.
Finally, ensure you have cross-referenced the requirements in the statement of requirements
with those in the project definition report to ensure there is no mismatch.
The functional requirements describe the services provided by system in detail, the inputs and
outputs, expectations and so on. The functional requirements define the facilities to be
provided by the system.
| Page |18
The non-functional requirements are not directly concerned to the system. They may define
constraints on the system and specify system performance, security, availability and emergent
properties.
2.3Associate Review
Associate review process should be in place in any software development organization as a
significant defect removal activity. Associate reviews are included in the Software
Engineering Institute’s Capability Maturity Model Integration (CMMI® ) [3] as a required
process for those organizations following the CMMI as a guide for process improvement.
Associate reviews are especially valuable as a way to remove defects early in the
development cycle and should be performed on all major software development work
products including requirements, design, code, and test procedures. The software inspection
method of performing associate reviews is generally considered the most effective method of
performing associate reviews [2] and is an indisputable software engineering best practice.
Other types of associate reviews that are practiced with varying degrees of formality are team
reviews, walkthroughs, and pair programming. Once associate reviews are an established
practice, the data from each associate review can be used for defect management. For this
purpose the following data from each associate review are recommended to be collected In
software development, associate review is a type of software review in which a work product
is examined by its author, in order to evaluate its technical content and quality. The purpose
of associate review is to provide a disciplined engineering practice for detecting and
correcting in software artifacts .
| Page |19
The following System is reviewed by developer
Review One: ONLINE BUS TICKET RESERVATION SYSTEM
Date : 02/01/15
Online Bus Ticket Reservation System designed and developed by Tuvshinbay Davaa
APTECH BANASWADI, KALYAN NAGAR, BANGALORE
Description:
Ticket Reservation System descriptions are given below:
Now they want incorporate an online service application where they can maintain the records
of the buses along with the details of the customers. The customer can now book the tickets
by visiting the booking counters at their place (nearby) to the respective destination as
required. They want the application to be linked with the database, so that whatever details
are entered like the details of the customers, buses, and bookings can be viewed by the other
centers as well as it is an online application. They also want to incorporate some feature
which performs the tasks that they actually perform, and an application where the customer
can register with the site and then book the tickets online instead of visiting the booking
counter A database should be maintained where the bus details along with the bus number,
route, the places it covers throughout the distance and also the timings are needed to be
maintained. Also the details of the customers that are entered at the time of booking the
tickets are needed to be gathered in the database. So that they can track the details of the
customer at any time using the search option based on the starting place, age, name,
destination place and Date and Time and even based on the bus they had chosen.
The database should also maintain the list of the Employers as they alone book the tickets
with the username and password. The list that is to be maintained is personal details, contact
details, location, qualification, age, etc are needed to be gathered. There should be buttons
like New, Update and Cancel are to be included. Based on the button chosen the respective
action is needed to be performed. Also if the Employee record is entered (The Employee
| Page |20
details will be maintained by the Admin alone), it should automatically generate a six digit
code, and it will ask for the username and the password (the password can be changed by the
Employee) through which he can login in to the a/c so as to perform the booking tasks. Also
for canceling the ticket, there is a limit like, if cancelled before 2 days then the whole money
will be returned, and if done one day before, then 15% is debited from the total amount and
the remaining amount is returned and if done on that day 30% is debited from the total
amount and the remaining is to be returned back. This action is also to be performed by the
application alone. They want the application to be maintained in different details like the
buses and the bookings information. When they try to book a ticket it should ask for the
customer details like the name of the customers for whom the tickets are booked, Date and
Time, Starting and Destination place and the age ( as the charges depends on the age). Also
the Bus no. and the seat no. for which the ticket (s) booked are to be entered so that they can
keep track of the bookings done. Whenever a customer enquires for the availability they can
check through the Enquiry form where the details like Destination Place, Starting Place, Date
and Time are asked, by entering these details (all fields are not mandatory) the availability
details should be displayed. Also there should be a search option through which the records
of the customers and the buses can be known easily with the same above options. After the
ticket is booked, one should be able to print the ticket, including the details like age, name,
Date and time for which the ticket is booked and as well the destination and Starting locations
and the charges for the ticket including the taxes. The application alone should be able to
calculate the payments as per the age criteria and the distance. Also it has to be updated in the
site.
Note :
 To book the ticket or to fetch the details (Search and Enquiry) first they need to
Login and only then they will be able to perform such actions.
 This application is solely for the booking department to book the tickets and is
purely maintained by them. It is not applicable for the customers and they
(customers) cannot book the tickets online by themselves.
 The Admin maintains the list of the buses and as well the Employees which
not be accessed by the Employee.
Review: 2 Red Bus India
| Page |21
Description:
Bus ticket booking system red bus from (India) helps me to primary knowledge about bus
ticket booking system. Its big system there are using automated system to bus ticket and
global for every user not only user but also business owner to maintain their bus business
.There are using different module seat booking module ,departure configuration module
counter module station module and login module payment module for counter head and
super admin and also track personal information. Red bus India connected the whole India
and everyday 1.5crore people using this system
2.4 Customers’ Requirements
The tactics that are used to elicited requirements are as follows:
 Interviewing :This Bus Ticket booking system some collected requirements from
Bus counter head .Major requirements collect from interviewing of counter master I
have visited Motlab Express poribahan in Gulistan name of counter master Sajib
Ahmed there are not using automated system to track departure information and seats
and also total transaction information of daily and weekly monthly and yearly there
are using analog system just like as whole things are recorded in paper documents and
when seats are booked they confirm by other counter by phone and seats are booked by
user by phone or physically .Everyday they cannot follow to departure configure for
ascending orders and they cannot stored user information but manually it’s really hard
to specific details of bus seats passengers and total revenue
| Page |22
 Observation: Some of requirements collected from our observation different type
exiting system
 Brain Storming: Some of collected in our analysis of reading and self-study
 Supervisor feedback: Some requirements are selected by analysis requirements and
weekly meeting with project supervisor Mr. Kaushik Sarkar, Lecturer Department of
Software Engineering.
| Page |23
CHAPTER 3
Analysis
3.1Introduction
The analysis phase defines the requirements of the system, independent of how these
requirements will be accomplished. This phase defines the problem that the customer is
trying to solve. The deliverable result at the end of this phase is a requirement document.
Ideally, this document states in a clear and precise fashion what is to be built. This analysis
represents the ``what'' phase. The requirement document tries to capture the requirements
from the customer's perspective by defining goals and interactions at a level removed from
the implementation details.
The goal of system analysis is to determine where the problem is, in an attempt to fix the
system. This step involves breaking down the system in different pieces to analyze the
situation, analyzing project goals, breaking down what needs to be created and attempting to
engage users so that definite requirements can be defined. The termination step of
requirement collection the next step is analysis on requirement .In this stage Software
developers works with customers and system end user and find out about what services the
system should provide, the required performance of the system, hardware constraints, defines
project goals into defined functions and operation of the intended application. It analyzes
end-user information needs.
3.1 Requirement analysis
The requirement analysis is divided into three phases. The phases are given below
| Page |24
3.1.1 Requirement Discovery
Requirements discovery includes those techniques to be used by systems analysts to identify
or extract system problems and solution requirements from the user community. Concerns are
identified through discussion with the principal stakeholders. These are typically the client
and the developer. The stakeholder principal concerns for the system. The requirements,
elicited from the set of different viewpoints will be documented and analyzed in the next
stage of the process. Requirement discovery is the process to gathering requirements about
the proposed system. The source of the information is to learn related system, identifying the
stakeholders and interviewing them. I have collected some requirements from some
following.
3.1.2: Requirement list
1. Login and Registered for super admin(head counter master)
2. Super admin only registered to counter operator (Operator) if they assign counter
master for specific counter only they can access whole system.
3. Counter master might be login for the reason to using the system and required email
and password to authentic.
4. Super admin only can whole privilege of the system if they cannot confirm any user
means (counter master) to add they cannot access the system
5. Super admin (head counter master) add bus, add counter, assign counter person such
as(counter master) , add station .
6. Departure configuration for specific date its operation only can insert Head counter
master.
7. Super admin assign seats for counter specific and only he can distribute seats among
counter master and add seats for different types of bus.
8. Counter master only he can see the details of every operation and he only can confirm
seats and bus ticket passengers.
9. User of the system (visitors)search ticket to fulfill station from and station to and
specific date for Searching bus
10. User or visitors of the system book ticket and saw ticket details which is booked and
which is non-booked, and user can book ticket to fill up the passenger info after
selecting the seats .
| Page |25
11. Confirmation message sending the system to the user via SMS and generate a pin
code to identify the owner of ticket
12. Payments system might be credit card or bkash to book ticket and got confirmation
report .
13. Admin and Operator can using this seat booking module for user if any user want to
book ticket at counter .
14. Operator and admin (head counter master) only confirm ticket if any user book ticket
via SMS.
| Page |26
3.1.3: Requirement Collection functional requirements
No. Requirement Description Priority
Programming Language
And Database Functional Requirement
Must be done in PHP
programming language and
MVC framework() and Our
SQL Database
M(Mandatory)
Register Member
1. Admin must register before
Log in the system.
M(Mandatory)
2. Admin must fill all fields in
the registration form;
otherwise the system will
show an error message.
D(Described )
Log In
3. Admin can log in entire the
system and also operator
M(Mandatory)
Search Destination
4 Administrator can search a
Destination, date, number
of passengers and select
The trip type Customer can
search a Destination, date,
number of passengers and
select the trip type.
M(Mandatory)
Payment System
5 Payment must be done with
bkash and credit card by
confirmed by admin
M(Mandatory)
Assign Counter
6 Assign Counter must be
done with admin (Head of
the counter)
D(Described)
Assign Coach
7 Assign Coach must be done
with admin (Head of the
counter)
D(describes)
Distribute Ticket
8 Distribute Ticket done by D(Described)
| Page |27
head of the counter(admin)
Manage System
9. Requirement Description Priority
Departure configuration
10 Head of the counters add
departure for specific date
H(High)
Searching Departure
11 Normal user and any type of
user can search bus fill the
form (User interface)and also
operator can action this
operation
D(Described)
12 Normal user (any type of
user)can book ticket by
choosing seats .Operator
admin can seat book if any
user go to book ticket in ticket
counter
H(High)
3.1.4: Collected Non –Functional Requirements
No Requirement Description Priority
Reliability Issues
If the system has been
crashed, it should not be more
than 20 Minutes and 24 hours
M(Mandatory)
Usability issues
If the system has been
crashed, it should not be more
than 20 Minutes and 24 hours
M(Mandatory)
Security issues
Only Administrator will be M(Mandatory)
| Page |28
able to enter the system to
make maintenance
Performance
The system must have a high
speed of manipulation data
and reply to the user request
M(Mandatory)
OS
Support all OS Windows
7,8,Vista
D(described)
3.2 Requirement analysis
3.2.1: Introduction
The below subsections is the Software Requirement Specification (SRS) document and it
provides an overview of the entire system.
3.2.2 Purpose
The System Requirements Specification (SRS) will provide a detailed description of
the requirements for the Automated Bus Ticket Booking System. This SRS will allow
for a complete understanding of what is needed for Automated Bus Ticket Booking
System. The clear understanding of the Automated Bus Ticket Booking System and
its’ functionality will allow for the correct software to be developed for the end user
and thus will be used for the development of the future stages of the project. This SRS
will also provide the foundation for the project. From this SRS, the Automated Bus
Ticket Booking System can be designed, constructed, and finally tested .This SRS
will be used by the software engineers constructing the Automated Bus Ticket
Booking System and the Bus end users. The software engineers will use the SRS so
that to fully understand the expectations of this Automated Process of Bus Ticket
Booking System to construct the appropriate software. The Automated Bus Ticket
Booking System end users will be able to use this SRS as a “test” to see if the
software engineers will be constructing the system to their expectations. If it is not to
| Page |29
their expectations then the end users can specify their choice and the software
engineers will change the SRS to fit the end users’ needs.
3.2.3 Scope
The system product to be produced is a Automated Bus Ticket Booking System which will
automate the major Bus operations. The first subsystem is a Bus Reservation and as well as
advance Booking System to keep tracks of reservations and seats availability. The second
subsystem is the Tracking and Selling tickets System that charges the current journey. The
third subsystem is a General Management Services and Automated Tasks System which
generates reports to audit all bus operations and allows modification of subsystem
information. These three subsystems’ functionality will be described in detail in section 2-
Overall Description.
There are two accounts for the Automated Bus Ticket Booking System the end users are the
Bus staff (customer service representative) and administrator the Bus managers. Both user
types can access the Reservation and Booking System and the ticket Tracking and Selling
System. The General Management System will be restricted to management users.
3.2.4 Definition of Acronyms and Abbreviations
SRS –Systems Requirements Specification
ABTBS- Automated Bus Ticket Booking System
End users – The people who will be actually using the system
| Page |30
3.3.1 Software Requirement Specification (Functional Requirement)
Module# Requirement Id Requirement Title Priority
Admin
Operator(Counter
master) Registration
&Login
Functional
Requirement__1
Registration and login
super admin accounts and
described the function
requirement option
Mandatory
Functional
Requirement__2
Operator (Counter master
must be registration) for
the reason of using the
systems
Function
Requirement__3
Login for counter master
described the requirement
list
Departure
Configuration
Functional
Requirement__4
Add Coach with the name
of coach and also given
seat details
Mandatory
Functional
Requirement__5
Add Station by the admin
Functional
Requirement__6
Add Seat for specific bus
Functional
Requirement__7
Assign seat for specific
counter
Functional Departure configuration for
specific date
| Page |31
Requirement__8
Search Destination Functional
Requirement__9
Search the bus destination
for specific bus by the user
and the counter master
Mandatory
Search Departure Functional
Requirement__10
Search departure or bus for
specific date by the system
user or counter master
Mandatory
Choosing seat Functional
Requirement__11
User can be able to choose
seat in her choose and
selected only 5 seats
Mandatory
Seat Booking Functional
Requirement__12
Admin and operator can
seat booking and also
general user can seat
booked
Mandatory
Payment &
Confirmation Report
Functional
Requirement__13
After seat booking user
must be confirm bus fare
by the using of payment
system and admin or
counter master must be
confirm by sending SMS
and generate a pin number
to track the specific seat
booked by the user means
identification of seat
Mandatory
| Page |32
3.3.2: Non Functional Requirements
Module Requirement Id Requirement Title Priority
Security Issues Non_FR1 Database Connection
close: After data use,
the database
connection will close
Mandatory
Reliability Issues Non_FR2 If the system has been
crashed, it should not
be more than 20
Minutes and 24 hours
Mandatory
Performance Non_FR3 The system must
have a high speed of
manipulation data and
reply to the user
request
Mandatory
OS Non_FR4 Support all OS
Windows 7,8,Vista
Described
Usability Non_FR5 Usable any
environments
Described
User Interface Non_FR6 Eye set able user
interface for this Web
Application
Described
| Page |33
3.3.3 Stakeholders
I. Internal Stakeholder
a. Administrator(Head Counter)
b. Operator(Counter Master)
c. System Analyst
d. Database Administrator (DBA)
 External Stakeholder
a. Customers/Visitors
b. Bus Agencies
i. Owner
ii. Employee
iii. Payment third party
3.3.4: Software Development Plan
Software Development Plan is a comprehensive that includes all information required to
manage the project. The purpose of SDP is to describes the approach to development of
software and generate Top-level Plan.
3.3.5: Overview
| Page |34
3.3.5.1 Proposed System and Its benefits
The proposed system intends to make a good document by an automated system that fulfills
the minimal deliverable requirements of a software document. Generally the user of the
software are Bus owner to maintain business and not only business owner of bus area but also
general user and customers who are using to go anywhere by using bus .The system provides
the opportunity of general people to book ticket virtually remotely anywhere any location in
our country. Admin of the system provides bus and add station add user means operator of
the system and departure configure for specific date ,and also seat distributes among the
counter master. The main advantage of the system any type of user can search for bus and
book ticket in his/her choice.
3.3.5.2: Features Of the system
 Registration
 Login
 Logout
 Add bus ,station ,Departure configuration for specific date
 Searching bus given specific date
 Searching location of bus starting to starting from
 Seat choosing system
 Seat booking interface to user to know bus seat and book ticket also
 Payments system
 Confirmation system
 Tracking passengers by using phone number given by user
 Ticket cancelling system
| Page |35
3.3.5.3Process Model
A process model is an abstract representation of a software process. Each process model
represents a process from a particular perspective, and thus provides only partial information
about that process. Some common process models are
 The waterfall model
 Evolutionary development
 Component-based software engineering
 Iterative development process
Waterfall Model
This takes the fundamental process activities of specification, development, validation
and evolution and represents as separate phases such as requirement analysis and
specification, software design, implementation, testing and Operation and maintenance.
(Source: Software Engineering 8th edition – IAN Sommerville
The proposed software is designed using Waterfall Model but, allows minimal
overlapping between phases Reference: http://software-development-
templates.tumblr.com/
Figure: Software Life Cycle
Requirement gathering
Analysis
Design
Implementing &Coding
Testing
Deployments & Maintenance
| Page |36
3.3.5.4 Work Schedule
The proposed system is implemented within 5 months. System development works are
performed in each week. After weekly meeting works are done step by step. To make quality
software within defined scope the works are done and repeated correction. The total project
was completed in six phases are as follows:
 Introduction
 Pre-Analysis
 Analysis
 Design
 Coding
 Testing
| Page |37
Chapter 4
System Design
4.1Introduction
Software design is a process to transform user requirements into some suitable form, which
helps the programmer in software coding and implementation.
For assessing user requirements, an SRS (Software Requirement Specification) document is
created whereas for coding and implementation, there is a need of more specific and detailed
requirements in software terms. The output of this process can directly be used into
implementation in programming languages.
Software design is the first step in SDLC (Software Design Life Cycle), which moves the
concentration from problem domain to solution domain. It tries to specify how to fulfill the
requirements mentioned in SRS.
Software design is the process of implementing software solutions to one or more set of
problems. The software design (SDS) document contains a statement of the design of
inventory management system. The design contains an explanation of a way to carry out each
of the product specification written in the Software Requirement Specification (SRS).The
design will serve as a guide to the developer. The SDS also shows how the program is
separated into modules, how the modules interact with each other, and how users see the
program.
4.2: Purpose
This document is designed to be a reference for any person wishing to implement, or any
persons interested in the design architecture of automated bus ticket booking system. This
document describes each application’s architecture of design interface of logical interface and
physical interface design. This design will detail the implementation of the requirements as
defined in the automated bus ticket booking system specification design.
| Page |38
4.3: System Overflow
This document includes but is not limited to the following information for Automated Bus
Ticket Booking system; system overview, design consideration, architectural strategies,
system architecture, high level design detailed level design .High level design context
diagram and use case diagram and detailed level design consist of data flow diagram level 1
and sequence diagram Entity relationship diagram.
4.4: SYSTEM SCOPE
Main Inputs
i. Passenger name
ii. Seat Booking passengers id identify passenger who booked the seats its phone number
iii. Passenger address, phone number, Gender
iv. Departure date and time for passenger
Outputs
i. Seat Booking Interface
ii. Departure configuration details
iii. Add new user means(Counter master)
Software will be designed to allow users perform following functions
i. Log on either as System administrator or as a System user.
ii. Add a passenger into system.
iii. Update or delete record information depending on the user authorization level.
| Page |39
4.5: Design Map
The system design will take the following mapping when ready
Figure: Design map
| Page |40
4.6: Use Case
UML Use Case Diagrams can be used to describe the functionality of a system in a horizontal
way. That is, rather than merely representing the details of individual features of your system,
UCDs can be used to show all of its available functionality. It is important to note, though,
that UCDs are fundamentally different from sequence diagrams or flow charts because they
do not make any attempt to represent the order or number of times that the systems actions
and sub-actions should be executed.
Figure: Use case diagram for Admin and Operator
| Page |41
4.7: Use case Diagram for operator and Visitors /Passenger
Use case diagram of Operator (Counter master) and General user means Registered user and
non-Registered user
Figure: Use Case diagram
| Page |42
4.8: Context Diagram
We usually begin withdrawing a context diagram, a simple representation of the whole
system. To elaborate further from that, we drill down to a level 1 diagram with additional
information about the major functions of the system. This could continue to evolve to become
a level 2 diagram when further analysis is required. Progression to level 3, 4 and so on is
possible but anything beyond level 3 is not very common. Please bear in mind that the level
of detail asked for depends on your process change plan.
4.8.1: Context diagram (Level 0 DFD)
Figure: Context Diagram level-0
| Page |43
4.9 Class Diagram
Class diagram is UML structure diagram which shows structure of the designed system at the
level of classes and interfaces, shows their features, constraints and relationships,
generalizations, dependencies and association etc.
Figure: Class Diagram
| Page |44
4.10 ERD (Entity Relationship Diagram)
Figure: Entity Relationship Diagram
Entity-relationship (ER) diagram, a graphical representation of entities and their relationships
to each other, typically used in computing in regard to the organization of data within
databases or Information systems. An entity is a piece of data-an object or concept about
which data is stored
| Page |45
4.2.1 Categories of Table of Physical design of database table:
Database name: eticket
4.2.1.1 Table name: Bus
4.2.1.2 Table name: Counter
4.2.1.3 Table name: User
| Page |46
4.2.1.4 Table name: assign counter
4.2.1.5 Table name: Station
4.2.1.6Table name: Departure_config
4.2.1.7 Table name: Bus seats
| Page |47
4.2.1.8 Table name: Passenger
4.2.1.9 Table name: Seat Booking
| Page |48
4.2.2 Sequence Diagram
Admin (Head of counter) and Operator (Specific counter master)
Figure: Sequence diagram
| Page |49
4.2.3 Sequence Diagram for General User
Figure: Sequence diagram for user.
| Page |50
4.5 Physical design
4.5 .1 Registration and login pages:
Admin and operator used their user name and password to login this system. It is the login
user interface who is star user of the system and using the Admin Dashboard fill the email
and password field.
Figure: Login Page
| Page |51
4.5.2 User Registration
User of the admin dashboard who are got privilege to access this system they might be
registered of the system. And if any user registered of the administrator of the system they
might be using register form to user of the admin panel
Figure: User Registration form
4.5.3 Bus Add
Here is the bus add interface only admin of the system add bus fill the form of bus add and
click the submit button to add the bus
Figure: Bus Add Physical design
| Page |52
4.5.4 Bus view
This is the bus view physical interface in admin dashboard operator only see the bus details
which bus is added in the main view of bus
Figure: Bus View physical Design
4.5.5 Counter Add
Here is the Counter add page and counter view page of admin only control this page
Figure: Counter Add page
| Page |53
4.5.6 Counter view page
Here is counter view physical interface
Figure: Counter view physical design
| Page |54
4.5.7 Physical Design Departure Add and View Edit page
Departure add for specific date and station configure only admin and operator control this
form and operator only see the details of departure which bus are added which station
Figure: Departure configures and view Physical design
| Page |55
4.5.8 Departure edit page
Figure: Departure edit physical design
| Page |56
4.5.9 Passenger view page
Passenger who are request to book ticket their record view
Figure: Passenger view physical design
4.5.10 Physical Design User Interface
User interface general user can search bus by using this interface this is the visitors and user
interface.
Figure 4.8.10: Physical design for user interface
| Page |57
4.5.11 Physical Design
User and visitors any type of user searches the bus by fill the form of station from and to and
specific date.
Figure: Physical design for user searching bus interface
| Page |58
4.5.12 Physical Design Seat Booking Interface
Bus seat booking interface and ticket confirmation form of user can select seat and fill the
form to confirm seat and ticket for bus
Figure: Physical design bus seat booking interface
| Page |59
4.5.13 Physical design Seat and passengers interface
User select seat and confirm by request to the counter master or head of counter book seat or
ticket for bus fill the every filed of the passenger to sending request for ticket
Figure: Physical design for passenger and seat booking interface
| Page |60
Chapter 5
System Implementation
5.1.1 Introduction
The system has been developed using object oriented concepts and PHP (MVC Framework)
back hand database using MySQL
5.1.2 Purpose
The document contains overviews of system, description of the major tasks that are required
to be done before the system is put into use.
5.1.3 System Description
This Automated Bus Ticket Booking Systems will manage all bus booking activities and seat
booking, it will cover all passenger details and maintaining all record about the bus
information. This will be facilitated in the database which will preserve their record for future
reference. The system will processes data into useful information.
5.1.4 System Organization
In this section it provides a brief description of system components necessary to the
implementation of the system. The system
The main functions that will be carried out by the application will be
1. No need sign up passengers to using the system
2. Tracking user by Mobile number
3. Seat Booking and
4. Canceling seats (before book confirm)
5. Assigning User the available seats
6. Keeping booking record
7. Generating reports
8. Generating phone number which will be used for passenger identification
| Page |61
5.1.5 Hardware & Software Specifications
 Hardware Requirements
 PROCESSOR: Core i 3 or above
 RAM: 2GB or above
 Cache Memory: 2MB or above
 Hard Drive : 50GB or above
 Printer e.g. lase
 Window or window 7
Software Requirements
Tools-
 IDE: Adobe Dreamweaver CS6
 Database: MySQL
 Editor: Sublime Text
 Technology
 UI/UIX: HTML5, CCS, Bootstrap, JavaScript, jQuery
 Web-Technology: PHP
 Back-End: MySQL
 Web-Server: XAMPP Server
| Page |62
5.1.6 Technical Description
Automated bus ticket booking system used a number PHP files and database MySQL. In the
system database related files are in DAL folder and controller are using to control the pages
who are control the page admin or operator and every PHP pages must be include in
configuration files and page are view in the admin or operator folders and visitors of the
system view in view folder and client site language JavaScript and JQuery to reduced
pressure to database access to modify information and seat booking purpose To improve
coding efficiency and CSS file are used. The domain of the system is host in the directory
Directory and PHP files description are given below
Main Directories: 01-E-TicketBookingSystem
Sub Directories:
DAL (Data Access Layer)
 DBConnect.php
 dalUser.php
 dalStation.php
 dalSeatBooking.php
 dalPassenger.php
 dalDepartureConfig.php
 dalCounter.php
 dalBusSeats.php
 dalBus.php
 dalAssignSeats.php
 dalAssignCounterPerson.php
| Page |63
Admin or Operator operation
 addUser.php
 assignCounterPerson.php
 assignseatsAdd.php
 busAdd.php
 busEdit.php
 busseatsAdd.php
 counterAdd.php
 departureconfigAdd.php
 departureconfigDel.php
 departureconfigEdit
 passengerAdd.php
 stationAdd.php
Controller (Pages Control)
 Config.php
 controlPages.php
 functions.php
 Home or View operation
 Home.php
 seat_booking.php
5.1.7 DBConnect.php
<?php
class DB{
public $err;
protected function Connect(){
mysql_connect ("localhost", "root", "");
mysql_select_db("eticket");
}
}
?>
Figure: Database connectivity
| Page |64
5.1.8 Controller:
controlPages.php
<?php
if(isset($_GET['p'])){
include_once("view/".$_GET['p'].".php");
}
else if(isset($_GET['u'])){
include_once("user/".$_GET['u'].".php");
}else{
include_once("view/home" .".php" );
}
?>
Figure: Controller page control
Config.php
<?php
session_start();
include_once("../DAL/DBConnect.php");
include_once("../DAL/dalBus.php");
include_once("../DAL/dalUser.php");
include_once("../DAL/dalCounter.php");
include_once("../DAL/dalAssignCounterPerson.php");
include_once("../DAL/dalStation.php");
| Page |65
include_once("../DAL/dalDepartureConfig.php");
include_once("../DAL/dalBusSeats.php");
include_once("../DAL/dalAssignSeats.php");
include_once("../DAL/dalPassenger.php");
include_once("../Controller/functions.php");
?>
Figure: configuration page
5.1.9 Admin Login and Registration:
<?php
$msg = "";
if(isset($_POST["login"])){
$user = new User();
$user->Email = $_POST["email"];
$user->Password = $_POST["password"];
if($user->Login()){
$_SESSION["LoginId"] = $user->Id;
Redirect("../AdminDashboard");
}else{
$msg = " &nbsp;&nbsp;&nbsp;Login Error";
}
}
?>
| Page |66
Login Form:
In this login form when user enter email and password and go through the login
button if they are registered of the system they can use the system can get admin
privileges
5.1.10 Departure Add: Some of code
<?php
$departure = new DepartureConfig();
$counter = new Counter();
$bus = new Bus();
$station = new Station();
$msg ="";
| Page |67
$err =0;
if(isset($_POST["sub"])){
//echo $_POST["via_counters_array"];
if($err == 0){
$date = date("Y-m-d",strtotime($_POST["date"]));
$departure->BusId = $_POST["busid"];
$departure->CoachNumber = $_POST["coachno"];
$departure->StationFrom = $_POST['station_from'];
$departure->StationTo = $_POST["station_to"];
$departure->BusFare = $_POST["busfare"];
$departure->ViaCountersArray = $_POST["via_counters_array"];
$departure->ViaLocation = $_POST["vialocation"];
$departure->JourneyType = $_POST["journey_type"];
$departure->StartTime = $_POST["starttime"];
$departure->EndTime = $_POST["endtime"];
$departure->Date = $date;
if($departure->Insert()){
$msg ="Insert Suceessfully";
}else{
$msg="Failed";
}
}//end of error brace
}//end of amin brace
?>
| Page |68
Departure view
<table class="mws-table" id="data-table">
<tr class="heading">
<th>Bus Name</th>
<th>Coach Number</th>
<th>Starting From</th>
<th>Starting To</th>
<th>Bus Fare</th>
<th>Counter Name</th>
<th>Location</th>
<th>Journey Type</th>
<th>Start Time</th>
<th>End Time</th>
<th>Assaign Date</th>
<th>Edit</th>
<th>Delete</th>
</tr>
<?php
$r = $departure->Select();
$totalRow = count($r);
if($r != ""){
for($i=0; $i<count($r); $i++){
?>
<tr>
<td><?php echo $r[$i]["BusName"]; ?></td>
<td><?php echo $r[$i]["CoachNo"]; ?></td>
<td><?php echo $r[$i]["StationFrom"]; ?></td>
<td><?php echo $r[$i]["StationTo"]; ?></td>
<td><?php echo $r[$i]["BusFare"]; ?></td>
<td><?php echo $r[$i]["via_counters_array"]; ?></td>
<td><?php echo $r[$i]["Location"]; ?></td>
| Page |69
<td><?php echo $r[$i]["JourneyType"]; ?></td>
<td><?php echo $r[$i]["TimeStart"]; ?></td>
<td><?php echo $r[$i]["EndTime"]; ?></td>
<td><?php echo $r[$i]["Date"]; ?></td>
<td><a title="Edit" href="?a=departureconfigEdit&id=<?php echo $r[$i]["id"]; ?>"><i
class="icon-edit"></i></a></td>
<td><a title="Delete" href="?a=departureconfigDel&id=<?php echo $r[$i][0]; ?>"><i
class="icon-remove"></i></a></td>
</tr>
<?php }
}
?>
</table>
| Page |70
5.1.10.1 Add Departure Configuration and view departure
Basic insertion input instruction of this system is described with code A method is mapped
to submit button that pass data to Data Access Layer and then the Data Access Layer
executes the query to insert into database and also execute the query of view of table joining
multiple table to view data from (DAL) using select statement . In this code of insert and
view of departure major operation of our system some of codes here
Figure: Departure adds and view basic inserting and view
| Page |71
5.1.11 Departure Edit
In this code are edit of departure when user admin want to update any type of information
they can operate the operation
<?php
$departure = new DepartureConfig();
$counter = new Counter();
$bus = new Bus();
$station = new Station();
$msg ="";
$err =0;
if(isset($_POST["update"])){
if($err == 0){
$departure->Id = $_POST["id"];
$departure->BusId = $_POST["busid"];
$departure->CoachNumber = $_POST["coachno"];
$departure->StationFrom = $_POST['station_from'];
$departure->StationTo = $_POST["busfare"];
$departure->ViaCountersArray = $_POST["via_counters_array"];
$departure->ViaLocation = $_POST["vialocation"];
$departure->JourneyType = $_POST["journey_type"];
$departure->Date = $date;
$departure->StartTime = $_POST["starttime"];
$departure->EndTime = $_POST["endtime"];
if($departure->Update()){
$msg ="Update Suceessfully";
}else{
$msg="Failed";
}
}//end of error brac
}//end of brace
| Page |72
$departure->Id = $_GET["id"];
$departure->SelectById();
?>
Departure Edit
Basic Editing instruction of this system is described with code A method is mapped to
Update button that pass data to Data Access Layer and then the Data Access Layer executes
the query to update into database and also execute the query and retrieve data from database
with edit purpose if the data are updated then data go through the database
Figure: Updating implementation departure with update basic codes
| Page |73
5.1.12 User Interface or Visitors Interface
Following are some of code of user interface and user physical interface are given last of
home .php code
<?php
$station = new Station();
$departure_config = new DepartureConfig();
$bus = new Bus();
?>
<?php
$date = date("m/d/Y");
if(isset($_POST["search_bus"])){
$search_date = $_POST["start"];
f($search_date<$date){
echo "Invalid date";
return false;
}
$departure_config->StationFrom = $_POST["station_from"];
$departure_config->StationTo = $_POST["station_to"];
$departure_config->Date = date("Y-m-d", strtotime($_POST["start"]));
$search_data = $departure_config->Select();
//echo "Station From: ".."<br/>";
//echo "Station To: ".$_POST["station_to"]."<br/>";
//echo "Departure Date: ".$_POST["start"]."<br/>";
if($search_data != ""){
?>
| Page |74
<table class="table table-bordered">
<tr>
<th>Bus Name</th>
<th>Coach No</th>
<th>Station From</th>
<th>Station To</th>
<th>Bus Fare</th>
<th>Departure Date</th>
<th>Journey Type</th>
<th>Total Seats</th>
<th>Booking</th>
</tr>
<?php
for($i=0; $i<count($search_data); $i++){
echo "<tr>";
echo "<td>".$search_data[$i]["BusName"]."</td>";
echo "<td>".$search_data[$i]["CoachNo"]."</td>";
echo "<td>".$search_data[$i]["StationFrom"]."</td>";
echo "<td>".$search_data[$i]["StationTo"]."</td>";
echo "<td>".$search_data[$i]["BusFare"]."</td>";
echo "<td>".$search_data[$i]["Date"]."</td>";
echo "<td>".$search_data[$i]["JourneyType"]."</td>";
echo "<td>".$search_data[$i]["seat"]."</td>";
echo "<td><a class='btn btn-sm btn-success'
href='?p=seat_booking&c_id=".$search_data[$i]["id"]."'>Select</a></td>";
echo "</tr>";
?>
</table>
<?php }else{
echo "No search results found on : ".$_POST["start"];
| Page |75
echo "<br/>";
}
?>
Physical Interface
The user interface design for bus searching and up of the page here is searching operation
bus which are added for this days .Basic searching instruction of this system is described
with code A method is mapped to search button that pass data to Data Access Layer and then
the Data Access Layer executes the query to select query into database and also execute the
query of search of table joining multiple table to view data from (DAL) using select
statement in this code of search and view of bus.
Figure: Bus searching basic code and design here
| Page |76
5.1.13 Seat Booking Interface
Basic seat booking instruction of this system is described with code A method is mapped to
submit button that pass data to Data Access Layer and then the Data Access Layer executes
the query and pass data to insert into passenger table and departure table and seat booking
<?php
$config_info = new DepartureConfig();
$station = new Station();
$seat_booking = new SeatBooking();
$config_info->Id = $_GET["c_id"];
$row = $config_info->Select();
if(count($row)>1){
Redirect("?p=home");
}
$bus_seats = new BusSeats();
$bus_seats_rows = $bus_seats->Select($row[0]["seat"]);
$current_date = date("Y-m-d");
if($row[0]["Date"]<$current_date){
Redirect("?p=home");
}
?>
<div class="row" id="meee">
<div>
<div class="bg-front full-height row">
<div class="container rel">
<div class="search-tabs search-tabs-bg" style="margin-top:10px">
<div class="row">
<div class="col-lg-12">
| Page |77
Total Seat: <?php echo $row[0]["seat"]; ?>|| From: <?php echo
$row[0]["StationFrom"]; ?> || To: <?php echo $row[0]["StationTo"]; ?>
|| Departure Date: <?php echo $row[0]["Date"]; ?> || Time: <?php echo
$row[0]["TimeStart"]; ?>
|| <span id="busFare"><?php echo $row[0]["BusFare"]; ?></span>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<!--Seat Booking Section Work-->
<div class="main-container">
<div
id="seat_container" class="bus-container-col-4 shadow radius padding-bottom">
<div class="wheel">
<img
src="UiAssets/ticketbooking/icon/wheel.png" />
</div>
<div class="seat-
container margin-bottom" id="bus_seats">
<?php
$j=0;
$k = 0;
for($i=0; $i<count($bus_seats_rows); $i++){
$j++;
$seat_booking->DepartureConfigId = $_GET["c_id"];
$seat_booking->SeatsArray = $bus_seats_rows[$i][1];
$checkBooking = $seat_booking->CheckExist();
| Page |78
//echo count($checkBooking);
//if()
if($j <= 3){
if($j%3==0){
if($checkBooking>0){
echo '<span class="seats space booked '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>';
}else{
echo '<span class="seats space '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>';
}
}else{
if($checkBooking>0){
echo '<span class="seats booked
'.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; }else{
echo '<span class="seats '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>';
}
}
}else{
$k++;
if($k%4 == 0){
if($checkBooking>0){
echo '<span class="seats space booked '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>';
}else{
echo '<span class="seats space
'.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; }
}else{
| Page |79
if($checkBooking>0){
echo '<span class="seats booked
'.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>';
}else{
echo '<span class="seats '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>';
}
}
}
}
?>
</div>
</div>
<div class="bus-container-col-4 margin-left">
<?php
$passenger = new Passenger();
$seat_booking = new SeatBooking();
if(isset($_POST["sub"])){
$seats_array = $_POST["seats_array"];
$full_name = $_POST["full_name"];
$email = $_POST["email"];
| Page |80
$mobile = $_POST["mobile"];
gender = $_POST["gender"];
$passenger->Mobile = $mobile;
$passenger->SelectByMobile();
$seat_booking->DepartureConfigId = $_GET["c_id"];
$seat_booking->SeatsArray = $seats_array;
$seat_booking->PassengerId = $passenger->Id;
$seat_booking->ConfirmedBy = 0;
$seat_booking->ConfirmationStatus = 0;
if($seat_booking->Insert()){
echo "Already Registered.. Your Booking information submitted";
}
}else{
passenger->Name = $full_name;
$passenger->Email = $email;
$passenger->SeatsArray = $seats_array;
$passenger->Mobile = $mobile;
$passenger->Gender = $gender
if($passenger->Insert()){
$passenger->SelectByMobile($mobile);
$seat_booking->DepartureConfigId = $_GET["c_id"];
seat_booking->SeatsArray = $seats_array;
$seat_booking->PassengerId = $passenger->Id;
$seat_booking->ConfirmedBy = 0;
$seat_booking->ConfirmationStatus = 0;
if($seat_booking->Insert()){
echo "Your Booking information submitted";
}
| Page |81
}
}
?>
<table class="table table-bordered" id="ticket_info">
<tr>
<th>Seat</th>
<th>Fare</th>
<th>Remove</th>
</tr>
</table>
<span class="col-lg-12">Total Fare: <span id="total_fare"></span></span>
<div class="col-lg-12">
<form action="" method="post">
<div class="form-group">
<input type="text" name="seats_array" class="form-control" id="seats_array"
placeholder="Enter email">
</div>
<div class="form-group">
<input type="text" class="form-control" name="full_name" id="full_name"
placeholder="Enter full name">
<div>
<div class="form-group">
<input type="text" name="email" class="form-control" id="email" placeholder="Enter
email">
<div>
<div class="form-group">
<input type="text" class="form-control" id="mobile" name="mobile" placeholder="Enter
mobile">
</div>
<div class="form-group">
| Page |82
<select name="gender" class="form-control">
<option>Select Gender</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
</div>
<button type="submit" name="sub" class="btn btn-default">Submit</button>
</form>
</div>
</div>
</div>
<!--End Seat Booking Section Work-->
</div>
</div>
</div>
</div>
</div>
</div>
//client site programming using jQuery to seat booking purpose here is code
<script>
$(document).on("click",".seats",function(){
var this_seat = $(this);
var selected_seat = $(this).text();
var fare = $("#busFare").text();
var new_row = "<tr class='new_row'><td class='seat_taken'>"+selected_seat+"</td><td>"+fare+"</td><td><i
class='fa fa-times remove'></i></td></tr>";
| Page |83
var check_exist = 0;
var count_select = 0;
$("#ticket_info tr").each(function(index, element) {
count_select++;
var exist_seat = $(this).children("td").eq(0).text();
if(selected_seat == exist_seat){
check_exist++;
}
})
if(count_select>5){
alert("You have selected maximum seats");
return false;
}
if($(this).hasClass("booked")){
alert("The seat is already booked");
return false;
}
if(check_exist > 0){
alert("You already have selected this seat");
}else{
$this_seat.addClass("selected_seat");
$("#ticket_info").append(new_row);
var total_fare = 0;
var seats = "";
$("#ticket_info tr").each(function(){
if($(this).hasClass("new_row")){
total_fare += parseInt($(this).find("td").eq(1).text());
seats += $(this).find("td").eq(0).text()+",";
}
| Page |84
});
$("#total_fare").text(total_fare);
$("#seats_array").val(seats);
}
});
$(document).on("click",".remove",function(){
$(this).parents("tr").remove();
var remove_selection = $(this).parents("tr").children(".seat_taken").text();
$(".seats").each(function(index, element) {
var seat = $(this);
if(remove_selection == $(this).text()){
seat.removeClass("selected_seat");
}
});
var total_fare = 0;
$("#ticket_info tr").each(function(){
if($(this).hasClass("new_row")){
total_fare += parseInt($(this).find("td").eq(1).text());
}
});
$("#total_fare").text(total_fare);
});
/****************************Loading************************************/
setInterval(function(){
$("#seat_container").load(location.href + " #seat_container");
$("#ticket_info tr").each(function(){
var obj = $(this);
| Page |85
if($(this).hasClass("new_row")){
var current_seat = $(this).find("td").eq(0).text();
if($("."+current_seat).hasClass("booked")){
var bus_fare = parseInt($("#total_fare").text()) -
parseInt($("#busFare").text());
obj.remove();
$("#total_fare").html(bus_fare);
var new_seats_array =
$("#seats_array").val().replace(current_seat+",", "");
$("#seats_array").val(new_seats_array);
}
$("."+current_seat).addClass("selected_seat");
}
});
console.log("Load ++ ");
}, 1000)
</script>
| Page |86
Seat Booking
Seat booking user interface where user select seat and fulfill form to confirm ticket of bus and
seat of bus and code are upper of the page
Figure: Seat booking some of code and implementation here
| Page |87
CHAPTER 6
Testing
6.1 Introduction
This is aimed at identifying and correcting errors. The major objective of this activity is to
ensure that the processing done by the application is correct and meets the objectives of the
organization. Test plan aids in effective and systematic testing of the system and it aims at
checking the errors of omission and commission that hinders the realization of the objectives.
It takes the bottom up testing approach.
6.2 Importance of testing
1.Testing is used to find program errors on the system.
2.It is used to find undercover errors in a program through the use of defect testing.
3.Testing is also used to uncover new types of errors associated with new inventions
and technology
4.Testing aims at assuring quality by enforcing consistency and reliability.
5.It is used for both validation and verification to develop a product that meets user
requirement.
6.It is used to identify the best component combination for effective error identification.
| Page |88
6.3 Test Plan Strategy
The importance of the test plan is to show how the system is to be tested and also gives
precise procedures to be followed during the test plan. The test date is identified, what is
being tested and the expected output as well as the actual input. Test plan is one of the
standard documents that should be produced in most software engineering projects. If the
project does not have any test plan this means that the software produced is of low quality.
This may not be acceptable to the user since it will not satisfy their needs. The test plan
should be written as soon as you have identified the requirements. The system will be tested
with sample data to see how it would handle input and output functions as well as extreme
data or conditions to determine the system behavior in overloaded situation which will
directly slow the system that behaves in failure or extreme situations.
 Unit testing
 Module testing
 System testing
 Integration testing.
6.3.1Unit testing
In this type of testing, the smallest testable parts of the system I.e. units are individually
tested and independently examined for correct functionality. This type of testing involves
both the positive testing and negative testing. This is important so as to make sure that the
system functions properly when used both correctly and incorrectly. In this case, the forms in
visual basic as well as the tables for the database will be tested individually to ensure that
they are compatible. This also applies to the operating system and the software applications.
6.3.2Integration testing
This is where two or more related programs are tested. The test will involve two types of
approaches i.e. the bottom-up approach that begins with the simplest task to the most
complex part .e.g. from passenger information table to the database and top-down approach
that tests the system from the complex task to the simplest unit of all. We seek to verify that
all the hardware function together without conflicting.
| Page |89
All the forms linked to the database should be connected well without any issue. Ensure that
all the programs work well to avoid interruption and there is no issue whatsoever affecting
database update.
6.3.3System testing
I this type of testing we shall test the entire system for functionality to ensure that the system
can process and handle large volumes of data quickly and efficiently. The test will be done
with a sample of some users who will use the system under test in its actual capability
environment. Possible problems are corrected before really conversion.
6.3.4Acceptance testing
This test will complete the formal testing process where all the users and the administrator
will use the system so as they get familiar with it. The users test the system before it is rolled
out to be fully used.
i. Beta testing-Carried out at bus company premise. This involve delivering the system
to number of potential clients to use the system and report back to developer key
malfunctions with an understanding that the product is still being tested.
ii. Alpha testing-It takes place at the developer site. It is the final testing before the
software is about to be released to the hospital for use.
6.3.5Recovery testing
Recovery testing will force the system to fail in various ways and try to verify that the
recovery is efficiently done or performed. It is vital that all the data is recovered after the
system failure and no corruption of data.
| Page |90
6.4 Test Case
A test case is a set of conditions or variables under which a tester will determine whether a
system under test satisfies requirements or works correctly.
The process of developing test cases can also help find problems in the requirements or
design of an application.
 Ensure that logical decisions on their true and false sides.
 Practice all logical decisions on their true and false sides.
 Execute all loops at their boundaries and within their operational bounds.
 Exercise internal data structure to assure their validity.
6.4.1 User Registration Module Test Case
 Admin (Head Counter master) Operator Registration module (Counter master)
Test Case Unit Test
Test Case Id.1 Module Name: Registration
Module :Counter master and Head of counter
master Sign Up
Test Designed :Farhad Hossain & Abdur
Rahman Sabuj
Test Priority: (Low/Medium/High): High Test Date:18.12.2014
Test Title: User Registration and valid info Test Executed By: Farhad Hossain
Description: Test the system user registration
page
Test Executed Date:28.12.2014
Condition: The user Redirect to user registration page and input the required filled.
And click on the submit button.
| Page |91
Registration module Unit Test 1:
Step Test step Test Data Code
Module
Expected
result
Actual
Result
Pass/
Fail
Notes
1 Redirect to
user
registration
page
Click to
Registration link
addUser.php
User should
be registered
successfully
and the
email
address is
the login id.
Redirect to
Dashborad
Pass
2 Input Full
Name
Sabuj
3 Input
Email
sabuj@gmail.com
4 Input
Password
********
5 Input
information
Khulna
6 Input User
Type
Counter
operator
7 Click to
Submit
Button
| Page |92
Registration module 2:
Step Test step Test Data Code
Module
Expected
result
Actual
Result
Pass/
Fail
Notes
1 Redirect to
user
registration
page
Click to Registration
link
addUser.php
User can
not
registered
successfully
cause
password
erre.
Redirect to
Adduser.php
page
Fail
2 Input Full
Name
Evans
3 Input
Email
sabujas@gmail.com
4 Input
Password
****
5 Input
information
Khulna
6 Input User
Type
Counter operator
7 Click to
Submit
Button
Registration module Unit Test 3:
Step Test step Test Data Code
Module
Expected
result
Actual
Result
Pass/
Fail
Notes
1 Redirect to
user
registration
page
Click to
Registration link
| Page |93
2 Input Full
Name
Shakib
addUser.php
Registered
successfully
done
Redirect to
Adduser
page and
notify sign
up
sucessfully
Pass
3 Input
Email
sakib@gmail.com
4 Input
Password
********
5 Input
information
Khulna
6 Input User
Type
Counter
operator
7 Click to
Submit
Button
6.4.2 User Login Module:
 User Login
Test Case Id.2 Module Name: Departure Configuration
Module : Log in Module Test Designed :Farhad Hossain & Abdur
Rahman Sabuj
Test Priority: (Low/Medium/High): High Test Date:24.12.2014
Test Title: Log in valid email and password
info
Test Executed By: Farhad Hossain &Abdur
Rahman Sabuj
Description: Test the login add module Test Executed Date:05.1.2015
| Page |94
Pre-Condition: The user Redirect to user Login page and input the email and password
required filled. And click on the Login button
Login module Unit test1:
Step Test step Test Data Code
Module
Expected
result
Actual
Result
Pass/
Fail
Notes
1 Redirect
to
index.php
Click to login
button
login.php If user give
valid email
and
password
they might
be login the
system
Pass
2 Input
Email
admin@gmail.com
Input
password
********
3 Log in
Button
Fixed-Condition: The user Redirect to user Login page and input the email and password
required filled user session must be recorded in browser until user destroy the session logut
.php
Login module Unit test 2:
| Page |95
Step Test step Test Data Code
Module
Expected
result
Actual
Result
Pass/
Fail
Notes
1 Redirect
to
index.php
Click to login
button
login.php If user give
invalid
email and
password
must be 8
character
and email
not valid
and not
registered
they might
be redirect
login page
Redirect
log in
page
Fail
2 Input
Email
admins@gmail.com
Input
password
*****
3 Log in
Button
Fixed-Condition: The user Redirect to user Login page and invalid input the email
and password required
| Page |96
Login module Unit test 3:
Step Test step Test Data Code
Module
Expected
result
Actual
Result
Pass/
Fail
Notes
1 Redirect
to
index.php
Click to login
button
login.php User login
the system
cause email
and
password
are valid
Redirect
Admin
Dashboard
pass
2 Input
Email
ashik@gmail.com
Input
password
********
3 Log in
Button
Fixed-Condition: The user Redirect to user admin dashboard page and valid input the
email and password.
6.4.3 Departure Configuration Module:
 Departure Add Module
Test Case Id.2 Module Name: Departure Configuration
Module : Departure Add Module Test Designed :Farhad Hossain & Abdur
Rahman Sabuj
Test Priority: (Low/Medium/High): High Test Date:21.12.2014
Test Title: Departure Add module valid info Test Executed By: Farhad Hossain &Abdur
Rahman Sabuj
| Page |97
Description: Test the departure add module Test Executed Date:02.1.2015
Condition: Departure add Redirect Departure page and input the required filled. And click
on the submit button
Departure Configuration Module Unit Test 1:
Step Test
step
Test Data Code Module Expected
result
Actual Result Pass/
Fail
Notes
1 Redirect
to
Departure
add page
Click to
Departure
add link
Departure Pass
2 Input
Select
Coach
Narial
Express
3 Input
Coach
number
Shakib111
4 Input
station
from
Jatrabari
5 Input
station to
Meghpara
chi
6 Input bus
fare
700
7 Input via Daudkandi
| Page |98
counter departureconfigAdd add
successfully
if admin
add
departure
Redirect to
departureconfigAdd
page
8 Input via
location
Daudkandi
9 Input
Journey
type
Special
10 Input
assign
date
2015-04-02
11 Start
time
11.00am
12 End time 4.00pm
13 Click to
Submit
Button
Fixed Condition: if the head counter master add departure with a valid data the information
saved in database
| Page |99
Departure Configuration Module Unit Test 2:
Step Test
step
Test Data Code Module Expected
result
Actual Result Pass/
Fail
Notes
1 Redirect
to
Departure
add page
Click to
Departure
add link
departureconfigAdd
Departure
not added
Redirect to
departureconfigAdd
page
Fail
2 Input
Select
Coach
Empty
Field
3 Input
Coach
number
Shakib111
4 Input
station
from
Motijeel
Dhaka
5 Input
station to
Meghpara
chi
6 Input bus
fare
330
7 Input via
counter
Dadkandi
8 Input via
location
Daudkandi
9 Input
Journey
type
Special
10 Input
assign
2015-04-02
| Page |100
date
11 Start
time
11.00am
12 End time 4.00pm
13 Click to
Submit
Button
Fixed Condition: If any input filed is empty and departure not addes and redirect add departure pages
| Page |101
6.4.4 Bus Searching module Test:
 Bus Searching module
Test Case Id.2 Module Name: Bus Searching
Module : Bus Searching module Test Designed :Farhad Hossain & Abdur
Rahman Sabuj
Test Priority: (Low/Medium/High): High Test Date:29.12.2014
Test Title: Bus searching module valid info Test Executed By: Farhad Hossain &Abdur
Rahman Sabuj
Description: Test the departure searching
module
Test Executed Date:11.1.2015
Condition: Bus Searching given with station name from and to where u going to and going
from and click the search button
Bus Searching unit test 1:
Step Test
step
Test Data Code Module Expected
result
Actual
Result
Pass/
Fail
Notes
1 Input
where
are
you
going
from
Comilla Mounamuti
http://localhost:84/01-
E-
If
user/visitors
fill the
station from
and to and
search the
Pass
2 Input admin@gmail.com
| Page |102
Email TicketBookingSystem/ bus they can
get result in
bus table
with details
Input
where
are
you
going
To
Chandina
3 Input
Select
date
2015-05-14
Fixed-Condition: Visitors and user fill the form and then show a bus table which bus are added in the
specific date
| Page |103
6.4.5 Bus Seat Booking module Test Case:
 Bus Seat booking module
Test Case Id.2 Module Name: Bus seat booking
Module : Bus seat booking module Test Designed :Farhad Hossain & Abdur
Rahman Sabuj
Test Priority: (Low/Medium/High): High Test Date:9.03.2014
Test Title: Bus searching module valid info Test Executed By: Farhad Hossain &Abdur
Rahman Sabuj
Description: Test the seat booking Test Executed Date:12.3.2015
Bus Seat booking module Unit Test 1:
Ste
p
Test
step
Test Data Code Module Expecte
d result
Actua
l
Result
Pass
/
Fail
Note
s
1 Input
select
the
seats
A4
seat_booking.ph
p
Pass
2 Input
Entire
Full
Name
Farhad Evan
Input
Entire
email
farhadevan@gmail.co
m
| Page |104
3 Input
mobile
numbe
r
01938161058
4 Input
gender
Male
5 Click
on
submit
Submit
Fixed-Condition: Visitors and user fill the form and then show a bus table which bus are added
in the specific date
6.4.6 Test Report
Software testing reports are just as important as running tests. It is easier said than done with
new test cases being added to your test plan in each release. Generally, this is a
communication sent out to establish transparency to the QA team’s activities of the day
during the test cycle
Number of Unit Test First iteration 100%
success
Less then 100% Total succession
Total:10 7 3 70%
Total:10 10 0 100%
Total unit test case sample are 10. Some test cases are succeeding in first iteration and some
are succeed in second iteration. The succession percent are shown in following table:
Conclusion:
All testing was done carefully and each test was up to the required standards of the users’
.error tests may be suggested but the above mentioned are just sufficient to test. Testing is an
essential phase in system development and therefore it should be taken with a lot of interest
| Page |105
Automated Bus Ticket Booking System
Automated Bus Ticket Booking System
Automated Bus Ticket Booking System
Automated Bus Ticket Booking System
Automated Bus Ticket Booking System
Automated Bus Ticket Booking System
Automated Bus Ticket Booking System

Contenu connexe

Tendances

Train ticket reservation
Train ticket reservationTrain ticket reservation
Train ticket reservation
sazzadur rahman
 
Bus Ticket Management System Documentation
Bus Ticket Management System DocumentationBus Ticket Management System Documentation
Bus Ticket Management System Documentation
muzammil siddiq
 
Online Bus Ticket Reservation System
Online Bus Ticket Reservation SystemOnline Bus Ticket Reservation System
Online Bus Ticket Reservation System
Tuvshinbayar Davaa
 
Flight reservation and ticketing system Final PPT
Flight reservation and ticketing system Final PPTFlight reservation and ticketing system Final PPT
Flight reservation and ticketing system Final PPT
marcorelano
 

Tendances (20)

Tourism and travelling management System
Tourism and travelling management SystemTourism and travelling management System
Tourism and travelling management System
 
Internship report
Internship reportInternship report
Internship report
 
Scope Definition of Online Ticketing System
Scope Definition of Online Ticketing SystemScope Definition of Online Ticketing System
Scope Definition of Online Ticketing System
 
Airline Reservation system(project report of six week training)-ppt
Airline Reservation system(project report of six week training)-pptAirline Reservation system(project report of six week training)-ppt
Airline Reservation system(project report of six week training)-ppt
 
Train ticket reservation
Train ticket reservationTrain ticket reservation
Train ticket reservation
 
Industrail training report on website design and development
Industrail training report on website design and developmentIndustrail training report on website design and development
Industrail training report on website design and development
 
Bus Ticket Management System Documentation
Bus Ticket Management System DocumentationBus Ticket Management System Documentation
Bus Ticket Management System Documentation
 
Online Bus Reservation
Online Bus ReservationOnline Bus Reservation
Online Bus Reservation
 
Online Bus Ticket Reservation System
Online Bus Ticket Reservation SystemOnline Bus Ticket Reservation System
Online Bus Ticket Reservation System
 
Railway Reservation System - Requirement Engineering
Railway Reservation System - Requirement EngineeringRailway Reservation System - Requirement Engineering
Railway Reservation System - Requirement Engineering
 
Major File On web Development
Major File On web Development Major File On web Development
Major File On web Development
 
online bus ticket booking system
online bus ticket booking systemonline bus ticket booking system
online bus ticket booking system
 
Flight reservation and ticketing system Final PPT
Flight reservation and ticketing system Final PPTFlight reservation and ticketing system Final PPT
Flight reservation and ticketing system Final PPT
 
Airline reservation system
Airline reservation systemAirline reservation system
Airline reservation system
 
Sequence diagram for employee management system(EMS)
Sequence diagram for employee management system(EMS)Sequence diagram for employee management system(EMS)
Sequence diagram for employee management system(EMS)
 
Airline reservation system
Airline reservation system Airline reservation system
Airline reservation system
 
Student Management System report
Student Management System reportStudent Management System report
Student Management System report
 
Employee management system1
Employee management system1Employee management system1
Employee management system1
 
Online bus ticket booking
Online bus ticket bookingOnline bus ticket booking
Online bus ticket booking
 
Online Railway Reservation System
Online Railway Reservation SystemOnline Railway Reservation System
Online Railway Reservation System
 

Similaire à Automated Bus Ticket Booking System

Final fyp report template
Final fyp report templateFinal fyp report template
Final fyp report template
Sil Fa
 
FYP Info Booklet v13Jan2010
FYP Info Booklet v13Jan2010FYP Info Booklet v13Jan2010
FYP Info Booklet v13Jan2010
Siti Mastura
 
OBD2 Scanner-Final Year Project Report
OBD2 Scanner-Final Year Project ReportOBD2 Scanner-Final Year Project Report
OBD2 Scanner-Final Year Project Report
Kokila Surasinghe
 

Similaire à Automated Bus Ticket Booking System (20)

Document Archiving & Sharing System
Document Archiving & Sharing SystemDocument Archiving & Sharing System
Document Archiving & Sharing System
 
Open Source adobe lightroom like
Open Source adobe lightroom likeOpen Source adobe lightroom like
Open Source adobe lightroom like
 
Final fyp report template
Final fyp report templateFinal fyp report template
Final fyp report template
 
Skpl 5114100021 5114100110
Skpl 5114100021 5114100110Skpl 5114100021 5114100110
Skpl 5114100021 5114100110
 
REMOTE RADIO HEAD TESTING: 5G case study
REMOTE RADIO HEAD TESTING: 5G  case studyREMOTE RADIO HEAD TESTING: 5G  case study
REMOTE RADIO HEAD TESTING: 5G case study
 
FYP Info Booklet v13Jan2010
FYP Info Booklet v13Jan2010FYP Info Booklet v13Jan2010
FYP Info Booklet v13Jan2010
 
FLOOD- serv D6.3 First Communication and Dissemination Report and Updated Plan
FLOOD- serv D6.3 First Communication and Dissemination Report and Updated PlanFLOOD- serv D6.3 First Communication and Dissemination Report and Updated Plan
FLOOD- serv D6.3 First Communication and Dissemination Report and Updated Plan
 
Bachelor in Computer Engineering Minor Project " MULTI-LEARNING PLATFORM"
Bachelor in Computer Engineering Minor Project " MULTI-LEARNING PLATFORM"Bachelor in Computer Engineering Minor Project " MULTI-LEARNING PLATFORM"
Bachelor in Computer Engineering Minor Project " MULTI-LEARNING PLATFORM"
 
Dual-Band Mobile Phone Jammer
Dual-Band Mobile Phone JammerDual-Band Mobile Phone Jammer
Dual-Band Mobile Phone Jammer
 
GSM Automated System For Monitoring And Controlling
 GSM Automated System  For Monitoring And Controlling  GSM Automated System  For Monitoring And Controlling
GSM Automated System For Monitoring And Controlling
 
OBD2 Scanner-Final Year Project Report
OBD2 Scanner-Final Year Project ReportOBD2 Scanner-Final Year Project Report
OBD2 Scanner-Final Year Project Report
 
Software requirements specifications wp2
Software requirements specifications wp2Software requirements specifications wp2
Software requirements specifications wp2
 
LoCloud - D4.3: Regional Training Workshops
LoCloud - D4.3: Regional Training WorkshopsLoCloud - D4.3: Regional Training Workshops
LoCloud - D4.3: Regional Training Workshops
 
Work Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerWork Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel Belasker
 
Ojt report final2
Ojt report final2Ojt report final2
Ojt report final2
 
online examination management system
online examination management systemonline examination management system
online examination management system
 
report-1.pdf
report-1.pdfreport-1.pdf
report-1.pdf
 
Project final report
Project final reportProject final report
Project final report
 
Student's Work Experience Program (SWEP) by IGINA PAUL
Student's Work Experience Program (SWEP) by IGINA PAUL Student's Work Experience Program (SWEP) by IGINA PAUL
Student's Work Experience Program (SWEP) by IGINA PAUL
 
Ensuring Distributed Accountability in the Cloud
Ensuring Distributed Accountability in the CloudEnsuring Distributed Accountability in the Cloud
Ensuring Distributed Accountability in the Cloud
 

Dernier

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Dernier (20)

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 

Automated Bus Ticket Booking System

  • 1. | Page |1 Project Report Automated Bus Ticket Booking System Submitted by Md.Farhad Hossain ID: 111-35-181 Abdur Rahman Shobuj ID: 111-35-158 Dept. of Software Engineering Daffodil International University Supervised by Mr. Kaushik Sarker Lecturer Dept. of Software Engineering Daffodil International University
  • 2. | Page |2 APPROVAL This Project titled “Automated Bus Ticket Booking system”, submitted by Md.Farhad Hossain ID No: 111-35-181 and other group member Abdur Rahman Shobuj ID No: 111-35- 158 to the Department of Software Engineering, Daffodil International University, has been accepted as satisfactory for the partial fulfillment of the requirements for the degree of B.Sc. in Software Engineering and approved as to its style and contents. BOARD OF EXAMINERS Dr. Touhid Bhuiyan Head Department Head Department of Software Engineering Faculty of Science & Information Technology Daffodil International University Md. Mijanur Rahman Internal Examiner Senior Lecturer Department of Software Engineering Faculty of Science & Information Technology Daffodil International University Name External Examiner Designation Department of Computer Science and Engineering Faculty of Science & Information Technology Daffodil International University DECLARATION
  • 3. | Page |3 We hereby declare that, this project has been done by us under the supervision Mr. Kaushik Sarker Lecturer, Department of Software Engineering, and Daffodil International University. We also declare that neither this project nor any part of this project has been submitted elsewhere for award of any degree. Supervised by: Mr. Kaushik Sarker Lecturer Department of Software Engineering Daffodil International University Submitted by: Md. Farhad Hossain ID: 111-35-181 Abdur Rahman Shobuj ID: 111-35-158 Department of Software Engineering Daffodil International University
  • 4. | Page |4 Table of Contents Project Report .........................................................................................................................................1 Chapter 1...............................................................................................................................................10 Introduction.......................................................................................................................................10 1.2 Purpose of the Project .................................................................................................................10 1.3Document Conventions................................................................................................................11 1.4 Scope...........................................................................................................................................13 1.5 Objectives ...................................................................................................................................13 CHAPTER 2 .........................................................................................................................................14 Pre-Analysis and Initiation ...............................................................................................................14 2.1Scenario........................................................................................................................................14 2.2Requiremet Collection .....................................................................................................................17 2.3Associate Review.............................................................................................................................18 2.4 Customers’ Requirements...............................................................................................................21 CHAPTER 3 .........................................................................................................................................23 Analysis ............................................................................................................................................23 3.1Introduction..................................................................................................................................23 3.1 Requirement analysis......................................................................................................................23 3.1.1 Requirement Discovery.....................................................................................................24 3.1.3: Requirement Collection functional requirements ...................................................................26 3.1.4: Collected Non –Functional Requirements..............................................................................27 3.2 Requirement analysis..................................................................................................................28 3.2.1: Introduction………………………………………………………………………………..28 3.2.2 Purpose…………………………………………………………………………………………… ………………………………28 3.2.3 Scope……………………………………………………………………………………….29 3.2.4 Definition of Acronyms and Abbreviations………………………………………………29 3.3.2: Non Functional Requirements ................................................................................................32 3.3.3 Stakeholders.............................................................................................................................33 3.3.4: Software Development Plan .......................................................................................................33 3.3.5: Overview.................................................................................................................................33 3.3.5.1 Proposed System and Its benefits………………………………………………………..34 3.3.5.3Process Model……………………………………………………………………………35 3.3.5.4 Work Schedule…………………………………………………………………………...36
  • 5. | Page |5 4.1Introduction..................................................................................................................................37 4.2: Purpose.......................................................................................................................................37 4.3: System Overflow .......................................................................................................................38 4.4: SYSTEM SCOPE ......................................................................................................................38 Main Inputs………………………………………………………………………………………38 Outputs…………………………………………………………………………………………...38 4.5: Design Map................................................................................................................................39 4.6: Use Case ....................................................................................................................................40 4.7: Use case Diagram for operator and Visitors /Passenger............................................................41 Use case diagram of Operator (Counter master) and General user means Registered user and non- Registered user..................................................................................................................................41 4.8.1: Context diagram (Level 0 DFD) …………………………………………………………42 4.9 Class Diagram.............................................................................................................................43 4.2.1 Categories of Table of Physical design of database table:.......................................................45 4.2.1.1 Table name: Bus…………………………………………………………………………45 4.2.1.2 Table name: Counter…………………………………………………………………….45 4.2.1.3 Table name: User………………………………………………………………………...45 4.2.1.4 Table name: assign counter………………………………………………………………46 4.2.1.5 Table name: Station……………………………………………………………………..46 4.2.1.6Table name: Departure_config………………………………………………………….46 4.2.1.7 Table name: Bus seats…………………………………………………………………..46 4.2.1.8 Table name: Passenger………………………………………………………………….47 4.2.1.9 Table name: Seat Booking………………………………………………………………47 4.2.2 Sequence Diagram ...................................................................................................................48 4.2.3 Sequence Diagram for General User .......................................................................................49 4.5 Physical design................................................................................................................................50 4.5 .1 Registration and login pages:..................................................................................................50 4.5.2 User Registration .....................................................................................................................51 4.5.3 Bus Add ...................................................................................................................................51 4.5.4 Bus view...................................................................................................................................52 4.5.5 Counter Add.............................................................................................................................52 4.5.6 Counter view page ...................................................................................................................53 4.5.9 Passenger view page ................................................................................................................56 4.5.10 Physical Design User Interface..............................................................................................56 4.5.11 Physical Design......................................................................................................................57
  • 6. | Page |6 4.5.13 Physical design Seat and passengers interface.......................................................................59 Chapter 5...............................................................................................................................................60 System Implementation ....................................................................................................................60 5.1.1 Introduction..............................................................................................................................60 5.1.2 Purpose.....................................................................................................................................60 5.1.3 System Description..................................................................................................................60 5.1.4 System Organization................................................................................................................60 5.1.5 Hardware & Software Specifications.......................................................................................61  Hardware Requirements............................................................................................................61 Software Requirements…………………………………………………………………………..61 5.1.6 Technical Description ..............................................................................................................62 Sub Directories…………………………………………………………………………………...62 Admin or Operator operation…………………………………………………………………….63 Controller (Pages Control) ………………………………………………………………………63 5.1.7 DBConnect.php........................................................................................................................63 5.1.8 Controller:................................................................................................................................64 Config.php……………………………………………………………………………………….64 5.1.9 Admin Login and Registration:................................................................................................65 Login Form………………………………………………………………………………………66 Departure view………………………………………………………………………………….68 5.1.10.1 Add Departure Configuration and view departure…………………………………….70 5.1.11 Departure Edit........................................................................................................................71 Departure Edit……………………………………………………………………………………72 5.1.12 User Interface or Visitors Interface........................................................................................73 5.1.13 Seat Booking Interface...........................................................................................................76 Seat Booking……………………………………………………………………………………..86 CHAPTER 6 .........................................................................................................................................87 Testing ..............................................................................................................................................87 6.1 Introduction.................................................................................................................................87 6.2 Importance of testing ..................................................................................................................87 6.3.1Unit testing................................................................................................................................88 6.3.2Integration testing .....................................................................................................................88 6.3.3System testing...........................................................................................................................89 6.3.4Acceptance testing ....................................................................................................................89
  • 7. | Page |7 6.3.5Recovery testing........................................................................................................................89 6.4 Test Case.....................................................................................................................................90 6.4.1 User Registration Module Test Case .......................................................................................90 Test Case Unit Test………………………………………………………………………………90 Registration module Unit Test 1…………………………………………………………………91 Registration module 2……………………………………………………………………………92 Registration module Unit Test 3…………………………………………………………………92 6.4.2 User Login Module:.................................................................................................................93 Login module Unit test1: ………………………………………………………………………..94 Login module Unit test 2: ……………………………………………………………………….94 6.4.3 Departure Configuration Module:............................................................................................96 Departure Configuration Module Unit Test 1: …………………………………………………..97 Departure Configuration Module Unit Test 2: …………………………………………………99 Bus Searching unit test 1: ………………………………………………………………………101 Bus Seat booking module Unit Test 1: ……………………………………………………….103 6.4.6 Test Report.............................................................................................................................104 Conclusion: .....................................................................................................................................104 Chapter 7.............................................................................................................................................107 Conclusion ......................................................................................................................................107 CHAPTER 8 .......................................................................................................................................108 Future Work....................................................................................................................................108 APPENDIX.....................................................................................................................................109 References.......................................................................................................................................111
  • 8. | Page |8 Abstract This project is about Automated Bus Ticket Booking System is a web based system , This is the system for ticket booking in online remotely any type of location in Bangladesh and also helps to the bus owner to manage their business by using this system it’s also helps to owner record their daily collected money from bus business and also helps to reduced paper to track any type of bus information such as ticket information passenger information, seat booking information any type of user can see the details of seat which are booked and which is available it’s a automated process if any user book ticket in online before confirmation of ticket other user can book ticket no need to refresh page ,when user confirm ticket in other side in other hand they saw the seat colors is red its totally automated system not only see admin and operator but also seat details of bus passengers The main purpose of our system if any user want to go anywhere any location in our country they want to use our system in online no need to go seat booking for bus counter they can select bus for his/her choose bus seat booking related any type of operation and any query they can using the system whole package are here if any user want to go anywhere. The Business Owner not only benefit general user but also maintain their business and reduced paper to save information any type of bus ,seats ,,departure date , seat booking , passenger every record saved in database and also collated money from bus ticket from user they can know the update of transaction this project done ourself we are trying our best to save record money but in future we will try to implement this feature. Waterfall methodology has been used to develop the our system The modern technology is used to implement to the automated system to make it more secured PHP object oriented concepts and MVC Framework Some client side scripts have also been used to make it user friendly seat booking some page updating purpose using client site programming.
  • 9. | Page |9 ACKNOWLEDGEMENT First we express our heartiest thanks and gratefulness to almighty Allah for his divine blessing makes us possible to complete this project successfully. We fell grateful to and wish our profound our indebtedness to, Department of Software Engineering, Daffodil International University, Dhaka Bangladesh. Deep Knowledge & keen interest of our supervisor Mr. Kaushik Sarker in the field of Automated Bus Ticket Booking System. His endless patience, scholarly guidance, continual encouragement, constant and energetic supervision, constructive criticism, valuable advice, reading many inferior draft and correcting them at all stage have made it possible to complete this project. I am also very grateful to all of our Teachers and friends for their valuable suggestions help and support during completion of our project , for his kind help to finish our project and also to other faculty member and the staff of Software Engineering department of Daffodil International University. We would like to thank our entire course mate in Daffodil International University, who took part in this discuss while completing the course work. Finally, we must acknowledge with due respect the constant support and patients of our parents.
  • 10. | Page |10 Chapter 1 Introduction Automated Bus Ticket booking system gives the opportunity to the general users/visitors to book the ticket remotely anytime in anywhere. By using this web application, users will be able to select the bus reserves the seats for going from staring place to destination place at their fixed time and date. For booking ticket, users confirm their personal information such as name; email number and mobile number for confirmation of ticket. If any user thinks about to go anywhere by using bus. They can get whole features in our web application. If any owner thinks about to maintain his/her business and they can get whole privilege in our web application. Automated Bus Ticket Booking System is aimed at reducing paper for the bus industry and hence improving its efficiency and speeding up of all processes. The web apps can be accessed by the passengers from anywhere remotely in any location. Hence, all the related information about a passenger is available to admin and customers. Thus, this software saves the entire customers and track by phone number. 1.2 Purpose of the Project This project is aimed at developing a web based automation application that will apply a system approach to depict the functional architecture. The Purpose of our project is to develop “Automated Bus Ticket Booking system” for owner to maintain their business and total details of bus and departure bus and also know ticket information which is booked and which is not booked and details of total collection of money for specific days and instant details of collection of money from bus ticket. Our systems innovative facilities are added for general users to book ticket anytime and anywhere remotely and general users can be able to know bus details and fare and seats combination is easy to track the information of all and
  • 11. | Page |11 departure destination .General users can be informed the seat which is booked and which is not booked. This feature is added for general users. Every business owner can take the opportunity to use our system. The main goal of our system is to build a good management tool for all customers. The main purpose of this software is to reduce the time taken through manual system in order to maintain all the records and operation virtually. Those activities are longer in physically in our present life are easy to access virtually and save the customers valuable time. All aged customers can use our software to do the completion booking ticket online at their house and their working environment. 1.3Document Conventions Main Chapter  Font: Times New Roman  Face: Bold  Size: 18 Main Section Titles  Font: Times New Roman  Face: Bold  Size: 16
  • 13. | Page |13 Sub Section Titles  Font: Times New Roman  Face: Normal  Size: 12 1.4 Scope This System is helpful to the business owner to maintain their business by using this web application .Owner every moment check their departure information and seats booking information and also helps to keeping record of every transaction by using this application not only business owner but also general user using this web application for the purpose of ticket book in online general user can not need to go bus counter to book ticket they can book ticket remotely anywhere in the world by fulfill this instruction This system is helpful to reduce the time and complexity of maintaining the records. It also helps in accurate maintenance of customers and owners. 1.5 Objectives The objective of “Bus booking management system” is to easily track the information of all customers, departure bus station and seats information and bus destination. The main goal of the software is to build a good management tool for all customers. The main purpose of this software is to reduce the paper to track information of total transaction and counter master does not need to call other counter master to book ticket and assign ticket do n’ t tell about ticket info they can know information by using seat booking module of our system .
  • 14. | Page |14 CHAPTER 2 Pre-Analysis and Initiation 2.1Scenario Scenario is a process used during requirement analysis to describe the use of proposed system. Scenario is a story about proposed System scenario explains an early stage of proposed system. The scenario of this system is given below: The system gives Automated Bus Ticket Booking System documentation. There are three types of users. First, Super Admin (Head Counter master); Second, Operator (such like as counter person) ; Third, Visitor /Registered users; The following table shows the brief description about different users with their level. Users Type Description Admin (Admin-Level1) Admin totally control the proposed system they can action view and every work (such as ticket are distribute for the counter by admin and sales info or if a new bus is added and every counter transaction status. If new counter added of this
  • 15. | Page |15 automated system only the can confirm)and they create operator (counter person) Operator(Counter person Operator(Level-2) Operator can view seat permutation .If a visitor or user request for new ticket with fully follow our instructions of our proposed System they confirm user to if ticket is booked. Operator confirm by sending message or contact by phone . For(verification purpose )ticket status Visitor/Registered User (Basic level-3) The user can request only new ticket from-to destination place In the early stage of our proposed system admin ( head of the counter) do not need to register of our system admin are automatically manually create by System of developer. System has one admin .Admin user insert new bus if new bus in queue for specific counter otherwise none of them cannot insert new bus information ,admin user provide to operator bus info with seat permutation and distributed seat for operator (counter person) .admin user check everything of the our system ticket selling info seat information which counter how much provide number of passengers, Current status of seat permutation also total collection of money every day admin users check the update they can action when need to update or delete info about bus .Only admin can create operator for (specific counter master ).Operator they can check only current counter status .if new customer are request for a new ticket and they can confirm user if ticket are sold
  • 16. | Page |16 By email or sending message or contact by phone ,they confirm passengers ,and if seat are whole booked they can update status for specific bus cause user/visitor can know about seat permutation cause they do not need to request if seat whole are booked .Operator they can contact other operator(such like other counter master) for seat info about bus .Visitor or User can request for new ticket by fill up form they specify to fill up leaving from -Going place or destination place and fill up date form .Users can search bus if form is fill up and know the information about bus ,seat permutation. When user fill up the form they can know bus name bus starting time and counter information choose the bus seat which seat are available only they can choose these seat and buy one or more seat a single user can do. Fill up the personal information of the visitor with payment method such like as bkash or credit card number it’s our proposed features. 1. Pre-analysis a. Scenario / Issue Initiation b. Requirement Collection 2. Analysis a. Customer Requirement Specifications (CRS) b. Software Requirement Specifications (SRS) 3. Design a. High Level Design (HLD) b. Detail Level Design (Detail Level Design) 4. Implementation 1. Codes 2. Logical Design 3. Physical design 6. System Test a. System Test Report (STR) b. Software Development Completion Report (SDC
  • 17. | Page |17 2.2Requiremet Collection Requirements gathering are an essential part of any project and project management. Understanding fully what a project will deliver is critical to its success. This may sound like common sense, but surprisingly it's an area that is often given far too little attention. Many projects start with the barest headline list of requirements, only to find later the customers' needs have not been properly understood. One-way to avoid this problem is by producing a statement of requirements. This document is a guide to the main requirements of the project. It provides:  A succinct requirement specification for management purposes.  A statement of key objectives - a "cardinal points" specification.  A description of the environment in which the system will work.  Background information and references to other relevant material.  Information on major design constraints. Finally, ensure you have cross-referenced the requirements in the statement of requirements with those in the project definition report to ensure there is no mismatch. The functional requirements describe the services provided by system in detail, the inputs and outputs, expectations and so on. The functional requirements define the facilities to be provided by the system.
  • 18. | Page |18 The non-functional requirements are not directly concerned to the system. They may define constraints on the system and specify system performance, security, availability and emergent properties. 2.3Associate Review Associate review process should be in place in any software development organization as a significant defect removal activity. Associate reviews are included in the Software Engineering Institute’s Capability Maturity Model Integration (CMMI® ) [3] as a required process for those organizations following the CMMI as a guide for process improvement. Associate reviews are especially valuable as a way to remove defects early in the development cycle and should be performed on all major software development work products including requirements, design, code, and test procedures. The software inspection method of performing associate reviews is generally considered the most effective method of performing associate reviews [2] and is an indisputable software engineering best practice. Other types of associate reviews that are practiced with varying degrees of formality are team reviews, walkthroughs, and pair programming. Once associate reviews are an established practice, the data from each associate review can be used for defect management. For this purpose the following data from each associate review are recommended to be collected In software development, associate review is a type of software review in which a work product is examined by its author, in order to evaluate its technical content and quality. The purpose of associate review is to provide a disciplined engineering practice for detecting and correcting in software artifacts .
  • 19. | Page |19 The following System is reviewed by developer Review One: ONLINE BUS TICKET RESERVATION SYSTEM Date : 02/01/15 Online Bus Ticket Reservation System designed and developed by Tuvshinbay Davaa APTECH BANASWADI, KALYAN NAGAR, BANGALORE Description: Ticket Reservation System descriptions are given below: Now they want incorporate an online service application where they can maintain the records of the buses along with the details of the customers. The customer can now book the tickets by visiting the booking counters at their place (nearby) to the respective destination as required. They want the application to be linked with the database, so that whatever details are entered like the details of the customers, buses, and bookings can be viewed by the other centers as well as it is an online application. They also want to incorporate some feature which performs the tasks that they actually perform, and an application where the customer can register with the site and then book the tickets online instead of visiting the booking counter A database should be maintained where the bus details along with the bus number, route, the places it covers throughout the distance and also the timings are needed to be maintained. Also the details of the customers that are entered at the time of booking the tickets are needed to be gathered in the database. So that they can track the details of the customer at any time using the search option based on the starting place, age, name, destination place and Date and Time and even based on the bus they had chosen. The database should also maintain the list of the Employers as they alone book the tickets with the username and password. The list that is to be maintained is personal details, contact details, location, qualification, age, etc are needed to be gathered. There should be buttons like New, Update and Cancel are to be included. Based on the button chosen the respective action is needed to be performed. Also if the Employee record is entered (The Employee
  • 20. | Page |20 details will be maintained by the Admin alone), it should automatically generate a six digit code, and it will ask for the username and the password (the password can be changed by the Employee) through which he can login in to the a/c so as to perform the booking tasks. Also for canceling the ticket, there is a limit like, if cancelled before 2 days then the whole money will be returned, and if done one day before, then 15% is debited from the total amount and the remaining amount is returned and if done on that day 30% is debited from the total amount and the remaining is to be returned back. This action is also to be performed by the application alone. They want the application to be maintained in different details like the buses and the bookings information. When they try to book a ticket it should ask for the customer details like the name of the customers for whom the tickets are booked, Date and Time, Starting and Destination place and the age ( as the charges depends on the age). Also the Bus no. and the seat no. for which the ticket (s) booked are to be entered so that they can keep track of the bookings done. Whenever a customer enquires for the availability they can check through the Enquiry form where the details like Destination Place, Starting Place, Date and Time are asked, by entering these details (all fields are not mandatory) the availability details should be displayed. Also there should be a search option through which the records of the customers and the buses can be known easily with the same above options. After the ticket is booked, one should be able to print the ticket, including the details like age, name, Date and time for which the ticket is booked and as well the destination and Starting locations and the charges for the ticket including the taxes. The application alone should be able to calculate the payments as per the age criteria and the distance. Also it has to be updated in the site. Note :  To book the ticket or to fetch the details (Search and Enquiry) first they need to Login and only then they will be able to perform such actions.  This application is solely for the booking department to book the tickets and is purely maintained by them. It is not applicable for the customers and they (customers) cannot book the tickets online by themselves.  The Admin maintains the list of the buses and as well the Employees which not be accessed by the Employee. Review: 2 Red Bus India
  • 21. | Page |21 Description: Bus ticket booking system red bus from (India) helps me to primary knowledge about bus ticket booking system. Its big system there are using automated system to bus ticket and global for every user not only user but also business owner to maintain their bus business .There are using different module seat booking module ,departure configuration module counter module station module and login module payment module for counter head and super admin and also track personal information. Red bus India connected the whole India and everyday 1.5crore people using this system 2.4 Customers’ Requirements The tactics that are used to elicited requirements are as follows:  Interviewing :This Bus Ticket booking system some collected requirements from Bus counter head .Major requirements collect from interviewing of counter master I have visited Motlab Express poribahan in Gulistan name of counter master Sajib Ahmed there are not using automated system to track departure information and seats and also total transaction information of daily and weekly monthly and yearly there are using analog system just like as whole things are recorded in paper documents and when seats are booked they confirm by other counter by phone and seats are booked by user by phone or physically .Everyday they cannot follow to departure configure for ascending orders and they cannot stored user information but manually it’s really hard to specific details of bus seats passengers and total revenue
  • 22. | Page |22  Observation: Some of requirements collected from our observation different type exiting system  Brain Storming: Some of collected in our analysis of reading and self-study  Supervisor feedback: Some requirements are selected by analysis requirements and weekly meeting with project supervisor Mr. Kaushik Sarkar, Lecturer Department of Software Engineering.
  • 23. | Page |23 CHAPTER 3 Analysis 3.1Introduction The analysis phase defines the requirements of the system, independent of how these requirements will be accomplished. This phase defines the problem that the customer is trying to solve. The deliverable result at the end of this phase is a requirement document. Ideally, this document states in a clear and precise fashion what is to be built. This analysis represents the ``what'' phase. The requirement document tries to capture the requirements from the customer's perspective by defining goals and interactions at a level removed from the implementation details. The goal of system analysis is to determine where the problem is, in an attempt to fix the system. This step involves breaking down the system in different pieces to analyze the situation, analyzing project goals, breaking down what needs to be created and attempting to engage users so that definite requirements can be defined. The termination step of requirement collection the next step is analysis on requirement .In this stage Software developers works with customers and system end user and find out about what services the system should provide, the required performance of the system, hardware constraints, defines project goals into defined functions and operation of the intended application. It analyzes end-user information needs. 3.1 Requirement analysis The requirement analysis is divided into three phases. The phases are given below
  • 24. | Page |24 3.1.1 Requirement Discovery Requirements discovery includes those techniques to be used by systems analysts to identify or extract system problems and solution requirements from the user community. Concerns are identified through discussion with the principal stakeholders. These are typically the client and the developer. The stakeholder principal concerns for the system. The requirements, elicited from the set of different viewpoints will be documented and analyzed in the next stage of the process. Requirement discovery is the process to gathering requirements about the proposed system. The source of the information is to learn related system, identifying the stakeholders and interviewing them. I have collected some requirements from some following. 3.1.2: Requirement list 1. Login and Registered for super admin(head counter master) 2. Super admin only registered to counter operator (Operator) if they assign counter master for specific counter only they can access whole system. 3. Counter master might be login for the reason to using the system and required email and password to authentic. 4. Super admin only can whole privilege of the system if they cannot confirm any user means (counter master) to add they cannot access the system 5. Super admin (head counter master) add bus, add counter, assign counter person such as(counter master) , add station . 6. Departure configuration for specific date its operation only can insert Head counter master. 7. Super admin assign seats for counter specific and only he can distribute seats among counter master and add seats for different types of bus. 8. Counter master only he can see the details of every operation and he only can confirm seats and bus ticket passengers. 9. User of the system (visitors)search ticket to fulfill station from and station to and specific date for Searching bus 10. User or visitors of the system book ticket and saw ticket details which is booked and which is non-booked, and user can book ticket to fill up the passenger info after selecting the seats .
  • 25. | Page |25 11. Confirmation message sending the system to the user via SMS and generate a pin code to identify the owner of ticket 12. Payments system might be credit card or bkash to book ticket and got confirmation report . 13. Admin and Operator can using this seat booking module for user if any user want to book ticket at counter . 14. Operator and admin (head counter master) only confirm ticket if any user book ticket via SMS.
  • 26. | Page |26 3.1.3: Requirement Collection functional requirements No. Requirement Description Priority Programming Language And Database Functional Requirement Must be done in PHP programming language and MVC framework() and Our SQL Database M(Mandatory) Register Member 1. Admin must register before Log in the system. M(Mandatory) 2. Admin must fill all fields in the registration form; otherwise the system will show an error message. D(Described ) Log In 3. Admin can log in entire the system and also operator M(Mandatory) Search Destination 4 Administrator can search a Destination, date, number of passengers and select The trip type Customer can search a Destination, date, number of passengers and select the trip type. M(Mandatory) Payment System 5 Payment must be done with bkash and credit card by confirmed by admin M(Mandatory) Assign Counter 6 Assign Counter must be done with admin (Head of the counter) D(Described) Assign Coach 7 Assign Coach must be done with admin (Head of the counter) D(describes) Distribute Ticket 8 Distribute Ticket done by D(Described)
  • 27. | Page |27 head of the counter(admin) Manage System 9. Requirement Description Priority Departure configuration 10 Head of the counters add departure for specific date H(High) Searching Departure 11 Normal user and any type of user can search bus fill the form (User interface)and also operator can action this operation D(Described) 12 Normal user (any type of user)can book ticket by choosing seats .Operator admin can seat book if any user go to book ticket in ticket counter H(High) 3.1.4: Collected Non –Functional Requirements No Requirement Description Priority Reliability Issues If the system has been crashed, it should not be more than 20 Minutes and 24 hours M(Mandatory) Usability issues If the system has been crashed, it should not be more than 20 Minutes and 24 hours M(Mandatory) Security issues Only Administrator will be M(Mandatory)
  • 28. | Page |28 able to enter the system to make maintenance Performance The system must have a high speed of manipulation data and reply to the user request M(Mandatory) OS Support all OS Windows 7,8,Vista D(described) 3.2 Requirement analysis 3.2.1: Introduction The below subsections is the Software Requirement Specification (SRS) document and it provides an overview of the entire system. 3.2.2 Purpose The System Requirements Specification (SRS) will provide a detailed description of the requirements for the Automated Bus Ticket Booking System. This SRS will allow for a complete understanding of what is needed for Automated Bus Ticket Booking System. The clear understanding of the Automated Bus Ticket Booking System and its’ functionality will allow for the correct software to be developed for the end user and thus will be used for the development of the future stages of the project. This SRS will also provide the foundation for the project. From this SRS, the Automated Bus Ticket Booking System can be designed, constructed, and finally tested .This SRS will be used by the software engineers constructing the Automated Bus Ticket Booking System and the Bus end users. The software engineers will use the SRS so that to fully understand the expectations of this Automated Process of Bus Ticket Booking System to construct the appropriate software. The Automated Bus Ticket Booking System end users will be able to use this SRS as a “test” to see if the software engineers will be constructing the system to their expectations. If it is not to
  • 29. | Page |29 their expectations then the end users can specify their choice and the software engineers will change the SRS to fit the end users’ needs. 3.2.3 Scope The system product to be produced is a Automated Bus Ticket Booking System which will automate the major Bus operations. The first subsystem is a Bus Reservation and as well as advance Booking System to keep tracks of reservations and seats availability. The second subsystem is the Tracking and Selling tickets System that charges the current journey. The third subsystem is a General Management Services and Automated Tasks System which generates reports to audit all bus operations and allows modification of subsystem information. These three subsystems’ functionality will be described in detail in section 2- Overall Description. There are two accounts for the Automated Bus Ticket Booking System the end users are the Bus staff (customer service representative) and administrator the Bus managers. Both user types can access the Reservation and Booking System and the ticket Tracking and Selling System. The General Management System will be restricted to management users. 3.2.4 Definition of Acronyms and Abbreviations SRS –Systems Requirements Specification ABTBS- Automated Bus Ticket Booking System End users – The people who will be actually using the system
  • 30. | Page |30 3.3.1 Software Requirement Specification (Functional Requirement) Module# Requirement Id Requirement Title Priority Admin Operator(Counter master) Registration &Login Functional Requirement__1 Registration and login super admin accounts and described the function requirement option Mandatory Functional Requirement__2 Operator (Counter master must be registration) for the reason of using the systems Function Requirement__3 Login for counter master described the requirement list Departure Configuration Functional Requirement__4 Add Coach with the name of coach and also given seat details Mandatory Functional Requirement__5 Add Station by the admin Functional Requirement__6 Add Seat for specific bus Functional Requirement__7 Assign seat for specific counter Functional Departure configuration for specific date
  • 31. | Page |31 Requirement__8 Search Destination Functional Requirement__9 Search the bus destination for specific bus by the user and the counter master Mandatory Search Departure Functional Requirement__10 Search departure or bus for specific date by the system user or counter master Mandatory Choosing seat Functional Requirement__11 User can be able to choose seat in her choose and selected only 5 seats Mandatory Seat Booking Functional Requirement__12 Admin and operator can seat booking and also general user can seat booked Mandatory Payment & Confirmation Report Functional Requirement__13 After seat booking user must be confirm bus fare by the using of payment system and admin or counter master must be confirm by sending SMS and generate a pin number to track the specific seat booked by the user means identification of seat Mandatory
  • 32. | Page |32 3.3.2: Non Functional Requirements Module Requirement Id Requirement Title Priority Security Issues Non_FR1 Database Connection close: After data use, the database connection will close Mandatory Reliability Issues Non_FR2 If the system has been crashed, it should not be more than 20 Minutes and 24 hours Mandatory Performance Non_FR3 The system must have a high speed of manipulation data and reply to the user request Mandatory OS Non_FR4 Support all OS Windows 7,8,Vista Described Usability Non_FR5 Usable any environments Described User Interface Non_FR6 Eye set able user interface for this Web Application Described
  • 33. | Page |33 3.3.3 Stakeholders I. Internal Stakeholder a. Administrator(Head Counter) b. Operator(Counter Master) c. System Analyst d. Database Administrator (DBA)  External Stakeholder a. Customers/Visitors b. Bus Agencies i. Owner ii. Employee iii. Payment third party 3.3.4: Software Development Plan Software Development Plan is a comprehensive that includes all information required to manage the project. The purpose of SDP is to describes the approach to development of software and generate Top-level Plan. 3.3.5: Overview
  • 34. | Page |34 3.3.5.1 Proposed System and Its benefits The proposed system intends to make a good document by an automated system that fulfills the minimal deliverable requirements of a software document. Generally the user of the software are Bus owner to maintain business and not only business owner of bus area but also general user and customers who are using to go anywhere by using bus .The system provides the opportunity of general people to book ticket virtually remotely anywhere any location in our country. Admin of the system provides bus and add station add user means operator of the system and departure configure for specific date ,and also seat distributes among the counter master. The main advantage of the system any type of user can search for bus and book ticket in his/her choice. 3.3.5.2: Features Of the system  Registration  Login  Logout  Add bus ,station ,Departure configuration for specific date  Searching bus given specific date  Searching location of bus starting to starting from  Seat choosing system  Seat booking interface to user to know bus seat and book ticket also  Payments system  Confirmation system  Tracking passengers by using phone number given by user  Ticket cancelling system
  • 35. | Page |35 3.3.5.3Process Model A process model is an abstract representation of a software process. Each process model represents a process from a particular perspective, and thus provides only partial information about that process. Some common process models are  The waterfall model  Evolutionary development  Component-based software engineering  Iterative development process Waterfall Model This takes the fundamental process activities of specification, development, validation and evolution and represents as separate phases such as requirement analysis and specification, software design, implementation, testing and Operation and maintenance. (Source: Software Engineering 8th edition – IAN Sommerville The proposed software is designed using Waterfall Model but, allows minimal overlapping between phases Reference: http://software-development- templates.tumblr.com/ Figure: Software Life Cycle Requirement gathering Analysis Design Implementing &Coding Testing Deployments & Maintenance
  • 36. | Page |36 3.3.5.4 Work Schedule The proposed system is implemented within 5 months. System development works are performed in each week. After weekly meeting works are done step by step. To make quality software within defined scope the works are done and repeated correction. The total project was completed in six phases are as follows:  Introduction  Pre-Analysis  Analysis  Design  Coding  Testing
  • 37. | Page |37 Chapter 4 System Design 4.1Introduction Software design is a process to transform user requirements into some suitable form, which helps the programmer in software coding and implementation. For assessing user requirements, an SRS (Software Requirement Specification) document is created whereas for coding and implementation, there is a need of more specific and detailed requirements in software terms. The output of this process can directly be used into implementation in programming languages. Software design is the first step in SDLC (Software Design Life Cycle), which moves the concentration from problem domain to solution domain. It tries to specify how to fulfill the requirements mentioned in SRS. Software design is the process of implementing software solutions to one or more set of problems. The software design (SDS) document contains a statement of the design of inventory management system. The design contains an explanation of a way to carry out each of the product specification written in the Software Requirement Specification (SRS).The design will serve as a guide to the developer. The SDS also shows how the program is separated into modules, how the modules interact with each other, and how users see the program. 4.2: Purpose This document is designed to be a reference for any person wishing to implement, or any persons interested in the design architecture of automated bus ticket booking system. This document describes each application’s architecture of design interface of logical interface and physical interface design. This design will detail the implementation of the requirements as defined in the automated bus ticket booking system specification design.
  • 38. | Page |38 4.3: System Overflow This document includes but is not limited to the following information for Automated Bus Ticket Booking system; system overview, design consideration, architectural strategies, system architecture, high level design detailed level design .High level design context diagram and use case diagram and detailed level design consist of data flow diagram level 1 and sequence diagram Entity relationship diagram. 4.4: SYSTEM SCOPE Main Inputs i. Passenger name ii. Seat Booking passengers id identify passenger who booked the seats its phone number iii. Passenger address, phone number, Gender iv. Departure date and time for passenger Outputs i. Seat Booking Interface ii. Departure configuration details iii. Add new user means(Counter master) Software will be designed to allow users perform following functions i. Log on either as System administrator or as a System user. ii. Add a passenger into system. iii. Update or delete record information depending on the user authorization level.
  • 39. | Page |39 4.5: Design Map The system design will take the following mapping when ready Figure: Design map
  • 40. | Page |40 4.6: Use Case UML Use Case Diagrams can be used to describe the functionality of a system in a horizontal way. That is, rather than merely representing the details of individual features of your system, UCDs can be used to show all of its available functionality. It is important to note, though, that UCDs are fundamentally different from sequence diagrams or flow charts because they do not make any attempt to represent the order or number of times that the systems actions and sub-actions should be executed. Figure: Use case diagram for Admin and Operator
  • 41. | Page |41 4.7: Use case Diagram for operator and Visitors /Passenger Use case diagram of Operator (Counter master) and General user means Registered user and non-Registered user Figure: Use Case diagram
  • 42. | Page |42 4.8: Context Diagram We usually begin withdrawing a context diagram, a simple representation of the whole system. To elaborate further from that, we drill down to a level 1 diagram with additional information about the major functions of the system. This could continue to evolve to become a level 2 diagram when further analysis is required. Progression to level 3, 4 and so on is possible but anything beyond level 3 is not very common. Please bear in mind that the level of detail asked for depends on your process change plan. 4.8.1: Context diagram (Level 0 DFD) Figure: Context Diagram level-0
  • 43. | Page |43 4.9 Class Diagram Class diagram is UML structure diagram which shows structure of the designed system at the level of classes and interfaces, shows their features, constraints and relationships, generalizations, dependencies and association etc. Figure: Class Diagram
  • 44. | Page |44 4.10 ERD (Entity Relationship Diagram) Figure: Entity Relationship Diagram Entity-relationship (ER) diagram, a graphical representation of entities and their relationships to each other, typically used in computing in regard to the organization of data within databases or Information systems. An entity is a piece of data-an object or concept about which data is stored
  • 45. | Page |45 4.2.1 Categories of Table of Physical design of database table: Database name: eticket 4.2.1.1 Table name: Bus 4.2.1.2 Table name: Counter 4.2.1.3 Table name: User
  • 46. | Page |46 4.2.1.4 Table name: assign counter 4.2.1.5 Table name: Station 4.2.1.6Table name: Departure_config 4.2.1.7 Table name: Bus seats
  • 47. | Page |47 4.2.1.8 Table name: Passenger 4.2.1.9 Table name: Seat Booking
  • 48. | Page |48 4.2.2 Sequence Diagram Admin (Head of counter) and Operator (Specific counter master) Figure: Sequence diagram
  • 49. | Page |49 4.2.3 Sequence Diagram for General User Figure: Sequence diagram for user.
  • 50. | Page |50 4.5 Physical design 4.5 .1 Registration and login pages: Admin and operator used their user name and password to login this system. It is the login user interface who is star user of the system and using the Admin Dashboard fill the email and password field. Figure: Login Page
  • 51. | Page |51 4.5.2 User Registration User of the admin dashboard who are got privilege to access this system they might be registered of the system. And if any user registered of the administrator of the system they might be using register form to user of the admin panel Figure: User Registration form 4.5.3 Bus Add Here is the bus add interface only admin of the system add bus fill the form of bus add and click the submit button to add the bus Figure: Bus Add Physical design
  • 52. | Page |52 4.5.4 Bus view This is the bus view physical interface in admin dashboard operator only see the bus details which bus is added in the main view of bus Figure: Bus View physical Design 4.5.5 Counter Add Here is the Counter add page and counter view page of admin only control this page Figure: Counter Add page
  • 53. | Page |53 4.5.6 Counter view page Here is counter view physical interface Figure: Counter view physical design
  • 54. | Page |54 4.5.7 Physical Design Departure Add and View Edit page Departure add for specific date and station configure only admin and operator control this form and operator only see the details of departure which bus are added which station Figure: Departure configures and view Physical design
  • 55. | Page |55 4.5.8 Departure edit page Figure: Departure edit physical design
  • 56. | Page |56 4.5.9 Passenger view page Passenger who are request to book ticket their record view Figure: Passenger view physical design 4.5.10 Physical Design User Interface User interface general user can search bus by using this interface this is the visitors and user interface. Figure 4.8.10: Physical design for user interface
  • 57. | Page |57 4.5.11 Physical Design User and visitors any type of user searches the bus by fill the form of station from and to and specific date. Figure: Physical design for user searching bus interface
  • 58. | Page |58 4.5.12 Physical Design Seat Booking Interface Bus seat booking interface and ticket confirmation form of user can select seat and fill the form to confirm seat and ticket for bus Figure: Physical design bus seat booking interface
  • 59. | Page |59 4.5.13 Physical design Seat and passengers interface User select seat and confirm by request to the counter master or head of counter book seat or ticket for bus fill the every filed of the passenger to sending request for ticket Figure: Physical design for passenger and seat booking interface
  • 60. | Page |60 Chapter 5 System Implementation 5.1.1 Introduction The system has been developed using object oriented concepts and PHP (MVC Framework) back hand database using MySQL 5.1.2 Purpose The document contains overviews of system, description of the major tasks that are required to be done before the system is put into use. 5.1.3 System Description This Automated Bus Ticket Booking Systems will manage all bus booking activities and seat booking, it will cover all passenger details and maintaining all record about the bus information. This will be facilitated in the database which will preserve their record for future reference. The system will processes data into useful information. 5.1.4 System Organization In this section it provides a brief description of system components necessary to the implementation of the system. The system The main functions that will be carried out by the application will be 1. No need sign up passengers to using the system 2. Tracking user by Mobile number 3. Seat Booking and 4. Canceling seats (before book confirm) 5. Assigning User the available seats 6. Keeping booking record 7. Generating reports 8. Generating phone number which will be used for passenger identification
  • 61. | Page |61 5.1.5 Hardware & Software Specifications  Hardware Requirements  PROCESSOR: Core i 3 or above  RAM: 2GB or above  Cache Memory: 2MB or above  Hard Drive : 50GB or above  Printer e.g. lase  Window or window 7 Software Requirements Tools-  IDE: Adobe Dreamweaver CS6  Database: MySQL  Editor: Sublime Text  Technology  UI/UIX: HTML5, CCS, Bootstrap, JavaScript, jQuery  Web-Technology: PHP  Back-End: MySQL  Web-Server: XAMPP Server
  • 62. | Page |62 5.1.6 Technical Description Automated bus ticket booking system used a number PHP files and database MySQL. In the system database related files are in DAL folder and controller are using to control the pages who are control the page admin or operator and every PHP pages must be include in configuration files and page are view in the admin or operator folders and visitors of the system view in view folder and client site language JavaScript and JQuery to reduced pressure to database access to modify information and seat booking purpose To improve coding efficiency and CSS file are used. The domain of the system is host in the directory Directory and PHP files description are given below Main Directories: 01-E-TicketBookingSystem Sub Directories: DAL (Data Access Layer)  DBConnect.php  dalUser.php  dalStation.php  dalSeatBooking.php  dalPassenger.php  dalDepartureConfig.php  dalCounter.php  dalBusSeats.php  dalBus.php  dalAssignSeats.php  dalAssignCounterPerson.php
  • 63. | Page |63 Admin or Operator operation  addUser.php  assignCounterPerson.php  assignseatsAdd.php  busAdd.php  busEdit.php  busseatsAdd.php  counterAdd.php  departureconfigAdd.php  departureconfigDel.php  departureconfigEdit  passengerAdd.php  stationAdd.php Controller (Pages Control)  Config.php  controlPages.php  functions.php  Home or View operation  Home.php  seat_booking.php 5.1.7 DBConnect.php <?php class DB{ public $err; protected function Connect(){ mysql_connect ("localhost", "root", ""); mysql_select_db("eticket"); } } ?> Figure: Database connectivity
  • 64. | Page |64 5.1.8 Controller: controlPages.php <?php if(isset($_GET['p'])){ include_once("view/".$_GET['p'].".php"); } else if(isset($_GET['u'])){ include_once("user/".$_GET['u'].".php"); }else{ include_once("view/home" .".php" ); } ?> Figure: Controller page control Config.php <?php session_start(); include_once("../DAL/DBConnect.php"); include_once("../DAL/dalBus.php"); include_once("../DAL/dalUser.php"); include_once("../DAL/dalCounter.php"); include_once("../DAL/dalAssignCounterPerson.php"); include_once("../DAL/dalStation.php");
  • 65. | Page |65 include_once("../DAL/dalDepartureConfig.php"); include_once("../DAL/dalBusSeats.php"); include_once("../DAL/dalAssignSeats.php"); include_once("../DAL/dalPassenger.php"); include_once("../Controller/functions.php"); ?> Figure: configuration page 5.1.9 Admin Login and Registration: <?php $msg = ""; if(isset($_POST["login"])){ $user = new User(); $user->Email = $_POST["email"]; $user->Password = $_POST["password"]; if($user->Login()){ $_SESSION["LoginId"] = $user->Id; Redirect("../AdminDashboard"); }else{ $msg = " &nbsp;&nbsp;&nbsp;Login Error"; } } ?>
  • 66. | Page |66 Login Form: In this login form when user enter email and password and go through the login button if they are registered of the system they can use the system can get admin privileges 5.1.10 Departure Add: Some of code <?php $departure = new DepartureConfig(); $counter = new Counter(); $bus = new Bus(); $station = new Station(); $msg ="";
  • 67. | Page |67 $err =0; if(isset($_POST["sub"])){ //echo $_POST["via_counters_array"]; if($err == 0){ $date = date("Y-m-d",strtotime($_POST["date"])); $departure->BusId = $_POST["busid"]; $departure->CoachNumber = $_POST["coachno"]; $departure->StationFrom = $_POST['station_from']; $departure->StationTo = $_POST["station_to"]; $departure->BusFare = $_POST["busfare"]; $departure->ViaCountersArray = $_POST["via_counters_array"]; $departure->ViaLocation = $_POST["vialocation"]; $departure->JourneyType = $_POST["journey_type"]; $departure->StartTime = $_POST["starttime"]; $departure->EndTime = $_POST["endtime"]; $departure->Date = $date; if($departure->Insert()){ $msg ="Insert Suceessfully"; }else{ $msg="Failed"; } }//end of error brace }//end of amin brace ?>
  • 68. | Page |68 Departure view <table class="mws-table" id="data-table"> <tr class="heading"> <th>Bus Name</th> <th>Coach Number</th> <th>Starting From</th> <th>Starting To</th> <th>Bus Fare</th> <th>Counter Name</th> <th>Location</th> <th>Journey Type</th> <th>Start Time</th> <th>End Time</th> <th>Assaign Date</th> <th>Edit</th> <th>Delete</th> </tr> <?php $r = $departure->Select(); $totalRow = count($r); if($r != ""){ for($i=0; $i<count($r); $i++){ ?> <tr> <td><?php echo $r[$i]["BusName"]; ?></td> <td><?php echo $r[$i]["CoachNo"]; ?></td> <td><?php echo $r[$i]["StationFrom"]; ?></td> <td><?php echo $r[$i]["StationTo"]; ?></td> <td><?php echo $r[$i]["BusFare"]; ?></td> <td><?php echo $r[$i]["via_counters_array"]; ?></td> <td><?php echo $r[$i]["Location"]; ?></td>
  • 69. | Page |69 <td><?php echo $r[$i]["JourneyType"]; ?></td> <td><?php echo $r[$i]["TimeStart"]; ?></td> <td><?php echo $r[$i]["EndTime"]; ?></td> <td><?php echo $r[$i]["Date"]; ?></td> <td><a title="Edit" href="?a=departureconfigEdit&id=<?php echo $r[$i]["id"]; ?>"><i class="icon-edit"></i></a></td> <td><a title="Delete" href="?a=departureconfigDel&id=<?php echo $r[$i][0]; ?>"><i class="icon-remove"></i></a></td> </tr> <?php } } ?> </table>
  • 70. | Page |70 5.1.10.1 Add Departure Configuration and view departure Basic insertion input instruction of this system is described with code A method is mapped to submit button that pass data to Data Access Layer and then the Data Access Layer executes the query to insert into database and also execute the query of view of table joining multiple table to view data from (DAL) using select statement . In this code of insert and view of departure major operation of our system some of codes here Figure: Departure adds and view basic inserting and view
  • 71. | Page |71 5.1.11 Departure Edit In this code are edit of departure when user admin want to update any type of information they can operate the operation <?php $departure = new DepartureConfig(); $counter = new Counter(); $bus = new Bus(); $station = new Station(); $msg =""; $err =0; if(isset($_POST["update"])){ if($err == 0){ $departure->Id = $_POST["id"]; $departure->BusId = $_POST["busid"]; $departure->CoachNumber = $_POST["coachno"]; $departure->StationFrom = $_POST['station_from']; $departure->StationTo = $_POST["busfare"]; $departure->ViaCountersArray = $_POST["via_counters_array"]; $departure->ViaLocation = $_POST["vialocation"]; $departure->JourneyType = $_POST["journey_type"]; $departure->Date = $date; $departure->StartTime = $_POST["starttime"]; $departure->EndTime = $_POST["endtime"]; if($departure->Update()){ $msg ="Update Suceessfully"; }else{ $msg="Failed"; } }//end of error brac }//end of brace
  • 72. | Page |72 $departure->Id = $_GET["id"]; $departure->SelectById(); ?> Departure Edit Basic Editing instruction of this system is described with code A method is mapped to Update button that pass data to Data Access Layer and then the Data Access Layer executes the query to update into database and also execute the query and retrieve data from database with edit purpose if the data are updated then data go through the database Figure: Updating implementation departure with update basic codes
  • 73. | Page |73 5.1.12 User Interface or Visitors Interface Following are some of code of user interface and user physical interface are given last of home .php code <?php $station = new Station(); $departure_config = new DepartureConfig(); $bus = new Bus(); ?> <?php $date = date("m/d/Y"); if(isset($_POST["search_bus"])){ $search_date = $_POST["start"]; f($search_date<$date){ echo "Invalid date"; return false; } $departure_config->StationFrom = $_POST["station_from"]; $departure_config->StationTo = $_POST["station_to"]; $departure_config->Date = date("Y-m-d", strtotime($_POST["start"])); $search_data = $departure_config->Select(); //echo "Station From: ".."<br/>"; //echo "Station To: ".$_POST["station_to"]."<br/>"; //echo "Departure Date: ".$_POST["start"]."<br/>"; if($search_data != ""){ ?>
  • 74. | Page |74 <table class="table table-bordered"> <tr> <th>Bus Name</th> <th>Coach No</th> <th>Station From</th> <th>Station To</th> <th>Bus Fare</th> <th>Departure Date</th> <th>Journey Type</th> <th>Total Seats</th> <th>Booking</th> </tr> <?php for($i=0; $i<count($search_data); $i++){ echo "<tr>"; echo "<td>".$search_data[$i]["BusName"]."</td>"; echo "<td>".$search_data[$i]["CoachNo"]."</td>"; echo "<td>".$search_data[$i]["StationFrom"]."</td>"; echo "<td>".$search_data[$i]["StationTo"]."</td>"; echo "<td>".$search_data[$i]["BusFare"]."</td>"; echo "<td>".$search_data[$i]["Date"]."</td>"; echo "<td>".$search_data[$i]["JourneyType"]."</td>"; echo "<td>".$search_data[$i]["seat"]."</td>"; echo "<td><a class='btn btn-sm btn-success' href='?p=seat_booking&c_id=".$search_data[$i]["id"]."'>Select</a></td>"; echo "</tr>"; ?> </table> <?php }else{ echo "No search results found on : ".$_POST["start"];
  • 75. | Page |75 echo "<br/>"; } ?> Physical Interface The user interface design for bus searching and up of the page here is searching operation bus which are added for this days .Basic searching instruction of this system is described with code A method is mapped to search button that pass data to Data Access Layer and then the Data Access Layer executes the query to select query into database and also execute the query of search of table joining multiple table to view data from (DAL) using select statement in this code of search and view of bus. Figure: Bus searching basic code and design here
  • 76. | Page |76 5.1.13 Seat Booking Interface Basic seat booking instruction of this system is described with code A method is mapped to submit button that pass data to Data Access Layer and then the Data Access Layer executes the query and pass data to insert into passenger table and departure table and seat booking <?php $config_info = new DepartureConfig(); $station = new Station(); $seat_booking = new SeatBooking(); $config_info->Id = $_GET["c_id"]; $row = $config_info->Select(); if(count($row)>1){ Redirect("?p=home"); } $bus_seats = new BusSeats(); $bus_seats_rows = $bus_seats->Select($row[0]["seat"]); $current_date = date("Y-m-d"); if($row[0]["Date"]<$current_date){ Redirect("?p=home"); } ?> <div class="row" id="meee"> <div> <div class="bg-front full-height row"> <div class="container rel"> <div class="search-tabs search-tabs-bg" style="margin-top:10px"> <div class="row"> <div class="col-lg-12">
  • 77. | Page |77 Total Seat: <?php echo $row[0]["seat"]; ?>|| From: <?php echo $row[0]["StationFrom"]; ?> || To: <?php echo $row[0]["StationTo"]; ?> || Departure Date: <?php echo $row[0]["Date"]; ?> || Time: <?php echo $row[0]["TimeStart"]; ?> || <span id="busFare"><?php echo $row[0]["BusFare"]; ?></span> </div> </div> <div class="row"> <div class="col-lg-12"> <!--Seat Booking Section Work--> <div class="main-container"> <div id="seat_container" class="bus-container-col-4 shadow radius padding-bottom"> <div class="wheel"> <img src="UiAssets/ticketbooking/icon/wheel.png" /> </div> <div class="seat- container margin-bottom" id="bus_seats"> <?php $j=0; $k = 0; for($i=0; $i<count($bus_seats_rows); $i++){ $j++; $seat_booking->DepartureConfigId = $_GET["c_id"]; $seat_booking->SeatsArray = $bus_seats_rows[$i][1]; $checkBooking = $seat_booking->CheckExist();
  • 78. | Page |78 //echo count($checkBooking); //if() if($j <= 3){ if($j%3==0){ if($checkBooking>0){ echo '<span class="seats space booked '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; }else{ echo '<span class="seats space '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; } }else{ if($checkBooking>0){ echo '<span class="seats booked '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; }else{ echo '<span class="seats '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; } } }else{ $k++; if($k%4 == 0){ if($checkBooking>0){ echo '<span class="seats space booked '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; }else{ echo '<span class="seats space '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; } }else{
  • 79. | Page |79 if($checkBooking>0){ echo '<span class="seats booked '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; }else{ echo '<span class="seats '.$bus_seats_rows[$i][1].'">'.$bus_seats_rows[$i][1].'</span>'; } } } } ?> </div> </div> <div class="bus-container-col-4 margin-left"> <?php $passenger = new Passenger(); $seat_booking = new SeatBooking(); if(isset($_POST["sub"])){ $seats_array = $_POST["seats_array"]; $full_name = $_POST["full_name"]; $email = $_POST["email"];
  • 80. | Page |80 $mobile = $_POST["mobile"]; gender = $_POST["gender"]; $passenger->Mobile = $mobile; $passenger->SelectByMobile(); $seat_booking->DepartureConfigId = $_GET["c_id"]; $seat_booking->SeatsArray = $seats_array; $seat_booking->PassengerId = $passenger->Id; $seat_booking->ConfirmedBy = 0; $seat_booking->ConfirmationStatus = 0; if($seat_booking->Insert()){ echo "Already Registered.. Your Booking information submitted"; } }else{ passenger->Name = $full_name; $passenger->Email = $email; $passenger->SeatsArray = $seats_array; $passenger->Mobile = $mobile; $passenger->Gender = $gender if($passenger->Insert()){ $passenger->SelectByMobile($mobile); $seat_booking->DepartureConfigId = $_GET["c_id"]; seat_booking->SeatsArray = $seats_array; $seat_booking->PassengerId = $passenger->Id; $seat_booking->ConfirmedBy = 0; $seat_booking->ConfirmationStatus = 0; if($seat_booking->Insert()){ echo "Your Booking information submitted"; }
  • 81. | Page |81 } } ?> <table class="table table-bordered" id="ticket_info"> <tr> <th>Seat</th> <th>Fare</th> <th>Remove</th> </tr> </table> <span class="col-lg-12">Total Fare: <span id="total_fare"></span></span> <div class="col-lg-12"> <form action="" method="post"> <div class="form-group"> <input type="text" name="seats_array" class="form-control" id="seats_array" placeholder="Enter email"> </div> <div class="form-group"> <input type="text" class="form-control" name="full_name" id="full_name" placeholder="Enter full name"> <div> <div class="form-group"> <input type="text" name="email" class="form-control" id="email" placeholder="Enter email"> <div> <div class="form-group"> <input type="text" class="form-control" id="mobile" name="mobile" placeholder="Enter mobile"> </div> <div class="form-group">
  • 82. | Page |82 <select name="gender" class="form-control"> <option>Select Gender</option> <option value="Male">Male</option> <option value="Female">Female</option> </select> </div> <button type="submit" name="sub" class="btn btn-default">Submit</button> </form> </div> </div> </div> <!--End Seat Booking Section Work--> </div> </div> </div> </div> </div> </div> //client site programming using jQuery to seat booking purpose here is code <script> $(document).on("click",".seats",function(){ var this_seat = $(this); var selected_seat = $(this).text(); var fare = $("#busFare").text(); var new_row = "<tr class='new_row'><td class='seat_taken'>"+selected_seat+"</td><td>"+fare+"</td><td><i class='fa fa-times remove'></i></td></tr>";
  • 83. | Page |83 var check_exist = 0; var count_select = 0; $("#ticket_info tr").each(function(index, element) { count_select++; var exist_seat = $(this).children("td").eq(0).text(); if(selected_seat == exist_seat){ check_exist++; } }) if(count_select>5){ alert("You have selected maximum seats"); return false; } if($(this).hasClass("booked")){ alert("The seat is already booked"); return false; } if(check_exist > 0){ alert("You already have selected this seat"); }else{ $this_seat.addClass("selected_seat"); $("#ticket_info").append(new_row); var total_fare = 0; var seats = ""; $("#ticket_info tr").each(function(){ if($(this).hasClass("new_row")){ total_fare += parseInt($(this).find("td").eq(1).text()); seats += $(this).find("td").eq(0).text()+","; }
  • 84. | Page |84 }); $("#total_fare").text(total_fare); $("#seats_array").val(seats); } }); $(document).on("click",".remove",function(){ $(this).parents("tr").remove(); var remove_selection = $(this).parents("tr").children(".seat_taken").text(); $(".seats").each(function(index, element) { var seat = $(this); if(remove_selection == $(this).text()){ seat.removeClass("selected_seat"); } }); var total_fare = 0; $("#ticket_info tr").each(function(){ if($(this).hasClass("new_row")){ total_fare += parseInt($(this).find("td").eq(1).text()); } }); $("#total_fare").text(total_fare); }); /****************************Loading************************************/ setInterval(function(){ $("#seat_container").load(location.href + " #seat_container"); $("#ticket_info tr").each(function(){ var obj = $(this);
  • 85. | Page |85 if($(this).hasClass("new_row")){ var current_seat = $(this).find("td").eq(0).text(); if($("."+current_seat).hasClass("booked")){ var bus_fare = parseInt($("#total_fare").text()) - parseInt($("#busFare").text()); obj.remove(); $("#total_fare").html(bus_fare); var new_seats_array = $("#seats_array").val().replace(current_seat+",", ""); $("#seats_array").val(new_seats_array); } $("."+current_seat).addClass("selected_seat"); } }); console.log("Load ++ "); }, 1000) </script>
  • 86. | Page |86 Seat Booking Seat booking user interface where user select seat and fulfill form to confirm ticket of bus and seat of bus and code are upper of the page Figure: Seat booking some of code and implementation here
  • 87. | Page |87 CHAPTER 6 Testing 6.1 Introduction This is aimed at identifying and correcting errors. The major objective of this activity is to ensure that the processing done by the application is correct and meets the objectives of the organization. Test plan aids in effective and systematic testing of the system and it aims at checking the errors of omission and commission that hinders the realization of the objectives. It takes the bottom up testing approach. 6.2 Importance of testing 1.Testing is used to find program errors on the system. 2.It is used to find undercover errors in a program through the use of defect testing. 3.Testing is also used to uncover new types of errors associated with new inventions and technology 4.Testing aims at assuring quality by enforcing consistency and reliability. 5.It is used for both validation and verification to develop a product that meets user requirement. 6.It is used to identify the best component combination for effective error identification.
  • 88. | Page |88 6.3 Test Plan Strategy The importance of the test plan is to show how the system is to be tested and also gives precise procedures to be followed during the test plan. The test date is identified, what is being tested and the expected output as well as the actual input. Test plan is one of the standard documents that should be produced in most software engineering projects. If the project does not have any test plan this means that the software produced is of low quality. This may not be acceptable to the user since it will not satisfy their needs. The test plan should be written as soon as you have identified the requirements. The system will be tested with sample data to see how it would handle input and output functions as well as extreme data or conditions to determine the system behavior in overloaded situation which will directly slow the system that behaves in failure or extreme situations.  Unit testing  Module testing  System testing  Integration testing. 6.3.1Unit testing In this type of testing, the smallest testable parts of the system I.e. units are individually tested and independently examined for correct functionality. This type of testing involves both the positive testing and negative testing. This is important so as to make sure that the system functions properly when used both correctly and incorrectly. In this case, the forms in visual basic as well as the tables for the database will be tested individually to ensure that they are compatible. This also applies to the operating system and the software applications. 6.3.2Integration testing This is where two or more related programs are tested. The test will involve two types of approaches i.e. the bottom-up approach that begins with the simplest task to the most complex part .e.g. from passenger information table to the database and top-down approach that tests the system from the complex task to the simplest unit of all. We seek to verify that all the hardware function together without conflicting.
  • 89. | Page |89 All the forms linked to the database should be connected well without any issue. Ensure that all the programs work well to avoid interruption and there is no issue whatsoever affecting database update. 6.3.3System testing I this type of testing we shall test the entire system for functionality to ensure that the system can process and handle large volumes of data quickly and efficiently. The test will be done with a sample of some users who will use the system under test in its actual capability environment. Possible problems are corrected before really conversion. 6.3.4Acceptance testing This test will complete the formal testing process where all the users and the administrator will use the system so as they get familiar with it. The users test the system before it is rolled out to be fully used. i. Beta testing-Carried out at bus company premise. This involve delivering the system to number of potential clients to use the system and report back to developer key malfunctions with an understanding that the product is still being tested. ii. Alpha testing-It takes place at the developer site. It is the final testing before the software is about to be released to the hospital for use. 6.3.5Recovery testing Recovery testing will force the system to fail in various ways and try to verify that the recovery is efficiently done or performed. It is vital that all the data is recovered after the system failure and no corruption of data.
  • 90. | Page |90 6.4 Test Case A test case is a set of conditions or variables under which a tester will determine whether a system under test satisfies requirements or works correctly. The process of developing test cases can also help find problems in the requirements or design of an application.  Ensure that logical decisions on their true and false sides.  Practice all logical decisions on their true and false sides.  Execute all loops at their boundaries and within their operational bounds.  Exercise internal data structure to assure their validity. 6.4.1 User Registration Module Test Case  Admin (Head Counter master) Operator Registration module (Counter master) Test Case Unit Test Test Case Id.1 Module Name: Registration Module :Counter master and Head of counter master Sign Up Test Designed :Farhad Hossain & Abdur Rahman Sabuj Test Priority: (Low/Medium/High): High Test Date:18.12.2014 Test Title: User Registration and valid info Test Executed By: Farhad Hossain Description: Test the system user registration page Test Executed Date:28.12.2014 Condition: The user Redirect to user registration page and input the required filled. And click on the submit button.
  • 91. | Page |91 Registration module Unit Test 1: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to user registration page Click to Registration link addUser.php User should be registered successfully and the email address is the login id. Redirect to Dashborad Pass 2 Input Full Name Sabuj 3 Input Email sabuj@gmail.com 4 Input Password ******** 5 Input information Khulna 6 Input User Type Counter operator 7 Click to Submit Button
  • 92. | Page |92 Registration module 2: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to user registration page Click to Registration link addUser.php User can not registered successfully cause password erre. Redirect to Adduser.php page Fail 2 Input Full Name Evans 3 Input Email sabujas@gmail.com 4 Input Password **** 5 Input information Khulna 6 Input User Type Counter operator 7 Click to Submit Button Registration module Unit Test 3: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to user registration page Click to Registration link
  • 93. | Page |93 2 Input Full Name Shakib addUser.php Registered successfully done Redirect to Adduser page and notify sign up sucessfully Pass 3 Input Email sakib@gmail.com 4 Input Password ******** 5 Input information Khulna 6 Input User Type Counter operator 7 Click to Submit Button 6.4.2 User Login Module:  User Login Test Case Id.2 Module Name: Departure Configuration Module : Log in Module Test Designed :Farhad Hossain & Abdur Rahman Sabuj Test Priority: (Low/Medium/High): High Test Date:24.12.2014 Test Title: Log in valid email and password info Test Executed By: Farhad Hossain &Abdur Rahman Sabuj Description: Test the login add module Test Executed Date:05.1.2015
  • 94. | Page |94 Pre-Condition: The user Redirect to user Login page and input the email and password required filled. And click on the Login button Login module Unit test1: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to index.php Click to login button login.php If user give valid email and password they might be login the system Pass 2 Input Email admin@gmail.com Input password ******** 3 Log in Button Fixed-Condition: The user Redirect to user Login page and input the email and password required filled user session must be recorded in browser until user destroy the session logut .php Login module Unit test 2:
  • 95. | Page |95 Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to index.php Click to login button login.php If user give invalid email and password must be 8 character and email not valid and not registered they might be redirect login page Redirect log in page Fail 2 Input Email admins@gmail.com Input password ***** 3 Log in Button Fixed-Condition: The user Redirect to user Login page and invalid input the email and password required
  • 96. | Page |96 Login module Unit test 3: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to index.php Click to login button login.php User login the system cause email and password are valid Redirect Admin Dashboard pass 2 Input Email ashik@gmail.com Input password ******** 3 Log in Button Fixed-Condition: The user Redirect to user admin dashboard page and valid input the email and password. 6.4.3 Departure Configuration Module:  Departure Add Module Test Case Id.2 Module Name: Departure Configuration Module : Departure Add Module Test Designed :Farhad Hossain & Abdur Rahman Sabuj Test Priority: (Low/Medium/High): High Test Date:21.12.2014 Test Title: Departure Add module valid info Test Executed By: Farhad Hossain &Abdur Rahman Sabuj
  • 97. | Page |97 Description: Test the departure add module Test Executed Date:02.1.2015 Condition: Departure add Redirect Departure page and input the required filled. And click on the submit button Departure Configuration Module Unit Test 1: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to Departure add page Click to Departure add link Departure Pass 2 Input Select Coach Narial Express 3 Input Coach number Shakib111 4 Input station from Jatrabari 5 Input station to Meghpara chi 6 Input bus fare 700 7 Input via Daudkandi
  • 98. | Page |98 counter departureconfigAdd add successfully if admin add departure Redirect to departureconfigAdd page 8 Input via location Daudkandi 9 Input Journey type Special 10 Input assign date 2015-04-02 11 Start time 11.00am 12 End time 4.00pm 13 Click to Submit Button Fixed Condition: if the head counter master add departure with a valid data the information saved in database
  • 99. | Page |99 Departure Configuration Module Unit Test 2: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Redirect to Departure add page Click to Departure add link departureconfigAdd Departure not added Redirect to departureconfigAdd page Fail 2 Input Select Coach Empty Field 3 Input Coach number Shakib111 4 Input station from Motijeel Dhaka 5 Input station to Meghpara chi 6 Input bus fare 330 7 Input via counter Dadkandi 8 Input via location Daudkandi 9 Input Journey type Special 10 Input assign 2015-04-02
  • 100. | Page |100 date 11 Start time 11.00am 12 End time 4.00pm 13 Click to Submit Button Fixed Condition: If any input filed is empty and departure not addes and redirect add departure pages
  • 101. | Page |101 6.4.4 Bus Searching module Test:  Bus Searching module Test Case Id.2 Module Name: Bus Searching Module : Bus Searching module Test Designed :Farhad Hossain & Abdur Rahman Sabuj Test Priority: (Low/Medium/High): High Test Date:29.12.2014 Test Title: Bus searching module valid info Test Executed By: Farhad Hossain &Abdur Rahman Sabuj Description: Test the departure searching module Test Executed Date:11.1.2015 Condition: Bus Searching given with station name from and to where u going to and going from and click the search button Bus Searching unit test 1: Step Test step Test Data Code Module Expected result Actual Result Pass/ Fail Notes 1 Input where are you going from Comilla Mounamuti http://localhost:84/01- E- If user/visitors fill the station from and to and search the Pass 2 Input admin@gmail.com
  • 102. | Page |102 Email TicketBookingSystem/ bus they can get result in bus table with details Input where are you going To Chandina 3 Input Select date 2015-05-14 Fixed-Condition: Visitors and user fill the form and then show a bus table which bus are added in the specific date
  • 103. | Page |103 6.4.5 Bus Seat Booking module Test Case:  Bus Seat booking module Test Case Id.2 Module Name: Bus seat booking Module : Bus seat booking module Test Designed :Farhad Hossain & Abdur Rahman Sabuj Test Priority: (Low/Medium/High): High Test Date:9.03.2014 Test Title: Bus searching module valid info Test Executed By: Farhad Hossain &Abdur Rahman Sabuj Description: Test the seat booking Test Executed Date:12.3.2015 Bus Seat booking module Unit Test 1: Ste p Test step Test Data Code Module Expecte d result Actua l Result Pass / Fail Note s 1 Input select the seats A4 seat_booking.ph p Pass 2 Input Entire Full Name Farhad Evan Input Entire email farhadevan@gmail.co m
  • 104. | Page |104 3 Input mobile numbe r 01938161058 4 Input gender Male 5 Click on submit Submit Fixed-Condition: Visitors and user fill the form and then show a bus table which bus are added in the specific date 6.4.6 Test Report Software testing reports are just as important as running tests. It is easier said than done with new test cases being added to your test plan in each release. Generally, this is a communication sent out to establish transparency to the QA team’s activities of the day during the test cycle Number of Unit Test First iteration 100% success Less then 100% Total succession Total:10 7 3 70% Total:10 10 0 100% Total unit test case sample are 10. Some test cases are succeeding in first iteration and some are succeed in second iteration. The succession percent are shown in following table: Conclusion: All testing was done carefully and each test was up to the required standards of the users’ .error tests may be suggested but the above mentioned are just sufficient to test. Testing is an essential phase in system development and therefore it should be taken with a lot of interest