SlideShare a Scribd company logo
Business Informatics Group
Institute of Software Technology and Interactive Systems
Vienna University of Technology
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
Model-based Detection of Runtime Inconsistencies
Author: Daniel Lehner
Advisors: Manuel Wimmer, Sabine Wolny
Motivation: traditional approach
2
I have to
stop my
car!
Motivation: self-driving car
3
Will my
car stop?
Challenge
4
• Limited information whether system works as expected
 Static verification: state explosion
 Testing: mostly done before deployment
 Runtime monitoring: a lot of manual effort required for setup
• For my thesis: How to reduce the manual effort for detecting runtime
inconsistencies by reusing already existing software models?
Research Questions
5
RQ1 (Automation): Automation potential of reusing existing models for
inconsistency detection.
RQ2 (Usability): Comparative evaluation of the usability of model
interaction features.
RQ3 (Coverage): Defect kinds which can be found by model-based
inconsistency detection.
RQ4 (Scalability): Parameters that influence execution time of model-
based inconsistency detection.
6
Approach: Inconsistency Detection Based on Models (IDBoM)
Design Time
Does actual behavior
match requirements?
UML Class Diagram
(expected structure)
UML Activity Diagram
(expected behavior)
Check for
- inconsistent structure
- inconsistent behavior
ClassB.getY()
Runtime
UML Sequence Diagrams
(runtime traces)
a:ClassAb:ClassB
getX()
ClassA
- getX()
ClassB
- getY()
response
7
Methodology: Design Science [1,2]
[1] Wieringa, Roel J. Design science methodology for information systems and software engineering. Springer, 2014
[2] Hevner, Alan R., et al. "Design science in information systems research." MIS quarterly (2004): 75-105
Research Questions
Requirements
Artefact: IDBoM
Dynamic Checking Service (DynCS)
Service-Oriented Querying and Management of Models (SOMQM)
Evaluation
What is the answer to RQs?
Validation
(Are requirements satisfied by artefact?)
Problem
Static/dynamic Analysis
Mapping table
Demonstration Case
Discussion of results
Related Work from LiteratureComparison of Results
Contribution
Is there some improvement?
8
Architecture of IDBoM
• RQ1 (Automation):
• Static analysis (demonstration case)
• RQ2 (Usability)
 Static analysis (comparison framework)
• RQ3 (Coverage)
 Functional testing + static analysis (demonstration case)
• RQ 4 (Scalabilty)
 Dynamic analysis (controlled simulation experiment)
9
Evaluation + applied methods
Demonstration case: autonomously driving car
Requirements: automation of the following steps
• Triggering the checking process
• Retrieving required information automation after process is triggered
• Calculating the checking result from retrieved information
• Processing the calculated checking result
Results: automation of the required steps is possible
 Given running and connected services
 Given existing design time models
10
Automation (RQ1)
11
Usability of model interactions (RQ 2) [1]
[1] Shackel, B. (2009). Usability–Context, framework, definition, design and
evaluation. Interacting with computers, 21(5-6), 339-346.
Parameter XMI MDT-UML SOMQM
Required setup for accessing
model content
Prerequisites on programming
language
Capabilities for managing
several models
Abstraction level
Requirements on model input
Documentation
Best satisfaction of parameter
Second best satisfaction of parameter
Worst satisfaction of parameter
Results: Usability of model interactions is improved for all
chosen parameters (RQ2)
• Demonstration case: autonomously driving car
• Derive inconsistency cases from CD and AD
• 23 cases identified, involving
 Unallowed method calls
 Incorrect message sequences, with particular regard to
• alternative execution paths
• parallel execution paths
 Inconsistencies between software versions
 Execution time constraints
• Results: IDBoM covers 22 cases
 Execution time constraints not yet supported
12
Coverage (RQ 3)
Identified potential parameters
 CD: # Classes, Associations, Operations
 AD: # Actions, Decision Nodes, Parallel Execution Paths
 SD: # Messages
