The Elements of Class Design
A scenario for a help kiosk for the MTA
We want to build a path finder for subway stations. The purpose of the
device is to help out-of-towners find the proper route to their destination.
The kiosk displays a map of the subway system, with all lines and stations.
The display indicates the current station ("you are here") prominently. The
user can query the system by clicking on the desired destination. The system
then indicates the lines to use and the stations at which to transfer.
The user can also query the system by entering the name of the station. The
system response can also be displayed in textual form ("take the A to West 4th
Street, change to the F,.."), and can be also be printed.
Other desirable features:
a) it should be possible to display a single subway line.
b) The system should calculate the number of stations between start and destination,
and possibly give an estimate of the travel time.
c) The information on the system must be up-to-date: local station closings
for repairs should be indicated.
d) The system should include maps of the neighborhood of a station, indicating
access staircases and the streets to which they lead.
d) Eventually the system should be integrated with the bus and suburban train
routes, and it should be possible to enter a street address and obtain a hybrid