You are on page 1of 26

Faculty of Art and Science

Department of Mathematics and Computer Science

MCS 491 Graduation Project I

BUS RESERVATION SYSTEM


200822024 DUYGU KANDEMR
200822025 HASAN KARPUZ

Instructor: Assist. Prof. Dr. zgr Tolga PUSATLI


December 2012 Ankara
1

CONTENT
1) INTRODUCTION
1.1 Purpose of Report
1.2 Objectives
1.3 Limitations
2) SOFTWARE DEVELOPMENT LIFE CYCLE
3) DATABASE DESIGN
3.1) Requirement Analysis
3.2) Conceptual Design
3.3) Logical Design
3.4) Physical Design
4) USERS
4.1) Admin
4.2) Employee
5) SOFTWARE INTERFACES
6) USER INTERFACES
6.1) Login Form
6.2) Admin Form
6.3) Employee Form
6.4) Service Information Form (not including Plate)
6.5) Reservation Form
6.6) Passenger Information Form
6.7) Actual Service Information Form
6.8) Service Information Form (with Plate)
6.9) Driver Information Form
6.10) Service Form (for Modifying)
6.11) Service Form
6.12) Service List Form
6.13) Bus Form
6.14) Driver Form
7) SAMPLE CODES
7.1) Service Adding/Updating Process
7.2) Database Connection Code
8) TESTING
9) FUTURE WORKS
10) CONCLUSION
11) BIBLIOGRAPHY
2

3
3
3
3
4
4
5
6
7
8
8
8
8
9
10
10
11
12
13
14
15
16
17
18
19
20
20
21
21
22
22
23
23
24
25
26

1) INTRODUCTION
1.1) Purpose of Report
The purpose of this report is to explain detailed description of Bus
Reservation System. It will explain the aim of the project, the limitations
of the system, interfaces of the system, what the project will do, what
kind of future works may be done.

1.2) Objectives
This project is based on a scenario. In this scenario, customer
wants to know bus services with their time and date when he decided to
travel. He can do this by a phone call or going to agency. In both
situations, he will meet the employee who work at the agency and get
information about services, its departure time, departure date,
destination time, suitable seats etc. If he decides to reserve a ticket, then
employee will take some personnel information from customer and will
reserve a seat that customer selected.
Travelling is a large growing business in Turkey and other
countries also. It becomes very difficult to keep bus services records and
customer information. Our project will be useful in the Bus Reservation
System.
This projects aim is to satisfy a facility to reserve seats,
cancellation of seats and different types of enquiry like seat status,
service enquiry and service time.

1.3) Limitations
This project has some limitations. Firstly, services are only between
Ankara Istanbul and Istanbul-Ankara. Secondly, each day there are
three services for each direction at 9.00 am, 1.00 pm and 8.00 pm.
Thirdly, ticket can be reserved by an employee who works at the agency.
Namely; customer cannot reserve a ticket. Finally, man and woman
cannot seat side by side if they do not know each other.
3

2) SOFTWARE DEVELOPMENT LIFE CYCLE


Software development processes are shown below.

Figure 2.1 Software Development Life Cycle

3) DATABASE DESIGN
The database design was created by collected all relevant
information regarding customers request. In fact, the Database Life
Cycle never ends because database monitoring and modification are
part of the life cycle, and these activities continue long after a database
has been implemented. Database Life Cycle is shown below.

Figure 3.1

Database Life Cycle

3.1) Requirement Analysis


Requirements Analysis is the first and most important stage in the
Database Life Cycle. This stage involves assessing the informational
needs of an organization so that a database can be designed to meet
those needs.

Figure 3.1.1 Requirement Analysis Process

The requirements and the collection analysis phase produce both


data requirements and functional requirements. The functional
requirements are used as a source of application software design. The
data requirements are used as a source of database design.

3.2) Conceptual Design


