Purpose:                        Lay out basic goals of term project

Description:     Studies are often made of the efficiency of road layouts in cities, with a goal of determining an optimal layout of one way streets and traffic signals.

 

For our project, we are going to measure the average time to travel from several possible source points to several possible destination points for our three types of vehicles. Travel will occur over a grid of streets represented as a directed graph, where each intersection is a vertex stored as a point.

 

Several things need to be stored. We already have the file of vehicles from Project 1. We also need to store the street layout and the start/end pairs for the trials. Other information on trials will need to be stored, such as the user and the times. We also want to store information on each intersection, since intersections may have stop signs, or traffic lights. Finally, the results must be stored for later retrieval in the reports phase.

 

The street layout will consist of a set of edges and vertices. Each edge connects two vertices and has a direction, since all streets are one way. A vertex requires some additional information, such as whether the intersection has a traffic light. Intersections with stop signs have either one or two stop signs, depending upon whether one street has right-of-way. Intersections with traffic lights require information on the duration of each green signal. All traffic lights will have the same cycle (probably one second, and then each direction will have a percentage of that).

 

There will be two classes of users, administrators and experimenters. Administrators will be able to create street layouts and add and remove experimenters. Experimenters will be able to run experiments, call up reports, and change their password. All users have a username and password.

 

Users log in with a three-entry login screen similar to the WinXP login at KU. They enter a username, password, and select between the two types of users. All users, after logging in, first encounter a menu that permits them to select among their permitted options.

 

Experiments consist of a street layout grid, a starting point, and a destination. A starting point and a destination, from a list of possibilities for this layout, are chosen, along with the number of vehicles in the trial. Vehicles are chosen at random, and navigate the layout by progressing towards the destination. At intersections where either of the two choices will progress towards the destination, the direction is chosen at random. The time and route of each vehicle to make the trip is recorded.

 

A report for a layout will show the experimenter, different start/destination pairs, number of vehicles and number of each type that have taken this trip, and the shortest route, along with the vehicle type that took it and the time required.

 

This project will be developed incrementally over several iterations. Early iterations will not have all functionality described herein. The first iteration will certainly not be graphical, either. You will develop a requirements analysis consisting of several types of UML diagrams, along with use cases. As the project progresses, you will update these diagrams and use case realizations, leading to progressively refined versions of the software.