drawtool application">

The drawtool application

1



slide: Section 4.1: The


Guidelines for design

2



slide: Section 4.2: Guidelines for design


From specification to implementation

3



slide: Section 4.3: From specification to implementation

  1. Give an example of your choice to describe OO application development.
  2. Discuss possible guidelines for individual class design.
  3. Discuss how inheritance may affect class invariants.
  4. What would be your rendering of the Law of Demeter? Can you phrase its underlying intuition? Explain.
  5. Define the notions of client, supplier and acquaintance. What restrictions must be satisfied to speak of a preferred acquaintance and a preferred supplier?
  6. Characterize the differences between semantic modeling and object-oriented modeling.
  7. How would you characterize the notion of abstract systems?
  8. Explain how events may be employed to maintain system integrity. Give an example!

The original paper on hush is  [HUSH]. A veritable catalogue of object-oriented applications can be found in  [Harmon93]. A classical paper on class design is  [JF88]. For the Law of Demeter, consult  [LH89]. The notion of abstract systems was introduced in  [Henderson93], which also gives a good account of a formal approach to object-oriented design. For an introduction to formal methods and Z, consult  [Diller94]. For object-oriented extensions of Z, see  [Stepney].