SlideShare a Scribd company logo
On the Value of User Preferences in
Search-Based Software Engineering:
A Case Study in Software Product Lines
Abdel Salam Sayyad
Tim Menzies
Hany Ammar
West Virginia University, USA
International Conference on Software Engineering
May 23rd, 2013
Sound bites
Feature-based SE
Representation and validation: important
Multi-objective Configuration: interesting
2
Stop tinkering with small stuff!
Minor improvements welcome…
… but not insightful!
Enough with the usual suspects:
NSGA-II, SPEA2, etc.
If user preferences matter
Then the best optimizer understands preferences the best
Roadmap
① Feature-based SE
② Evolutionary Algorithms
③ Experiment & Results
④ Conclusion
Roadmap
① Feature-based SE
② Evolutionary Algorithms
③ Experiment & Results
④ Conclusion
Welcome to the new world!
Old world:
product-based SE
e.g. Microsoft office
New world:
app-based SE
e.g. Apple app store
5
The times, they are a changin’
Old world: product-based SE
e.g. Microsoft office
6
• Vendors tried to retain their
user base via some
complete ecologies
• One software solution for
all user needs (e.g.
Microsoft Office).
• Large, complex, software
platforms,
– very slow to change.
The times, they are a changin’
New worlde: app-based SE
• Smart phones and tablet-
based software
• Users choosing many
numbers of small apps from
different vendors,
– each performing a specific
small task.
• Vendors must quickly and
continually reconfigure apps
– To retain and extend their
customer base.
7
e.g. Apple app store
Feature–oriented domain analysis [Kang 1990]
• Feature models = a
lightweight method for
defining a space of options
• De facto standard for
modeling variability
8
Cross-Tree Constraints
Cross-Tree Constraints
What are the user preferences?
• Multi-objective optimization = navigating competing concerns
– Success criteria = choose features that achieve the user preferences!
• Suppose each feature had the following metrics:
1. Boolean USED_BEFORE?
2. Integer DEFECTS
3. Real COST
• Show me the space of “best options” according to the objectives:
1. That satisfies most domain constraints (0 ≤ #violations ≤ 100%)
2. That offers most features
3. That we have used most before
4. Using features with least known defects
5. Using features with least cost
9
Diving deeper
• Much prior work in SBSE (*)
--------------------------
(*) Sayyad and Ammar, RAISE’13
10
explored tiny objective spaces
(2 or 3 objectives)
Used NSGA-II
Didn’t state why!
Roadmap
① Feature-based SE
② Evolutionary Algorithms
③ Experiment & Results
④ Conclusion
Multi-objective Optimization
12
Higher-level
Decision Making
The Pareto Front
The Chosen Solution
Survival of the fittest
(according to NSGA-II [Deb et al. 2002])
13
Boolean dominance (x Dominates y, or does not):
- In no objective is x worse than y
- In at least one objective, x is better than y Crowd
pruning
Tinkering with small stuff…
ssNSGA-II: steady state [Durillo ‘09+
14
Other Algorithms: Ranking criteria:
NSGA-II
SPEA2 *Zitzler ‘01+ More focus on diversity, with a
new diversity measure.
FastPGA [Eskandari ‘07+
Borrowed criteria from
NSGA-II, and diversity
measure from SPEA2
MOCell (Cellular GA) [Nebro ‘09] NSGA-II
NSGA-IIMOCHC (re-designed selection, crossover,
and mutation) [Nebro ‘07+
Boolean Dominance
Boolean Dominance
Boolean Dominance
Boolean Dominance
Boolean Dominance
Indicator-Based Evolutionary
Algorithm (IBEA) [Zitzler and Kunzli ‘04+
15
1) For {old generation + new generation} do
– Add up every individual’s amount of dominance with
respect to everyone else
– Sort all instances by F
– Delete worst, recalculate, delete worst, recalculate, …
2) Then, standard GA (cross-over, mutation) on the
survivors  Create a new generation  Back to 1.
Continuous Dominance
An important property of IBEA
• Allows solutions to crowd close to the zero point.
16
• In our problem: Allows many solutions that achieve
violations equal or close to zero… then allows
optimization in the other 4 dimensions…
• Crowd pruning can hurt!
• Using real-valued benchmark functions, Wagner et al.
(EMO 2007) confirm that the performance of NSGA-II and
SPEA2 rapidly deteriorates with increasing dimension,
whereas indicator-based algorithms (e.g. IBEA) cope very
well with high-dimensional objective spaces.
Roadmap
① Feature-based SE
② Evolutionary Algorithms
③ Experiment & Results
④ Conclusion
2 Case studies from SPLOT
18
Cross-tree
constraints
Algorithms
• 7 Algorithms from jMetal: http://jmetal.sourceforge.net/
– IBEA, NSGA-II, ssNSGA-II, SPEA2, FastPGA, MOCell, MOCHC.
19
• Features are bits in the “product” string.
• Same settings for all algorithms.
4 studies:
Two, three, four, five- objectives
20
The five objectives:
1. satisfy most domain constraints (0 ≤ violations ≤ 100%)
2. offer most features
3. most used before
4. least known defects
5. least cost
Two objectives = 1,2
Three objectives = 1,2,5
Four objectives = 1,2,3,5
Five objectives = 1,2,3,4,5
21
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
22Comment 1: all about the same for the 2-objective problem
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
23Comment 2: IBEA is better on HV.
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
24Comment 3: IBEA has no spread operators, but gets best spread
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
25Comment 4: All the non-IBEA algorithms are very similar
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
26Comment 5: IBEA does much, much better on constraints
HV = hypervolume of dominated region
Spread = coverage of frontier
% correct = % of solutions that fully satisfy the constraints
27Comment 6: IBEA’s advantage is more striking with E-Shop
Why is this interesting?
Other Algorithms
• The usual suspects are widely,
uncritically used in many
applications
– E.g. especially NSGA-II and SPEA2
• Focused on internal algorithmic
tricks
– Techniques for
• improving spread
• Improving HV
• Avoid overlaps in cross-over of
dominated space
• etc.
• And the net effect of all those
differences?
– Not much
IBEA
• Rather stupid on those
internal tricks
– Just does same old crossover
mutate GA
– Plus: aggressive exploration
of the preference space
• And the net effect of all
those differences
– Better spreads
– Better HV
– Fewer constraint violations
28
Conclusion:
preference is power
Roadmap
① Feature-based SE
② Evolutionary Algorithms
③ Experiment & Results
④ Conclusion
Current Achievements and Future Work
• ICSE’13: initial results proving IBEA’s advantage.
• CMSBSE’13: IBEA runtime improvement.
• (Under review):
– mutation operator tailored to feature tree. 2-3
orders-of-magnitude improvement in runtime.
– Scalability to 6000+ real feature model using
innovative “population seeding” method.
30
• Future Work:
– Further scalability.
– Interactive configuration.
Sound bites
The new age of the app
In this new world: use FODA
(feature-oriented domain analysis)
31
Stop tinkering with small stuff
Many MEOAs have strikingly
similar performance
Enough with the usual suspects:
NSGA-II, SPEA2, etc.
Too much uncritical application of these algorithms
If user preferences matter
Then the best optimizer understands preferences the best
IBEA: aggressive preference exploration
Acknowledgment
This research work was
funded by the Qatar
National Research Fund
(QNRF) under the National
Priorities Research Program
(NPRP)
Grant No.: 09-1205-2-470.

More Related Content

What's hot

Midterm Exam Solutions Fall03
Midterm Exam Solutions Fall03Midterm Exam Solutions Fall03
Midterm Exam Solutions Fall03Radu_Negulescu
 
Can we predict the quality of spectrum-based fault localization?
Can we predict the quality of spectrum-based fault localization?Can we predict the quality of spectrum-based fault localization?
Can we predict the quality of spectrum-based fault localization?
Lionel Briand
 
Final Exam Solutions Fall02
Final Exam Solutions Fall02Final Exam Solutions Fall02
Final Exam Solutions Fall02Radu_Negulescu
 
Midterm Exam Solutions Fall02
Midterm Exam Solutions Fall02Midterm Exam Solutions Fall02
Midterm Exam Solutions Fall02Radu_Negulescu
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniques
kamal
 
Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...
Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...
Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...
Feng Zhang
 
Defect Prediction Over Software Life Cycle in Automotive Domain
Defect Prediction Over Software Life Cycle   in Automotive DomainDefect Prediction Over Software Life Cycle   in Automotive Domain
Defect Prediction Over Software Life Cycle in Automotive Domain
RAKESH RANA
 
Estimation techniques and risk management
Estimation techniques and risk managementEstimation techniques and risk management
Estimation techniques and risk management
Purushottam Basnet
 
Data collection for software defect prediction
Data collection for software defect predictionData collection for software defect prediction
Data collection for software defect prediction
AmmAr mobark
 
ASIC SoC Verification Challenges and Methodologies
ASIC SoC Verification Challenges and MethodologiesASIC SoC Verification Challenges and Methodologies
ASIC SoC Verification Challenges and Methodologies
Dr. Shivananda Koteshwar
 

What's hot (10)

Midterm Exam Solutions Fall03
Midterm Exam Solutions Fall03Midterm Exam Solutions Fall03
Midterm Exam Solutions Fall03
 
Can we predict the quality of spectrum-based fault localization?
Can we predict the quality of spectrum-based fault localization?Can we predict the quality of spectrum-based fault localization?
Can we predict the quality of spectrum-based fault localization?
 
Final Exam Solutions Fall02
Final Exam Solutions Fall02Final Exam Solutions Fall02
Final Exam Solutions Fall02
 
Midterm Exam Solutions Fall02
Midterm Exam Solutions Fall02Midterm Exam Solutions Fall02
Midterm Exam Solutions Fall02
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniques
 
Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...
Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...
Cross-project Defect Prediction Using A Connectivity-based Unsupervised Class...
 
Defect Prediction Over Software Life Cycle in Automotive Domain
Defect Prediction Over Software Life Cycle   in Automotive DomainDefect Prediction Over Software Life Cycle   in Automotive Domain
Defect Prediction Over Software Life Cycle in Automotive Domain
 
Estimation techniques and risk management
Estimation techniques and risk managementEstimation techniques and risk management
Estimation techniques and risk management
 
Data collection for software defect prediction
Data collection for software defect predictionData collection for software defect prediction
Data collection for software defect prediction
 
ASIC SoC Verification Challenges and Methodologies
ASIC SoC Verification Challenges and MethodologiesASIC SoC Verification Challenges and Methodologies
ASIC SoC Verification Challenges and Methodologies
 

Similar to On the Value of User Preferences in Search-Based Software Engineering

It Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairIt Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
It Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
Claire Le Goues
 
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
Abdel Salam Sayyad
 
In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?
CS, NcState
 
Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...
Lionel Briand
 
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISONSTATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
ijseajournal
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUCS, NcState
 
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and TacticalTLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
Anna Royzman
 
midterm_fa07.pdf
midterm_fa07.pdfmidterm_fa07.pdf
midterm_fa07.pdf
RavinderKSingla
 
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-...
Vrije Universiteit Brussel
 
Advanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise WebinarAdvanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise Webinar
SigOpt
 
Effort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling LanguagesEffort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling Languages
Juha-Pekka Tolvanen
 
Continuous test suite failure prediction
Continuous test suite failure predictionContinuous test suite failure prediction
Continuous test suite failure prediction
ssuser94f898
 
The art of project estimation
The art of project estimationThe art of project estimation
The art of project estimation
Return on Intelligence
 
SC17 Panel: Energy Efficiency Gains From HPC Software
SC17 Panel: Energy Efficiency Gains From HPC SoftwareSC17 Panel: Energy Efficiency Gains From HPC Software
SC17 Panel: Energy Efficiency Gains From HPC Software
inside-BigData.com
 
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
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
 
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance BugsNavigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
Sebastian Baltes
 
Strategies oled optimization jmp 2016 09-19
Strategies oled optimization jmp 2016 09-19Strategies oled optimization jmp 2016 09-19
Strategies oled optimization jmp 2016 09-19
David Lee
 
Strategies for Optimization of an OLED Device
Strategies for Optimization of an OLED DeviceStrategies for Optimization of an OLED Device
Strategies for Optimization of an OLED Device
David Lee
 
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
 

Similar to On the Value of User Preferences in Search-Based Software Engineering (20)

It Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairIt Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
It Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
 
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
On Parameter Tuning in Search-Based Software Engineering: A Replicated Empiri...
 
In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?
 
Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...Scalable Software Testing and Verification of Non-Functional Properties throu...
Scalable Software Testing and Verification of Non-Functional Properties throu...
 
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISONSTATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSU
 
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and TacticalTLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
 
midterm_fa07.pdf
midterm_fa07.pdfmidterm_fa07.pdf
midterm_fa07.pdf
 
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-...
 
Advanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise WebinarAdvanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise Webinar
 
Effort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling LanguagesEffort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling Languages
 
Continuous test suite failure prediction
Continuous test suite failure predictionContinuous test suite failure prediction
Continuous test suite failure prediction
 
The art of project estimation
The art of project estimationThe art of project estimation
The art of project estimation
 
SC17 Panel: Energy Efficiency Gains From HPC Software
SC17 Panel: Energy Efficiency Gains From HPC SoftwareSC17 Panel: Energy Efficiency Gains From HPC Software
SC17 Panel: Energy Efficiency Gains From HPC Software
 
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
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance BugsNavigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
 
Strategies oled optimization jmp 2016 09-19
Strategies oled optimization jmp 2016 09-19Strategies oled optimization jmp 2016 09-19
Strategies oled optimization jmp 2016 09-19
 
Strategies for Optimization of an OLED Device
Strategies for Optimization of an OLED DeviceStrategies for Optimization of an OLED Device
Strategies for Optimization of an OLED Device
 
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
 

More from Abdel Salam Sayyad

Slide set 5 workplace rights
Slide set 5  workplace rightsSlide set 5  workplace rights
Slide set 5 workplace rights
Abdel Salam Sayyad
 
Slide set 4 safety and risk
Slide set 4  safety and riskSlide set 4  safety and risk
Slide set 4 safety and risk
Abdel Salam Sayyad
 
Slide set 3 honesty, academic ethics
Slide set 3  honesty, academic ethicsSlide set 3  honesty, academic ethics
Slide set 3 honesty, academic ethics
Abdel Salam Sayyad
 
Slide set 2 moral dilemmas
Slide set 2  moral dilemmasSlide set 2  moral dilemmas
Slide set 2 moral dilemmas
Abdel Salam Sayyad
 
Slide set 1 intro to professional ethics
Slide set 1  intro to professional ethicsSlide set 1  intro to professional ethics
Slide set 1 intro to professional ethics
Abdel Salam Sayyad
 
Teaching methods - Active learning
Teaching methods - Active learningTeaching methods - Active learning
Teaching methods - Active learning
Abdel Salam Sayyad
 
Software Engineering Code of Ethics
Software Engineering Code of EthicsSoftware Engineering Code of Ethics
Software Engineering Code of Ethics
Abdel Salam Sayyad
 
Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...
Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...
Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...
Abdel Salam Sayyad
 
Of Machines and Men: AI and Decision Making
Of Machines and Men: AI and Decision MakingOf Machines and Men: AI and Decision Making
Of Machines and Men: AI and Decision MakingAbdel Salam Sayyad
 
Scalable Product Line Configuration - ASE 2013 Palo Alto, CA
Scalable Product Line Configuration - ASE 2013 Palo Alto, CAScalable Product Line Configuration - ASE 2013 Palo Alto, CA
Scalable Product Line Configuration - ASE 2013 Palo Alto, CA
Abdel Salam Sayyad
 
Guest Lecture 1/30/2013
Guest Lecture 1/30/2013Guest Lecture 1/30/2013
Guest Lecture 1/30/2013
Abdel Salam Sayyad
 
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature SurveyPareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Abdel Salam Sayyad
 

More from Abdel Salam Sayyad (13)

Slide set 5 workplace rights
Slide set 5  workplace rightsSlide set 5  workplace rights
Slide set 5 workplace rights
 
Slide set 4 safety and risk
Slide set 4  safety and riskSlide set 4  safety and risk
Slide set 4 safety and risk
 
Slide set 3 honesty, academic ethics
Slide set 3  honesty, academic ethicsSlide set 3  honesty, academic ethics
Slide set 3 honesty, academic ethics
 
Slide set 2 moral dilemmas
Slide set 2  moral dilemmasSlide set 2  moral dilemmas
Slide set 2 moral dilemmas
 
Slide set 1 intro to professional ethics
Slide set 1  intro to professional ethicsSlide set 1  intro to professional ethics
Slide set 1 intro to professional ethics
 
Teaching methods - Active learning
Teaching methods - Active learningTeaching methods - Active learning
Teaching methods - Active learning
 
Software Engineering Code of Ethics
Software Engineering Code of EthicsSoftware Engineering Code of Ethics
Software Engineering Code of Ethics
 
Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...
Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...
Evolutionary Search Techniques with Strong Heuristics for Multi-Objective Fea...
 
Of Machines and Men: AI and Decision Making
Of Machines and Men: AI and Decision MakingOf Machines and Men: AI and Decision Making
Of Machines and Men: AI and Decision Making
 
Scalable Product Line Configuration - ASE 2013 Palo Alto, CA
Scalable Product Line Configuration - ASE 2013 Palo Alto, CAScalable Product Line Configuration - ASE 2013 Palo Alto, CA
Scalable Product Line Configuration - ASE 2013 Palo Alto, CA
 
My summary 6-24-2013
My summary 6-24-2013My summary 6-24-2013
My summary 6-24-2013
 
Guest Lecture 1/30/2013
Guest Lecture 1/30/2013Guest Lecture 1/30/2013
Guest Lecture 1/30/2013
 
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature SurveyPareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
 

Recently uploaded

How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
RitikBhardwaj56
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
goswamiyash170123
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
Landownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptxLandownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptx
JezreelCabil2
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
Celine George
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
Krisztián Száraz
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
AyyanKhan40
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
ArianaBusciglio
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 

Recently uploaded (20)

How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
Landownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptxLandownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptx
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 

On the Value of User Preferences in Search-Based Software Engineering

  • 1. On the Value of User Preferences in Search-Based Software Engineering: A Case Study in Software Product Lines Abdel Salam Sayyad Tim Menzies Hany Ammar West Virginia University, USA International Conference on Software Engineering May 23rd, 2013
  • 2. Sound bites Feature-based SE Representation and validation: important Multi-objective Configuration: interesting 2 Stop tinkering with small stuff! Minor improvements welcome… … but not insightful! Enough with the usual suspects: NSGA-II, SPEA2, etc. If user preferences matter Then the best optimizer understands preferences the best
  • 3. Roadmap ① Feature-based SE ② Evolutionary Algorithms ③ Experiment & Results ④ Conclusion
  • 4. Roadmap ① Feature-based SE ② Evolutionary Algorithms ③ Experiment & Results ④ Conclusion
  • 5. Welcome to the new world! Old world: product-based SE e.g. Microsoft office New world: app-based SE e.g. Apple app store 5
  • 6. The times, they are a changin’ Old world: product-based SE e.g. Microsoft office 6 • Vendors tried to retain their user base via some complete ecologies • One software solution for all user needs (e.g. Microsoft Office). • Large, complex, software platforms, – very slow to change.
  • 7. The times, they are a changin’ New worlde: app-based SE • Smart phones and tablet- based software • Users choosing many numbers of small apps from different vendors, – each performing a specific small task. • Vendors must quickly and continually reconfigure apps – To retain and extend their customer base. 7 e.g. Apple app store
  • 8. Feature–oriented domain analysis [Kang 1990] • Feature models = a lightweight method for defining a space of options • De facto standard for modeling variability 8 Cross-Tree Constraints Cross-Tree Constraints
  • 9. What are the user preferences? • Multi-objective optimization = navigating competing concerns – Success criteria = choose features that achieve the user preferences! • Suppose each feature had the following metrics: 1. Boolean USED_BEFORE? 2. Integer DEFECTS 3. Real COST • Show me the space of “best options” according to the objectives: 1. That satisfies most domain constraints (0 ≤ #violations ≤ 100%) 2. That offers most features 3. That we have used most before 4. Using features with least known defects 5. Using features with least cost 9
  • 10. Diving deeper • Much prior work in SBSE (*) -------------------------- (*) Sayyad and Ammar, RAISE’13 10 explored tiny objective spaces (2 or 3 objectives) Used NSGA-II Didn’t state why!
  • 11. Roadmap ① Feature-based SE ② Evolutionary Algorithms ③ Experiment & Results ④ Conclusion
  • 13. Survival of the fittest (according to NSGA-II [Deb et al. 2002]) 13 Boolean dominance (x Dominates y, or does not): - In no objective is x worse than y - In at least one objective, x is better than y Crowd pruning
  • 14. Tinkering with small stuff… ssNSGA-II: steady state [Durillo ‘09+ 14 Other Algorithms: Ranking criteria: NSGA-II SPEA2 *Zitzler ‘01+ More focus on diversity, with a new diversity measure. FastPGA [Eskandari ‘07+ Borrowed criteria from NSGA-II, and diversity measure from SPEA2 MOCell (Cellular GA) [Nebro ‘09] NSGA-II NSGA-IIMOCHC (re-designed selection, crossover, and mutation) [Nebro ‘07+ Boolean Dominance Boolean Dominance Boolean Dominance Boolean Dominance Boolean Dominance
  • 15. Indicator-Based Evolutionary Algorithm (IBEA) [Zitzler and Kunzli ‘04+ 15 1) For {old generation + new generation} do – Add up every individual’s amount of dominance with respect to everyone else – Sort all instances by F – Delete worst, recalculate, delete worst, recalculate, … 2) Then, standard GA (cross-over, mutation) on the survivors  Create a new generation  Back to 1. Continuous Dominance
  • 16. An important property of IBEA • Allows solutions to crowd close to the zero point. 16 • In our problem: Allows many solutions that achieve violations equal or close to zero… then allows optimization in the other 4 dimensions… • Crowd pruning can hurt! • Using real-valued benchmark functions, Wagner et al. (EMO 2007) confirm that the performance of NSGA-II and SPEA2 rapidly deteriorates with increasing dimension, whereas indicator-based algorithms (e.g. IBEA) cope very well with high-dimensional objective spaces.
  • 17. Roadmap ① Feature-based SE ② Evolutionary Algorithms ③ Experiment & Results ④ Conclusion
  • 18. 2 Case studies from SPLOT 18 Cross-tree constraints
  • 19. Algorithms • 7 Algorithms from jMetal: http://jmetal.sourceforge.net/ – IBEA, NSGA-II, ssNSGA-II, SPEA2, FastPGA, MOCell, MOCHC. 19 • Features are bits in the “product” string. • Same settings for all algorithms.
  • 20. 4 studies: Two, three, four, five- objectives 20 The five objectives: 1. satisfy most domain constraints (0 ≤ violations ≤ 100%) 2. offer most features 3. most used before 4. least known defects 5. least cost Two objectives = 1,2 Three objectives = 1,2,5 Four objectives = 1,2,3,5 Five objectives = 1,2,3,4,5
  • 21. 21 HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints
  • 22. 22Comment 1: all about the same for the 2-objective problem HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints
  • 23. 23Comment 2: IBEA is better on HV. HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints
  • 24. 24Comment 3: IBEA has no spread operators, but gets best spread HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints
  • 25. 25Comment 4: All the non-IBEA algorithms are very similar HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints
  • 26. HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints 26Comment 5: IBEA does much, much better on constraints
  • 27. HV = hypervolume of dominated region Spread = coverage of frontier % correct = % of solutions that fully satisfy the constraints 27Comment 6: IBEA’s advantage is more striking with E-Shop
  • 28. Why is this interesting? Other Algorithms • The usual suspects are widely, uncritically used in many applications – E.g. especially NSGA-II and SPEA2 • Focused on internal algorithmic tricks – Techniques for • improving spread • Improving HV • Avoid overlaps in cross-over of dominated space • etc. • And the net effect of all those differences? – Not much IBEA • Rather stupid on those internal tricks – Just does same old crossover mutate GA – Plus: aggressive exploration of the preference space • And the net effect of all those differences – Better spreads – Better HV – Fewer constraint violations 28 Conclusion: preference is power
  • 29. Roadmap ① Feature-based SE ② Evolutionary Algorithms ③ Experiment & Results ④ Conclusion
  • 30. Current Achievements and Future Work • ICSE’13: initial results proving IBEA’s advantage. • CMSBSE’13: IBEA runtime improvement. • (Under review): – mutation operator tailored to feature tree. 2-3 orders-of-magnitude improvement in runtime. – Scalability to 6000+ real feature model using innovative “population seeding” method. 30 • Future Work: – Further scalability. – Interactive configuration.
  • 31. Sound bites The new age of the app In this new world: use FODA (feature-oriented domain analysis) 31 Stop tinkering with small stuff Many MEOAs have strikingly similar performance Enough with the usual suspects: NSGA-II, SPEA2, etc. Too much uncritical application of these algorithms If user preferences matter Then the best optimizer understands preferences the best IBEA: aggressive preference exploration Acknowledgment This research work was funded by the Qatar National Research Fund (QNRF) under the National Priorities Research Program (NPRP) Grant No.: 09-1205-2-470.