Information Technology Reference
In-Depth Information
Fig. 7.5 Top-Level Module
Diagram (Booch 1994 )
Gardener
Motif
Planning
Climate
control
Nutritionist
Database
Devices
2. The ability to isolate errors based on the component failure.
3. The ability to loosely couple subsystems in the same way classes are loosely
coupled providing the ability to replace one subsystem with another offering the
same interfaces (Fig. 7.5 ).
Like anything else poorly designed or implemented, subsystems that are of bad
quality provide little to no benefit to anyone. There are a few considerations to
make the optimal subsystem organization. First, think of the system as interactive
parts, such as what parts can function without the others (normally the ones seen
outside of the system). You must also consider if there is logic carried out that can
be implemented via inputs and outputs. This can be seen in the ''Planning'' module
of Fig. 7.5 . The gardener in this scenario would provide the planning information,
such as the number of plants and their variety, and the planning module would
provide the pertinent information to each of the modules below it using the
appropriate interfaces. There may also be accessible controls. In this scenario they
are grouped in the ''Devices'' module.
7.6.9 Services and Subsystem Interfaces
Each module must provide some service or functionality otherwise they would not
need to be included in the system. To do this, each service needs an interface to the
service requestor(s). This interface is a subsystem interface, and subsystem
interfaces should function similarly to those of class level interfaces. They should
provide
the
smallest
pieces
of
data
necessary
as
well
as
retain
only
one
functionality.
 
Search WWH ::




Custom Search