On the Criteria To Be Used in Decomposing Systems into Modules

This paper discusses modularization as a mechanism
for improving the flexibility ad comprehensibility 
of a system while allowing the shortening of its development
time.  The effectiveness of a "modularization" 
is dependent upon the criteria used in dividing the
system into modules.  A system design problem is
presented and both a conventional and unconventional
decomposition are described.  It is shown that the 
unconventional decompositions have distinct advantages
for the goals outlined.  The criteria used in 
arriving at the decompositions are discussed.  The
unconventional decomposition, if implemented with 
the conventional assumption that a module consists of
one or more subroutines, will be less efficient 
in most cases.  An alternative approach to implementation
which does not have this effect is sketched.

CACM December, 1972

Parnas, D. L.

software, modules, modularity, software
engineering, KWIC index, software design

4.0

CA721208 JB January 27, 1978  11:09 AM

2247	5	2247
2247	5	2247
2247	5	2247
2480	5	2247
2738	5	2247
2867	5	2247
3004	5	2247
3030	5	2247
3155	5	2247
1425	6	2247
1749	6	2247
1749	6	2247
2080	6	2247
2204	6	2247
2204	6	2247
2247	6	2247
2247	6	2247
2247	6	2247
2247	6	2247
2247	6	2247
2247	6	2247
2356	6	2247
2356	6	2247
2356	6	2247
2379	6	2247
2456	6	2247
2457	6	2247
2651	6	2247
2777	6	2247
2958	6	2247
2972	6	2247
3073	6	2247
3186	6	2247
799	6	2247