You are on page 1of 106

Table of Contents

INTRODUCTION........................................................................................................ 2
1.2.1Challenges of the current system................................................................................3
1.4Justifications........................................................................................................... 4
1.5 Scope.................................................................................................................... 4
1.6Methodology........................................................................................................... 5
CHAPTER 2.................................................................................................................. 7
2.0 Literature review......................................................................................................... 7
Features..................................................................................................................... 7
Horizon Coach............................................................................................................. 7
RESOURCE AND BUDGET ESTIMATES FOR THE PROJECT:............................................8
Chapter3........................................................................................................................ 9
SYSTEM REQUIREMENTS AND SPECIFICATION...............................................................9
3.0 INTRODUCTION....................................................................................................... 9
3.1 Purpose................................................................................................................. 9
3.2Scope.................................................................................................................. 10
3.3 Definition of The Acronyms and Abbreviations..............................................................10
3.4 Overview............................................................................................................. 11
3.5 THE OVERALL DESCRIPTION..................................................................................11
3.5.1 The Perspective Of The Products............................................................................. 11
3.6.1 Software Interfaces........................................................................................... 12
3.7 User Characteristics................................................................................................ 13
3.8 Apportioning of Requirements...................................................................................13
3.9 Assumptions and Dependencies.................................................................................13
3.10

SPECIFIC REQUIREMENTS.................................................................................14
1

3.10.1 External Interfaces............................................................................................. 14


3.11 User Interfaces.................................................................................................. 15
3.12 Software Interfaces............................................................................................ 15
3.13 Hardware Interfaces........................................................................................... 15
3.14Communication Interfaces.................................................................................... 16
2.15 Functional Requirements........................................................................................ 16
3.15.2 Nonfunctional Requirements.................................................................................17
3.15.3 Performance Requirements................................................................................ 17
3.16 Logical Database Requirements............................................................................ 17
3.16.2 Design Constraints.......................................................................................... 18
3.16.3 Standards Compliance...................................................................................... 18
3.16.4 Reliability..................................................................................................... 18
3.16.5 Availability.................................................................................................... 18
3.16.6 Security........................................................................................................ 18
3.16.7 Maintainability............................................................................................... 18
3.16.8 Portability..................................................................................................... 18
3.17 Change Management Process...................................................................................... 19
3.18 Supporting Information............................................................................................. 19
a)

Purpose............................................................................................................. 20

b)

System overview................................................................................................. 20

c)

Intended users.................................................................................................... 20
a)

Main Inputs:................................................................................................... 21

b)

Outputs......................................................................................................... 21

4.3 DESIGN CONSIDERATIONS................................................................................... 23


a)

Assumptions...................................................................................................... 23

b)

Goals and guide lines........................................................................................... 23


2

4.4 SYSTEM ENVIRONMENT...................................................................................... 24


a)

Development tools............................................................................................... 24

b)

Design methodology............................................................................................ 24
Database design..................................................................................................... 25

c)

Conceptual design............................................................................................... 25

d)
e)

Identification of relationships.............................................................................25

f)

Data normalization.......................................................................................... 26
Physical data design............................................................................................ 26

g)
a)

Database file management security......................................................................29

4.6 ARCHITECTURAL AND COMPONENT LEVEL DESIGN............................................30


a.

Flow Chart Symbols............................................................................................ 30

a.

Context Diagram................................................................................................ 33
b.

Data Flow Diagrams......................................................................................... 33

4.7 USER INTERFACE DESIGN.................................................................................... 35


5.3Test Plan Strategies................................................................................................ 49
5.3.1Unit testing..................................................................................................... 50
5.3.2Integration testing............................................................................................ 50
5.3.3System testing.................................................................................................. 51
5.3.4Acceptance testing............................................................................................ 51
5.3.5Recovery testing............................................................................................... 51
CHAPTER 7................................................................................................................ 58
INTRODUCTION...................................................................................................... 98
Specifications............................................................................................................ 98
Requirements............................................................................................................ 98
Navigation Buttons............................................................................................... 101
APPENDIX............................................................................................................ 103
3

Gnatt chart............................................................................................................. 104


REFERENCES.......................................................................................................... 106

CHAPTER 1
INTRODUCTION

BUS BOOKING MANAGEMENT SYSTEM is aimed at reducing paper work for the bus
industry and hence improving its efficiency and speeding up of all processes.
The database can be accessed by the passengers from any computer terminal connected through
LAN to a server where the system has been installed. Hence, all the related information about a
passenger is available to Admin and Employees. Thus this software saves the entire passengers
long queue and hassle.
1.1 Background
Horizon coach is a transport company Located in CBD Nairobi Kenya along Accra road. It was
started in 1958. The company is most well known passenger, courier, parcel delivery and
transport company operator in East Africa which provide the safest, most comfortable luxury
buses on Kenyan roads today.

1.2 Problem Statement


In Horizon Coach, most of the driver information is kept in a file. Therefore, it is quite hard for
them to search the driver information when needed. Moreover, it uses a lot of papers and data is
lost because no backup provided for the data. Some of the data is quite hard to read because the
form was filled up by hand writing.
Other problems that occur in Bus Information is tracking its maintenance record. Most of the bus
will be maintained at list four times in year. By using a manual form, each bus must have its own
maintenance record file. Problems that occur to this manual system are to store the maintenance
record file and to find it back. It takes quite a time in order to find the correct maintenance record
needed.

1.2.1Challenges of the current system

i.

Congestion of passengers in booking office leading to registration office using


manual assigning of numbers which is a waste of time.

ii.

Lack of immediate information storage the information generated by various


transactions takes time and efforts to be stored at a right file.

iii.

Lack of prompt updating- various changes to information like passenger details are
difficult to make as paper work is involved

iv.

Inability to automatically schedule services, generate receipt and receive payments


from passengers.

v.

Being unable to update the manual records.

vi.

Preparation of accurate and prompt reports-this becomes a difficult task as


information is difficult to collect from various books.

vii.

Inability to retain records as they are lost if they are kept on wrongly. e.g change of
office file storage.

1.2.2 Proposed solution


Horizon Coach have decided to take charge in designing a system that is friendly and will try to
work out solution in a way that favors the interests of every customer and workers, solve
problems faster, manage data, so that all the transactions become fast and there should not be any
error in transaction like calculation mistake and bill generation.
1.3 Objectives
The objective of Bus booking management system is to easily track the information of all
customers, drivers 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 time
taken through manual system in order to maintain all the records.

1.4Justifications
The purposes of this system is to help easily capture the information of all patients and to reduce
the time taken through manual system in order to maintain all the records.
1.5 Scope
This system is helpful to reduce the time and complexity of maintaining the records. It also helps
in accurate maintenance of passengers and drivers.
-It can be used in any transport company for maintaining Passenger details.

1.6Methodology
1Research method
Data collection methodologies
Horizon coach uses a manual system but is not efficient on passengers detail. So I thought there
was a need to improve on passenger registration system to overcome some problems.
Data collection tools
They include the following
1. Observation-I observed that their system is not efficient on keeping a passenger
registration details this give the passenger a hard time if one loses receipt issued.
2. Documentation review- all the documents used to record transactions and capturing of
information were available. These gave me views of what kind of data is involved in the
current system to enable me borrow from it.
Problems identified in the collected data:
1. Security: -data stored in database can be access by unauthorized person because of using

