






Hotspots: Admin Pages | Turn-in Site |
Current Links: Case Final Project Summer 2007
M5 Application Design
Requirements:
- Create your Software Architecture and Trust Boundaries
- Identify your Application and Utility Objects (those new objects specifically developed for the design. You do not have to say which are which, just id the ones that were added from the domain analysis) This should be easy, as all classes that were not identified with a CRC card will be in this category. You can annotate them on the class diagram, or you can list them separately.
- Add necessary CRC Cards and any new scenarios needed (for newly discovered domain classes if any). If you have no new classes, and nothing to fix from your TA meeting, then you may not have anything for this point. In that case you will receive the points for "free" as a reward for doing a good job the first time.
- Submit a UML Class diagram of your refined design (shows all domain and application/utility objects)
- Submit 2 UML Sequence diagrams that shows your full design handling one or more scenarios. You should make your scenarios interesting so these diagrams help you.
- Submit screen mockups that show your preliminary user interface. These screens can either be hand-drawn, or prototyped with the VW Painter and then captured.
- Submit a written contract (1 per person on the team) for an object or method in the design
- Submit a short paragraph on your error handling and exception handling design strategy.
UML Class Diagram

Architecture / Trust boundaries

Application / Utility Class Identification
Application
- GameAppModel
- SetupDialog
- StoreDialog
- RiverDialog
- TradeDialog
Utility


Updated Scenarios for M5
Scenario: Random Event - Storm
- Roy is informed that a 2-day Storm(Event) is approaching.
- Roy and company must stop traveling(Pace) for 2 days, halting movement but still consuming food (Environment).
- On the 3rd day Roy is able to continue.
Trade Sequence

Scenario: Trade
- Roy wants to attempt a trade, so he uses the trade option.
- A trade window dialog (TradeDialog) shows information of the trade, which is “5lbs of food for 12 ammo.”
- Roy accepts the offer and loads up his new items in his wagon.
Storm Event Sequence

Some general code/thinking:
We do not want two classes to perform the same semantical check.
Avoid unnecessary checking.
Do not go overboard in recovery.
Some ideas:
Create an Exception class in the UML diagram, and couple it with Environment.
Classes that have problems, will not be aware of the Exception class. But they
can call it through some strategies.
This milestone wasn’t too difficult, except for the diagrams. At this point we were still unsure of exactly what classes we needed, so that was also a small problem.
Link to this Page