  Software architectures usually are comprised of different views for capturing
static, runtime, and deployment aspects. What is currently missing, however,
are formal validation and verification techniques of multi-view architecture in
very early phases of the software development lifecycle. The main contribution
of this paper therefore is the construction of a single formal model (in
Promela) for certain stylized, and widely used, multi-view architectures by
suitably interpreting and fusing sub-models from different UML diagrams.
Possible counter-examples produced by model checking are fed back as test
scenarios for debugging the multi-view architectural model. We have implemented
this algorithm as a plug-in for the Enterprise Architect development tool, and
successfully used SPIN model checking for debugging some industrial
architectural multi-view models by identifying a number of undesirable corner
cases.
