Class Project: Software Design

In the design phase of your class project, you are now going to focus on designing a solution to the problem you identified and described during the requirements phase. We are going to make use of the object-oriented design techniques discussed in class during this phase. In particular, I would like your team to follow (as best as you can) the object-oriented design method that is described on slide 42 of Lecture 20.

In particular, start with the use cases you specified during the requirements phase (if you didn't create use cases in the previous assignment, take some time to create some for this assignment based on the list of functional requirements that you submitted) and attempt to create an activity diagram for each one. Decompose complex activities into interaction (sequence and collaboration) diagrams and add any objects that you show in those diagrams to your class diagram. Iterate through the method creating class diagrams, activity diagrams, interaction diagrams, and state diagrams until you have developed a structure for your system that you think will help you address your functional requirements.

Be reflective during this problem, and keep track of problems that you encountered and how you eventually solved them. I would like to have each team develop a small set of Powerpoint slides that describes your system, along with one of the design problems you encountered and the approach you took to solving it. Motivated teams may volunteer to present their slides in class, otherwise, I will walk through your presentation during lecture and share your experiences with the rest of the class.

At the end of this assignment, you want to have a good structure for your system in hand, so that you'll be ready to sit down and implement it!

Note: If you update and/or change the artifacts that you created during the requirements portion of the class project, be sure to include the updated artifact and a description of what you changed and why.

This assignment is worth 100 points.

Please submit your diagrams as a PDF document to the moodle by 11:55 PM on Thursday, April 26th (or by May 3rd for CAETE-based teams).

You may also create your assignment as a set of HTML pages. If so, you should submit a small text file to the moodle that contains the URL of the "home page" of your assignment.

Contact Professor Anderson if you have any questions or concerns about this assignment.

© Kenneth M. Anderson, 2007.