CpSc372

Introduction to Software Engineering

Assignment 4

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. We assume that the chosen architecture pattern is the Model-View-Controller pattern.

 

The Design Problem:  For this assignment we focus on the problem of entering, editing, and displaying data. In OATS we will need to be able to edit arrays. There are problem arrays, orthogonal arrays and the arrays that result from mapping a problem array onto a standard orthogonal array.  One possible approach is to use a “table” construct as the basic structure. Eclipse’s various projects have a number of facilities that make this easier to do. For this assignment, you will describe the problem, consider some techniques that Eclipse’s various initiatives provide and begin to flesh out how the Model, View, and Controller will work.

 

Procedure:

  1. Write a clear, concise analysis of the problem.
  2. Read http://www.eclipse.org/articles/Article-CustomDrawingTableAndTreeItems/customDraw.htm and Virtual Tree and Table in SWT.
  3. Briefly describe how the techniques described in these two articles would help solve our problem.
  4. View some of the online pattern descriptions. Patterns Catalog Observer pattern
  5. Create UML diagrams that illustrate portions of the OATS product related to the tables. Use these as illustrations in your narrative. The diagrams should show how responsibilities are allocated to the three major architectural modules.
  6. Finish off your document by summarizing why this is a useful approach to designing the OATS product.

 

Turn-in: The single Word document that presents a coherent description, proposed solution, and justification.

 

Due: 1:30 pm Thursday Sept 28th via email

 

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. This assignment will be evaluated as a piece of writing as well as for its technical content.