15 Oct 2019

  • October 15, 2019
  • Amitraj
* Factoring into subsystems:-

In system design the first step for all except the smallest applications is to break the system into subsystems. In a subsystems classes share common properties, have similar functionality, have the same physical location, or execute on the same hardware.

A subsystem is a package of classes, associations, operations, events and constraints that are interrelated and have a reasonably well defined interface to the rest of the system. The interface specifies all interactions with the subsystem to allow independent subsystem design. Relationships between subsystems may be client supplier or per to per.

 A system may be broken into layers and partitions. Layers define an abstract world and work like a client of services for layers below and as a supplier of services for layers above it. Layers may be of opened or closed architecture. In opened architecture a layer knows of all layers below it and in closed architecture a layer only knows about the immediate lower layer. Layers do not know of layer above them.
Partitions vertically divide systems into independent or weakly coupled subsystems. Each partition provides a particular service. Simple system architectures as pipelines and stars are used to reduce the complexity of the system.

Translate

Popular Posts