Objectives

This section deals with informal aspects of design, including the cognitive factors determining the construction of an object model, criteria for judging the quality of design, and guidelines for individual class design. It discusses the distinction between structural and behavioral aspects by comparing semantic modeling with an object oriented approach. Further, it introduces in an informal way a design methodology based on the notion of abstract systems. In this approach, a notion of events is employed as a means to characterize user actions, and as a structuring device that aids in maintaining global consistency. Finally, issues of design methodology and individual class design are dealt with.

Points to emphasize

Hints

You may comment on the efforts to integrate the object model of programming languages such as C++ and the object model of object data bases, as for example reported in  [Cattell94]. This research is currently only in its initial phase, but clearly indicates that many of the features employed in semantic modeling, such as n-m relations, will in the future be supported on a language level.

Questions

  1. Characterize the differences between semantic modeling and object oriented modeling.
  2. What guidelines for individual class design can you think of?

Comments

The notion of abstract systems is introduced by means of an example. In  [Henderson93] the method is worked out more formally. The idea of using events as a means to maintain global consistency is clearly suggested in  [Henderson93] but not developed formally as an essential ingredient of the method. The use of events to interrelate distinct components of a system, however, seems to be very promising. See also sections events and duality.