A Contract-Based Language to Specify Design Components
Abdelhafid Zitouni, Mahmoud Boufaïda, Lionel Seinturier
Abstract
Abdelhafid Zitouni, Mahmoud Boufaïda, Lionel Seinturier
Abstract
For component-based software development to be successful in organizations, the software developers must give close attention to the design of components as independent abstractions with well-specified behaviors. Without well-specified behaviors the possibility to distribute and acquire software components will be limited. In this article, we present a contract-based approach to analyze and model the properties of design components and their composition in order to detect and correct composition errors. This approach permits to characterize the structural, interface and behavioural aspects of design component. As a matter of fact, we give a specific form of their instantiation, evolution and integration. To enable this, we present a pattern contract language that captures the structural and behavioral requirements associated with a range of patterns, as well as the system properties that are guaranteed as a result. In addition, we propose the use of the LOTOS language as an ADL for formalizing these aspects. We illustrate the approach by applying it to a standard design pattern.
OpenAlex reports 4 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
For component-based software development to be successful in organizations, the software developers must give close attention to the design of components as independent abstractions with well-specified behaviors. Without well-specified behaviors the possibility to distribute and acquire software components will be limited. In this article, we present a contract-based approach to analyze and model the properties of design components and their composition in order to detect and correct composition errors. This approach permits to characterize the structural, interface and behavioural aspects of design component. As a matter of fact, we give a specific form of their instantiation, evolution and integration. To enable this, we present a pattern contract language that captures the structural and behavioral requirements associated with a range of patterns, as well as the system properties that are guaranteed as a result. In addition, we propose the use of the LOTOS language as an ADL for formalizing these aspects. We illustrate the approach by applying it to a standard design pattern.
Key concepts: Component (thermodynamics), Computer science, Software design pattern, Component-based software engineering, Design by contract, Interface (matter), Software design, Software