SlideShare a Scribd company logo
.lusoftware verification & validation
VVS
Testing Dynamic Behavior in
Executable Software Models!
-!
Making Cyber-physical Systems Testable!
!

Lionel Briand
July 18, ISSTA 2016
Acknowledgements
• Shiva Nejati
• Reza Matinejad
• Raja Ben Abdessalem
2
Cyber-Physical Systems
•  Increasingly complex and critical
systems
•  Complex environment 
•  Complex requirements, e.g.,
temporal, timing, resource usage
•  Dynamic behavior
•  Uncertainty, e.g., about the
environment 
•  Testing is expensive and difficult,
e.g., HW in the loop
3
Cyber Space
Physical
Sensing
Actuation
Information
Networks
Object
Domain
Real Space
Dynamic Behavior
•  Common when dealing with physical
entities
•  Inputs and outputs are variables
evolving over time (signals)
•  Properties to be verified consider
change over time, for individual or
sets of outputs
4
Time-Continuous
Magnitude-Continuous
time
value
MiL Testing
Hardware-in-the-Loop
Stage
Model-in-the-Loop
Stage
Simulink Modeling
Generic
Functional
Model
MiL Testing
Software-in-the-Loop
Stage
Code Generation
and Integration
Software Running
on ECU
SiL Testing
Software
Release
HiL Testing
5
Both the system
and environment
are modeled
Testing is highly
expensive and
time consuming
Simulink Models - Simulation
• Simulation Models
• heterogeneous
6
Time-Continuous
Simulink Model
 Hardware 
Model
Network Model
• continuous behavior
• are used for 
• algorithm design testing
• comparing design options
MiL Test Cases
7
Model
Simulation
Input
Signals
Output
Signal(s)
S3
t
S2
t
S1
t
S3
t
S2
t
S1
t
Test Case 1
Test Case 2
MiL Testing Challenges
• Space of test input signals is extremely large.
• Model execution, especially when involving
physical modeling, is extremely expensive.
• Oracles are not simple Boolean properties – they
involve analyzing changes in value over time (e.g.,
signal patterns) and assess levels of risk.
8
MiL Testing Challenges (2)
• Simulable model of the (physical) environment is
required for test automation, but not always
available.
• Effectiveness of test coverage strategies is
questionable, e.g., model coverage.
• No equivalence classes on input signal domains,
no combinatorial approaches.
9
We need novel, automated,
and cost-effective MiL
testing strategies for CPS
10
Industrial Examples
11
Advanced Driver Assistance
Systems (ADAS)
Decisions are made over time based on sensor data

 
 
 

12
Sensors Software
Pedestrian Detection System (PeVi) 
13
• The PeVi system is a camera-based
assistance system providing
improved vision
Challenges
• Simulation/testing is performed
using physics-based simulation
environments
• Challenge 1: A large number of
simulation scenarios 
• more than 2000 configuration
variables 
• Challenge 2: Simulations are
computationally expensive
14
weather road sensors human vehicles
Simulation Scenario
Approach
15
Generation of Test
specifications
Static
[ranges/values/
resolution]
Dynamic
[ranges/
resolution]
(2)
test case specification
Specification Documents
(Simulation Environment and PeVi System)
Domain
model
Requirements
model
(1)Development of Requirements
and domain models
Domain Model
16
- intensity: Real
SceneLight
Dynamic
Object
1
- weatherType:
Condition
Weather
- fog
- rain
- snow
- normal
«enumeration»
Condition
Output
Trajectory
- field of view:
Real
Camera
Sensor
RoadSide
Object
- roadType: RT
Road
1 - curved
- straight
- ramped
«enumeration»
RT
- vc: Real
Vehicle
- x0: Real
- y0: Real
- θ: Real
- vp: Real
Pedestrian
- x: Real
- y: Real
Position
1
*
1
*
1
1
- state: Boolean
Collision
Parked
Cars
Trees
- simulationTime:
Real
- timeStep: Real
Test Scenario
PeVi
- state: Boolean
Detection
1
1
11
1
1
1
1
«positioned»
«uses»
1 1
Requirements Model
17
<<trace>>
 <<trace>>



Speed
Profile
Path
1 1
Slot Path
Segment
1..**
1
Trajectory
Human
1*
trajectory
Warning
Sensors
posx1, posx2
posy1, posy2
AWACar/Motor/
Truck/Bus
sensor
has
has
awa
1
1
1
*
human
appears
posx1
 posx2
posy1
posy2
The PeVi system shall detect any person located in the
Acute Warning Area of a vehicle
Test Generation Overview
18
Simulator + PeVi
Environment Settings
(Roads, weather,
vehicle type, etc.)
Fixed during Search
 Manipulated by Search
Human Simulator
(initial position,
speed, orientation)
Car Simulator
(speed)

PeVi
Meta-heuristic Search
(multi-objective)
Generate
scenarios
Detection
or not?
Collision 
or not?
Multi-Objective Search 
• Search algorithm needs objective or
fitness functions for guidance
• In our case several independent
functions can be interesting
(heuristics):
•  Distance between car and pedestrian 
•  Distance between pedestrian and AWA
•  Time to collision 
19
posx1
 posx2
posy1
posy2
Pareto Front
20
Individual A Pareto
dominates individual B if
A is at least as good as B
in every objective 
and better than B in at
least one objective.
Dominated by x
O1
O2
Pareto front
x
•  A multi-objective optimization algorithm must achieve:
•  Guide the search towards the global Pareto-Optimal front.
•  Maintain solution diversity in the Pareto-Optimal front.
MO Search with NSGA-II
21
Non-Dominated 
Sorting
Selection based on rank 
and crowding distance
Size: 2*N
 Size: 2*N
 Size: N
•  Based on Genetic Algorithm
•  N: Archive and population size
•  Non-Dominated sorting: Solutions are ranked according to how
far they are from the Pareto front, fitness is based on rank. 
•  Crowding Distance: Individuals in the archive are being spread
more evenly across the front (forcing diversity)
•  Runs simulations for close to N new solutions
Pareto Front Results
22
TTC / D(P/AWA)
23
Simulation Scenario Execution
• https://sites.google.com/site/testingpevi/
24
Improving Time Performance
• Individual simulations take on average more than 1min
• It takes 10 hours to run our search-based test generation !
(≈ 500 simulations)
è We use surrogate modeling to improve the search
•  Goal: Predict fitness based on dynamic variables 
•  Neural networks
25
Multi-Objective Search with
Surrogate Models
26
Non-Dominated 
Sorting
Selection based on rank 
and crowding distance
Size: 2*N
 Size: 2*N
 Size: N
