SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
1 Het begint met een idee
Experiment planning
Ivano Malavolta
Vrije Universiteit Amsterdam
Experiment planning
Context selection
Research questions and hypotheses formulation
Variables selection
Subjects selection
2 Ivano Malavolta / S2 group / Empirical software engineering
Roadmap
Vrije Universiteit Amsterdam
3 Ivano Malavolta / S2 group / Empirical software engineering
Recall
Vrije Universiteit Amsterdam
4 Ivano Malavolta / S2 group / Empirical software engineering
Recall
Vrije Universiteit Amsterdam
● Experiment scoping describes WHY we run an experiment
● The planning determines HOW the experiment will be executed
○ Be careful here → the result of the experiment can be disturbed (or
even destroyed) if not planned properly
5 Ivano Malavolta / S2 group / Empirical software engineering
Scoping VS planning
Vrije Universiteit Amsterdam
6 Ivano Malavolta / S2 group / Empirical software engineering
Planning phases
Scope of this
lecture
Vrije Universiteit Amsterdam
7 Ivano Malavolta / S2 group / Empirical software engineering
Context selection
Vrije Universiteit Amsterdam
8 Ivano Malavolta / S2 group / Empirical software engineering
We already heard about context...
Vrije Universiteit Amsterdam
CONTEXT: the environment in which the experiment is
performed
Our goal here is to achieve the most general results
→ optimum: large real software projects, with practitioners
Many risks involved….
9 Ivano Malavolta / S2 group / Empirical software engineering
Context selection
Vrije Universiteit Amsterdam
10 Ivano Malavolta / S2 group / Empirical software engineering
Context selection dimensions
RealityLab
● Off-line ● On-line
● Students ● Professionals
● Toy problem ● Real problem
● Specific ● General
Vrije Universiteit Amsterdam
11 Ivano Malavolta / S2 group / Empirical software engineering
Quick exercise
Think about the Progressive web app case study
and formulate a potential context for an experiment
Vrije Universiteit Amsterdam
12 Ivano Malavolta / S2 group / Empirical software engineering
Research questions and hypotheses formulation
Vrije Universiteit Amsterdam
Research questions detail the specific objectives of the empirical
study
Incepted from the study definition
Starting point to identify the variables of interest of your study
13 Ivano Malavolta / S2 group / Empirical software engineering
Research questions formulation
Vrije Universiteit Amsterdam
Research questions should be as clear as possible
→ they will guide the whole experiment
Avoid questions you cannot answer
○ What is the best JavaScript framework in terms of performance?
○ What is the most productive programming language?
○ ...
Golden words: to what extent..., what is the impact of X to Y,
what are the traits of Xs, what are the characteristics of T...
Remind that in your report you will come back to them and
explicitly answer each of them in details
14 Ivano Malavolta / S2 group / Empirical software engineering
Suggestions
Vrije Universiteit Amsterdam
15 Ivano Malavolta / S2 group / Empirical software engineering
Example: CHABADA
Vrije Universiteit Amsterdam
16
Example: CHABADA
Vrije Universiteit Amsterdam
17
Example: CHABADA
Vrije Universiteit Amsterdam
18 Ivano Malavolta / S2 group / Empirical software engineering
Example: CHABADA
Vrije Universiteit Amsterdam
19 Ivano Malavolta / S2 group / Empirical software engineering
Example: CHABADA
Vrije Universiteit Amsterdam
20 Ivano Malavolta / S2 group / Empirical software engineering
From research questions to hypotheses
● When a research question is going to be addressed by
applying a statistical test, it would be helpful to formulate
an hypothesis
● Very useful to select what kind of statistical procedure you
need to use
Not needed in all cases
Vrije Universiteit Amsterdam
21 Ivano Malavolta / S2 group / Empirical software engineering
Hypotheses formulation
● Conjecture (P)
○ Administration of treatment has influence on some
feature
● Consequence (Q)
○ We observe a difference in terms of some feature
P → Q
Vrije Universiteit Amsterdam
22 Ivano Malavolta / S2 group / Empirical software engineering
Hypotheses formulation
Hypothesis: a formal statement about a phenomenon
● Null hypothesis H0
: no real trends or patterns in the
experiment setting (aka ~Q)
● Alternative hypothesis Ha
: there are real trends or
patterns in the experiment setting (aka Q)
Vrije Universiteit Amsterdam
23 Ivano Malavolta / S2 group / Empirical software engineering
Falsification (modus tollens)
● We aim at verifying the null hypothesis (~Q)
○ we test the null hypothesis H0
We can reject the null hypothesis → we can draw conclusions
This comes from Popper (1959): any statement in a scientific
field is true until anybody can contradict it
● Aiming at verifying Q is WRONG
○ Provides no insight on the conjecture
Vrije Universiteit Amsterdam
24 Ivano Malavolta / S2 group / Empirical software engineering
Example
● Question:
○ Do green algorithms improve software energy efficiency?
● Consequence (Q):
○ (when applying green algorithms) we observe a reduction
of energy consumption
● Conjecture (P):
○ applying green algorithms reduces energy consumption
Vrije Universiteit Amsterdam
25 Ivano Malavolta / S2 group / Empirical software engineering
Example
● Null hypothesis (¬Q): there is no reduction in terms of
energy consumption
H0
: mean(Ega
) >= mean(Enormal
)
● Alternative hypothesis (Q): the energy consumption
resulting from an application that uses green algorithms is
lower
Ha
: mean(Ega
) < mean(Enormal
)
Vrije Universiteit Amsterdam
26 Ivano Malavolta / S2 group / Empirical software engineering
What can happen now?
● We confirm the null hypothesis (~Q)
○ ~Q → ~P
○ our conjecture P has been falsified → green algorithms do
not reduce energy consumption (~P)
● We reject the null hypothesis (~Q)
○ Q = true
○ our conjecture P has been corroborated → we are more
confident that it is likely that green algorithms reduce energy
consumption (P)
Vrije Universiteit Amsterdam
27 Ivano Malavolta / S2 group / Empirical software engineering
Example 2
Vrije Universiteit Amsterdam
28
Other examples of hypotheses
Vrije Universiteit Amsterdam
29 Ivano Malavolta / S2 group / Empirical software engineering
Variables selection
Vrije Universiteit Amsterdam
30 Ivano Malavolta / S2 group / Empirical software engineering
Recap
Vrije Universiteit Amsterdam
31 Ivano Malavolta / S2 group / Empirical software engineering
Variables selection
● The choice of independent and dependent variables is
usually done in parallel
● Some variables cannot be measured directly (e.g.
productivity, code quality, effort...)
○ We use proxies to estimate them
■ proxies introduce a construct validity threat: is what we are
measuring a good representation of our variable?
Vrije Universiteit Amsterdam
32 Ivano Malavolta / S2 group / Empirical software engineering
Variables selection
● Independent variables should have some effect on the
dependent ones
→ do not choose variables randomly, think about your RQs
● After choosing the variables you have to define their types,
scales, ranges → this is part of measurement theory
Vrije Universiteit Amsterdam
33 Ivano Malavolta / S2 group / Empirical software engineering
Hypotheses formulation
● Often there is only 1 dependent variable (the main factor)
○ e.g., power consumption
● Often one level for the control group
○ e.g. use of old/traditional technique/tool
● One or more levels for experimental groups
○ e.g. use of new technique(s) tool(s)
Other independent variables are the co-factors
Vrije Universiteit Amsterdam
Our main factor is not the only variable influencing the dependent
variable(s)
○ e.g., network instability of your experimental environment, usage
patterns of the analysed website, skills of subjects, analyzed system,
experience of developers, ...
We will never account for all possible co-factors
Your best friend here is randomization
In a good experiment:
● limit their effect through a good experimental design
● able to separate their effect from main factors
● analyze the interaction with main factor
34
Co-factors
Vrije Universiteit Amsterdam
35 Ivano Malavolta / S2 group / Empirical software engineering
Example
Vrije Universiteit Amsterdam
36 Ivano Malavolta / S2 group / Empirical software engineering
Subjects selection
Vrije Universiteit Amsterdam
37 Ivano Malavolta / S2 group / Empirical software engineering
Subjects selection
● Population: the complete set of items of interest for our
experiment
○ e.g. open-source software applications
○ e.g., all existing progressive web apps
● Sample: representative selection of individuals for that
population
○ e.g. Apache, MySQL
○ e.g. progressive web apps mined from Alexa’s list
Vrije Universiteit Amsterdam
38 Ivano Malavolta / S2 group / Empirical software engineering
Sampling techniques
● Probability Sampling: the probability of selecting each
subject in the population is known
○ Simple Random Sampling: random selection from the population,
probability is 1/total
○ Stratified random sampling: the population is divided into groups
with a known distribution between the groups. Random sampling
is then applied within each group
● Non-probability sampling: the probability of selecting
each subject out of the population is unknown
○ Convenience: the most convenient (cost/distance/ complexity)
subjects are selected [usually it is the only way to go]
○ Quota: you select samples from groups of subjects (e.g. male vs
females, open-source vs closed source)
Vrije Universiteit Amsterdam
39 Ivano Malavolta / S2 group / Empirical software engineering
How big should be a sample?
● Sample size: the larger, the better (more general results)
● If the population has a high variation a larger sample size is
needed
● Data analysis may influence sample size
○ some statistical tests have meaning only on large
samples
Vrije Universiteit Amsterdam
You know how to:
● define the context of your experiment
● define research questions and hypotheses
● define independent and dependent variables
● strategies for selecting subjects
Next step
Measurement theory → how to define the “type” of variables
40 Ivano Malavolta / S2 group / Empirical software engineering
What this lecture means to you?
Vrije Universiteit Amsterdam
41 Ivano Malavolta / S2 group / Empirical software engineering
Readings
Chapter 8
Vrije Universiteit Amsterdam
42 Ivano Malavolta / S2 group / Empirical software engineering
Some contents of this part of lecture extracted from:
● Giuseppe Procaccianti’s lectures at VU
● Massimiliano Di Penta’s lectures at GSSI (Italy)
Acknowledgements

