![]() |
![]() |
![]() |
![]() |
![]() |
Mapping Object Models to SDL Interface Definitions
When mapping object model concepts to SDL there are two aspects that need to be taken care of:
In SOMT this implies that an analysis object is seen to have two different descriptions in the design model, one description of the interface and one description of the object itself. In the system design the focus is on the interface definition so we will save the mapping from object models to SDL object definitions until the next chapter ("Object Design" on page 3913). However, defining the relation between the object model concepts and the interfaces between the components of the system is a very relevant issue for this section.
Since the basic mechanism in SOMT to go from analysis to design is using the Paste-As mechanism (see "Implinks and the Paste As Concept" on page 3808) this is of course also used when defining the interfaces. As seen in the previous section interface definitions in SDL are defined using signals and/or remote procedure calls. Consequently this is what is produced when mapping a class to an SDL Interface.
As an example consider the DisplayInterface objects in Figure 660 that has one operation each.
When mapping these objects to SDL interface definitions we get in the first case the signal interface definition in Figure 661 (with the signal Display) and in the second case the remote procedure definition in Figure 662 (with a definition of the remote procedure Display2).
In SDL the natural way is to express interfaces by asynchronous signals, therefore this mapping has been chosen to be the default. (It can also be explicitly denoted with the word async within brackets, after the operation name.) If synchronous interface is preferred, this can be denoted by the word sync. This is an extension of the original class diagram notation.
Figure 661 : The signal interface from the DisplayInterface object in Figure 660
Figure 662 : The remote procedure interface given by the DisplayInterface2 object in Figure 660
It is of course also possible to have a mixed signal/remote procedure interface. In this case some of the operations are asynchronous and thus mapped to signals while other are synchronous and thus mapped to remote procedure definitions.
http://www.ibm.com/rational |
![]() |
![]() |
![]() |
![]() |