Original Algorithm
- Runs simulations for all!
new solutions
New Algorithm
-  Uses prediction values &!
prediction errors to run !
simulations only!
for the solutions that !
might be selected
Results – Surrogate Modeling
27
0.00
0.25
0.50
0.75
1.00
Time (min)
HV
50 100 15010
(a) Comparing HV values obtained
by NSGAII and NSGAII-SM
NSGAII (mean)
NSGAII-SM (mean)
Results – Worst Runs
28
Time (min)
0.00
0.25
0.50
0.75
1.00
Time (min)
HV
50 100 15010
(c) HV values for worst runs of NSGAII,
NSGAII-SM and RS
RS
NSGAII-SM
NSGAII
Results – Random Search
29
0.00
0.25
0.50
0.75
1.00
Time (min)
50 100 15010
(b) Comparing HV values obtained
by RS and NSGAII-SM
HV
RS (mean)
NSGAII-SM (mean)
(c) HV values for worst runs of NSGAII,
Conclusion
•  A general testing approach for ADAS, and many CP systems
•  Formulated the generation of critical test cases as a multi-objective
search problem using NSGAII algorithm
•  Improved the search performance with surrogate models based on
neural networks
•  Generated some critical scenarios: no detection in the AWA,
collision and no detection
•  No clear cut oracle – failure to detect may be deemed acceptable
risk
30
Dynamic Continuous Controllers
31
•  Supercharger bypass flap controller
ü Flap position is bounded within
[0..1]
ü Implemented in MATLAB/Simulink
ü 34 (sub-)blocks decomposed into 6
abstraction levels
ü The simulation time T=2 seconds
Supercharger
Bypass Flap
Supercharger
Bypass Flap
Flap position = 0 (open)
 Flap position = 1 (closed)
Simple Example
32
Initial
Desired Value
Final
Desired Value
time time
Desired Value
Actual Value
T/2 T T/2 T
Test Input
 Test Output
Plant
Model
Controller
(SUT)
Desired value Error
Actual value
System output+
-
MiL Testing of Controllers
33
Configurable Controllers at MIL
Plant Model
+
+
+
⌃
+
-
e(t)
actual(t)
desired(t)
⌃
KP e(t)
KD
de(t)
dt
KI
R
e(t) dt
P
I
D
output(t)
Time-dependent variables
Configuration Parameters
34
Requirements and Test Objectives
InitialDesired
(ID) Desired ValueI (input)
Actual Value (output)
FinalDesired
(FD)
time
T/2 T
Smoothness
Responsiveness
Stability
35
A Search-Based Test Approach
Initial Desired (ID)
FinalDesired(FD)
Worst Case(s)?
•  Continuous behavior
•  Controller’s behavior can be
complex
•  Meta-heuristic search in (large)
input space: Finding worst case
inputs
•  Possible because of automated
oracle (feedback loop)
•  Different worst cases for
different requirements
•  Worst cases may or may not
violate requirements
36
Initial Solution
HeatMap
Diagram
1. Exploration
List of
Critical
RegionsDomain
Expert
Worst-Case
Scenarios
+
Controller-
plant
model
Objective
Functions
based on
Requirements
2. Single-State
Search
time
Desired Value
Actual Value
0 1 2
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
Initial Desired
Final Desired
37
Results
•  We found much worse scenarios during MiL testing than our
partner had found so far
•  These scenarios are also run at the HiL level, where testing is
much more expensive: MiL results -> test selection for HiL
•  But further research was needed:
•  Simulations are expensive 
•  Configuration parameters 
38
Final Solution
+
Controller
Model
(Simulink)
Worst-Case
Scenarios
List of
Critical
PartitionsRegression
Tree
1.Exploration with
Dimensionality
Reduction
2.Search with
Surrogate
Modeling
Objective
Functions
Domain
Expert
Visualization of the 
8-dimension space 
using regression trees
Dimensionality 
reduction to identify 
the significant variables
(Elementary Effect Analysis)
Surrogate modeling 
to predict the objective 
function and 
speed up the search 
(Machine learning)
39
Regression Tree
All Points
FD>=0.43306
Count
Mean
Std Dev
Count
Mean
Std Dev
FD<0.43306
Count
Mean
Std Dev
ID>=0.64679
Count
Mean
Std Dev
Count
Mean
Std Dev
Cal5>=0.020847 Cal5>0.020847
Count
Mean
Std Dev
Count
Mean
Std Dev
Cal5>=0.014827 Cal5<0.014827
Count
Mean
Std Dev
Count
Mean
Std Dev
1000
0.007822
0.0049497
ID<0.64679
574
0.0059513
0.0040003
426
0.0103425
0.0049919
373
0.0047594
0.0034346
201
0.0081631
0.0040422
182
0.0134555
0.0052883
244
0.0080206
0.0031751
70
0.0106795
0.0052045
131
0.0068185
0.0023515
40
Surrogate Modeling
Any supervised learning or statistical
technique providing fitness predictions
with confidence intervals

