CS 190 Project Requirements Proposal Vanessia Wu (vywu) February 1, 2005 BikeQuest Description Current mapping services such as Mapquest are designed to help automobile drivers map an area around a point of interest (POI) or travel from point A to point B in the least amount of time or distance. Cyclists have a different set of mapping needs which are not addressed by the existing programs. In addition to travel time and distance, the type of terrain, pavement conditions, scenic-ness and the amount of automobile traffic on their route are also important to cyclists. BikeQuest aims to address this need by providing a search engine for existing bike routes and generator of new routes. It does so by providing a repository of bike routes provided by cyclists and rated by cyclists, and a searchable interface which allow users to search for their desired routes by distance, time, terrain type and other cycling-specific factors. BikeQuest will also allow users could rate routes or segments of routes on a scale of 1-5 on those factors. Segmenting the routes will allow BikeQuest the option of generating new routes by linking segments from nearby or intersecting bike routes. BikeQuest can also have features showing the most popular routes, asks users to vote on the worst hills and other trivia questions designed for sharing useful knowledge on biking in the locale. The current plan is to develop BikeQuest for Rhode Island bike routes originating from Providence. Current methods/Similar products Cyclists I have talked to rely on regular maps, bike maps, or online maps for their mapping needs. sSome likes a more detailed bike trail map called Rubelmaps (www.rubelmaps.com). It outlined suggested bike routes on a regular map, gave rough estimation of the gradient of climbs and highlighted ice-cream stops along the route. It charges a small fee ($4-$8) for the purchase of each paper map plus handling and shipping. There are two disadvantages to Rubelmaps. First, the cyclist could not get instantaneous information. Second, it currently only covered Massachusetts and some parts of New England, excluding Rhode Island. Some cyclists have downloaded maps onto their handheld computers using a program such as Mapopolis (www.mapopolis.com) or printed Mapquest (www.mapquest.com) maps to carry in their pockets or mount onto a special map mount on their bikes. Some would also be equipped with a Global Positioning System (GPS) system which shows them their exact location on planet Earth. But BikeQuest could be complimentary to all these systems, since before the rider hit the road, he/she needs to first find the route that matches his need through BikeQuest. Target Users Users will be inclusive as the program will include a wide range of routes of different lengths and difficulty levels. We expect most users to be of the recreational and serious recreational riders, who ride 15-100 mile each time and take on even longer weekend routes. Functional Requirements (in order or priority) Basic Features - A database of bike routes with information on each route's - o Distance o Terrain (scale of 1-5. 1 is flat, 3 is rolling and 5 the most hilly) o Traffic conditions o Pavement (scale of 1-3. 1 for nice paved road, 3 is gravel or potholed) - A searchable function that searches bike routes by a combination of the above criteria, and that starts from one of the seven or eight "gates" that every user uses to leave Providence. If search yields no result, return the closest results and rank them. - Ability to present the search result by a creating a printable map of the route. - Ability to present the search result by detailed route information at each turn and in addition, at each significant change of terrain, traffic conditions or pavement conditions (may be use onMouseOver to show those information). - Allow users to rank each route segment by one of those three criteria (terrain, traffic and pavement) - Must have an easy to use, simple, non-cluttered interface, especially for ranking route segments by at least three different criteria. Someone suggested color-coding and clicking on icons (e.g. one to five stars) right next to the segment. - Ability for users to see the top alternative routes of other users who have also ridden this route, similar to the Amazon.com recommendation system. - Have an alert system that allows users to alert each other of emergency situations. - Ability for the administrator to manually add, edit and remove routes. Optional Features - Have a weather icon which shows the weather of the bike route that the cyclist has chosen. - Features showing the most popular routes, asks users to vote on the worst hills and other trivia questions designed for sharing useful knowledge on biking in the locale. - Ability to generate new routes by joining nearby or intersecting routes. - Relating to the above point, have an algorithm that will connect routes and average their ranks to produce a new route with a new rank values. Testing - The search route function can be tested once the database is populated. All the other main functions can each be tested separately. - The usability of graphical interface can be tested by inviting users of different technical and cycling expertise to try it out. Conclusion In order for it to be useful and of value to the target users - recreational and seirous recreational cyclists - the basic fuctions must be implemented, possibly with exception of segmenting the bike route, but I left it there because it provides an additional challenge to the class and it makes the program more intelligent than a simple searchable database.