Top Banner
1 Faculty of Art and Science Department of Mathematics and Computer Science MCS 491 Graduation Project I BUS RESERVATION SYSTEM 200822024 DUYGU KANDEMİR 200822025 HASAN KARPUZÇİ Instructor: Assist. Prof. Dr. Özgür Tolga PUSATLI December 2012 Ankara
26
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Rapor

1

Faculty of Art and Science

Department of Mathematics and Computer Science

MCS 491 Graduation Project I

BUS RESERVATION SYSTEM

200822024 DUYGU KANDEMİR 200822025 HASAN KARPUZÇİ

Instructor: Assist. Prof. Dr. Özgür Tolga PUSATLI

December 2012 Ankara

Page 2: Rapor

2

CONTENT 1) INTRODUCTION 3

1.1 Purpose of Report 3 1.2 Objectives 3 1.3 Limitations 3

2) SOFTWARE DEVELOPMENT LIFE CYCLE 4 3) DATABASE DESIGN 4

3.1) Requirement Analysis 5 3.2) Conceptual Design 6 3.3) Logical Design 7

3.4) Physical Design 8

4) USERS 8 4.1) Admin 8 4.2) Employee 8 5) SOFTWARE INTERFACES 9 6) USER INTERFACES 10 6.1) Login Form 10 6.2) Admin Form 11 6.3) Employee Form 12 6.4) Service Information Form (not including Plate) 13 6.5) Reservation Form 14

6.6) Passenger Information Form 15 6.7) Actual Service Information Form 16 6.8) Service Information Form (with Plate) 17 6.9) Driver Information Form 18 6.10) Service Form (for Modifying) 19 6.11) Service Form 20 6.12) Service List Form 20 6.13) Bus Form 21 6.14) Driver Form 21 7) SAMPLE CODES 22 7.1) Service Adding/Updating Process 22 7.2) Database Connection Code 23 8) TESTING 23 9) FUTURE WORKS 24 10) CONCLUSION 25 11) BIBLIOGRAPHY 26

Page 3: Rapor

3

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 project’s 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.

Page 4: Rapor

4

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 customer’s 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

Page 5: Rapor

5

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.

Page 6: Rapor

6

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 project’s 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 Service-Customer 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

Page 7: Rapor

7

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

Page 8: Rapor

8

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

Page 9: Rapor

9

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 Studio’s debugger. It derives from C and C++.

Page 10: Rapor

10

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

Page 11: Rapor

11

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

Page 12: Rapor

12

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.

Page 13: Rapor

13

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.

Page 14: Rapor

14

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.

Page 15: Rapor

15

6.6) Passenger Information Form

Figure 6.6 Passenger Information System Form of Bus Reservation

After user fills passenger information, seat’s 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.

Page 16: Rapor

16

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.

Page 17: Rapor

17

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.

Page 18: Rapor

18

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

Page 19: Rapor

19

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

Page 20: Rapor

20

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

Page 21: Rapor

21

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

Page 22: Rapor

22

7) SAMPLE CODES

7.1) Service Adding/Updating Process

Page 23: Rapor

23

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.

Page 24: Rapor

24

References No 02

Date 30.12.2012

Name Gamze KANDEMİR

Scenario Bus reservation system was started. Ms. KANDEMİR 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.

Page 25: Rapor

25

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.

Page 26: Rapor

26

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