Building manageable autonomic control loops for large scale systems - Archive ouverte HAL Access content directly
Theses Year : 2013

Building manageable autonomic control loops for large scale systems

Construction flexible des boucles de contrôles autonomes pour les applications à large échelle

(1, 2)
1
2

Abstract

Modern software systems are getting more complex. This is partly justified by the heterogeneity of technologies embedded to deliver services to the end client, the large-scale distribution of software pieces that intervene within a single application, or the requirements for adaptive software systems. In addition, the need for reducing the maintenance costs of software systems has led to the emergence of new paradigms to cope with the complexity of these software. Autonomic computing is a relatively new paradigm for building software systems which aims at reducing the maintenance cost of software by building autonomic software systems which are able to manage themselves with a minimal intervention of a human operator. However, building autonomic software raises many scientific and technological challenges. For example, the lack of visibility of the control system architecture in autonomic systems makes them difficult to maintain. Similarly, the lack of verification tools is a limitation for building reliable autonomic systems. The flexible management of non-functional-properties, or the traceability between the design and the implementation are other challenges that need to be addressed for building flexible autonomic systems. The main contribution of this thesis is CORONA. CORONA is a framework which aims at helping software engineers for building flexible autonomic systems. To achieve that goal, CORONA relies on an architectural description language which reifies the structure of the control system architecture. CORONA enables the flexible integration of non-functional-properties during the design of autonomic systems. It also provides tools for conflicts checking in autonomic systems architecture. Finally, the traceability between the design and the runtime implementation is carried out through the code generation of skeletons from architectural descriptions of control systems. These properties of the CORONA framework are exemplified through three case-studies.
Les logiciels modernes sont de plus en plus complexes. Ceci est dû en partie à l'hétérogénéité des solutions misent en oeuvre, au caractère distribué des architectures de déploiement et à la dynamicité requise pour de tels logiciels qui devraient être capable de s'adapter en fonction des variations de leur contexte d'évolution. D'un autre coté, l'importance grandissante des contraintes de productivité dans le but de réduire les coûts de maintenance et de production des systèmes informatiques a favorisé l'émergence de nouveaux paradigmes pour répondre à la complexité des logiciels modernes. L'informatique des systèmes autonomes (Autonomic computing) s'inscrit dans cette perspective. Elle se propose entre autres de réduire le coût de maintenance des systèmes informatiques en développant des logiciels dits autonomes, c'est à dire dotés de la capacité de s'auto-gérer moyennant une intervention limité d'un opérateur humain. Toutefois, le développement de logiciels autonomes soulèvent de nombreux défis scientifiques et technologiques. Par exemple, l'absence de visibilité de la couche de contrôle dans les applications autonomes rend difficile leur maintenabilité, l'absence d'outils de vérification pour les architectures autonomes est un frein pour l'implémentation d'applications fiables, enfin, la gestion transparente des propriétés non-fonctionnelles et la traçabilité entre le design et l'implémentation sont autant de défis que pose la construction de logiciels autonomes flexibles. La principale contribution de cette thèse est CORONA. CORONA est un canevas logiciel qui vise à faciliter le développement de logiciels autonomes flexibles. Dans cet objectif, CORONA s'appuie sur un langage de description architecturale qui réifie les éléments qui forment la couche de contrôle dans les systèmes autonomes. CORONA permet l'intégration transparente des propriétés non-fonctionnelles dans la description architecturale des systèmes autonomes. il fournit aussi dans sa chaîne de compilation un ensemble d'outils qui permet d'effectuer des vérifications sur l'architecture des systèmes autonomes. Enfin, la traçabilité entre le design et l'implémentation est assurée par un mécanisme de génération des skeletons d'implémentation à partir d'une description architecturale. Les différentes propriétés de CORONA sont illustrées par trois cas d'utilisation.
Fichier principal
Vignette du fichier
thesis-nzekwa.pdf (3.27 Mo) Télécharger le fichier
Loading...

Dates and versions

tel-00843874 , version 1 (12-07-2013)

Identifiers

  • HAL Id : tel-00843874 , version 1

Cite

Russel Nzekwa. Building manageable autonomic control loops for large scale systems. Software Engineering [cs.SE]. Université des Sciences et Technologie de Lille - Lille I, 2013. English. ⟨NNT : ⟩. ⟨tel-00843874⟩
257 View
851 Download

Share

Gmail Facebook Twitter LinkedIn More