SlideShare a Scribd company logo
1 of 26
1
A Parallel Evolutionary Algorithm for
Prioritized Pairwise Testing of
Software Product Lines
Roberto E. Lopez-Herrejon*, Javier Ferrer**, Francisco Chicano**,
Evelyn Nicole Haslinger*, Alexander Egyed*, Enrique Alba**
* Johannes Kepler University Linz, Austria
** University of Malaga, Spain
2
Software Product Lines
 Software Product Lines (SPLs)
Families of software products
• Each product has different feature combinations
Have multiple economical and technological advantages
• Increased software reuse
• Faster time to market
• Better customization
 Fact
SPL typically have a large number of products
3
Software Product Lines Testing
 Challenge
How to test a Software Product Line effectively?
 Important factors to consider
Avoiding repeating tests
Within the economical and technical constraints
 State of the art
Extensive work on SPL testing but using SBSE
techniques remains largely unexplored
4
Our Contributions
 Formalization of prioritization testing scheme
proposed by Johansen et al.
 Implementation with the Parallel Prioritized
product line Genetic Solver (PPGS)
 Comprehensive evaluation and comparison
against greedy approach.
5
Prioritization Motivation
 Key ideas
Each feature combination represents an important
product of the SPL
For each relevant product give a positive integer value
that reflects the priority of the product
• Market importance
• Implementation costs
• ...
6
Feature Models Example
 Feature models are the de facto standard to model
all valid feature combinations of a product line
root
mandatory
optional
inclusive-or
exclusive-or
7
Feature List and Feature Set
 Example Feature List (FL)
Aircraft, Wing, Engine, Materials, High, Shoulder, Low,
Piston, Jet, Metal, Wood, Plastic, Cloth
8
Feature Set Example










 

Selected = {Aircraft, Wing, High, Engine, Piston, Materials, Cloth}
Unselected = {Shoulder, Low, Jet, Metal, Wood, Plastic}
9
Terminology (3)
 Examples of valid feature sets
 Aircraft, Wing, Engine, Materials, High, Shoulder, Low, Piston,
Jet, Metal, Wood, Plastic, Cloth
315 valid
feature
sets
10
Prioritized Product
 Example
pp1 = [p1, 17]
11
Pairwise configuration
pc1=[{Plastic},{Cloth}] pc2=[{High, Wood},{}]
240 pairwise
configurations
12
Weighted Pairwise
Configuration
17
17
15
15
13
13
6
6
pc1=[{Plastic},{Cloth}]
wpc1.w=pp0.w + pp2.w =17 + 15 = 32
weights
13
Prioritized Pairwise Covering
Array
 Example of ppCA
p1, p2, p5
new
products
Challenge: Find a ppCA with the minimum number of feature sets
14
PPGS Algorithm
15
Parameter setting
Parameter Setting
Crossover type one-point
Crossover probability 0.8
Selection strategy binary tournament
Population size 10
Mutation probability 0.1
Termination condition 1000 evaluations
Implemented in JMetal framework
16
Evaluation
 Compared against Prioritized-ICPL (pICPL)
Proposed by Johansen et al. (2012)
Uses data parallelization
 Three different weight priority assignment
methods
 Different percentages of selected products
 Ranging from 5% upto 50%
17
Weight priority assignment
methods
1. Measured values
 16 real SPL examples
 Code and feature model
available
 Non-functional properties
measured (e.g. footprint)
2. Ranked-based values
 Based on how dissimilar
two products are
 More dissimilar higher
chances of covering more
pairs
3. Random values
 [Min..Max] range
18
Experimental corpus
Problem instances G1 = 160 fm X 2 priority assig. X 3 percentages = 960
Problem instances G2 = 59 fm X 2 priority assig. X 3 percentages = 354
Problem instances G3 = 16 fm X 1 priority assig. = 16
Total independent runs = 1330 X 2 algorithms x 30 indep. runs = 79,800
G1 G2 G3 Summary
Number Feature Models 160 59 16 235
Number Products 16-1K 1K-80K 32-≈3E24 16-≈3E24
Number Features 10-56 14-67 6-101 6-101
Weight Priority Assignment
RK Ranked-Based, RD Random,
M Measured
RK,RD RK,RD M
Prioritized Products Percentage 20,30,50 5,10,20 ≈0.0 - 100
Problem Instances 960 354 16 1330
19
Wilcoxon Test (1)
 Confidence level 95%
 We show the mean and standard deviation of number of
