SlideShare a Scribd company logo
Using MDE for the Formal
   Verification of Embedded
   Systems Modeled by UML
     Sequence Diagrams


         Francisco A. M. Nascimento
              Marcio F. S. Oliveira
                Flávio R. Wagner




SBCCI 2009                            Natal, RN
Motivation

    To cope with the growing complexity
    of embedded systems design

    Higher levels of abstraction

    Exhaustive test of all possible
    system executions is an impractical
    or even impossible task
•   Formal verification methods and
    tools as a promising approach
Summary
•   Model Driven Engineering (MDE)
•   MDE-based Formal Verification
•   Internal Application Metamodel – IAM
•   LTA Metamodel - LTA
•   Transforming UML into IAM+LTA
•   Case Study
•   Conclusion and Future Work
Model Driven Engineering
•   Main artifacts to be constructed and
    maintained are models
•   Languages used to express models
    are defined by means of meta-
    models
•   Software development consists of
    transforming a model into another
    one until a final model is obtained
    that is ready to be executed
MDE-based Formal Verification
UML model
• Class diagrams (CD)
    –   Application components
    –   Hierarchy and modularity
    –   Structure
• Sequence diagrams (SD)
    –   Possible executions of the application
    –   A root SD specifies how the executions
        are composed
    –   Behavior
Example: UML model
• UML model: class diagram
Example: UML model
• UML model: main sequence diagram
Example: UML model
• UML model: sequence diagrams
Example: UML model
• UML model: sequence diagrams
Example: UML model
• UML model: sequence diagrams
Internal Application Metamodel
• Structure
Example
• Internal
  Application
  Model
Internal Application Metamodel
• Behavior
Example
• Internal
  Application
  Model
Example: InteractionGraphs
• Internal
  Application
  Model
Internal Application Metamodel
• Labeled Timed Automata
Example
• Internal
  Application
  Model
Transforming UML into IAM+LTA

• Set of transformations between models
  implemented using Xtend language
  from openArchitectureWare framework
• Xtext language for IAM+LTA
  parser/editor implementation
• Xpand language used to generate
  textual input for Uppaal
• Eclipse Modeling Framework – EMF
Model Checking using UPPAAL
Future Work
•   Automatic generation of properties
    to be proved by model checking
•   Integration with diferent co-design
    and co-synthesis tools
•   More experiments to explore the
    effectivity of the methodology
Conclusions
•   Transformation between models is
    used to generate an internal
    representation model
•   IAM+LTA is adequate to be used
    by formal verification
     –   behavior and structure
     –   control/data flow of execution
     –   timed automata model

More Related Content

PPTX
Uml basics
PPTX
Uml assignment help
PDF
Enabling Performance Modeling for the Masses: Initial Experiences
PDF
An Introduction to Software Architecture
PPTX
Accelerating time to delivery: Modernizing Application Development
PPTX
Procter & Gamble Modelon INCOSE 2017
PPT
Cocomo model
Uml basics
Uml assignment help
Enabling Performance Modeling for the Masses: Initial Experiences
An Introduction to Software Architecture
Accelerating time to delivery: Modernizing Application Development
Procter & Gamble Modelon INCOSE 2017
Cocomo model

What's hot (18)

PPTX
Program logic formulation
PPT
PPSX
DITEC - Software Engineering
PPTX
Model Testing Toolkit - Overview
PDF
TOGAF Classroom Series - M3 intro-adm
PPT
Aspect oriented architecture
PPT
Architectural design1
PDF
[2016/2017] Introduction to Software Architecture
PPTX
Component based development | what, why and how
PPTX
Optimica Testing Toolkit
PPT
PPTX
Software engineering 10 software cost estimation cocomo
PPT
Lecture 1-intro-to-software-development
PDF
Software Engineering – Course Outline
PPTX
4+1 view model
DOC
Shivani_Sethi__Resume
PPT
Se ii unit3-architectural-design
PDF
Software Engineering : Process Models
Program logic formulation
DITEC - Software Engineering
Model Testing Toolkit - Overview
TOGAF Classroom Series - M3 intro-adm
Aspect oriented architecture
Architectural design1
[2016/2017] Introduction to Software Architecture
Component based development | what, why and how
Optimica Testing Toolkit
Software engineering 10 software cost estimation cocomo
Lecture 1-intro-to-software-development
Software Engineering – Course Outline
4+1 view model
Shivani_Sethi__Resume
Se ii unit3-architectural-design
Software Engineering : Process Models
Ad

