SlideShare a Scribd company logo
1
Model-Implemented Hybrid Fault Injection for
Simulink (Tool demonstration)
Mehrdad Moradi, Bert Van Acker, Ken Vanherpen and Joachim Denil
Oct. 5, 2018
CyPhy workshop
2 2
“It takes dozens of microprocessors running 100 million lines of code to get a premium
car out of the driveway, and this software is only going to get more complex”
http://www.real-programmer.com/interesting_things/IEEE%20SpectrumThisCarRunsOnCode.pdf
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
3
Dependability Analysis
What to be checked?
• Robustness
• Determining failure modes
• Safety
• Etc….
How?
Fault injection
A testing technique that aids in understanding how [virtual/real]
system behaves when stressed in unusual ways
3
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
4
Running example
Power window
4
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
5
Terminology
5
• Fault
• Error
• Failure
• Yu, Y., et. al. : Fault Injection Techniques and Tools for Embedded Systems Reliability Evaluation
• A. Pecchia, M. Cinque and D. Cotroneo, "Event Logs for the Analysis of Software Failures: A Rule-Based Approach,"
in IEEE Transactions on Software Engineering, vol. 39, no. , pp. 806-821.
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
6
Types of fault injection
6
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
7
Fault injection environment
• Fault Injection Techniques and Tools
• J. Arlat, M. Aguera, L. Amat, Y. Crouzet, J.C. Fabre, J.-C. Laprie, E. Martins, D. Powell, Fault Injection for Dependability Validation: A
Methodology and some Applications, IEEE Transactions on Software Engineering, Vol. 16, No. 2, February 1990, pp. 166–182
7
FARM model:
1. the set of Faults to be injected,
2. the set of Activations exercised during the experiment,
3. the Readouts to define observers of system behavior,
4. the Measures dependability properties.
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
8
Our contribution
Generative techniques: Model implemented Fault Injection by explicit
modelling of FARM in Simulink to setup the experiments both for
Model-in-the-Loop (MiL) and Hardware-in-the-Loop (HiL)
8
Embedded
Target
Real-Time
System
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
Control Models Plant Models
MiL
HiL
9
Fault Library
• Hard- and software fault type
• Fault nature
• Categories
• Block insertion/drop
• Open link
• Data changing
• latency
9
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
10
Why these faults?
Data changing
Latency
10
.
.
.
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
11
Modeling faults
11
Annotation Block
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
12
Modeling faults
12
Annotation Block
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction (FARM) User defines the set of Fault
13
How to inject faults?
13
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
14
How to inject faults?
14
.
.
.
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
Model
Transformation
15
When to inject?
15
Orchestrator
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
(FARM) defining the Activation time
16
Model-in-the-Loop demo
16
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
Control Models Plant Models
17
Model-in-the-Loop
17
Normal Simulation Faulty Simulation
Up
Down
Window
Position
External
Force
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
18
Model-in-the-Loop to Hardware-in-the-Loop
18
Embedded Target
Real-Time System
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
Control Models Plant Models
Code
Generation
Code
Generation
19
HiL Fault Injection
19
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
20
Task0
DeadlineStart time
Execution time
Slack
Slack
20
• Use slack to save time
• Greedy approach
• Slack mapper
...
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
21
Fault Injection Orchestrator
21
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
22
Hardware-in-the-Loop Demo
22
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
23
Conclusion
• The framework automated the FI process
• MiL
• Model level fault injection
• HiL
• Execution based fault injection
• Cover almost all of fault type
• Able to define scenario
23
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
24
Future direction
▪ Complete FARM model
▪ Temporal Logic
▪ Efficient fault injection
▪ Increase fault coverage and speed
▪ Complex fault injection scenario
▪ Trace back from failure to fault
24
Fault
injection
Fault lib
MiL fault
injection
HiL fault
injection
Conclusion
Future
direction
25
Thank you for your attention
For watching Demo’s video: https://www.youtube.com/channel/UCvfwLU_G0FrbSl1Ef7fbHUg

More Related Content

PPT
Unit testing using Mock objects and dependency injection
PPTX
Resilience and chaos engineering
PPTX
A Closer Look at Real-World Patches
PDF
Java Defects
PPTX
Twelve Factor - Designing for Change
PPTX
You Cannot Fix What You Cannot Find! --- An Investigation of Fault Localizati...
PDF
Diffy : Automatic Testing of Microservices @ Twitter
PPTX
iFixR: Bug Report Driven Program Repair
Unit testing using Mock objects and dependency injection
Resilience and chaos engineering
A Closer Look at Real-World Patches
Java Defects
Twelve Factor - Designing for Change
You Cannot Fix What You Cannot Find! --- An Investigation of Fault Localizati...
Diffy : Automatic Testing of Microservices @ Twitter
iFixR: Bug Report Driven Program Repair