Test data
Test program: check if message sequence is valid with respect to design
model
13
Scalability (RQ 4) – experiment setting (3/3)
[1] Pfleeger, S. L. (1995). Experimental design and analysis in software engineering, part 5:
analyzing the data. ACM SIGSOFT Software Engineering Notes, 20(5), 14-17.
• Results: Linear expansion of execution time for all tested parameters
• Runtime is mainly determined by the number of messages in SD
Scalabilty (RQ 4) – Results
14
#Classes in CD
#Actions in AD#Associations in CD
#Operations in CD#Messages in SD
15
 Model-based Detection of Runtime Inconsistencies allows
 End-to-end automation
 Linear development of execution time
 Usability of interacting with models improved by
 Using a service-oriented approach
 Combining querying and management of models
 Automating generation of documentation
 Contribution
 End-to-end solution for model-based inconsistency detection
 Including scalability and automation analysis
 Reusable solution for automated processing of model information
 with improved usability for developers
Conclusion
16
 Impact of chosen parameters for
 Improve absolute execution time values, exploiting
 Parallelization
 Cloud infrastructure
 Extension to an industrial setting
Future Work
Model-driven runtime inconsistency detection
Questions?
Find my Implementation on Github
• Inconsistency Checking Framework (Dynamic Checking Service):
https://github.com/derlehner/dyncs
• Model Interaction Framework
(Service-Oriented Management and Querying of Models):
https://github.com/derlehner/somqm
Contact me
daniel.lehner@jku.at
https://www.researchgate.net/profile/Daniel_Lehner
17
Business Informatics Group
Institute of Software Technology and Interactive Systems
Vienna University of Technology
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
Daniel
Showcase of self-
driving car:
Class Diagram
Showcase of self-driving car: Activity Diagram
Functionality Example: incorrect method calls
Functionality Example: alternative execution paths
Functionality Example: parallel execution paths
Demonstration

More Related Content

What's hot

Reliability growth models
Reliability growth modelsReliability growth models
Reliability growth models
Roy Antony Arnold G
 
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...
RAKESH RANA
 
software effort estimation
 software effort estimation software effort estimation
software effort estimationBesharam Dil
 
Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...
IWSM Mensura
 
#1 formal methods – introduction for software engineering
#1 formal methods – introduction for software engineering#1 formal methods – introduction for software engineering
#1 formal methods – introduction for software engineering
Sharif Omar Salem
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project Managment
Saqib Naveed
 
Automatic measurements of use cases with cosmic thomas fehlmann
Automatic measurements of use cases with cosmic   thomas fehlmannAutomatic measurements of use cases with cosmic   thomas fehlmann
Automatic measurements of use cases with cosmic thomas fehlmann
IWSM Mensura
 
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
Testing the Untestable: Model Testing of Complex Software-Intensive SystemsTesting the Untestable: Model Testing of Complex Software-Intensive Systems
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
Lionel Briand
 
Software testing & its technology
Software testing & its technologySoftware testing & its technology
Software testing & its technologyHasam Panezai
 
Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...
Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...
Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...
RaunakMalkani3
 
Neurons On Wheels - Work Organisation
Neurons On Wheels - Work OrganisationNeurons On Wheels - Work Organisation
Neurons On Wheels - Work Organisation
NECST Lab @ Politecnico di Milano
 
Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!
Lionel Briand
 
Developing Tools for “What if…” Testing of Large-scale Software Systems
Developing Tools for “What if…” Testing of Large-scale Software SystemsDeveloping Tools for “What if…” Testing of Large-scale Software Systems
Developing Tools for “What if…” Testing of Large-scale Software Systems
James Hill
 
Chapter 14 software testing techniques
Chapter 14 software testing techniquesChapter 14 software testing techniques
Chapter 14 software testing techniques
SHREEHARI WADAWADAGI
 
Værktøjer udviklet på AAU til analyse af SCJ programmer
Værktøjer udviklet på AAU til analyse af SCJ programmerVærktøjer udviklet på AAU til analyse af SCJ programmer
Værktøjer udviklet på AAU til analyse af SCJ programmer
InfinIT - Innovationsnetværket for it
 
CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4
SIMONTHOMAS S
 
Software Size Estimation
Software Size EstimationSoftware Size Estimation
Software Size Estimation
Muhammad Asim
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)
ShudipPal
 
Vedic Calculator
Vedic CalculatorVedic Calculator
Vedic Calculator
divyang_panchasara
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
LPK Any Komputer
 

What's hot (20)

Reliability growth models
Reliability growth modelsReliability growth models
Reliability growth models
 
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...
Software Defect Prediction Techniques in the Automotive Domain: Evaluation, S...
 
software effort estimation
 software effort estimation software effort estimation
software effort estimation
 
Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...
 
#1 formal methods – introduction for software engineering
#1 formal methods – introduction for software engineering#1 formal methods – introduction for software engineering
#1 formal methods – introduction for software engineering
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project Managment
 
