  Context: A case study is a powerful research strategy for investigating
complex social-technical and managerial phenomena in real life settings.
However, when the phenomenon has not been fully discovered or understood, pilot
case studies are important to refine the research problem, the research
variables, and the case study design before launching a full-scale
investigation. The role of pilot case studies has not been fully addressed in
empirical software engineering research literature. Objective: To explore the
use of pilot case studies in the design of full-scale case studies, and to
report the main lessons learned from an industrial pilot study. Method: We
designed and conducted an exploratory case study to identify new relevant
research variables that influence the innovative behaviour of software
engineers in the industrial setting and to refine the full-scale case study
design for the next phase of our research. Results: The use of a pilot case
study identified several important research variables that were missing in the
initial framework. The pilot study also supported a more sophisticated case
study design, which was used to guide a full-scale study. Conclusions: When a
research topic has not been fully discovered or understood, it is difficult to
create a case study design that covers the relevant research variables and
their potential relationships. Conducting a full-scale case study using an
untested case design can lead to waste of resources and time if the design has
to be reworked during the study. In these situations, the use of pilot case
studies can significantly improve the case study design.
