Apply today for a FREE subscription to CIO Magazine!
Thu, Mar 20, 2008 10:41 EDT
|
Posted by: remi in Best Practices Topic: Applications
Current Rating: |
TCS have a white paper available on their WEB site called Evolving IT from ‘Running the Business’ to ‘Changing the Business’. The first part of the document is loaded with some very interesting facts on software development success and failures. I found amazing to see that the overall quality and reliability of the end-result software has not really improved while the tooling (computers, networks, development environments, etc.) has improved so dramatically. In fact, the actual percentages are only slightly better than they were 10 years ago! Here is an excerpt of their paper.
For a number of reasons, business-critical software and services projects, whether done in house or outsourced, fail far too often. They take too long. They cost too much. They are riddled with defects and don’t accomplish the business goals for which they were designed. An August 2007 study by Dynamic Markets Limited of 800 IT managers across eight countries shows that:
- 62 percent of organizations experienced IT projects that failed to meet their schedules
- 49 percent suffered budget overruns
- 47 percent had higher-than-expected maintenance costs, and
- 41 percent failed to deliver the expected business value and ROI
Moreover, broad industry consensus indicates that more than one-quarter of all software and services projects are canceled before completion, and of those that are completed, up to 80 percent of budgets are consumed fixing self-inflicted problems. According to Gartner Research, “The lack of testing and QA standards, as well as a lack of consistency, often lead to business disruption, which can be costly.” Gartner also reports that “testing consumes 25% to 50% of the average application life cycle and often is viewed as adding no business value.” Failure of software and services projects is so widespread and so commonplace that 43 percent of IT managers say their business managers and Boards of Directors. Quite understandably, only 11 percent of business organizations consider technology a “strategic weapon,” according to a recent study by Info-Tech Research Group.
I think we should really ask ourselves why these figures have not improved over the years while computing power and development environments have progressed tremendously. There are many reasons for failure. However, and from the many discussions I have with our project managers and clients, I believe that estimates for the coding times are now relatively accurate, something that was not necessarily true 10 years ago. The purpose of this post is to highlight 2 areas that are still underestimated, causing projects to fall behind schedule:
Writing an application can be done relatively rapidly, when seasoned developers are involved. However, making the application fit corporate quality standards can sometimes be a much bigger challenge than the writing of the application itself. If no time has been accounted between design and coding, and
Good points mentioned in this article, but it fails to look at the big picture. If estimates were the prime reason for software implementation failures, then at least they would see the light of the day - because poor estimates cause delays not failures. Failures occur due to the a disconnect between business and IT about the intent of the project and what it needs to implement.
You have accurately mentioned that there have been several improvements in infrastructure etc - and the reason here is that the intent of these projects is clear (make the existing network faster) and is very centred around IT
Software projects on the other hand, involve multiple entities - most notably the business. The primary disconnect happens in the understanding of the scope and intent of the project. More often than not, IT expects technology to solve all business problems without properly understanding the business problem and business assumes the same without understanding what tools IT will provide and what processes they will need to evolve at their end to make the solution work well for them
In a comment on "How to Spot a BAD CIO" I had mentioned the need to partner with business and influence their decisions as being an important part of a CIO's job and this often gets missed.
The key to a successful project is both business and IT first understanding the business problem to be resolved and then working together to come up with the solution - the scope has to be managed and is key. BUsiness has to told that they will get their solution in increments - as the returns experienced from the first increment usually pay for subsequent iterations of the solution.
Communication is another key. Expectations have to be managed - business must know what they are going to get from IT and where their processes will need to change.
In the end it is the silo mentality that keeps more software projects from being successful.
For those of you that hold this topic near and dear to your hearts, you should read "dreaming in Code" by Scott Rosenberg. It is an excellent case study of a project that failed. Several questions get answered while reading through that book.