On the criteria to be used in decomposing systems into modules

The work

AuthorsDavid Lorge Parnas
Typearticle
Year1972
Citekeyparnas1972criteria

Where it appeared

Published inCommunications of the ACM
PublisherAssociation for Computing Machinery
Volume15
Issue12
Pages1053--1058

Identifiers

DOI10.1145/361598.361623
OpenAlexW2134119432

Abstract

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.

A copy is held

pdf, 575.7 kB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereagent via openalex
Added2026-08-05 00:00 UTC
Approved bya person 2026-08-09 12:29 UTC

Cite it as

@article{parnas1972criteria,
  title        = {On the criteria to be used in decomposing systems into modules},
  author       = {David Lorge Parnas},
  year         = {1972},
  journal      = {Communications of the ACM},
  volume       = {15},
  number       = {12},
  pages        = {1053--1058},
  publisher    = {Association for Computing Machinery},
  doi          = {10.1145/361598.361623},
}

This record lives at https://refs.drheap.org/parnas1972criteria/ and will keep doing so.