CSSE 230: Team Project
Topic
You are to design and implement a navigation system for a domain of
your own choosing.
Requirements
The system should satisfy the following requirements.
- The systems needs to store data about cities and
points-of-interest, such as state parks, amusement parks, etc and
connections between them. The connections represent roads.
- Neighboring cities and points-of-interest need to be enforced by
the data structure.
- The system needs to find guaranteed shortest routes given a cost
function.
- The user can search for routes by cost.
- There need to be at least two cost functions, including time and
distance.
- Cities and points of interests are rated by how interesting they
are.
- Users can search or list cities by how interesting they are.
- A trip planer. Users can specify how much time they wish to spend
on the road or how many miles they wish to travel. Give the user some
choices.
- A good GUI.
- The system needs to scale-up.
Teaming
A good amount of your project score will be based on how well you
work as a team. In particular, poor team performance such as
contributing very little or just writing most of the code by yourself
will result in a reduced teaming score irregardless of how impressive
your final project might be.
Here is a list of team skills we would like you to learn or
practice:
- Use of team roles
- Team decision making
- Division of labor
- Conflict resolution
- Writing meeting minutes
Here are the teams for this project.
You will use the following team evaluation form to evaluate your and
your teammates performance: team evaluation
form
Please use this template
for the meeting minutes.
Design
Before you start coding, you are asked to submit a design for
your system. This design should use:
- [10 pts] UML class
diagrams (see this tutorial)
- [10 pts] User
stories and
- [30 pts] A concise description and justification of your proposed data
structures.
- [10 pts] A screen review in which you outline the proposed design
of the major screens of the GUI.
All four of them are good software engineering techniques.
Documents, Deadlines and Grading
- Day 25, BC: Design documents (see above). Additionally, submit
a good, catchy name for your team.
- Day 27, BC: Project update: Please email me a half page
description of the state of your project. Describe what you have
implemented, the status of the implementation and what you plan to
implement.
- Day 30: [20 pts] Oral presentation of system.
- Friday February 17, 5pm, with a 48 hour grace period: Team evaluations
- Friday February 17, 5pm, with a 48 hour grace period: [160 pts] Software system
- [40 pts] Team work (see team evaluation form) You must submit the
team evaluation form to be eligible for these points. You must also
submit the meeting minutes.