home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.object
- Path: sparky!uunet!mole-end!mat
- From: mat@uunet.uu.net!mole-end
- Subject: Thoughts on the Progression from SA/SD Models to OO Models
- Message-ID: <1992Jul25.190829.5508@uunet.uu.net!mole-end>
- Organization: :
- Date: Sat, 25 Jul 1992 19:08:29 GMT
- Lines: 121
-
- In comparing the SA/SD models to the Object Model(s), I find that certain
- things in one set correspond to certain things in the other set in a
- straightforward way. What may be more interesting are the correspondences
- that are absent.
-
- A brief review on SA/SD. During analysis (SA) three models are developed:
-
- The Data (or Information) Model, which is based on Entity-
- Relationship (E/R) diagrams (or some equivalent). E/R
- diagrams describe the existential relationships between
- entities that exist in the system.
-
- The Process Model, which is based on Data Flow Diagrams (DFDs).
- DFDs describe the processing steps which use and create data,
- the data which must be stored, and the data flow between steps
- and between steps and data stores.
-
- The Dynamic (State) Model, which is based on some form of state
- machine and which expresses the sequencing of processing steps
- in response to various inputs.
-
- During Structured Design, the three analysis models are abandoned in favor
- of a Structure Chart, which represents modules (generally corresponding to
- processes from the DFD) and synchronous, message-like communication between
- them.
-
- Objects, Entities, and S.C. Modules
- ===================================
-
- In the Object world, there is usually a Class-Relationship or
- Object-Relationship diagram depicting the existential relationships
- between them, and usually the Inheritance relationships as well. This
- corresponds pretty closely to the E/R diagram of the data model.
-
- There is also an Object-Communication diagram depicting the message
- communication between objects. This corresponds more or less closely
- to the Structure Chart. (There are differences; in some O-C models, input
- signals may occur in many places; in the S.C. input control flows enter at
- the top and input data flows at the bottom of the tree hierarchical S.C.)
-
- But an Object can only communicate to an Object whose identity is known to
- it. One Object can know another if
-
- a) the Known Object is global, or
- b) the Knowing Object has a relationhip to the Known Object, or
- c) another Known Object creates an acquiantanceship with the
- Known Object (see Rumbaugh)
-
- Case (a) is deprecated and can be ignored. Case (c) creates short-term
- `shortcuts' across the relationships, but does not actually create new
- pathways. Case (c) often involves temporary or temporal objects
- (`temporalities') which may not appear on the C-R diagram, but which
- could and perhaps ought to appear on a subordinate C-R diagram.
-
- Thus the C-R diagram is a superset of the available communication pathways,
- and provides the framework on which the O-C diagram must lie. In that,
- it corresponds to both the E/R Diagram and the Structure Chart.
-
-
- E/R ====\
- DFD \\
- S.M. =====> C-R (O-C)
- //
- S.C.====/
-
- Objects and Informational Clusters
- ==================================
-
- Another view holds that the Object is a refinement of the Informational
- Cluster, which is a loosely defined `module' containing Entities and
- the Processes that manage them. We can illustrate this viewpoint thus:
-
- E/R ====\
- DFD ====\\
- S.M. \\===> C-R (O-C)
-
- S.C.
-
- Integrating the Views
- =====================
-
- If we simply overlay the correspondence diagrams of the two viewpoints,
- we get something this:
-
- E/R ====\
- DFD ====\\
- S.M. =====> C-R (O-C)
- //
- S.C.====/
-
- What's Left Out
- ===============
-
- Notice that the Dynamic Model, represented by the State Machine, has
- no clear correspondence to the Object Model.
-
- The SA/SD Dynamic Model tends to be unstable. The smallest change in
- the DFD will upset the entire machine, resulting in wildly disproportionate
- changes in the State Machine.
-
- For the OO, Schlaer and Mellor have attempted to produce stable state
- machines by identifying stable state-features in the problem. It's an
- interesting approach; I'm not convinced that it is as valuable as Schlaer
- and Mellor make it out to be. Nevertheless, it does not have any close
- correspondence with the SA/SD state machine, which is intimately tied to
- the structure of the Process Model.
-
- Speculation
- ===========
-
- It appears we need something better than the current S.M. approach, if
- only because the S.M. isn't well integrated into the other models.
- The hierarchical nature of most operations, combined with the need to
- tie relationships with temporalities to their operations, suggests that
- some combination of Warnier-Orr diagrams with Object-Communication
- Diagrams might do the job.
- --
- (This man's opinions are his own.)
- From mole-end Mark Terribile
-
- uunet!mole-end!mat, Somewhere in Matawan, NJ
-