SlideShare a Scribd company logo
ESEC/FSE 2015
Bergamo, 02/09/2015
Combining Genetic Algorithms and Constraint Programming
to Support Stress Testing of Task Deadlines
Stefano Di Alesio 1,2
Lionel Briand 2
Shiva Nejati 2
Arnaud Gotlieb 1
1 Certus Centre for Software V&V
Simula Research Laboratory
Norway
2 Interdisciplinary Centre for Reliability, Security and Trust (SnT)
University of Luxembourg
Luxembourg
1 2
We present GA+CP: a search strategy to identify
scenarios likely to violate task deadlines in RTES
Stefano Di Alesio โ€“ 2/21
Problem Statement: Stress Testing of Task
Deadlines in Real Time Embedded Systems (RTES)
Key Results: Efficiency, Effectiveness,
Diversity and Scalability
Proposed Solution: Search for worst-case
schedules with a combined GA+CP strategy
Safety-critical RTES have to meet strict Performance
Requirements to be deemed safe for operation
Real-Time Embedded System (RTES)
Embedded SoftwareSensors Actuators
Operating
Environment
Computing Platform
Stefano Di Alesio โ€“ 3/21
Systematic stress and performance testing is highly
recommended when certifying safety-critical RTES
IEC 61508 deems stress testing as
highly recommended for SIL 3-4
Stress Testing: โ€œTesting in which a system is subjected to [โ€ฆ]
harsh inputs [โ€ฆ] with the intention of breaking itโ€
โ€” Boris Beizer
Arrival times for aperiodic tasks Worst-case scenarios
Stefano Di Alesio โ€“ 4/21
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
RTES usually have concurrent interdependent tasks
executed by a priority-driven preemptive scheduler
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ๐ŸŽ
๐’…๐’ ๐Ÿ๐ŸŽ
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ๐ŸŽ
๐’…๐’ ๐Ÿ๐ŸŽ
๐’‹ ๐ŸŽ
๐’‚๐’• ๐ŸŽ๐ŸŽ
๐’…๐’ ๐ŸŽ๐ŸŽ
๐’“ ๐Ÿ๐Ÿ
๐’‚๐’• ๐Ÿ๐Ÿ๐’‚๐’• ๐ŸŽ๐Ÿ
๐’…๐’ ๐Ÿ๐Ÿ
๐’‚๐’• ๐Ÿ๐Ÿ
๐’„ = ๐Ÿ
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
๐’๐’๐’„๐’Œ
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
๐’๐’๐’„๐’Œ
๐’๐’๐’„๐’Œ
๐’๐’๐’„๐’Œ
Stefano Di Alesio โ€“ 5/21
Tasks can trigger other tasks, or share
computational resources with them
Each task has a deadline (i.e., latest
finishing time) w.r.t. its arrival time
Some task properties depend on the
environment, others are design choices
Periodic Triggered Resource Aperiodic
0
1
2
3
4
5
6
7
8
9
Particular sequences of arrival times may
determine scenarios violating task deadlines
๐’‹ ๐ŸŽ, ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ arrive at ๐’‚๐’• ๐ŸŽ, ๐’‚๐’• ๐Ÿ, ๐’‚๐’• ๐Ÿ and
must finish before ๐’…๐’ ๐ŸŽ, ๐’…๐’ ๐Ÿ, ๐’…๐’ ๐Ÿ
๐’‹ ๐Ÿ can miss its deadline ๐’…๐’ ๐Ÿ
depending on when ๐’‚๐’• ๐Ÿ occurs!
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ
๐’…๐’ ๐Ÿ
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ
๐’…๐’ ๐Ÿ
๐’‹ ๐ŸŽ
๐’‚๐’• ๐ŸŽ
๐’…๐’ ๐ŸŽ
๐’„ = ๐Ÿ
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ
๐’…๐’ ๐Ÿ
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ
๐’…๐’ ๐Ÿ
๐’‹ ๐ŸŽ
๐’‚๐’• ๐ŸŽ
๐’…๐’ ๐ŸŽ
๐’„ = ๐Ÿ
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
A sequence of arrival times which is likely to violate
a task deadline characterizes a stress test case
Stefano Di Alesio โ€“ 6/21
Periodic Triggered Aperiodic Periodic Triggered Aperiodic
Several techniques have been used for solving this
problem, but each has its own drawbacks
Formal Verification Testing
Scheduling
Theory
Model
Checking
Performance
Engineering
Genetic
Algorithms
Constraint
Programming
Background
Queuing
Theory
Fixed-point
Computation
Practice and
Tools
Metaheuristics
Artificial
Intelligence
Key
Features
Theorems
Symbolic
Execution
Dynamic
Analysis
Randomized
Search
Complete
Search
Drawbacks Assumptions
Complex
Modeling
Non
Systematic
Ineffective [1]
Inefficient [1],
Low diversity
Stefano Di Alesio โ€“ 7/21
[1] Di Alesio, S., Nejati, S., Briand, L., and Gotlieb, A. (2013). Stress Testing of Task Deadlines: A Constraint Programming Approach. In
Software Reliability Engineering (ISSRE), 2013 IEEE 24th International Symposium on, pages 158โ€“167. IEEE.
GA is efficient and diverse: quickly generates test
cases involving different interactions between tasks
CP is effective: generates test cases that
are more likely to violate task deadlines
GA + CP
Stefano Di Alesio โ€“ 8/21
[2] Nejati, S., Di Alesio, S., Sabetzadeh, M., Briand, L.: Modeling and Analysis of CPU Usage in Safety-critical Embedded Systems to
Support Stress Testing. In: Model Driven Engineering Languages and Systems (MODELS), pp. 759โ€“775. Springer (2012)
Automated Search
Optimization Problem
Find arrival times that maximize the chance of
violating task deadlines
Solutions
Task arrival times likely to violate
task deadlines
Deadline Misses
Analysis
System Platform
System Design Design and Platform Models
Timing and concurrency information about
the RTES software and computing platform
INPUT
OUTPUT
๐’‚๐’• ๐Ÿ = ๐Ÿ๐Ÿ‘
๐’‚๐’• ๐Ÿ = ๐Ÿ‘๐Ÿ•
โ€ฆ
Stress Test Cases
UML/MARTE Modeling [2]
We cast the generation of stress test cases as an
Optimization Problem over the task arrival times
Genetic Algorithms (GA) +
Constraint Programming (CP)
โ€ข Triggering Relationship:
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“๐’” ๐’‹ ๐ŸŽ, ๐’‹ ๐Ÿ
โ€ข Dependency Relationship:
๐’…๐’†๐’‘๐’†๐’๐’…๐’†๐’๐’• ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ , ๐’…๐’†๐’‘๐’†๐’๐’…๐’†๐’๐’•(๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ)
โ€ข Impacting Relationship:
๐’Š๐’Ž๐’‘๐’‚๐’„๐’•๐’” ๐’‹ ๐Ÿ‘, ๐’‹ ๐Ÿ , ๐’Š๐’Ž๐’‘๐’‚๐’„๐’•๐’” ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ ,
๐‘ฐ ๐’‹ ๐Ÿ = {๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ‘}
โ€ข Observation Interval: ๐‘ป = ๐ŸŽ, ๐Ÿ—
โ€ข Number of cores: ๐’„ = ๐Ÿ
โ€ข Set of Tasks: ๐‘ฑ = {๐’‹ ๐ŸŽ, ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ‘}
โ€ข Priority of Tasks: ๐’‘๐’“๐’Š๐’๐’“๐’Š๐’•๐’š ๐’‹๐’Š = ๐’Š
โ€ข Period of Tasks: ๐’‘๐’†๐’“๐’Š๐’๐’… ๐’‹ ๐Ÿ = ๐Ÿ“
โ€ข Min/Max Inter-arrival time of Tasks:
๐’Ž๐’Š๐’_๐’Š๐’‚ ๐’‹ ๐ŸŽ = ๐Ÿ“, ๐’Ž๐’‚๐’™_๐’Š๐’‚ ๐’‹ ๐ŸŽ = ๐Ÿ๐ŸŽ
โ€ข Duration of Tasks: ๐’…๐’–๐’“๐’‚๐’•๐’Š๐’๐’ ๐’‹ ๐ŸŽ = ๐Ÿ‘
โ€ข Deadline of Tasks: ๐’…๐’†๐’‚๐’…๐’๐’Š๐’๐’† ๐’‹ ๐ŸŽ = ๐Ÿ•
0
1
2
3
4
5
6
7
8
9
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
๐’‹ ๐ŸŽ ๐’‹ ๐Ÿ ๐’‹ ๐Ÿ‘๐’“ ๐Ÿ๐Ÿ ๐’‹ ๐Ÿ
๐’๐’๐’„๐’Œ
๐’๐’๐’„๐’Œ
๐’๐’๐’„๐’Œ
Static Properties depend on the RTES design (are
known), and express constraints on task execution
Stefano Di Alesio โ€“ 9/21
Assumption 1: Time is discretized in time quanta
Assumption 2: The time for switching context between
tasks is negligible w.r.t. a time quantum
๐’„ = ๐Ÿ
Aperiodic Triggered Resource Periodic Aperiodic
Independent Properties
โ€ข Number of Task Executions:
๐’•๐’‚๐’”๐’Œ_๐’†๐’™๐’†๐’„๐’–๐’•๐’Š๐’๐’๐’” ๐’‹ ๐ŸŽ = ๐Ÿ,
๐’•๐’‚๐’”๐’Œ_๐’†๐’™๐’†๐’„๐’–๐’•๐’Š๐’๐’๐’” ๐’‹ ๐Ÿ‘ = ๐Ÿ
โ€ข Arrival time of Aperiodic Task Exec.:
๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐ŸŽ,
๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’† ๐’‹ ๐Ÿ‘, ๐Ÿ = ๐Ÿ•
Dynamic Properties depend on the RTES runtime
behavior, and are not known prior to the analysis
Stefano Di Alesio โ€“ 10/21
Dependent Properties
โ€ข Active time of Task Executions:
๐’‚๐’„๐’•๐’Š๐’—๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ, ๐ŸŽ = ๐ŸŽ, ๐’‚๐’„๐’•๐’Š๐’—๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ, ๐Ÿ = ๐Ÿ
โ€ข Start/End time of Task Executions:
๐’”๐’•๐’‚๐’“๐’• ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐ŸŽ, ๐’†๐’๐’… ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐Ÿ‘
โ€ข Preempted Time Quanta in :
๐’‘๐’“๐’†๐’†๐’Ž๐’‘๐’•๐’†๐’… ๐’‹ ๐ŸŽ, ๐ŸŽ, ๐Ÿ = ๐Ÿ โˆ’ ๐ŸŽ โˆ’ ๐Ÿ = ๐Ÿ
โ€ข System Load: ๐’๐’๐’‚๐’… ๐ŸŽ = ๐Ÿ
โ€ข Deadline Miss of Task Executions:
๐’…๐’†๐’‚๐’…๐’๐’Š๐’๐’†_๐’Ž๐’Š๐’”๐’” ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐Ÿ‘ โˆ’ ๐Ÿ” = โˆ’๐Ÿ‘
Independent Properties characterize stress test cases
Dependent Properties characterize the expected reaction of the
system to the events modeled by the Independent properties
0
1
2
3
4
5
6
7
8
9
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
๐’‹ ๐ŸŽ ๐’‹ ๐Ÿ ๐’‹ ๐Ÿ‘๐’“ ๐Ÿ๐Ÿ ๐’‹ ๐Ÿ
๐’๐’๐’„๐’Œ
๐’๐’๐’„๐’Œ
๐’๐’๐’„๐’Œ
๐’„ = ๐Ÿ
Aperiodic Triggered Resource Periodic Aperiodic
Stefano Di Alesio โ€“ 11/21
Both GA and CP cast the search for arrival times that
violate task deadlines as an optimization problem
[3] L. Briand, Y. Labiche, and M. Shousha, โ€œUsing Genetic Algorithms for Early Schedulability Analysis and Stress Testing in Real-Time
Systemsโ€, Genetic Programming and Evolvable Machines, vol. 7 no. 2, pp. 145-170, 2006
[4] Di Alesio, S., Nejati, S., Briand, L., and Gotlieb, A. (2014). Worst-Case Scheduling of Software Tasks โ€“ A Constraint Optimization
Model to Support Performance Testing. In Principles and Practice of Constraint Programming (CP 2014)
Properly rewards scenarios
with deadline misses [3]
Genetic Algorithms [3] Constraint Programming [4]
Static Properties of Tasks Chromosomes Properties Constants
Dynamic Properties of Tasks Chromosomes Genes Variables
OS Scheduler Behavior Chromosomes Evaluation Constraints
Deadline Misses Requirement Fitness Function Objective Function
Efficient and diverse,
but ineffective
Effective, but inefficient
and non-diverse
๐‘ญ ๐‘ซ๐‘ด =
๐’‹,๐’Œ
๐Ÿ ๐’…๐’†๐’‚๐’…๐’๐’Š๐’๐’†_๐’Ž๐’Š๐’”๐’”(๐’‹,๐’Œ)
Stefano Di Alesio โ€“ 12/21
Therefore, we looked into a way to retain the
practical advantages of GA and CP in isolation
Search Space
๐’™ ๐Ÿ
๐’™ ๐Ÿ
๐’™ ๐Ÿ‘
๐’™ ๐Ÿ’
๐’™ ๐Ÿ“
๐’™ ๐Ÿ”
๐’š ๐Ÿ
๐’š ๐Ÿ
๐’š ๐Ÿ‘
๐’š ๐Ÿ’
๐’š ๐Ÿ“
๐’š ๐Ÿ”
๐’› ๐Ÿ
๐’› ๐Ÿ
๐’› ๐Ÿ‘
๐’› ๐Ÿ’
๐’› ๐Ÿ“
๐’› ๐Ÿ”๐’šโˆ—
๐’™โˆ—
1. GA-step: ๐’™ ๐Ÿ, ๐’š ๐Ÿ, ๐’› ๐Ÿ evolve into ๐’™ ๐Ÿ”, ๐’š ๐Ÿ”, ๐’› ๐Ÿ”
2. CP-step: ๐’™ ๐Ÿ”, ๐’š ๐Ÿ”, ๐’› ๐Ÿ” are optimized into ๐’™โˆ—, ๐’šโˆ—, ๐’›โˆ—
= ๐’›โˆ—
The key idea behind GA+CP is to run complete searches
with CP in the neighborhood of solutions found by GA
2-steps strategy
Stefano Di Alesio โ€“ 13/21
GA+CP only looks in the neighborhood of tasks that
can have an impact on task deadlines in a solution
๐’‹ ๐Ÿ and ๐’‹ ๐Ÿ‘ have an indirect impact on ๐’‹ ๐Ÿ’
because they have higher priority than ๐’‹ ๐Ÿ
๐‘ฑโˆ—
๐’™ = ๐’‹ ๐Ÿ’
๐‘ฐ๐’‹ ๐Ÿ’
๐’™ = ๐’‹ ๐Ÿ , ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ‘, ๐’‹ ๐Ÿ’
๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐ŸŽ
๐Ÿ โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ, ๐ŸŽ) โ‰ค ๐Ÿ + ๐‘ซ
๐Ÿ‘ โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ, ๐ŸŽ) โ‰ค ๐Ÿ‘ + ๐‘ซ
๐Ÿ” โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ‘, ๐ŸŽ) โ‰ค ๐Ÿ” + ๐‘ซ
๐Ÿ‘ โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ’, ๐ŸŽ) โ‰ค ๐Ÿ‘ + ๐‘ซ
๐’™ ๐‘ฎ๐‘จ = ๐ŸŽ , ๐Ÿ , ๐Ÿ‘ , ๐Ÿ” , ๐Ÿ‘ ๐’™ ๐‘ฎ๐‘จ+๐‘ช๐‘ท = ๐ŸŽ , ๐Ÿ , ๐Ÿ‘ , ๐Ÿ’ , ๐Ÿ‘
๐’‹ ๐Ÿ has a direct impact on ๐’‹ ๐Ÿ’
because it depends on ๐’‹ ๐Ÿ’
Dependent tasks Dependent tasks
Stefano Di Alesio โ€“ 14/21
We compared GA+CP with GA and CP in isolation
on 5 systems from safety-critical domains
RQ1 โ€“ Efficiency: time needed
to generate test cases
RQ2 โ€“ Effectiveness: revealing
power of worst-case scenarios
RQ3 โ€“ Diversity: capability to exercise the
system w.r.t. different patterns (i.e., coverage)
Domain
Tasks
Logsize
Periodic Aperiodic
ICS: Ignition Control System Automotive 3 3 446.7
CCS: Cruise Control System Automotive 8 3 551.6
UAV: Unmanned Air Vehicle Avionics 12 4 671.5
GAP: Generic Avionics Platform Avionics 15 8 709.4
HPSS: Herschel-Planck Satellite System Aerospace 23 9 836.6
RQ4 โ€“ Scalability: extent to which the
system size affects the efficiency
Stefano Di Alesio โ€“ 15/21
Metrics
โ€ขComputation time ๐’•(๐’™) of a solution ๐’™ โˆˆ ๐‘ฟ
โ€ขSum ๐’”(๐’™) of time quanta in deadline misses
๐’”โˆ—
๐’™ ๐’”
โˆ—
๐‘ฟ ๐’”
โˆ—
โ€ขNumber ๐’(๐’™) of tasks that miss a deadline
๐’โˆ—
๐’™ ๐’
โˆ—
๐‘ฟ ๐’
โˆ—
โ€ขNumber ๐’Ž(๐’™) of task execs. that miss a deadline
๐’Žโˆ—
๐’™ ๐’Ž
โˆ—
๐‘ฟ ๐’”
โˆ—
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ
๐’…๐’ ๐Ÿ
๐’‹ ๐Ÿ
๐’‚๐’• ๐Ÿ
๐’…๐’ ๐Ÿ
๐’‹ ๐ŸŽ
๐’‚๐’• ๐ŸŽ
๐’…๐’ ๐ŸŽ
๐’„ = ๐Ÿ
๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“
๐‘ฟ = ๐’™
๐’™ = ๐Ÿ , ๐Ÿ‘ , ๐Ÿ’
๐’” = ๐Ÿ
๐’ = ๐Ÿ
๐’Ž = ๐Ÿ
Attributes
โ€ขRQ1 โ€“ Efficiency ๐œผ: computation time of the best solution
๐œผ ๐’” = ๐’• ๐’™ ๐’”
โˆ—
๐œผ ๐’ = ๐’• ๐’™ ๐’
โˆ—
๐œผ ๐’Ž = ๐’• ๐’™ ๐’Ž
โˆ—
โ€ขRQ2 โ€“ Effectiveness ๐œฟ: metric value of the best solution
๐œฟ ๐’” = ๐’”โˆ—
๐œฟ ๐’ = ๐’โˆ—
๐œฟ ๐’Ž = ๐’Žโˆ—
โ€ขRQ3 โ€“ Number ๐‘ต of best solutions
๐‘ต ๐’” = ๐‘ฟ ๐’”
โˆ—
๐‘ต ๐’ = ๐‘ฟ ๐’
โˆ—
๐‘ต ๐’Ž = ๐‘ฟ ๐’Ž
โˆ—
โ€ขRQ3 โ€“ Diversity ๐œน: extent to which solutions exercise the
system in different ways
We formalize aspects of practical interest related to
the Research Questions as metrics and attributes
Periodic Triggered Aperiodic
Stefano Di Alesio โ€“ 16/21
High diversity entails that test cases thoroughly
exercise interactions between task executions
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐ŸŽ
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐ŸŽ
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐ŸŽ
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐ŸŽ
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
๐’‹ ๐ŸŽ๐’‹ ๐ŸŽ
Diversity ๐œน ๐’‰ w.r.t.
execution shift
Diversity ๐œน ๐’“ w.r.t.
execution pattern
Diversity ๐œน ๐’† w.r.t.
number of executions
๐œน ๐’‰ = |๐Ÿ โˆ’ ๐ŸŽ| + |๐Ÿ— โˆ’ ๐Ÿ•| = ๐Ÿ’ ๐œน ๐’“ = |๐Ÿ โˆ’ ๐Ÿ“| + |๐Ÿ’ โˆ’ ๐ŸŽ| = ๐Ÿ– ๐œน ๐’† = ๐Ÿ โˆ’ ๐Ÿ = ๐Ÿ
Stefano Di Alesio โ€“ 17/21
In GA+CP, we instructed CP to terminate the local
search after two hours
The time taken by CP to terminate the local searches was not significant
with respect to the time taken by GA to generate its solutions
Stefano Di Alesio โ€“ 18/21
GA+CP achieves trade-off between the efficiency
and diversity of GA, and the effectiveness of CP
Wilcoxon rank-sum test (GA+CP vs GA)
Wilcoxon signed-rank test (GA+CP vs CP)
๐œผ ๐‘ฎ๐‘จ + ๐‘ช๐‘ท โ‰ˆ ๐œผ ๐‘ฎ๐‘จ > ๐œผ(๐‘ช๐‘ท)
๐œฟ ๐‘ฎ๐‘จ + ๐‘ช๐‘ท โ‰ˆ ๐œฟ ๐‘ช๐‘ท > ๐œฟ(๐‘ฎ๐‘จ)
๐œน ๐‘ฎ๐‘จ + ๐‘ช๐‘ท โ‰ˆ ๐œน ๐‘ฎ๐‘จ > ๐œน(๐‘ช๐‘ท)
Stefano Di Alesio โ€“ 19/21
The effect the system size has over the efficiency of
GA+CP (RQ4 โ€“ Scalability) is similar to that of GA
Our experiment was performed on 5 case studies
โ†’ No quantitative scalability study
In our experiments, ๐‘ซ โ‰ˆ
๐‘ป
๐Ÿ๐ŸŽ๐ŸŽ
proved to yield satisfactory results
โ†’ But in larger case studies ๐‘ซ might also have to be larger
CP (โ€ข) GA (โ– ) GA+CP (โ–ฒ)
ICS CCS UAV GAP HPSS ICS CCS UAV GAP HPSS ICS CCS UAV GAP HPSS
Stefano Di Alesio โ€“ 20/21
Future directions include investigating test suite
reduction strategies and multiobjective optimization
Deadline Misses Response TimeCPU Usage
Multiobjective optimization allows to investigate scenarios
where multiple requirements are close to be violated
Find the minimal set of test cases that retain some relevant property
(e.g.: cover all the task executions predicted to miss a deadline)
Execution 1 Execution 2 Execution 3 Execution 4 Execution 5
Test Case 1 X X
Test Case 2 X X
Test Case 3 X X
Test Case 4 X X
In summary, GA+CP casts stress testing of task
deadlines misses as an optimization problem
GA explores the search space, and CP
exploits the solutions found by GA
The CP search is complete, but only along
โ€œpromisingโ€ directions (impacting tasks)
Stefano Di Alesio โ€“ 21/21
Questions?
This design yields trade-off in efficiency,
diversity (GA) and effectiveness (CP)

