The Dictionary of
the Object Technology defines modularity as: "The
logical and physical decomposition of things (e.g., responsibilities and software)
into small, simple groupings (e.g., requirements and classes, respectively),
which increase the achievements of software-engineering goals." Modularity is
another way of managing complexity by dividing large and complex systems into
smaller and manageable pieces. A software designing method is modular if
it allows designers produce software systems by using independent elements
connected by a coherent, simple structure. A software construction method is modular
if it satisfies the five criteria:
Modular Decomposability:
A software
construction method satisfies Modular Decomposabiiity if it helps in the task
of decomposing a software problem into a small number of less complex
sub-problems, connected by a simple structure, and independent enough to allow
further work to proceed separately on each of them.
Modular Compos ability:
A software
construction method satisfies Modular Composability if it favors the production
of software elements which may then be freely combined with each other to
produce new systems, possible in an environment quite different from the one in
which they were
initially
developed.
Modular
Understandability:
A software
construction method satisfies Modular Understandability if it helps produce
software in which each module can be understood without having to examine other
interrelated modules.
Modular Continuity:
A software
construction method satisfies Modular Continuity if a small change in the
requirements of will impact just one or a small number of modules.
Modular Protection:
A software construction
method satisfies Modular Protection if the effect of an exception occurring at
runtime will impact only the corresponding module or a few neighboring modules.
The concept of Modularity and the principles for developing modular software in
the object-oriented approach are encapsulated in the concept ofclass. Classes
are the building blocks in the object-oriented paradigm.
No comments:
Write comments