access database which is weak and it cannot prevent unauthorized people from access it.
This lead to information stored in their database being interfered and damaged.
2. The system is slow: - because its users keeping information manually in books which

can easily be overwrite.


1.7Development Method
The methodology that I used through out the development process was a variation on the
waterfall life cycle. As the requirements for the project was unlikely to change dramatically. If
the project looked like the requirements would be changing often a more agile methodology
would have been chosen. The waterfall lifecycle works by following a strict path through the

development process not moving on to the next stage until the previous stage has been
completed.

CHAPTER 2
2.0 Literature review
This is an evaluation report of information found in the field related to the selected area of study.
It describes the kind of system that is to be developed. Unfortunately, I have no idea whether
there have been attempts to implement new and more efficient IT solutions for developing a Bus
Booking management system to be able to improve on the current systems being used in
transport industry.
Features
I.

Employee registration and management.

II.

Passenger registration and management.

III.

Manage passenger bills.

IV.

Booking passenger travelling dates.

V.
VI.

Passenger reports handling.


Passenger Luggage and store management.

Horizon Coach
The reason for developing this system was to come with a system that would be able to track
information of all passengers who comes to book a service. A system that will be able to register
passengers and give them a random number to prevent any data duplication. This system will
also be able to retain passenger details in the database.
Resources/requirements
1. Computer machine
2. External disk
3. Microsoft office 2007
10

4. Printer
5. Printing material
6. Visual basic 6.0
RESOURCE AND BUDGET ESTIMATES FOR THE PROJECT:
Requirement

Specifications

Computer machine

i3

or

Actual cost

i7speed Kshs.100000

Estimated COST
Kshs.64,000

processor,
2.0 GB memory
capacity,
500GB

storage

capacity hard disk


Windows
professional
Visual studio
Microsoft

Visual basic 6.0


office MS access

2010

Kshs.1000

Kshs.800

Kshs.2000

Kshs.1000

MS word

Printer

Laser printer

Kshs.15000

Kshs.10000

External disk

8 GB Flash disk

Kshs.1000

Kshs.800

Printing materials

Printing papers + ink Kshs.1000

Kshs.800

toner

11

Chapter3
SYSTEM REQUIREMENTS AND SPECIFICATION
3.0 INTRODUCTION
The below subsections is the Systems Requirements Specifications (SRS) document and it
provides an overview of the entire system.
3.1 Purpose
The System Requirements Specification (SRS) will provide a detailed description of the
requirements for the Bus Booking Management System (BBMS). This SRS will allow
for a complete understanding of what is needed for the hotel management system
construction. The clear understanding of the HMS 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 BBMS can be designed, constructed, and finally
tested.
This SRS will be used by the software engineers constructing the BBMS and the Bus end users.
The software engineers will use the SRS so that to fully understand the expectations of this
BBMS to construct the appropriate software. The hotel 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 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.2Scope
12

The system product to be produced is a Bus Booking Management 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 BBMS. 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.
The objective of this Bus Management System is to provide a system that can manage a bus that
has increased in size to a total of 60 seats. Without automation the management of the bus has
become an unwieldy task. The end users day-to-day jobs of managing a bus will be simplified
by a considerable amount through the automated system. The system will be able to handle
many services to take care of all passengers in a quick manner. The system should be user
appropriate, easy to use, provide easy recovery of errors and have an overall end user high
subjective satisfaction.
3.3 Definition of The Acronyms and Abbreviations.
SRS Systems Requirements Specification
BBMS Bus Booking Management System
Subjective satisfaction The overall satisfaction of the system
End users The people who will be actually using the system

3.4 Overview

13

The SRS is organized into two main sections. The first is The Overall Description and
the second is the Specific Requirements. The Overall Description will describe the
requirements of the BBMS from a general high level perspective.

The Specific

Requirements section will describe n detail the requirements of the system.


3.5 THE OVERALL DESCRIPTION
This covers the general description of factors that affect the product and its requirements. This
section does not state specific requirements.

Instead it provides a background for those

requirements, which are defined in section 3, and makes them easier to understand.
3.5.1 The Perspective Of The Products
The BBMS is an independent standalone system.

3.6 Hardware Interfaces


14

The BBMS will be placed on PCs throughout the company.


3.6.1 Software Interfaces
All databases for the Bus Booking management system will be configured using Access 20002003. These databases include Bus seats and passenger information. These can be modified by
the end users. The bus database will include the bus number plates, seats and if they are vacant
or reserved.

The passenger information database will contain all the information of the

passenger such as first name, Surname, ID Number, Gender and phone Number.
3.6.2 Product Functions
Reservations and Advance Booking System

Allows for typing in passenger information

Has a default seat number

When a passenger makes reservation, the seat will changed color from blue to
either yellow or pink.

Ability to modify a reservation

Records payment

3.6.3 Tracking and Selling Ticket System

Tracks all tickets purchased

Charges the current journey as necessary

3.6.4 General Management Services and Automated Tasks System


15

Creation of users and assigning passwords

3.7 User Characteristics


Educational level of BBMS computer software Low
Experience of BBMS software None
Technical Expertise Little
3.8 Apportioning of Requirements
The audio and visual alerts will be deferred because of low importance at this time.
3.9 Assumptions and Dependencies
- The system is not required to save generated reports.
- Credit card payments are not included

16

3.10SPECIFIC REQUIREMENTS
This section contains all the software requirements in a more detailed manner, that when
combined with the system context diagram, use cases, and use case descriptions, is sufficient to
enable designers to design a system to satisfy those requirements, and testers to test that the
system satisfies all the requirements.

3.10.1 External Interfaces


The Bus Booking Management System will use the standard input/output devices for a personal
computer. This includes the following:

Keyboard

Mouse

Monitor

Printer

17

3.11 User Interfaces


The User Interface Screens are described in the table below.
Table 1: Bus Booking Management User Interface Screens
Screen Name

Description

Login

Log into the system as a CSR or Manager

Reservation

Retrieve button, update/save reservation, cancel reservation,


modify reservation, change reservation, adjust seat number,
accept payment type

Travel

Modify date to travel, place of destination, date to travel

Bus Payment

Accept payment.

Room Service/Restaurant

Create order, modify order, view order, cancel order, generate


meal bill

Passenger Record

Add or update passenger records

Administer seats

Availability

Administer User

Create, modify, and delete users; change password

Reports

Select, view, add, save, and delete reports

3.12 Software Interfaces


The system shall interface with Access database.
3.13 Hardware Interfaces
The system shall run on a Microsoft Windows based system.

18

3.14Communication Interfaces
This system shall be a standalone product that does not require any communication interfaces in
whatsoever.
2.15 Functional Requirements
Functional requirements define the fundamental actions that system must perform.
The functional requirements for the system are divided into three main categories,
Reservation/Booking, travel, and Management. For further details, refer to the use cases.
3.15.1 Reservation/Booking
1.1. The system shall record reservations.
1.2. The system shall record the passengers first name.
1.3. The system shall record the passengers Surname name.
1.4. The system shall record the number of passenger.
1.5. The system shall record the seat number.
1.6. The system shall record the passengers phone number.
1.7. The system shall generate a unique confirmation number for each reservation.
1.8. The system shall record the expected travel date and time.
1.9. The system shall record the expected destination date and time.
1.9.1. The system shall record that the seat is empty.
1.9.2. The system shall record the payment.
1.9.3. The system shall record the payment type.

19

3.15.2 Nonfunctional Requirements


