Prototyping Formal System Models with Active Objects
Eduard Kamburjan (Technische Universit\"at Darmstadt, Germany), Reiner, H\"ahnle (Technische Universit\"at Darmstadt, Germany)

TL;DR
This paper presents a method for developing formal system models of distributed systems using active object languages, combining formalization, software engineering concepts, and tool support for rapid prototyping and validation.
Contribution
It introduces a novel approach that integrates active object languages with software engineering techniques for formal system modeling and prototyping.
Findings
Executable, modular model of a weak memory system
Use of software product lines for model variations
Early validation through formal proofs and testing
Abstract
We propose active object languages as a development tool for formal system models of distributed systems. Additionally to a formalization based on a term rewriting system, we use established Software Engineering concepts, including software product lines and object orientation that come with extensive tool support. We illustrate our modeling approach by prototyping a weak memory model. The resulting executable model is modular and has clear interfaces between communicating participants through object-oriented modeling. Relaxations of the basic memory model are expressed as self-contained variants of a software product line. As a modeling language we use the formal active object language ABS which comes with an extensive tool set. This permits rapid formalization of core ideas, early validity checks in terms of formal invariant proofs, and debugging support by executing test runs. Hence,…
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
TopicsAdvanced Software Engineering Methodologies · Model-Driven Software Engineering Techniques · Service-Oriented Architecture and Web Services