After collecting and analyzing all requirements, we have to create a
conceptual diagram for the database. We used Entity-Relationship (ER)
diagram which is high level conceptual data model and design can be
diagrammatically represented and easily understood. ER diagram
consists of entities, attributes related to these entities and relationships;
and some additional constructs: week entities and aggregation. Entity is
real-world object, distinguishable from other objects. An entity is
described using a set of attributes. An attribute is a property that
describes an entity. Relationships are used to tie together different
entities (two or more entities). Relationships can have their own
attributes.
You can see this projects ER diagram below. Information is taken
from Bus Company and limitations are also specified.
There are 7
entities and attributes related to these entities. Service-Bus ServiceCustomer and Service-Driver are designed to be suitable first normal
form. Customer entity keeps personal information. Bus entity keeps
bus information. Service keeps departure and destination information
and in Driver entity there is information for two bus driver.

Figure 3.2

E-R Diagram of Bus Reservation System


6

3.3) Logical Design


The tables sketched in the ER diagram are then normalized. The
normalization process resolves any problems associated with the
database design, so that data can be accessed quickly and efficiently.

Figure 3.3 Relational Data Model of Bus Reservation System

3.4) Physical Design


The Physical Design stage has only one purpose: to maximize
database efficiency. This means finding ways to speed up the
performance of the relational database management system (RDBMS).
Manipulating certain database design elements can speed up the two
slowest operations in an RDBMS: retrieving data from and writing data to
a database.
4) USERS
4.1) Admin
 Make reservation
 Cancel reservation
 Enter actual time/date
 Assign a bus to service
 Assign drivers to service
 Add new service
 Modify service
 Cancel service
 Add new bus
 Add new driver

4.2) Employee
 Make reservation
 Cancel reservation
 Enter actual time/date
 Assign a bus to service
 Assign drivers to service
8

4.1

Use Case Diagram

5) SOFTWARE INTERFACES
C# was used as programming language and MySQL was used as
a database server.
MySQL is the most popular database server. With superior speed,
reliability and ease of use MySQL became the preferred choice of
corporate IT managers as it eliminates major problems associated with
downtime, maintenance administration and support.
C# is a simple, modern, powerful and safe programming language.
It compiles fast and debugging is easy. User can execute arbitrary
expressions and call their own functions and properties from within
Visual Studios debugger. It derives from C and C++.

6) USER INTERFACES
The format of the all interfaces was designed as possible as easy
understanding and user friendly. Pages were connected to each other in
a consistent way. Operations that are done with the system were
repeatable. The design of the pages allows the users to use this easily.

6.1) Login Form


First screen is Login form. User needs to choose his status as
Admin or Employee. Then, user has to enter password correctly to login.
If user enters incorrect password, he will receive an error message as
invalid password. Also, when user clicks the About us button, user
can get some information about aim of this project, developers and
contact addresses. Finally, user can quit this program.

Figure 6.1 Login form of Bus Reservation System


10

6.2) Admin Form


If user chooses his status as Admin, Admin Form will appear. This
form shows capabilities of Admin.

Figure 6.2 Admin Form of Bus Reservation System

11

6.3) Employee Form


If user chooses his status as Employee, Employee Form will
appear. This form shows capabilities of Employee.

Figure 6.3 Employee Form of Bus Reservation System

User can choose one of these buttons, return Login Form or quit
program.

12

6.4) Service Information Form (not including Plate)


If user (Admin or Employee) clicks Make/Cancel Reservation
button, Service Information Form needs to be filled.

Figure 6.4 Service Information Form of Bus Reservation System

User can select direction as Ankara-stanbul or stanbul-Ankara


and select time as 09.00, 13.00 or 20.00.

13

6.5) Reservation Form


After user fills Service information form, Reservation Form will
appear.

Figure 6.5 Reservation Form of Bus Reservation System

In this form, user needs to select an available seat. After right click
to the seat, reserved choice will appear and if seat is reserved,
Passenger Information Form needs to be filled.
14

6.6) Passenger Information Form

Figure 6.6 Passenger Information System Form of Bus Reservation

After user fills passenger information, seats color will change


according to gender in the Reservation Form. If it is reserved for a man,
color will blue; if it is reserved for a woman, color will be pink.
If user right click to a reserved seat cancel choice will appear and
if it is canceled then seat will be available to reserve and its color will be
again green.

15

6.7) Actual Service Information Form