Viewers also liked (7)

PDF
freshman CMD
PPT
Milieu
PDF
Magie Photoshop
PDF
Milieuproblematiek
PPT
BackCRM
PPT
BackCRM
PDF
Curious Things
freshman CMD
Milieu
Magie Photoshop
Milieuproblematiek
BackCRM
BackCRM
Curious Things
Ad

Similar to Using MDE for the Formal Verification of Embedded Systems Modeled by UML Sequence Diagrams (20)

PPT
Web technologies: Model Driven Engineering
PPTX
Agile MDD
PPT
xUMLFinalPresentation.ppt
PDF
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
PPT
Rejunevating software reengineering processes
PDF
Introduction to on Object Oriented Technologies and the UML Method
PPTX
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
PPT
Pressman ch-3-prescriptive-process-models
PPTX
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
PPT
Final Jspring2009 Mda Slimmer Ontwikkelen Van Java Ee Applicaties
PPTX
Modelon Modelica executable requirements Ansys Conference 2016
PDF
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
PPTX
Domain specific modelling (DSM)
PPT
ERP_Up_Down.ppt
PPTX
IncQuery Suite demo for INCOSE 2022IW
PPTX
What is UML (Unified Modeling Language)?
PDF
UML Intro
PPTX
Software engineering.pptx
PDF
Introduction to MLOps_ CI_CD for Machine Learning Models.pdf
Web technologies: Model Driven Engineering
Agile MDD
xUMLFinalPresentation.ppt
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
Rejunevating software reengineering processes
Introduction to on Object Oriented Technologies and the UML Method
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
Pressman ch-3-prescriptive-process-models
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
Final Jspring2009 Mda Slimmer Ontwikkelen Van Java Ee Applicaties
Modelon Modelica executable requirements Ansys Conference 2016
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Domain specific modelling (DSM)
ERP_Up_Down.ppt
IncQuery Suite demo for INCOSE 2022IW
What is UML (Unified Modeling Language)?
UML Intro
Software engineering.pptx
Introduction to MLOps_ CI_CD for Machine Learning Models.pdf

Using MDE for the Formal Verification of Embedded Systems Modeled by UML Sequence Diagrams

  • 1. Using MDE for the Formal Verification of Embedded Systems Modeled by UML Sequence Diagrams Francisco A. M. Nascimento Marcio F. S. Oliveira Flávio R. Wagner SBCCI 2009 Natal, RN
  • 2. Motivation  To cope with the growing complexity of embedded systems design  Higher levels of abstraction  Exhaustive test of all possible system executions is an impractical or even impossible task • Formal verification methods and tools as a promising approach
  • 3. Summary • Model Driven Engineering (MDE) • MDE-based Formal Verification • Internal Application Metamodel – IAM • LTA Metamodel - LTA • Transforming UML into IAM+LTA • Case Study • Conclusion and Future Work
  • 4. Model Driven Engineering • Main artifacts to be constructed and maintained are models • Languages used to express models are defined by means of meta- models • Software development consists of transforming a model into another one until a final model is obtained that is ready to be executed
  • 6. UML model • Class diagrams (CD) – Application components – Hierarchy and modularity – Structure • Sequence diagrams (SD) – Possible executions of the application – A root SD specifies how the executions are composed – Behavior
  • 7. Example: UML model • UML model: class diagram
  • 8. Example: UML model • UML model: main sequence diagram
  • 9. Example: UML model • UML model: sequence diagrams
  • 10. Example: UML model • UML model: sequence diagrams
  • 11. Example: UML model • UML model: sequence diagrams
  • 13. Example • Internal Application Model
  • 15. Example • Internal Application Model
  • 17. Internal Application Metamodel • Labeled Timed Automata
  • 18. Example • Internal Application Model
  • 19. Transforming UML into IAM+LTA • Set of transformations between models implemented using Xtend language from openArchitectureWare framework • Xtext language for IAM+LTA parser/editor implementation • Xpand language used to generate textual input for Uppaal • Eclipse Modeling Framework – EMF
  • 21. Future Work • Automatic generation of properties to be proved by model checking • Integration with diferent co-design and co-synthesis tools • More experiments to explore the effectivity of the methodology
  • 22. Conclusions • Transformation between models is used to generate an internal representation model • IAM+LTA is adequate to be used by formal verification – behavior and structure – control/data flow of execution – timed automata model