Architecture, design, implementation
Amnon H. Eden, Rick Kazman
Abstract
Amnon H. Eden, Rick Kazman
Abstract
The terms architecture, design, and implementation are typically used informally in partitioning software specifi-cations into three coarse strata of abstraction. Yet these strata are not well-defined in either research or practice, causing miscommunication and needless debate. To remedy this problem we formalize the Intension and the Locality criteria, which imply that the distinction be-tween architecture, design, and implementation is quali-tative and not merely quantitative. We demonstrate that architectural styles are intensional and non-local; that design patterns are intensional and local; and that imple-mentations are extensional and local. If people do not believe that mathematics is simple, it is only because they do not realize how complicated life is. — J. H. von Neumann 1.
OpenAlex reports 73 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
The terms architecture, design, and implementation are typically used informally in partitioning software specifi-cations into three coarse strata of abstraction. Yet these strata are not well-defined in either research or practice, causing miscommunication and needless debate. To remedy this problem we formalize the Intension and the Locality criteria, which imply that the distinction be-tween architecture, design, and implementation is quali-tative and not merely quantitative. We demonstrate that architectural styles are intensional and non-local; that design patterns are intensional and local; and that imple-mentations are extensional and local. If people do not believe that mathematics is simple, it is only because they do not realize how complicated life is. — J. H. von Neumann 1.
Key concepts: Locality, Computer science, Intension, Architecture, Implementation, Abstraction, Software engineering, Software architecture