際際滷

際際滷Share 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

What's hot (19)

Program logic formulation
Program logic formulationProgram logic formulation
Program logic formulation
Sara Corpuz
Ch10
Ch10Ch10
Ch10
guest50f28c
DITEC - Software Engineering
DITEC - Software EngineeringDITEC - Software Engineering
DITEC - Software Engineering
Rasan Samarasinghe
Model Testing Toolkit - Overview
Model Testing Toolkit - OverviewModel Testing Toolkit - Overview
Model Testing Toolkit - Overview
Modelon
TOGAF Classroom Series - M3 intro-adm
TOGAF Classroom Series - M3 intro-admTOGAF Classroom Series - M3 intro-adm
TOGAF Classroom Series - M3 intro-adm
Cuneyt Kaya
Aspect oriented architecture
Aspect oriented architecture Aspect oriented architecture
Aspect oriented architecture
tigneb
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
Ivano Malavolta
Component based development | what, why and how
Component based development | what, why and howComponent based development | what, why and how
Component based development | what, why and how
Rakesh Kumar Jha
Optimica Testing Toolkit
Optimica Testing ToolkitOptimica Testing Toolkit
Optimica Testing Toolkit
Modelon
Ch03
Ch03Ch03
Ch03
guest50f28c
Software engineering 10 software cost estimation cocomo
Software engineering 10 software cost estimation cocomoSoftware engineering 10 software cost estimation cocomo
Software engineering 10 software cost estimation cocomo
Vaibhav Khanna
Lecture 1-intro-to-software-development
Lecture 1-intro-to-software-developmentLecture 1-intro-to-software-development
Lecture 1-intro-to-software-development
Zahid Hussain
Model based development(MBD)
Model based development(MBD) Model based development(MBD)
Model based development(MBD)
Shashi Kumar Mergu
Software Engineering Course Outline
Software Engineering  Course OutlineSoftware Engineering  Course Outline
Software Engineering Course Outline
Zafar Ayub
4+1 view model
4+1 view model4+1 view model
4+1 view model
Shobana Chokkalingam
Shivani_Sethi__Resume
Shivani_Sethi__ResumeShivani_Sethi__Resume
Shivani_Sethi__Resume
Shivani Sethi
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
Ahmad sohail Kakar
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process Models
Ajit Nayak
Program logic formulation
Program logic formulationProgram logic formulation
Program logic formulation
Sara Corpuz
DITEC - Software Engineering
DITEC - Software EngineeringDITEC - Software Engineering
DITEC - Software Engineering
Rasan Samarasinghe
Model Testing Toolkit - Overview
Model Testing Toolkit - OverviewModel Testing Toolkit - Overview
Model Testing Toolkit - Overview
Modelon
TOGAF Classroom Series - M3 intro-adm
TOGAF Classroom Series - M3 intro-admTOGAF Classroom Series - M3 intro-adm
TOGAF Classroom Series - M3 intro-adm
Cuneyt Kaya
Aspect oriented architecture
Aspect oriented architecture Aspect oriented architecture
Aspect oriented architecture
tigneb
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
Ivano Malavolta
Component based development | what, why and how
Component based development | what, why and howComponent based development | what, why and how
Component based development | what, why and how
Rakesh Kumar Jha
Optimica Testing Toolkit
Optimica Testing ToolkitOptimica Testing Toolkit
Optimica Testing Toolkit
Modelon
Software engineering 10 software cost estimation cocomo
Software engineering 10 software cost estimation cocomoSoftware engineering 10 software cost estimation cocomo
Software engineering 10 software cost estimation cocomo
Vaibhav Khanna
Lecture 1-intro-to-software-development
Lecture 1-intro-to-software-developmentLecture 1-intro-to-software-development
Lecture 1-intro-to-software-development
Zahid Hussain
Model based development(MBD)
Model based development(MBD) Model based development(MBD)
Model based development(MBD)
Shashi Kumar Mergu
Software Engineering Course Outline
Software Engineering  Course OutlineSoftware Engineering  Course Outline
Software Engineering Course Outline
Zafar Ayub
Shivani_Sethi__Resume
Shivani_Sethi__ResumeShivani_Sethi__Resume
Shivani_Sethi__Resume
Shivani Sethi
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
Ahmad sohail Kakar
Software Engineering : Process Models
Software Engineering : Process ModelsSoftware Engineering : Process Models
Software Engineering : Process Models
Ajit Nayak

