Structural Views for Component and Connector ModelsS. Maoz, J.O. Ringert, and B. Rumpe
Component and connector views
We present component and connector (C&C) views, which specify structural properties of component and connector models in an expressive and intuitive way. C&C views provide means to abstract away direct hierarchy, direct connectivity, port names and types, and thus can crosscut the traditional boundaries of the implementation-oriented hierarchical decomposition of systems and sub-systems, and reflect the partial knowledge available to different stakeholders involved in a system's design.C&C views resources
We address the verification of a C&C model
against a C&C view and present efficient (polynomial) algorithms to decide satisfaction.
A unique feature of our work, not present in existing approaches to
checking structural properties of C&C models, is the generation of
witnesses for satisfaction/non-satisfaction and of short natural-language
texts, which serve to explain and formally justify
the verification results and point the engineer to its causes.
S. Maoz, J. O. Ringert, B. Rumpe: Verifying Component and Connector Models Against Crosscutting Structural Views. To appear at ICSE'14Supporting materials for verification
As one application for C&C views we investigate the synthesis problem:
given a C&C views specification, consisting of mandatory, alternative, and
negative views, construct a concrete satisfying C&C model, if one exists. We
show that the problem is NP-hard and solve it, in a bounded scope, using a
reduction to SAT, via Alloy. We further extend the basic problem with support
for library components, specification patterns, and architectural styles. The
result of synthesis can be used for further exploration, simulation, and
refinement of the C&C model or, as the complete, final model itself, for
direct code generation.
S. Maoz, J. O. Ringert, B. Rumpe: Synthesis of Component and Connector Models from Crosscutting Structural Views. Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC/FSE'13), Eds.: B. Meyer, L. Baresi, M. Mezini, pages 444-454, ACM New York, 2013.Supporting materials for synthesis