Style-Based Architectural Reconfigurations
We introduce Architectural Design Rewriting (ADR), an
approach to deal with the design of reconfigurable software
architectures. The key features we promote are:
(i) rule-based approach (over graphs);
(ii) hierarchical design;
(iii) algebraic presentation; and
(iv) inductively-defined reconfigurations.
Architectures are suitably modeled by graphs whose edges and nodes respectively represent components and connection ports.
Architectures are designed hierarchically by a set
of edge replacement rules that fix the architectural style.
Depending on their reading, productions allow:
(i) top-down design by refinement,
(ii) bottom-up typing of actual architectures, and
(iii) well-formed composition of architectures.
The key idea is to encode style proofs as terms and to exploit such
information at run-time for guiding reconfigurations.
The main advantages of ADR are that: (i) instead of reasoning on flat
architectures, ADR specifications provide a convenient hierarchical
structure, by exploiting the architectural classes introduced by the style,
(ii) complex reconfiguration schemes can be defined inductively, and (iii)
style-preservation is guaranteed.