Thèse soutenue

Contractualisation de l'évolution architecturale de logiciels à base de composants : une approche pour la préservation de la qualité
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Chouki Tibermacine
Direction : Salah Sadou
Type : Thèse de doctorat
Discipline(s) : Sciences et technologies de l'information et de la communication
Date : Soutenance en 2006
Etablissement(s) : Lorient

Résumé

FR  |  
EN

De toutes les étapes qui constituent le processus de maintenance, l'étape de compréhension d'une application avant son évolution, et l'étape de vérification de sa progression et de sa non régression après évolution sont de loin les plus coûteuses. Dans cette thèse, je présente une approche qui diminue les coûts associés à ces deux étapes, pour des applications conçues à l'aide de composants. Dans cette approche, les liens unissant les attributs qualité d'une application et les décisions architecturales sont documentés formellement. J'ai développé un environnement d'assistance à l'évolution, qui exploite cette documentation, pour d'une part, garantir sa mise à jour et d'autre part, notifier au développeur les effets possibles sur les exigences qualité des changements architecturaux proposés. Cette documentation forme ainsi un contrat dit d'évolution. Il s'agit d'un accord entre l'architecte de l'application et le responsable de son évolution. Le premier doit expliciter ses décisions de conception, sous la forme d'un ensemble de contraintes, afin qu'elles puissent être respectées lors du développement et de l'évolution. Le second doit respecter ce contrat afin de bénéficier d'une garantie de préservation de la qualité initialement requise. Ceci permet de réduire les coûts associés aux tests de non-régression sur l'aspect non-fonctionnel. Cette même documentation est utilisée pour tracer toutes les décisions architecturales tout au long du processus de développement d'un logiciel. Il est possible, ainsi, de vérifier, à une étape donnée du processus, la non-altération de toutes les décisions prises dans les étapes en amont.