Software Engineering - Old Questions

8. What is modular decomposition? Discuss object oriented model of decomposition.

6 marks | Asked in 2076

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

In object oriented model of decomposition, system is decomposed into a set of communicating objects. An object-oriented, architectural model structures the system into a set of loosely coupled objects with well defined interfaces. Objects call on the services offered by other objects.

Figure: An object model of an invoice processing system

  • This system can issue invoices to customers, receive payments, and issue receipts for these payments and reminders for unpaid invoices.
  • Operations, if any, are defined in the lower part of the rectangle representing the object. Dashed arrows indicate that an object uses the attributes or services provided by another object.
  • An object-oriented decomposition is concerned with object classes, their attributes and their operations.
  • When implemented, objects are created from these classes and some control model is used to coordinate object operations.
  • The Invoice class has various associated operations that implement the system functionality.