Automatic measurements of use cases with cosmic thomas fehlmann
Automatic measurements of use cases with cosmic   thomas fehlmannAutomatic measurements of use cases with cosmic   thomas fehlmann
Automatic measurements of use cases with cosmic thomas fehlmann
 
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
Testing the Untestable: Model Testing of Complex Software-Intensive SystemsTesting the Untestable: Model Testing of Complex Software-Intensive Systems
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
 
Software testing & its technology
Software testing & its technologySoftware testing & its technology
Software testing & its technology
 
Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...
Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...
Ac fr ogdgcmxqfucumvb3rtaloaj_brftdqxmm9hvb6ttcdlh-kap3doq8rsu8vhkdcpgfpozovb...
 
Neurons On Wheels - Work Organisation
Neurons On Wheels - Work OrganisationNeurons On Wheels - Work Organisation
Neurons On Wheels - Work Organisation
 
Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!
 
Developing Tools for “What if…” Testing of Large-scale Software Systems
Developing Tools for “What if…” Testing of Large-scale Software SystemsDeveloping Tools for “What if…” Testing of Large-scale Software Systems
Developing Tools for “What if…” Testing of Large-scale Software Systems
 
Chapter 14 software testing techniques
Chapter 14 software testing techniquesChapter 14 software testing techniques
Chapter 14 software testing techniques
 
Værktøjer udviklet på AAU til analyse af SCJ programmer
Værktøjer udviklet på AAU til analyse af SCJ programmerVærktøjer udviklet på AAU til analyse af SCJ programmer
Værktøjer udviklet på AAU til analyse af SCJ programmer
 
CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4
 
Software Size Estimation
Software Size EstimationSoftware Size Estimation
Software Size Estimation
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)
 
Vedic Calculator
Vedic CalculatorVedic Calculator
Vedic Calculator
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 

Similar to Model-based Detection of Runtime Inconsistencies

Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Lionel Briand
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
MohsinAli773
 
ASDSpec, Model Based Testing
ASDSpec, Model Based TestingASDSpec, Model Based Testing
ASDSpec, Model Based Testing
Rachid Kherrazi
 
Varalakhmi_Suresh_1
Varalakhmi_Suresh_1Varalakhmi_Suresh_1
Varalakhmi_Suresh_1varu suresh
 
Zander diss
Zander dissZander diss
Zander diss
Justyna Zander
 
Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...
WMG centre High Value Manufacturing Catapult
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & Validation
Elmar Selbach
 
PSA Presentation on Rail Projects
PSA Presentation on Rail ProjectsPSA Presentation on Rail Projects
PSA Presentation on Rail Projects
John Hertrich
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
Heiko Koziolek
 
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery LabsIncquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
IncQuery Labs
 
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...Aberla
 
Data Science for Smart Manufacturing
Data Science for Smart ManufacturingData Science for Smart Manufacturing
Data Science for Smart Manufacturing
Carlo Torniai
 
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Lionel Briand
 
Model-based GUI testing using Uppaal
Model-based GUI testing using UppaalModel-based GUI testing using Uppaal
Model-based GUI testing using UppaalUlrik Hørlyk Hjort
 
Bridging Concepts and Practice in eScience via Simulation-driven Engineering
Bridging Concepts and Practice in eScience via Simulation-driven EngineeringBridging Concepts and Practice in eScience via Simulation-driven Engineering
Bridging Concepts and Practice in eScience via Simulation-driven Engineering
Rafael Ferreira da Silva
 
TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6Sravanthi N
 

Similar to Model-based Detection of Runtime Inconsistencies (20)

Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
 
ASDSpec, Model Based Testing
ASDSpec, Model Based TestingASDSpec, Model Based Testing
ASDSpec, Model Based Testing
 
Resume_QA
Resume_QAResume_QA
Resume_QA
 
Varalakhmi_Suresh_1
Varalakhmi_Suresh_1Varalakhmi_Suresh_1
Varalakhmi_Suresh_1
 
Zander diss
Zander dissZander diss
Zander diss
 
CV Amol Dethe
CV Amol DetheCV Amol Dethe
CV Amol Dethe
 
Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & Validation
 
PSA Presentation on Rail Projects
PSA Presentation on Rail ProjectsPSA Presentation on Rail Projects
PSA Presentation on Rail Projects
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
 