Functional requirements define the needs in terms of performance, logical database
requirements, design constraints, standards compliance, reliability, availability, security,
maintainability, and as well as portability.
3.15.3 Performance Requirements
Performance requirements define the acceptable response times for system functionality.

The load time for user interface screens shall take no longer than two seconds.

The log in information shall be verified within five seconds.

Queries shall return results within five seconds.

3.16 Logical Database Requirements


The logical database requirements include the retention of the following data elements. The list
below is not complete but only designed as a starting point for development.
3.16.1 Booking/Reservation System

Passenger first name

Passenger Surname

Passenger ID Number

Passenger phone number

Assigned seat

Expected travel date

Expected travel time

Expected destination date

Expected destination time

Payment received

Payment type

Total Bill
20

3.16.2 Design Constraints


The Bus Booking Management System shall be a stand-alone system running in a Windows
environment. This system shall be developed using visual basic 6.0 and an Access 2000-2003.
3.16.3 Standards Compliance
There shall be consistency in variable names within the system. The graphical user
interface is designed to have consistent look and feel.
3.16.4 Reliability
This specifies the factors required to establish the required reliability of the software system at
time of delivery.
3.16.5 Availability
This system shall be available only during normal Bus operating hours.
3.16.6 Security
Passenger Service Representatives and Managers will be able to log in to the Bus Booking
Management

System.

Passenger

Service

Representatives

will

have

access

to

the

Reservation/Booking subsystems. Managers will have access to the Management subsystem as


well as the Reservation/Booking subsystems. Access to the various subsystems will be protected
by a user log in screen that requires a user name and password.
3.16.7 Maintainability
The Bus Booking Management System is being developed in Visual Basic 6.0. VB6.0 is an
object oriented programming language and shall be easy to maintain.
3.16.8 Portability
The Bus Booking Management System shall run in any Microsoft Windows environment that
contains visual basic 6.0 and the Microsoft Access database.

21

3.17 Change Management Process


Changes to this document may be made after approval from the project manager and the client
approval officer.
3.18 Supporting Information
A system context diagram as well as use cases and use case descriptions have been developed in
separate documents.

22

CHAPTER 4
System Design overview
4.1 INTRODUCTION
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.
a) Purpose
This document is designed to be a reference for any person wishing to implement, or any persons
interested in the design architecture of the Horizon coach Management system. This document
describes each applications architecture and its associated interfaces and database design. This
design will detail the implementation of the requirements as defined in the BBMS system
specification design.
b) System overview
This document includes but is not limited to the following information for the Horizon Coach
Booking management system; system overview, design consideration, architectural strategies,
system architecture, policies and tactics, database schemas, detailed system design.
c) Intended users
This document should be read by an individual with a technical background and has experience
reading data flow diagrams DFDs, control flow diagrams CFDs, interface design and
development experience in event driven programming or as describe in the BBMS System
Requirement Specification 1.2.

23

4.2 SYSTEM SCOPE


a) Main Inputs:
i.
ii.
iii.
iv.

Passenger name
Driver ID/Passenger ID
Passenger address, phone number, Gender
Travel date and time for passenger

b) Outputs
i.
ii.
iii.
iv.

Make Reservation screen


Add new Bus screen
Add new driver/Delete driver screen
Add new user

Software will be designed to allow users perform following functions


i.
ii.
iii.

Log on either as System administrator or as a System user.


Add a passenger into system.
Update or delete record information depending on the user authorization level.
Splash Form

The system will accept a number of user inputs when a user:


Main Form

i.
ii.
iii.

Log on to the system either as an System administrator or as a system user.


Add a customer to inventory management system.
Update or delete existing driver information
User input will result into the Login
following output:

i.
ii.

A splash screen if the user runs the program.


Access to main forms and subsequent forms.

ADMIN

USER

c) Design Map
The system design will take the following mapping when ready.
MAKE
RESERVATI
ON

ADD/DELET
E DRIVER

CHECK
SEATS
AVAILABLE

MAKE
RESERATIO
N

ADD/DELE
TE DRIVER

24
ADD NEW
USER

ADD NEW
BUS

SEARCH

ADD NEW
BUS

SEARCH

CHECK
SEATS
AVAILABLE

4.3 DESIGN CONSIDERATIONS


This section describes many of the issues that are needed to be able to addressed or resolved
before embarking on a complete design solution.
a) Assumptions
This BBMS design makes several assumptions about the software and hardware requirements as
is in the SRS. All the environmental operating requirements of both the user interface and the
database can be found in the BBMS requirements.
25

Both the database and the user application make the following assumptions about the operating
environment.
The system can be described by the operating requirements associated with this document and in
the SRS. The system application in execution will have the necessary resources availed as
required. This entails sufficient memory and permanent storage space and the adequate CPU for
the application. The user application makes the following assumptions about its operating
environment. The user machine will have Microsoft access database components installed, as
they are required for the system implementation. The machine will also have necessary database
setup.
b) Goals and guide lines
The major goal of the Bus Booking Management System is to help automate the current manual
process of Horizon Coach making it extremely simple and easy to use. The system is meant for
the firms employees some of whom are not technically advanced. It is very important that the
prompts for the user be clear and concise since this will be the highest level of interaction
between the system and the user.
It is also important the series of prompts and responses be tested with the users before being
deployed.
The user should get a response in a timely fashion since users tend to lose interest if they have to
wait too long for the system to respond.
In this design, a minimum of data is transferred between the user and the database so as to
retrieve the necessary information and return the requested data to the user.
Other goals of BBMS include;

To minimize the time spent on manual recording


To minimize the amount of paper work required.
To provide searchable database of all Passengers.
To reduce complexity.

This system attempts to keep the user interface and application as independent as possible. All
the prompts and responses on the user are completely driven.
26

4.4 SYSTEM ENVIRONMENT


System scalability and security are the requirements for the system architecture of the Bus
Booking management system. The system will accommodate scalability allowing flexibility
within the system to expand, modify or downsize easily to meet the evolving business and
technology change.
a) Development tools
This part of the SDS specifies the tools that will be used to develop the system. They include:
Application programming visual basic 6.0 and MS access for database. Other tools to be used
will include forms which will act as screens for input and out, tables that will be for input and
data entry.
b) Design methodology
In designing the BBMS for Horizon Coach, the following approach will be used:
Water fall model will be used as the best language for this kind of system. This is because water
fall model is suitable for visualizing, specifying, constructing and documenting the features of
the system. The design will take the following approach: designing the database, creating
relationships, designing the user interfaces and the system processes.

c) Database design
Database design refers to a process of modeling the information so as to meet the user
requirements. The process will be accomplished in three stages.
d) Conceptual design
Conceptual design refers to a process of constructing an abstract model of data to be included in
a database.
In creating the conceptual design for Horizon Coach, the following activities will be involved.
Identification of the entities: the various entities included in the BBMS are;

TRAVELL DETAILS
RESERVATION DETAILS
27

LOG IN
HOMEPAGE

e) Identification of relationships
This refers to an association between the entities.
For Horizon Coach, a passenger makes reservation as wishes. The Management therefore records
all details of the passenger and as well as those of the driver who will be on duty.
Passenger makes reservation

CUSTOMER

Checks
IN

Orders

Management records passenger details, book seats


CUSTOMER

Management

Delivers

Records

DETAILS

Delivered

SERVICE

f) Logical design
This part of the database design will entail selection of database model which is a collection of
concepts and rules for the description of the structures of the database. A relational database
28

