img-logoIrisaSoutenanceEmmanuelleRouille img-logoSodifranceSoutenanceEmmanuelleRouille

Gestion de la variabilité et automatisation des processus de développement logiciel

img-soutenanceTheseMicheleDominici Emmanuelle Rouillé

img-logoEquipeProjetPanama (Equipe-projet DiverSE)

Soutenance de thèse - 16 avril 2014

L'exposé [51:45 mn]

La discussion avec le jury

Composition du Jury:

  • M. Pierre-Alain MULLER : Vice Président de l'Université de Haute Alsace - Rapporteur
  • M. Bernard COULETTE : Professeur à l'Université de Toulouse 2 Le Mirail - Rapporteur
  • Mme Parie-Pierre GERVAIS : Professeur à l'Université Paris Ouest Nanterre La Défense - Examinateur
  • M. Réda BENDRAOU : Maître de Conférences à l’université Pierre & Marie Curie - Examinateu
  • M. David TOUZET : Ingénieur SODIFRANCE - Encadrant
  • M. Jean-Marc JEZEQUEL : Professeur à l'Université de Rennes 1 - Directeur
  • M. Benoit COMBEMALE : Chargé de Recherche INRIA - Encadrant
  • M. Olivier BARAIS : Maître de Conférences à l'Université de Rennes 1 - Encadrant

Résumé :

De nombreux outils existent afin de faire face à la complexité des logiciels et des projets de développement logiciel. Leur utilisation est cependant à l'origine de tâches manuelles répétitives, sources d'erreurs et coûteuses en temps. L'automatisation de ces tâches permet de gagner en productivité.

Mais la difficulté est de déterminer quand une automatisation de tâche manuelle répétitive doit être réutilisée, ainsi que de créer des automatisations réutilisables à travers leurs différents cas d'utilisation. Nous proposons donc une approche outillée pilotant la réutilisation des automatisations de tâches manuelles répétitives par les processus de développement logiciel, où un processus de développement logiciel décrit les étapes à réaliser pour mener à bien un projet de développement logiciel.

Cette approche consiste à capitaliser sur un ensemble de processus et à réutiliser des processus de cet ensemble en fonction des exigences des projets, indépendamment du formalisme utilisé pour définir les processus. Des automatisations de tâches manuelles répétitives sont liées aux étapes des processus qu'elles automatisent. Ce lien permet de savoir quelles automatisations utiliser pour un projet donné et quand. Il permet également d'expliciter les différents cas d'utilisation de chaque automatisation. Cette information est utilisée afin de créer des automatisations réutilisables à travers leurs différents cas d'utilisation.

L'approche ainsi que l'outillage associé ont été appliqués sur une famille de processus industriels de développement Java ainsi que sur une famille de processus consistant à définir et outiller un langage de modélisation.

.

img-logoFlecheHaut