Object Oriented Analysis and Design
Tuesday and Thursday
9:30 AM - 10:45 AM
What's New (Home)
September 1-9, 1998
September 10-30, 1998
With this assignment, the team begins to move towards the middle of the elaboration phase. Having expressed a conceptual foundation for your project, it is time to express your design more clearly. Activity diagrams aid the task of explicitly specifying what a system must do. Do not make the mistake of mapping a use case directly into an activity diagram. An activity diagram should provide more detail. While you are constructing them, more questions can be asked, and answered. Holes in your requirements may appear as you encounter aspects of your system that have not been explicitly captured so far. For instance, in the example presented in lecture, an activity diagram captured the process of adding an anchor to a link in Chimera. As it was being constructed, other responsibilities were revealed. For instance, it was realized that a user must login to the system in order to set an active hypermedia context. In addition, the user had to have viewers running in order to select anchors in the first place. Be prepared for similar things to happen for your projects.
This assignment has two parts. The first part is to identify a set of important events within your project's domain. From lecture, an event is a notification of a noteworthy change in state of some object. Thus, in identifying important events, the team is identifying the significant state changes that occur in the team's system. List each event and give a brief description of it. What object state change is it associated with?
The second part of the assignment is to construct three activity diagrams for your project. A state change does not occur in a vacuum, some activity or process is occurring that leads to the change in state. These activity diagrams should thus be built around the set of events that the team has identified. If the team succeeds in identifying significant events, then the activity diagrams built around these events will capture significant activities within the system. For each activity diagram, start with a high-level view of the process and produce sub-diagrams that decompose the high-level steps (similar to what was done in lecture). You do not have to completely decompose the high-level diagram, but make sure that you decompose the steps that capture significant events in your system.
As described in the previous assignment, Appendix 1 and Appendix 2 should be updated as you make progress in your analysis and design. Appendix 1 records questions and answers about the project. Appendix 2 tracks changes to the requirements document grouped by date.
The goal of this assignment is to document the major processes that occur within your system. These diagrams may serve as milestones in the construction phase. In other words, a development team might set themselves a goal to have a particular activity diagram completely implemented within a week (or longer for more complex activities).
© Ken Anderson, 1998.
Last Updated: 8/16/00; 2:46:33 PM