SlideShare a Scribd company logo
1 of 24
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

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 engineeringSharif Omar Salem
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project ManagmentSaqib 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 fehlmannIWSM 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 SystemsLionel 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
 
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 techniquesSHREEHARI WADAWADAGI
 
CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4SIMONTHOMAS S
 
Software Size Estimation
Software Size EstimationSoftware Size Estimation
Software Size EstimationMuhammad Asim
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)ShudipPal
 

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-Driven Runtime Inconsistency Detection

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 TestingRachid Kherrazi
 
Varalakhmi_Suresh_1
Varalakhmi_Suresh_1Varalakhmi_Suresh_1
Varalakhmi_Suresh_1varu suresh
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & ValidationElmar Selbach
 
PSA Presentation on Rail Projects
PSA Presentation on Rail ProjectsPSA Presentation on Rail Projects
PSA Presentation on Rail ProjectsJohn 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 EngineeringHeiko 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 LabsIncQuery 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 ManufacturingCarlo 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 EngineeringRafael 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-Driven Runtime Inconsistency Detection (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äftsmodelleDaniel 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 ZwillingDaniel 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 TwinsDaniel 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 ModellenDaniel 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 OptimizationDaniel Lehner
 
Git-based Model Management
Git-based Model ManagementGit-based Model Management
Git-based Model ManagementDaniel Lehner
 
How to Engineer Digital Twins
How to Engineer Digital TwinsHow to Engineer Digital Twins
How to Engineer Digital TwinsDaniel 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 TestingDaniel 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 ModelsDaniel 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 TestingDaniel Lehner
 
2021_moddit_presentation_final.pdf
2021_moddit_presentation_final.pdf2021_moddit_presentation_final.pdf
2021_moddit_presentation_final.pdfDaniel 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 APIsDaniel 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 TwinsDaniel 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

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
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 2024Rafal Los
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
[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.pdfhans926745
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Recently uploaded (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
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
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
[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
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

Model-Driven Runtime Inconsistency Detection

  • 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