“There is no single development, in either technology or management techniques, which by itself promises even one order-of-magnitude improvement within a decade in productivity, in reliability, in simplicity.” –Frederick P. Brooks, Jr.
Fact, building software is highly complex and very expensive. There is “no silver bullet” for how to effectively proceed through the software engineering and development process (Frederick P. Brooks). Yet, this widely agreed upon assumption is no excuse for not striving to better our software engineering practices. Just as with any other engineering discipline, software engineering will continue to mature and there will be continuous opportunities for improvement. In this post I will be making a case for developing higher quality software. I will outline some of the benefits of developing high quality software; I will describe what it means for software to be of “high quality”; and I will explain how the Scrum development methodology can be used as a framework to increase software quality.