Applying CLP to predict extra-functional properties of component-based models
Résumé
A component is the basic re-usable unit of composition to build composite systems by connecting to others through their provided and required ports. Checking the functional compliance between provided and required ports is necessary to build functional systems. At the same time, one of the most important issues today in Component-Based Software Engineering (CBSE) is the prediction of the composite structure Quality of Service (QoS) at design time, using the extrafunctional properties of its components. This paper focuses on this specific CBSE issue, and the use of Constraint Logic Programming (CLP) in this context. For each component providing and requiring services, we propose to specify the QoS properties as required and provided operations, called dimensions, on the component ports. In this model, a QoS property can depend on other QoS attributes, and be constrained by OCL pre- and post-conditions. From this model, the QoS aspect of a component is translated into a QoS system of non-linear constraints over the reals: the dimensions and their pre/post-conditions as variables controlled by nonlinear constraints. These constraints are either inequalities that bound the admissible QoS values, or non-linear functions that bind QoS properties between them. Using the CLP, we are able to determine if a QoS system can be satisfied, and to predict what quality level is required by the assembly from its environment, as a set of admissible intervals. The CLP is a general framework that can be implemented with a realistic effort, to reason about the component-based models QoS properties at design time, that is one of the most important issues in CBSE.
Domaines
Génie logiciel [cs.SE]Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...