More Related Content

What's hot

Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
Lionel Briand
ย 
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
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 VerificationDVClub
ย 
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
Testing the Untestable: Model Testing of Complex Software-Intensive SystemsTesting the Untestable: Model Testing of Complex Software-Intensive Systems
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
Lionel Briand
ย 
Automated Change Impact Analysis between SysML Models of Requirements and Design
Automated Change Impact Analysis between SysML Models of Requirements and DesignAutomated Change Impact Analysis between SysML Models of Requirements and Design
Automated Change Impact Analysis between SysML Models of Requirements and Design
Lionel Briand
ย 
Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...
Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...
Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...
Lionel Briand
ย 
Search-Based Robustness Testing of Data Processing Systems
Search-Based Robustness Testing of Data Processing SystemsSearch-Based Robustness Testing of Data Processing Systems
Search-Based Robustness Testing of Data Processing Systems
Lionel Briand
ย 
A Model-Driven Approach to Trace Checking of Pattern-based Temporal Properties
A Model-Driven Approach to Trace Checking of Pattern-based Temporal PropertiesA Model-Driven Approach to Trace Checking of Pattern-based Temporal Properties
A Model-Driven Approach to Trace Checking of Pattern-based Temporal Properties
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
ย 
Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...
Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...
Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...
Lionel Briand
ย 
Mining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine LearningMining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine Learning
Lionel Briand
ย 
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
Lionel Briand
ย 
Improving Fault Localization for Simulink Models using Search-Based Testing a...
Improving Fault Localization for Simulink Models using Search-Based Testing a...Improving Fault Localization for Simulink Models using Search-Based Testing a...
Improving Fault Localization for Simulink Models using Search-Based Testing a...
Lionel Briand
ย 
Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...
Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...
Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...
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
ย 
Metamorphic Security Testing for Web Systems
Metamorphic Security Testing for Web SystemsMetamorphic Security Testing for Web Systems
Metamorphic Security Testing for Web 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
ย 
Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...
Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...
Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...
Lionel Briand
ย 
ATPG Methods and Algorithms
ATPG Methods and AlgorithmsATPG Methods and Algorithms
ATPG Methods and AlgorithmsDeiptii Das
ย 
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Lionel Briand
ย 

