SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
22‐6‐2013
1
Case study research in 
information systems engineering
Roel Wieringa
University of Twente
The Netherlands
CAiSE 2013  © Roel Wieringa 20 July 2013 1
Case study research in 
information systems engineering
How to generalize, 
how not to generalize, and
how not to generalize too much
CAiSE 2013  © Roel Wieringa 20 July 2013 2
22‐6‐2013
2
Two things
1. Case study research 
2. Generalizing from cases
CAiSE 2013  © Roel Wieringa 20 July 2013 3
Definition
• In a case study, a case is studied in its real world
context
• (TBD: What is a case?)
CAiSE 2013  © Roel Wieringa 20 July 2013 4
22‐6‐2013
3
Case studies in other sciences
• Middletown. Lynd & Lynd, 1929/1937. Sociology
• Street corner society. Whyte 1943/1955. Sociology
• Explaining the Cuban missile crisis. Allison, 1971. Politocology.
• The man who mistook his wife for a hat. Sacks, 1985. Case 
studies in psychopathology.
• …
CAiSE 2013  © Roel Wieringa 20 July 2013 5
Case studies require a journalistic attitude
• Reporting the facts
– Detailed, concrete, accurate
– Lack of control over events by reporter
– Detached, neutral
• Eye‐witness reports
• Independent fact‐checking
• More than one measurement instrument
• Reporter has no opinion
CAiSE 2013  © Roel Wieringa 20 July 2013 6
22‐6‐2013
4
Case studies require a scientific attitude
1. Using scientific theory
– To ask research questions
– To describe facts
– To explain facts
– To generalize to other cases
2. Acknowledging fallibility of theory
– Submit case study to the critique of others: Peer review.
– Submit theory to the test of observations: Test in future
case studies
CAiSE 2013  © Roel Wieringa 20 July 2013 7
Peer review
Test
To prevent theories turning
into opinions
What, why and how of case studies 
in Information Systems Engineering
CAiSE 2013  © Roel Wieringa 20 July 2013 8
22‐6‐2013
5
Artifact to be investigated,
Problem to be investigated
ISE is a design science
• Design science is the design and study of artifacts in context
– Artifacts: notations, techniques, methods, etc.
– Context: IS engineering
CAiSE 2013  © Roel Wieringa 20 July 2013 9
Designing Investigating
Designing an artifact,
Solving a stakeholder problem,
Achieving their goals
Answering a knowledge question,
Describing, explaining, generalizing
Knowledge about artifact,
Knowledge about problem
Artifact to be investigated,
Problem to be investigated
Examples
CAiSE 2013  © Roel Wieringa 20 July 2013 10
Designing Investigating
• Ly, Rinderle‐Ma, Dadam.  ``Design and Verification of Instantiable Compliance 
Rule Graphs in Process‐Aware Information Systems’’, CAiSE 2010.
• Design an artifact that improves something for stakeholders, 
• Analytical comparison,
• Prototype
• Auer et al., ``Exploratory case study research on SOA investment decision
processes in Austria’’.  CAiSE 2011. Six observational case studies.
• De Boer et al. ``RadioMarché: Distributed voice‐ and web‐interfaced market 
information systems under rural conditions.’’ CAiSE 2012. Action research: 
problem‐treatment‐prototype‐actual use. 
Knowledge about artifact,
Knowledge about problem
22‐6‐2013
6
Examples
CAiSE 2013  © Roel Wieringa 20 July 2013 11
• Auer et al., ``Exploratory case study research on SOA investment decision
processes in Austria’’.  CAiSE 2011. Six observational case studies.
• De Boer et al. ``RadioMarché: Distributed voice‐ and web‐interfaced market 
information systems under rural conditions.’’ CAiSE 2012. Action research: 
problem‐treatment‐prototype‐actual use. 
Observation, no intervention
Observation, and intervention to help the client
• Researcher’s goal: knowledge
• Client’s goal: improvement
• Researcher’s goal: knowledge
Artifact to be investigated,
Problem to be investigated
ISE is a design science
CAiSE 2013  © Roel Wieringa 20 July 2013 12
Designing Investigating
• Conceptual analysis
• Empirical research: 
surveys, experiments, case 
studies, action research
• Meta‐research
Knowledge about artifact,
Knowledge about problem
22‐6‐2013
7
Artifact to be investigated,
Problem to be investigated
Why case studies?
CAiSE 2013  © Roel Wieringa 20 July 2013 13
Designing Investigating
Engineering cycle
• Problem investigation
• Design of artifact
• Validation of designs
• Implementation
• Evaluation
Knowledge about artifact,
Knowledge about problem
Observational
case studies
Technical action 
research
Observational
case studies
To answer some knowledge questions in the engineering cycle
Artifact to be investigated,
Problem to be investigated
Typical case study research questions
CAiSE 2013  © Roel Wieringa 20 July 2013 14
Designing Investigating
Engineering cycle
• Problem investigation
• Design of artifact
• Validation of designs
• Implementation
• Evaluation
Knowledge about artifact,
Knowledge about problem
Observational
case studies
Technical action 
research
Observational
case studies
Stakeholder? Goals? 
Experience? Problems?
Stakeholder? Goals? Experience? Problems?
Effects? Performance?
Effects? Performance?
22‐6‐2013
8
Artifact to be investigated,
Problem to be investigated
How to do case studies?
CAiSE 2013  © Roel Wieringa 20 July 2013 15
Designing Investigating
Empirical cycle
• Research problem
• Research design
• Validation of design
• Execution
• Analysis
Knowledge about artifact,
Knowledge about problem
The empirical cycle
• Research problem investigation
– Conceptual framework, theory, research questions, 
population to which you want to generalize
• Research design
– Object of study, measurement instruments, 
treatment (if any), inferences to be done
• Research design validation
• Research execution
• Analysis of results (inferences from the data)
– Descriptions, explanations, generalization
CAiSE 2013  © Roel Wieringa 20 July 2013 16
22‐6‐2013
9
CAiSE 2013  © Roel Wieringa 20 July 2013 17
Observational case study
Example 1
Damian & Chisan. RE introduction in a development
company. TSE July 2006.
• Research problem
– What are the effects of  RE 
improvements on 
productivity, quality, and risk 
management?
– RE and SE concepts
– No theory ….?
• Research design
– Object of study: A global
development organization
– Interviews, questionnaires
– No inferences planned….
• Validity
• Execution
• Analysis
– Observations
• Descriptive statistics, 
correlations of opinions
– Explanations
• Improvements in P, Q and
RM were caused by RE 
improvement; 
• or by new management; 
• or by other processes
– Generalizations
• Same effects will occur in 
organizations with similar
problems
CAiSE 2013  © Roel Wieringa 20 July 2013 18
22‐6‐2013
10
CAiSE 2013  © Roel Wieringa 20 July 2013 19
Technical action research
Example 2:
Morali & Wieringa: Confidentiality risk assessment in 
outsourcing. RE 2010
• Research problem
– Does the method CRAC++ (designed
by Morali) support risk assessment?
– Without disclosing confidential info?
– Easy to use? Repeatable?
– The method is the theory
• Research design
– Objects of study: Two organizations
– Treatment: Consulting using CRAC++
– Measurement: Diary, interviews, 
work products
– No inferences planned …
• Validity
• Execution
• Analysis
– Observations
• Work products, interview 
results
– Explanations
• Structure of the problem & 
structure of the method
explain results
– Generalizations
• Same effects will occur in 
organizations with similar
problems
CAiSE 2013  © Roel Wieringa 20 July 2013 20
22‐6‐2013
11
• These explanations seem almost analytically true!
• Yes.
• We need a real‐world case to see if the analysis also
stands in the real world
CAiSE 2013  © Roel Wieringa 20 July 2013 21
2. Generalizing from case studies
CAiSE 2013  © Roel Wieringa 20 July 2013 22
22‐6‐2013
12
• If we could not generalize from a single case,  then
we could not learn from a single case.
CAiSE 2013  © Roel Wieringa 20 July 2013 23
Two ways to generalize
• Case‐based
– By analogy
– From case to case
• Sample‐based
– Random sample of at least 30 cases. 100 is better.
– Few variables
– From averages, variances, correlations of variables over 
cases in the sample …. generalize to the population
CAiSE 2013  © Roel Wieringa 20 July 2013 24
Not for case  studies
22‐6‐2013
13
The object of study in design science
CAiSE 2013  © Roel Wieringa 20 July 2013 25
Artifact
Notations, techniques, 
algorithms, methods, 
concepts, software, 
hardware, organizations, …
Context
Stakeholders, goals, norms, 
values, other artifacts
Case‐based reasoning in design science
CAiSE 2013  © Roel Wieringa 20 July 2013 26
Artifact
Notations, techniques, 
algorithms, methods, 
concepts, software, 
hardware, organizations, …
Context
Stakeholders, goals, norms, 
values, other artifacts
Description ``We observed that the artifact interacts with this
real‐world context in this way.’’
Explanation ``Why? Causes, mechanisms?’’
Generalization ``In which other cases too? Similarity?’’
Theory
22‐6‐2013
14
• What we generalize from a case is an
explanation
• Architectural explanations make this
generalization less fallible than other
explanations
CAiSE 2013  © Roel Wieringa 20 July 2013 27
How to generalize from a single case 
by architectural analogy
1. Describe architecture of the case
– Components and their capabilities
– Possible interactions between components
2. Observe how components respond to events
3. Explain in terms of components and their
interactions (called mechanisms)
4. Generalize by analogy
– ``In a similar architecture, similar mechanisms will occur’’
CAiSE 2013  © Roel Wieringa 20 July 2013 28
22‐6‐2013
15
How to continue by analytical induction
5. To confirm
– Find a similar case
– Test if prediction is correct
6. To falsify
– Find a dissimilar case
– Test if prediction occurs anyway
7. In both cases, refine
– The conceptual framework and/or 
– The generalization
CAiSE 2013  © Roel Wieringa 20 July 2013 29
How to generalize from a single case 
by architectural analogy
1. Describe architecture of the case
– Components and their capabilities
– Interactions between components
2. Observe how components respond to events
3. Explain in terms of components and their
interactions (which we call mechanisms)
4. Generalize by analogy
– ``In a similar architecture, similar mechanisms will occur’’
CAiSE 2013  © Roel Wieringa 20 July 2013 30
22‐6‐2013
16
Explanation
• Causal explanation refers to variables
– ``Temperature increased because pressure increased’’
– ``Account balance increased because interest is high’’
• Mechanical explanation refers to components and
interactions
– ``Pressure increase produces more collisions between gas 
particles, which raises their kinetic energy by which the gas 
becomes hotter’’
– Mechanisms can explain causality between variables
• But are there social mechanisms? 
• Yes!
CAiSE 2013  © Roel Wieringa 20 July 2013 31
Damian & Chisan. RE introduction in a 
development company. TSE July 2006.
CAiSE 2013  © Roel Wieringa 20 July 2013 32
An architectural
model.
Mechanisms that
explain improved
productivity, 
quality, risk mgmt:
C‐F team 
• improves shared 
feature 
understanding,
• reduces rework
C‐C board 
• prevents
requirement
creep
22‐6‐2013
17
Damian & Chisan. RE introduction in a 
development company. TSE July 2006.
CAiSE 2013  © Roel Wieringa 20 July 2013 33
A variable‐based
model
Observed
correlations
Properties
and activities
of a cross‐
functional
team
Capabilities
C‐F team
capability
C‐C board
capability
Effects
Variable‐based and architectural
explanations
• Variable‐based explanations refer to causes
– Change in X causes change in Y
• Architectural explanations refer to mechanisms
– Components with capabilities and interactions
– Mechanism = interaction between components that
produces effects
• A mechanism can explain a cause‐effect relation
CAiSE 2013  © Roel Wieringa 20 July 2013 34
22‐6‐2013
18
How to generalize from a single case 
by architectural analogy
1. Describe architecture of the case
– Components and their capabilities
– Interactions between components
2. Observe how components respond to events
3. Explain in terms of components and their
interactions (which we call mechanisms)
4. Generalize by analogy
– ``In a similar architecture, similar mechanisms will occur’’
CAiSE 2013  © Roel Wieringa 20 July 2013 35
Variable‐based analogy
• ``Piet is a computer scientist from NL, is tall and likes
cheese.’’
• ``Anne is a computer scientist from NL’’.
• ``Anne is tall and likes cheese’’ 
CAiSE 2013  © Roel Wieringa 20 July 2013 36
22‐6‐2013
19
CAiSE 2013  © Roel Wieringa 20 July 2013 37
• ``Pointed metal rod attracts electric fluid in the 
laboratory.’’ 
• ``In the laboratory, electric fluid produces light and
crackling noise in a swift crooked motion, destroys
animals and melts metals.’’
• ``Lightning produces light and crackling noise in a swift
crooked motion, destroys animals and melts metals.’’
• ``Pointed metal rod will attract lightning.’’
Benjamin Franklin, 
1749
Variable‐based analogy
• Looks at similarity in features
• It may lead to a correct generalizations, if we talk 
about a natural kind.
• ``If it walks like a duck and sounds like a duck, it is a 
duck.’’
• But: it is very unreliable reasoning
– Similar to sympathetic magic
• Mechanism that can support conclusion is unknown
CAiSE 2013  © Roel Wieringa 20 July 2013 38
22‐6‐2013
20
Component‐based analogy
• ``Project X 
– develops an information system, 
– it has more than 15 people in the delivery team, and
– it is too late due to coordination and communication
overhead among developers
• ``Project Y 
– develops an information system, 
– it has more than 15 people in the delivery team.’’
• ``Project Y will be late due to coordination and
communication overhead among developers too.’’
CAiSE 2013  © Roel Wieringa 20 July 2013 39
Mechanism
We generalize the 
mechanism
Example 2:
Morali & Wieringa: Confidentiality risk assessment in 
outsourcing. RE 2010
• Architecture
– Manufacturing company A, outsourcing ERP administration to
outsourcing service provider B
– Employees of B have access to info in ERP system
– Sarbanes‐Oxley compliance requirement on A
– Auditors of A do not have access to B’s IT architecture
– Security analyst has access to shared outsourcing architecture
• This results in  a deadlock mechanism: auditors of A cannot
give compliance judgment
CAiSE 2013  © Roel Wieringa 20 July 2013 40
22‐6‐2013
21
• The CRAC++ method introduces a new mechanism by
which IT confidentiality risks can be assessed, 
– which allows renegotiation of SLA, 
– which allows auditors to give judgment
CAiSE 2013  © Roel Wieringa 20 July 2013 41
• NB the method is the theory is the mechanism. 
• Versus natural mechanisms
CAiSE 2013  © Roel Wieringa 20 July 2013 42
22‐6‐2013
22
Summary of single‐case generalization
1. Describe architecture of the case
– Components and their capabilities
– Interactions
2. Observe emergent effects
3. Explain effects in terms of mechanisms.
4. Generalize by analogy
– ``In a similar architecture, similar mechanisms will occur’’
CAiSE 2013  © Roel Wieringa 20 July 2013 43
However ….
• Architectural analogy is fallible
– What if we misunderstood the mechanism?
– What if we misjudge similarity?
– What if in the next similar case, other mechanisms defeat
the one we observed?
CAiSE 2013  © Roel Wieringa 20 July 2013 44
22‐6‐2013
23
How to continue by analytical
induction
5. To confirm an architectural generalization
– Find an analogous case
– Test if mechanism has same effect
6. To falsify
– Find a dissimilar case
– Test if effect occurs anyway
7. In both cases, refine to match all cases so far
– Improve the conceptual framework and/or 
– Improve the generalization
CAiSE 2013  © Roel Wieringa 20 July 2013 45
A. Mockus, R. Fielding, and J. Herbsleb,
“Two case studies of open source software development: 
Apache and Mozilla,” TOSEM july 2002.
• Architecture: open source development project.
• After first case study:
– Mechanism: A core developer team  larger than 15 people gets
overwhelmed by communication & coordination overhead
• Second case study falsified this.
– Mechanism a: A core developer team larger than 15 people
without defined process as in Apache, gets overwhelmed by
communication & coordination overhead
– Mechanism b: If core developer team has a defined process, as 
in Mozilla, it may consist of up to 36 developers without being
overwehelmed by C & C overhead
CAiSE 2013  © Roel Wieringa 20 July 2013 46
22‐6‐2013
24
• Why is case‐based induction analytical?
– The emergent effects follow analytically from the 
architecture
CAiSE 2013  © Roel Wieringa 20 July 2013 47
• Why is case‐based induction analytical?
– The emergent effects follow analytically from the 
architecture
CAiSE 2013  © Roel Wieringa 20 July 2013 48
• Galileo Galilei (1564‐1642):
• ``Two cannon balls of equal
weight fall equally fast.
• Put a string between them.
• The resulting object is twice as 
heavy but falls at the same
speed as the original two
cannon balls’’
22‐6‐2013
25
• Galileo never did the experiment
• He knew what the outcome would be because he 
had an analytical argument for it
• He unwittingly made an idealizing assumption: no air 
resistance
• Need to test the generalization in conditions of 
practice! Case studies needed
CAiSE 2013  © Roel Wieringa 20 July 2013 49
Galilean idealization
• Galileo used idealization to understand the real 
world
– Point masses
– Frictionless surfaces
– …
• We do that in computer science too
– Turing machines
– Infinite data types 
– ….
CAiSE 2013  © Roel Wieringa 20 July 2013 50
22‐6‐2013
26
Idealization in basic science and design 
science
• Basic scientist approximate idealizations in the 
laboratory
– Laboratory experiments are similar to the ideal case
– Replications of idealized lab experiments are identical
– Research budget spent on creating ideal conditions.
• Contrast with design science
– We spend our budget on simulating real‐world conditions
– and therefore on doing case studies.
CAiSE 2013  © Roel Wieringa 20 July 2013 51
The real world is not ideal
• How to apply idealizing laws of nature?
– You can’t.
– First you must drop the idealizations
CAiSE 2013  © Roel Wieringa 20 July 2013 52
22‐6‐2013
27
The world is full of details
• Conditions of practice do not do us the favor
of going away
– Every case is unique
– We are interested in the general mechanisms in a 
case, but perhaps there are too many details for
us to see them.
CAiSE 2013  © Roel Wieringa 20 July 2013 53
Mechanisms are non‐compositional
• A case may contain aditional mechanisms that
interfere with the original mechanism
• We do not know how to compose mechanisms in 
general
– There is a universal law of vector addition
– But no universal law of mechanism addition
– We have to investigate this case by case
CAiSE 2013  © Roel Wieringa 20 July 2013 54
22‐6‐2013
28
Case‐based generalization is limited
– Researchers have to reason case by case
• Analytical induction is a way to check if we have dropped
idealizations in the right way
• Generalizations are limited and uncertain.
– Practitioners have to do a risk assessment case by
case
• What is the risk of applying the wrong generalization?
• What is the risk of missing the right generalization?
CAiSE 2013  © Roel Wieringa 20 July 2013 55
56
Mid‐range generalizations
Design sciences:
Software engineering, Information 
systems, Computer Science, Electrical
engineering, Mechanical engineering, ...
CAiSE 2013  © Roel Wieringa 20 July 2013
Generalization
Universal
(for all …)
Existential
(for some …)
Case
Idealized 
conditions
Conditions 
of practice
Realistic 
conditions
Practice
Lab credibility
Street credibility
Mid‐range 
generalizations
Case research:
Engineering, Consultancy, 
Psychotherapy, Health 
care,  Management, 
Politics, ...
Basic sciences (about the universe):
Physics, Chemistry, Biology
22‐6‐2013
29
What is a case?
• A system
– A coherent collection of phenomena
• We are studying its architecture
CAiSE 2013  © Roel Wieringa 20 July 2013 57
Summary part 2
Case‐based generalization
• How to generalize from cases
– By analytical induction over a series of cases
– Using architectural analogy
• How not to generalize from cases
– By statistical inference
– By variable‐based analogy
• How not to generalize too much
– Mid‐range generalizations
– Practitioners do a risk assessment when applying a 
generalization
CAiSE 2013  © Roel Wieringa 20 July 2013 58
22‐6‐2013
30
Thank you!
CAiSE 2013  © Roel Wieringa 20 July 2013 59

