The structured approach allows team members to work independently on different partitions of the system and to communicate. The same structure is used for software, hardware and for system documentation.
Structure strategies are listed below. They represent a design philosophy, rather than hard and fast rules. It may be prudent to violate a rule or two on occasion.
Modularity
A top down approach is taken, where systems are divided then subdivided until a set of modules results. Each module ,
Module independence allows the system to be upgraded, maintained and debugged with a minimum of effort.Hierarchy
Modules and submodules form an hierarctical structure.
Regularity
Modules, as far as possible will have identical appearance. Inputs and outputs will be similar. Each software module will have a similar header explaining the function of the module. The number of different modules is minimized, sometimes inefficient modules are used rather than creating new, more efficient but different, modules.
Locality
To minimize dependence of a module on external signals, signals are generated locally. Global variables are minimized. Complex functionality is hidden in submodules.