1.  Predict higher fitness with high
confidence: Move to new position,
no simulation
2.  Predict lower fitness with high
confidence: Do not move to new
position, no simulation
3.  Low confidence in prediction:
Simulation
Surrogate Model
Real Function
x
Fitness
41
ü  Our approach is able to identify more critical violations of the
controller requirements that had neither been found by our earlier
work nor by manual testing. 
MiL-Testing
different configurations
Stability
Smoothness
Responsiveness
MiL-Testing
fixed configurations Manual MiL-Testing
- -2.2% deviation
24% over/undershoot 20% over/undershoot 5% over/undershoot
170 ms response time 80 ms response time 50 ms response time
Results
42
Open Loop Controllers
On
Off
CtrlSig
•  Mixed discrete-continuous behavior:
Simulink stateflows
•  No plant model: Much quicker simulation
time
•  No feedback loop -> no automated oracle
•  The main testing cost is the manual
analysis of output signals
•  Goal: Minimize test suites
•  Challenge: Test selection
•  Entirely different approach to testing
techniques. We consider this criterion
flows have complex internal structures
uations, making them less amenable to
they have rich time-continuous outputs.
e following contributions:
blem of testing Stateflows with mixed
behaviours. We propose two new test
a output stability and output continuity
cting test inputs that are likely to pro-
puts exhibiting instability and disconti-
ively.
box coverage and the blackbox output
iteria to Stateflows, and evaluate their
for continuous behaviours. The former
raditional state and transition coverage
nd the latter is defined based on the re-
ss criterion [?].
eness of our newly proposed and the
eria by applying them to three Stateflow
two industrial and one public domain.
RESULT.
r.
(c) Engaging state of SCC -- mixed discrete-continuous behaviour
Disengaging
Engaged
[disengageReq]/time := 0
[time>5]
[time>5]
time + +;
OnMoving OnSlipping
OnCompleted
time + +;
ctrlSig := f(time)
Engaging
time + +;
ctrlSig := g(time)
time + +;
ctrlSig := 1.0
[¬(vehspd = 0)
time > 2]
[(vehspd = 0)
time > 3]
[time > 4]
Figure 1: Supercharge Clutch Controller (SCC) Stateflow.
transient states [?], engaging and disengaging, specifying that mov-
ing from the engaged to the disengaged state and vice versa takes
six milisec. Since this model is simplified, it does not show han-
dling of alterations of the clutch state during the transient states.
In addition to adding the time variable, we note that the variable
43
Selection Strategies Based on Search
•  Input signal diversity
•  White-box structural coverage
•  State Coverage
•  Transition Coverage
•  Output signal diversity
•  Failure-Based selection criteria 
•  Domain specific failure patterns
•  Output Stability
•  Output Continuity
S3
t
S3
t
44
!
Output Diversity -- Vector-Based 
45
Output
Time
Output Signal 2
Output Signal 1
46
Output Diversity -- Feature-Based
increasing (n) decreasing (n)constant-value (n, v)
signal features
derivative second derivative
sign-derivative (s, n) extreme-derivatives
1-sided
discontinuity
discontinuity
1-sided continuity
with strict local optimum
value
instant-value (v)
constant (n)
discontinuity
with strict local optimum
increasing
C
A
B
Failure-based Test Generation 
47
Instability
 Discontinuity
0.0 1.0 2.0
-1.0
-0.5
0.0
0.5
1.0
Time
CtrlSigOutput
•  Search: Maximizing the likelihood of presence of specific failure
patterns in output signals
•  Domain-specific failure patterns elicited from engineers
0.0 1.0 2.0
Time
0.0
0.25
0.50
0.75
1.0
CtrlSigOutput
Results
• The test cases resulting from state/transition coverage
algorithms cover the faulty parts of the models
• However, they fail to generate output signals that are
sufficiently distinct from expectations, hence yielding a
low fault revealing rate 
• Output-based algorithms are much more effective
• Existing commercial tools: Not effective at finding faults,
not applicable to entire Simulink models
48
Reflecting
49
Commonalities
•  Large input spaces
•  Combinatorial approaches not applicable 
•  Coverage?
•  Expensive testing: test execution time, oracle analysis effort
•  Complex oracle (dynamic behavior)
•  Testing is driven by risk
•  Search-based solution: Highest risk scenarios
50
Differences
• Model execution time, e.g., plant or not
• Fitness function: Exact or heuristic
• Single or multi objectives
• Automated oracle or not
• Other techniques involved to achieve scalability:
regression trees, neural networks, sensitivity analysis,
…
51
Related Work
52
Constraint Solving
• Test data generation via constraint solving is not feasible
when:
• Continuous mathematical models, e.g., differential
equations
• Library functions in binary code
• Complex operations
• Constraints capturing dynamic properties (discretized)
tend not to be scalable
53
Search-Based Testing
• Largely focused on unit or function testing, where the
goal is to maximize model coverage, check temporal
properties (state transitions) …
• To address CPS, we need more work on system-level
testing, targeting dynamic properties in complex input
spaces capturing the behavior of physical entities.
54
Future: !
A more general methodological
and automation framework,
targeting more complex and
heterogeneous CPS models
55
Future Work
•  Shifting the bulk of testing from implemented systems to models of
such systems and their environments requires:
•  Heterogeneous modeling and co-simulation
•  Modeling dynamic properties and risk
•  Uncertainty modeling enabling probabilistic test oracles
•  Executable model at a proper level of precision for testing purposes
•  Use results to make the best out of available time and resources for
testing the implemented system with hardware in the loop
•  Focus on high risk test scenarios within budget and time constraints
56
References
•  R. Ben Abdessalem et al., "Testing Advanced Driver Assistance Systems Using
Multi-Objective Search and Neural Networks”, ASE 2016
•  R. Matinnejad et al., “Automated Test Suite Generation for Time-continuous Simulink
Models“, ICSE 2016
•  R. Matinnejad et al., “Effective Test Suites for Mixed Discrete-Continuous Stateflow
Controllers”, ESEC/FSE 2015 (Distinguished paper award)
•  R. Matinnejad et al., “MiL Testing of Highly Configurable Continuous Controllers:
Scalable Search Using Surrogate Models”, ASE 2014 (Distinguished paper award)
•  R. Matinnejad et al., “Search-Based Automated Testing of Continuous Controllers:
Framework, Tool Support, and Case Studies”, Information and Software Technology,
Elsevier (2014)
57
.lusoftware verification & validation
VVS
Testing Dynamic Behavior in
Executable Software Models!
!

Lionel Briand

** WE HIRE! ** 
July 18, ISSTA 2016

More Related Content

What's hot

Eventually Consistent Data Structures (from strangeloop12)
Eventually Consistent Data Structures (from strangeloop12)Eventually Consistent Data Structures (from strangeloop12)
Eventually Consistent Data Structures (from strangeloop12)
Sean Cribbs
 
XRAY for Jira
XRAY for JiraXRAY for Jira
XRAY for Jira
Mike Brosnan
 
STLC-ppt-1.pptx
STLC-ppt-1.pptxSTLC-ppt-1.pptx
STLC-ppt-1.pptx
sahithisammeta
 
QTest - Test management Tool
QTest - Test management ToolQTest - Test management Tool
QTest - Test management Tool
Shivaraj R
 
Kali Linux
Kali LinuxKali Linux
Kali Linux
Sumit Singh
 
Ch 9 Attacking Data Stores (Part 2)
Ch 9 Attacking Data Stores (Part 2)Ch 9 Attacking Data Stores (Part 2)
Ch 9 Attacking Data Stores (Part 2)
Sam Bowne
 
An introduction to unit testing
An introduction to unit testingAn introduction to unit testing
An introduction to unit testing
Adam Stephensen
 
