| Summary: An introduction to successful strategies in software development. |
According to the Standish Group, CHAOS Report, 2000 26% of software projects succeed. That means 74% failed! (Failure includes failure to complete on time and/or failure to meet client requirements fully).
What are the reasons for a high rate of failure among software projects?
- Inadequate user input
- Objectives are not clear
- Incomplete Requirements and Specifications
- Frequent changes in requirements and specifications
- Poor Planning
How can these problems be overcome in a real life scenario?
Requirements management can go a long way in significantly improving the situation. Rational Software offers a good definition for requirements management. According to Rational, Requirements Management is a systematic approach to eliciting, documenting, organizing and tracking changing requirements.
To understand Requirements in the context of a Software Project, one needs to understand requirements through the eyes of the various stakeholders involved with that project. Who are the stakeholders and what are their needs?
| Stakeholder |
Their Needs |
| Customers |
Business model and Business Plans |
| Users |
Bugs, Enhancements |
| Domain Experts |
Subject matter experts and Industry analysts |
| Partners |
Strategic markets |
| Software team |
Scope well defined |
The key is to optimize the various needs and synergize between the various stakeholders to achieve maximum leverage.
The other aspect about requirements is that they seldom stay put. If development teams dread anything, it is fluctuations in requirements. Let us examine a few causes for change in requirements.
- Failed to ask the right people the right questions at the right time.
- The Problem being solved changed
- Users changed their minds on their perceptions
- Budgets are cut
- Competitors introduced new technologies and features
The IEEE list of Software Requirement qualities lay down that Requirements must be unambiguous, complete, correct, consistent, traceable, modifiable, understandable, verifiable, ranked for importance and stability.

Are you considering outsourcing software projects?
Here is something to consider.
Outsourcing is indeed a great idea and it makes a lot of business sense. And with the power of the Internet, it works perfectly well. Nevertheless, if your requirements are not managed well, even the best software team will fail to give you what you want.
Requirements management is critical throughout the lifecycle of the software project. It is often misunderstood in its scope and significance. Did you know that the development methodology used by the developer plays an important role in requirements management? You will be surprised how much it will reveal to you how your requirements are being met.
Check out the 6 Tips to Evaluate your Development Partner/Solution Provider.
If you are interested in learning more about our services and what we do, please check out the Services and Portfolio sections. Would you like to see if we identify your needs well? Click here to find out more.
|