Prasad_CTP
Prasad_CTPPrasad_CTP
Prasad_CTP
 
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery LabsIncquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
Incquery Suite Models 2020 Conference by István Ráth, CEO of IncQuery Labs
 
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
 
Data Science for Smart Manufacturing
Data Science for Smart ManufacturingData Science for Smart Manufacturing
Data Science for Smart Manufacturing
 
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
Testing Autonomous Cars for Feature Interaction Failures using Many-Objective...
 
GardiasResume2015
GardiasResume2015GardiasResume2015
GardiasResume2015
 
Model-based GUI testing using Uppaal
Model-based GUI testing using UppaalModel-based GUI testing using Uppaal
Model-based GUI testing using Uppaal
 
Bridging Concepts and Practice in eScience via Simulation-driven Engineering
Bridging Concepts and Practice in eScience via Simulation-driven EngineeringBridging Concepts and Practice in eScience via Simulation-driven Engineering
Bridging Concepts and Practice in eScience via Simulation-driven Engineering
 
TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6
 

More from Daniel Lehner

Digitale Zwillinge - Potenziale und Geschäftsmodelle
Digitale Zwillinge - Potenziale und GeschäftsmodelleDigitale Zwillinge - Potenziale und Geschäftsmodelle
Digitale Zwillinge - Potenziale und Geschäftsmodelle
Daniel Lehner
 
Schritt für Schritt zum digitalen Zwilling
Schritt für Schritt zum digitalen ZwillingSchritt für Schritt zum digitalen Zwilling
Schritt für Schritt zum digitalen Zwilling
Daniel Lehner
 
What's a Digital Twin - and why you need a better one?
What's a Digital Twin - and why you need a better one?What's a Digital Twin - and why you need a better one?
What's a Digital Twin - and why you need a better one?
Daniel Lehner
 
A Model-Driven Platform for Engineering Holistic Digital Twins
A Model-Driven Platform for Engineering Holistic Digital TwinsA Model-Driven Platform for Engineering Holistic Digital Twins
A Model-Driven Platform for Engineering Holistic Digital Twins
Daniel Lehner
 
Git-basiertes Qualitätsmonitoring von Systems Engineering Modellen
Git-basiertes Qualitätsmonitoring von Systems Engineering ModellenGit-basiertes Qualitätsmonitoring von Systems Engineering Modellen
Git-basiertes Qualitätsmonitoring von Systems Engineering Modellen
Daniel Lehner
 
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven OptimizationTowards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
Daniel Lehner
 
Git-based Model Management
Git-based Model ManagementGit-based Model Management
Git-based Model Management
Daniel Lehner
 
How to Engineer Digital Twins
How to Engineer Digital TwinsHow to Engineer Digital Twins
How to Engineer Digital Twins
Daniel Lehner
 
Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?
Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?
Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?
Daniel Lehner
 
Next Level Unit Testing
Next Level Unit TestingNext Level Unit Testing
Next Level Unit Testing
Daniel Lehner
 
Sustainable Development and Management of Systems Engineering Models
Sustainable Development and Management of Systems Engineering ModelsSustainable Development and Management of Systems Engineering Models
Sustainable Development and Management of Systems Engineering Models
Daniel Lehner
 
Die nächste Generation des Unit Testing
Die nächste Generation des Unit TestingDie nächste Generation des Unit Testing
Die nächste Generation des Unit Testing
Daniel Lehner
 
2021_moddit_presentation_final.pdf
2021_moddit_presentation_final.pdf2021_moddit_presentation_final.pdf
2021_moddit_presentation_final.pdf
Daniel Lehner
 
Towards a Flexible Evolution of Digital Twins with Fluent APIs
Towards a Flexible Evolution of Digital Twins with Fluent APIsTowards a Flexible Evolution of Digital Twins with Fluent APIs
Towards a Flexible Evolution of Digital Twins with Fluent APIs
Daniel Lehner
 
AML4DT: A Model-Driven Framework for Developing and Maintaining Digital Twin...
AML4DT: A Model-Driven Framework for Developing  and Maintaining Digital Twin...AML4DT: A Model-Driven Framework for Developing  and Maintaining Digital Twin...
AML4DT: A Model-Driven Framework for Developing and Maintaining Digital Twin...
Daniel Lehner
 