model will be used for this case as it defines a database as a collection of tables containing all
data and their related properties.

f) Data normalization
This is a process of removing redundant data from the tables in order to improve storage
efficiency, data integrity and data scalability.

g) Physical data design


The system will include the tables show below containing the attributes in them.

i.

Users table

This table stores users username and password which they use to log in to the system.

ii.
Service Information Table
To record place of departure and destination of a passenger.

29

iii.
Seat Reservation Table
To reserve passenger seats

iv. Passenger information Table


To record passenger information

v. Driver Information Table


To record driver information.

30

vi.
Bus Table
To store bus information

4.5 DATABASE IMPLEMENTATION


In this system, the database will be implemented using MS Access. It functions as storage to
keep track of the entire Organization.
a) Database file management security
There will be Backup and recovery policies and procedures to protect data stored in BBMS to
protect this data from damage or loss. If by any chance something happens and the integrity is
compromised BBMS will have the ability to restore and recover lost or damaged data.

31

File Security is defined by personal or sensitive data that is stored in files on the database. It is a
vital part of every data storage system. The administrative team will handle this for the BBMS
project by defining user groups and assigning permissions. This is a requirement of the system
because the staff will be using/sharing applications and files.
The User groups will be defined and consist of system administrators, managers, and staff.
Basically three levels of access. These levels will allow certain privileges and be controlled by
the rank in group permissions. Permissions will stem between read, write, and execute broken
down into access and ability to perform file/application manipulation. The categories are as
follows.

Read a file - read file contents only


Write a file - store files change file contents
Execute a file - run available programs

The system will of through a series of steps when accessing

4.6 ARCHITECTURAL AND COMPONENT LEVEL DESIGN


a. Flow Chart Symbols
The following symbols are associated with logical process.

Terminator-Marks the start or end of a process

Process-Represent a step in the process

32

Decision -Indicate a point where the outcome of a decision indicates the next step.

Flow line -Used to show direction of data or information.

Input or output operation-Shows input and output from a process

Database-A step that results in information being stored

Data flow for searching record

User

Validate
username
&
password

Search
record
requested

33

Display
the
record

Start

Load main Menu

System Flowchart

Enter valid password

Enter to
Admin/Employee
Form
Enter
details for
the task
Validate/verify
details

Another
task

Database

Display
reports

YES
Update details &
process report

Print report
34

Exit

a. Context Diagram
The first level of DFD shows the main process within the system

that generalizes the function

of the entire system in relation to external entities.


When a passenger makes reservation, which he receives by an entry staff/employee, who
checks/locates the available seats and reserves them.
This may be represented showing the Passenger reservation process, where the passenger is an
external entity in the context diagram.
b. Data Flow Diagrams
Process

Data store

Source
(sink)

-The nature of process is entered in the box along with the actor

-A point where data is held accessed.

-A point where data originates


35

-Show how data flow around the system.

Bus

Process reserve

Passenger

c. Data Flow Diagram

1.
1

Reserves

Staff (employee)

Sort Services

Passenger

1.2

Staff

1.3

Staff
Passnger file

Locate seats

36

4.7 USER INTERFACE DESIGN


User interface will consist following main screens, login screen which will consist of a user
dialogue box text boxes and three labels for data input. The login screen will be used to
authenticate the user to the system.
The sample user interface forms and screens that the user will interact with include:

1.
2.
3.
4.
5.
6.
7.

Login Form
Bus Form
Driver Form
Reservation Form
Passenger information Form
Service Information Form
Main Menu Form

LOADING BAR

The loading bar gives user some information before the program has started.
MAIN MENU FORM
37

The main menu is the homepage of the program. User can use it for navigation.

Login Form

38

User needs to enter his username and user full names should appear if his username is in
database. Then, user has to enter password correctly to login. If user enters incorrect password,
he will receive an error message as "Invalid Password". Finally, user can quit this program.

ADMIN FORM
39

If user logs in as Administrator, Admin Form will appear. This Form shows capabilities of
Admin.

EMPLOYEE FORM
40

If user logs in as system user, Employee Form will appear. This form shows capabilities of
Employee.

SERVICE INFORMATION FORM


41

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

42

PASSENGER INFORMATION FORM

After user fills Service information form, Passenger Information Form will appear. The
passenger information will be filled.

RESERVATION FORM

43

In this form, user needs to select an available seat. Seats color will change according to gender
in the Reservation Form. If it is reserved for a man, color will yellow; if it is reserved for a
woman, color will be pink.

PAYMENTS FORM
44

Payment form is used to make payment. Passenger can make payment using either cash or by Mpesa.

PAYMENT VERIFICATION FORM (cash)

If passenger decides to pay with cash, this form appears.

PAYMENT VERIFICATION(mpesa)
45

If passenger decides to pay using M-pesa, this form appears where he/she is given pay bill
number.

DRIVER FORM
46

If user clicks Add new driver button; Driver Form needs to be filled.

BUS FORM
47

When the company buys a new bus, the following form is used to keep the bus record in
database.

ADD USER FORM

48

Admin can add new Employee into the system using the above form.

CHANGE PASSWORD

49

If user decides to change password, he can use the change password form

CHAPTER 5
TESTS PLAN
50

5.1Introduction
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.
5.2Importance 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.
5.3Test Plan Strategies
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.
51

The types of testing that will be conducted upon include:

Unit testing

Module testing

System testing

Integration testing.

5.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.
5.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.
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.
5.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
52

sample of some users who will use the system under test in its actual capability environment.
Possible problems are corrected before really conversion.
5.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.

It has two phases


a. First phase
b. Second phase
a).First phase-The software is tested by in house of developers. They use either debugger
software or hardware assisted debuggers.
b).Second phase-The software is handed over to a different bus company for additional testing
in an environment that is similar to intended use.
5.3.5Recovery testing
Recovery testing will force the system to fail in various ways and try to verify that the recover is
efficiently done or performed. It is vital that all the data is recovered after the system failure and
no corruption of data.

5.4Test plan
Type of test

Test data

Tested area

53

Expected output

Result

Unit

testing Interface

How the system Easy

and

logical

is interactive

to

use

and To increase the

effective interface by level

testing

system users.

of

usability hence
increases

of accuracy.
accept Should perform

Numerical fields

Should

Text fields

numbers only.
Should accept

as expected.
only Should perform

text characters.
Login
Username

level

as expected.

Should accept correct Should perform


password.
as expected.
Connect to database Should perform

and Security

password

for verification access as expected.


is denied if wrong

Module testing

The

MDI Navigation

FORM

password is given.
of Sub menu to open

system

The

system

should
accessed

be
from

the level to the


System testing

CODE

system

lowest level.
should Ensure
the

System

The

implementation

have no errors when system


running

functions

as

required without
Command

Should

buttons for file

expected

operation

perform

problem.
as The files should
be manipulated
easily by use of
commands.

5.5Conclusion
54

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.

CHAPTER 6
IMPLEMENTATION PHASE
6.1Introductions
The system has been developed using visual basic 6.0 and ms access database.
6.2Purpose

55

