SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Une approche orientée aspect allant du
modèle d’exigences au modèle de conception

Journées du GDR GPL 2011, Session COSMAL
               1                 2                        3                4
Sébastien Mosser, Gunter Mussbacher, Mireille Blay-Fornarino, Daniel
Amyot

1: INRIA Lille-Nord Europe, LIFL (UMR CNRS 8022), Université Lille 1, France
2: SCE, Carleton University, Canada
3: I3S (UMR CNRS 6070), Université Nice - Sophia Antipolis, France
4: SITE, University of Ottawa, Canada



                                                                               1
Sébastien Mosser, Gunter Mussbacher, Mireille Blay
Fornarino, and Daniel Amyot. «From Aspect-oriented
Requirements Models to Aspect-oriented Business Process
Design Models»


                                                     2
AdoreModel transformMap(context:Component, am:AdoreModel, map:UCMmap, p
      // determine context
      if (context == null) { context = selectFirstComponentTaggedBusinessProcess
      // establish Adore fragment or orchestration
      if map.getConcern().isCrosscutting() { created = am.addFragment(map, conte
      else { created = am.addOrchestration(map, p, context); }
      // end recursion if the fragment/orchestration already exists
      if (!created) { return am; }
      // transform path element - also traverses the map to the next path element(s)
      if (p == null) { p = map.getStartPoint(); }
      am = transformElement(context, am, p, flag) // starts recursion
      return am;
}

AdoreModel transformElement(context:Component, am:AdoreModel, p:PathNode[]
      foreach element e in p {
               // deal with a static stub – requires examination of its plug-in map
               if e.isStub() {
                         if (!e.getPluginMap().contains(context) &&
                         e.getPluginMap().containsOtherComponentTaggedBusines
                                   am.addServiceInvocation(e);
                                   am = transformMap(null, am, e.pluginMap(), nu
                                                                                  3
                         }
Agenda


• Motivations : Vers une boucle de développement itérative


• Contexte : Exigences, Processus métiers SOA & Aspects


• Transformation «auto-magique»


• Avantages: Validation, Génération, Conflits, Abstraction


• Conclusions & Perspectives




                                                             4
Motivation :

 Vers une boucle de développement interactive




                                                 5
Une dichotomie apparente




                              Modèle
                           de conception

  Modèle
d’exigences



                                 6
Et pourtant ...




                  7
Proposition : Une approche dirigée par les
modèles

• Supporter la réification continue des artefacts manipulés


  • Transformation automatique d’une phase à une autre


• Profiter des avantages de chaque phase de développement


  • e.g., représentation client, analyse de modèles


  • Boucle de rétro-action pour un développement itératif



Analyse des                                Conception de
 exigences                                  l’architecture
                                                              8
Contexte :
  Exigences, Processus Métiers & Aspects




                                           9
Modèle d’exigences : AoURN

• URN : «User Requirements Notation»


  • Standard international (Série ITU-T Z. 150), outillé dans jUCM-Nav


  • Approche unifiée (goal-oriented, scenario-based, aspect-oriented)


• Supporte une modélisation multi-vues des exigences


  • Structure et comportement réifiés par des scénarios


  • Intentions/Trade-off réifiés par des buts


• Support d’analyse sur ces artefacts (e.g., non-régression)

                                                                         10
Exemple : Récupération d’images




                                  11
Processus Métiers (Arch. SOA)

• ADORE = «an Activity meta-moDel suppOrting oRchestration Evolution»


  • Description de processus métiers (activités, relations)


  • Basé sur le langage industriel BPEL (sous-ensemble du standard)


• Enrichissement du standard pour supporter l’évolution des processus


  • Processus représentés par des «flots de contrôles»


  • Evolutions représentées par des «fragments» de processus (incomplets)


• Support d’analyses sur les processus métiers (e.g., terminaison, R/W)

                                                                            12
Exemple: Récupération d’images




                                 13
Et les aspects dans tout ça ?

• Approche basée sur la séparation des préoccupations [Dijkstra, 74]


  • Système final = Système ← Préoccupation #1 ← Préoccupation #2 ← ...


• Vocabulaire aspect (AO*: Aspect-oriented [Programming|Modeling|...])


  • Les préoccupations sont des «aspects»


  • Leur composition avec le système est appelée «tissage»




     Get Pictures
                                                                         14
Version AoURN

Lien avec le système initial




                               15
Version ADORE

                Lien avec le système initial




                                               16
Transformation «auto-magique»




                                17
Par l’exemple




                18
Par l’exemple




                18
Par l’exemple




                18
Par l’exemple




                18
Résultat immédiats



                              Processus
                              Processus
   Scénario
   Scénario                    Processus
                                Processus
    Scénario
    Scénario                    Processus
                                Métier
                                 Métier
     Scénario                    Métier
                                  Métier
                                  Métier


     Aspect
     Aspect                   Fragment
                               Fragment
      Aspect                    Fragment




  Réification continue des préoccupations   19
Avantages
  Validation, Génération, Conflits, Abstraction




                                                 20
#1: Sur la validation

• Points clés & Avantages


   • Le modèle d’exigence est validé en amont de la transformation

      ➡ On peut «oublier» de re-vérifier ce qui l’a déjà été


      ➡ Les vérifications sont exprimées en termes d’exigences


• Illustration


   • Au niveau des exigences, on peut vérifier que les modèles définis
     comportent tous au moins une une «responsabilité» d’affichage des
     images récupérées sur le Web.

                                                                     21
#2: Sur la génération

• Points clés & Avantages


   • Génération automatique des artefacts du modèle de conception

      ➡ Ne pas refaire ce qui a déjà été fait


      ➡ Reposer sur des mécanismes automatique (et non plus humain)


• Illustration


   • La transformation génère automatiquement les modèles
     comportementaux ADORE à partir des modèles d’exigences exprimés
     dans AoURN

                                                                      22
#3: Sur les conflits

• Points clés & Avantages


   • Le modèle de conception est plus «concret» que le modèle d’exigences

      ➡ les tissages d’aspects sont instanciés


      ➡ On peut détecter des conflits de tissage dans cet espace


• Illustration


   • Une préoccupation de «Paiement» entre en conflit avec la
     préoccupation d’ajout d’images «PICASA» car elles sont tissées au
     même endroit sans qu’on en ait spécifié l’ordre.

                                                                        23
#4: Sur l’abstraction

• Points clés & Avantages


      • Le modèle de conception manipule des données (variables)

          ➡ Techniques d’analyse des processus au niveau «syntaxique»


          ➡ e.g., détection de flots de données inconsistent


• Illustration


   • La préoccupation de «restriction» utilise un seuil (i.e., une variable)
     pour définir la cardinalité finale de l’ensemble d’images. Qui définit ce
     seuil ? Est-ce une constante ? Un paramètre ?

                                                                             24
Conclusions & Perspectives




                             25
A retenir: Boucle de rétro-action & Itérativité




  #1:Validation                    #3: Conflits


  #2: Génération                  #4: Abstraction

          Transformation automatique                26
Accomplissements

• Un algorithme de transformation automatique


  • Transformation d’un modèle d’exigences en modèle de conception


  • Outils et implémentations basées sur des standards


• Avantages


  • Maintien de l’approche «aspects» des exigences à la conception


  • Utilisation des avantages inhérents à chaque étape du cycle de vie




                                                                         27
Travaux futurs

• Court terme


  • Vérification du passage à l’échelle de l’approche


  • Enrichissement du support outillé


  • Formalisation du «feedback» retourné dans le modèle d’exigence


• Long terme


  • Vers une chaine de transformation sur tout le cycle de vie


  • Alignement avec des approches par lignes de production logicielles

                                                                         28
Merci de votre attention !




                                 29
graphics by C.line & sxc.hu

Weitere ähnliche Inhalte

Ähnlich wie Talk Session COSMAL du GDR GPL 2011

Gp unified process
Gp unified processGp unified process
Gp unified processMoez Re
 
2 relation-acteurs-projet
2 relation-acteurs-projet2 relation-acteurs-projet
2 relation-acteurs-projetbriann_guillaud
 
2009-01-29 Squale aux Jeudis de l'Objet
2009-01-29 Squale aux Jeudis de l'Objet2009-01-29 Squale aux Jeudis de l'Objet
2009-01-29 Squale aux Jeudis de l'ObjetFabrice Bellingard
 
cours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.pptcours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.pptFatiMa243348
 
Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...
Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...
Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...IHM'10
 
Chorégraphie distribuée à partir d’un processus d’orchestration BPMN
Chorégraphie distribuée à partir d’un processus d’orchestration BPMNChorégraphie distribuée à partir d’un processus d’orchestration BPMN
Chorégraphie distribuée à partir d’un processus d’orchestration BPMNmmchaal
 
Enrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés AgilesEnrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés AgilesRomain Couturier
 
2009-09-15 Squale au Paris JUG
2009-09-15 Squale au Paris JUG2009-09-15 Squale au Paris JUG
2009-09-15 Squale au Paris JUGFabrice Bellingard
 
Grille de lecture des méthodes agiles
Grille de lecture des méthodes agilesGrille de lecture des méthodes agiles
Grille de lecture des méthodes agilesXavier Warzee
 
Réalité virtuelle Immersive pour la conception de postes de travail
Réalité virtuelle Immersive pour la conception de postes de travailRéalité virtuelle Immersive pour la conception de postes de travail
Réalité virtuelle Immersive pour la conception de postes de travailAlexandre BOUCHET
 
Introduction aux méthodes agiles
Introduction aux méthodes agilesIntroduction aux méthodes agiles
Introduction aux méthodes agilesGuillaume Collic
 
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Djamel Zouaoui
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction MansouriMansouri Khalifa
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011agnes_crepet
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Laurent PY
 
Agilite togo jug_final
Agilite togo jug_finalAgilite togo jug_final
Agilite togo jug_finalagnes_crepet
 
2.2 cycles de vie
2.2 cycles de vie2.2 cycles de vie
2.2 cycles de vieHarun Mouad
 

Ähnlich wie Talk Session COSMAL du GDR GPL 2011 (20)

Methodologie projet
Methodologie projet Methodologie projet
Methodologie projet
 
Gp unified process
Gp unified processGp unified process
Gp unified process
 
2 relation-acteurs-projet
2 relation-acteurs-projet2 relation-acteurs-projet
2 relation-acteurs-projet
 
2009-01-29 Squale aux Jeudis de l'Objet
2009-01-29 Squale aux Jeudis de l'Objet2009-01-29 Squale aux Jeudis de l'Objet
2009-01-29 Squale aux Jeudis de l'Objet
 
cours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.pptcours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.ppt
 
Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...
Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...
Méthode d’implémentation efficace des modèles PAC et PAC-Amodeus à l’aide de ...
 
Chorégraphie distribuée à partir d’un processus d’orchestration BPMN
Chorégraphie distribuée à partir d’un processus d’orchestration BPMNChorégraphie distribuée à partir d’un processus d’orchestration BPMN
Chorégraphie distribuée à partir d’un processus d’orchestration BPMN
 
Enrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés AgilesEnrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés Agiles
 
2009-09-15 Squale au Paris JUG
2009-09-15 Squale au Paris JUG2009-09-15 Squale au Paris JUG
2009-09-15 Squale au Paris JUG
 
Grille de lecture des méthodes agiles
Grille de lecture des méthodes agilesGrille de lecture des méthodes agiles
Grille de lecture des méthodes agiles
 
Réalité virtuelle Immersive pour la conception de postes de travail
Réalité virtuelle Immersive pour la conception de postes de travailRéalité virtuelle Immersive pour la conception de postes de travail
Réalité virtuelle Immersive pour la conception de postes de travail
 
Introduction aux méthodes agiles
Introduction aux méthodes agilesIntroduction aux méthodes agiles
Introduction aux méthodes agiles
 
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction Mansouri
 
Si
SiSi
Si
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)
 
Genielogiciel
GenielogicielGenielogiciel
Genielogiciel
 
Agilite togo jug_final
Agilite togo jug_finalAgilite togo jug_final
Agilite togo jug_final
 
2.2 cycles de vie
2.2 cycles de vie2.2 cycles de vie
2.2 cycles de vie
 

Mehr von Sébastien Mosser

A commutative model composition operator to support software adaptation
A commutative model composition operator to support software adaptationA commutative model composition operator to support software adaptation
A commutative model composition operator to support software adaptationSébastien Mosser
 
Towards CloudML, a Model-Based Approach to Provision Resources in the Clouds
Towards CloudML, a Model-Based Approach  to Provision Resources in the CloudsTowards CloudML, a Model-Based Approach  to Provision Resources in the Clouds
Towards CloudML, a Model-Based Approach to Provision Resources in the CloudsSébastien Mosser
 
Tools For Software Engineering
Tools For Software EngineeringTools For Software Engineering
Tools For Software EngineeringSébastien Mosser
 
Using Domain Feature to handle Feature Interactions
Using Domain Feature to handle Feature InteractionsUsing Domain Feature to handle Feature Interactions
Using Domain Feature to handle Feature InteractionsSébastien Mosser
 
Cloud Computing: From Revolution to Evolution
Cloud Computing: From Revolution to EvolutionCloud Computing: From Revolution to Evolution
Cloud Computing: From Revolution to EvolutionSébastien Mosser
 
Introducing Security Access Control Policies into Legacy Business Processes
Introducing Security Access Control Policies into Legacy Business ProcessesIntroducing Security Access Control Policies into Legacy Business Processes
Introducing Security Access Control Policies into Legacy Business ProcessesSébastien Mosser
 
Undoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business ProcessesUndoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business ProcessesSébastien Mosser
 
Behavioral Compositions in Service-Oriented Architecture
Behavioral Compositions in Service-Oriented ArchitectureBehavioral Compositions in Service-Oriented Architecture
Behavioral Compositions in Service-Oriented ArchitectureSébastien Mosser
 
Taming Orchestration Design Using ADORE
Taming Orchestration Design Using ADORETaming Orchestration Design Using ADORE
Taming Orchestration Design Using ADORESébastien Mosser
 
Adore Demonstration (AOSD'10)
Adore Demonstration (AOSD'10)Adore Demonstration (AOSD'10)
Adore Demonstration (AOSD'10)Sébastien Mosser
 

Mehr von Sébastien Mosser (17)

A commutative model composition operator to support software adaptation
A commutative model composition operator to support software adaptationA commutative model composition operator to support software adaptation
A commutative model composition operator to support software adaptation
 
Towards CloudML, a Model-Based Approach to Provision Resources in the Clouds
Towards CloudML, a Model-Based Approach  to Provision Resources in the CloudsTowards CloudML, a Model-Based Approach  to Provision Resources in the Clouds
Towards CloudML, a Model-Based Approach to Provision Resources in the Clouds
 
Tools For Software Engineering
Tools For Software EngineeringTools For Software Engineering
Tools For Software Engineering
 
La Thèse ...
La Thèse ...La Thèse ...
La Thèse ...
 
Using Domain Feature to handle Feature Interactions
Using Domain Feature to handle Feature InteractionsUsing Domain Feature to handle Feature Interactions
Using Domain Feature to handle Feature Interactions
 
Cloud Computing: From Revolution to Evolution
Cloud Computing: From Revolution to EvolutionCloud Computing: From Revolution to Evolution
Cloud Computing: From Revolution to Evolution
 
Introducing Security Access Control Policies into Legacy Business Processes
Introducing Security Access Control Policies into Legacy Business ProcessesIntroducing Security Access Control Policies into Legacy Business Processes
Introducing Security Access Control Policies into Legacy Business Processes
 
Undoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business ProcessesUndoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business Processes
 
Behavioral Compositions in Service-Oriented Architecture
Behavioral Compositions in Service-Oriented ArchitectureBehavioral Compositions in Service-Oriented Architecture
Behavioral Compositions in Service-Oriented Architecture
 
ADAM Seminary
ADAM SeminaryADAM Seminary
ADAM Seminary
 
Software Composition 2010
Software Composition 2010Software Composition 2010
Software Composition 2010
 
jSeduite @UNICE Foundation
jSeduite @UNICE FoundationjSeduite @UNICE Foundation
jSeduite @UNICE Foundation
 
Taming Orchestration Design Using ADORE
Taming Orchestration Design Using ADORETaming Orchestration Design Using ADORE
Taming Orchestration Design Using ADORE
 
Adore Demonstration (AOSD'10)
Adore Demonstration (AOSD'10)Adore Demonstration (AOSD'10)
Adore Demonstration (AOSD'10)
 
Builsing DSL using MDE
Builsing DSL using MDEBuilsing DSL using MDE
Builsing DSL using MDE
 
Entrepôt'Lytech JM2L
Entrepôt'Lytech JM2LEntrepôt'Lytech JM2L
Entrepôt'Lytech JM2L
 
Le Framework jSeduite
Le Framework jSeduiteLe Framework jSeduite
Le Framework jSeduite
 

Kürzlich hochgeladen

PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfRiDaHAziz
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 
Apprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursApprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursStagiaireLearningmat
 
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...NaimDoumissi
 
Chana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienneChana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienneTxaruka
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx   Film     françaisPas de vagues.  pptx   Film     français
Pas de vagues. pptx Film françaisTxaruka
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationpapediallo3
 
La Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdfLa Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdfbdp12
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfRiDaHAziz
 
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxPrésentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxJCAC
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfVulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfSylvianeBachy
 
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 37
 
Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Gabriel Gay-Para
 
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxDIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxMartin M Flynn
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx      Film   françaisPas de vagues.  pptx      Film   français
Pas de vagues. pptx Film françaisTxaruka
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 37
 

Kürzlich hochgeladen (18)

PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdf
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 
Apprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursApprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceurs
 
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
 
Chana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienneChana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienne
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx   Film     françaisPas de vagues.  pptx   Film     français
Pas de vagues. pptx Film français
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'information
 
La Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdfLa Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdf
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdf
 
Bulletin des bibliotheques Burkina Faso mars 2024
Bulletin des bibliotheques Burkina Faso mars 2024Bulletin des bibliotheques Burkina Faso mars 2024
Bulletin des bibliotheques Burkina Faso mars 2024
 
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxPrésentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfVulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
 
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
 
Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)
 
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxDIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx      Film   françaisPas de vagues.  pptx      Film   français
Pas de vagues. pptx Film français
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
 

Talk Session COSMAL du GDR GPL 2011

  • 1. Une approche orientée aspect allant du modèle d’exigences au modèle de conception Journées du GDR GPL 2011, Session COSMAL 1 2 3 4 Sébastien Mosser, Gunter Mussbacher, Mireille Blay-Fornarino, Daniel Amyot 1: INRIA Lille-Nord Europe, LIFL (UMR CNRS 8022), Université Lille 1, France 2: SCE, Carleton University, Canada 3: I3S (UMR CNRS 6070), Université Nice - Sophia Antipolis, France 4: SITE, University of Ottawa, Canada 1
  • 2. Sébastien Mosser, Gunter Mussbacher, Mireille Blay Fornarino, and Daniel Amyot. «From Aspect-oriented Requirements Models to Aspect-oriented Business Process Design Models» 2
  • 3. AdoreModel transformMap(context:Component, am:AdoreModel, map:UCMmap, p // determine context if (context == null) { context = selectFirstComponentTaggedBusinessProcess // establish Adore fragment or orchestration if map.getConcern().isCrosscutting() { created = am.addFragment(map, conte else { created = am.addOrchestration(map, p, context); } // end recursion if the fragment/orchestration already exists if (!created) { return am; } // transform path element - also traverses the map to the next path element(s) if (p == null) { p = map.getStartPoint(); } am = transformElement(context, am, p, flag) // starts recursion return am; } AdoreModel transformElement(context:Component, am:AdoreModel, p:PathNode[] foreach element e in p { // deal with a static stub – requires examination of its plug-in map if e.isStub() { if (!e.getPluginMap().contains(context) && e.getPluginMap().containsOtherComponentTaggedBusines am.addServiceInvocation(e); am = transformMap(null, am, e.pluginMap(), nu 3 }
  • 4. Agenda • Motivations : Vers une boucle de développement itérative • Contexte : Exigences, Processus métiers SOA & Aspects • Transformation «auto-magique» • Avantages: Validation, Génération, Conflits, Abstraction • Conclusions & Perspectives 4
  • 5. Motivation : Vers une boucle de développement interactive 5
  • 6. Une dichotomie apparente Modèle de conception Modèle d’exigences 6
  • 8. Proposition : Une approche dirigée par les modèles • Supporter la réification continue des artefacts manipulés • Transformation automatique d’une phase à une autre • Profiter des avantages de chaque phase de développement • e.g., représentation client, analyse de modèles • Boucle de rétro-action pour un développement itératif Analyse des Conception de exigences l’architecture 8
  • 9. Contexte : Exigences, Processus Métiers & Aspects 9
  • 10. Modèle d’exigences : AoURN • URN : «User Requirements Notation» • Standard international (Série ITU-T Z. 150), outillé dans jUCM-Nav • Approche unifiée (goal-oriented, scenario-based, aspect-oriented) • Supporte une modélisation multi-vues des exigences • Structure et comportement réifiés par des scénarios • Intentions/Trade-off réifiés par des buts • Support d’analyse sur ces artefacts (e.g., non-régression) 10
  • 11. Exemple : Récupération d’images 11
  • 12. Processus Métiers (Arch. SOA) • ADORE = «an Activity meta-moDel suppOrting oRchestration Evolution» • Description de processus métiers (activités, relations) • Basé sur le langage industriel BPEL (sous-ensemble du standard) • Enrichissement du standard pour supporter l’évolution des processus • Processus représentés par des «flots de contrôles» • Evolutions représentées par des «fragments» de processus (incomplets) • Support d’analyses sur les processus métiers (e.g., terminaison, R/W) 12
  • 14. Et les aspects dans tout ça ? • Approche basée sur la séparation des préoccupations [Dijkstra, 74] • Système final = Système ← Préoccupation #1 ← Préoccupation #2 ← ... • Vocabulaire aspect (AO*: Aspect-oriented [Programming|Modeling|...]) • Les préoccupations sont des «aspects» • Leur composition avec le système est appelée «tissage» Get Pictures 14
  • 15. Version AoURN Lien avec le système initial 15
  • 16. Version ADORE Lien avec le système initial 16
  • 22. Résultat immédiats Processus Processus Scénario Scénario Processus Processus Scénario Scénario Processus Métier Métier Scénario Métier Métier Métier Aspect Aspect Fragment Fragment Aspect Fragment Réification continue des préoccupations 19
  • 23. Avantages Validation, Génération, Conflits, Abstraction 20
  • 24. #1: Sur la validation • Points clés & Avantages • Le modèle d’exigence est validé en amont de la transformation ➡ On peut «oublier» de re-vérifier ce qui l’a déjà été ➡ Les vérifications sont exprimées en termes d’exigences • Illustration • Au niveau des exigences, on peut vérifier que les modèles définis comportent tous au moins une une «responsabilité» d’affichage des images récupérées sur le Web. 21
  • 25. #2: Sur la génération • Points clés & Avantages • Génération automatique des artefacts du modèle de conception ➡ Ne pas refaire ce qui a déjà été fait ➡ Reposer sur des mécanismes automatique (et non plus humain) • Illustration • La transformation génère automatiquement les modèles comportementaux ADORE à partir des modèles d’exigences exprimés dans AoURN 22
  • 26. #3: Sur les conflits • Points clés & Avantages • Le modèle de conception est plus «concret» que le modèle d’exigences ➡ les tissages d’aspects sont instanciés ➡ On peut détecter des conflits de tissage dans cet espace • Illustration • Une préoccupation de «Paiement» entre en conflit avec la préoccupation d’ajout d’images «PICASA» car elles sont tissées au même endroit sans qu’on en ait spécifié l’ordre. 23
  • 27. #4: Sur l’abstraction • Points clés & Avantages • Le modèle de conception manipule des données (variables) ➡ Techniques d’analyse des processus au niveau «syntaxique» ➡ e.g., détection de flots de données inconsistent • Illustration • La préoccupation de «restriction» utilise un seuil (i.e., une variable) pour définir la cardinalité finale de l’ensemble d’images. Qui définit ce seuil ? Est-ce une constante ? Un paramètre ? 24
  • 29. A retenir: Boucle de rétro-action & Itérativité #1:Validation #3: Conflits #2: Génération #4: Abstraction Transformation automatique 26
  • 30. Accomplissements • Un algorithme de transformation automatique • Transformation d’un modèle d’exigences en modèle de conception • Outils et implémentations basées sur des standards • Avantages • Maintien de l’approche «aspects» des exigences à la conception • Utilisation des avantages inhérents à chaque étape du cycle de vie 27
  • 31. Travaux futurs • Court terme • Vérification du passage à l’échelle de l’approche • Enrichissement du support outillé • Formalisation du «feedback» retourné dans le modèle d’exigence • Long terme • Vers une chaine de transformation sur tout le cycle de vie • Alignement avec des approches par lignes de production logicielles 28
  • 32. Merci de votre attention ! 29 graphics by C.line & sxc.hu

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n