Similar to Model implemented hybrid fault injection (20)

PDF
Chaudhari thesis-2014
PPTX
Improving Dependability of Embedded Software System
PDF
2012A8PS309P_AbhishekKumar_FinalReport
PDF
IRJET- Design of Fault Injection Technique for Digital HDL Models
PDF
How to find defects early and increase the reliability of software systems
PDF
fault injection in operating systems
PDF
Fault Injection on Automotive Diagnosis Protocols
PDF
Dependability Benchmarking by Injecting Software Bugs
PPT
Doctoral Thesis Presentation
PDF
1 artem mygaiev - testing open-source software in embedded devices
PDF
Hardware-in-the-Loop SoftwareTesting.pdf
PPTX
BlueHat v17 || KERNELFAULT: R00ting the Unexploitable using Hardware Fault In...
PDF
High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Test...
PDF
Softwareimplemented Hardware Fault Tolerance 1st Edition Olga Goloubeva
PDF
Bypassing Secure Boot using Fault Injection
PPTX
Fault tolerance techniques tsp
PDF
Fault Injection for Software Certification
PDF
identification and exercise of fault injection campaigns for experimental dep...
PPT
2010 IEEE International Conf. on Dependability of Computer Systems - DepCoS
PDF
Ch 16 & 17 Fault Injection & Fuzzing
Chaudhari thesis-2014
Improving Dependability of Embedded Software System
2012A8PS309P_AbhishekKumar_FinalReport
IRJET- Design of Fault Injection Technique for Digital HDL Models
How to find defects early and increase the reliability of software systems
fault injection in operating systems
Fault Injection on Automotive Diagnosis Protocols
Dependability Benchmarking by Injecting Software Bugs
Doctoral Thesis Presentation
1 artem mygaiev - testing open-source software in embedded devices
Hardware-in-the-Loop SoftwareTesting.pdf
BlueHat v17 || KERNELFAULT: R00ting the Unexploitable using Hardware Fault In...
High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Test...
Softwareimplemented Hardware Fault Tolerance 1st Edition Olga Goloubeva
Bypassing Secure Boot using Fault Injection
Fault tolerance techniques tsp
Fault Injection for Software Certification
identification and exercise of fault injection campaigns for experimental dep...
2010 IEEE International Conf. on Dependability of Computer Systems - DepCoS
Ch 16 & 17 Fault Injection & Fuzzing
Ad

Recently uploaded (20)

PDF
Artificial Superintelligence (ASI) Alliance Vision Paper.pdf
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PDF
Abrasive, erosive and cavitation wear.pdf
PDF
A SYSTEMATIC REVIEW OF APPLICATIONS IN FRAUD DETECTION
PDF
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
PDF
COURSE DESCRIPTOR OF SURVEYING R24 SYLLABUS
PDF
BIO-INSPIRED ARCHITECTURE FOR PARSIMONIOUS CONVERSATIONAL INTELLIGENCE : THE ...
PPT
INTRODUCTION -Data Warehousing and Mining-M.Tech- VTU.ppt
PDF
Design Guidelines and solutions for Plastics parts
PPTX
introduction to high performance computing
PPTX
Information Storage and Retrieval Techniques Unit III
PPTX
Fundamentals of Mechanical Engineering.pptx
PPTX
Safety Seminar civil to be ensured for safe working.
PDF
SMART SIGNAL TIMING FOR URBAN INTERSECTIONS USING REAL-TIME VEHICLE DETECTI...
PPTX
Fundamentals of safety and accident prevention -final (1).pptx
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PDF
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
PDF
UNIT no 1 INTRODUCTION TO DBMS NOTES.pdf
PPT
Total quality management ppt for engineering students
PPTX
Management Information system : MIS-e-Business Systems.pptx
Artificial Superintelligence (ASI) Alliance Vision Paper.pdf
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
Abrasive, erosive and cavitation wear.pdf
A SYSTEMATIC REVIEW OF APPLICATIONS IN FRAUD DETECTION
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
COURSE DESCRIPTOR OF SURVEYING R24 SYLLABUS
BIO-INSPIRED ARCHITECTURE FOR PARSIMONIOUS CONVERSATIONAL INTELLIGENCE : THE ...
INTRODUCTION -Data Warehousing and Mining-M.Tech- VTU.ppt
Design Guidelines and solutions for Plastics parts
introduction to high performance computing
Information Storage and Retrieval Techniques Unit III
Fundamentals of Mechanical Engineering.pptx
Safety Seminar civil to be ensured for safe working.
SMART SIGNAL TIMING FOR URBAN INTERSECTIONS USING REAL-TIME VEHICLE DETECTI...
Fundamentals of safety and accident prevention -final (1).pptx
III.4.1.2_The_Space_Environment.p pdffdf
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
UNIT no 1 INTRODUCTION TO DBMS NOTES.pdf
Total quality management ppt for engineering students
Management Information system : MIS-e-Business Systems.pptx
Ad

