Subsystem Interface

In this topic, we will define the boundary of your design, the subsystems, and the relationships and interactions between them. A subsystem interface can be used as a control tool to manage how different subsystems interact, and what signals the modules can expect to send and receive.

Example applications

Subsystem interface maps are used frequently in electronics in the form of schematic diagrams. These schematics trace the expected inputs and outputs of components, and by studying the schematic you can figure out how the circuit works. Some components act as ‘black boxes’, where it is not necessary to describe the internal behaviour. This is exactly the same principle for Subsystem Interfaces.

Similar to…

Subsystem interfaces are similar to classes and subroutines in software programming. A function or class will receive an input, conduct some processing, and send an output. If a data structure changes, it will have an effect on the whole program, and so establishing the expected input and output types is very important.

Steps

Constructing a Functional Block Diagram is the first step, describing what functions are packaged into each subsystem. This is easily created from the Functional Allocation step.

  • cluster the brainstormed system elements from your model boundary chart and functional analysis
  • decide what the subsystems are, keeping in mind that you are aiming to reduce interdependence between subsystems

The second step is to move from functions to components, and to start describing the physical components:

  • replace the functions with physical subsystems and components
  • each system and subsystem should have inputs and outputs, and that relationship should be drawn using an arrow. Each arrow should have a label describing what is travelling (eg wireless signal, heat) and what units/standards are involved (eg 802.11n, joules)
  • consider might be external elements that the system relies on (eg. wireless transceiver)

Hints

  • If your system is large, it may be worthwhile constructing a system-level interface, and then drawing the subsystems separately down to the component level
  • Ensure that you are using standard interfaces between subsystems
  • Consider modularity in your design - a goal to strive for is for each subsystem to be replaced without requiring re-engineering of other subsystems.
  • Is your system prone to failure? What redundancies may be required to ensure safe operation?

Core resources

  • Principles of System Architecture - this is a how-to on the principles. These are actually good principles to apply to all of your systems engineering endeavours [Online or PDF]
  • Examples of subsystem interface diagrams [PDF]

Updated:  12 Mar 2018/ Responsible Officer:  Head of School/ Page Contact:  Page Contact