Afgeronde rechthoek: Top of book Afgeronde rechthoek: Managers track Afgeronde rechthoek: Technical track Afgeronde rechthoek: Previous page Afgeronde rechthoek: Home
 

 

 

 

 


Specifying reusable modules

Types of specifications

A module has a public part and a part that must be hidden. The public part is the view of the outside world onto the module. It is the combination of a kind of user manual and a reference manual. In order to build the module, the designers and implementers of that module use both the public part and the hidden part of the module specification.

Both the public part and the hidden part of the specification contain information on the static configuration of the module and information on the dynamic behavior of the module.

The public part of the specification of a module

The public part of the specification of the configuration is specified for the whole module class. It contains the specifications of

        An ordered and non-empty set of references to specifications of normal interfaces

        For each of these references some initial values of characteristics of the interface class are given.

        An ordered set of require interfaces

        With each require interface a set of connection requests

        A set of method disclosures

        A set of references to specifications of hardware interfaces

        For each of these references some initial values of characteristics of the hardware interface class are given.

        A set of references to specifications of streaming interfaces

        For each of these references some initial values of characteristics of the streaming interface class are given.

        A set of notification interfaces

        A ordered set of late settable assets

        A unique instance name

        A class-wide prefix

        A globally unique class identifier

        An optional short description

        An optional URI to a more extensive descriptive document

        An URI to the location of the original specification

        An optional URI to the location where the specification document was retrieved

        An optional URI to the specification of the parent class

        Optional extra include-file names

During system configuration the toolkit adds a reference to the containing package. The toolkit may also add an optional placeholder for the index of the instance.

Other assets may support the specification of the dynamic behavior of instances. The corresponding placeholders will be given a name and a type. Examples are:

        The number of the critical sections that must be reserved for this class

        The number of locations where software interrupts can be generated in this class

For each instance that must be initialized after its creation, the corresponding initialization values must be specified.

The hidden part

The hidden part of the specification of a module consists of;

        An ordered set of private attributes. The first member is a reference counter.

        A set of private methods

        Each of these private methods may have an alias that is used in method disclosures

Both the private attributes and the private methods provide indicators that state whether these design items may be published. This is used when the module is published as freeware.

Implied elements

The specification of the higher-level design elements may imply simpler design elements that are not explicitly mentioned above.

        A set of attributes that are introduced by the get and set-methods of the interfaces

        A set of attributes that are introduced by the hardware interfaces

        A set of attributes that are introduced by the require interfaces. These attributes are accessible by a configuration tool

        A set of attributes that are introduced by connection-requests. These attributes are accessible by a configuration tool

        A set of attributes that are introduced by the notification interfaces

        A set of attributes that are introduced by the streaming interfaces

        A set of methods that correspond to the methods that always come with one or more of the interfaces

Together, all attributes of a module form an ordered set. Only in this way the combination of system-configuration tool and package manager can handle late settable assets. Only in this way the infrastructure can make use of the placeholders for require interfaces and connection requests.

 

 

Afgeronde rechthoek: Top of page Afgeronde rechthoek: Next page