On the Nature of Cohesion
Cohesion is one of the oldest concepts in software design, introduced by Stevens, Myers, and Constantine [1] and codified by Yourdon and Constantine [2], then studied by decades of subsequent research. Published definitions of cohesion overwhelmingly specify structural properties of code — method-call overlap, shared-field density, connected components — rather than compliance to an external grouping condition. Under the definition proposed in this paper, these are not cohesion as defined by a modularization principle; they are structural proxies: observable patterns that correlate with cohesion but do not define it. This paper argues that cohesion is correctness relative to a partitioning rule — a formal criterion that sorts the element set into equivalence classes. Against such a rule a module deviates in exactly two ways, contributing a (purity, completeness) pair, and under 𝑘 rules cohesion is the 2𝑘-tuple of those pairs. Cohesion is this 2𝑘-tuple: for the coupling concerns examined here — structural, security, deployment, platform — each, once modeled as knowledge governed by change drivers, is itself a partitioning rule over the one element set, so it enters the profile as another (purity, completeness) pair rather than a new kind of component. The result that gives the schema its force is the knowledge-embodiment theorem. Cohesion is defined over element membership, knowledge embodiment over knowledge sets — two measures built from different primitives — yet the theorem proves they coincide at the maximum: a maximally cohesive module embodies exactly the knowledge its class must hold, and when every module is maximally cohesive the system’s knowledge is partitioned across modules with nothing scattered or foreign — and, where knowledge is embodied without redundancy, nothing duplicated. This is a proved correspondence within the formalism rather than an empirical claim. Maximal cohesion thus coincides with exact knowledge embodiment, in each module and across the whole system. Among all rules, grouping by the full change-driver set (Γ-equivalence) is the coarsest partition that still contains every change to one module; it is the common refinement of every modularization principle (each groups by a subset of the drivers), so a single Γ-decomposition is correct under all the principles at once. Six necessary conditions govern every admissible cohesion metric; a survey of 24 metrics spanning five decades (developed in the companion paper [3]) shows that each measures structural coupling, not cohesion, reporting at most one axis and only as a proxy. The paper concludes with the schema’s limitations and falsifiability conditions.
Authors
- Yannick Loth (ORCID: https://orcid.org/0009-0003-5754-827X)
Publication Details
- Journal
- Zenodo (CERN European Organization for Nuclear Research)
- Published
- 2026-07-30
- DOI
- https://doi.org/10.5281/zenodo.21703193
- Primary Topic
- Software Engineering Research
- Type
- preprint