Contenu connexe

Tendances

[05-A] Experiment design (basics)
[05-A] Experiment design (basics)[05-A] Experiment design (basics)
[05-A] Experiment design (basics)Ivano Malavolta
 
The Green Lab - [07-A] Data Analysis
The Green Lab - [07-A] Data AnalysisThe Green Lab - [07-A] Data Analysis
The Green Lab - [07-A] Data AnalysisGiuseppe Procaccianti
 
The Green Lab - [04-A] Lab environment and tools
The Green Lab - [04-A] Lab environment and toolsThe Green Lab - [04-A] Lab environment and tools
The Green Lab - [04-A] Lab environment and toolsGiuseppe Procaccianti
 
The Green Lab - [11-A] Data Visualization
The Green Lab - [11-A] Data VisualizationThe Green Lab - [11-A] Data Visualization
The Green Lab - [11-A] Data VisualizationGiuseppe Procaccianti
 
[02-B] Experiment scoping
[02-B] Experiment scoping[02-B] Experiment scoping
[02-B] Experiment scopingIvano Malavolta
 
The Green Lab - [01 C] Empirical software engineering
The Green Lab - [01 C] Empirical software engineeringThe Green Lab - [01 C] Empirical software engineering
The Green Lab - [01 C] Empirical software engineeringIvano Malavolta
 