Continuous Quality with Postman
Continuous Quality with PostmanContinuous Quality with Postman
Continuous Quality with Postman
Postman
 
Requirements Based Testing
Requirements Based TestingRequirements Based Testing
Requirements Based Testing
SSA KPI
 
Test Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalTest Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh Dahal
QA or the Highway
 
Cypress Testing.pptx
Cypress Testing.pptxCypress Testing.pptx
Cypress Testing.pptx
JasmeenShrestha
 
Actor critic algorithm
Actor critic algorithmActor critic algorithm
Actor critic algorithm
Jie-Han Chen
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Edureka!
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
Aneesh Rangarajan
 
20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで
20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで
20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで
Kenichi Sonoda
 
Performance Testing Quick Guide
Performance Testing Quick GuidePerformance Testing Quick Guide
Performance Testing Quick Guide
KiwiQA
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
Ken McCorkell
 
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFLINTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
Rahul R Pandya
 
RL4J で始める深層強化学習
RL4J で始める深層強化学習RL4J で始める深層強化学習
RL4J で始める深層強化学習
Yuki Tagami
 
Katalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and DevelopersKatalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio
 

What's hot (20)

Eventually Consistent Data Structures (from strangeloop12)
Eventually Consistent Data Structures (from strangeloop12)Eventually Consistent Data Structures (from strangeloop12)
Eventually Consistent Data Structures (from strangeloop12)
 
XRAY for Jira
XRAY for JiraXRAY for Jira
XRAY for Jira
 
STLC-ppt-1.pptx
STLC-ppt-1.pptxSTLC-ppt-1.pptx
STLC-ppt-1.pptx
 
QTest - Test management Tool
QTest - Test management ToolQTest - Test management Tool
QTest - Test management Tool
 
Kali Linux
Kali LinuxKali Linux
Kali Linux
 
Ch 9 Attacking Data Stores (Part 2)
Ch 9 Attacking Data Stores (Part 2)Ch 9 Attacking Data Stores (Part 2)
Ch 9 Attacking Data Stores (Part 2)
 
An introduction to unit testing
An introduction to unit testingAn introduction to unit testing
An introduction to unit testing
 
Continuous Quality with Postman
Continuous Quality with PostmanContinuous Quality with Postman
Continuous Quality with Postman
 
Requirements Based Testing
Requirements Based TestingRequirements Based Testing
Requirements Based Testing
 
Test Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalTest Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh Dahal
 
Cypress Testing.pptx
Cypress Testing.pptxCypress Testing.pptx
Cypress Testing.pptx
 
Actor critic algorithm
Actor critic algorithmActor critic algorithm
Actor critic algorithm
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
 
20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで
20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで
20210226[oracle code night] 機械学習入門:ディープラーニングの基礎から転移学習まで
 
Performance Testing Quick Guide
Performance Testing Quick GuidePerformance Testing Quick Guide
Performance Testing Quick Guide
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
 
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFLINTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
INTRODUCTION TO ISTQB FOUNDATION LEVEL - CTFL
 
RL4J で始める深層強化学習
RL4J で始める深層強化学習RL4J で始める深層強化学習
RL4J で始める深層強化学習
 
Katalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and DevelopersKatalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and Developers
 

Similar to Testing Dynamic Behavior in Executable Software Models - Making Cyber-physical Systems Testable

Testing of Cyber-Physical Systems: Diversity-driven Strategies
Testing of Cyber-Physical Systems: Diversity-driven StrategiesTesting of Cyber-Physical Systems: Diversity-driven Strategies
Testing of Cyber-Physical Systems: Diversity-driven Strategies
Lionel Briand
 
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Lionel Briand
 
Automated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance SystemsAutomated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance Systems
Lionel Briand
 
Automated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance SystemsAutomated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance Systems
Lionel Briand
 
MiL Testing of Highly Configurable Continuous Controllers
MiL Testing of Highly Configurable Continuous ControllersMiL Testing of Highly Configurable Continuous Controllers
MiL Testing of Highly Configurable Continuous Controllers
Lionel Briand
 
SBST 2019 Keynote
SBST 2019 Keynote SBST 2019 Keynote
SBST 2019 Keynote
Shiva Nejati
 
Automated Testing of Hybrid Simulink/Stateflow Controllers
Automated Testing of Hybrid Simulink/Stateflow ControllersAutomated Testing of Hybrid Simulink/Stateflow Controllers
Automated Testing of Hybrid Simulink/Stateflow Controllers
Lionel Briand
 
HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...
HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...
HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...
Lionel Briand
 
Automated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise ApplicationsAutomated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise Applications
SAIL_QU
 
Effective Test Suites for ! Mixed Discrete-Continuous Stateflow Controllers
Effective Test Suites for ! Mixed Discrete-Continuous Stateflow ControllersEffective Test Suites for ! Mixed Discrete-Continuous Stateflow Controllers
Effective Test Suites for ! Mixed Discrete-Continuous Stateflow Controllers
Lionel Briand
 
Enabling Model Testing of Cyber Physical Systems
Enabling Model Testing of Cyber Physical SystemsEnabling Model Testing of Cyber Physical Systems
Enabling Model Testing of Cyber Physical Systems
Lionel Briand
 
When Should I Use Simulation?
When Should I Use Simulation?When Should I Use Simulation?
When Should I Use Simulation?
SIMUL8 Corporation
 
Concurrency
ConcurrencyConcurrency
Concurrency
Biju Nair
 
The art of system and solution testing
The art of system and solution testingThe art of system and solution testing
The art of system and solution testing
gaoliang641
 
Intro to LV in 3 Hours for Control and Sim 8_5.pptx
Intro to LV in 3 Hours for Control and Sim 8_5.pptxIntro to LV in 3 Hours for Control and Sim 8_5.pptx
Intro to LV in 3 Hours for Control and Sim 8_5.pptx
DeepakJangid87
 
Achieving Scalability in Software Testing with Machine Learning and Metaheuri...
Achieving Scalability in Software Testing with Machine Learning and Metaheuri...Achieving Scalability in Software Testing with Machine Learning and Metaheuri...
Achieving Scalability in Software Testing with Machine Learning and Metaheuri...
Lionel Briand
 
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
 
Dealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in Verification
DVClub
 
Start MPC
Start MPC Start MPC
Start MPC
hamidreza2012
 
Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...
Lionel Briand
 

Similar to Testing Dynamic Behavior in Executable Software Models - Making Cyber-physical Systems Testable (20)

