Date of Original Version
Abstract or Description
A question that frequently arises for architectural design is "When can I implement a design in style S1 using a design in style S2?" In this paper I propose a technique for structuring a solution to this kind of problem using the idea of substyles. This technique leads to a two-step process in which first, useful subsets of a family of architectures are identified, and second, refinement rules specific to these subsets are established. I will argue that this technique, in combination with an unconventional interpretation of refinement, clarifies how engineers actually carry out architectural refinement and provides a formal framework for establishing the correctness of those methods.
Proceedings of the Second International Software Architecture Workshop (ISAW2).