Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Milestone 3 required that we design our entire system. It required that we look ahead at future milestones to see what functionality would be needed and to see how each would incorporate the behavior of the previous milestone.
Here is what the turnin required:
- CRC Cards
- Test Plan
- Meet with TA half-way through
- UML Class Diagrams
- Team member responsibilities
- Group timeline
Out of all the milestones, this one required the most planning. It took us a lot longer than we thought to figure out where each milestone was supposed to put us, as far as project functionality was concerned. It was also very frustrating because we had to plan everything - we had to think through stuff that hadn't even been created yet.
At the time of this milestone, we didn't realize how important scenarios could be for handling certain cases of user interaction. Luckily, we had a group member who could crank out humorous yet quality scenarios in no time flat.
- It is hard to see the big picture, but try to. Don't look at this milestone as "busywork"
- Do everything as a team so that everyone will be familiar with what needs to be done for future milestones.
- When you design, it's important to remember that the actual implementation of the specific methods is unimportant – you'll figure it out later. What is important is to clearly define methods that other classes will need to function. Think: What does this class need to tell other classes? Scenarios and CRC cards are useful here, because they let you step the entire way through a task, and you may see holes in your UML setup.
- Scenarios are a great way to start off this design milestone. Rather than trying to tackle the whole project at once, Scenarios look at a specfic case.
easier that way.
- Using CRC cards helped a lot in this milestone since the project is pretty complicated and the cards breaks it down to managable parts. We used a CRCCard class for Squeak that was included in the CD in the book rather than physical index cards as we feel it was
- Keep the UML updated! Your project requirements should, and will change throughout the course of your milestones, and the UML should change to reflect this. There's no real point to having a graphical description of your project if it's 3 iterations out of date.
- Love your design, and care for it each and every day.
A few example documents:
Here's sample of our CRC cards for M3
Link to this Page