Case studies are an empirical method with established design principles for conducting scientific investigations.
The topic of this half-day tutorial was case studies as an empirical research method.
The main resource for the course was the book "Case Study Research: Design and Methods" by Robert K. Yin.
Our goal is to call attention to this method as an option in the pantheon of empirical methods.
1. Characteristics of Case Studies
A case study is an empirical method. By this we mean
a defined, scientific, method for posing research
questions, collecting data, analyzing the data, and
presenting the results. Each of these steps is planned
from the outset of the study and do not come about
through serendipity. Case studies are well-suited
to "how" and "why" questions in settings where the
researcher does not have control over variables and
there is a focus on contemporary events. Unfortunately,
there is a great deal of confusion regarding the term
"case study" within software engineering. Some of
this misuses of the term is understandable because
it has different meanings in different settings or
disciplines. For the remainder of this Section, we
will clarify what case studies are not. A case study
is not an exemplar or case history. The term case
study is frequently used in medicine and law. Patients
or clients are referred to as "cases," so a study
of interesting instances of these are case studies
. In addition, a case study is not a report on
something interesting that was attempted by researchers
on a toy problem. A case study is not an experience
report. The latter is a retrospective report on an
experience that was particularly illuminating and
best examples of these include lessons learned. However,
even exploratory case studies need to start out with
a research question and systematically collect and
analyze data to answer the initial question. A case
study is not a quasi-experimental design with n=1.
While some quasi-experimental studies are conducted
in the field, they still retain control over some
independent variables, so that time series designs,
non-equivalent before-after designs, and ex post facto
designs can be brought to bear on the research question.
2. Goals of the Tutorial
The purpose of this tutorial is to call attention
to case studies as an option in the pantheon of empirical
methods. Reverse engineer researchers need to conduct
a variety of empirical studies for a variety of purposes,
such as understanding the context in which their tools
are used, justifying the appropriateness of heuristics
or assumptions built into their algorithms, and evaluating
the usefulness of their technology in an industrial
setting. In such situations, a case study can be a
better choice than a controlled experiment or questionnaire.
This tutorial gave attendees a starting point for
learning how to conduct case studies. When they return
to their home institutions, they would be able to
find, assess, and apply appropriate resources in designing
their studies. The curriculum included the following
. Research Methodology
. Case Study Fundamentals
. Designing Case Studies
. Publishing Case Studies
The primary text text used for the course tutorial
was Case Study Methods 3/e, by Robert K. Yin .
This book is a respected resource on case studies
and is widely cited both inside and outside software
engineering. While the tutorial was primarily lecture-based,
there opportunities for discussion and in-class exercises.
 Blanche Geer, Everett C. Hughes, Anselm L. Strauss,
and Howard Saul Becker, Boys in White: Student Culture
in Medical School: Transaction Publications, 1991.
 Robert K. Yin, Case Study Research: Design and
Methods, 3/e. Thousand Oaks, CA: Sage Publications,