The document contains overviews of system, description of the major tasks that are required to
be done before the system is put into use.
6.3System description
This system will manage all bus booking activities, it will cover all passenger details and
maintaining all record about the drivers. This will be facilitated in the database which will
preserve their record for future reference. The system will processes data into useful information.
6.4System organization
In this section it provides a brief description of system components necessary to the
implementation of the system. The system will be installed in all causality offices head quarters
where all passengers can get access to the system.
The main functions that will be carried out by the application will be
1. Registering passengers
2. Booking and reservation of travelling tickets
3. Assigning passenger the available seats
4. Paying for services
5. Keeping booking record
6. Generating reports
7. Generating number which will be used for passenger identification
6.5 Implementation strategy
Direct conversion
This the best method of implementing the system by direct conversion .This was done because
the travelling company does not have a stable system at the moment as they still run their things
manually.
56

Justification
I.

The system will be implemented immediately after testing is done in team work.

II.

Currently there is no system that is used so there is no much cost that will be lost in
replacing the old system.

6.6Installations

A 150 GB
Core i3 and above processor
2 GB or 4 GB ram
Printer e.g. laser
Window exp or window 7
Microsoft access

6.7 Data migration


All data from the manual system was migrated to the new system to measure up the performance
of the new system depending on the kind of data that will be put on the system once is put in
use.

6.8Review
The system developer and the users will analyze and compare the two systems and will come up
with changeover method used.
6.9Maintenance plan
The maintenance plan include all those thing that will be need for the project output once the
management has accepted them and how they will be achieved.
Identification of computer system
Hardware and other peripherals
57

Technical and all manuals including the proposal.


6.10Implementation schedule
Activity
System

Duration
installation 4days

preparation

Setting

Contact person
all

the System developer

requirement in place

Installation

Reviewing

Objective

2days

and 3days

verification
Training

Installing

the System maintainer or

software

System developer

Measuring

the System developer

system performance
4days

Training all the users System developer


of the new system

6.11Conclusions
The implementation of this system will help in handling daily operation efficiently and good
performance of the travelling agencies. It will improve record storage as all data will be stored in
the database.
6.12Recommendation
The system being a stand-alone it does not need to be online as all need that will be required for
a passenger you can book seats.

58

CHAPTER 7
7.0Codes
Codes for validating passwords and user name in the login form
Private Sub Cmdlogin_Click()
If rs_bus.State = adStateOpen Then rs_bus.Close
rs_bus.Open "Select * from users WHERE username='" & TxtUserName.Text & "'", datacon,
adOpenKeyset, adLockOptimistic
If rs_bus.RecordCount < 1 Then MsgBox ("User Not Defined"): Exit Sub
With rs_bus
If txtPassword.Text = .Fields("password") Then
If TxtUserName = "admin" Or TxtUserName = "ADMIN" Then
59

MsgBox ("You are logged in as the system Admin")


MDIForm1.Command1.Visible = False
MDIForm1.cmdloggedin.Visible = True
Me.Hide
frmadmin.Show
Else
MsgBox ("You are logged in as the system User")
MDIForm1.Command1.Visible = False
MDIForm1.cmdloggedin.Visible = True
Me.Hide
frmemployee.Show
End If
Else
MsgBox ("Invalid Password")
End If
End With
MDIForm1.Text1.Text = TxtUserName.Text
End Sub
Sample codes for the splash form
Private Sub lblper_Click()
lblper.Caption = "0%"
End Sub
Private Sub Timer1_Timer()
ProgressBar1.Value = ProgressBar1.Value + 5
lblper.Caption = ProgressBar1.Value & "%"
If ProgressBar1.Value = 100 Then
lblper.Caption = "please wait.."
Timer1.Enabled = False
60

Unload Me
MDIForm1.Show
End If
End Sub
Sample codes for the admin form
Private Sub cmdadduser_Click()
MsgBox "Please Add New User", vbOKOnly
frmadduser.cmdsave.Enabled = False
frmadduser.Show
End Sub
Private Sub cmdseats_Click()
frmreservation.cmdok.Visible = False
Unload Me
frmreservation.Show
End Sub
Private Sub Cmdsearch_Click()
Unload Me
frmsearch.Show
End Sub
Private Sub Cmdactualservice_Click()
Unload Me
frmactualserviceinfo.Show
End Sub
Private Sub Cmdservice_Click()
Unload Me
61

frmservice.Show
End Sub
Private Sub Cmdserviceinfo_Click()
Unload Me
frmserviceinfo.Show
End Sub

Private Sub Cmddriver_Click()


Unload Me
frmdriver.Show
End Sub
Private Sub Cmdbus_Click()
Unload Me
frmbus.Show
End Sub
Private Sub Command5_Click()
Unload Me
frmdriver.Show
End Sub
Private Sub Command7_Click()
Unload Me
frmserviceinfo2.Show
End Sub

62

Private Sub Command8_Click()