What's hot (20)

Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
ย 
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
ย 
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
ย 
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
ย 
Automated Change Impact Analysis between SysML Models of Requirements and Design
Automated Change Impact Analysis between SysML Models of Requirements and DesignAutomated Change Impact Analysis between SysML Models of Requirements and Design
Automated Change Impact Analysis between SysML Models of Requirements and Design
ย 
Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...
Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...
Applying Product Line Use Case Modeling ! in an Industrial Automotive Embedde...
ย 
Search-Based Robustness Testing of Data Processing Systems
Search-Based Robustness Testing of Data Processing SystemsSearch-Based Robustness Testing of Data Processing Systems
Search-Based Robustness Testing of Data Processing Systems
ย 
A Model-Driven Approach to Trace Checking of Pattern-based Temporal Properties
A Model-Driven Approach to Trace Checking of Pattern-based Temporal PropertiesA Model-Driven Approach to Trace Checking of Pattern-based Temporal Properties
A Model-Driven Approach to Trace Checking of Pattern-based Temporal Properties
ย 
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
ย 
Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...
Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...
Comparing Offline and Online Testing of Deep Neural Networks: An Autonomous C...
ย 
Mining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine LearningMining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine Learning
ย 
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
ย 
Improving Fault Localization for Simulink Models using Search-Based Testing a...
Improving Fault Localization for Simulink Models using Search-Based Testing a...Improving Fault Localization for Simulink Models using Search-Based Testing a...
Improving Fault Localization for Simulink Models using Search-Based Testing a...
ย 
Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...
Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...
Analyzing Natural-Language Requirements: The Not-too-sexy and Yet Curiously D...
ย 
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
ย 
Metamorphic Security Testing for Web Systems
Metamorphic Security Testing for Web SystemsMetamorphic Security Testing for Web Systems
Metamorphic Security Testing for Web 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
ย 
Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...
Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...
Incremental Reconfiguration of Product Specific Use Case Models for Evolving ...
ย 
ATPG Methods and Algorithms
ATPG Methods and AlgorithmsATPG Methods and Algorithms
ATPG Methods and Algorithms
ย 
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
ย 

