Affiliation:
1. The Weizmann Institute of Science
Abstract
We exploit the main similarity between the aspect-oriented programming paradigm and the inter-object, scenario-based approach to specification, in order to construct a new way of executing systems based on the latter. Specifically, we transform multimodal scenario-based specifications, given in the visual language of
live sequence charts
(LSC), into what we call
scenario aspects
, implemented in AspectJ. Unlike synthesis approaches, which attempt to take the inter-object scenarios and construct intra-object state-based per-object specifications or a single controller automaton, we follow the ideas behind the LSC play-out algorithm to coordinate the simultaneous monitoring and direct execution of the specified scenarios. Thus, the structure of the specification is reflected in the structure of the generated code; the high-level inter-object requirements and their structure are not lost in the translation.
The transformation/compilation scheme is fully implemented in a UML2-compliant tool we term the
S2A compiler
(for Scenarios to Aspects), which provides full code generation of reactive behavior from inter-object multimodal scenarios. S2A supports advanced scenario-based programming features, such as multiple instances and exact and symbolic parameters. We demonstrate our work with an application whose inter-object behaviors are specified using LSCs. We discuss advantages and challenges of the compilation scheme in the context of the more general vision of scenario-based programming.
Funder
European Research Council
Publisher
Association for Computing Machinery (ACM)
Cited by
11 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Guard Evaluation and Synchronization Issues in Causal Semantics for UML2.X Sequence Diagrams;Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering;2018
2. An Operational Semantics of UML2.X Sequence Diagrams for Distributed Systems;Communications in Computer and Information Science;2018
3. From scenario modeling to scenario programming for reactive systems with dynamic topology;Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering;2017-08-21
4. Structured Behavioral Programming Idioms;Enterprise, Business-Process and Information Systems Modeling;2017
5. Semantically Configurable Analysis of Scenario-Based Specifications;Fundamental Approaches to Software Engineering;2014