Unload Me
frmserviceinfo2.Show
End Sub
Private Sub Command9_Click()
Unload Me
MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
End Sub
Private Sub Imglogout_Click()
If MsgBox("Are you sure you want to LOG OUT", vbOKCancel, "Bus Booking Management
System") = vbOK Then
Unload Me
MDIForm1.Show
frmlogin.txtPassword = ""
frmlogin.TxtUser = ""
frmlogin.TxtUserName = ""
MDIForm1.cmdloggedin.Visible = False
MDIForm1.Command1.Visible = True
MDIForm1.Text1 = ""
MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
Else
frmadmin.Show
End If
End Sub
Sample codes for the Employee form
Private Sub cmdchangepassword_Click()
63

Unload Me
frmadduser.Command1.Visible = False
frmadduser.cmdmovenext.Visible = False
frmadduser.cmdmoveprevious.Visible = False
frmadduser.cmddelete.Visible = False
frmadduser.cmdsave.Visible = False
frmadduser.cmdchange.Visible = True
frmadduser.txtfullnames.Enabled = True
frmadduser.txtPassword.Enabled = True
frmadduser.TxtUserName.Enabled = True
frmadduser.txtsearch.Enabled = False
frmadduser.txtfullnames = ""
frmadduser.txtPassword = ""
frmadduser.TxtUserName = ""
frmlogin.TxtUserName.Text = frmadduser.TxtUserName.Text
frmadduser.Show
End Sub
Private Sub cmdseats_Click()
frmreservation.cmdok.Visible = False
Unload Me
frmreservation.Show
End Sub
Private Sub Command1_Click()
Unload Me
64

MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
End Sub
Private Sub Command2_Click()
Unload Me
frmsearch.Show
End Sub
Private Sub Command3_Click()
Unload Me
frmserviceinfo.Show
End Sub
Private Sub Command4_Click()
Unload Me
frmdriver.Show
End Sub
Private Sub Command5_Click()
Unload Me
frmbus.Show
End Sub
Private Sub Command6_Click()
Unload Me
frmactualserviceinfo.Show
End Sub
Private Sub Image1_Click()

65

If MsgBox("Are you sure you want to LOG OUT", vbOKCancel, "Bus Booking Management
System") = vbOK Then
Unload Me
MDIForm1.Show
frmlogin.txtPassword = ""
frmlogin.TxtUser = ""
frmlogin.TxtUserName = ""
MDIForm1.cmdloggedin.Visible = False
MDIForm1.Command1.Visible = True
MDIForm1.Text1 = ""
MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
Else
frmemployee.Show
End If
End Sub
Sample codes for the add user form

Option Explicit
Dim rs_bus As New ADODB.Recordset
Private Sub fill()
txtfullnames.Text = rs_bus!FullNames
txtpassword.Text = rs_bus!Password
txtusername.Text = rs_bus!UserName
End Sub
Private Sub cmdcancel_Click()
rs_bus.Close
If frmlogin.txtusername = "admin" Or frmlogin.txtusername = "ADMIN" Then
66

Unload Me
frmadmin.Show
Else
frmemployee.Show
Unload Me
End If
End Sub
Private Sub cmdchange_Click()
cmdcancel.Visible = False
cmdexit.Visible = True
If rs_bus.State = adStateOpen Then rs_bus.Close
rs_bus.Open "Select * from users WHERE username='" & txtusername.Text & "'", datacon,
adOpenKeyset, adLockOptimistic
'If rs_bus.RecordCount > 0 Then MsgBox ("username Already Exists"): Exit Sub
With rs_bus
.Update
.Fields("password") = txtpassword.Text
.Fields("FullNames") = txtfullnames.Text
.Update
MsgBox ("Record updated Successfully")
End With

End Sub
Private Sub cmddelete_Click()
On Error Resume Next
Dim reply, optn As Boolean
With rs_bus
67

.MoveFirst
Do Until .EOF
If txtusername.Text = rs_bus!UserName Then
optn = True
Exit Do
End If
.MoveNext
Loop
If optn = True Then
reply = MsgBox("Do you want to delete this User?", vbYesNo + vbQuestion, "Delete")
If reply = vbYes Then
.Delete
txtfullnames.Text = ""
txtpassword.Text = ""
txtusername.Text = ""
End If
reply = MsgBox("User Deleted!", vbOKOnly + vbExclamation, "Delete")
End If
End With
End Sub
Private Sub cmdexit_Click()
rs_bus.Close
If frmlogin.txtusername = "admin" Then
Unload Me
frmadmin.Show
Else
frmemployee.Show
Unload Me
68

End If
End Sub
Private Sub cmdmovenext_Click()
On Error Resume Next
rs_bus.MoveNext
If rs_bus.EOF Then
MsgBox "You have reached the end of file!", vbApplicationModal, "End of file"
End If
If rs_bus.EOF Then
Exit Sub
End If
fill
End Sub
Private Sub cmdmoveprevious_Click()
On Error Resume Next
rs_bus.MovePrevious
If rs_bus.BOF Then
MsgBox "you have reached the end of file!", vbApplicationModal, "End of file"
End If
fill
End Sub
Private Sub cmdsave_Click()
If rs_bus.State = adStateOpen Then rs_bus.Close
rs_bus.Open "Select * from users WHERE username='" & txtusername.Text & "'", datacon,
adOpenKeyset, adLockOptimistic
If rs_bus.RecordCount > 0 Then MsgBox ("username Already Exists"): Exit Sub
With rs_bus
.AddNew
69

.Fields("username") = txtusername.Text
.Fields("password") = txtpassword.Text
.Fields("FullNames") = txtfullnames.Text
.Update
MsgBox ("Record Saved Successfully")
End With
cmdsave.Enabled = False
cmdcancel.Visible = False
cmdexit.Visible = True
Command1.Enabled = True

End Sub
Private Sub Command1_Click()
txtusername.Enabled = True
txtpassword.Enabled = True
txtfullnames.Enabled = True
txtusername = ""
txtpassword = ""
txtfullnames.Text = ""
cmdsave.Enabled = True
Command1.Enabled = False
End Sub
Private Sub Command2_Click()
Unload Me
frmadmin.Show
End Sub

70

Private Sub Command3_Click()


Unload Me
frmadmin.Show
End Sub
Private Sub Form_Load()
rs_bus.CursorType = adOpenKeyset
rs_bus.LockType = adLockOptimistic
rs_bus.Source = "users"
rs_bus.ActiveConnection = datacon
rs_bus.Open
rs_bus.MoveFirst
fill
End Sub
Private Sub Image1_Click()
End Sub
Private Sub txtsearch_Change()
On Error Resume Next
'demension a search variable(rsearch)
Dim reply, rsearch As Boolean
rs_bus.MoveFirst
Do Until rs_bus.EOF
If rs_bus!UserName Like txtsearch.Text + "*" Then
rsearch = True
Exit Do
End If
rs_bus.MoveNext
Loop
71

If rsearch = True Then


With rs_bus
txtfullnames.Text = rs_bus!FullNames
txtpassword.Text = rs_bus!Password
txtusername.Text = rs_bus!UserName
End With
Else
reply = MsgBox("Record Not Available", vbOKOnly + vbInformation, "Error")
If reply = vbOK Then
txtsearch.Text = ""
txtsearch.SetFocus
End If
End If

End Sub
Sample codes for passenger information form
Option Explicit
Dim rs_bus As New ADODB.Recordset
Private Sub Command1_Click()
If rs_bus.State = adStateOpen Then rs_bus.Close
rs_bus.Open "Select * from passengerinformation WHERE id_number='" & txtIDnumber.Text &
"'", datacon, adOpenKeyset, adLockOptimistic
If rs_bus.RecordCount > 0 Then MsgBox ("Passenger Already Exists"): Exit Sub
With rs_bus
.AddNew
.Fields("id_number") = txtIDnumber.Text
.Fields("first_name") = txtfirstname.Text
.Fields("surname") = txtsurname.Text
72

.Fields("gender") = txtgender.Text
.Fields("phone_number") = txtphonenumber.Text
.Update
MsgBox ("Record Saved Successfully")
End With

If Option1.Value = True Then


frmreservation.Label6.BackColor = vbYellow
ElseIf Option2.Value = True Then
frmreservation.Label6.BackColor = &HFF00FF
Option1.Value = False
End If
MsgBox "Please Select Seat Number", vbOKOnly
frmreservation.Show
End Sub
Private Sub Command2_Click()
If frmlogin.txtusername = "admin" Or frmlogin.txtusername = "ADMIN" Then
Unload Me
frmadmin.Show
Else
frmemployee.Show
Unload Me
End If
End Sub
Private Sub Command3_Click()
Unload Me
MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
73

End Sub
Private Sub Command4_Click()
Command1.Enabled = True
Command4.Enabled = False
txtfirstname.Enabled = True
txtIDnumber.Enabled = True
txtphonenumber.Enabled = True
txtsurname.Enabled = True
Option1.Enabled = True
Option2.Enabled = True
End Sub
Private Sub Image1_Click()
If MsgBox("Are you sure you want to LOG OUT", vbOKCancel, "Bus Booking Management
System") = vbOK Then
Unload Me
MDIForm1.Show
frmlogin.txtpassword = ""
frmlogin.TxtUser = ""
frmlogin.txtusername = ""
MDIForm1.cmdloggedin.Visible = False
MDIForm1.Command1.Visible = True
MDIForm1.Text1 = ""
MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
Else
frmpassengerinfo.Show
End If
74

End Sub
Private Sub Option1_Click()
txtgender.Text = "Male"
End Sub
Private Sub Option2_Click()
txtgender.Text = "Female"
End Sub

Sample codes for reservation form


Option Explicit
Dim rs_bus As New ADODB.Recordset
Private Sub fill()
Label6.Caption = rs_bus!seat_color
End Sub
Private Sub cmd1_Click()
Text1.Text = "Seat No 1"
If Label6.BackColor = vbYellow Then
cmd1.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd1.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmdq_Click()
cmdq.Caption = "w"
cmdq.BackColor = red

75

End Sub
Private Sub cmd10_Click()
Text1.Text = "Seat No 10"
If Label6.BackColor = vbYellow Then
cmd10.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd10.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd11_Click()
Text1.Text = "Seat No 11"
If Label6.BackColor = vbYellow Then
cmd11.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd11.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd12_Click()
Text1.Text = "Seat No 12"
If Label6.BackColor = vbYellow Then
cmd12.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd12.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
76

Private Sub cmd13_Click()


Text1.Text = "Seat No 13"
If Label6.BackColor = vbYellow Then
cmd13.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd13.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd14_Click()
Text1.Text = "Seat No 14"
If Label6.BackColor = vbYellow Then
cmd14.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd14.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd15_Click()
Text1.Text = "Seat No 15"
If Label6.BackColor = vbYellow Then
cmd15.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd15.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub

77

Private Sub cmd16_Click()


Text1.Text = "Seat No 16"
If Label6.BackColor = vbYellow Then
cmd16.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd16.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd17_Click()
Text1.Text = "Seat No 17"
If Label6.BackColor = vbYellow Then
cmd17.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd17.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd18_Click()
Text1.Text = "Seat No 18"
If Label6.BackColor = vbYellow Then
cmd18.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd18.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd19_Click()
78

Text1.Text = "Seat No 19"


If Label6.BackColor = vbYellow Then
cmd19.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd19.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd2_Click()
Text1.Text = "Seat No 2"
If Label6.BackColor = vbYellow Then
cmd2.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd2.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd20_Click()
Text1.Text = "Seat No 20"
If Label6.BackColor = vbYellow Then
cmd20.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd20.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd21_Click()
Text1.Text = "Seat No 21"
79

If Label6.BackColor = vbYellow Then


cmd21.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd21.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd22_Click()
Text1.Text = "Seat No 22"
If Label6.BackColor = vbYellow Then
cmd22.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd22.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd23_Click()
Text1.Text = "Seat No 23"
If Label6.BackColor = vbYellow Then
cmd23.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd23.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd24_Click()
Text1.Text = "Seat No 24"
If Label6.BackColor = vbYellow Then
80

cmd24.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd24.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd25_Click()
Text1.Text = "Seat No 25"
If Label6.BackColor = vbYellow Then
cmd25.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd25.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd26_Click()
Text1.Text = "Seat No 26"
If Label6.BackColor = vbYellow Then
cmd26.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd26.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd27_Click()
Text1.Text = "Seat No 27"
If Label6.BackColor = vbYellow Then
cmd27.BackColor = vbYellow
81

ElseIf Label6.BackColor = &HFF00FF Then


cmd27.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd28_Click()
Text1.Text = "Seat No 28"
If Label6.BackColor = vbYellow Then
cmd28.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd28.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd29_Click()
Text1.Text = "Seat No 29"
If Label6.BackColor = vbYellow Then
cmd29.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd29.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd3_Click()
Text1.Text = "Seat No 3"
If Label6.BackColor = vbYellow Then
cmd3.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
82

cmd3.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd30_Click()
Text1.Text = "Seat No 30"
If Label6.BackColor = vbYellow Then
cmd30.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd30.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd31_Click()
Text1.Text = "Seat No 31"
If Label6.BackColor = vbYellow Then
cmd31.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd31.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd32_Click()
Text1.Text = "Seat No 32"
If Label6.BackColor = vbYellow Then
cmd32.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd32.BackColor = &HFF00FF
83

End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd33_Click()
Text1.Text = "Seat No 33"
If Label6.BackColor = vbYellow Then
cmd33.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd33.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd34_Click()
Text1.Text = "Seat No 34"
If Label6.BackColor = vbYellow Then
cmd34.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd34.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd35_Click()
Text1.Text = "Seat No 35"
If Label6.BackColor = vbYellow Then
cmd35.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd35.BackColor = &HFF00FF
End If
84

Label6.BackColor = &HC00000
End Sub
Private Sub cmd36_Click()
Text1.Text = "Seat No 36"
If Label6.BackColor = vbYellow Then
cmd36.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd36.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd37_Click()
Text1.Text = "Seat No 37"
If Label6.BackColor = vbYellow Then
cmd37.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd37.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd38_Click()
Text1.Text = "Seat No 38"
If Label6.BackColor = vbYellow Then
cmd38.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd38.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
85

End Sub
Private Sub cmd39_Click()
Text1.Text = "Seat No 39"
If Label6.BackColor = vbYellow Then
cmd39.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd39.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd4_Click()
Text1.Text = "Seat No 4"
If Label6.BackColor = vbYellow Then
cmd4.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd4.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd40_Click()
Text1.Text = "Seat No 40"
If Label6.BackColor = vbYellow Then
cmd40.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd40.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
86

Private Sub cmd41_Click()


Text1.Text = "Seat No 41"
If Label6.BackColor = vbYellow Then
cmd41.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd41.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd42_Click()
Text1.Text = "Seat No 42"
If Label6.BackColor = vbYellow Then
cmd42.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd42.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd43_Click()
Text1.Text = "Seat No 43"
If Label6.BackColor = vbYellow Then
cmd43.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd43.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub

87

Private Sub cmd44_Click()


Text1.Text = "Seat No 44"
If Label6.BackColor = vbYellow Then
cmd44.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd44.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd45_Click()
Text1.Text = "Seat No 45"
If Label6.BackColor = vbYellow Then
cmd45.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd45.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd46_Click()
Text1.Text = "Seat No 46"
If Label6.BackColor = vbYellow Then
cmd46.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd46.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd47_Click()
88

Text1.Text = "Seat No 47"


If Label6.BackColor = vbYellow Then
cmd47.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd47.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd48_Click()
Text1.Text = "Seat No 48"
If Label6.BackColor = vbYellow Then
cmd48.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd48.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd49_Click()
Text1.Text = "Seat No 49"
If Label6.BackColor = vbYellow Then
cmd49.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd49.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd5_Click()
Text1.Text = "Seat No 5"
89

If Label6.BackColor = vbYellow Then


cmd5.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd5.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd50_Click()
Text1.Text = "Seat No 50"
If Label6.BackColor = vbYellow Then
cmd50.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd50.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd51_Click()
Text1.Text = "Seat No 51"
If Label6.BackColor = vbYellow Then
cmd51.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd51.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd52_Click()
Text1.Text = "Seat No 52"
If Label6.BackColor = vbYellow Then
90

cmd52.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd52.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd53_Click()
Text1.Text = "Seat No 53"
If Label6.BackColor = vbYellow Then
cmd53.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd53.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd54_Click()
Text1.Text = "Seat No 54"
If Label6.BackColor = vbYellow Then
cmd54.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd54.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd55_Click()
Text1.Text = "Seat No 55"
If Label6.BackColor = vbYellow Then
cmd55.BackColor = vbYellow
91

ElseIf Label6.BackColor = &HFF00FF Then


cmd55.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd56_Click()
Text1.Text = "Seat No 56"
If Label6.BackColor = vbYellow Then
cmd56.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd56.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd57_Click()
Text1.Text = "Seat No 57"
If Label6.BackColor = vbYellow Then
cmd57.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd57.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd58_Click()
Text1.Text = "Seat No 58"
If Label6.BackColor = vbYellow Then
cmd58.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
92

cmd58.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd59_Click()
Text1.Text = "Seat No 59"
If Label6.BackColor = vbYellow Then
cmd59.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd59.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd6_Click()
Text1.Text = "Seat No 6"
If Label6.BackColor = vbYellow Then
cmd6.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd6.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd60_Click()
Text1.Text = "Seat No 60"
If Label6.BackColor = vbYellow Then
cmd60.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd60.BackColor = &HFF00FF
93

End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd61_Click()
Text1.Text = "Seat No 61"
If Label6.BackColor = vbYellow Then
cmd61.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd61.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd7_Click()
Text1.Text = "Seat No 7"
If Label6.BackColor = vbYellow Then
cmd7.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd7.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmd8_Click()
Text1.Text = "Seat No 8"
If Label6.BackColor = vbYellow Then
cmd8.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd8.BackColor = &HFF00FF
End If
94

Label6.BackColor = &HC00000
End Sub
Private Sub cmd9_Click()
Text1.Text = "Seat No 9"
If Label6.BackColor = vbYellow Then
cmd9.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd9.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub cmdok_Click()
If rs_bus.State = adStateOpen Then rs_bus.Close
rs_bus.Open "Select * from seatReservation WHERE seat_number='" & Text1.Text & "'",
datacon, adOpenKeyset, adLockOptimistic
If rs_bus.RecordCount > 0 Then MsgBox ("Seat Already Booked"): Exit Sub
With rs_bus
.AddNew
.Fields("seat_number") = Text1.Text
.Fields("seat_color") = Label6.BackColor
.Update
MsgBox ("Record Saved Successfully")
End With
Unload Me
frmpassengerinfo.Visible = False
frmpayments.Show
End Sub

95

Private Sub Command1_Click()


If frmlogin.txtusername = "admin" Or frmlogin.txtusername = "ADMIN" Then
Unload Me
frmadmin.Show
Else
frmemployee.Show
Unload Me
End If
End Sub
Private Sub Command2_Click()
Unload Me
MDIForm1.Frame2.Visible = True
MDIForm1.Label1.Visible = False
End Sub
Private Sub Command33_Click()
If Label6.BackColor = vbYellow Then
cmd4.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd4.BackColor = &HFF00FF
End If
Label6.BackColor = &HC00000
End Sub
Private Sub Command47_Click()
If Label6.BackColor = vbYellow Then
cmd47.BackColor = vbYellow
ElseIf Label6.BackColor = &HFF00FF Then
cmd47.BackColor = &HFF00FF
End If
96

Label6.BackColor = &HC00000
End Sub
Private Sub Form_Load()
rs_bus.CursorType = adOpenKeyset
rs_bus.LockType = adLockOptimistic
rs_bus.Source = "seatReservation "
rs_bus.ActiveConnection = datacon
rs_bus.Open
rs_bus.MoveFirst
fill
End Sub
Sample codes for module
Global datacon As New ADODB.Connection
Public dbpath As String
Public Sub ConnectDB()
dbpath = App.Path & "\database\BBMS.mdb"
With datacon
.CommandTimeout = 5
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " & dbpath & ";Persist
Security Info=False"
.CursorLocation = adUseClient
.Open
End With
'MsgBox ("Connected to the database")
End Sub

97

USER MANUAL
INTRODUCTION
Horizon Coach Booking Management system is developed using Visual Basic 6.0(VB) to assist
the administrator and users on their day to day operations in running of the company. The user
manual is designed to assist the user in the effective use of the system and to assist in user
registration showing all operations performed in the system and how to perform.
Specifications
This system has been built on specifications and some assumptions have been made which must
be known to the user.
Features of the system:
a) The system is capable of holding the passenger, driver as well as payment details and be
retrieved.
b) Records can be deleted or amended from the database to update records or edited the
system after a given period of time.
Requirements
Installation of the valid software is needed before user can interact with the system.
Hardware requirements
a) Pentium IV computer
b) Dual core or Intel Pentium processor(1.8 GHz)
c) 256 MB of RAM
d) 50 GB Hard Disc.