Testing of Cyber-Physical Systems: Diversity-driven Strategies
Testing of Cyber-Physical Systems: Diversity-driven StrategiesTesting of Cyber-Physical Systems: Diversity-driven Strategies
Testing of Cyber-Physical Systems: Diversity-driven Strategies
 
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
 
Automated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance SystemsAutomated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance Systems
 
Automated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance SystemsAutomated Testing of Autonomous Driving Assistance Systems
Automated Testing of Autonomous Driving Assistance Systems
 
MiL Testing of Highly Configurable Continuous Controllers
MiL Testing of Highly Configurable Continuous ControllersMiL Testing of Highly Configurable Continuous Controllers
MiL Testing of Highly Configurable Continuous Controllers
 
SBST 2019 Keynote
SBST 2019 Keynote SBST 2019 Keynote
SBST 2019 Keynote
 
Automated Testing of Hybrid Simulink/Stateflow Controllers
Automated Testing of Hybrid Simulink/Stateflow ControllersAutomated Testing of Hybrid Simulink/Stateflow Controllers
Automated Testing of Hybrid Simulink/Stateflow Controllers
 
HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...
HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...
HITECS: A UML Profile and Analysis Framework for Hardware-in-the-Loop Testing...
 
Automated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise ApplicationsAutomated Discovery of Performance Regressions in Enterprise Applications
Automated Discovery of Performance Regressions in Enterprise Applications
 
Effective Test Suites for ! Mixed Discrete-Continuous Stateflow Controllers
Effective Test Suites for ! Mixed Discrete-Continuous Stateflow ControllersEffective Test Suites for ! Mixed Discrete-Continuous Stateflow Controllers
Effective Test Suites for ! Mixed Discrete-Continuous Stateflow Controllers
 
Enabling Model Testing of Cyber Physical Systems
Enabling Model Testing of Cyber Physical SystemsEnabling Model Testing of Cyber Physical Systems
Enabling Model Testing of Cyber Physical Systems
 
When Should I Use Simulation?
When Should I Use Simulation?When Should I Use Simulation?
When Should I Use Simulation?
 
Concurrency
ConcurrencyConcurrency
Concurrency
 
The art of system and solution testing
The art of system and solution testingThe art of system and solution testing
The art of system and solution testing
 
Intro to LV in 3 Hours for Control and Sim 8_5.pptx
Intro to LV in 3 Hours for Control and Sim 8_5.pptxIntro to LV in 3 Hours for Control and Sim 8_5.pptx
Intro to LV in 3 Hours for Control and Sim 8_5.pptx
 
Achieving Scalability in Software Testing with Machine Learning and Metaheuri...
Achieving Scalability in Software Testing with Machine Learning and Metaheuri...Achieving Scalability in Software Testing with Machine Learning and Metaheuri...
Achieving Scalability in Software Testing with Machine Learning and Metaheuri...
 
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...
 
Dealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in Verification
 
Start MPC
Start MPC Start MPC
Start MPC
 
Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...
 

More from Lionel Briand

Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
Lionel Briand
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
Lionel Briand
 
Metamorphic Testing for Web System Security
Metamorphic Testing for Web System SecurityMetamorphic Testing for Web System Security
Metamorphic Testing for Web System Security
Lionel Briand
 
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
Lionel Briand
 
Fuzzing for CPS Mutation Testing
Fuzzing for CPS Mutation TestingFuzzing for CPS Mutation Testing
Fuzzing for CPS Mutation Testing
Lionel Briand
 
Data-driven Mutation Analysis for Cyber-Physical Systems
Data-driven Mutation Analysis for Cyber-Physical SystemsData-driven Mutation Analysis for Cyber-Physical Systems
Data-driven Mutation Analysis for Cyber-Physical Systems
Lionel Briand
 
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled SystemsMany-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
Lionel Briand
 
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
Lionel Briand
 
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
Lionel Briand
 
PRINS: Scalable Model Inference for Component-based System Logs
PRINS: Scalable Model Inference for Component-based System LogsPRINS: Scalable Model Inference for Component-based System Logs
PRINS: Scalable Model Inference for Component-based System Logs
Lionel Briand
 
Revisiting the Notion of Diversity in Software Testing
Revisiting the Notion of Diversity in Software TestingRevisiting the Notion of Diversity in Software Testing
Revisiting the Notion of Diversity in Software Testing
Lionel Briand
 
Applications of Search-based Software Testing to Trustworthy Artificial Intel...
Applications of Search-based Software Testing to Trustworthy Artificial Intel...Applications of Search-based Software Testing to Trustworthy Artificial Intel...
Applications of Search-based Software Testing to Trustworthy Artificial Intel...
Lionel Briand
 
Autonomous Systems: How to Address the Dilemma between Autonomy and Safety
Autonomous Systems: How to Address the Dilemma between Autonomy and SafetyAutonomous Systems: How to Address the Dilemma between Autonomy and Safety
Autonomous Systems: How to Address the Dilemma between Autonomy and Safety
Lionel Briand
 
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Lionel Briand
 
Reinforcement Learning for Test Case Prioritization
Reinforcement Learning for Test Case PrioritizationReinforcement Learning for Test Case Prioritization
Reinforcement Learning for Test Case Prioritization
Lionel Briand
 
Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...
Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...
Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...
Lionel Briand
 
On Systematically Building a Controlled Natural Language for Functional Requi...
On Systematically Building a Controlled Natural Language for Functional Requi...On Systematically Building a Controlled Natural Language for Functional Requi...
On Systematically Building a Controlled Natural Language for Functional Requi...
Lionel Briand
 
Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...
Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...
Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...
Lionel Briand
 
Guidelines for Assessing the Accuracy of Log Message Template Identification ...
Guidelines for Assessing the Accuracy of Log Message Template Identification ...Guidelines for Assessing the Accuracy of Log Message Template Identification ...
Guidelines for Assessing the Accuracy of Log Message Template Identification ...
Lionel Briand
 
A Theoretical Framework for Understanding the Relationship between Log Parsin...
A Theoretical Framework for Understanding the Relationship between Log Parsin...A Theoretical Framework for Understanding the Relationship between Log Parsin...
A Theoretical Framework for Understanding the Relationship between Log Parsin...
Lionel Briand
 

More from Lionel Briand (20)

Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Metamorphic Testing for Web System Security
Metamorphic Testing for Web System SecurityMetamorphic Testing for Web System Security
Metamorphic Testing for Web System Security
 
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
 