Mais conteúdo relacionado

Semelhante a Case Study Research in Information Systems Engineering

(Definition, tyoes of research, invention, innovation and reseaarch).pptx
(Definition, tyoes of research, invention, innovation and reseaarch).pptx(Definition, tyoes of research, invention, innovation and reseaarch).pptx
(Definition, tyoes of research, invention, innovation and reseaarch).pptxCharuNangia
 
Fundamentals of Data science Introduction Unit 1
Fundamentals of Data science Introduction Unit 1Fundamentals of Data science Introduction Unit 1
Fundamentals of Data science Introduction Unit 1sasi
 
Unit 02 [compatibility mode]
Unit 02 [compatibility mode]Unit 02 [compatibility mode]
Unit 02 [compatibility mode]Manjubala Us
 
Social Science Research and Methodology
Social Science Research and MethodologySocial Science Research and Methodology
Social Science Research and MethodologyRestyHezronDamaso1
 
Field Studies as evaluation method for socio-technical interventions in Techn...
Field Studies as evaluation method for socio-technical interventions in Techn...Field Studies as evaluation method for socio-technical interventions in Techn...
Field Studies as evaluation method for socio-technical interventions in Techn...Viktoria Pammer-Schindler
 
Developing and Publishing Academic Products
Developing and PublishingAcademic ProductsDeveloping and PublishingAcademic Products
Developing and Publishing Academic ProductsSanjay Goel
 
