skip to main |
skip to sidebar
Modularity
- If a system is partitioned into modules so that the modules are solvable and modifiable separately.
- It will be even better if the modules are also separately compliable.
- A system is considered modular if it consists of discreet components so that each component can be implemented separately, and a change to one component has minimal impact on other components.
- Modularity helps in system:
- debugging—isolating the system problem to a component is easier if the system is modular;
- in system repair—changing a part of the system is easy as it affects few other parts;
- in system building—a modular system can be easily built by "putting its modules together.“
- For modularity, each module needs to support a well defined abstraction and have a clear interface through which it can interact with other modules. Modularity is where abstraction and partitioning come together.
- Module-Level Concepts:
- A module is a logically separable part of a program. It is a program unit that is discreet and identifiable with respect to compiling and loading.
- In terms of common programming language constructs, a module can be a macro, a function, a procedure (or subroutine), a process, or a package.
- In systems using functional abstraction, a module is usually a procedure of function or a collection of these.
- To produce modular designs, some criteria must be used to select modules so that the modules support well-defined abstractions and are solvable and modifiable separately.
- In a system using functional abstraction, coupling and cohesion are two modularization criteria, which are often used together.
No comments:
Post a Comment