SlideShare a Scribd company logo
1 of 51
Download to read offline
Rahim Lotfi
AhmadReza Ghasemian

1
Table of Contents
Introduction









Need for empirical studies in the context of software engineering.
Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis
Basic Concepts for Empirical Software Engineering
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Empirical Software Engineering
•
•
•

•

•

Using other people’s experiences in management and development of softwares
Empirical, included in all areas of science
“I could have told you that from the start” or “That’s obvious.”
Software engineering needs to follow the model of other physical sciences and
develop an experimental paradigm for the field.
Judging empirical work by the standards of statistics texts would lead to
the suppression of many interesting results
ESE in the Literature
• “Empirical Software Engineering”
• “Experimentation in Software Engineering”
• “ESEM - Empirical Software Engineering and Measurement “
History of Empirical Software engineering
History of Empirical Software engineering

• Victor Basili(1996)
• Quotes
Like physics, medicine, manufacturing, and many other disciplines, software engineering
requires the same high level approach for evolving the knowledge of the discipline; the
cycle of model building, experimentation, and learning. We cannot rely solely on
observation followed by logical thought.
Key figure

http://academic.research.microsoft.com
Key figures in Iran
Conferences (64) Empirical Software Engineering
Journals (29)

Empirical Software Engineering
Table of Contents
Introduction
 Need for empirical studies in the context of software engineering.








Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis
Goal Question Metric
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Need of Empirical Studies
Why should we conduct empirical studies?
Product evaluation, e.g., prototyping.
Process evaluation
1. Prototypes are not possible (simulation based on models).
2. A process is just a description until it is used by people
 Important for research: experimentation is mandatory in
other disciplines(e.g., medicine, physics, etc.)
Need of Empirical Studies
Empirical studies provides a systematic, disciplined,
quantifiable and controlled way of evaluating
human-based activities.
You will learn how to select, plan, conduct and analyse an empirical study.
Table of Contents
 Introduction
 Need for empirical studies in the context of software engineering.

 Goals and Benefits







Basic Concepts: Measurement, Collection, Analysis
Basic Concepts for Empirical Software Engineering
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Goals and Benefits
• The purpose of a study is

• The purpose of a study is
to explore ...
to find out what’s happening
to seek for new insights
to ask questions and to find answers
Measurement: usually qualitative

• to describe ...
portray accurate profile of situations, events, projects , technologies

•

•

Measurement: quantitative/qualitative
to explain ...
seek explanation of a situation/problem, usual in the form of causal
Relationships
Measurement: quantitative/qualitative
relationships, differences, changes
Empirical Studies in SE
• Empirical Studies is research to improve Software Engineering
Practice.
– Apply theoretical concepts in SE practice.
– Add experiences on their appliance to the SE ‘body of knowledge’
– Improve processes, methods and tools (SPPI approach).
– Verify theories and models.
Table of Contents
 Introduction
 Need for empirical studies in the context of software engineering.
 Goals and Benefits

 Basic Concepts: Measurement, Collection, Analysis






Basic Concepts for Empirical Software Engineering
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Some Basic Concepts
• Measurement
- is the process of capturing data which are connected to real-world attributes to
describe them.
- Why is measurement important?

• Data Collection
Collection of qualitative / quantitative data according to research questions

• Data Analysis
Analyzing the results according to the research questions ;
statistical tests
Measurement
• Quotes
- “You can’t manage what you can’t measure”, Tom DeMarco
– “What is not measurable make measurable”, Galileo Galilei

• Objectives
One objective of science is to find ways to measure attributes of entities
we are interested in.
– Measurement makes concepts more visible and thus more
understandable and controllable.

• Definition
Measurement is the process by which numbers or symbols are mapped
to attributes of entities in the real world in such a way as to describe
them according to clearly defined rules.
Table of Contents





Introduction
Need for empirical studies in the context of software engineering.
Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis

 Basic Concepts for Empirical Software Engineering





Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Quality Improvement Paradigm
Package &
store experience

