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
- development process -- criteria for design
- modeling -- structural versus behavioral
- abstract systems -- as a design methodology
- class design -- guidelines
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
- Characterize the differences between semantic
modeling and object oriented modeling.
- 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].