SETIT 2007 4 th International Conference: Sciences of Electronic, Technologies of Information and Telecommunications March 25-29, 2007 – TUNISIA - 1 - Fusion de scénarios UML et Génération de code Abdeslam JAKIMI, Mohammed EL KOUTBI, Ayoub SABRAOUI et Ali IDRI Université Mohammed V – Souissi, Ecole Nationale Supérieure d’Informatique et d’Analyse des Système. BP 713, Agdal, RABAT, MAROC. elkoutbi@ensias.ma Résumé: Cet article propose une nouvelle approche pour l’ingénierie des besoins basée sur la fusion et les transformations de modèles UML (Unified Modeling Language). Nous nous sommes intéressés, dans une première phase, à trois types de diagrammes d’UML : les diagrammes de classes (ClassD), les diagrammes de cas d’utilisation (UsecaseD) et les diagrammes séquence (SequenceD). Le processus qui supporte cette approche comporte globalement trois étapes : une première étape d’acquisition des besoins sous forme de diagrammes de classes, de cas d’utilisation et de séquences ; la deuxième étape propose un algorithme de fusion de plusieurs scénarios représentant un cas d’utilisation du système (service offert par le système) en un seul diagramme de séquence. La troisième étape de cette approche consiste à générer automatiquement du code pour les aspects dynamiques du système à partir du diagramme de séquence fusionné. Key words: Ingénierie des scénarios, Fusion de scénarios UML , Approches transformationnelles, Génération de code. INTRODUCTION Les approches transformationnelles sont de plus en plus utilisées dans le génie logiciel. En effet, ces approches de développement exigent que les changements soient faits et documentés dans les spécifications des besoins à travers les modèles d’analyse et de conception et qu’ils soient propagés par après vers l’environnement de déploiement (code source et exécutable). Ces nouvelles approches supposent un degré élevé de traçabilité qui ne peut être obtenu que par l’utilisation de techniques formelles (ou éventuellement semi-formelles) et d’algorithmes fiables de transformation de modèles. Différentes approches et différents outils, existant actuellement sur le marché, permettent d’effectuer certaines transformations : de modèles à modèles ou de modèles vers du code. On peut les classifier selon deux catégories : les approches boites noires et les approches boites blanches. Ces approches sont souvent complexes à utiliser et reposent sur l’utilisation d’un nouveau langage pour définir les transformations. Dans cet article, nous proposons une nouvelle approche d’ingénierie des besoins basée sur la fusion de scénarios et les transformations de modèles UML (Unified Modeling Language). Nous nous sommes particulièrement intéressés à trois types de diagrammes d’UML : les diagrammes de classes, les diagrammes de cas d’utilisation et les diagrammes de séquence. Cet article est présenté selon quatre sections. Dans la section 1, le concept de scénario et de cas d’utilisation seront définis en utilisant le framework notationnel UML . La section 2 décrit de façon succinte l’approche que nous avons développée pour la fusion des scénarios et la génération de code. La section3 présente notre algorithme de fusion de scénarios UML nous avons distingué trois opérateurs de fusion : séquentiel, conditionnel et concurrentiel. Dans la section 4, nous allons décrire les aspects de génération de code à partir du scénario fusionné, représenté sous de diagramme de séquence. Nous terminerons cet article par une conclusion et les travaux futurs. 1. Scénarios et UML Les scénarios connaissent un succès important dans le génie logiciel, cela est dû à leur utilisation dans toutes les phases du cycle de développement des systèmes informatiques depuis l’acquisition des besoins jusqu’aux activités de tests [Elk00]. Les scénarios trouvent leur place dans la plupart des méthodes orientées objet (OMT, Fusion, OOSE, etc.) pour identifier les objets du système et représenter les exigences fonctionnelles. Dans la méthode OOSE, les scénarios (cas d’utilisation) dirigent toutes les étapes de la conception orientée