Wherefore Art Thou, My Bus? Clark Cianfarini, Trevor Key, & Scott Ritchie
Topics Overall Description Algorithms Operating Restrictions User Interface System Init & Recovery Feasibility/Problems Multidisciplinary Components Testing Strategy Project Costs Clark Cianfarini Trevor Key Scott Ritchie
Overall Description This project will compute real-time predictions of when buses will arrive at stops. The information will be available online and at select bus stops.
System Components
Algorithms Iterative design Routes created as series of checkpoints Interpolate time to next checkpoint Add summation of time to all successive checkpoints Optimized for small geographical areas Target accuracy: ±1 minute
Operating Restrictions Buses must be in range of GPS satellites and some form of internet connection Users and Bus stop displays must have some form of internet connectivity Buses report their location at least one time for each stop on the route Buses do not report erroneous data often enough that thrown out updates make the update frequency less than the above-stated minimum
End User Interface
Admin Interface
Hardware Bus Stop Display
System Initialization MySQL Server Apache Web Server Backend Bus Data Polling Bus Arrival Estimator Bus Stop Display Handler Registered as services in Windows
Crash Recovery Any process that fails will need to be restarted individually If backend fails, web site will still function but display old data The admin will need to restart any failed service manually
Project Feasibility & Anticipated Problem Areas RTS bus data Tested acquisition Possible backup Android app WebOS app App for laptop Hardware display needs experimentation
Multidisciplinary Components Electrical Engineering Bus stop display Information Technology Management of server system and services SQL Database Programming Civil Engineering Public transit and traffic management Computer Science and Software Engineering Programming of software New Media Design Web interface design
Testing Strategy Unit Testing Regression Testing Generate random test data Verify web sites display on multiple popular browsers
Integration Everything communicates through the database – they must play nice with each other No data is written by more than one component
Project Costs ComponentDescriptionQuantityCostCost for UsAvailability ServerPC to run server software for system 1$500+Free (provided by Rick) On hand LCD DisplayDisplay unit to be used with hardware display 1$50Free (provided by Rick) Online Router ASUS WL- 520gU Router used to pull information from server and control LED display 1$45 Online Misc CablesSerial cable1$10FreeOn hand Visual StudioIDE for developing the server component 3Free (Academic Version) FreeOnline Google Maps APIUI Element for displaying maps and routes 1Free for non- commercial use FreeOnline DreamweaverWebsite development software 1$200FreeOn hand MySQLSQL database software1Free On hand ApacheWeb server software, used to host web interfaces 1Free On hand