CpSc372

Introduction to Software Engineering

Assignment 6

Detailed Design Decisions

 

 

Goal: Gain experience in making design decision

 

Description: A design decision involves selecting the best choice from among several possible designs. The selection is driven by a set of criteria chosen because of the goals for the product and which part of the product is affected by the decision. A “design” is a description of the classes and the arrangement of relationships among the objects. In this assignment we will take one design problem and determine an appropriate solution.

 

The Design Problem:  In Brickles, the floor absorbs a puck. The walls and ceiling reflect the puck. In bowling the edge of the gutter absorbs the ball if it is coming from one direction and reflects it if it is coming from another. How can this variation be abstracted out of the StationarySprites so that additional behaviors, such as a wall that gives the puck additional energy, be designed?  How should this behavior be designed?

 

Procedure:

  1. Write a clear, concise analysis of the problem.
  2. Define a set of criteria for making the decision. Use the properties of the product we are designing.
  3. Describe, in detail, 3 possible solutions to the problem.
  4. Use your criteria to select the best solution. Justify your choice.

 

Turn-in: The description of the problem, the description of criteria, the description of the three solutions (use UML diagrams) and the justification for your choice.

 

Due: 4 pm Wednesday March 5 in the dept office

 

Points 3 points

 

Team: 2 person team assignment

 

Evaluation: Quality of the justification is most important, description of the solutions is the next most important and the criteria are next.