3 Why is software development difficult?
You may be wondering why so many development processes have been proposed, why they are the way they are, or even why we need software development processes at all. The simple answer is that developing software is hard and development processes are regarded as a way to manage the risk of getting it wrong: in 2004 the total cost of information systems failure across the European Union was an estimated €142 billion, while McManus and Wood-Harper’s 2008 study of 214 large IT projects found that 23.8% were cancelled before delivery, and of those that ran to completion, 42% overran in terms of time and/or cost. Similar figures are cited in the CHAOS Summary (Standish Group, 2009), which reported that ‘32% of all projects succeeding (delivered on time, on budget, with required features and functions); 44% were challenged (late, over budget, and/or with less than the required features and functions); and 24% failed (cancelled prior to completion or delivered and never used)’.
So, why is software development so difficult? This is a topic that has exercised software thinkers and practitioners alike for many decades.