98

Software requirements
a) Windows 7 operating system
b) Microsoft Access
c) Microsoft Word
Running setup:
1. Switch on the computer.
2. Insert the CD/DVD containing the program in the disk drive.
3. The setup screen automatically appears on the screen, follow the instructions given that
guide you through the setup.
4. In the start menu click and go to the program, select the folder containing the system and
double click to open.

Getting started
99

Immediately you run the program the main window appears.

Login
When you click on login button, Login form appears requesting one to enter a valid username
then after you press tab key, full names are displayed and you are now suppose to enter
password to get access to the system.

Errors during login


If the user enters a wrong password the following message box appears and requires the user to
enter the right password.

100

Navigation Buttons
Previous- It moves to the previous record.

Next- It moves to next record in the database.

First- Moves to the first record

Last- Moves to the last record

Close- Enables the user to exit the running window program.

CONCLUSION
Despite the hardships encountered in the entire development process the system has been
developed for Horizon Coach, thus enabling it improves its efficiency and effectiveness.
101

Maintenance and usage of the system will be easy as the documentation and user manual of the
system will be available to all users. Also there will be room for enhancement as this was
considered during development.
The system will offer better functionalities than the manual system, where the users of the
system will have to be computer literate so as to use the system effectively.

102

APPENDIX
Glossary
a) BBMS: is an abbreviation for Bus booking Management System
b) ADD- refers to a command that is used to include an item in the system.
c) SEARCH- used to find passenger, driver or user in the database.
d) RAM- refers to Random Access Memory i.e. type of memory that can be accessed
e) Scalability -refers to the ability to expand.
f) Debug -is the process of correcting errors generated during program execution.
g) An error- refers to a defect in a given program.
h) Run a program- is to initiate the execution of the set instructions.
i) Prompts will be defined as the point at which the computer and the user interact. These
are decision points in the control flow of the program, allowing the program to branch
based on the user response.
j) Commands- are the legal responses the user may make at any given prompt.
k) Administrator:- the personnel who are mandated with administrating and creation of
user accounts besides ensuring system security
l) Users: The personnel who interact with the current system as well those expected to
interact with the proposed system.

