These notes are based on Greg Wilsons talk on “What we actually know about software development and why we believe it’s true” done at CUSEC in 2010.
What is engineering
Real engineering is the combination of science and economics.
We have low Standards of Proof
- A lot of what current leaders of our industry are saying have no substantial proof - they are just opinions.
Examples of Poor Evidences
Anchoring on estimates
Aranda & Easterbrook (2005): “Anchoring and Adjustment in Software Estimation”
“How long do you think it will take to make a change to this program?”
Study showed that one is able to anchor a group to an estimation regardless of the anchor (whether it is 2 month or 20 months).
The best performers are up to X times more productive than the worst
Originated from Sackman, Erikson & Grant (1968): Exploratory experimental studies comparing online and offline programming performance.
- Study was designed to compare batch vs interactive, not measure productivity
- How was productibity measured anyway?
- Best vs. worst exaggerates any effect.
- Study used 12 programmers for an afternoon, next study was 54 programmers for up to an hour
Do you think this is a strong proof?
Conways Law
“A system reflects the organizational structure that built it.”
- Originally meant as a joke
- In 1999 it was found to actually be true
Physical Distance Effects Post-Release fault rates
Nagappan et al (2007) & Bird et al (2009)
It was found that…
- Physical distance doesn’t affect post-release fault rates
- Distance in organizaitonal chart does