The Green Lab - [13 B] Future research challenges
The Green Lab - [13 B] Future research challengesThe Green Lab - [13 B] Future research challenges
The Green Lab - [13 B] Future research challengesIvano Malavolta
 
The Green Lab - [12-A] Data visualization in R
The Green Lab - [12-A] Data visualization in RThe Green Lab - [12-A] Data visualization in R
The Green Lab - [12-A] Data visualization in RGiuseppe Procaccianti
 
[13 - B] Experiment reporting
[13 - B] Experiment reporting[13 - B] Experiment reporting
[13 - B] Experiment reportingIvano Malavolta
 
The Green Lab - [01-B] Case study presentation
The Green Lab - [01-B] Case study presentationThe Green Lab - [01-B] Case study presentation
The Green Lab - [01-B] Case study presentationGiuseppe Procaccianti
 
[03-B] Measurement theory basics
[03-B] Measurement theory basics[03-B] Measurement theory basics
[03-B] Measurement theory basicsIvano Malavolta
 
[09-A] Statistical tests and effect size
[09-A] Statistical tests and effect size[09-A] Statistical tests and effect size
[09-A] Statistical tests and effect sizeIvano Malavolta
 
[07-B] Statistical hypothesis testing
[07-B] Statistical hypothesis testing[07-B] Statistical hypothesis testing
[07-B] Statistical hypothesis testingIvano Malavolta
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineeringIvano Malavolta
 
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Ivano Malavolta
 
Visual Learning Pulse - Final Thesis presentation
Visual Learning Pulse - Final Thesis presentationVisual Learning Pulse - Final Thesis presentation
Visual Learning Pulse - Final Thesis presentationDaniele Di Mitri
 