Theories in Empirical Software Engineering
Theories in Empirical Software EngineeringTheories in Empirical Software Engineering
Theories in Empirical Software EngineeringDaniel Mendez
 
Lecture_1_-_Research_Methods_-_Introduction.pdf
Lecture_1_-_Research_Methods_-_Introduction.pdfLecture_1_-_Research_Methods_-_Introduction.pdf
Lecture_1_-_Research_Methods_-_Introduction.pdfJeffreys Togelang
 
Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)Ian Sommerville
 
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 learntDaniel Mendez
 
2011.10.10 Multi-Disciplinary Research Themes and Training
2011.10.10 Multi-Disciplinary Research Themes and Training2011.10.10 Multi-Disciplinary Research Themes and Training
2011.10.10 Multi-Disciplinary Research Themes and TrainingNUI Galway
 
perpuzz6lecpptch03-140120152515-phpapp01.pdf
perpuzz6lecpptch03-140120152515-phpapp01.pdfperpuzz6lecpptch03-140120152515-phpapp01.pdf
perpuzz6lecpptch03-140120152515-phpapp01.pdfJustinB27
 
Presentación SocietalImpact Daniel Torres
Presentación SocietalImpact Daniel Torres Presentación SocietalImpact Daniel Torres
Presentación SocietalImpact Daniel Torres EC3metrics Spin-Off
 

