SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
A Runtime Model for fUML
MRT 2012 – 7th International Workshop on Models@run.time
                                    p          @
www.modelexecution.org

                                  Tanja Mayerhofer, Philip Langer, Gerti Kappel
                                  Business Informatics Group
                                  Institute of Software Technology  and Interactive Systems 
                                  Vienna University of Technology
                                                    y           gy
                                  Favoritenstraße 9‐11/188‐3, 1040 Vienna, Austria
                                  phone: +43 (1) 58801‐18804 (secretary), fax: +43 (1) 58801‐18896
                                  office@big.tuwien.ac.at, www.big.tuwien.ac.at
Introduction

Foundational UML (fUML)

 OMG standard V1.0 released 02/2011

 Specification of dynamic semantics for UML class diagram and activity diagram

 Operational semantics approach specifying a UML virtual machine

 UML evolves to implementation language




                                                                             2
Problem Description
              p

     Activity

           … …


                                    fUML virtual 
                                    fUML virtual
                                      machine
                                                               Output
            Input


? Which activity nodes have been executed?
? In which order have the nodes been executed?
? Which values have been consumed as input / produced as output by a node?
? What other activities have been called?
? What has the input / output of a called activity been?
                                                                             3
Contributions

fUML virtual machine lacks in providing means for
1.   analyzing the execution              Trace model
2.   observing the execution state        Event model
3.   controlling the execution            Command API




                                                         4
Contributions

fUML virtual machine lacks in providing means for
1.   analyzing the execution                       Trace model
          Chronological execution order
          Input / output relationships
           Input / output relationships
          Token flows
          Call hierarchies
2.   observing the execution state                 Event model

3.   controlling the execution                     Command API




                                                                  5
Trace Model




                                  Activity1: Add a new student to a lecture

                                              student :
                           New student :      Student
                        Instantiate student
    name :     name :                                 object :
    String     String                                 Student
                                                             AddStructuralFeatureValue
                                                             AddSt   t   lF t    V l
                                                                   Add lecture
                                                                                         result :
   lecture :                                        value :                                         student :
                                                                                         Student
   Lecture                                          Lecture                                         Student




                                                                                                                6
Trace Model

Input / Output Relationship

name : String
                                         Activity1: Add a new student to a lecture
   "Alice"
                                                     student :        s : Student
                                  New student :      Student         name = "Alice"
                               Instantiate student
             name :   name :                                 object :
             String   String                                 Student
                                                                    AddStructuralFeatureValue
                                                                    AddSt   t   lF t    V l
                                                                             Add lecture
                                                                                                result :
         lecture :                                         value :                                         student :
                                                                                                Student
         Lecture                                                                                           Student
                                                           Lecture




                                                                                                                       7
Contributions

fUML virtual machine lacks in providing means for
1.   analyzing the execution                       Trace model

2.   observing the execution state                 Event model
          Start / end of activity execution
          Start / end of activity node execution
          Suspension of activity execution
           Suspension of activity execution
          Modification of extensional values
3.   controlling the execution                     Command API




                                                                  8
Contributions

fUML virtual machine lacks in providing means for
1.   analyzing the execution                         Trace model

2.   observing the execution state                   Event model

3.   controlling the execution                       Command API
          Start / stop execution
          Resume execution until certain activity node
          Resume execution stepwise
          Retrieve runtime information
           Retrieve runtime information




                                                                    9
Future Work

   Objective: Model execution environment based on fUML, enabling efficient 
                        testing and debugging of models
                        testing and debugging of models

       Impact analysis of changes                             DSL for specifying assertions on traces
       Trace‐based debugging                                  Automatic derivation of test cases

                                   Model                       Model 
                                  Debugging                    Testing


                                       fUML Model Execution
                                       fU L   d l       i


      Execution support for fUML  Execution support for DSML*
       Execution support for fUML     Execution support for DSML
          Specification of operational semantics using fUML
          Automatic derivation of execution support

T. Mayerhofer, P. Langer, M. Wimmer. “Towards xMOF: Executable DSMLs based on fUML”. Accepted for publication in:  10
     12th Workshop on Domain‐Specific Modeling at SPLASH 2012. 
Thank you!
      y




             Debugging and Testing Models Based on fUML

                      www.modelexecution.org
                            d l     ti




                                                          11

Contenu connexe

En vedette

Articulo fiebre hemorragica argentina de 1958
Articulo   fiebre hemorragica argentina de 1958Articulo   fiebre hemorragica argentina de 1958
Articulo fiebre hemorragica argentina de 1958
Germán Niedfeld
 

En vedette (20)

Cultura
Cultura Cultura
Cultura
 
Articulo fiebre hemorragica argentina de 1958
Articulo   fiebre hemorragica argentina de 1958Articulo   fiebre hemorragica argentina de 1958
Articulo fiebre hemorragica argentina de 1958
 
