Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
Patterns in property specifications for finite-state verification
Proceedings of the 21st international conference on Software engineering
Acme: architectural description of component-based systems
Foundations of component-based systems
Generating statechart designs from scenarios
Proceedings of the 22nd international conference on Software engineering
Alloy: a lightweight object modelling notation
ACM Transactions on Software Engineering and Methodology (TOSEM)
Systematic aid for developing middleware architectures
Communications of the ACM - Adaptive middleware
SPIN-ning Software Architectures: A Method for Exploring Complex
WICSA '01 Proceedings of the Working IEEE/IFIP Conference on Software Architecture
Behaviour Model Synthesis from Properties and Scenarios
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Distributed reactive systems are hard to synthesize
SFCS '90 Proceedings of the 31st Annual Symposium on Foundations of Computer Science
Software Architecture: Foundations, Theory, and Practice
Software Architecture: Foundations, Theory, and Practice
Analyzing architectural styles
Journal of Systems and Software
MontiCore: a framework for compositional development of domain specific languages
International Journal on Software Tools for Technology Transfer (STTT)
Composition of architectural models: Empirical analysis and language support
Journal of Systems and Software
Monarch: model-based development of software architectures
MODELS'10 Proceedings of the 13th international conference on Model driven engineering languages and systems: Part II
On the modular representation of architectural aspects
EWSA'06 Proceedings of the Third European conference on Software Architecture
Synthesis from scenario-based specifications
Journal of Computer and System Sciences
Assume-guarantee scenarios: semantics and synthesis
MODELS'12 Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems
Counter play-out: executing unrealizable scenario-based specifications
Proceedings of the 2013 International Conference on Software Engineering
Hi-index | 0.00 |
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. As a primary 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. A prototype tool and an evaluation over four example systems with multiple specifications show promising results and suggest interesting future research directions towards a comprehensive development environment for the structure of component and connector designs.