On-the-Fly Construction of Composite Events in Scenario-Based Modeling using Constraint Solvers
Guy Katz, Assaf Marron, Aviran Sadon, Gera Weiss

TL;DR
This paper introduces an extension to Scenario-Based Programming that incorporates rich logical constraints and leverages constraint solvers to model complex system behaviors more expressively and effectively.
Contribution
It proposes a novel execution mechanism that integrates constraint solvers into Scenario-Based Programming, enabling modeling of complex requirements previously difficult to express.
Findings
Successfully implemented the approach with a prototype system.
Demonstrated applicability to complex systems not easily modeled before.
Showed improved expressiveness and flexibility in scenario modeling.
Abstract
Scenario-Based Programming is a methodology for modeling and constructing complex reactive systems from simple, stand-alone building blocks, called scenarios. These scenarios are designed to model different traits of the system, and can be interwoven together and executed to produce cohesive system behavior. Existing execution frameworks for scenario-based programs allow scenarios to specify their view of what the system must, may, or must not do only through very strict interfaces. This limits the methodology's expressive power and often prevents users from modeling certain complex requirements. Here, we propose to extend Scenario-Based Programming's execution mechanism to allow scenarios to specify how the system should behave using rich logical constraints. We then leverage modern constraint solvers (such as SAT or SMT solvers) to resolve these constraints at every step of running…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsModel-Driven Software Engineering Techniques · Advanced Software Engineering Methodologies · Software System Performance and Reliability