Fuzzing for CPS Mutation Testing
Fuzzing for CPS Mutation TestingFuzzing for CPS Mutation Testing
Fuzzing for CPS Mutation Testing
 
Data-driven Mutation Analysis for Cyber-Physical Systems
Data-driven Mutation Analysis for Cyber-Physical SystemsData-driven Mutation Analysis for Cyber-Physical Systems
Data-driven Mutation Analysis for Cyber-Physical Systems
 
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled SystemsMany-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
 
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
 
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
 
PRINS: Scalable Model Inference for Component-based System Logs
PRINS: Scalable Model Inference for Component-based System LogsPRINS: Scalable Model Inference for Component-based System Logs
PRINS: Scalable Model Inference for Component-based System Logs
 
Revisiting the Notion of Diversity in Software Testing
Revisiting the Notion of Diversity in Software TestingRevisiting the Notion of Diversity in Software Testing
Revisiting the Notion of Diversity in Software Testing
 
Applications of Search-based Software Testing to Trustworthy Artificial Intel...
Applications of Search-based Software Testing to Trustworthy Artificial Intel...Applications of Search-based Software Testing to Trustworthy Artificial Intel...
Applications of Search-based Software Testing to Trustworthy Artificial Intel...
 
Autonomous Systems: How to Address the Dilemma between Autonomy and Safety
Autonomous Systems: How to Address the Dilemma between Autonomy and SafetyAutonomous Systems: How to Address the Dilemma between Autonomy and Safety
Autonomous Systems: How to Address the Dilemma between Autonomy and Safety
 
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
 
Reinforcement Learning for Test Case Prioritization
Reinforcement Learning for Test Case PrioritizationReinforcement Learning for Test Case Prioritization
Reinforcement Learning for Test Case Prioritization
 
Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...
Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...
Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results ...
 
On Systematically Building a Controlled Natural Language for Functional Requi...
On Systematically Building a Controlled Natural Language for Functional Requi...On Systematically Building a Controlled Natural Language for Functional Requi...
On Systematically Building a Controlled Natural Language for Functional Requi...
 
Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...
Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...
Efficient Online Testing for DNN-Enabled Systems using Surrogate-Assisted and...
 
Guidelines for Assessing the Accuracy of Log Message Template Identification ...
Guidelines for Assessing the Accuracy of Log Message Template Identification ...Guidelines for Assessing the Accuracy of Log Message Template Identification ...
Guidelines for Assessing the Accuracy of Log Message Template Identification ...
 
A Theoretical Framework for Understanding the Relationship between Log Parsin...
A Theoretical Framework for Understanding the Relationship between Log Parsin...A Theoretical Framework for Understanding the Relationship between Log Parsin...
A Theoretical Framework for Understanding the Relationship between Log Parsin...
 

Recently uploaded

2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Envertis Software Solutions
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 

Recently uploaded (20)

2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 

