ConFract, un système pour contractualiser des composants logiciels hiérarchiques
Cet article présente le système de contractualisation ConFract pour le modèle de composants ouvert et hiérarchique Fractal. Les contrats sont construits dynamiquement au moment de l'assemblage à partir des spécifications, actuellement des assertions exécutables écrites en CCL-J, et ils sont mis à jour lors des reconfigurations dynamiques. Ces contrats ne sont pas restreints à la portée des interfaces, prises séparément. Au contraire, de nouvelles sortes de contrats de composition sont proposées afin d'associer les différentes interfaces externes d'un composant dans un contrat d'usage ou ses différentes interfaces internes dans un contrat d'assemblage et d'implémentation. Tous ces contrats identifient précisément les responsabilités et les développeurs peuvent ainsi facilement organiser le traitement de leurs violations et les reconfigurations qui en résultent.
This article presents the contracting system ConFract for the open and hierarchical component model Fractal. Contracts are dynamically built from specifications, currently executable assertions, at assembly times, and are updated according to dynamic reconfigurations. These contracts are not restricted to the scope of interfaces, taken separately. On the contrary, new kinds of composition contracts can be built in order to associate several external interfaces of a component, providing a usage contract, or several interfaces inside the component, providing an assembly and implementation contract. All these contracts identify fine-grained responsibilities and developers can thus easily organize the handling of contract violations and the resulting reconfigurations.
P.COLLET, R.ROUSSEAU
génie logiciel orienté composant (GLOC), composant hiérarchique, contrat d'interface, contrat de composition, assertion exécutable, ConFract, Fractal, CCL-J.
component-based software engineering (CBSE), hierarchical component, interface contract, composition contract, executable assertion, ConFract, Fractal, CCL-J.
Français
|