@incollection{Easterbrook2008, abstract = {Selecting a research method for empirical software engineering research is problematic because the benefits and challenges to using each method are not yet well catalogued. Therefore, this chapter describes a number of empirical methods available. It examines the goals of each and analyzes the types of questions each best addresses. Theoretical stances behind the methods, practical considerations in the application of the methods and data collection are also briefly reviewed. Taken together, this information provides a suitable basis for both understanding and selecting from the variety of methods applicable to empirical software engineering.}, address = {London}, author = {Easterbrook, Steve and Singer, Janice and Storey, Margaret-Anne and Damian, Daniela}, booktitle = {Guide to Advanced Empirical Software Engineering}, doi = {10.1007/978-1-84800-044-5_11}, keywords = {empirical,survey,theory}, pages = {285--311}, publisher = {Springer London}, title = {{Selecting Empirical Methods for Software Engineering Research}}, year = {2008} } @book{Felderer2020, address = {Cham}, doi = {10.1007/978-3-030-32489-6}, editor = {Felderer, Michael and Travassos, Guilherme Horta}, isbn = {978-3-030-32488-9}, publisher = {Springer International Publishing}, title = {{Contemporary Empirical Methods in Software Engineering}}, year = {2020} } @inproceedings{Kitchenham2004a, abstract = {Our objective is to describe how software engineering might benefit from an evidence-based approach and to identify the potential difficulties associated with the approach. We compared the organisation and technical infrastructure supporting evidence-based medicine (EBM) with the situation in software engineering. We considered the impact that factors peculiar to software engineering (i.e. the skill factor and the lifecycle factor) would have on our ability to practice evidence-based software engineering (EBSE). EBSE promises a number of benefits by encouraging integration of research results with a view to supporting the needs of many different stakeholder groups. However, we do not currently have the infrastructure needed for widespread adoption of EBSE. The skill factor means software engineering experiments are vulnerable to subject and experimenter bias. The lifecycle factor means it is difficult to determine how technologies will behave once deployed. Software engineering would benefit from adopting what it can of the evidence approach provided that it deals with the specific problems that arise from the nature of software engineering.}, author = {Kitchenham, B.A. and Dyba, Tore and Jorgensen, M.}, booktitle = {Proceedings. 26th International Conference on Software Engineering}, doi = {10.1109/ICSE.2004.1317449}, isbn = {0-7695-2163-0}, issn = {0270-5257}, pages = {273--281}, publisher = {IEEE Comput. Soc}, title = {{Evidence-based software engineering}}, year = {2004} } @article{Runeson2009, abstract = {Case study is a suitable research methodology for software engineering research since it studies contemporary phenomena in its natural context. However, the understanding of what constitutes a case study varies, and hence the quality of the resulting studies. This paper aims at providing an introduction to case study methodology and guidelines for researchers conducting case studies and readers studying reports of such studies. The content is based on the authors' own experience from conducting and reading case studies. The terminology and guidelines are compiled from different methodology handbooks in other research domains, in particular social science and information systems, and adapted to the needs in software engineering. We present recommended practices for software engineering case studies as well as empirically derived and evaluated checklists for researchers and readers of case study research.}, archivePrefix = {arXiv}, arxivId = {arXiv:gr-qc/9809069v1}, author = {Runeson, Per and H{\"{o}}st, Martin}, doi = {10.1007/s10664-008-9102-8}, eprint = {9809069v1}, isbn = {1382325615737616}, issn = {1382-3256}, journal = {Empirical Software Engineering}, keywords = {Case study,Checklists,Guidelines,Research methodology}, month = {apr}, number = {2}, pages = {131--164}, pmid = {28843849}, primaryClass = {arXiv:gr-qc}, title = {{Guidelines for conducting and reporting case study research in software engineering}}, volume = {14}, year = {2009} } @book{Shull2008, abstract = {Empirical studies have become an integral element of software engineering research and practice. This unique text/reference includes chapters from some of the top international empirical software engineering researchers and focuses on the practical knowledge necessary for conducting, reporting and using empirical methods in software engineering. Part 1, Research Methods and Techniques, examines the proper use of various strategies for collecting and analysing data, and the uses for which those strategies are most appropriate. Part 2, Practical Foundations, provides a discussion of several important global issues that need to be considered from the very beginning of research planning. Finally, Knowledge Creation offers insight on using a set of disparate studies to provide useful decision support. Topics and features: Offers information across a range of techniques, methods, and qualitative and quantitative issues, providing a toolkit for the reader that is applicable across the diversity of software development contexts Presents reference material with concrete software engineering examples Provides guidance on how to design, conduct, analyse, interpret and report empirical studies, taking into account the common difficulties and challenges encountered in the field Arms researchers with the information necessary to avoid fundamental risks Tackles appropriate techniques for addressing disparate studies ensuring the relevance of empirical software engineering, and showing its practical impact Describes methods that are less often used in the field, providing less conventional but still rigorous and useful ways of collecting data Supplies detailed information on topics (such as surveys) that often contain methodological errors This broad-ranging, practical guide will prove an invaluable and useful reference for practising software engineers and researchers. In addition, it will be suitable for graduate students studying empirical methods in software development. Dr. Forrest Shull is a senior scientist at the Fraunhofer Center for Experimental Software Engineering, Maryland, and the director of its Measurement and Knowledge Management Division. In addition, he serves as associate editor in chief of IEEE Software magazine, specializing in empirical studies. Dr. Janice Singer heads the Human Computer Interaction program at the National Research Council, Canada. She has been conducting empirical research in software engineering for the past 12 years. Dr. Dag Sj{\o}berg is currently research director of the software engineering group of the Simula Research Laboratory, Norway, which is ranked No. 3 in the world (out of 1400 institutions) in an evaluation in 2007 in the area of software and systems engineering.}, address = {London}, archivePrefix = {arXiv}, arxivId = {arXiv:1011.1669v3}, author = {Shull, Forrest and Singer, Janice and Sj{\o}berg, Dag I K}, doi = {10.1007/978-1-84800-044-5}, editor = {Shull, Forrest and Singer, Janice and Sj{\o}berg, Dag I. K.}, eprint = {arXiv:1011.1669v3}, isbn = {978-1-84800-043-8}, issn = {1098-6596}, pages = {1--388}, pmid = {6565}, publisher = {Springer London}, title = {{Guide to Advanced Empirical Software Engineering}}, year = {2008} } @incollection{Singer2008, address = {London}, author = {Singer, Janice and Sim, Susan E and Lethbridge, Timothy C}, booktitle = {Guide to Advanced Empirical Software Engineering}, doi = {10.1007/978-1-84800-044-5_1}, pages = {9--34}, publisher = {Springer London}, title = {{Software Engineering Data Collection for Field Studies}}, year = {2008} } @article{Stol2018, abstract = {A variety of research methods and techniques are available to SE researchers, and while several overviews exist, there is consistency neither in the research methods covered nor in the terminology used. Furthermore, research is sometimes critically reviewed for characteristics inherent to the methods. We adopt a taxonomy from the social sciences, termed here the ABC framework for SE research, which offers a holistic view of eight archetypal research strategies. ABC refers to the research goal that strives for generalizability over Actors (A) and precise measurement of their Behavior (B), in a realistic Context (C). The ABC framework uses two dimensions widely considered to be key in research design: the level of obtrusiveness of the research and the generalizability of research findings. We discuss metaphors for each strategy and their inherent limitations and potential strengths. We illustrate these research strategies in two key SE domains, global software engineering and requirements engineering, and apply the framework on a sample of 75 articles. Finally, we discuss six ways in which the framework can advance SE research.}, author = {Stol, Klaas-Jan and Fitzgerald, Brian}, doi = {10.1145/3241743}, issn = {1049-331X}, journal = {ACM Transactions on Software Engineering and Methodology}, keywords = {Research methodology,Research strategy}, month = {oct}, number = {3}, pages = {1--51}, title = {{The ABC of Software Engineering Research}}, volume = {27}, year = {2018} } @incollection{Wieringa2014a, abstract = {This book provides guidelines for practicing design science in the fields of information systems and software engineering research. A design process usually iterates over two activities: first designing an artifact that improves something for stakeholders and subsequently empirically investigating the performance of that artifact in its context. This “validation in context” is a key feature of the book - since an artifact is designed for a context, it should also be validated in this context.The book is divided into five parts. Part I discusses the fundamental nature of design science and its artifacts, as well as related design research questions and goals. Part II deals with the design cycle, i.e. the creation, design and validation of artifacts based on requirements and stakeholder goals. To elaborate this further, Part III presents the role of conceptual frameworks and theories in design science. Part IV continues with the empirical cycle to investigate artifacts in context, and presents the different elements of research problem analysis, research setup and data analysis. Finally, Part V deals with the practical application of the empirical cycle by presenting in detail various research methods, including observational case studies, case-based and sample-based experiments and technical action research. These main sections are complemented by two generic checklists, one for the design cycle and one for the empirical cycle.The book is written for students as well as academic and industrial researchers in software engineering or information systems. It provides guidelines on how to effectively structure research goals, how to analyze research problems concerning design goals and knowledge questions, how to validate artifact designs and how to empirically investigate artifacts in context – and finally how to present the results of the design cycle as a whole.}, address = {Berlin, Heidelberg}, author = {Wieringa, Roel J.}, booktitle = {Design Science Methodology for Information Systems and Software Engineering}, doi = {10.1007/978-3-662-43839-8_2}, isbn = {9783662438398}, issn = {0270-5257}, pages = {13--23}, publisher = {Springer Berlin Heidelberg}, title = {{Research Goals and Research Questions}}, year = {2014} } @article{Wohlin2015a, abstract = {Several factors make empirical research in software engineering particularly challenging as it requires studying not only technology but its stakeholders' activities while drawing concepts and theories from social science. Researchers, in general, agree that selecting a research design in empirical software engineering research is challenging, because the implications of using individual research methods are not well recorded. The main objective of this article is to make researchers aware and support them in their research design, by providing a foundation of knowledge about empirical software engineering research decisions, in order to ensure that researchers make well-founded and informed decisions about their research designs. This article provides a decision-making structure containing a number of decision points, each one of them representing a specific aspect on empirical software engineering research. The article provides an introduction to each decision point and its constituents, as well as to the relationships between the different parts in the decision-making structure. The intention is the structure should act as a starting point for the research design before going into the details of the research design chosen. The article provides an in-depth discussion of decision points in relation to the research design when conducting empirical research. {\textcopyright} 2014, Springer Science+Business Media New York.}, author = {Wohlin, Claes and Aurum, Ayb{\"{u}}ke}, doi = {10.1007/s10664-014-9319-7}, issn = {1382-3256}, journal = {Empirical Software Engineering}, keywords = {Empirical software engineering research,Research design,Research methods,Selecting research method}, month = {dec}, number = {6}, pages = {1427--1455}, title = {{Towards a decision-making structure for selecting a research design in empirical software engineering}}, volume = {20}, year = {2015} } @incollection{Wohlin2003, author = {Wohlin, Claes and H{\"{o}}st, Martin and Henningsson, Kennet}, booktitle = {Esernet}, doi = {10.1007/978-3-540-45143-3_2}, isbn = {3-540-40672-7}, pages = {7--23}, publisher = {Springer, Berlin, Heidelberg}, title = {{Empirical Research Methods in Software Engineering}}, volume = {2765}, year = {2003} }