Many important phenomena in the practice of software engineering resist reliable quantification. Human processes are particularly adverse to traditional measurement. What motivates developers to make certain design decisions? How do developers learn to integrate in a new environment? Why do developers use tools a certain way?
Software engineering researchers are increasingly turning to qualitative methods to answer questions about complex human behavior in software engineering.
This two-part seminar will provide a hands-on introduction to qualitative methods in software engineering.
The seminar will address the following topics, interleaving short presentations, discussions, and exercises.
- Research questions suited for qualitative methods.
- Types of qualitative methods.
- Qualitative data collection.
- Qualitative data analysis techniques.
- Quality and reliability in qualitative studies.
- Reporting on qualitative data.
|Lecturer:|| Prof. Dr. Martin Robillard
McGill University, Canada, visiting professor in spring term 2011
|Contact:||Room BIN 2.A.03, or by email|
|Schedule:|| Wed April 20 and Wed April 27, 2011
13.00-16.00, seminar room 1.D.07
|Registration:||by email to Yvonne Engeler|
|Target audience:||PhD students|
|Credits:||1 ECTS credit point|
The seminar will be split in 2 parts of 3 hours each.
Part I-A: - Overview
Presentation: Introduction to Qualitative Methods and Research Questions
Exercise: Writing Research Questions
Discussion: Research Questions
Presentation: Data collection and analysis techniques
Discussion: Choosing a type of qualitative Study
Exercise: Designing a qualitative study
Discussion: Critique of qualitative studies. Validity and reliability.
Part II - Case Studies
Students will complete, in groups, the critique of a qualitative study chosen from a list of choices. The critique will include a description of the questions, methods, and data analysis techniques involved in the study. Groups will then present their report. A guided discussion of the trade-offs of each study design will follow.
There is a wealth of references of empirical methods for software engineering. For example, see Steve Easterbrook's collection. This seminar will mainly draw on two overview texts:
The following are examples of qualitative studies, for use in part II of the seminar.
- Ko et al. Information Needs in Collocated Software Development Teams
- Cherubini et al. Let's go to the whiteboard: how and why software developers use drawings
- Dagenais et al. Moving into a New Software Project Landscape
- Robillard and DeLine. A Field Study of API Learning Obstacles
- Lutters and Seaman. Revealing actual documentation usage in software maintenance through war stories
- de Souza and Redmiles. An Empirical Study of Software Developers’ Management of Dependencies and Changes