If user (admin or employee) clicks Enter actual time/date button;
firstly, user needs to fill Service Information Form. Then, Actual Service
Information Form needs to be filled.

Figure 6.7 Actual Service Information Form of Bus Reservation System

User has to fill this form according to Date format and Time format
appropriately.

16

6.8) Service Information Form (with Plate)


If user (admin or employee) clicks Assign bus to service button or
service cancellation button; Service Information Form needs to be filled.

Figure 6.8 Service Information Form of Bus Reservation System

For this process, Plate is visible in the form.

17

6.9) Driver Information Form


If user (admin or employee) clicks Assign drivers to service
button; after Service Information Form is filled, Driver Information Form
needs to be filled.

Figure 6.9 Driver Information Form of Bus Reservation System

18

6.10) Service Form (for Modifying)


If user (only admin) clicks Modify service button; after Service
Information Form is filled, Service Form can be changed.

Figure 6.10 Service Form of Bus Reservation System

19

6.11) Service Form


If user (only admin) clicks Add new service button; Service Form
needs to be filled.

Figure 6.11 Service Form of Bus Reservation System

6.12) Service List Form


If user (only admin) clicks List current services button; Service
List Form will appear.

Figure 6.12 Service List Form of Bus Reservation System


20

6.13) Bus Form


If user (only admin) clicks Add new bus button; Bus Form needs
to be filled.

Figure 6.13 Bus Form of Bus Reservation System

6.14) Driver Form


If user (only admin) clicks Add new driver button; Driver Form
needs to be filled.

Figure 6.14 Driver Form of Bus Reservation System


21

7) SAMPLE CODES
7.1) Service Adding/Updating Process

22

7.2) Database Connection Code

8) TESTING
We tested our project by getting help other people.

References No

01

Date

27.12.2012

Name

Tolga PUSATLI

Scenario

Bus reservation system was started. Until closing


the application, everything was working correctly. When
Mr. Pusatl closed application by clicking control button
(close button), application disappeared but debugging
still continued.

Outcome

Control buttons were removed and quit button was


inserted to all forms and provided to close debugging.
23

References No

02

Date

30.12.2012

Name

Gamze KANDEMR

Scenario

Bus reservation system was started. Ms.


KANDEMR logged in as Admin and tried to add new
bus. After she filled the Bus Form and clicked SAVE
button, application closed.

Outcome

Bus Form code was examined, this.close() was


written in Bus Form. This row was deleted.

9) FUTURE WORKS
In future, there will be new works on this project.
 Break time and break place will be kept in database for each
service.
 Customer will make reservation.
 Admin can add new employee
 Printing system will be integrated this process.
 This project can be changed as web-based application.
After these works, according to customer requirements, extra
works can be added.

24

9) CONCLUSION
Nowadays, bus agencies are taking important role in
transportation, and to make reservation reliable they need a strong
system that they will make reservation easier, faster and safer.
This project designed to meet requirements of a bus reservation
system. It has been developed in C# and database has been built in
MySQL. We faced some difficulties in programming and E-R diagram but
we overcome these difficulties by searching and discussing with our
instructor.
Our project, make well connection between pages, roles and lead
roles to enter correct information to forms. With this bus reservation
system people can travel without any misunderstanding that occurs by
system of agencies.
Our aim is to make passengers happy and do not make agencies
embarrassed against customer. For that reasons, we tried to create
strong system. We believe that we achieved our goals and developed
our goals by coding.

25

10) BIBLIOGRAPHY
[1] Database Systems Models, Languages Design and Application
Programming, Ramez Elmasri, Shamkant B.Navathe, Sixth Edition,
2011, Pearson
[2] Database System A Practical Approach to Design, Implementation,
and Management, Fourth Edition, Thomas Connolly, Carolyn Begg,
2005, Addison-Wesley
[3] System Analysis and Design, Kenneth E.Kendall, Julie E.Kendall,
Eighth Edition, 2010, Pearson
[4] Microsoft (last update in 2013) "Visual C# Resources, What's New
with Visual C#", available at:
http://msdn.microsoft.com/en-us/vstudio/hh341490.aspx, last visited
2.1.2013

26

You might also like