Semelhante a Case Study Research in Information Systems Engineering (20)

Unit 1_22MCA21T_F.ppt
Unit 1_22MCA21T_F.pptUnit 1_22MCA21T_F.ppt
Unit 1_22MCA21T_F.ppt
 
(Definition, tyoes of research, invention, innovation and reseaarch).pptx
(Definition, tyoes of research, invention, innovation and reseaarch).pptx(Definition, tyoes of research, invention, innovation and reseaarch).pptx
(Definition, tyoes of research, invention, innovation and reseaarch).pptx
 
Fundamentals of Data science Introduction Unit 1
Fundamentals of Data science Introduction Unit 1Fundamentals of Data science Introduction Unit 1
Fundamentals of Data science Introduction Unit 1
 
Unit 02 [compatibility mode]
Unit 02 [compatibility mode]Unit 02 [compatibility mode]
Unit 02 [compatibility mode]
 
Social Science Research and Methodology
Social Science Research and MethodologySocial Science Research and Methodology
Social Science Research and Methodology
 
Field Studies as evaluation method for socio-technical interventions in Techn...
Field Studies as evaluation method for socio-technical interventions in Techn...Field Studies as evaluation method for socio-technical interventions in Techn...
Field Studies as evaluation method for socio-technical interventions in Techn...
 
