Charles Dunbar, Ben Kallal, Ankit Patel, Peter Purcell, Kody Reynolds
Purpose Problem Statement – There is currently no such application specifically designed for cyclists to create routes that make use of the bike trails in IA. Solution
Create a safe and efficient route between two locations in Iowa Will support online access through any operating system that supports application supported browser Will support IE, FF, Chrome Will take a start and end location for routing Will have consistent routing algorithm
Will route cyclists using a graphical interface Will display a route as an overlay of an Iowa map Will allow the printing of a map with instructions Will provide a code or URL that can be sent to another to exactly recreate the route Mapping data can be updated and maintained
Usability Must provide a positive service to the users to help accomplish their goals of finding the least-costly route Reliability Users must be allowed to access the web service almost always without any downtime and get back the correct least-cost path from origin to destination
Speed The algorithm and user interaction with the application must be reasonably fast and responsive under normal use conditions Scalability Must be able to handle multiple requests at once – up to an upper limit MAX_NUM_USERS that is defined Security The server module must be immune to attacks from external sources
Our proposed solution is made up of several different modules. The modules communicate to one another using function calls. The four modules include Client, Server, GIS Server, and Manual modules
The website the end user sees Communicates with the Google Maps via Google Maps JavaScript API. Communicates with ARC GIS Server via ARC GIS JavaScript API. Contains JavaScript functions to display routing information in visual and textual format
The User Interface will look similar in all browsers Will be extensible for the addition of future features. Designed to be useable by people with little computer experience Will allow two users to get the same route with minimal effort Can support many concurrent users
Hosts the client module Where the mapping algorithm is executed The mapping algorithm is the A* mapping algorithm Returns the path and biking directions to the client module Has a special custom object class for holding direction information and GIS data
Hosts an instance of the ArcGIS Server Contains GIS road data for all of Iowa, retrieved from the Iowa DOT Communicates data to the server and client module
The purpose of this module is to provide a simple and effective means of updating the mapping data on the GIS server. This is necessary due to the complexity of the GIS server application.
Communication with GIS (to server and client module) ESRI API ArcGIS developer Associated Risk AJAX calls Interactive web applications
Apache Google Maps ArcGIS-Server server: Red Hat Enterprise 5.4 Xenon 2.67GHz CPU 3042MB Memory 10GB hard drive ArcGIS Server ArcGIS Client server: Red Hat Enterprise 5.4 Xenon 2.67GHz CPU 372MB memory 8GB hard drive
JavaScript Testing Requirements Testing General Route Testing Usability Testing
Survey In our survey the users will have the following tasks: 1. Insert a departure and a destination. 2. Select preferences. 3. Analyze route given.
Losing a team member. Limited web programming Knowledge of GIS Mapping algorithm Google changing the API
Questions?