A Reference Architecture for Leveraging Model Repositories for Digital Twins
A Reference Architecture for Leveraging Model Repositories for Digital TwinsA Reference Architecture for Leveraging Model Repositories for Digital Twins
A Reference Architecture for Leveraging Model Repositories for Digital Twins
Daniel Lehner
 

More from Daniel Lehner (16)

Digitale Zwillinge - Potenziale und Geschäftsmodelle
Digitale Zwillinge - Potenziale und GeschäftsmodelleDigitale Zwillinge - Potenziale und Geschäftsmodelle
Digitale Zwillinge - Potenziale und Geschäftsmodelle
 
Schritt für Schritt zum digitalen Zwilling
Schritt für Schritt zum digitalen ZwillingSchritt für Schritt zum digitalen Zwilling
Schritt für Schritt zum digitalen Zwilling
 
What's a Digital Twin - and why you need a better one?
What's a Digital Twin - and why you need a better one?What's a Digital Twin - and why you need a better one?
What's a Digital Twin - and why you need a better one?
 
A Model-Driven Platform for Engineering Holistic Digital Twins
A Model-Driven Platform for Engineering Holistic Digital TwinsA Model-Driven Platform for Engineering Holistic Digital Twins
A Model-Driven Platform for Engineering Holistic Digital Twins
 
Git-basiertes Qualitätsmonitoring von Systems Engineering Modellen
Git-basiertes Qualitätsmonitoring von Systems Engineering ModellenGit-basiertes Qualitätsmonitoring von Systems Engineering Modellen
Git-basiertes Qualitätsmonitoring von Systems Engineering Modellen
 
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven OptimizationTowards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
 
Git-based Model Management
Git-based Model ManagementGit-based Model Management
Git-based Model Management
 
How to Engineer Digital Twins
How to Engineer Digital TwinsHow to Engineer Digital Twins
How to Engineer Digital Twins
 
Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?
Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?
Modeling Capabilities of Digital Twin Platforms: Old Wine in New Bottles?
 
Next Level Unit Testing
Next Level Unit TestingNext Level Unit Testing
Next Level Unit Testing
 
Sustainable Development and Management of Systems Engineering Models
Sustainable Development and Management of Systems Engineering ModelsSustainable Development and Management of Systems Engineering Models
Sustainable Development and Management of Systems Engineering Models
 
Die nächste Generation des Unit Testing
Die nächste Generation des Unit TestingDie nächste Generation des Unit Testing
Die nächste Generation des Unit Testing
 
2021_moddit_presentation_final.pdf
2021_moddit_presentation_final.pdf2021_moddit_presentation_final.pdf
2021_moddit_presentation_final.pdf
 
Towards a Flexible Evolution of Digital Twins with Fluent APIs
Towards a Flexible Evolution of Digital Twins with Fluent APIsTowards a Flexible Evolution of Digital Twins with Fluent APIs
Towards a Flexible Evolution of Digital Twins with Fluent APIs
 
AML4DT: A Model-Driven Framework for Developing and Maintaining Digital Twin...
AML4DT: A Model-Driven Framework for Developing  and Maintaining Digital Twin...AML4DT: A Model-Driven Framework for Developing  and Maintaining Digital Twin...
AML4DT: A Model-Driven Framework for Developing and Maintaining Digital Twin...
 
A Reference Architecture for Leveraging Model Repositories for Digital Twins
A Reference Architecture for Leveraging Model Repositories for Digital TwinsA Reference Architecture for Leveraging Model Repositories for Digital Twins
A Reference Architecture for Leveraging Model Repositories for Digital Twins
 

Recently uploaded

Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 

Recently uploaded (20)

Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 