VR Research Ethics
VR Research EthicsVR Research Ethics
VR Research Ethics
 
Developing and Publishing Academic Products
Developing and PublishingAcademic ProductsDeveloping and PublishingAcademic Products
Developing and Publishing Academic Products
 
Theories in Empirical Software Engineering
Theories in Empirical Software EngineeringTheories in Empirical Software Engineering
Theories in Empirical Software Engineering
 
Lecture_1_-_Research_Methods_-_Introduction.pdf
Lecture_1_-_Research_Methods_-_Introduction.pdfLecture_1_-_Research_Methods_-_Introduction.pdf
Lecture_1_-_Research_Methods_-_Introduction.pdf
 
Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)Research methods for socio-technical systems analysis (LSCITS EngD 2012)
Research methods for socio-technical systems analysis (LSCITS EngD 2012)
 
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
 
2011.10.10 Multi-Disciplinary Research Themes and Training
2011.10.10 Multi-Disciplinary Research Themes and Training2011.10.10 Multi-Disciplinary Research Themes and Training
2011.10.10 Multi-Disciplinary Research Themes and Training
 
perpuzz6lecpptch03-140120152515-phpapp01.pdf
perpuzz6lecpptch03-140120152515-phpapp01.pdfperpuzz6lecpptch03-140120152515-phpapp01.pdf
perpuzz6lecpptch03-140120152515-phpapp01.pdf
 
Daily chores.ppt
Daily chores.pptDaily chores.ppt
Daily chores.ppt
 
social science research methodology 1
 social science research methodology 1 social science research methodology 1
social science research methodology 1
 
Societal Impact
Societal Impact Societal Impact
Societal Impact
 
Presentación SocietalImpact Daniel Torres
Presentación SocietalImpact Daniel Torres Presentación SocietalImpact Daniel Torres
Presentación SocietalImpact Daniel Torres
 
Art of Richness.ppt
Art of Richness.pptArt of Richness.ppt
Art of Richness.ppt
 
brm ppts.ppt
brm ppts.pptbrm ppts.ppt
brm ppts.ppt
 

Último

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
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
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
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
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 