products required to cover 50% upto 100% of the total
weighted coverage
 We highlight where the difference is statistically significant
Group G1 – less than 1000 products
PPGS smaller size
pICPL faster
20
Wilcoxon Test (2)
 PPGS yields test suites of smaller sizes
 PPGS performs faster than pICPL
Group G2 – from 1,000 to 80,000 products
21
Wilcoxon Test (3)
Group G3 – Measured Values, 32 to ≈3E24 products
PPGS
smaller size
pICPL
faster
22
Â12 measure
 Â12 is an effect size measure
 i.e. value 0.3 means that an algorithm A would obtain lower values
than algorithm B for a measure M in 70% of the times
 Lower values, PPGS obtains smaller test suites
PPGS obtains smaller size test suites most of the times
pICPL
smaller test
suites
pICPL
smaller test
suites
PPGS best performance
23
Threats to Validity
 Parameter setting
We use a standard values for our parameters
 Experimental corpus
Selection of feature models
• Counteract by selecting a large number of feature
models, different characteristics, and different
provenance
Selection of priority values
• Counteract using 3 different approaches based on
ranked values, random values, and measure values
from actual non-functional properties
24
Related Work
 Extensive work on software testing prioritization
and SBSE but not in SPLs
 Some SPL and SBSE testing examples
Garvin et al. – simulated annealing
Ensan et al. – genetic algorithm with fitness function
based on cyclomatic complexity
Henard et al. – genetic algorithm with fitness function
based on dissimilarity metric
25
Conclusions and Future Work
 Our contributions
Formalization of a prioritization scheme and its
implementation in PPGS
Evaluation and comparison against state-of-the-art
greedy algorithm pICPL
 Planned future work
Evaluate alternative representations of individuals to
obtain better performance
Analyze adaptable stopping conditions for PPGS
based on characteristics of the feature models
26
Acknowledgements
Spanish Ministry of Economy
and Competitiveness,
FEDER

More Related Content

Similar to A parallel evolutionary algorithm for prioritized pairwise testing of software product lines

design of experiments
design of experimentsdesign of experiments
design of experiments
sigma-tau
 
Comparative analysis of classical multi-objective evolutionary algorithms an...
 Comparative analysis of classical multi-objective evolutionary algorithms an... Comparative analysis of classical multi-objective evolutionary algorithms an...
Comparative analysis of classical multi-objective evolutionary algorithms an...
Javier Ferrer, PhD
 

Similar to A parallel evolutionary algorithm for prioritized pairwise testing of software product lines (20)

design of experiments
design of experimentsdesign of experiments
design of experiments
 
Comparative analysis of classical multi-objective evolutionary algorithms an...
 Comparative analysis of classical multi-objective evolutionary algorithms an... Comparative analysis of classical multi-objective evolutionary algorithms an...
Comparative analysis of classical multi-objective evolutionary algorithms an...
 
om
omom
om
 
om
omom
om
 
First principles models as a tool to accelerate innovation in the design and ...
First principles models as a tool to accelerate innovation in the design and ...First principles models as a tool to accelerate innovation in the design and ...
First principles models as a tool to accelerate innovation in the design and ...
 
Aplication of on line data analytics to a continuous process polybetene unit
Aplication of on line data analytics to a continuous process polybetene unitAplication of on line data analytics to a continuous process polybetene unit
Aplication of on line data analytics to a continuous process polybetene unit
 
International Journal of Mathematics and Statistics Invention (IJMSI)
International Journal of Mathematics and Statistics Invention (IJMSI)International Journal of Mathematics and Statistics Invention (IJMSI)
International Journal of Mathematics and Statistics Invention (IJMSI)
 