Set
goals

Analyze
results

Execute
process

Project
learning

Characterize
& understand

Corporate
learning

Provide process
with feedback

Analyze
results

Choose
processes,
methods,
techniques,
and tools
The Experience Factory Organization
A Different Paradigm

Project Organization
Problem Solving

Experience Factory
Experience Packaging

Decomposition of a problem
into simpler ones

Unification of different solutions
and re-definition of the problem

Instantiation

Generalization, Formalization

Design/Implementation process

Analysis/Synthesis process

Validation and Verification

Experimentation

Product Delivery within
Schedule and Cost

Experience / Recommendations
Delivery to Project
Table of Contents










Introduction
Need for empirical studies in the context of software engineering.
Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis
Basic Concepts for Empirical Software Engineering
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Table of Contents










Introduction
Need for empirical studies in the context of software engineering.
Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis
Basic Concepts for Empirical Software Engineering
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools
State of the art
Table of Contents








Introduction
Need for empirical studies in the context of software engineering.
Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis
Goal Question Metric
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study

 Tools
 State of the art
Table of Contents









Introduction
Need for empirical studies in the context of software engineering.
Goals and Benefits
Basic Concepts: Measurement, Collection, Analysis
Basic Concepts for Empirical Software Engineering
Empirical Strategies: survey, case study, controlled experiment
Process of an empirical study
Tools

 State of the art
State of the art
• Finding better ways to experiment and integrate the results of
the studies
• Propagate the empirical discipline
•

Build an empirical research engine for software engineering

•

Build test beds for experimentation and evolution of
processes

•

Build product models that allow us to make trade-off
decisions

•

Build decision support systems offering the best empirical
advice for selecting and tailoring the right processes for the
problem
• References
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•

V. Basili, G. Caldiera, D. Rombach: „The Goal Question Metric Approach“,2000.
B. Boehm, H.D. Rombach, M.V. Zelkowitz: „Foundations of Empirical
Software Engineering – The Legacy of Victor R. Basili“, Springer, 2005.
Freimut et al.: "Empirical Studies in Software Engineering", Tutorial, VISEK
Technical Report, 2002.
IESE Tutorials on Empirical Software Engineering.
A. Jedlitschka and D. Pfahl: "Reporting Guidelines for Controlled
Experiments in Software Engineering", ISESE, 2005.
B. Kitchenham: “Evidence-Based Software Engineering and Systematic
Literature Review”, Profes, 2006.
C. Wohlin, P. Runeson, M. Höst, M.C. Ohlsson, B. Regnell and A. Wesslen:
"Introduction to Experimentation in Software Engineering", Kluver, 2000.
M. V. Zelkowitz, D. R. Wallace: “Experimental Models for Validating
Technology”, IEEE Computer, 1997.
Site : http:// www.microstrategy.com
Site : http:// www.jamasoftware.com
Site : http://academic.research.microsoft.com
Acknowledgments
Bahman Zamani

Thank you for your attention

This research work has been supported by University of Isfahan

More Related Content

What's hot

Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
Hayim Makabee
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
Komal Garg
 
(Radhika) presentation on chapter 2 ai
(Radhika) presentation on chapter 2 ai(Radhika) presentation on chapter 2 ai
(Radhika) presentation on chapter 2 ai
Radhika Srinivasan
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
guru3188
 

What's hot (20)

Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
System testing
System testingSystem testing
System testing
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
 
Chapter 15
Chapter 15Chapter 15
Chapter 15
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
An introduction to software engineering
An introduction to software engineeringAn introduction to software engineering
An introduction to software engineering
 
(Radhika) presentation on chapter 2 ai
(Radhika) presentation on chapter 2 ai(Radhika) presentation on chapter 2 ai
(Radhika) presentation on chapter 2 ai
 
Exploratory Testing Explained and Experienced
Exploratory Testing Explained and ExperiencedExploratory Testing Explained and Experienced
Exploratory Testing Explained and Experienced
 
