Software Engineering - Old Questions

6. Why modular decomposition is used in architectural design? Explain.

6 marks | Asked in 2069

Modular decomposition is a process of decomposing subsystems into modules. After decomposition of the system into subsystems, subsystems must be decomposed into modules.

Two modular decomposition models covered:

• An object model where the system is decomposed into interacting objects

• A data-flow model where the system is decomposed into functional modules which transform inputs to outputs. Also known as the pipeline model.

Object model

  • Structure the system into a set of loosely coupled objects with well-defined interfaces.
  • Object-oriented decomposition is concerned with identifying object classes, their attributes and operations.
  • When implemented, objects are created from these classes and some control model used to coordinate object operations.

Advantages:

  • Since objects are loosely coupled, the implementation of objects can be modified without affecting other objects.
  • Objects are often representations of real-world entities so the structure of the system is readily understandable.
  • As real-world entities are used in different systems, objects can also be reused.