Spécification et Vérification de Modèles de Procédés
de Développement
Directeur de Recherche : Bernard COULETTE, Université Toulouse IIEncadrants : Xavier CRÉGUT, ENSEEIHT INPT
Alain CAPLAIN, Université Toulouse II
Master Recherche SLCP – Laboratoire GRIMM ISYCOM – Jeudi 23 juin 2005
Soutenance présentée par
Benoît COMBEMALE
23 juin 2005 2
Problématique
• La mise au point d’un procédé est une tâche complexe besoin d’un méta procédé outillé, associé à un ensemble de
notations cohérentes
Même problématique que l’ingénierie du logiciel:Langages + Démarche + Outils = Méthode
• L’ingénierie des modèles peut-elle répondre à la problématique des procédés de développement ?
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 3
PLANPLAN
1. Problématique2. Spécification de procédés
Software Process Engineering Metamodel (SPEM) Object Constraint Language (OCL)
3. Clarification de l’utilisation de SPEM Spécialisation du méta-modèle SPEM Proposition d’un cadre méthodologique Évaluation des outils supportant SPEM et OCL
4. Modélisation de MACAO5. Conclusion & Perspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 4
PLANPLAN
1. Problématique2. Spécification de procédés
Software Process Engineering Metamodel (SPEM) Object Constraint Language (OCL)
3. Clarification de l’utilisation de SPEM Spécialisation du méta-modèle SPEM Proposition d’un cadre méthodologique Évaluation des outils supportant SPEM et OCL
4. Modélisation de MACAO5. Conclusion & Perspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 5
• Langage de modélisation semi-formel pour les procédés de développement (OMG) :
Version courante: 1.1 formal/05-01-06 Vers une version 2.0: RFP ad/04-11-04
• Concept de base :
• Constat sur l’utilisation de SPEM : Sémantique partiellement formalisée, Pas de directive sur la structuration d’un procédé, Possibilité d’engendrer des modèles incohérents.
SPEM1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 6
OCL
• Langage formel pour l’expression de contraintes au sein des modèles (OMG) :
Version courante: 2.0 ptc/03-10-14
• Offre une syntaxe concrète et abstraite (v2),
• Précise la sémantique structurelle des modèles mais a un pouvoir d’expressivité limité
Proposition de nombreuses extensions pour la logique temporelle: TOCL, OCL+, etc. pour la fermeture transitive: OCL+
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 7
PLANPLAN
1. Problématique2. Spécification de procédés
Software Process Engineering Metamodel (SPEM) Object Constraint Language (OCL)
3. Clarification de l’utilisation de SPEM Spécialisation du méta-modèle SPEM Proposition d’un cadre méthodologique Évaluation des outils supportant SPEM et OCL
4. Modélisation de MACAO5. Conclusion & Perspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 8
23 juin 2005 9
Spécialisation du méta modèle SPEM
• Une activité doit, de manière exclusive, être associée à une phase ou une itération :
context Activity inv :
self.itParentWork notEmpty() xor self.phParentWork notEmpty()
• Une activité doit utiliser ou réaliser au moins un produit : context Activity inv :
self.input notEmpty() or self.output notEmpty()
• La réalisation d'une activité ne peut pas être assistée par le rôle qui en a déjà la responsabilité :
context Activity inv :
self.assistant excludes(self.performer)
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 10
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
La démarcheLa démarche
• Donne un cadre méthodologique pour l’utilisation de SPEM,
• Formalise progressivement les vues structurelle et descriptive.
Spécification cohérente et rigoureuse
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 11
• Indispensables pour la modélisation et pour la vérification.
• Outils de modélisation :
• Outils de vérification : Vérification des contraintes exprimées au niveau modèle et métamodèle Outils: USE, Neptune, OCLE, KMF, OCL Compiler, Key Tool, BoldSoft, …
Les outilsLes outils
Syntaxe SPEM
Sémantique SPEM
Saisie des contraintes OCL
Vérification des contraintes OCL
Objecteering/UML X X X
Enterprise Architect X X
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 12
PLANPLAN
1. Problématique2. Spécification de procédés
Software Process Engineering Metamodel (SPEM) Object Constraint Language (OCL)
3. Clarification de l’utilisation de SPEM Spécialisation du méta-modèle SPEM Proposition d’un cadre méthodologique Évaluation des outils supportant SPEM et OCL
4. Modélisation de MACAO5. Conclusion & Perspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 13
MACAOProcédé de développement completMACAOProcédé de développement complet
Étape 1
Analyse globale
Étape 2
Conception globale
Étape 3 : Développement
Étape 4
Finalisation
Prototype 3
Prototype N
Définition Conception
Intégration
Bêta-Tests
Codage
Prototype 2
Prototype 1
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 14
Analyse Globale
Conception Globale
Développement Finalisation
Phases
Itérations*
AG CG Dev#1 Dev#2 Dev#n Fin
Disciplines
Analyse
Conception
Développement
Finalisation
* La notion d’itération est ici utilisée au sens RUP du terme.
MACAOProcédé de développement completMACAOProcédé de développement complet
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 15
MACAOPoint de vue StructurelMACAOPoint de vue Structurel
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 16
MACAOPoint de vue DescriptifMACAOPoint de vue Descriptif
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 17
PLANPLAN
1. Problématique2. Spécification de procédés
Software Process Engineering Metamodel (SPEM) Object Constraint Language (OCL)
3. Clarification de l’utilisation de SPEM Spécialisation du méta-modèle SPEM Proposition d’un cadre méthodologique Évaluation des outils supportant SPEM et OCL
4. Modélisation de MACAO5. Conclusion & Perspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
23 juin 2005 18
• Précision sémantique des concepts de SPEM,
• Spécialisation du méta-modèle d’origine,
• Proposition d’une démarche méthodologique pour la formalisation des procédés,
• Évaluation d’outils supportant SPEM et OCL,
• Application au procédé MACAO.
ConclusionConclusion
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
23 juin 2005 19
• Implémentation de notre proposition de méta-modèle en tant que profil SPEM,
• Étude et classification des règles applicables aux procédés de développement,
• Vérification formelle des règles à travers des outils (Neptune, OCLE, etc…),
• Étude d’une sémantique opérationnelle applicable aux procédés de développement.
PerspectivesPerspectives
Master Recherche SLCP - Laboratoire GRIMM ISYCOM, Université Toulouse II
1. Objectifs | 2. Spécification de procédés | 3. Clarification de l’utilisation de SPEM | 4. Modélisation de MACAO | 5. Conclusion & Perspectives
MERCIde votre attention
des questions ?
Mémoire: http://www.combemale.net/research/m2r/memoireM2RSLCP.pdf