Design of experiments
Design of experimentsDesign of experiments
Design of experiments
 
Bd36334337
Bd36334337Bd36334337
Bd36334337
 
design of experiments.ppt
design of experiments.pptdesign of experiments.ppt
design of experiments.ppt
 
The influence of data curation on QSAR Modeling – Presented at American Chemi...
The influence of data curation on QSAR Modeling – Presented at American Chemi...The influence of data curation on QSAR Modeling – Presented at American Chemi...
The influence of data curation on QSAR Modeling – Presented at American Chemi...
 
Search-based testing of procedural programs:iterative single-target or multi-...
Search-based testing of procedural programs:iterative single-target or multi-...Search-based testing of procedural programs:iterative single-target or multi-...
Search-based testing of procedural programs:iterative single-target or multi-...
 
Taguchi method
Taguchi methodTaguchi method
Taguchi method
 
Model based test case prioritization using neural network classification
Model based test case prioritization using neural network classificationModel based test case prioritization using neural network classification
Model based test case prioritization using neural network classification
 
Process capability
Process capabilityProcess capability
Process capability
 
Online learning in estimation of distribution algorithms for dynamic environm...
Online learning in estimation of distribution algorithms for dynamic environm...Online learning in estimation of distribution algorithms for dynamic environm...
Online learning in estimation of distribution algorithms for dynamic environm...
 
Introduction to Design of Experiments by Teck Nam Ang (University of Malaya)
Introduction to Design of Experiments by Teck Nam Ang (University of Malaya)Introduction to Design of Experiments by Teck Nam Ang (University of Malaya)
Introduction to Design of Experiments by Teck Nam Ang (University of Malaya)
 
Presentation
PresentationPresentation
Presentation
 
Six sigma11
Six sigma11Six sigma11
Six sigma11
 
Prediction Of Bioactivity From Chemical Structure
Prediction Of Bioactivity From Chemical StructurePrediction Of Bioactivity From Chemical Structure
Prediction Of Bioactivity From Chemical Structure
 

Recently uploaded

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Recently uploaded (20)

Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 

