1. SUBMITTED BY:
Md Shaukat Ali
2010202032
MCA (Regular)
GUIDED BY:
Dr. P. Geetha
Assistant Professor
Department Of Information Science & Technology
2. Develop an application showing a dynamic
timetable for a route at a bus stop.
Show bus locations on a Google Map. It
should automatically refresh the locations.
Make use of devices with GPS chips to find
stops near a user.
Make an attractive and user friendly interface.
Create an HTTP based API for use by the
Android client.
3. Requirement Analysis
Buses transportation System is one of the busiest
system in Chennai. The MTC alone carries around
5 million passengers per day. Although it
provides service with efficiency to citizens in
Chennai, people still come across the time when
they miss a bus and spend a long time queuing
at the bus stops. Excessively long waiting time at
bus stops often discourages the travellers and
makes them reluctant to take buses. So there is a
need of a that offers route information in a
ubiquitous and simple way. A system that will
provide real-time bus information with efficient
possible routes.
4. Functional requirements describe what
the system is supposed to accomplish, i.e.
what services it can provide for its user or
application. Non-functional requirements
species the characteristics of the system, for
instance performance, security and reliability.
A good routine for capturing functional
requirements is by using use-case diagrams.
A use-case diagram describes the interaction
between one or more actors and the system
itself.
5. Since I am building an android application
i.e. a front end (MTCroid Client) and a back-
end (MTCroid server) system, I find it
naturally to create two use-case diagrams.
The first diagram describes what functionality
the application provides for the user, The
second diagram describes what functionality
the server offers, we call it the back-end use-
case diagram.
6. Get Bus details by Bus no
Get Bus details by Route (FromTo)
Get Bus details by location (Bus stop no/name)
User
Find arriving Bus stops by serach
See departing and arriving timestamps for the selected Bus stops
See bus tops and curren/destination locations on map
7. Use case 1: Get bus details by Bus no-Its offers bus
details specified by bus no given by the user.
Use case 2: Get Bus details by Route (From To)-Its
offers bus details for route from source to destination
as given by the user.
Use case 3: Get Bus details by location (Bus stop
no/name)-its offer bus details of the particular bus stop
given by user.
8. Use case 4:Find arriving Bus stops by search-
Its offer a search function. The search defines where the
user is going. The function should be flexible and not only
support bus stops, but also addresses, and famous places
and buildings. The destination defined in the search must be
validated by the system, i.e. checking if it exists or not. If it
exists, bus stops close to it will be returned, if not an error
message should be presented. The user can afterwards pick
from a set of bus stops that are returned from the server, if
any. When the user has picked an arrival bus stop, the
application should present nearby bus stops the user can use
to get to the arriving bus stop.
9. Use case 5: See departing and arriving timestamps for
the selected Bus stops- offer route information. When the
user has specified the bus stops he is travelling from and to,
he should be able to see the next three departure
timestamps. The user shall also be able to see when the bus
arrives at the destination bus stop.
Use case 6: See bus stops and current/destination
locations on map-offer a map service. The map service can
be used to see where the bus stop is located compared to a
destination, or it can be used to see where nearby bus stops
are located compared to the user's current location. The map
should also illustrate where the user can walk to get to the
bus stop or the destination.
10. Find the Bus stops close to the destination defined in search
Find Bus stops close to user correspond to destination bus stops
Client
Find Timestamps based on two given busstops identifier
Find distance and driving time between current location and arrival bus stops
11. Use case 1:Find the Bus stops close to the destination defined
in search-This will offer to find bus stops close to a destination
defined in a search string. The destination can for instance be an
address, a bus stop, or a famous place or building.
Use case 2:Find Bus stops close to user correspond to
destination bus stops-The second use-case shall offer to find bus
stops close to the user based on the destination bus stop and the
user's location.
Use case 3 :Find Timestamps based on two given bus stops
identifier-The third use case shall offer to find route information
based on two specified bus stops. Routes that contain both bus
stops shall be returned with corresponding departure and arrival
timestamps.
Use case 4: Find distance and driving time between current
location and arrival bus stops-The fourth use-case shall offer to
find the driving distance and driving time based on two locations.
12. MTCroid client
1:Usability-The application shall present simple and easy-to-understand
interfaces to its users. An attractive and user friendly interface.
MTCroid server
2: Accessibility-The functionality offered by the server shall be
accessible from anywhere.
3: Data transfer-The amount of data returned from the server shall be
kept as small as possible.
4: Performance- Performance bottlenecks shall be addressed in our
system.
5: Platform independent- The server shall not be platform dependent.
6: Interface- The server interface shall be kept as simple as possible.
13. SYSTEM DESIGN
This project was divided into three main components. They
are listed below:
The MTCroid client.
This is what the user interacts with. It has to be quick and simple to
use.
The user should not be concerned about any other components
making up the system. To them this is the entire application.
The MTCroid Server:
This is a server written in Java. It provides a REST ful API, used to
provide information to the Android client using HTTP requests.
The MTC database.
The My SQL database contains all the schedule data provided by
MTC, all query able.
15. DEATAILS OF SYSTEM COMPONENT
GPS API (1): Coordinates describing where the user is
located at any given time is provided by an API that
communicates with a GPS hardware component. The
support for GPS must be available on the mobile platform
since the server requires the coordinates as a parameter for
creating some of the resources.
Bus Application (2): The bus application acts as the client
in our architecture. It extracts route information from the
server by communicating with the web-service.
Web-Service (3): The web-service is the interface of the
server which the clients communicate with. It receives
requests and passes them to the RIS-core. The web-service
returns a resource as a response to the request.
16. DEATAILS OF SYSTEM COMPONENT
Server Application(4): The RIS (Route Information Server) is responsible for
extracting data from the resources and creating new ones. The RIS offers its
functionality through the web-service.
Resources (5): A resource is an output file the mobile bus application can read
generated by the server. It may contain route information or information about
nearby bus stops. It depends on what resource the client requests. The resource
is a structured XML/JSON document.
Google Maps API/Parameters (6): This component is accessed by the server
to find the distance between two coordinates.
Google Maps GeoCoding (7): This component is accessed by the server to
translate addresses into coordinates and vice versa.
MTC Route Data (8): This component is a database containing information
about bus stops, routes, and timestamps. Queries are issued by the server when
it needs timestamps or information concerning bus stops.