Similar to Combining genetic algoriths and constraint programming to support stress testing of task deadlines

Worst-Case Scheduling of Software Tasks
Worst-Case Scheduling of Software TasksWorst-Case Scheduling of Software Tasks
Worst-Case Scheduling of Software TasksLionel Briand
ย 
The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?
The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?
The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?
Gan Chun Chet
ย 
But Did You Test It
But Did You Test ItBut Did You Test It
But Did You Test It
Ruth Blakely
ย 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2
Gurpreet singh
ย 
CS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULING
CS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULINGCS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULING
CS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULING
CUO VEERANAN VEERANAN
ย 
International Refereed Journal of Engineering and Science (IRJES)
International Refereed Journal of Engineering and Science (IRJES)International Refereed Journal of Engineering and Science (IRJES)
International Refereed Journal of Engineering and Science (IRJES)
irjes
ย 
Quality Assurance
Quality AssuranceQuality Assurance
Quality Assurance
Kiran Kumar
ย 
Software testing ari force institute of tech.
Software testing ari force institute of tech.Software testing ari force institute of tech.
Software testing ari force institute of tech.Sanjith Ml
ย 
MULTIPROCESSOR AND REAL TIME SCHEDULING.ppt
MULTIPROCESSOR AND REAL TIME SCHEDULING.pptMULTIPROCESSOR AND REAL TIME SCHEDULING.ppt
MULTIPROCESSOR AND REAL TIME SCHEDULING.ppt
CUO VEERANAN VEERANAN
ย 
System Analysis & Design - 2
System Analysis & Design - 2System Analysis & Design - 2
System Analysis & Design - 2
Gagan Deep
ย 
ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2
Chandukar
ย 
Test Estimation
Test Estimation Test Estimation
Test Estimation
SQALab
ย 
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Flink Forward
ย 
ESTIMATING HANDLING TIME OF SOFTWARE DEFECTS
ESTIMATING HANDLING TIME OF SOFTWARE DEFECTSESTIMATING HANDLING TIME OF SOFTWARE DEFECTS
ESTIMATING HANDLING TIME OF SOFTWARE DEFECTS
csandit
ย 
IRJET- A Testbed for Real Time Water Level Control System
IRJET- 	  A Testbed for Real Time Water Level Control SystemIRJET- 	  A Testbed for Real Time Water Level Control System
IRJET- A Testbed for Real Time Water Level Control System
IRJET Journal
ย 
Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2
gregoryg
ย 
ddpg seminar
ddpg seminarddpg seminar
ddpg seminar
๋ฏผ์žฌ ์ •
ย 
Value add: Single User Performance Testing (http://managingperformancetesting...
Value add: Single User Performance Testing (http://managingperformancetesting...Value add: Single User Performance Testing (http://managingperformancetesting...
Value add: Single User Performance Testing (http://managingperformancetesting...
akbollinger
ย 
Software Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleSoftware Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life Cycle
Derek Callaway
ย 

Similar to Combining genetic algoriths and constraint programming to support stress testing of task deadlines (20)

Worst-Case Scheduling of Software Tasks
Worst-Case Scheduling of Software TasksWorst-Case Scheduling of Software Tasks
Worst-Case Scheduling of Software Tasks
ย 
The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?
The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?
The Prediction Of Time Trending Techniques. Is It A Reasonable Estimate?
ย 
But Did You Test It
But Did You Test ItBut Did You Test It
But Did You Test It
ย 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2
ย 
CS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULING
CS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULINGCS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULING
CS 23 Operating System Design Principles_MULTIPROCESSOR AND REAL TIME SCHEDULING
ย 
International Refereed Journal of Engineering and Science (IRJES)
International Refereed Journal of Engineering and Science (IRJES)International Refereed Journal of Engineering and Science (IRJES)
International Refereed Journal of Engineering and Science (IRJES)
ย 
BA371deliv3
BA371deliv3BA371deliv3
BA371deliv3
ย 
Quality Assurance
Quality AssuranceQuality Assurance
Quality Assurance
ย 
Software testing ari force institute of tech.
Software testing ari force institute of tech.Software testing ari force institute of tech.
Software testing ari force institute of tech.
ย 
MULTIPROCESSOR AND REAL TIME SCHEDULING.ppt
MULTIPROCESSOR AND REAL TIME SCHEDULING.pptMULTIPROCESSOR AND REAL TIME SCHEDULING.ppt
MULTIPROCESSOR AND REAL TIME SCHEDULING.ppt
ย 
System Analysis & Design - 2
System Analysis & Design - 2System Analysis & Design - 2
System Analysis & Design - 2
ย 
ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2
ย 
Test Estimation
Test Estimation Test Estimation
Test Estimation
ย 
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
ย 
ESTIMATING HANDLING TIME OF SOFTWARE DEFECTS
ESTIMATING HANDLING TIME OF SOFTWARE DEFECTSESTIMATING HANDLING TIME OF SOFTWARE DEFECTS
ESTIMATING HANDLING TIME OF SOFTWARE DEFECTS
ย 
IRJET- A Testbed for Real Time Water Level Control System
IRJET- 	  A Testbed for Real Time Water Level Control SystemIRJET- 	  A Testbed for Real Time Water Level Control System
IRJET- A Testbed for Real Time Water Level Control System
ย 
Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2
ย 
ddpg seminar
ddpg seminarddpg seminar
ddpg seminar
ย 
Value add: Single User Performance Testing (http://managingperformancetesting...
Value add: Single User Performance Testing (http://managingperformancetesting...Value add: Single User Performance Testing (http://managingperformancetesting...
Value add: Single User Performance Testing (http://managingperformancetesting...
ย 
Software Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleSoftware Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life Cycle
ย 

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

Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
ย 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
ย 
AI Genie Review: Worldโ€™s First Open AI WordPress Website Creator
AI Genie Review: Worldโ€™s First Open AI WordPress Website CreatorAI Genie Review: Worldโ€™s First Open AI WordPress Website Creator
AI Genie Review: Worldโ€™s First Open AI WordPress Website Creator
Google
ย 
Atelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissances
Atelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissancesAtelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissances
Atelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissances
Neo4j
ย 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
ย 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
ย 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
ย 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
ย 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
ย 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
ย 
Nidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, TipsNidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, Tips
vrstrong314
ย 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni Garcรญa
ย 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
ย 
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
ย 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
ย 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
ย 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
ย 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
ย 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
ย 
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
ย 

Recently uploaded (20)

Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
ย 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
ย 
AI Genie Review: Worldโ€™s First Open AI WordPress Website Creator
AI Genie Review: Worldโ€™s First Open AI WordPress Website CreatorAI Genie Review: Worldโ€™s First Open AI WordPress Website Creator
AI Genie Review: Worldโ€™s First Open AI WordPress Website Creator
ย 
Atelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissances
Atelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissancesAtelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissances
Atelier - Innover avec lโ€™IA Gรฉnรฉrative et les graphes de connaissances
ย 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
ย 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
ย 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
ย 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
ย 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
ย 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
ย 
Nidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, TipsNidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, Tips
ย 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
ย 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
ย 
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
ย 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
ย 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
ย 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
ย 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
ย 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
ย 
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
ย 

Combining genetic algoriths and constraint programming to support stress testing of task deadlines

  • 1. ESEC/FSE 2015 Bergamo, 02/09/2015 Combining Genetic Algorithms and Constraint Programming to Support Stress Testing of Task Deadlines Stefano Di Alesio 1,2 Lionel Briand 2 Shiva Nejati 2 Arnaud Gotlieb 1 1 Certus Centre for Software V&V Simula Research Laboratory Norway 2 Interdisciplinary Centre for Reliability, Security and Trust (SnT) University of Luxembourg Luxembourg 1 2
  • 2. We present GA+CP: a search strategy to identify scenarios likely to violate task deadlines in RTES Stefano Di Alesio โ€“ 2/21 Problem Statement: Stress Testing of Task Deadlines in Real Time Embedded Systems (RTES) Key Results: Efficiency, Effectiveness, Diversity and Scalability Proposed Solution: Search for worst-case schedules with a combined GA+CP strategy
  • 3. Safety-critical RTES have to meet strict Performance Requirements to be deemed safe for operation Real-Time Embedded System (RTES) Embedded SoftwareSensors Actuators Operating Environment Computing Platform Stefano Di Alesio โ€“ 3/21
  • 4. Systematic stress and performance testing is highly recommended when certifying safety-critical RTES IEC 61508 deems stress testing as highly recommended for SIL 3-4 Stress Testing: โ€œTesting in which a system is subjected to [โ€ฆ] harsh inputs [โ€ฆ] with the intention of breaking itโ€ โ€” Boris Beizer Arrival times for aperiodic tasks Worst-case scenarios Stefano Di Alesio โ€“ 4/21
  • 5. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 RTES usually have concurrent interdependent tasks executed by a priority-driven preemptive scheduler ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ๐ŸŽ ๐’…๐’ ๐Ÿ๐ŸŽ ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ๐ŸŽ ๐’…๐’ ๐Ÿ๐ŸŽ ๐’‹ ๐ŸŽ ๐’‚๐’• ๐ŸŽ๐ŸŽ ๐’…๐’ ๐ŸŽ๐ŸŽ ๐’“ ๐Ÿ๐Ÿ ๐’‚๐’• ๐Ÿ๐Ÿ๐’‚๐’• ๐ŸŽ๐Ÿ ๐’…๐’ ๐Ÿ๐Ÿ ๐’‚๐’• ๐Ÿ๐Ÿ ๐’„ = ๐Ÿ ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ ๐’๐’๐’„๐’Œ ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ ๐’๐’๐’„๐’Œ ๐’๐’๐’„๐’Œ ๐’๐’๐’„๐’Œ Stefano Di Alesio โ€“ 5/21 Tasks can trigger other tasks, or share computational resources with them Each task has a deadline (i.e., latest finishing time) w.r.t. its arrival time Some task properties depend on the environment, others are design choices Periodic Triggered Resource Aperiodic
  • 6. 0 1 2 3 4 5 6 7 8 9 Particular sequences of arrival times may determine scenarios violating task deadlines ๐’‹ ๐ŸŽ, ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ arrive at ๐’‚๐’• ๐ŸŽ, ๐’‚๐’• ๐Ÿ, ๐’‚๐’• ๐Ÿ and must finish before ๐’…๐’ ๐ŸŽ, ๐’…๐’ ๐Ÿ, ๐’…๐’ ๐Ÿ ๐’‹ ๐Ÿ can miss its deadline ๐’…๐’ ๐Ÿ depending on when ๐’‚๐’• ๐Ÿ occurs! 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ ๐’…๐’ ๐Ÿ ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ ๐’…๐’ ๐Ÿ ๐’‹ ๐ŸŽ ๐’‚๐’• ๐ŸŽ ๐’…๐’ ๐ŸŽ ๐’„ = ๐Ÿ ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ ๐’…๐’ ๐Ÿ ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ ๐’…๐’ ๐Ÿ ๐’‹ ๐ŸŽ ๐’‚๐’• ๐ŸŽ ๐’…๐’ ๐ŸŽ ๐’„ = ๐Ÿ ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ A sequence of arrival times which is likely to violate a task deadline characterizes a stress test case Stefano Di Alesio โ€“ 6/21 Periodic Triggered Aperiodic Periodic Triggered Aperiodic
  • 7. Several techniques have been used for solving this problem, but each has its own drawbacks Formal Verification Testing Scheduling Theory Model Checking Performance Engineering Genetic Algorithms Constraint Programming Background Queuing Theory Fixed-point Computation Practice and Tools Metaheuristics Artificial Intelligence Key Features Theorems Symbolic Execution Dynamic Analysis Randomized Search Complete Search Drawbacks Assumptions Complex Modeling Non Systematic Ineffective [1] Inefficient [1], Low diversity Stefano Di Alesio โ€“ 7/21 [1] Di Alesio, S., Nejati, S., Briand, L., and Gotlieb, A. (2013). Stress Testing of Task Deadlines: A Constraint Programming Approach. In Software Reliability Engineering (ISSRE), 2013 IEEE 24th International Symposium on, pages 158โ€“167. IEEE. GA is efficient and diverse: quickly generates test cases involving different interactions between tasks CP is effective: generates test cases that are more likely to violate task deadlines GA + CP
  • 8. Stefano Di Alesio โ€“ 8/21 [2] Nejati, S., Di Alesio, S., Sabetzadeh, M., Briand, L.: Modeling and Analysis of CPU Usage in Safety-critical Embedded Systems to Support Stress Testing. In: Model Driven Engineering Languages and Systems (MODELS), pp. 759โ€“775. Springer (2012) Automated Search Optimization Problem Find arrival times that maximize the chance of violating task deadlines Solutions Task arrival times likely to violate task deadlines Deadline Misses Analysis System Platform System Design Design and Platform Models Timing and concurrency information about the RTES software and computing platform INPUT OUTPUT ๐’‚๐’• ๐Ÿ = ๐Ÿ๐Ÿ‘ ๐’‚๐’• ๐Ÿ = ๐Ÿ‘๐Ÿ• โ€ฆ Stress Test Cases UML/MARTE Modeling [2] We cast the generation of stress test cases as an Optimization Problem over the task arrival times Genetic Algorithms (GA) + Constraint Programming (CP)
  • 9. โ€ข Triggering Relationship: ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“๐’” ๐’‹ ๐ŸŽ, ๐’‹ ๐Ÿ โ€ข Dependency Relationship: ๐’…๐’†๐’‘๐’†๐’๐’…๐’†๐’๐’• ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ , ๐’…๐’†๐’‘๐’†๐’๐’…๐’†๐’๐’•(๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ) โ€ข Impacting Relationship: ๐’Š๐’Ž๐’‘๐’‚๐’„๐’•๐’” ๐’‹ ๐Ÿ‘, ๐’‹ ๐Ÿ , ๐’Š๐’Ž๐’‘๐’‚๐’„๐’•๐’” ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ , ๐‘ฐ ๐’‹ ๐Ÿ = {๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ‘} โ€ข Observation Interval: ๐‘ป = ๐ŸŽ, ๐Ÿ— โ€ข Number of cores: ๐’„ = ๐Ÿ โ€ข Set of Tasks: ๐‘ฑ = {๐’‹ ๐ŸŽ, ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ‘} โ€ข Priority of Tasks: ๐’‘๐’“๐’Š๐’๐’“๐’Š๐’•๐’š ๐’‹๐’Š = ๐’Š โ€ข Period of Tasks: ๐’‘๐’†๐’“๐’Š๐’๐’… ๐’‹ ๐Ÿ = ๐Ÿ“ โ€ข Min/Max Inter-arrival time of Tasks: ๐’Ž๐’Š๐’_๐’Š๐’‚ ๐’‹ ๐ŸŽ = ๐Ÿ“, ๐’Ž๐’‚๐’™_๐’Š๐’‚ ๐’‹ ๐ŸŽ = ๐Ÿ๐ŸŽ โ€ข Duration of Tasks: ๐’…๐’–๐’“๐’‚๐’•๐’Š๐’๐’ ๐’‹ ๐ŸŽ = ๐Ÿ‘ โ€ข Deadline of Tasks: ๐’…๐’†๐’‚๐’…๐’๐’Š๐’๐’† ๐’‹ ๐ŸŽ = ๐Ÿ• 0 1 2 3 4 5 6 7 8 9 ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ ๐’‹ ๐ŸŽ ๐’‹ ๐Ÿ ๐’‹ ๐Ÿ‘๐’“ ๐Ÿ๐Ÿ ๐’‹ ๐Ÿ ๐’๐’๐’„๐’Œ ๐’๐’๐’„๐’Œ ๐’๐’๐’„๐’Œ Static Properties depend on the RTES design (are known), and express constraints on task execution Stefano Di Alesio โ€“ 9/21 Assumption 1: Time is discretized in time quanta Assumption 2: The time for switching context between tasks is negligible w.r.t. a time quantum ๐’„ = ๐Ÿ Aperiodic Triggered Resource Periodic Aperiodic
  • 10. Independent Properties โ€ข Number of Task Executions: ๐’•๐’‚๐’”๐’Œ_๐’†๐’™๐’†๐’„๐’–๐’•๐’Š๐’๐’๐’” ๐’‹ ๐ŸŽ = ๐Ÿ, ๐’•๐’‚๐’”๐’Œ_๐’†๐’™๐’†๐’„๐’–๐’•๐’Š๐’๐’๐’” ๐’‹ ๐Ÿ‘ = ๐Ÿ โ€ข Arrival time of Aperiodic Task Exec.: ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐ŸŽ, ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’† ๐’‹ ๐Ÿ‘, ๐Ÿ = ๐Ÿ• Dynamic Properties depend on the RTES runtime behavior, and are not known prior to the analysis Stefano Di Alesio โ€“ 10/21 Dependent Properties โ€ข Active time of Task Executions: ๐’‚๐’„๐’•๐’Š๐’—๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ, ๐ŸŽ = ๐ŸŽ, ๐’‚๐’„๐’•๐’Š๐’—๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ, ๐Ÿ = ๐Ÿ โ€ข Start/End time of Task Executions: ๐’”๐’•๐’‚๐’“๐’• ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐ŸŽ, ๐’†๐’๐’… ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐Ÿ‘ โ€ข Preempted Time Quanta in : ๐’‘๐’“๐’†๐’†๐’Ž๐’‘๐’•๐’†๐’… ๐’‹ ๐ŸŽ, ๐ŸŽ, ๐Ÿ = ๐Ÿ โˆ’ ๐ŸŽ โˆ’ ๐Ÿ = ๐Ÿ โ€ข System Load: ๐’๐’๐’‚๐’… ๐ŸŽ = ๐Ÿ โ€ข Deadline Miss of Task Executions: ๐’…๐’†๐’‚๐’…๐’๐’Š๐’๐’†_๐’Ž๐’Š๐’”๐’” ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐Ÿ‘ โˆ’ ๐Ÿ” = โˆ’๐Ÿ‘ Independent Properties characterize stress test cases Dependent Properties characterize the expected reaction of the system to the events modeled by the Independent properties 0 1 2 3 4 5 6 7 8 9 ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ ๐’‹ ๐ŸŽ ๐’‹ ๐Ÿ ๐’‹ ๐Ÿ‘๐’“ ๐Ÿ๐Ÿ ๐’‹ ๐Ÿ ๐’๐’๐’„๐’Œ ๐’๐’๐’„๐’Œ ๐’๐’๐’„๐’Œ ๐’„ = ๐Ÿ Aperiodic Triggered Resource Periodic Aperiodic
  • 11. Stefano Di Alesio โ€“ 11/21 Both GA and CP cast the search for arrival times that violate task deadlines as an optimization problem [3] L. Briand, Y. Labiche, and M. Shousha, โ€œUsing Genetic Algorithms for Early Schedulability Analysis and Stress Testing in Real-Time Systemsโ€, Genetic Programming and Evolvable Machines, vol. 7 no. 2, pp. 145-170, 2006 [4] Di Alesio, S., Nejati, S., Briand, L., and Gotlieb, A. (2014). Worst-Case Scheduling of Software Tasks โ€“ A Constraint Optimization Model to Support Performance Testing. In Principles and Practice of Constraint Programming (CP 2014) Properly rewards scenarios with deadline misses [3] Genetic Algorithms [3] Constraint Programming [4] Static Properties of Tasks Chromosomes Properties Constants Dynamic Properties of Tasks Chromosomes Genes Variables OS Scheduler Behavior Chromosomes Evaluation Constraints Deadline Misses Requirement Fitness Function Objective Function Efficient and diverse, but ineffective Effective, but inefficient and non-diverse ๐‘ญ ๐‘ซ๐‘ด = ๐’‹,๐’Œ ๐Ÿ ๐’…๐’†๐’‚๐’…๐’๐’Š๐’๐’†_๐’Ž๐’Š๐’”๐’”(๐’‹,๐’Œ)
  • 12. Stefano Di Alesio โ€“ 12/21 Therefore, we looked into a way to retain the practical advantages of GA and CP in isolation Search Space ๐’™ ๐Ÿ ๐’™ ๐Ÿ ๐’™ ๐Ÿ‘ ๐’™ ๐Ÿ’ ๐’™ ๐Ÿ“ ๐’™ ๐Ÿ” ๐’š ๐Ÿ ๐’š ๐Ÿ ๐’š ๐Ÿ‘ ๐’š ๐Ÿ’ ๐’š ๐Ÿ“ ๐’š ๐Ÿ” ๐’› ๐Ÿ ๐’› ๐Ÿ ๐’› ๐Ÿ‘ ๐’› ๐Ÿ’ ๐’› ๐Ÿ“ ๐’› ๐Ÿ”๐’šโˆ— ๐’™โˆ— 1. GA-step: ๐’™ ๐Ÿ, ๐’š ๐Ÿ, ๐’› ๐Ÿ evolve into ๐’™ ๐Ÿ”, ๐’š ๐Ÿ”, ๐’› ๐Ÿ” 2. CP-step: ๐’™ ๐Ÿ”, ๐’š ๐Ÿ”, ๐’› ๐Ÿ” are optimized into ๐’™โˆ—, ๐’šโˆ—, ๐’›โˆ— = ๐’›โˆ— The key idea behind GA+CP is to run complete searches with CP in the neighborhood of solutions found by GA 2-steps strategy
  • 13. Stefano Di Alesio โ€“ 13/21 GA+CP only looks in the neighborhood of tasks that can have an impact on task deadlines in a solution ๐’‹ ๐Ÿ and ๐’‹ ๐Ÿ‘ have an indirect impact on ๐’‹ ๐Ÿ’ because they have higher priority than ๐’‹ ๐Ÿ ๐‘ฑโˆ— ๐’™ = ๐’‹ ๐Ÿ’ ๐‘ฐ๐’‹ ๐Ÿ’ ๐’™ = ๐’‹ ๐Ÿ , ๐’‹ ๐Ÿ, ๐’‹ ๐Ÿ‘, ๐’‹ ๐Ÿ’ ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’† ๐’‹ ๐ŸŽ, ๐ŸŽ = ๐ŸŽ ๐Ÿ โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ, ๐ŸŽ) โ‰ค ๐Ÿ + ๐‘ซ ๐Ÿ‘ โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ, ๐ŸŽ) โ‰ค ๐Ÿ‘ + ๐‘ซ ๐Ÿ” โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ‘, ๐ŸŽ) โ‰ค ๐Ÿ” + ๐‘ซ ๐Ÿ‘ โˆ’ ๐‘ซ โ‰ค ๐’‚๐’“๐’“๐’Š๐’—๐’‚๐’_๐’•๐’Š๐’Ž๐’†(๐’‹ ๐Ÿ’, ๐ŸŽ) โ‰ค ๐Ÿ‘ + ๐‘ซ ๐’™ ๐‘ฎ๐‘จ = ๐ŸŽ , ๐Ÿ , ๐Ÿ‘ , ๐Ÿ” , ๐Ÿ‘ ๐’™ ๐‘ฎ๐‘จ+๐‘ช๐‘ท = ๐ŸŽ , ๐Ÿ , ๐Ÿ‘ , ๐Ÿ’ , ๐Ÿ‘ ๐’‹ ๐Ÿ has a direct impact on ๐’‹ ๐Ÿ’ because it depends on ๐’‹ ๐Ÿ’ Dependent tasks Dependent tasks
  • 14. Stefano Di Alesio โ€“ 14/21 We compared GA+CP with GA and CP in isolation on 5 systems from safety-critical domains RQ1 โ€“ Efficiency: time needed to generate test cases RQ2 โ€“ Effectiveness: revealing power of worst-case scenarios RQ3 โ€“ Diversity: capability to exercise the system w.r.t. different patterns (i.e., coverage) Domain Tasks Logsize Periodic Aperiodic ICS: Ignition Control System Automotive 3 3 446.7 CCS: Cruise Control System Automotive 8 3 551.6 UAV: Unmanned Air Vehicle Avionics 12 4 671.5 GAP: Generic Avionics Platform Avionics 15 8 709.4 HPSS: Herschel-Planck Satellite System Aerospace 23 9 836.6 RQ4 โ€“ Scalability: extent to which the system size affects the efficiency
  • 15. Stefano Di Alesio โ€“ 15/21 Metrics โ€ขComputation time ๐’•(๐’™) of a solution ๐’™ โˆˆ ๐‘ฟ โ€ขSum ๐’”(๐’™) of time quanta in deadline misses ๐’”โˆ— ๐’™ ๐’” โˆ— ๐‘ฟ ๐’” โˆ— โ€ขNumber ๐’(๐’™) of tasks that miss a deadline ๐’โˆ— ๐’™ ๐’ โˆ— ๐‘ฟ ๐’ โˆ— โ€ขNumber ๐’Ž(๐’™) of task execs. that miss a deadline ๐’Žโˆ— ๐’™ ๐’Ž โˆ— ๐‘ฟ ๐’” โˆ— 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ ๐’…๐’ ๐Ÿ ๐’‹ ๐Ÿ ๐’‚๐’• ๐Ÿ ๐’…๐’ ๐Ÿ ๐’‹ ๐ŸŽ ๐’‚๐’• ๐ŸŽ ๐’…๐’ ๐ŸŽ ๐’„ = ๐Ÿ ๐’•๐’“๐’Š๐’ˆ๐’ˆ๐’†๐’“ ๐‘ฟ = ๐’™ ๐’™ = ๐Ÿ , ๐Ÿ‘ , ๐Ÿ’ ๐’” = ๐Ÿ ๐’ = ๐Ÿ ๐’Ž = ๐Ÿ Attributes โ€ขRQ1 โ€“ Efficiency ๐œผ: computation time of the best solution ๐œผ ๐’” = ๐’• ๐’™ ๐’” โˆ— ๐œผ ๐’ = ๐’• ๐’™ ๐’ โˆ— ๐œผ ๐’Ž = ๐’• ๐’™ ๐’Ž โˆ— โ€ขRQ2 โ€“ Effectiveness ๐œฟ: metric value of the best solution ๐œฟ ๐’” = ๐’”โˆ— ๐œฟ ๐’ = ๐’โˆ— ๐œฟ ๐’Ž = ๐’Žโˆ— โ€ขRQ3 โ€“ Number ๐‘ต of best solutions ๐‘ต ๐’” = ๐‘ฟ ๐’” โˆ— ๐‘ต ๐’ = ๐‘ฟ ๐’ โˆ— ๐‘ต ๐’Ž = ๐‘ฟ ๐’Ž โˆ— โ€ขRQ3 โ€“ Diversity ๐œน: extent to which solutions exercise the system in different ways We formalize aspects of practical interest related to the Research Questions as metrics and attributes Periodic Triggered Aperiodic
  • 16. Stefano Di Alesio โ€“ 16/21 High diversity entails that test cases thoroughly exercise interactions between task executions 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐ŸŽ 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐ŸŽ 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐ŸŽ 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐ŸŽ 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 ๐’‹ ๐ŸŽ๐’‹ ๐ŸŽ Diversity ๐œน ๐’‰ w.r.t. execution shift Diversity ๐œน ๐’“ w.r.t. execution pattern Diversity ๐œน ๐’† w.r.t. number of executions ๐œน ๐’‰ = |๐Ÿ โˆ’ ๐ŸŽ| + |๐Ÿ— โˆ’ ๐Ÿ•| = ๐Ÿ’ ๐œน ๐’“ = |๐Ÿ โˆ’ ๐Ÿ“| + |๐Ÿ’ โˆ’ ๐ŸŽ| = ๐Ÿ– ๐œน ๐’† = ๐Ÿ โˆ’ ๐Ÿ = ๐Ÿ
  • 17. Stefano Di Alesio โ€“ 17/21 In GA+CP, we instructed CP to terminate the local search after two hours The time taken by CP to terminate the local searches was not significant with respect to the time taken by GA to generate its solutions
  • 18. Stefano Di Alesio โ€“ 18/21 GA+CP achieves trade-off between the efficiency and diversity of GA, and the effectiveness of CP Wilcoxon rank-sum test (GA+CP vs GA) Wilcoxon signed-rank test (GA+CP vs CP) ๐œผ ๐‘ฎ๐‘จ + ๐‘ช๐‘ท โ‰ˆ ๐œผ ๐‘ฎ๐‘จ > ๐œผ(๐‘ช๐‘ท) ๐œฟ ๐‘ฎ๐‘จ + ๐‘ช๐‘ท โ‰ˆ ๐œฟ ๐‘ช๐‘ท > ๐œฟ(๐‘ฎ๐‘จ) ๐œน ๐‘ฎ๐‘จ + ๐‘ช๐‘ท โ‰ˆ ๐œน ๐‘ฎ๐‘จ > ๐œน(๐‘ช๐‘ท)
  • 19. Stefano Di Alesio โ€“ 19/21 The effect the system size has over the efficiency of GA+CP (RQ4 โ€“ Scalability) is similar to that of GA Our experiment was performed on 5 case studies โ†’ No quantitative scalability study In our experiments, ๐‘ซ โ‰ˆ ๐‘ป ๐Ÿ๐ŸŽ๐ŸŽ proved to yield satisfactory results โ†’ But in larger case studies ๐‘ซ might also have to be larger CP (โ€ข) GA (โ– ) GA+CP (โ–ฒ) ICS CCS UAV GAP HPSS ICS CCS UAV GAP HPSS ICS CCS UAV GAP HPSS
  • 20. Stefano Di Alesio โ€“ 20/21 Future directions include investigating test suite reduction strategies and multiobjective optimization Deadline Misses Response TimeCPU Usage Multiobjective optimization allows to investigate scenarios where multiple requirements are close to be violated Find the minimal set of test cases that retain some relevant property (e.g.: cover all the task executions predicted to miss a deadline) Execution 1 Execution 2 Execution 3 Execution 4 Execution 5 Test Case 1 X X Test Case 2 X X Test Case 3 X X Test Case 4 X X
  • 21. In summary, GA+CP casts stress testing of task deadlines misses as an optimization problem GA explores the search space, and CP exploits the solutions found by GA The CP search is complete, but only along โ€œpromisingโ€ directions (impacting tasks) Stefano Di Alesio โ€“ 21/21 Questions? This design yields trade-off in efficiency, diversity (GA) and effectiveness (CP)