La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

UCMEXPORTER: Support pour transformations de scénarios Use Case Maps

Présentations similaires


Présentation au sujet: "UCMEXPORTER: Support pour transformations de scénarios Use Case Maps"— Transcription de la présentation:

1 UCMEXPORTER: Support pour transformations de scénarios Use Case Maps
Daniel Amyot, Ali Echihabi, et Yong He ÉITI, Université d’Ottawa {damyot | u | Projet RDA, CRSNG

2 Aperçu de la présentation
Ingénierie des exigences avec scénarios Notation Use Case Maps (UCM) Transformations de scénarios Potentiel et défis Exemple Outil: UCMExporter Conclusions

3 Approche commune avec MSC
Orig MS MobSC-CCF HLR GetAuthInfo ChkAuth StartCom FindLoc ChkLoc Continue OK Hypothèse: service et données situés dans le commutateur mobile (MobSC)

4 Autre alternative… MS MobSC Orig SCP-SDF SCP-SCF MobSC-CCF HLR-LRFh HLR Orig GetAuthInfo StartCom FindLoc ChkAuth VrfAuth Authorized ChkLoc Continue OK Answer Challenge - Différente répartition de la logique du service et de ses données - Différents protocoles et échanges de messages - Plusieurs autres détails peuvent être pris en compte… et nous distraire!

5 Scénario Use Case Map (UCM)
Continue GetAuthInfo ChkAuth ChkLoc [OK] StartCom [NotOK] Reject LogReject Abstraction des entités (composantes) et de leurs états Abstraction des messages Concentration sur la logique/fonctionnalité du service

6 URN = UCM + GRL Notation d’exigences utilisateurs Opérateurs UCM
User Requirements Notation (URN) UIT-T Z.150 (février 2003) URN = scénarios (UCM) buts/exigences non-fonctionnelles (GRL) Opérateurs UCM Responsabilités et composantes Séquence, alternative, concurrence, décomposition Définitions de scénarios

7 Évaluation d’architectures: chemins sur composantes UCM
(a) Service dans le MobSC (b) Service dans MobSC, données dans SN (c) Service et données dans SCP

8 Pourquoi transformer les (scénarios) UCM?
Différentes notations adressent mieux différentes étapes du cycle de développement. Transformer une représentation en une autre permet de franchir, de façon retraçable et automatisable, le fossé séparant certaines phases. Les scénarios MSC (ou leur équivalent) ont toujours leur place dans la conception plus détaillée. Vision MDA de l’OMG Platform-independent model  Platform-specific model

9 UCM vers MSC Miga et al., 2001, 10th SDL Forum
Supporté par l’outil UCMNav Transformation directe Génération du MSC lors de la traversée du modèle Messages synthétiques: m0, m1, m2, … Inflexible, non-paramétrable Support du parallélisme incomplet

10 Exemple de modèle UCM c) Terminating UCM: plug-in for Sterm in Root a)
fork AND c) Terminating UCM: plug-in for Sterm in Root a) Root UCM. Start Point End Point Components Guard Timer Timeout Path OR - join d) TeenLine UCM: plug-in for Sscreen in Originating: Responsibility Stub b) Originating UCM: Plug-in for Sorig in Root

11 Définitions de scénarios et traversées

12 Définitions de scénarios

13 Exemple de sortie (MSC, Z.120)

14 Format intermédiaire XML
Amyot et al., 2003, QSIC’03 Découplage de la traversée Résulte en un scénario XML (fichier) et de la génération du langage cible Conversion vers MSC en utilisant XSLT Bonne amélioration, mais: Beaucoup de travail à répéter pour supporter un nouveau langage cible (UML) Conversion difficile à adapter pour des outils/détails particuliers Parallélisme difficile à gérer uniquement avec XSLT

15 Traversée et résultat en XML

16 Approche proposée: UCMEXPORTER
2. UCM File 2. UCM File (+ (+ scen scen . . defs defs ) ) 8. Telelogic 5. MSC 5. MSC TAU 3. XML File 3. XML File 3. XML File 3. XML File 4. UCM 6. Sequence 6. Sequence 9. Rational (scenarios) (scenarios) (scenarios) (scenarios) E XPORTER Diagram Diagram Rose 1. UCMN AV 7. TTCN - 3 10. TTthree

