It’s time to get the quackery out of software development

Paul Ralph
2 min readJan 27, 2018
Courtesy of Doug Beckers: https://www.flickr.com/photos/dougbeckers/3478034698

Software development —the industry, the academic community and the educational programs — are full of pseudoscientific quackery (paywalled; free version). Here are some examples.

There is no compelling evidence that any software method (Agile or otherwise) outperforms any other method on any important dimension. There is no evidence that “Agile” practices like pair programming increase agility.

The project triangle says if you want to cut cost, you have to sacrifice scope or schedule. If you want more features, it will cost more and take longer, etc. This is not based on any actual evidence. Most projects are dumpster fires. Better practices will get you more, cheaper and faster.

No one uses UML as intended because no one thinks it’s worth the trouble. There was never any evidence linking UML or model-driven engineering to success.

People don’t “have” requirements for software. There is no such thing as “eliciting requirements”. What analysts elicit is at best preferences and at worst nonsense. Even preferences are mostly made up on the spot.

Software is a mess. And it will stay a mess until we not only embrace science and evidence but reject fads and pseudoscience. The gurus, scrum coaches, fake experts and their pseudoscientific evangelism have to go.

--

--

Paul Ralph

Senior Lecturer in Computer Science, University of Auckland. Software engineering, game design, project management, ethics, research methods, higher education.