I stumbled upon a post of Neil Ernst (Post Doctoral Research Fellow at the University of British Columbia) with interesting thoughts on Case Studies and Grounded Theory in Software Engineering.
In software development, many advances (by which I mean “better ways of developing software”, where better is defined with respect to perhaps cost, time, value-delivery …) have come from industry and consultants proposing solutions to the problems they have come across1, of which some examples include Scrum, Kanban,Go, Continuous Delivery, etc. The argument could be made that one person’s hundreds of consultations with troubled software projects provides him or her much more in the way of actionable observation than does a researcher’s single site visit at a large organization, even if the latter is rigorously conducted. Several researchers have argued that the case study is not necessarily non-generalizable, and that it is probably the most useful empirical method for software engineering. However, I think this raises a bigger question: how does a well-conducted academic case study compare with the plethora of anecdotal evidence from software consultants?
The rest of the post can be found here.