Saeaf specification stack
Detail of the Specification Specification Stack and Constraint Pattern
Choose a square or three, then document it.
the author is to the left of the /, the reviewer to the right.
Specification | Enterprise / Business Viewpoint | Information Viewpoint | Computational Viewpoint | Engineering Viewpoint |
Reference | Reference - Business Jane | Reference - Informational Patrick | Reference - ComputationalJohn | N/A |
Conceptual | Analysis - Business Jane | Analysis - Informational AMS/Wendell | Analysis - Computational AMS/John | N/A |
Platform-Independent | Logical - Business Jane | Logical - Informational Cecil/Wendell | Logical - Computational John | N/A |
Platform-Specific | Implementable - Business Jane | Implementable - Informational Wendell | Implementable - Computational Dale | Implementable - Engineering |
Topics
Consistency between cells There are relationships between artifacts from the various cells at each row except the reference row. The primary relationship between cells on the same row is one of "consistency". In other words, artifacts for the same "topic" must be consistent with each other across the row. This applies primarily from the Conceptual level, through the Platform-Indeppendent and Platform-Specific levels. (Note: Some reference artifacts do need to have a consistency relationship with each other, but they are not topic specific, and are not enforeceable through governance of this pattern. They are enforced through organizational governance.)
The Specification Stack Relationships between artifacts emerging from cells in the same column is one of "traceability". Artifacts from the Conceptual row must be traceable to equivalent reference artifacts, Platform-Independent artifacts must be traceable to their associated Conceptual artifacts, and Platform-Specific designs must be traceable to their Platform-Independent equivalents. Note that in fact, one Conceptual Specification can yield multiple Platform-Independent variations, and a single Platform-Independent specification can yield multiple Platform-Specific variations.
The term "traceability" is used to mean the ability to confirm that the source of the semantics expressed at one level is derived from the level above, whether that is done in an automated fashion or in a human-mediated fashion. With that consideration, it is worth noting that in some cases, artifacts at a lower level are algorithmically transformed from equivalent artifacts from the row above. Therefore, the term "traceability" also implies "transformed from" where such algorithmic conversions are possible. Model driven design gains it's productivity and re-usability from such transformations.