Model implemented hybrid fault injection

  • 1. 1 Model-Implemented Hybrid Fault Injection for Simulink (Tool demonstration) Mehrdad Moradi, Bert Van Acker, Ken Vanherpen and Joachim Denil Oct. 5, 2018 CyPhy workshop
  • 2. 2 2 “It takes dozens of microprocessors running 100 million lines of code to get a premium car out of the driveway, and this software is only going to get more complex” http://www.real-programmer.com/interesting_things/IEEE%20SpectrumThisCarRunsOnCode.pdf Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 3. 3 Dependability Analysis What to be checked? • Robustness • Determining failure modes • Safety • Etc…. How? Fault injection A testing technique that aids in understanding how [virtual/real] system behaves when stressed in unusual ways 3 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 4. 4 Running example Power window 4 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 5. 5 Terminology 5 • Fault • Error • Failure • Yu, Y., et. al. : Fault Injection Techniques and Tools for Embedded Systems Reliability Evaluation • A. Pecchia, M. Cinque and D. Cotroneo, "Event Logs for the Analysis of Software Failures: A Rule-Based Approach," in IEEE Transactions on Software Engineering, vol. 39, no. , pp. 806-821. Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 6. 6 Types of fault injection 6 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 7. 7 Fault injection environment • Fault Injection Techniques and Tools • J. Arlat, M. Aguera, L. Amat, Y. Crouzet, J.C. Fabre, J.-C. Laprie, E. Martins, D. Powell, Fault Injection for Dependability Validation: A Methodology and some Applications, IEEE Transactions on Software Engineering, Vol. 16, No. 2, February 1990, pp. 166–182 7 FARM model: 1. the set of Faults to be injected, 2. the set of Activations exercised during the experiment, 3. the Readouts to define observers of system behavior, 4. the Measures dependability properties. Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 8. 8 Our contribution Generative techniques: Model implemented Fault Injection by explicit modelling of FARM in Simulink to setup the experiments both for Model-in-the-Loop (MiL) and Hardware-in-the-Loop (HiL) 8 Embedded Target Real-Time System Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction Control Models Plant Models MiL HiL
  • 9. 9 Fault Library • Hard- and software fault type • Fault nature • Categories • Block insertion/drop • Open link • Data changing • latency 9 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 10. 10 Why these faults? Data changing Latency 10 . . . Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 11. 11 Modeling faults 11 Annotation Block Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 12. 12 Modeling faults 12 Annotation Block Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction (FARM) User defines the set of Fault
  • 13. 13 How to inject faults? 13 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 14. 14 How to inject faults? 14 . . . Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction Model Transformation
  • 15. 15 When to inject? 15 Orchestrator Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction (FARM) defining the Activation time
  • 16. 16 Model-in-the-Loop demo 16 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction Control Models Plant Models
  • 17. 17 Model-in-the-Loop 17 Normal Simulation Faulty Simulation Up Down Window Position External Force Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 18. 18 Model-in-the-Loop to Hardware-in-the-Loop 18 Embedded Target Real-Time System Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction Control Models Plant Models Code Generation Code Generation
  • 19. 19 HiL Fault Injection 19 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 20. 20 Task0 DeadlineStart time Execution time Slack Slack 20 • Use slack to save time • Greedy approach • Slack mapper ... Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 21. 21 Fault Injection Orchestrator 21 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 22. 22 Hardware-in-the-Loop Demo 22 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 23. 23 Conclusion • The framework automated the FI process • MiL • Model level fault injection • HiL • Execution based fault injection • Cover almost all of fault type • Able to define scenario 23 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 24. 24 Future direction ▪ Complete FARM model ▪ Temporal Logic ▪ Efficient fault injection ▪ Increase fault coverage and speed ▪ Complex fault injection scenario ▪ Trace back from failure to fault 24 Fault injection Fault lib MiL fault injection HiL fault injection Conclusion Future direction
  • 25. 25 Thank you for your attention For watching Demo’s video: https://www.youtube.com/channel/UCvfwLU_G0FrbSl1Ef7fbHUg