Object-oriented design patterns in UML [Software Modeling] [Computer Science...
Object-oriented design patterns  in UML [Software Modeling] [Computer Science...Object-oriented design patterns  in UML [Software Modeling] [Computer Science...
Object-oriented design patterns in UML [Software Modeling] [Computer Science...Ivano Malavolta
 
Alin_Galatan_Resume
Alin_Galatan_ResumeAlin_Galatan_Resume
Alin_Galatan_ResumeAlin Galatan
 
Dynamic Optimization without Markov Assumptions: application to power systems
Dynamic Optimization without Markov Assumptions: application to power systemsDynamic Optimization without Markov Assumptions: application to power systems
Dynamic Optimization without Markov Assumptions: application to power systemsOlivier Teytaud
 
Odin2018_Minh_ML_Risk_Prediction
Odin2018_Minh_ML_Risk_PredictionOdin2018_Minh_ML_Risk_Prediction
Odin2018_Minh_ML_Risk_PredictionMinh Nguyen
 

Tendances (20)

[05-A] Experiment design (basics)
[05-A] Experiment design (basics)[05-A] Experiment design (basics)
[05-A] Experiment design (basics)
 
The Green Lab - [07-A] Data Analysis
The Green Lab - [07-A] Data AnalysisThe Green Lab - [07-A] Data Analysis
The Green Lab - [07-A] Data Analysis
 
The Green Lab - [04-A] Lab environment and tools
The Green Lab - [04-A] Lab environment and toolsThe Green Lab - [04-A] Lab environment and tools
The Green Lab - [04-A] Lab environment and tools
 
The Green Lab - [11-A] Data Visualization
The Green Lab - [11-A] Data VisualizationThe Green Lab - [11-A] Data Visualization
The Green Lab - [11-A] Data Visualization
 
[02-B] Experiment scoping
[02-B] Experiment scoping[02-B] Experiment scoping
[02-B] Experiment scoping
 
The Green Lab - [01 C] Empirical software engineering
The Green Lab - [01 C] Empirical software engineeringThe Green Lab - [01 C] Empirical software engineering
The Green Lab - [01 C] Empirical software engineering
 
The Green Lab - [13 B] Future research challenges
The Green Lab - [13 B] Future research challengesThe Green Lab - [13 B] Future research challenges
The Green Lab - [13 B] Future research challenges
 
The Green Lab - [12-A] Data visualization in R
The Green Lab - [12-A] Data visualization in RThe Green Lab - [12-A] Data visualization in R
The Green Lab - [12-A] Data visualization in R
 
[13 - B] Experiment reporting
[13 - B] Experiment reporting[13 - B] Experiment reporting
[13 - B] Experiment reporting
 
The Green Lab - [01-B] Case study presentation
The Green Lab - [01-B] Case study presentationThe Green Lab - [01-B] Case study presentation
The Green Lab - [01-B] Case study presentation
 
[03-B] Measurement theory basics
[03-B] Measurement theory basics[03-B] Measurement theory basics
[03-B] Measurement theory basics
 
[09-A] Statistical tests and effect size
[09-A] Statistical tests and effect size[09-A] Statistical tests and effect size
[09-A] Statistical tests and effect size
 
[07-B] Statistical hypothesis testing
[07-B] Statistical hypothesis testing[07-B] Statistical hypothesis testing
[07-B] Statistical hypothesis testing
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
 
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...
 
Visual Learning Pulse - Final Thesis presentation
Visual Learning Pulse - Final Thesis presentationVisual Learning Pulse - Final Thesis presentation
Visual Learning Pulse - Final Thesis presentation
 
Object-oriented design patterns in UML [Software Modeling] [Computer Science...
Object-oriented design patterns  in UML [Software Modeling] [Computer Science...Object-oriented design patterns  in UML [Software Modeling] [Computer Science...
Object-oriented design patterns in UML [Software Modeling] [Computer Science...
 
Alin_Galatan_Resume
Alin_Galatan_ResumeAlin_Galatan_Resume
Alin_Galatan_Resume
 
Dynamic Optimization without Markov Assumptions: application to power systems
Dynamic Optimization without Markov Assumptions: application to power systemsDynamic Optimization without Markov Assumptions: application to power systems
Dynamic Optimization without Markov Assumptions: application to power systems
 
Odin2018_Minh_ML_Risk_Prediction
Odin2018_Minh_ML_Risk_PredictionOdin2018_Minh_ML_Risk_Prediction
Odin2018_Minh_ML_Risk_Prediction
 

En vedette

The Green Lab - [04 B] [PWA] Experiment setup
The Green Lab - [04 B] [PWA] Experiment setupThe Green Lab - [04 B] [PWA] Experiment setup
The Green Lab - [04 B] [PWA] Experiment setupIvano Malavolta
 
The Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web appsThe Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web appsIvano Malavolta
 
The Green Lab - [02 B] Experiment scoping
The Green Lab - [02 B] Experiment scopingThe Green Lab - [02 B] Experiment scoping
The Green Lab - [02 B] Experiment scopingIvano Malavolta
 
The Green Lab - [07-B] Hypothesis Testing
The Green Lab - [07-B] Hypothesis TestingThe Green Lab - [07-B] Hypothesis Testing
The Green Lab - [07-B] Hypothesis TestingGiuseppe Procaccianti
 
Beyond Native Apps: Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
Beyond Native Apps:  Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...Beyond Native Apps:  Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
Beyond Native Apps: Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...Ivano Malavolta
 
Sustainable Software for a Digital Society
Sustainable Software for a Digital SocietySustainable Software for a Digital Society
Sustainable Software for a Digital SocietyPatricia Lago
 
Java and effective programming. Is it possible? - IAESTE Case Week 2016
Java and effective programming. Is it possible? - IAESTE Case Week 2016Java and effective programming. Is it possible? - IAESTE Case Week 2016
Java and effective programming. Is it possible? - IAESTE Case Week 2016Łukasz Koniecki
 
European Green IT Webinar 2014 - Green Code Lab (France)
European Green IT Webinar 2014 - Green Code Lab (France)European Green IT Webinar 2014 - Green Code Lab (France)
European Green IT Webinar 2014 - Green Code Lab (France)GreenLabCenter
 
Technology, apps, and websites you need to know about
Technology, apps, and websites you need to know aboutTechnology, apps, and websites you need to know about
Technology, apps, and websites you need to know aboutDoug Green
 
Green-Language programming presentation
Green-Language programming presentationGreen-Language programming presentation
Green-Language programming presentationLorraine Cruz
 
Presentation Joost Visser / SIG - what can be green about software- Workshop ...
Presentation Joost Visser / SIG - what can be green about software- Workshop ...Presentation Joost Visser / SIG - what can be green about software- Workshop ...
Presentation Joost Visser / SIG - what can be green about software- Workshop ...Jaak Vlasveld
 
Green Software Lab
Green Software LabGreen Software Lab
Green Software LabGreenLabAtDI
 
Introduction to the Green Code
Introduction to the Green CodeIntroduction to the Green Code
Introduction to the Green Codebuffalogreencode
 

En vedette (13)

The Green Lab - [04 B] [PWA] Experiment setup
The Green Lab - [04 B] [PWA] Experiment setupThe Green Lab - [04 B] [PWA] Experiment setup
The Green Lab - [04 B] [PWA] Experiment setup
 
The Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web appsThe Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web apps
 
The Green Lab - [02 B] Experiment scoping
The Green Lab - [02 B] Experiment scopingThe Green Lab - [02 B] Experiment scoping
The Green Lab - [02 B] Experiment scoping
 
The Green Lab - [07-B] Hypothesis Testing
The Green Lab - [07-B] Hypothesis TestingThe Green Lab - [07-B] Hypothesis Testing
The Green Lab - [07-B] Hypothesis Testing
 
Beyond Native Apps: Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
Beyond Native Apps:  Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...Beyond Native Apps:  Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
Beyond Native Apps: Web Technologies to the Rescue! [SPLASH 2016 - Mobile! k...
 
Sustainable Software for a Digital Society
Sustainable Software for a Digital SocietySustainable Software for a Digital Society
Sustainable Software for a Digital Society
 
Java and effective programming. Is it possible? - IAESTE Case Week 2016
Java and effective programming. Is it possible? - IAESTE Case Week 2016Java and effective programming. Is it possible? - IAESTE Case Week 2016
Java and effective programming. Is it possible? - IAESTE Case Week 2016
 
European Green IT Webinar 2014 - Green Code Lab (France)
European Green IT Webinar 2014 - Green Code Lab (France)European Green IT Webinar 2014 - Green Code Lab (France)
European Green IT Webinar 2014 - Green Code Lab (France)
 
Technology, apps, and websites you need to know about
Technology, apps, and websites you need to know aboutTechnology, apps, and websites you need to know about
Technology, apps, and websites you need to know about
 
Green-Language programming presentation
Green-Language programming presentationGreen-Language programming presentation
Green-Language programming presentation
 
Presentation Joost Visser / SIG - what can be green about software- Workshop ...
Presentation Joost Visser / SIG - what can be green about software- Workshop ...Presentation Joost Visser / SIG - what can be green about software- Workshop ...
Presentation Joost Visser / SIG - what can be green about software- Workshop ...
 
Green Software Lab
Green Software LabGreen Software Lab
Green Software Lab
 
Introduction to the Green Code
Introduction to the Green CodeIntroduction to the Green Code
Introduction to the Green Code
 

Similaire à The Green Lab - [03 A] Experiment planning

[03-A] Experiment planning
[03-A] Experiment planning[03-A] Experiment planning
[03-A] Experiment planningIvano Malavolta
 
[13 - A] Experiment validity
[13 - A] Experiment validity[13 - A] Experiment validity
[13 - A] Experiment validityIvano Malavolta
 
[01-B] Empirical software engineering
[01-B] Empirical software engineering[01-B] Empirical software engineering
[01-B] Empirical software engineeringIvano Malavolta
 
Pragmatic software testing education - SIGCSE 2019
Pragmatic software testing education - SIGCSE 2019Pragmatic software testing education - SIGCSE 2019
Pragmatic software testing education - SIGCSE 2019Maurício Aniche
 
Statistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and HowStatistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and HowJulián Urbano
 
1How to Perform ExperimentsBasic Concepts CSCI .docx
1How to Perform ExperimentsBasic Concepts CSCI .docx1How to Perform ExperimentsBasic Concepts CSCI .docx
1How to Perform ExperimentsBasic Concepts CSCI .docxdrennanmicah
 
Online Machine Learning: introduction and examples
Online Machine Learning:  introduction and examplesOnline Machine Learning:  introduction and examples
Online Machine Learning: introduction and examplesFelipe
 
130321 zephyrin soh - on the effect of exploration strategies on maintenanc...
130321   zephyrin soh - on the effect of exploration strategies on maintenanc...130321   zephyrin soh - on the effect of exploration strategies on maintenanc...
130321 zephyrin soh - on the effect of exploration strategies on maintenanc...Ptidej Team
 
Planning for power systems
Planning for power systemsPlanning for power systems
Planning for power systemsOlivier Teytaud
 
Ilab Metis: we optimize power systems and we are not afraid of direct policy ...
Ilab Metis: we optimize power systems and we are not afraid of direct policy ...Ilab Metis: we optimize power systems and we are not afraid of direct policy ...
Ilab Metis: we optimize power systems and we are not afraid of direct policy ...Olivier Teytaud
 
The Use of Static Code Analysis When Teaching or Developing Open-Source Software
The Use of Static Code Analysis When Teaching or Developing Open-Source SoftwareThe Use of Static Code Analysis When Teaching or Developing Open-Source Software
The Use of Static Code Analysis When Teaching or Developing Open-Source SoftwareAndrey Karpov
 
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...eMadrid network
 
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15MLconf
 
10 more lessons learned from building Machine Learning systems - MLConf
10 more lessons learned from building Machine Learning systems - MLConf10 more lessons learned from building Machine Learning systems - MLConf
10 more lessons learned from building Machine Learning systems - MLConfXavier Amatriain
 
10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systems10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systemsXavier Amatriain
 
ESIT135 : Unit 1 Python Basics Concepts
ESIT135 : Unit 1 Python Basics  ConceptsESIT135 : Unit 1 Python Basics  Concepts
ESIT135 : Unit 1 Python Basics ConceptsSwapnaliGawali5
 

Similaire à The Green Lab - [03 A] Experiment planning (20)

[03-A] Experiment planning
[03-A] Experiment planning[03-A] Experiment planning
[03-A] Experiment planning
 
[13 - A] Experiment validity
[13 - A] Experiment validity[13 - A] Experiment validity
[13 - A] Experiment validity
 
[01-B] Empirical software engineering
[01-B] Empirical software engineering[01-B] Empirical software engineering
[01-B] Empirical software engineering
 
Lecture 1.pptx
Lecture 1.pptxLecture 1.pptx
Lecture 1.pptx
 
Pragmatic software testing education - SIGCSE 2019
Pragmatic software testing education - SIGCSE 2019Pragmatic software testing education - SIGCSE 2019
Pragmatic software testing education - SIGCSE 2019
 
Statistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and HowStatistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and How
 
1How to Perform ExperimentsBasic Concepts CSCI .docx
1How to Perform ExperimentsBasic Concepts CSCI .docx1How to Perform ExperimentsBasic Concepts CSCI .docx
1How to Perform ExperimentsBasic Concepts CSCI .docx
 
Uses of accelerometer sensor and its application in m-Learning environments: ...
Uses of accelerometer sensor and its application in m-Learning environments: ...Uses of accelerometer sensor and its application in m-Learning environments: ...
Uses of accelerometer sensor and its application in m-Learning environments: ...
 
An overview on diversity and Software Testing
An overview on diversity and Software TestingAn overview on diversity and Software Testing
An overview on diversity and Software Testing
 
Online Machine Learning: introduction and examples
Online Machine Learning:  introduction and examplesOnline Machine Learning:  introduction and examples
Online Machine Learning: introduction and examples
 
130321 zephyrin soh - on the effect of exploration strategies on maintenanc...
130321   zephyrin soh - on the effect of exploration strategies on maintenanc...130321   zephyrin soh - on the effect of exploration strategies on maintenanc...
130321 zephyrin soh - on the effect of exploration strategies on maintenanc...
 
Planning for power systems
Planning for power systemsPlanning for power systems
Planning for power systems
 
Ilab Metis: we optimize power systems and we are not afraid of direct policy ...
Ilab Metis: we optimize power systems and we are not afraid of direct policy ...Ilab Metis: we optimize power systems and we are not afraid of direct policy ...
Ilab Metis: we optimize power systems and we are not afraid of direct policy ...
 
The Use of Static Code Analysis When Teaching or Developing Open-Source Software
The Use of Static Code Analysis When Teaching or Developing Open-Source SoftwareThe Use of Static Code Analysis When Teaching or Developing Open-Source Software
The Use of Static Code Analysis When Teaching or Developing Open-Source Software
 
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Experi...
 
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
 
10 more lessons learned from building Machine Learning systems - MLConf
10 more lessons learned from building Machine Learning systems - MLConf10 more lessons learned from building Machine Learning systems - MLConf
10 more lessons learned from building Machine Learning systems - MLConf
 
10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systems10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systems
 
Software Radio Course
Software Radio CourseSoftware Radio Course
Software Radio Course
 
ESIT135 : Unit 1 Python Basics Concepts
ESIT135 : Unit 1 Python Basics  ConceptsESIT135 : Unit 1 Python Basics  Concepts
ESIT135 : Unit 1 Python Basics Concepts
 

Plus de Ivano Malavolta

Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Ivano Malavolta
 
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)Ivano Malavolta
 
Software sustainability and Green IT
Software sustainability and Green ITSoftware sustainability and Green IT
Software sustainability and Green ITIvano Malavolta
 
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Ivano Malavolta
 
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]Ivano Malavolta
 
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...Ivano Malavolta
 
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...Ivano Malavolta
 
Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...Ivano Malavolta
 
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...Ivano Malavolta
 
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...Ivano Malavolta
 
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Ivano Malavolta
 
Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Ivano Malavolta
 
[2017/2018] Agile development
[2017/2018] Agile development[2017/2018] Agile development
[2017/2018] Agile developmentIvano Malavolta
 
Reconstructing microservice-based architectures
Reconstructing microservice-based architecturesReconstructing microservice-based architectures
Reconstructing microservice-based architecturesIvano Malavolta
 
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design LanguageIvano Malavolta
 
[2017/2018] Architectural languages
[2017/2018] Architectural languages[2017/2018] Architectural languages
[2017/2018] Architectural languagesIvano Malavolta
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software ArchitectureIvano Malavolta
 
Mobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perceptionMobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perceptionIvano Malavolta
 
[07-A] Descriptive Statistics and data exploration
[07-A] Descriptive Statistics and data exploration[07-A] Descriptive Statistics and data exploration
[07-A] Descriptive Statistics and data explorationIvano Malavolta
 

Plus de Ivano Malavolta (20)

Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
 
The H2020 experience
The H2020 experienceThe H2020 experience
The H2020 experience
 
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
 
Software sustainability and Green IT
Software sustainability and Green ITSoftware sustainability and Green IT
Software sustainability and Green IT
 
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
 
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
 
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
 
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
 
Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...
 
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
 
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
 
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
 
Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...
 
[2017/2018] Agile development
[2017/2018] Agile development[2017/2018] Agile development
[2017/2018] Agile development
 
Reconstructing microservice-based architectures
Reconstructing microservice-based architecturesReconstructing microservice-based architectures
Reconstructing microservice-based architectures
 
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language
 
[2017/2018] Architectural languages
[2017/2018] Architectural languages[2017/2018] Architectural languages
[2017/2018] Architectural languages
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture
 
Mobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perceptionMobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perception
 
[07-A] Descriptive Statistics and data exploration
[07-A] Descriptive Statistics and data exploration[07-A] Descriptive Statistics and data exploration
[07-A] Descriptive Statistics and data exploration
 

Dernier

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Dernier (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

The Green Lab - [03 A] Experiment planning

  • 1. 1 Het begint met een idee Experiment planning Ivano Malavolta
  • 2. Vrije Universiteit Amsterdam Experiment planning Context selection Research questions and hypotheses formulation Variables selection Subjects selection 2 Ivano Malavolta / S2 group / Empirical software engineering Roadmap
  • 3. Vrije Universiteit Amsterdam 3 Ivano Malavolta / S2 group / Empirical software engineering Recall
  • 4. Vrije Universiteit Amsterdam 4 Ivano Malavolta / S2 group / Empirical software engineering Recall
  • 5. Vrije Universiteit Amsterdam ● Experiment scoping describes WHY we run an experiment ● The planning determines HOW the experiment will be executed ○ Be careful here → the result of the experiment can be disturbed (or even destroyed) if not planned properly 5 Ivano Malavolta / S2 group / Empirical software engineering Scoping VS planning
  • 6. Vrije Universiteit Amsterdam 6 Ivano Malavolta / S2 group / Empirical software engineering Planning phases Scope of this lecture
  • 7. Vrije Universiteit Amsterdam 7 Ivano Malavolta / S2 group / Empirical software engineering Context selection
  • 8. Vrije Universiteit Amsterdam 8 Ivano Malavolta / S2 group / Empirical software engineering We already heard about context...
  • 9. Vrije Universiteit Amsterdam CONTEXT: the environment in which the experiment is performed Our goal here is to achieve the most general results → optimum: large real software projects, with practitioners Many risks involved…. 9 Ivano Malavolta / S2 group / Empirical software engineering Context selection
  • 10. Vrije Universiteit Amsterdam 10 Ivano Malavolta / S2 group / Empirical software engineering Context selection dimensions RealityLab ● Off-line ● On-line ● Students ● Professionals ● Toy problem ● Real problem ● Specific ● General
  • 11. Vrije Universiteit Amsterdam 11 Ivano Malavolta / S2 group / Empirical software engineering Quick exercise Think about the Progressive web app case study and formulate a potential context for an experiment
  • 12. Vrije Universiteit Amsterdam 12 Ivano Malavolta / S2 group / Empirical software engineering Research questions and hypotheses formulation
  • 13. Vrije Universiteit Amsterdam Research questions detail the specific objectives of the empirical study Incepted from the study definition Starting point to identify the variables of interest of your study 13 Ivano Malavolta / S2 group / Empirical software engineering Research questions formulation
  • 14. Vrije Universiteit Amsterdam Research questions should be as clear as possible → they will guide the whole experiment Avoid questions you cannot answer ○ What is the best JavaScript framework in terms of performance? ○ What is the most productive programming language? ○ ... Golden words: to what extent..., what is the impact of X to Y, what are the traits of Xs, what are the characteristics of T... Remind that in your report you will come back to them and explicitly answer each of them in details 14 Ivano Malavolta / S2 group / Empirical software engineering Suggestions
  • 15. Vrije Universiteit Amsterdam 15 Ivano Malavolta / S2 group / Empirical software engineering Example: CHABADA
  • 18. Vrije Universiteit Amsterdam 18 Ivano Malavolta / S2 group / Empirical software engineering Example: CHABADA
  • 19. Vrije Universiteit Amsterdam 19 Ivano Malavolta / S2 group / Empirical software engineering Example: CHABADA
  • 20. Vrije Universiteit Amsterdam 20 Ivano Malavolta / S2 group / Empirical software engineering From research questions to hypotheses ● When a research question is going to be addressed by applying a statistical test, it would be helpful to formulate an hypothesis ● Very useful to select what kind of statistical procedure you need to use Not needed in all cases
  • 21. Vrije Universiteit Amsterdam 21 Ivano Malavolta / S2 group / Empirical software engineering Hypotheses formulation ● Conjecture (P) ○ Administration of treatment has influence on some feature ● Consequence (Q) ○ We observe a difference in terms of some feature P → Q
  • 22. Vrije Universiteit Amsterdam 22 Ivano Malavolta / S2 group / Empirical software engineering Hypotheses formulation Hypothesis: a formal statement about a phenomenon ● Null hypothesis H0 : no real trends or patterns in the experiment setting (aka ~Q) ● Alternative hypothesis Ha : there are real trends or patterns in the experiment setting (aka Q)
  • 23. Vrije Universiteit Amsterdam 23 Ivano Malavolta / S2 group / Empirical software engineering Falsification (modus tollens) ● We aim at verifying the null hypothesis (~Q) ○ we test the null hypothesis H0 We can reject the null hypothesis → we can draw conclusions This comes from Popper (1959): any statement in a scientific field is true until anybody can contradict it ● Aiming at verifying Q is WRONG ○ Provides no insight on the conjecture
  • 24. Vrije Universiteit Amsterdam 24 Ivano Malavolta / S2 group / Empirical software engineering Example ● Question: ○ Do green algorithms improve software energy efficiency? ● Consequence (Q): ○ (when applying green algorithms) we observe a reduction of energy consumption ● Conjecture (P): ○ applying green algorithms reduces energy consumption
  • 25. Vrije Universiteit Amsterdam 25 Ivano Malavolta / S2 group / Empirical software engineering Example ● Null hypothesis (¬Q): there is no reduction in terms of energy consumption H0 : mean(Ega ) >= mean(Enormal ) ● Alternative hypothesis (Q): the energy consumption resulting from an application that uses green algorithms is lower Ha : mean(Ega ) < mean(Enormal )
  • 26. Vrije Universiteit Amsterdam 26 Ivano Malavolta / S2 group / Empirical software engineering What can happen now? ● We confirm the null hypothesis (~Q) ○ ~Q → ~P ○ our conjecture P has been falsified → green algorithms do not reduce energy consumption (~P) ● We reject the null hypothesis (~Q) ○ Q = true ○ our conjecture P has been corroborated → we are more confident that it is likely that green algorithms reduce energy consumption (P)
  • 27. Vrije Universiteit Amsterdam 27 Ivano Malavolta / S2 group / Empirical software engineering Example 2
  • 28. Vrije Universiteit Amsterdam 28 Other examples of hypotheses
  • 29. Vrije Universiteit Amsterdam 29 Ivano Malavolta / S2 group / Empirical software engineering Variables selection
  • 30. Vrije Universiteit Amsterdam 30 Ivano Malavolta / S2 group / Empirical software engineering Recap
  • 31. Vrije Universiteit Amsterdam 31 Ivano Malavolta / S2 group / Empirical software engineering Variables selection ● The choice of independent and dependent variables is usually done in parallel ● Some variables cannot be measured directly (e.g. productivity, code quality, effort...) ○ We use proxies to estimate them ■ proxies introduce a construct validity threat: is what we are measuring a good representation of our variable?
  • 32. Vrije Universiteit Amsterdam 32 Ivano Malavolta / S2 group / Empirical software engineering Variables selection ● Independent variables should have some effect on the dependent ones → do not choose variables randomly, think about your RQs ● After choosing the variables you have to define their types, scales, ranges → this is part of measurement theory
  • 33. Vrije Universiteit Amsterdam 33 Ivano Malavolta / S2 group / Empirical software engineering Hypotheses formulation ● Often there is only 1 dependent variable (the main factor) ○ e.g., power consumption ● Often one level for the control group ○ e.g. use of old/traditional technique/tool ● One or more levels for experimental groups ○ e.g. use of new technique(s) tool(s) Other independent variables are the co-factors
  • 34. Vrije Universiteit Amsterdam Our main factor is not the only variable influencing the dependent variable(s) ○ e.g., network instability of your experimental environment, usage patterns of the analysed website, skills of subjects, analyzed system, experience of developers, ... We will never account for all possible co-factors Your best friend here is randomization In a good experiment: ● limit their effect through a good experimental design ● able to separate their effect from main factors ● analyze the interaction with main factor 34 Co-factors
  • 35. Vrije Universiteit Amsterdam 35 Ivano Malavolta / S2 group / Empirical software engineering Example
  • 36. Vrije Universiteit Amsterdam 36 Ivano Malavolta / S2 group / Empirical software engineering Subjects selection
  • 37. Vrije Universiteit Amsterdam 37 Ivano Malavolta / S2 group / Empirical software engineering Subjects selection ● Population: the complete set of items of interest for our experiment ○ e.g. open-source software applications ○ e.g., all existing progressive web apps ● Sample: representative selection of individuals for that population ○ e.g. Apache, MySQL ○ e.g. progressive web apps mined from Alexa’s list
  • 38. Vrije Universiteit Amsterdam 38 Ivano Malavolta / S2 group / Empirical software engineering Sampling techniques ● Probability Sampling: the probability of selecting each subject in the population is known ○ Simple Random Sampling: random selection from the population, probability is 1/total ○ Stratified random sampling: the population is divided into groups with a known distribution between the groups. Random sampling is then applied within each group ● Non-probability sampling: the probability of selecting each subject out of the population is unknown ○ Convenience: the most convenient (cost/distance/ complexity) subjects are selected [usually it is the only way to go] ○ Quota: you select samples from groups of subjects (e.g. male vs females, open-source vs closed source)
  • 39. Vrije Universiteit Amsterdam 39 Ivano Malavolta / S2 group / Empirical software engineering How big should be a sample? ● Sample size: the larger, the better (more general results) ● If the population has a high variation a larger sample size is needed ● Data analysis may influence sample size ○ some statistical tests have meaning only on large samples
  • 40. Vrije Universiteit Amsterdam You know how to: ● define the context of your experiment ● define research questions and hypotheses ● define independent and dependent variables ● strategies for selecting subjects Next step Measurement theory → how to define the “type” of variables 40 Ivano Malavolta / S2 group / Empirical software engineering What this lecture means to you?
  • 41. Vrije Universiteit Amsterdam 41 Ivano Malavolta / S2 group / Empirical software engineering Readings Chapter 8
  • 42. Vrije Universiteit Amsterdam 42 Ivano Malavolta / S2 group / Empirical software engineering Some contents of this part of lecture extracted from: ● Giuseppe Procaccianti’s lectures at VU ● Massimiliano Di Penta’s lectures at GSSI (Italy) Acknowledgements