Initial Project Specification
The project our group has chosen to do is a Subway monitoring system. This system will monitor all of the functions related to the everyday operations of a large city subway system. This system will be comprised of at least four major components. The components are:
- A Database, which will interact with the other four clients and receive and send information about the status of the Subway system.
- A Client which interacts with the end user and provides information about schedules, ticket sales, and status of trains.
- A Client which provides the station manager a way to view or modify any information pertaining to the Subway system.
- A Client Interface representing each of the trains.
At the center of all of the functions listed above is a database server, which will be responsible for handling all of the incoming information and distributing it out to the various clients. In some cases, the clients must communicate with each other, so they must be able to both send information to the server and receive it and process it as well. This is done indirectly through the server. The database will keep information on each train's schedule, their current position, and delays in the schedule and the capacity and current number of tickets sold for the each train.
Each train has to send information based on the sensor readings they receive. This will include problems with the rail and other problems with the tunnels. They also will keep the database updated on their position and if they are on time or not. They will also have the ability to check the status of the other trains so that they can adjust their route if necessary.
At the information kiosks, the primary function will be to allow users to query the database to see if their train is on time and to view its current location on a map of the tunnels. They can also view the different train's schedules. We will also provide the ability for the customer to signal that some sort of disaster has happened and that trains should not come to that particular station until the emergency has been resolved.
The Station Master will be able to add or remove trains from the schedule, as well as any other administrative functions. The Ticket Sales client must query the database to find the different trains schedules, seat availability, and price, and then must update the database if a seat on the train is purchased.
This system will be able to give both the customers and administrators of a subway the ability to check real-time information at all times and make decisions based on such information. This will allow the systems to run more efficiently and the customers to make decisions based on the latest information. For instance, any major delays can be emailed or sent to a regular customer's pager so that they can find other modes of transportation.