Software Engineering, Spring 2001, Exercise 7

 
  1. Function points forever... Our Function point tool is required to provide new features. It should be able to produce also estimates on the needed man months and on the optimal schedule. Some formulas for counting these may be found in Software engineering literature. A collection of them will be provided. They are not, however, considered good enough and the software should be designed so that new better formulas may be easily included (hopefully even without re-compiling the software). What design patterns could be used to fulfil this requirement?

  2. Consider a diagram editor, that may be used for drawing objects and for connecting them with lines. Descriptive data may be attached on both objects and lines. An object is created as having some shape but this may be changed later on. The lines shoud always start and end at the shape boarder. Outline a class diagram for this editor. Consider which design patterns to use. Consider especially the creation of objects and the change of shape.

  3. It would be nice if the editor of task 3 would provide an undo-function. What classes are needed to provide the undo. Consider the extent of undo and the data needed for the undo.

  4. Find out what are the purpose and the idea of the MVC-architecture (MVC= Model-View-Controller, deals with user interface)

  5. Let us assume that the project plan is stored as an activity network. The nodes contain information about the planed and real start and end times, resources needed and persons assigned for the task. The activity network is used in producing the Gantt diagram, hierarchical reports on task and employee basis and many types of summary reports. Consider the class structure and the patterns to use in this software.


Harri Laine, 25.2.2002