All, Our lectures say things like:
"You might not think that [inefficiency] has much to do with testing, but study after study has shown that the more you invest up front in quality, the sooner your program will be ready to use." (V4 Testing Intro: http://software-carpentry.org/v4/test/intro.html) Do we have any kind of list/database of supporting research, and/or is there any intention to integrate that into the notes? (I'm not very familiar with all the notes, so I don't know how consistent or not they are in that regard. There may also be a deliberate intention to do 'non-formal-academic' style slides without copious references....) In a non-SC context, I'm particularly interested in studies/evidence for applying the following: -- architectural and OO design principles (e.g. layered architectures, OO design methods) -- test practices (e.g. TDD or constituent elements such as automated regression suites) -- version control practices Several software engineering textbooks I've seen also seem to struggle in this regard (i.e., lots of references about the ideas and how to use them, but very few relating to evidence for efficacy). I guess I should look at Greg's co-edited Making Software book, and his "It Will Never Work in Theory" blog: http://www.amazon.com/Making-Software-Really-Works-Believe/dp/0596808321/ http://neverworkintheory.org/ [He's not paying me for this homage :-)] For TDD, Jeffries & Melnick's 2007 IEEE Software editors' intro. seems a nice (though perhaps outdated) summary with tables of studies: http://www.computer.org/csdl/mags/so/2007/03/s3024.pdf As well as being a practical question, I'm also interested in the overarching problem of the difficulty in defining and measuring the outcomes (which I guess in another flavour of the same problem for assessing the efficacy of the SC teaching in general). Pragmatically, one might say that adoption is a more useful/attainable metric. (I don't know if studies have looked at this.) Thanks. Stuart P.S. For context: I'm not a software-engineering researcher, though I'm an ex-industry-software-developer; I primarily do agent-based simulation of social systems. Some of my current work is an attempt to apply some overlooked SE best-practices to simulation design and development; hence my interest in providing academic context for the more general efficacy of the ideas, as well as a more general interest for SC teaching. P.P.S. If this kind of post is too off-topic for this discussion group, let me know... -- ________________________________ Stuart Rossiter [email protected] Research Fellow: EPSRC Care Life Cycle Project http://www.southampton.ac.uk/clc
_______________________________________________ Discuss mailing list [email protected] http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org