103

Gnatt chart
Task/deliverable

Number of weeks
1

Proposal document
Proposal
presentation
SRS document
System

design

specification
Logical design n
document
Physical

design

document
Implementation
and

test

plan

document
User

manual

documentation
Final document
Final Presentation

TROUBLE SHOOTING

104

10

11

12 13

Problem
Software not responding

Possible cause
Many processes re-scheduling

Remedy
Check your memory space and

Low memory space on the free it if necessary.


hard disk

Close programs that are not in

Display of a funny message on A virus attack on your system

use
Install an Anti-virus software

the screen.

Update your Anti-virus from

Deletion

of

spontaneously
Pc shutdown

data

your vendor or from the


Power failure

website
Ensure there is power on

Faulty power supply cable

mains supply and switch on.

Faulty power supply unit

Check cable.
Check your power supply unit

Risks and Mitigations


The table below outlines the risk and the effects and the mitigation that may be applied to avoid
the same.
Risk

Effect

Mitigations

System Crash

Lose of data

Backups

Software Failure

Unexpected result

Program tests

Uncompleted Tasks

Delay in project completion

Activity schedule

Virus Attack

Corruption of files

Scan with antivirus

REFERENCES

Shelly, B, G, Cashman, J, T and Rosenblatt, J, H, 2006, System Analysis and Design, sixth
edition, Thomson Course Technology, Massachusetts.

Pressman R.S Software Engineering: A practioners approach,5th Edition, McGraw Hill,


New Delhi,2001

http://en.wikipedia.org/wiki/Data_flow_diagram(14th October 2014)


105

Software engineering 4th edition by Ian Somerville 2004 publisher Pearson education
international.

Software engineering 7th edition by William stalling published by Pearson education.

106

You might also like