Integrating Inter-Object Scenarios with Intra-object Statecharts for Developing Reactive Systems

11/25/2019
by   David Harel, et al.
0

In all software development projects, engineers face the challenge of translating the requirements layer into a design layer, then into an implementation-code layer, and then validating the correctness of the result. Many methodologies, languages and tools exist for facilitating the process, including multiple back-and-forth `refinement trips' across the requirements, design and implementation layers, by focusing on formalizing the artifacts involved and on automating a variety of tasks throughout. In this paper, we introduce a novel and unique development environment, which integrates scenario-based programming (SBP) via the LSC language and the object-oriented, visual Statecharts formalism, for the development of reactive systems. LSC targets creation of models and systems directly from requirement specifications, and Statecharts is used mainly for specifying final component behavior. Our integration enables semantically-rich joint execution, with the sharing and interfacing of objects and events, and can be used for creating and then gradually enhancing testable models from early in requirements elicitation through detailed design. In some cases, it can be used for generating final system code. We describe the technical details of the integration and its semantics and discuss its significance for future development methodologies.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/04/2021

Diagrammatic Formalism for Complex Systems: More than One Way to Eventize a Railcar System

This paper is in the intersection of software engineering and system eng...
research
04/17/2020

Process Patterns for Service Oriented Development

Software systems development nowadays has moved towards dynamic composit...
research
12/02/2021

Testing Reactive Systems Using Behavioural Programming, a Model Centric Approach

Testing is a significant aspect of software development. As systems beco...
research
08/14/2023

Conformance Checking for Pushdown Reactive Systems based on Visibly Pushdown Languages

Testing pushdown reactive systems is deemed important to guarantee a pre...
research
09/14/2022

The Role of Executable Abstract Programs in Software Development and Documentation

We present Executable Abstract Programs and analyse their role for softw...
research
01/23/2023

Modal Reactors

Complex software systems often feature distinct modes of operation, each...

Please sign up or login with your details

Forgot password? Click here to reset