Effective Software Test Case Design Approach
Effective Software Test Case Design ApproachEffective Software Test Case Design Approach
Effective Software Test Case Design Approach
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
 
OO Development 3 - Models And UML
OO Development 3 - Models And UMLOO Development 3 - Models And UML
OO Development 3 - Models And UML
 
Principles of programming languages. Detail notes
Principles of programming languages. Detail notesPrinciples of programming languages. Detail notes
Principles of programming languages. Detail notes
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software Engineering
 

Similar to Empirical Software Engineering

Research Methodology - KSSEM - SNS
Research Methodology - KSSEM - SNSResearch Methodology - KSSEM - SNS
Research Methodology - KSSEM - SNS
Dr. S.N. Sridhara
 
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
drennanmicah
 
Research sfvuiehfvodihvidohidhvhvhh.pptx
Research sfvuiehfvodihvidohidhvhvhh.pptxResearch sfvuiehfvodihvidohidhvhvhh.pptx
Research sfvuiehfvodihvidohidhvhvhh.pptx
hepigi6836
 

Similar to Empirical Software Engineering (20)

Case studies in industry - fundamentals and lessons learnt
Case studies in industry - fundamentals and lessons learntCase studies in industry - fundamentals and lessons learnt
Case studies in industry - fundamentals and lessons learnt
 
RESEARCH in software engineering
RESEARCH in software engineeringRESEARCH in software engineering
RESEARCH in software engineering
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
 
RM & IPR Module1 PPT by Prof. Manjula K, Assistant Professor, Dept. of ECE, S...
RM & IPR Module1 PPT by Prof. Manjula K, Assistant Professor, Dept. of ECE, S...RM & IPR Module1 PPT by Prof. Manjula K, Assistant Professor, Dept. of ECE, S...
RM & IPR Module1 PPT by Prof. Manjula K, Assistant Professor, Dept. of ECE, S...
 
Systematic Literature Review
Systematic Literature ReviewSystematic Literature Review
Systematic Literature Review
 
Case Study Research in Software Engineering
Case Study Research in Software EngineeringCase Study Research in Software Engineering
Case Study Research in Software Engineering
 
Qualitative Studies in Software Engineering - Interviews, Observation, Ground...
Qualitative Studies in Software Engineering - Interviews, Observation, Ground...Qualitative Studies in Software Engineering - Interviews, Observation, Ground...
Qualitative Studies in Software Engineering - Interviews, Observation, Ground...
 
Systematic Literature Reviews and Systematic Mapping Studies
Systematic Literature Reviews and Systematic Mapping StudiesSystematic Literature Reviews and Systematic Mapping Studies
Systematic Literature Reviews and Systematic Mapping Studies
 
Research Methodology - KSSEM - SNS.pdf
Research Methodology - KSSEM - SNS.pdfResearch Methodology - KSSEM - SNS.pdf
Research Methodology - KSSEM - SNS.pdf
 
Research Methodology - KSSEM - SNS
Research Methodology - KSSEM - SNSResearch Methodology - KSSEM - SNS
Research Methodology - KSSEM - SNS
 
[2016/2017] RESEARCH in software engineering
[2016/2017] RESEARCH in software engineering[2016/2017] RESEARCH in software engineering
[2016/2017] RESEARCH in software engineering
 
1.1 business research class discussions
1.1 business research class discussions1.1 business research class discussions
1.1 business research class discussions
 
Lesson 4.2.Research Design and Research Instrument.pptx
Lesson 4.2.Research Design and Research Instrument.pptxLesson 4.2.Research Design and Research Instrument.pptx
Lesson 4.2.Research Design and Research Instrument.pptx
 
ES_140_METHODS_OF_RESEARCH.pdf
ES_140_METHODS_OF_RESEARCH.pdfES_140_METHODS_OF_RESEARCH.pdf
ES_140_METHODS_OF_RESEARCH.pdf
 
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
 
