Software Engineering Design


1 Introduction: Fox (2006) distinguishes between two different (but related) design activities:

The following questions are related to software engineering design.

2 Questions:
  1. What is the difference between inheritance and realizing an interface?

  2. Compare and contrast inheritance and interface realization in terms of their advantages and disadvantages.

  3. The following Elevator class is part of an elevator control system.

    Is this class well-designed? If so, why? If not, how would you improve it?

  4. Use an abstract class to improve the following design:

  5. The following collaboration diagrams are part of an in-vehicle navigation system:

    Identify the type of control used in each.

  6. What effects might different control styles have on the reusability of collaborating components?

3 Submission: Your answers to these questions must be submitted using the normal submission process. (See the relevant course policy.)
4 Visibility: Your submission will be kept private.

Copyright 2009