SUBMITTED BY:
                               Md Shaukat Ali
                                   2010202032
                                MCA (Regular)

                                  GUIDED BY:
                                  Dr. P. Geetha
                             Assistant Professor
Department Of Information Science & Technology
   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.
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.
   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.
   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.
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
   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.
   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.
   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.
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
   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.
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.
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.
ARCHITECHTURE
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.
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.
Mt croid

Mt croid

  • 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 transportationSystem 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 detailsby 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 Busstops 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 applicationshall 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 projectwas 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.
  • 14.
  • 15.
    DEATAILS OF SYSTEMCOMPONENT  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 SYSTEMCOMPONENT  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.