Testing Dynamic Behavior in Executable Software Models - Making Cyber-physical Systems Testable

  • 1. .lusoftware verification & validation VVS Testing Dynamic Behavior in Executable Software Models! -! Making Cyber-physical Systems Testable! ! Lionel Briand July 18, ISSTA 2016
  • 3. Cyber-Physical Systems •  Increasingly complex and critical systems •  Complex environment •  Complex requirements, e.g., temporal, timing, resource usage •  Dynamic behavior •  Uncertainty, e.g., about the environment •  Testing is expensive and difficult, e.g., HW in the loop 3 Cyber Space Physical Sensing Actuation Information Networks Object Domain Real Space
  • 4. Dynamic Behavior •  Common when dealing with physical entities •  Inputs and outputs are variables evolving over time (signals) •  Properties to be verified consider change over time, for individual or sets of outputs 4 Time-Continuous Magnitude-Continuous time value
  • 5. MiL Testing Hardware-in-the-Loop Stage Model-in-the-Loop Stage Simulink Modeling Generic Functional Model MiL Testing Software-in-the-Loop Stage Code Generation and Integration Software Running on ECU SiL Testing Software Release HiL Testing 5 Both the system and environment are modeled Testing is highly expensive and time consuming
  • 6. Simulink Models - Simulation • Simulation Models • heterogeneous 6 Time-Continuous Simulink Model Hardware Model Network Model • continuous behavior • are used for • algorithm design testing • comparing design options
  • 8. MiL Testing Challenges • Space of test input signals is extremely large. • Model execution, especially when involving physical modeling, is extremely expensive. • Oracles are not simple Boolean properties – they involve analyzing changes in value over time (e.g., signal patterns) and assess levels of risk. 8
  • 9. MiL Testing Challenges (2) • Simulable model of the (physical) environment is required for test automation, but not always available. • Effectiveness of test coverage strategies is questionable, e.g., model coverage. • No equivalence classes on input signal domains, no combinatorial approaches. 9
  • 10. We need novel, automated, and cost-effective MiL testing strategies for CPS 10
  • 12. Advanced Driver Assistance Systems (ADAS) Decisions are made over time based on sensor data 12 Sensors Software
  • 13. Pedestrian Detection System (PeVi) 13 • The PeVi system is a camera-based assistance system providing improved vision
  • 14. Challenges • Simulation/testing is performed using physics-based simulation environments • Challenge 1: A large number of simulation scenarios • more than 2000 configuration variables • Challenge 2: Simulations are computationally expensive 14 weather road sensors human vehicles Simulation Scenario
  • 15. Approach 15 Generation of Test specifications Static [ranges/values/ resolution] Dynamic [ranges/ resolution] (2) test case specification Specification Documents (Simulation Environment and PeVi System) Domain model Requirements model (1)Development of Requirements and domain models
  • 16. Domain Model 16 - intensity: Real SceneLight Dynamic Object 1 - weatherType: Condition Weather - fog - rain - snow - normal «enumeration» Condition Output Trajectory - field of view: Real Camera Sensor RoadSide Object - roadType: RT Road 1 - curved - straight - ramped «enumeration» RT - vc: Real Vehicle - x0: Real - y0: Real - θ: Real - vp: Real Pedestrian - x: Real - y: Real Position 1 * 1 * 1 1 - state: Boolean Collision Parked Cars Trees - simulationTime: Real - timeStep: Real Test Scenario PeVi - state: Boolean Detection 1 1 11 1 1 1 1 «positioned» «uses» 1 1
  • 17. Requirements Model 17 <<trace>> <<trace>> Speed Profile Path 1 1 Slot Path Segment 1..** 1 Trajectory Human 1* trajectory Warning Sensors posx1, posx2 posy1, posy2 AWACar/Motor/ Truck/Bus sensor has has awa 1 1 1 * human appears posx1 posx2 posy1 posy2 The PeVi system shall detect any person located in the Acute Warning Area of a vehicle
  • 18. Test Generation Overview 18 Simulator + PeVi Environment Settings (Roads, weather, vehicle type, etc.) Fixed during Search Manipulated by Search Human Simulator (initial position, speed, orientation) Car Simulator (speed) PeVi Meta-heuristic Search (multi-objective) Generate scenarios Detection or not? Collision or not?
  • 19. Multi-Objective Search • Search algorithm needs objective or fitness functions for guidance • In our case several independent functions can be interesting (heuristics): •  Distance between car and pedestrian •  Distance between pedestrian and AWA •  Time to collision 19 posx1 posx2 posy1 posy2
  • 20. Pareto Front 20 Individual A Pareto dominates individual B if A is at least as good as B in every objective and better than B in at least one objective. Dominated by x O1 O2 Pareto front x •  A multi-objective optimization algorithm must achieve: •  Guide the search towards the global Pareto-Optimal front. •  Maintain solution diversity in the Pareto-Optimal front.
  • 21. MO Search with NSGA-II 21 Non-Dominated Sorting Selection based on rank and crowding distance Size: 2*N Size: 2*N Size: N •  Based on Genetic Algorithm •  N: Archive and population size •  Non-Dominated sorting: Solutions are ranked according to how far they are from the Pareto front, fitness is based on rank. •  Crowding Distance: Individuals in the archive are being spread more evenly across the front (forcing diversity) •  Runs simulations for close to N new solutions
  • 25. Improving Time Performance • Individual simulations take on average more than 1min • It takes 10 hours to run our search-based test generation ! (≈ 500 simulations) è We use surrogate modeling to improve the search •  Goal: Predict fitness based on dynamic variables •  Neural networks 25
  • 26. Multi-Objective Search with Surrogate Models 26 Non-Dominated Sorting Selection based on rank and crowding distance Size: 2*N Size: 2*N Size: N Original Algorithm - Runs simulations for all! new solutions New Algorithm -  Uses prediction values &! prediction errors to run ! simulations only! for the solutions that ! might be selected
  • 27. Results – Surrogate Modeling 27 0.00 0.25 0.50 0.75 1.00 Time (min) HV 50 100 15010 (a) Comparing HV values obtained by NSGAII and NSGAII-SM NSGAII (mean) NSGAII-SM (mean)
  • 28. Results – Worst Runs 28 Time (min) 0.00 0.25 0.50 0.75 1.00 Time (min) HV 50 100 15010 (c) HV values for worst runs of NSGAII, NSGAII-SM and RS RS NSGAII-SM NSGAII
  • 29. Results – Random Search 29 0.00 0.25 0.50 0.75 1.00 Time (min) 50 100 15010 (b) Comparing HV values obtained by RS and NSGAII-SM HV RS (mean) NSGAII-SM (mean) (c) HV values for worst runs of NSGAII,
  • 30. Conclusion •  A general testing approach for ADAS, and many CP systems •  Formulated the generation of critical test cases as a multi-objective search problem using NSGAII algorithm •  Improved the search performance with surrogate models based on neural networks •  Generated some critical scenarios: no detection in the AWA, collision and no detection •  No clear cut oracle – failure to detect may be deemed acceptable risk 30
  • 32. •  Supercharger bypass flap controller ü Flap position is bounded within [0..1] ü Implemented in MATLAB/Simulink ü 34 (sub-)blocks decomposed into 6 abstraction levels ü The simulation time T=2 seconds Supercharger Bypass Flap Supercharger Bypass Flap Flap position = 0 (open) Flap position = 1 (closed) Simple Example 32
  • 33. Initial Desired Value Final Desired Value time time Desired Value Actual Value T/2 T T/2 T Test Input Test Output Plant Model Controller (SUT) Desired value Error Actual value System output+ - MiL Testing of Controllers 33
  • 34. Configurable Controllers at MIL Plant Model + + + ⌃ + - e(t) actual(t) desired(t) ⌃ KP e(t) KD de(t) dt KI R e(t) dt P I D output(t) Time-dependent variables Configuration Parameters 34
  • 35. Requirements and Test Objectives InitialDesired (ID) Desired ValueI (input) Actual Value (output) FinalDesired (FD) time T/2 T Smoothness Responsiveness Stability 35
  • 36. A Search-Based Test Approach Initial Desired (ID) FinalDesired(FD) Worst Case(s)? •  Continuous behavior •  Controller’s behavior can be complex •  Meta-heuristic search in (large) input space: Finding worst case inputs •  Possible because of automated oracle (feedback loop) •  Different worst cases for different requirements •  Worst cases may or may not violate requirements 36
  • 37. Initial Solution HeatMap Diagram 1. Exploration List of Critical RegionsDomain Expert Worst-Case Scenarios + Controller- plant model Objective Functions based on Requirements 2. Single-State Search time Desired Value Actual Value 0 1 2 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Initial Desired Final Desired 37
  • 38. Results •  We found much worse scenarios during MiL testing than our partner had found so far •  These scenarios are also run at the HiL level, where testing is much more expensive: MiL results -> test selection for HiL •  But further research was needed: •  Simulations are expensive •  Configuration parameters 38
  • 39. Final Solution + Controller Model (Simulink) Worst-Case Scenarios List of Critical PartitionsRegression Tree 1.Exploration with Dimensionality Reduction 2.Search with Surrogate Modeling Objective Functions Domain Expert Visualization of the 8-dimension space using regression trees Dimensionality reduction to identify the significant variables (Elementary Effect Analysis) Surrogate modeling to predict the objective function and speed up the search (Machine learning) 39
  • 40. Regression Tree All Points FD>=0.43306 Count Mean Std Dev Count Mean Std Dev FD<0.43306 Count Mean Std Dev ID>=0.64679 Count Mean Std Dev Count Mean Std Dev Cal5>=0.020847 Cal5>0.020847 Count Mean Std Dev Count Mean Std Dev Cal5>=0.014827 Cal5<0.014827 Count Mean Std Dev Count Mean Std Dev 1000 0.007822 0.0049497 ID<0.64679 574 0.0059513 0.0040003 426 0.0103425 0.0049919 373 0.0047594 0.0034346 201 0.0081631 0.0040422 182 0.0134555 0.0052883 244 0.0080206 0.0031751 70 0.0106795 0.0052045 131 0.0068185 0.0023515 40
  • 41. Surrogate Modeling Any supervised learning or statistical technique providing fitness predictions with confidence intervals 1.  Predict higher fitness with high confidence: Move to new position, no simulation 2.  Predict lower fitness with high confidence: Do not move to new position, no simulation 3.  Low confidence in prediction: Simulation Surrogate Model Real Function x Fitness 41
  • 42. ü  Our approach is able to identify more critical violations of the controller requirements that had neither been found by our earlier work nor by manual testing. MiL-Testing different configurations Stability Smoothness Responsiveness MiL-Testing fixed configurations Manual MiL-Testing - -2.2% deviation 24% over/undershoot 20% over/undershoot 5% over/undershoot 170 ms response time 80 ms response time 50 ms response time Results 42
  • 43. Open Loop Controllers On Off CtrlSig •  Mixed discrete-continuous behavior: Simulink stateflows •  No plant model: Much quicker simulation time •  No feedback loop -> no automated oracle •  The main testing cost is the manual analysis of output signals •  Goal: Minimize test suites •  Challenge: Test selection •  Entirely different approach to testing techniques. We consider this criterion flows have complex internal structures uations, making them less amenable to they have rich time-continuous outputs. e following contributions: blem of testing Stateflows with mixed behaviours. We propose two new test a output stability and output continuity cting test inputs that are likely to pro- puts exhibiting instability and disconti- ively. box coverage and the blackbox output iteria to Stateflows, and evaluate their for continuous behaviours. The former raditional state and transition coverage nd the latter is defined based on the re- ss criterion [?]. eness of our newly proposed and the eria by applying them to three Stateflow two industrial and one public domain. RESULT. r. (c) Engaging state of SCC -- mixed discrete-continuous behaviour Disengaging Engaged [disengageReq]/time := 0 [time>5] [time>5] time + +; OnMoving OnSlipping OnCompleted time + +; ctrlSig := f(time) Engaging time + +; ctrlSig := g(time) time + +; ctrlSig := 1.0 [¬(vehspd = 0) time > 2] [(vehspd = 0) time > 3] [time > 4] Figure 1: Supercharge Clutch Controller (SCC) Stateflow. transient states [?], engaging and disengaging, specifying that mov- ing from the engaged to the disengaged state and vice versa takes six milisec. Since this model is simplified, it does not show han- dling of alterations of the clutch state during the transient states. In addition to adding the time variable, we note that the variable 43
  • 44. Selection Strategies Based on Search •  Input signal diversity •  White-box structural coverage •  State Coverage •  Transition Coverage •  Output signal diversity •  Failure-Based selection criteria •  Domain specific failure patterns •  Output Stability •  Output Continuity S3 t S3 t 44
  • 45. ! Output Diversity -- Vector-Based 45 Output Time Output Signal 2 Output Signal 1
  • 46. 46 Output Diversity -- Feature-Based increasing (n) decreasing (n)constant-value (n, v) signal features derivative second derivative sign-derivative (s, n) extreme-derivatives 1-sided discontinuity discontinuity 1-sided continuity with strict local optimum value instant-value (v) constant (n) discontinuity with strict local optimum increasing C A B
  • 47. Failure-based Test Generation 47 Instability Discontinuity 0.0 1.0 2.0 -1.0 -0.5 0.0 0.5 1.0 Time CtrlSigOutput •  Search: Maximizing the likelihood of presence of specific failure patterns in output signals •  Domain-specific failure patterns elicited from engineers 0.0 1.0 2.0 Time 0.0 0.25 0.50 0.75 1.0 CtrlSigOutput
  • 48. Results • The test cases resulting from state/transition coverage algorithms cover the faulty parts of the models • However, they fail to generate output signals that are sufficiently distinct from expectations, hence yielding a low fault revealing rate • Output-based algorithms are much more effective • Existing commercial tools: Not effective at finding faults, not applicable to entire Simulink models 48
  • 50. Commonalities •  Large input spaces •  Combinatorial approaches not applicable •  Coverage? •  Expensive testing: test execution time, oracle analysis effort •  Complex oracle (dynamic behavior) •  Testing is driven by risk •  Search-based solution: Highest risk scenarios 50
  • 51. Differences • Model execution time, e.g., plant or not • Fitness function: Exact or heuristic • Single or multi objectives • Automated oracle or not • Other techniques involved to achieve scalability: regression trees, neural networks, sensitivity analysis, … 51
  • 53. Constraint Solving • Test data generation via constraint solving is not feasible when: • Continuous mathematical models, e.g., differential equations • Library functions in binary code • Complex operations • Constraints capturing dynamic properties (discretized) tend not to be scalable 53
  • 54. Search-Based Testing • Largely focused on unit or function testing, where the goal is to maximize model coverage, check temporal properties (state transitions) … • To address CPS, we need more work on system-level testing, targeting dynamic properties in complex input spaces capturing the behavior of physical entities. 54
  • 55. Future: ! A more general methodological and automation framework, targeting more complex and heterogeneous CPS models 55
  • 56. Future Work •  Shifting the bulk of testing from implemented systems to models of such systems and their environments requires: •  Heterogeneous modeling and co-simulation •  Modeling dynamic properties and risk •  Uncertainty modeling enabling probabilistic test oracles •  Executable model at a proper level of precision for testing purposes •  Use results to make the best out of available time and resources for testing the implemented system with hardware in the loop •  Focus on high risk test scenarios within budget and time constraints 56
  • 57. References •  R. Ben Abdessalem et al., "Testing Advanced Driver Assistance Systems Using Multi-Objective Search and Neural Networks”, ASE 2016 •  R. Matinnejad et al., “Automated Test Suite Generation for Time-continuous Simulink Models“, ICSE 2016 •  R. Matinnejad et al., “Effective Test Suites for Mixed Discrete-Continuous Stateflow Controllers”, ESEC/FSE 2015 (Distinguished paper award) •  R. Matinnejad et al., “MiL Testing of Highly Configurable Continuous Controllers: Scalable Search Using Surrogate Models”, ASE 2014 (Distinguished paper award) •  R. Matinnejad et al., “Search-Based Automated Testing of Continuous Controllers: Framework, Tool Support, and Case Studies”, Information and Software Technology, Elsevier (2014) 57
  • 58. .lusoftware verification & validation VVS Testing Dynamic Behavior in Executable Software Models! ! Lionel Briand ** WE HIRE! ** July 18, ISSTA 2016