A parallel evolutionary algorithm for prioritized pairwise testing of software product lines

  • 1. 1 A Parallel Evolutionary Algorithm for Prioritized Pairwise Testing of Software Product Lines Roberto E. Lopez-Herrejon*, Javier Ferrer**, Francisco Chicano**, Evelyn Nicole Haslinger*, Alexander Egyed*, Enrique Alba** * Johannes Kepler University Linz, Austria ** University of Malaga, Spain
  • 2. 2 Software Product Lines  Software Product Lines (SPLs) Families of software products • Each product has different feature combinations Have multiple economical and technological advantages • Increased software reuse • Faster time to market • Better customization  Fact SPL typically have a large number of products
  • 3. 3 Software Product Lines Testing  Challenge How to test a Software Product Line effectively?  Important factors to consider Avoiding repeating tests Within the economical and technical constraints  State of the art Extensive work on SPL testing but using SBSE techniques remains largely unexplored
  • 4. 4 Our Contributions  Formalization of prioritization testing scheme proposed by Johansen et al.  Implementation with the Parallel Prioritized product line Genetic Solver (PPGS)  Comprehensive evaluation and comparison against greedy approach.
  • 5. 5 Prioritization Motivation  Key ideas Each feature combination represents an important product of the SPL For each relevant product give a positive integer value that reflects the priority of the product • Market importance • Implementation costs • ...
  • 6. 6 Feature Models Example  Feature models are the de facto standard to model all valid feature combinations of a product line root mandatory optional inclusive-or exclusive-or
  • 7. 7 Feature List and Feature Set  Example Feature List (FL) Aircraft, Wing, Engine, Materials, High, Shoulder, Low, Piston, Jet, Metal, Wood, Plastic, Cloth
  • 8. 8 Feature Set Example              Selected = {Aircraft, Wing, High, Engine, Piston, Materials, Cloth} Unselected = {Shoulder, Low, Jet, Metal, Wood, Plastic}
  • 9. 9 Terminology (3)  Examples of valid feature sets  Aircraft, Wing, Engine, Materials, High, Shoulder, Low, Piston, Jet, Metal, Wood, Plastic, Cloth 315 valid feature sets
  • 11. 11 Pairwise configuration pc1=[{Plastic},{Cloth}] pc2=[{High, Wood},{}] 240 pairwise configurations
  • 13. 13 Prioritized Pairwise Covering Array  Example of ppCA p1, p2, p5 new products Challenge: Find a ppCA with the minimum number of feature sets
  • 15. 15 Parameter setting Parameter Setting Crossover type one-point Crossover probability 0.8 Selection strategy binary tournament Population size 10 Mutation probability 0.1 Termination condition 1000 evaluations Implemented in JMetal framework
  • 16. 16 Evaluation  Compared against Prioritized-ICPL (pICPL) Proposed by Johansen et al. (2012) Uses data parallelization  Three different weight priority assignment methods  Different percentages of selected products  Ranging from 5% upto 50%
  • 17. 17 Weight priority assignment methods 1. Measured values  16 real SPL examples  Code and feature model available  Non-functional properties measured (e.g. footprint) 2. Ranked-based values  Based on how dissimilar two products are  More dissimilar higher chances of covering more pairs 3. Random values  [Min..Max] range
  • 18. 18 Experimental corpus Problem instances G1 = 160 fm X 2 priority assig. X 3 percentages = 960 Problem instances G2 = 59 fm X 2 priority assig. X 3 percentages = 354 Problem instances G3 = 16 fm X 1 priority assig. = 16 Total independent runs = 1330 X 2 algorithms x 30 indep. runs = 79,800 G1 G2 G3 Summary Number Feature Models 160 59 16 235 Number Products 16-1K 1K-80K 32-≈3E24 16-≈3E24 Number Features 10-56 14-67 6-101 6-101 Weight Priority Assignment RK Ranked-Based, RD Random, M Measured RK,RD RK,RD M Prioritized Products Percentage 20,30,50 5,10,20 ≈0.0 - 100 Problem Instances 960 354 16 1330
  • 19. 19 Wilcoxon Test (1)  Confidence level 95%  We show the mean and standard deviation of number of products required to cover 50% upto 100% of the total weighted coverage  We highlight where the difference is statistically significant Group G1 – less than 1000 products PPGS smaller size pICPL faster
  • 20. 20 Wilcoxon Test (2)  PPGS yields test suites of smaller sizes  PPGS performs faster than pICPL Group G2 – from 1,000 to 80,000 products
  • 21. 21 Wilcoxon Test (3) Group G3 – Measured Values, 32 to ≈3E24 products PPGS smaller size pICPL faster
  • 22. 22 Â12 measure  Â12 is an effect size measure  i.e. value 0.3 means that an algorithm A would obtain lower values than algorithm B for a measure M in 70% of the times  Lower values, PPGS obtains smaller test suites PPGS obtains smaller size test suites most of the times pICPL smaller test suites pICPL smaller test suites PPGS best performance
  • 23. 23 Threats to Validity  Parameter setting We use a standard values for our parameters  Experimental corpus Selection of feature models • Counteract by selecting a large number of feature models, different characteristics, and different provenance Selection of priority values • Counteract using 3 different approaches based on ranked values, random values, and measure values from actual non-functional properties
  • 24. 24 Related Work  Extensive work on software testing prioritization and SBSE but not in SPLs  Some SPL and SBSE testing examples Garvin et al. – simulated annealing Ensan et al. – genetic algorithm with fitness function based on cyclomatic complexity Henard et al. – genetic algorithm with fitness function based on dissimilarity metric
  • 25. 25 Conclusions and Future Work  Our contributions Formalization of a prioritization scheme and its implementation in PPGS Evaluation and comparison against state-of-the-art greedy algorithm pICPL  Planned future work Evaluate alternative representations of individuals to obtain better performance Analyze adaptable stopping conditions for PPGS based on characteristics of the feature models
  • 26. 26 Acknowledgements Spanish Ministry of Economy and Competitiveness, FEDER