Diapason : une approche formelle et centrée architecture pour la composition évolutive de services Web
Institution:
ChambéryDisciplines:
Directors:
Abstract EN:
Building a software system from existing software blocks is not a new idea. These blocks are sometimes called objects, sometimes components, modules and more recently: Web services. The (Web) service-oriented architecture is a paradigm for organizing and using distributed expertise, and its main characteristics are low coupling, flexibility, openness, heterogeneity, scalability or reuse. The ability of a service-oriented architecture to be agile, meaning that it can be modified dynamically while running, is really important to cope with changes of various kinds. Promoting agile architectures, dynamically modifiable, implementing services compositions while guaranteeing a certain quality of service, is a real challenge. The approach developed in the scope of this thesis to address such a challenge is called Diapason. Diapason is a formal approach, based on pi-calculus and temporal logic; it is part of the architecture centric approaches. Diapason offers a services orchestration language (the pi-Diapason language), and a properties description language (the Diapason* language). This approach also provides an initial answer to the dynamic evolution of a running Web services orchestration. Pi-Diapason is formally defined and based on pi-calculus, moreover it offers a syntax specific to the field of Web services orchestration. On the first hand, this language is executable without any ambiguity thanks to a formal operational semantics, and on the other hand it provides the opportunity to develop a dynamic architecture through the concept of mobility introduced by the pi-calculus. Diapason* is a language of the temporal tree logic class based on actions and allows the analysis of any orchestration described in pi-Diapason. The Diapason approach is supported by an environment that includes a pi-Diapason virtual machine (also providing mechanisms to enable the dynamic evolution of an orchestration throughout its execution) and a model-checker.
Abstract FR:
Construire un système logiciel à partir de blocs logiciels existants n'est pas une idée nouvelle. Ces blocs sont parfois appelés objets, composants et plus récemment services Web. Les architectures orientées service constituent un paradigme permettant d'utiliser des savoir-faire distribués et dont les caractéristiques principales sont le faible couplage, la flexibilité, l'ouverture, l'hétérogénéité, la mise à l'échelle ou encore la réutilisation. La capacité pour une architecture orientée service d'être agile (modifiable dynamiquement en cours d'exécution) est réellement importante pour faire face aux changements de nature diverse. Promouvoir des architectures agiles, dynamiquement modifiables, mettre en œuvre des compositions de services tout en garantissant une certaine qualité de service, constitue un réel challenge. Notre approche, nommée Diapason, adresse ce challenge. Diapason est une approche formelle, basée sur le pi-calcul et les logiques temporelles. Elle s'inscrit dans le cadre des approches centrées architecture. Diapason offre un langage d'orchestration (pi-Diapason) et un langage de description de propriétés (Diapason*). Cette approche fournit également une première réponse quant à l'évolution dynamique d'une orchestration de services Web en cours d'exécution. Pi-Diapason est formellement défini (basé sur le pi-calcul) et offre une syntaxe spécifique au domaine de l'orchestration de services Web. Ce langage est d'une part exécutable sans aucune ambiguïté (sémantique opérationnelle formelle) et offre d'autre part, la possibilité de faire évoluer dynamiquement une architecture grâce au concept de mobilité introduit par le pi-calcul. Diapason* fait partie de la classe de la logique temporelle arborescente basée sur actions et permet l'analyse de toute orchestration décrite en pi-Diapason. L'approche Diapason est supportée par un environnement qui regroupe une machine virtuelle interprétant le langage pi-Diapason ainsi qu'un vérificateur de propriétés.