17 Aperçu des transformations
4. UCMExporter 4.3. UCM2MSC 4.3. UCM2MSC 5. MSC 5. MSC 4.4.2. XMI SD w/o Layout Info 4.2. UCMExporter XML 4.4. UCM2XMI 3. XML File 3. XML File 3. XML File 3. XML File XMLInputTransform XMLInputTransform DiagramDataGenerator DiagramDataGenerator 6. 6. UML SD UML SD (scenarios) (scenarios) (scenarios) (scenarios) XMITransformer (XMI) (XMI) 4.1. 4.1. 4.4.1. 4.4.3. 4.4.3. 4.5. UCM2TTCN 4.5. UCM2TTCN 7 7 . . TTCN TTCN - - 3 3

18 XMI Input Transform UCMExporterXMLInputTransformer
Identify the components and the instances participating in each scenario MessageSynthesizer Logic for generating messages and connectors. Discards parallel-related messages. ParallelConnectorMessagesSynthesizer Logic for generating connectors due to parallel behavior of the scenario. UCMNavXML XML file generated by UCMNav that describes the scenarios UCMExporterXML XML file containing all information need for the transformations ConnectorMessagesContextNameGenerator Replace generic names of synthesized connector messages by context descriptive ones MessagesCustomizer Apply any user requested customization such as a specific communication pattern ParallelInterleavingsSynthesizer Generate all possible sequence interleavings if requested. Could feed a model synthesizer.

19 Défis adressés par UCMEXPORTER
Synthèse de messages Préserve les relation causales de scénarios impliquant plusieurs composantes Produit des message cohérents pour des scénarios empruntant les mêmes chemins Support de la personnalisation Permet de renommer et de raffiner (paramètres, échanges complexes) les messages synthétiques Exprime le parallélisme Pour représenter les UCM avec chemins parallèles Voir page suivante Tient compte des limites des langages cibles (UML 1.x) Disposition des éléments du diagramme On ne peut pas toujours se fier aux outils existants! Support pour diagrammes de séquence UML avec Rational Rose (XMI)

20 B et C doivent savoir quand A a terminé
B et C doivent savoir quand A a terminé Quelques activités à l’extérieur de B

21 Autres caractéristiques
Les règles de transformation sont maintenues indépendemment (fichiers .xsl) Les utilisateurs peuvent tailler les transformation sur mesure, via des fichiers .xsl supplémentaires De nouveaux langages cibles peuvent être ajoutés (par exemple, TTCN-3) Outil multi-plateforme (Java/XSLT)

22

23 Exemples de transformations

24 Exemple d’application
Synthèse de spécifications SDL à partir de scénarios Use Case Maps He et al., 2003, 11th SDL Forum UCMs  MSCs  SDL UCMNav + Klocwork MSC2SDL + Telelogic Tau 4.4 Prototypage rapide permettant la simulation Plusieurs problèmes identifiés dans l’article résolus par UCMExporter Noms de message cohérents d’un scénario à l’autre Prise en compte des contraintes des outils de Klocwork et de Telelogic permettant l’automatisation de bout en bout.

25 Travaux reliés Génération de modèles de performance LQN à partir de UCM (Petriu et al., 2003) Génération de spécifications LOTOS à partir de UCM (Guan 2002) Génération de LQN à partir de diagrammes d’activités UML (Gu et al., 2002)

26 Conclusions et perspectives
UCMExporter offre une plateforme flexible permettant de transformer des scénarios extraits de modèles UCM. Supporte des transformations vers les MSC (Z.120) et diagrammes de séquence UML (XMI). Évite la duplication d’efforts Exigences abstraites vers modèles détaillés Supporte partiellement des squelettes de tests TTCN-3 Futur : Support de UML 2.0 en entrée (diagrammes d’activités) et en sortie (diagrammes d’interactions) Génération de tests

27 Disponibilités des outils
UCMExporter UCMNav 2.2 Merci!


Télécharger ppt "UCMEXPORTER: Support pour transformations de scénarios Use Case Maps"

Présentations similaires


Annonces Google