Model-based Detection of Runtime Inconsistencies

  • 1. Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology 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 Model-based Detection of Runtime Inconsistencies Author: Daniel Lehner Advisors: Manuel Wimmer, Sabine Wolny
  • 4. Challenge 4 • Limited information whether system works as expected  Static verification: state explosion  Testing: mostly done before deployment  Runtime monitoring: a lot of manual effort required for setup • For my thesis: How to reduce the manual effort for detecting runtime inconsistencies by reusing already existing software models?
  • 5. Research Questions 5 RQ1 (Automation): Automation potential of reusing existing models for inconsistency detection. RQ2 (Usability): Comparative evaluation of the usability of model interaction features. RQ3 (Coverage): Defect kinds which can be found by model-based inconsistency detection. RQ4 (Scalability): Parameters that influence execution time of model- based inconsistency detection.
  • 6. 6 Approach: Inconsistency Detection Based on Models (IDBoM) Design Time Does actual behavior match requirements? UML Class Diagram (expected structure) UML Activity Diagram (expected behavior) Check for - inconsistent structure - inconsistent behavior ClassB.getY() Runtime UML Sequence Diagrams (runtime traces) a:ClassAb:ClassB getX() ClassA - getX() ClassB - getY() response
  • 7. 7 Methodology: Design Science [1,2] [1] Wieringa, Roel J. Design science methodology for information systems and software engineering. Springer, 2014 [2] Hevner, Alan R., et al. "Design science in information systems research." MIS quarterly (2004): 75-105 Research Questions Requirements Artefact: IDBoM Dynamic Checking Service (DynCS) Service-Oriented Querying and Management of Models (SOMQM) Evaluation What is the answer to RQs? Validation (Are requirements satisfied by artefact?) Problem Static/dynamic Analysis Mapping table Demonstration Case Discussion of results Related Work from LiteratureComparison of Results Contribution Is there some improvement?
  • 9. • RQ1 (Automation): • Static analysis (demonstration case) • RQ2 (Usability)  Static analysis (comparison framework) • RQ3 (Coverage)  Functional testing + static analysis (demonstration case) • RQ 4 (Scalabilty)  Dynamic analysis (controlled simulation experiment) 9 Evaluation + applied methods
  • 10. Demonstration case: autonomously driving car Requirements: automation of the following steps • Triggering the checking process • Retrieving required information automation after process is triggered • Calculating the checking result from retrieved information • Processing the calculated checking result Results: automation of the required steps is possible  Given running and connected services  Given existing design time models 10 Automation (RQ1)
  • 11. 11 Usability of model interactions (RQ 2) [1] [1] Shackel, B. (2009). Usability–Context, framework, definition, design and evaluation. Interacting with computers, 21(5-6), 339-346. Parameter XMI MDT-UML SOMQM Required setup for accessing model content Prerequisites on programming language Capabilities for managing several models Abstraction level Requirements on model input Documentation Best satisfaction of parameter Second best satisfaction of parameter Worst satisfaction of parameter Results: Usability of model interactions is improved for all chosen parameters (RQ2)
  • 12. • Demonstration case: autonomously driving car • Derive inconsistency cases from CD and AD • 23 cases identified, involving  Unallowed method calls  Incorrect message sequences, with particular regard to • alternative execution paths • parallel execution paths  Inconsistencies between software versions  Execution time constraints • Results: IDBoM covers 22 cases  Execution time constraints not yet supported 12 Coverage (RQ 3)
  • 13. Identified potential parameters  CD: # Classes, Associations, Operations  AD: # Actions, Decision Nodes, Parallel Execution Paths  SD: # Messages Test data Test program: check if message sequence is valid with respect to design model 13 Scalability (RQ 4) – experiment setting (3/3) [1] Pfleeger, S. L. (1995). Experimental design and analysis in software engineering, part 5: analyzing the data. ACM SIGSOFT Software Engineering Notes, 20(5), 14-17.
  • 14. • Results: Linear expansion of execution time for all tested parameters • Runtime is mainly determined by the number of messages in SD Scalabilty (RQ 4) – Results 14 #Classes in CD #Actions in AD#Associations in CD #Operations in CD#Messages in SD
  • 15. 15  Model-based Detection of Runtime Inconsistencies allows  End-to-end automation  Linear development of execution time  Usability of interacting with models improved by  Using a service-oriented approach  Combining querying and management of models  Automating generation of documentation  Contribution  End-to-end solution for model-based inconsistency detection  Including scalability and automation analysis  Reusable solution for automated processing of model information  with improved usability for developers Conclusion
  • 16. 16  Impact of chosen parameters for  Improve absolute execution time values, exploiting  Parallelization  Cloud infrastructure  Extension to an industrial setting Future Work
  • 17. Model-driven runtime inconsistency detection Questions? Find my Implementation on Github • Inconsistency Checking Framework (Dynamic Checking Service): https://github.com/derlehner/dyncs • Model Interaction Framework (Service-Oriented Management and Querying of Models): https://github.com/derlehner/somqm Contact me daniel.lehner@jku.at https://www.researchgate.net/profile/Daniel_Lehner 17
  • 18. Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology 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 Daniel
  • 19. Showcase of self- driving car: Class Diagram
  • 20. Showcase of self-driving car: Activity Diagram