A Theory of Architectural Design Patterns

Diego Marmsoler 🌐

March 1, 2018

This is a development version of this entry. It might change over time and is not stable. Please refer to release versions for citations.

Abstract

The following document formalizes and verifies several architectural design patterns. Each pattern specification is formalized in terms of a locale where the locale assumptions correspond to the assumptions which a pattern poses on an architecture. Thus, pattern specifications may build on top of each other by interpreting the corresponding locale. A pattern is verified using the framework provided by the AFP entry Dynamic Architectures. Currently, the document consists of formalizations of 4 different patterns: the singleton, the publisher subscriber, the blackboard pattern, and the blockchain pattern. Thereby, the publisher component of the publisher subscriber pattern is modeled as an instance of the singleton pattern and the blackboard pattern is modeled as an instance of the publisher subscriber pattern. In general, this entry provides the first steps towards an overall theory of architectural design patterns.

License

BSD License

History

April 8, 2019
adapting the terminology: honest instead of trusted, dishonest instead of untrusted (revision 7af3431a22ae)
May 25, 2018
changing the major assumption for blockchain architectures from alternative minings to relative mining frequencies (revision 5043c5c71685)

Topics

Session Architectural_Design_Patterns