Information about CBE
Information about CBEInformation about CBE
Information about CBE
 
Multi channel commerce
Multi channel commerceMulti channel commerce
Multi channel commerce
 
Thyssen Krupp Werkstoffe
Thyssen Krupp WerkstoffeThyssen Krupp Werkstoffe
Thyssen Krupp Werkstoffe
 
Prácticas I Pedagogía.
Prácticas I Pedagogía.Prácticas I Pedagogía.
Prácticas I Pedagogía.
 
Agenda cultural junio 2012
Agenda cultural junio 2012Agenda cultural junio 2012
Agenda cultural junio 2012
 
Loksangharsh patrika june 2015
Loksangharsh patrika june 2015Loksangharsh patrika june 2015
Loksangharsh patrika june 2015
 
Arrive Fare Sports activity Per Dimagrire
Arrive Fare Sports activity Per Dimagrire
Arrive Fare Sports activity Per Dimagrire
Arrive Fare Sports activity Per Dimagrire
 
Canvas impulsaton sf
Canvas impulsaton sfCanvas impulsaton sf
Canvas impulsaton sf
 
Politica de calidad e inocuidad 2014 ovoprot
Politica de calidad e inocuidad 2014 ovoprotPolitica de calidad e inocuidad 2014 ovoprot
Politica de calidad e inocuidad 2014 ovoprot
 
Portomarin andrea
Portomarin andreaPortomarin andrea
Portomarin andrea
 
Catálogo reles temporizados zelio time
Catálogo reles temporizados zelio timeCatálogo reles temporizados zelio time
Catálogo reles temporizados zelio time
 
Club De Lectura De La Mesa Camilla Al Blog
Club De Lectura De La Mesa Camilla Al BlogClub De Lectura De La Mesa Camilla Al Blog
Club De Lectura De La Mesa Camilla Al Blog
 
Healthcare and SMAC effect
Healthcare and SMAC effect Healthcare and SMAC effect
Healthcare and SMAC effect
 
eBook-Markt Indien
eBook-Markt IndieneBook-Markt Indien
eBook-Markt Indien
 
Long Exposure Photography by Alex Costa
Long Exposure Photography by Alex CostaLong Exposure Photography by Alex Costa
Long Exposure Photography by Alex Costa
 
Cultural guide samoa katrina
Cultural guide samoa katrinaCultural guide samoa katrina
Cultural guide samoa katrina
 
Evaluacion 2
Evaluacion 2Evaluacion 2
Evaluacion 2
 
New School PR - why we need to redefine Public Relations
New School PR - why we need to redefine Public RelationsNew School PR - why we need to redefine Public Relations
New School PR - why we need to redefine Public Relations
 

Similaire à A Runtime Model for fUML

A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)
A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)
A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)
Elena Planas
 
Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...
Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...
Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...
Michael Derntl
 
cv_romain_gehrig_2015-10-08
cv_romain_gehrig_2015-10-08cv_romain_gehrig_2015-10-08
cv_romain_gehrig_2015-10-08
Romain Gehrig
 

Similaire à A Runtime Model for fUML (20)

Combining fUML and profiles for non-functional analysis based on model execut...
Combining fUML and profiles for non-functional analysis based on model execut...Combining fUML and profiles for non-functional analysis based on model execut...
Combining fUML and profiles for non-functional analysis based on model execut...
 
ASE02.ppt
ASE02.pptASE02.ppt
ASE02.ppt
 
Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual
 
Executable Metamodeling for Model V&V (May 25th, 2010)
Executable Metamodeling for Model V&V (May 25th, 2010)Executable Metamodeling for Model V&V (May 25th, 2010)
Executable Metamodeling for Model V&V (May 25th, 2010)
 
oop Lecture 10
oop Lecture 10oop Lecture 10
oop Lecture 10
 
A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)
A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)
A Framework for Verifying UML Behavioral Models (CAiSE Doctoral Consortium 2009)
 
Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...
Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...
Propelling Standards-based Sharing and Reuse in Instructional Modeling Commun...
 
From programming to software engineering: ICSE keynote slides available
From programming to software engineering: ICSE keynote slides availableFrom programming to software engineering: ICSE keynote slides available
From programming to software engineering: ICSE keynote slides available
 
Who cares about Software Process Modelling? A First Investigation about the P...
Who cares about Software Process Modelling? A First Investigation about the P...Who cares about Software Process Modelling? A First Investigation about the P...
Who cares about Software Process Modelling? A First Investigation about the P...
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
 
Model and Design
Model and Design Model and Design
Model and Design
 
COMPSAC 2014
COMPSAC 2014COMPSAC 2014
COMPSAC 2014
 
