On the criteria to be used in decomposing systems into modules

David Lorge Parnas

Communications of the ACM · 1972 · 인용 4.7k

This paper discusses modularization as a mechanism for improving the flexibility and 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.

🏛️ 거인의 어깨이 분야를 만든 논문들

모듈화와 정보 은닉의 개념을 도입하여 현대 소프트웨어 아키텍처의 설계 원칙을 확립했습니다.

이야기를 쓰는 중…