Faire levier sur les architectures logicielles pour guider et v\'erifier le d\'eveloppement d'applications SCC
Damien Cassou (INRIA Bordeaux - Sud-Ouest, LaBRI), Charles Consel, (INRIA Bordeaux - Sud-Ouest, ENSEIRB), Emilie Balland (INRIA Bordeaux -, Sud-Ouest), Julia Lawall (DIKU)

TL;DR
This paper introduces interaction contracts in software architecture descriptions to better guide implementation, support programming, and enable verification, especially for Sense/Compute/Control applications.
Contribution
It proposes a novel notion of interaction contracts that specify allowed component interactions, bridging abstract and concrete specifications, with implementation and verification support.
Findings
Interaction contracts enable static verification of component interactions.
The approach supports code generation and programming assistance.
Applied to Sense/Compute/Control architectures, it improves development guidance.
Abstract
A software architecture describes the structure of a computing system by specifying software components and their interactions. Mapping a software architecture to an implementation is a well known challenge. A key element of this mapping is the architecture's description of the data and control-flow interactions between components. The characterization of these interactions can be rather abstract or very concrete, providing more or less implementation guidance, programming support, and static verification. In this paper, we explore one point in the design space between abstract and concrete component interaction specifications. We introduce a notion of interaction contract that expresses allowed interactions between components, describing both data and control-flow constraints. This declaration is part of the architecture description, allows generation of extensive programming support,…
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 · Software System Performance and Reliability · Service-Oriented Architecture and Web Services
