thesis

Refiner : environnement logiciel pour le raffinement d'architectures logicielles fondé sur une logique de réécriture

Defense date:

Jan. 1, 2004

Edit

Institution:

Chambéry

Disciplines:

Authors:

Abstract EN:

In this thesis, we werre interested in the problems involved in the insufficiency of the software support for refinement of software architectures. Indeed, the titles of architecture description languages (ADL) like SADL and Rapide which tackle these problems make it in a very restricted way, although they support multiple levels of abstraction. Our contribution consists of the supply of the software environment which we named refiner based on the rewriting logics. The choice of the latter is justified by the fact that it is well adapted to the description of concurrent systems, thier refinement by the mechanism of rewriting and also by the fact that it is well supported by software tools. We built it around the architecture refinement language ArchWare ARL. The Refiner allows its users : - to refine architectural elements gradually (component, connectors, ports, etc. ) since abstract descriptions towards concrete descriptions, and this through multiple levels of abstraction. With each step of refinement, an action can be applied which provides by construction, under certain obligations of proofs, a correct architectural tranformation. - to refine more than the structure and the behavior of an architectural element. - to built during a step of refinement, as well a more concrete architectural description translating a possible architecture than a simplified description tranlating a reduced architecture. - to support, at the most concrete level of architectural refinement, the generation of the applications in programming languages target. This is done by the means of the Sigma generator of applications based on the concepts of mapping and patterns of synthesis. Consequently, the Refiner supprot proposed allows to the architects to refine correctly architectural elements, then to recompose the refined elements for the construction of concrete architectures.

Abstract FR:

Nous sommes interessés dans cette thèse aux problèmes liés à l'insuffisance de support informatique pour le raffinement d'architectures logicielles. Le peu de langages de description d'architectures (ADL) comme SADL et Rapide qui abordent ces problèmes le font de manière très restreinte. Notre contribution consiste en la fourniture d'un environnement logiciel que nous avons nommé Refiner, fondé sur la logique de réécriture. Le choix de cette dernière est motivé par le fait qu'elle soit bien adapté à la description de systèmes concurrents, leur raffinement par le mécnisme de réécriture et également par le fait qu'elle soit bien supportée par desoutils logiciels. Nous avons construit Refiner autour du langage de raffinement d'architectures ArchWare ARL de manière à ce qu'il permette à ses utilisateurs : - de raffiner progressivement des éléments architecturaux (composants, connecteurs, ports, etc. ) depuis des descriptions abstraites vers des descriptions concrètes, et ce à travers des niveaux d'abstraction multiples. A chaque étape de raffinement, peut être appliquée une action qui fournit par construction, sous certaines obligations de preuves, une transformation architecturale correcte. - de raffiner plus que la structure et le comortement d'un élément architectural. - de construire au cours d'une étape de raffinement, aussi bien une description architecturale plus concrète traduisant une architecture possible qu'une description simplifiée traduisant une architecture réduite. - de supporter, au niveau le plus concret du raffinement architectural, la génération des applications dans des langages de programmation cibles. Ceci se fait par le biais du générateur d'applications Sigma fondé sur les concepts de mapping et de patterns de synthèse. L'environnement Refiner proposé permet aux architectes de raffiner correctement des éléments architecturaux, puis de recomposer les éléments raffinés pour la construction d'architectures concrètes.