Research sfvuiehfvodihvidohidhvhvhh.pptx
Research sfvuiehfvodihvidohidhvhvhh.pptxResearch sfvuiehfvodihvidohidhvhvhh.pptx
Research sfvuiehfvodihvidohidhvhvhh.pptx
 
Introduction research(1).pptx
Introduction research(1).pptxIntroduction research(1).pptx
Introduction research(1).pptx
 
Rubric assignment 1
Rubric   assignment 1Rubric   assignment 1
Rubric assignment 1
 
Chapter 2.pptx
Chapter 2.pptxChapter 2.pptx
Chapter 2.pptx
 
Survey Research in Software Engineering
Survey Research in Software EngineeringSurvey Research in Software Engineering
Survey Research in Software Engineering
 

Recently uploaded

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 

Recently uploaded (20)

Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 

Empirical Software Engineering

  • 2. Table of Contents Introduction         Need for empirical studies in the context of software engineering. Goals and Benefits Basic Concepts: Measurement, Collection, Analysis Basic Concepts for Empirical Software Engineering Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 3. Empirical Software Engineering • • • • • Using other people’s experiences in management and development of softwares Empirical, included in all areas of science “I could have told you that from the start” or “That’s obvious.” Software engineering needs to follow the model of other physical sciences and develop an experimental paradigm for the field. Judging empirical work by the standards of statistics texts would lead to the suppression of many interesting results
  • 4. ESE in the Literature • “Empirical Software Engineering” • “Experimentation in Software Engineering” • “ESEM - Empirical Software Engineering and Measurement “
  • 5. History of Empirical Software engineering
  • 6. History of Empirical Software engineering • Victor Basili(1996) • Quotes Like physics, medicine, manufacturing, and many other disciplines, software engineering requires the same high level approach for evolving the knowledge of the discipline; the cycle of model building, experimentation, and learning. We cannot rely solely on observation followed by logical thought.
  • 9. Conferences (64) Empirical Software Engineering
  • 11. Table of Contents Introduction  Need for empirical studies in the context of software engineering.        Goals and Benefits Basic Concepts: Measurement, Collection, Analysis Goal Question Metric Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 12. Need of Empirical Studies Why should we conduct empirical studies? Product evaluation, e.g., prototyping. Process evaluation 1. Prototypes are not possible (simulation based on models). 2. A process is just a description until it is used by people  Important for research: experimentation is mandatory in other disciplines(e.g., medicine, physics, etc.)
  • 13. Need of Empirical Studies Empirical studies provides a systematic, disciplined, quantifiable and controlled way of evaluating human-based activities. You will learn how to select, plan, conduct and analyse an empirical study.
  • 14. Table of Contents  Introduction  Need for empirical studies in the context of software engineering.  Goals and Benefits       Basic Concepts: Measurement, Collection, Analysis Basic Concepts for Empirical Software Engineering Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 15. Goals and Benefits • The purpose of a study is • The purpose of a study is to explore ... to find out what’s happening to seek for new insights to ask questions and to find answers Measurement: usually qualitative • to describe ... portray accurate profile of situations, events, projects , technologies • • Measurement: quantitative/qualitative to explain ... seek explanation of a situation/problem, usual in the form of causal Relationships Measurement: quantitative/qualitative relationships, differences, changes
  • 16. Empirical Studies in SE • Empirical Studies is research to improve Software Engineering Practice. – Apply theoretical concepts in SE practice. – Add experiences on their appliance to the SE ‘body of knowledge’ – Improve processes, methods and tools (SPPI approach). – Verify theories and models.
  • 17.
  • 18. Table of Contents  Introduction  Need for empirical studies in the context of software engineering.  Goals and Benefits  Basic Concepts: Measurement, Collection, Analysis      Basic Concepts for Empirical Software Engineering Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 19. Some Basic Concepts • Measurement - is the process of capturing data which are connected to real-world attributes to describe them. - Why is measurement important? • Data Collection Collection of qualitative / quantitative data according to research questions • Data Analysis Analyzing the results according to the research questions ; statistical tests
  • 20. Measurement • Quotes - “You can’t manage what you can’t measure”, Tom DeMarco – “What is not measurable make measurable”, Galileo Galilei • Objectives One objective of science is to find ways to measure attributes of entities we are interested in. – Measurement makes concepts more visible and thus more understandable and controllable. • Definition Measurement is the process by which numbers or symbols are mapped to attributes of entities in the real world in such a way as to describe them according to clearly defined rules.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25. Table of Contents     Introduction Need for empirical studies in the context of software engineering. Goals and Benefits Basic Concepts: Measurement, Collection, Analysis  Basic Concepts for Empirical Software Engineering     Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 26.
  • 27. Quality Improvement Paradigm Package & store experience Set goals Analyze results Execute process Project learning Characterize & understand Corporate learning Provide process with feedback Analyze results Choose processes, methods, techniques, and tools
  • 28.
  • 29. The Experience Factory Organization A Different Paradigm Project Organization Problem Solving Experience Factory Experience Packaging Decomposition of a problem into simpler ones Unification of different solutions and re-definition of the problem Instantiation Generalization, Formalization Design/Implementation process Analysis/Synthesis process Validation and Verification Experimentation Product Delivery within Schedule and Cost Experience / Recommendations Delivery to Project
  • 30.
  • 31.
  • 32.
  • 33.
  • 34. Table of Contents          Introduction Need for empirical studies in the context of software engineering. Goals and Benefits Basic Concepts: Measurement, Collection, Analysis Basic Concepts for Empirical Software Engineering Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44. Table of Contents          Introduction Need for empirical studies in the context of software engineering. Goals and Benefits Basic Concepts: Measurement, Collection, Analysis Basic Concepts for Empirical Software Engineering Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools State of the art
  • 45.
  • 46. Table of Contents        Introduction Need for empirical studies in the context of software engineering. Goals and Benefits Basic Concepts: Measurement, Collection, Analysis Goal Question Metric Empirical Strategies: survey, case study, controlled experiment Process of an empirical study  Tools  State of the art
  • 47.
  • 48. Table of Contents         Introduction Need for empirical studies in the context of software engineering. Goals and Benefits Basic Concepts: Measurement, Collection, Analysis Basic Concepts for Empirical Software Engineering Empirical Strategies: survey, case study, controlled experiment Process of an empirical study Tools  State of the art
  • 49. State of the art • Finding better ways to experiment and integrate the results of the studies • Propagate the empirical discipline • Build an empirical research engine for software engineering • Build test beds for experimentation and evolution of processes • Build product models that allow us to make trade-off decisions • Build decision support systems offering the best empirical advice for selecting and tailoring the right processes for the problem
  • 50. • References • • • • • • • • • • • • • • • • • V. Basili, G. Caldiera, D. Rombach: „The Goal Question Metric Approach“,2000. B. Boehm, H.D. Rombach, M.V. Zelkowitz: „Foundations of Empirical Software Engineering – The Legacy of Victor R. Basili“, Springer, 2005. Freimut et al.: "Empirical Studies in Software Engineering", Tutorial, VISEK Technical Report, 2002. IESE Tutorials on Empirical Software Engineering. A. Jedlitschka and D. Pfahl: "Reporting Guidelines for Controlled Experiments in Software Engineering", ISESE, 2005. B. Kitchenham: “Evidence-Based Software Engineering and Systematic Literature Review”, Profes, 2006. C. Wohlin, P. Runeson, M. Höst, M.C. Ohlsson, B. Regnell and A. Wesslen: "Introduction to Experimentation in Software Engineering", Kluver, 2000. M. V. Zelkowitz, D. R. Wallace: “Experimental Models for Validating Technology”, IEEE Computer, 1997. Site : http:// www.microstrategy.com Site : http:// www.jamasoftware.com Site : http://academic.research.microsoft.com
  • 51. Acknowledgments Bahman Zamani Thank you for your attention This research work has been supported by University of Isfahan