Abstraction

Kind: principle

Layer: Structural Core

Record: architecture:abstraction

Severity: mandatory

Scope: class, module, service, system

Canonical: Ontology

A design rule that a concept is expressed by what it does for the code that uses it, and the detail of how it does it stays out of that expression.

Listed in Architecture principles, after Information Hiding and before Modularity.

Requires

Reinforces

Enables

Conflicts with

In tension with

Tensions

Violated by

Refactored by

Severity

Category

Concept

Required by

Reinforced by

Linked from