Último (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
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
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
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
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

Case Study Research in Information Systems Engineering

  • 2. 22‐6‐2013 2 Two things 1. Case study research  2. Generalizing from cases CAiSE 2013  © Roel Wieringa 20 July 2013 3 Definition • In a case study, a case is studied in its real world context • (TBD: What is a case?) CAiSE 2013  © Roel Wieringa 20 July 2013 4
  • 3. 22‐6‐2013 3 Case studies in other sciences • Middletown. Lynd & Lynd, 1929/1937. Sociology • Street corner society. Whyte 1943/1955. Sociology • Explaining the Cuban missile crisis. Allison, 1971. Politocology. • The man who mistook his wife for a hat. Sacks, 1985. Case  studies in psychopathology. • … CAiSE 2013  © Roel Wieringa 20 July 2013 5 Case studies require a journalistic attitude • Reporting the facts – Detailed, concrete, accurate – Lack of control over events by reporter – Detached, neutral • Eye‐witness reports • Independent fact‐checking • More than one measurement instrument • Reporter has no opinion CAiSE 2013  © Roel Wieringa 20 July 2013 6
  • 4. 22‐6‐2013 4 Case studies require a scientific attitude 1. Using scientific theory – To ask research questions – To describe facts – To explain facts – To generalize to other cases 2. Acknowledging fallibility of theory – Submit case study to the critique of others: Peer review. – Submit theory to the test of observations: Test in future case studies CAiSE 2013  © Roel Wieringa 20 July 2013 7 Peer review Test To prevent theories turning into opinions What, why and how of case studies  in Information Systems Engineering CAiSE 2013  © Roel Wieringa 20 July 2013 8
  • 5. 22‐6‐2013 5 Artifact to be investigated, Problem to be investigated ISE is a design science • Design science is the design and study of artifacts in context – Artifacts: notations, techniques, methods, etc. – Context: IS engineering CAiSE 2013  © Roel Wieringa 20 July 2013 9 Designing Investigating Designing an artifact, Solving a stakeholder problem, Achieving their goals Answering a knowledge question, Describing, explaining, generalizing Knowledge about artifact, Knowledge about problem Artifact to be investigated, Problem to be investigated Examples CAiSE 2013  © Roel Wieringa 20 July 2013 10 Designing Investigating • Ly, Rinderle‐Ma, Dadam.  ``Design and Verification of Instantiable Compliance  Rule Graphs in Process‐Aware Information Systems’’, CAiSE 2010. • Design an artifact that improves something for stakeholders,  • Analytical comparison, • Prototype • Auer et al., ``Exploratory case study research on SOA investment decision processes in Austria’’.  CAiSE 2011. Six observational case studies. • De Boer et al. ``RadioMarché: Distributed voice‐ and web‐interfaced market  information systems under rural conditions.’’ CAiSE 2012. Action research:  problem‐treatment‐prototype‐actual use.  Knowledge about artifact, Knowledge about problem
  • 6. 22‐6‐2013 6 Examples CAiSE 2013  © Roel Wieringa 20 July 2013 11 • Auer et al., ``Exploratory case study research on SOA investment decision processes in Austria’’.  CAiSE 2011. Six observational case studies. • De Boer et al. ``RadioMarché: Distributed voice‐ and web‐interfaced market  information systems under rural conditions.’’ CAiSE 2012. Action research:  problem‐treatment‐prototype‐actual use.  Observation, no intervention Observation, and intervention to help the client • Researcher’s goal: knowledge • Client’s goal: improvement • Researcher’s goal: knowledge Artifact to be investigated, Problem to be investigated ISE is a design science CAiSE 2013  © Roel Wieringa 20 July 2013 12 Designing Investigating • Conceptual analysis • Empirical research:  surveys, experiments, case  studies, action research • Meta‐research Knowledge about artifact, Knowledge about problem
  • 7. 22‐6‐2013 7 Artifact to be investigated, Problem to be investigated Why case studies? CAiSE 2013  © Roel Wieringa 20 July 2013 13 Designing Investigating Engineering cycle • Problem investigation • Design of artifact • Validation of designs • Implementation • Evaluation Knowledge about artifact, Knowledge about problem Observational case studies Technical action  research Observational case studies To answer some knowledge questions in the engineering cycle Artifact to be investigated, Problem to be investigated Typical case study research questions CAiSE 2013  © Roel Wieringa 20 July 2013 14 Designing Investigating Engineering cycle • Problem investigation • Design of artifact • Validation of designs • Implementation • Evaluation Knowledge about artifact, Knowledge about problem Observational case studies Technical action  research Observational case studies Stakeholder? Goals?  Experience? Problems? Stakeholder? Goals? Experience? Problems? Effects? Performance? Effects? Performance?
  • 8. 22‐6‐2013 8 Artifact to be investigated, Problem to be investigated How to do case studies? CAiSE 2013  © Roel Wieringa 20 July 2013 15 Designing Investigating Empirical cycle • Research problem • Research design • Validation of design • Execution • Analysis Knowledge about artifact, Knowledge about problem The empirical cycle • Research problem investigation – Conceptual framework, theory, research questions,  population to which you want to generalize • Research design – Object of study, measurement instruments,  treatment (if any), inferences to be done • Research design validation • Research execution • Analysis of results (inferences from the data) – Descriptions, explanations, generalization CAiSE 2013  © Roel Wieringa 20 July 2013 16
  • 9. 22‐6‐2013 9 CAiSE 2013  © Roel Wieringa 20 July 2013 17 Observational case study Example 1 Damian & Chisan. RE introduction in a development company. TSE July 2006. • Research problem – What are the effects of  RE  improvements on  productivity, quality, and risk  management? – RE and SE concepts – No theory ….? • Research design – Object of study: A global development organization – Interviews, questionnaires – No inferences planned…. • Validity • Execution • Analysis – Observations • Descriptive statistics,  correlations of opinions – Explanations • Improvements in P, Q and RM were caused by RE  improvement;  • or by new management;  • or by other processes – Generalizations • Same effects will occur in  organizations with similar problems CAiSE 2013  © Roel Wieringa 20 July 2013 18
  • 10. 22‐6‐2013 10 CAiSE 2013  © Roel Wieringa 20 July 2013 19 Technical action research Example 2: Morali & Wieringa: Confidentiality risk assessment in  outsourcing. RE 2010 • Research problem – Does the method CRAC++ (designed by Morali) support risk assessment? – Without disclosing confidential info? – Easy to use? Repeatable? – The method is the theory • Research design – Objects of study: Two organizations – Treatment: Consulting using CRAC++ – Measurement: Diary, interviews,  work products – No inferences planned … • Validity • Execution • Analysis – Observations • Work products, interview  results – Explanations • Structure of the problem &  structure of the method explain results – Generalizations • Same effects will occur in  organizations with similar problems CAiSE 2013  © Roel Wieringa 20 July 2013 20
  • 11. 22‐6‐2013 11 • These explanations seem almost analytically true! • Yes. • We need a real‐world case to see if the analysis also stands in the real world CAiSE 2013  © Roel Wieringa 20 July 2013 21 2. Generalizing from case studies CAiSE 2013  © Roel Wieringa 20 July 2013 22
  • 12. 22‐6‐2013 12 • If we could not generalize from a single case,  then we could not learn from a single case. CAiSE 2013  © Roel Wieringa 20 July 2013 23 Two ways to generalize • Case‐based – By analogy – From case to case • Sample‐based – Random sample of at least 30 cases. 100 is better. – Few variables – From averages, variances, correlations of variables over  cases in the sample …. generalize to the population CAiSE 2013  © Roel Wieringa 20 July 2013 24 Not for case  studies
  • 13. 22‐6‐2013 13 The object of study in design science CAiSE 2013  © Roel Wieringa 20 July 2013 25 Artifact Notations, techniques,  algorithms, methods,  concepts, software,  hardware, organizations, … Context Stakeholders, goals, norms,  values, other artifacts Case‐based reasoning in design science CAiSE 2013  © Roel Wieringa 20 July 2013 26 Artifact Notations, techniques,  algorithms, methods,  concepts, software,  hardware, organizations, … Context Stakeholders, goals, norms,  values, other artifacts Description ``We observed that the artifact interacts with this real‐world context in this way.’’ Explanation ``Why? Causes, mechanisms?’’ Generalization ``In which other cases too? Similarity?’’ Theory
  • 14. 22‐6‐2013 14 • What we generalize from a case is an explanation • Architectural explanations make this generalization less fallible than other explanations CAiSE 2013  © Roel Wieringa 20 July 2013 27 How to generalize from a single case  by architectural analogy 1. Describe architecture of the case – Components and their capabilities – Possible interactions between components 2. Observe how components respond to events 3. Explain in terms of components and their interactions (called mechanisms) 4. Generalize by analogy – ``In a similar architecture, similar mechanisms will occur’’ CAiSE 2013  © Roel Wieringa 20 July 2013 28
  • 15. 22‐6‐2013 15 How to continue by analytical induction 5. To confirm – Find a similar case – Test if prediction is correct 6. To falsify – Find a dissimilar case – Test if prediction occurs anyway 7. In both cases, refine – The conceptual framework and/or  – The generalization CAiSE 2013  © Roel Wieringa 20 July 2013 29 How to generalize from a single case  by architectural analogy 1. Describe architecture of the case – Components and their capabilities – Interactions between components 2. Observe how components respond to events 3. Explain in terms of components and their interactions (which we call mechanisms) 4. Generalize by analogy – ``In a similar architecture, similar mechanisms will occur’’ CAiSE 2013  © Roel Wieringa 20 July 2013 30
  • 16. 22‐6‐2013 16 Explanation • Causal explanation refers to variables – ``Temperature increased because pressure increased’’ – ``Account balance increased because interest is high’’ • Mechanical explanation refers to components and interactions – ``Pressure increase produces more collisions between gas  particles, which raises their kinetic energy by which the gas  becomes hotter’’ – Mechanisms can explain causality between variables • But are there social mechanisms?  • Yes! CAiSE 2013  © Roel Wieringa 20 July 2013 31 Damian & Chisan. RE introduction in a  development company. TSE July 2006. CAiSE 2013  © Roel Wieringa 20 July 2013 32 An architectural model. Mechanisms that explain improved productivity,  quality, risk mgmt: C‐F team  • improves shared  feature  understanding, • reduces rework C‐C board  • prevents requirement creep
  • 17. 22‐6‐2013 17 Damian & Chisan. RE introduction in a  development company. TSE July 2006. CAiSE 2013  © Roel Wieringa 20 July 2013 33 A variable‐based model Observed correlations Properties and activities of a cross‐ functional team Capabilities C‐F team capability C‐C board capability Effects Variable‐based and architectural explanations • Variable‐based explanations refer to causes – Change in X causes change in Y • Architectural explanations refer to mechanisms – Components with capabilities and interactions – Mechanism = interaction between components that produces effects • A mechanism can explain a cause‐effect relation CAiSE 2013  © Roel Wieringa 20 July 2013 34
  • 18. 22‐6‐2013 18 How to generalize from a single case  by architectural analogy 1. Describe architecture of the case – Components and their capabilities – Interactions between components 2. Observe how components respond to events 3. Explain in terms of components and their interactions (which we call mechanisms) 4. Generalize by analogy – ``In a similar architecture, similar mechanisms will occur’’ CAiSE 2013  © Roel Wieringa 20 July 2013 35 Variable‐based analogy • ``Piet is a computer scientist from NL, is tall and likes cheese.’’ • ``Anne is a computer scientist from NL’’. • ``Anne is tall and likes cheese’’  CAiSE 2013  © Roel Wieringa 20 July 2013 36
  • 19. 22‐6‐2013 19 CAiSE 2013  © Roel Wieringa 20 July 2013 37 • ``Pointed metal rod attracts electric fluid in the  laboratory.’’  • ``In the laboratory, electric fluid produces light and crackling noise in a swift crooked motion, destroys animals and melts metals.’’ • ``Lightning produces light and crackling noise in a swift crooked motion, destroys animals and melts metals.’’ • ``Pointed metal rod will attract lightning.’’ Benjamin Franklin,  1749 Variable‐based analogy • Looks at similarity in features • It may lead to a correct generalizations, if we talk  about a natural kind. • ``If it walks like a duck and sounds like a duck, it is a  duck.’’ • But: it is very unreliable reasoning – Similar to sympathetic magic • Mechanism that can support conclusion is unknown CAiSE 2013  © Roel Wieringa 20 July 2013 38
  • 20. 22‐6‐2013 20 Component‐based analogy • ``Project X  – develops an information system,  – it has more than 15 people in the delivery team, and – it is too late due to coordination and communication overhead among developers • ``Project Y  – develops an information system,  – it has more than 15 people in the delivery team.’’ • ``Project Y will be late due to coordination and communication overhead among developers too.’’ CAiSE 2013  © Roel Wieringa 20 July 2013 39 Mechanism We generalize the  mechanism Example 2: Morali & Wieringa: Confidentiality risk assessment in  outsourcing. RE 2010 • Architecture – Manufacturing company A, outsourcing ERP administration to outsourcing service provider B – Employees of B have access to info in ERP system – Sarbanes‐Oxley compliance requirement on A – Auditors of A do not have access to B’s IT architecture – Security analyst has access to shared outsourcing architecture • This results in  a deadlock mechanism: auditors of A cannot give compliance judgment CAiSE 2013  © Roel Wieringa 20 July 2013 40
  • 21. 22‐6‐2013 21 • The CRAC++ method introduces a new mechanism by which IT confidentiality risks can be assessed,  – which allows renegotiation of SLA,  – which allows auditors to give judgment CAiSE 2013  © Roel Wieringa 20 July 2013 41 • NB the method is the theory is the mechanism.  • Versus natural mechanisms CAiSE 2013  © Roel Wieringa 20 July 2013 42
  • 22. 22‐6‐2013 22 Summary of single‐case generalization 1. Describe architecture of the case – Components and their capabilities – Interactions 2. Observe emergent effects 3. Explain effects in terms of mechanisms. 4. Generalize by analogy – ``In a similar architecture, similar mechanisms will occur’’ CAiSE 2013  © Roel Wieringa 20 July 2013 43 However …. • Architectural analogy is fallible – What if we misunderstood the mechanism? – What if we misjudge similarity? – What if in the next similar case, other mechanisms defeat the one we observed? CAiSE 2013  © Roel Wieringa 20 July 2013 44
  • 23. 22‐6‐2013 23 How to continue by analytical induction 5. To confirm an architectural generalization – Find an analogous case – Test if mechanism has same effect 6. To falsify – Find a dissimilar case – Test if effect occurs anyway 7. In both cases, refine to match all cases so far – Improve the conceptual framework and/or  – Improve the generalization CAiSE 2013  © Roel Wieringa 20 July 2013 45 A. Mockus, R. Fielding, and J. Herbsleb, “Two case studies of open source software development:  Apache and Mozilla,” TOSEM july 2002. • Architecture: open source development project. • After first case study: – Mechanism: A core developer team  larger than 15 people gets overwhelmed by communication & coordination overhead • Second case study falsified this. – Mechanism a: A core developer team larger than 15 people without defined process as in Apache, gets overwhelmed by communication & coordination overhead – Mechanism b: If core developer team has a defined process, as  in Mozilla, it may consist of up to 36 developers without being overwehelmed by C & C overhead CAiSE 2013  © Roel Wieringa 20 July 2013 46
  • 24. 22‐6‐2013 24 • Why is case‐based induction analytical? – The emergent effects follow analytically from the  architecture CAiSE 2013  © Roel Wieringa 20 July 2013 47 • Why is case‐based induction analytical? – The emergent effects follow analytically from the  architecture CAiSE 2013  © Roel Wieringa 20 July 2013 48 • Galileo Galilei (1564‐1642): • ``Two cannon balls of equal weight fall equally fast. • Put a string between them. • The resulting object is twice as  heavy but falls at the same speed as the original two cannon balls’’
  • 25. 22‐6‐2013 25 • Galileo never did the experiment • He knew what the outcome would be because he  had an analytical argument for it • He unwittingly made an idealizing assumption: no air  resistance • Need to test the generalization in conditions of  practice! Case studies needed CAiSE 2013  © Roel Wieringa 20 July 2013 49 Galilean idealization • Galileo used idealization to understand the real  world – Point masses – Frictionless surfaces – … • We do that in computer science too – Turing machines – Infinite data types  – …. CAiSE 2013  © Roel Wieringa 20 July 2013 50
  • 26. 22‐6‐2013 26 Idealization in basic science and design  science • Basic scientist approximate idealizations in the  laboratory – Laboratory experiments are similar to the ideal case – Replications of idealized lab experiments are identical – Research budget spent on creating ideal conditions. • Contrast with design science – We spend our budget on simulating real‐world conditions – and therefore on doing case studies. CAiSE 2013  © Roel Wieringa 20 July 2013 51 The real world is not ideal • How to apply idealizing laws of nature? – You can’t. – First you must drop the idealizations CAiSE 2013  © Roel Wieringa 20 July 2013 52
  • 27. 22‐6‐2013 27 The world is full of details • Conditions of practice do not do us the favor of going away – Every case is unique – We are interested in the general mechanisms in a  case, but perhaps there are too many details for us to see them. CAiSE 2013  © Roel Wieringa 20 July 2013 53 Mechanisms are non‐compositional • A case may contain aditional mechanisms that interfere with the original mechanism • We do not know how to compose mechanisms in  general – There is a universal law of vector addition – But no universal law of mechanism addition – We have to investigate this case by case CAiSE 2013  © Roel Wieringa 20 July 2013 54
  • 28. 22‐6‐2013 28 Case‐based generalization is limited – Researchers have to reason case by case • Analytical induction is a way to check if we have dropped idealizations in the right way • Generalizations are limited and uncertain. – Practitioners have to do a risk assessment case by case • What is the risk of applying the wrong generalization? • What is the risk of missing the right generalization? CAiSE 2013  © Roel Wieringa 20 July 2013 55 56 Mid‐range generalizations Design sciences: Software engineering, Information  systems, Computer Science, Electrical engineering, Mechanical engineering, ... CAiSE 2013  © Roel Wieringa 20 July 2013 Generalization Universal (for all …) Existential (for some …) Case Idealized  conditions Conditions  of practice Realistic  conditions Practice Lab credibility Street credibility Mid‐range  generalizations Case research: Engineering, Consultancy,  Psychotherapy, Health  care,  Management,  Politics, ... Basic sciences (about the universe): Physics, Chemistry, Biology
  • 29. 22‐6‐2013 29 What is a case? • A system – A coherent collection of phenomena • We are studying its architecture CAiSE 2013  © Roel Wieringa 20 July 2013 57 Summary part 2 Case‐based generalization • How to generalize from cases – By analytical induction over a series of cases – Using architectural analogy • How not to generalize from cases – By statistical inference – By variable‐based analogy • How not to generalize too much – Mid‐range generalizations – Practitioners do a risk assessment when applying a  generalization CAiSE 2013  © Roel Wieringa 20 July 2013 58