Viewers also liked (7)

freshman CMD
freshman CMDfreshman CMD
freshman CMD
Jurriaan Mous
Milieuproblematiek
MilieuproblematiekMilieuproblematiek
Milieuproblematiek
guestafa816
BackCRM
BackCRMBackCRM
BackCRM
amavr
BackCRM
BackCRMBackCRM
BackCRM
amavr

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

Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
Piero Fraternali
Agile MDD
Agile MDDAgile MDD
Agile MDD
fntnhd
MDA
MDAMDA
MDA
Preetam Palwe
xUMLFinalPresentation.ppt
xUMLFinalPresentation.pptxUMLFinalPresentation.ppt
xUMLFinalPresentation.ppt
ssuser2ef938
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Labs
Rejunevating software reengineering processes
Rejunevating software reengineering processesRejunevating software reengineering processes
Rejunevating software reengineering processes
manishthaper
Introduction to on Object Oriented Technologies and the UML Method
Introduction to on Object Oriented  Technologies and the UML MethodIntroduction to on Object Oriented  Technologies and the UML Method
Introduction to on Object Oriented Technologies and the UML Method
jaden65832
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
DataScienceConferenc1
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
Noor Ul Hudda Memon
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
Lola Burgue単o
Final Jspring2009 Mda Slimmer Ontwikkelen Van Java Ee Applicaties
Final Jspring2009 Mda Slimmer Ontwikkelen Van Java Ee ApplicatiesFinal Jspring2009 Mda Slimmer Ontwikkelen Van Java Ee Applicaties
Final Jspring2009 Mda Slimmer Ontwikkelen Van Java Ee Applicaties
Ministry of Foreign Affairs, Netherlands
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016
Modelon
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Akira Tanaka
Domain specific modelling (DSM)
Domain specific modelling (DSM)Domain specific modelling (DSM)
Domain specific modelling (DSM)
PG Scholar
ERP_Up_Down.ppt
ERP_Up_Down.pptERP_Up_Down.ppt
ERP_Up_Down.ppt
KalsoomTahir2
IncQuery Suite demo for INCOSE 2022IW
IncQuery Suite demo for INCOSE 2022IWIncQuery Suite demo for INCOSE 2022IW
IncQuery Suite demo for INCOSE 2022IW
IncQuery Labs
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
Eliza Wright
UML Intro
UML IntroUML Intro
UML Intro
koppenolski
Software engineering.pptx
Software engineering.pptxSoftware engineering.pptx
Software engineering.pptx
JAGADEESWARIS6
Embedded
EmbeddedEmbedded
Embedded
Aravindharamanan S
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
Piero Fraternali
Agile MDD
Agile MDDAgile MDD
Agile MDD
fntnhd
xUMLFinalPresentation.ppt
xUMLFinalPresentation.pptxUMLFinalPresentation.ppt
xUMLFinalPresentation.ppt
ssuser2ef938
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Group's presentation for the INCOSE Polish Chapter 20220310
IncQuery Labs
Rejunevating software reengineering processes
Rejunevating software reengineering processesRejunevating software reengineering processes
Rejunevating software reengineering processes
manishthaper
Introduction to on Object Oriented Technologies and the UML Method
Introduction to on Object Oriented  Technologies and the UML MethodIntroduction to on Object Oriented  Technologies and the UML Method
Introduction to on Object Oriented Technologies and the UML Method
jaden65832
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
[DSC Europe 23] Petar Zecevic - ML in Production on Databricks
DataScienceConferenc1
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
Noor Ul Hudda Memon
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
Lola Burgue単o
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016
Modelon
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Akira Tanaka
Domain specific modelling (DSM)
Domain specific modelling (DSM)Domain specific modelling (DSM)
Domain specific modelling (DSM)
PG Scholar
IncQuery Suite demo for INCOSE 2022IW
IncQuery Suite demo for INCOSE 2022IWIncQuery Suite demo for INCOSE 2022IW
IncQuery Suite demo for INCOSE 2022IW
IncQuery Labs
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
Eliza Wright
Software engineering.pptx
Software engineering.pptxSoftware engineering.pptx
Software engineering.pptx
JAGADEESWARIS6

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