C# Summer course - Lecture 1
C# Summer course - Lecture 1C# Summer course - Lecture 1
C# Summer course - Lecture 1
 
Java Code Generation from Formal Models: The CO-OPN Framework
Java Code Generation from Formal Models: The CO-OPN FrameworkJava Code Generation from Formal Models: The CO-OPN Framework
Java Code Generation from Formal Models: The CO-OPN Framework
 
Scala for Machine Learning
Scala for Machine LearningScala for Machine Learning
Scala for Machine Learning
 
cv_romain_gehrig_2015-10-08
cv_romain_gehrig_2015-10-08cv_romain_gehrig_2015-10-08
cv_romain_gehrig_2015-10-08
 
Visual prompt tuning
Visual prompt tuningVisual prompt tuning
Visual prompt tuning
 
Adelaide Jan 2009
Adelaide Jan 2009Adelaide Jan 2009
Adelaide Jan 2009
 
Static and Dynamic polymorphism in C++
Static and Dynamic polymorphism in C++Static and Dynamic polymorphism in C++
Static and Dynamic polymorphism in C++
 
Functional JavaScript Fundamentals
Functional JavaScript FundamentalsFunctional JavaScript Fundamentals
Functional JavaScript Fundamentals
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

A Runtime Model for fUML

  • 1. A Runtime Model for fUML MRT 2012 – 7th International Workshop on Models@run.time p @ www.modelexecution.org Tanja Mayerhofer, Philip Langer, Gerti Kappel Business Informatics Group Institute of Software Technology  and Interactive Systems  Vienna University of Technology y gy Favoritenstraße 9‐11/188‐3, 1040 Vienna, Austria phone: +43 (1) 58801‐18804 (secretary), fax: +43 (1) 58801‐18896 office@big.tuwien.ac.at, www.big.tuwien.ac.at
  • 2. Introduction Foundational UML (fUML)  OMG standard V1.0 released 02/2011  Specification of dynamic semantics for UML class diagram and activity diagram  Operational semantics approach specifying a UML virtual machine  UML evolves to implementation language 2
  • 3. Problem Description p Activity … … fUML virtual  fUML virtual machine Output Input ? Which activity nodes have been executed? ? In which order have the nodes been executed? ? Which values have been consumed as input / produced as output by a node? ? What other activities have been called? ? What has the input / output of a called activity been? 3
  • 4. Contributions fUML virtual machine lacks in providing means for 1. analyzing the execution  Trace model 2. observing the execution state  Event model 3. controlling the execution  Command API 4
  • 5. Contributions fUML virtual machine lacks in providing means for 1. analyzing the execution  Trace model  Chronological execution order  Input / output relationships Input / output relationships  Token flows  Call hierarchies 2. observing the execution state  Event model 3. controlling the execution  Command API 5
  • 6. Trace Model Activity1: Add a new student to a lecture student : New student : Student Instantiate student name : name : object : String String Student AddStructuralFeatureValue AddSt t lF t V l Add lecture result : lecture : value : student : Student Lecture Lecture Student 6
  • 7. Trace Model Input / Output Relationship name : String Activity1: Add a new student to a lecture "Alice" student : s : Student New student : Student name = "Alice" Instantiate student name : name : object : String String Student AddStructuralFeatureValue AddSt t lF t V l Add lecture result : lecture : value : student : Student Lecture Student Lecture 7
  • 8. Contributions fUML virtual machine lacks in providing means for 1. analyzing the execution  Trace model 2. observing the execution state  Event model  Start / end of activity execution  Start / end of activity node execution  Suspension of activity execution Suspension of activity execution  Modification of extensional values 3. controlling the execution  Command API 8
  • 9. Contributions fUML virtual machine lacks in providing means for 1. analyzing the execution  Trace model 2. observing the execution state  Event model 3. controlling the execution  Command API  Start / stop execution  Resume execution until certain activity node  Resume execution stepwise  Retrieve runtime information Retrieve runtime information 9
  • 10. Future Work Objective: Model execution environment based on fUML, enabling efficient  testing and debugging of models testing and debugging of models  Impact analysis of changes  DSL for specifying assertions on traces  Trace‐based debugging  Automatic derivation of test cases Model  Model  Debugging Testing fUML Model Execution fU L d l i  Execution support for fUML  Execution support for DSML* Execution support for fUML     Execution support for DSML  Specification of operational semantics using fUML  Automatic derivation of execution support T. Mayerhofer, P. Langer, M. Wimmer. “Towards xMOF: Executable DSMLs based on fUML”. Accepted for publication in:  10 12th Workshop on Domain‐Specific Modeling at SPLASH 2012. 
  • 11. Thank you! y Debugging and Testing Models Based on fUML www.modelexecution.org d l ti 11