View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Team 1 - Milestone 3

Milestone 3

Milestone 3


This milestone was just to design the entire project.  It required thought about all upcoming milestones and how they were going to be implemented in our project.

One of the major parts was the UML for how all of the classes were to interact.  A diagram of our class interaction is shown below.

Looks pretty complicated, doesn't it.  We have quite a few classes, but each was designed to work together in a way that seems very intuitive.  We used Microsoft Visio to draw this diagram.  Visio has all the arrows and boxes already made; you can find them under New/Software/UML Model Diagram.  Visio is available on all the States Cluster computers.

For each milestone, we also had to create a set of scenarios to help guide our coding.  We also had a set of CRC cards to go with each milestone.  CRC cards helped visualize how each class would interact, and this proved to be very useful in the UML design stage.
Here is a sample CRC Card.

Scenarios were basically a list of things a user might want to do with the program.  A scenario would list the user's intentions and what the output would be if the user performed that action.  It also includes any undesired results and how to remedy this result.

In order to keep us on track, we created a timeline with a list of responsibilities for each team member.  Each date on the timeline specified what partial contribution was due.
The timeline for out project can be found here -->  TimeLine

Along with the scenarios, CRC cards, and UML diagram, we also listed test cases for each milestone.  This example of a test case is from Milestone 4:

TEST PURPOSE: test the creation of the user interface          
TEST CASE: workspace code Genealogy Map new open
EXPECTED RESULT: a new GUI is displayed to the user
ACTION: correct behavior

We came up with roughly 10 test cases for each milestone, although more may be needed depending on amount of functionality that will be tested.


What Went Right?

Again, starting early was important.  It allowed us to not only cover the basics of what needed to be done, but also be as thorough as possible.  A thorough design in terms of UML, CRC cards, and a test plan was important to doing well on this milestone.


What Went Wrong?

Our unfamiliarity with Squeak again came back to haunt us as some of the upcoming milestones required functions that we felt would take a good amount of time to research how they were going to work, and how they were going to be implemented.  This caused us to second-guess ourselves in how much information and detail should be included in the design. 


Link to this Page