The importance of software requirements management
Software Requirements Management definition was explained in our previous article. However, you may wonder where relies the importance of software requirements management.
The Standish Group has analyzed for over 20 years more than 100,000 IT projects. They present a solid statistic about the percentage of projects which do not meet deadlines and/or budget. Chaos Report 2016 indicates that over 50% of projects were not delivered on time or on budget. And over 9% of projects didn’t meet nor deadline, nor budget.
Obviously, there are key practices in the industry that can improve software development performance. According to The Standish Group there are several things which increase dramatically probability to deliver the software project on target. Agile methodologies, keeping projects smaller or highly trained teams…
Nevertheless, companies still find issues in their projects and seek tools to help them. They need:
- traceability for compliance reasons
- to better manage project dependencies and scope changes
- an early detection of errors with rapid customer feedback on delivered functionality
- to lower the odds of needing to dedicate extra time and money to unscheduled rework
- a strong seamless structure to ensure software development methodology is followed consistently
- Agile teams to align business and IT stakeholders
What happens in an Agile world?
Poor requirements management is a leading cause of project failure. According to Carnegie Mellon Software Engineering Institute, reworking software can increase between 40 and 50% of effort of the IT development. And the origin of software defects happen in 64% of cases during the requirements and design phase:
Other sources confirm the trend. Project Management Institute (PMI) study shows that 32% of project failures are attributed to inaccurate requirements gathering and management. Also The Standish Group identifies that in 35% of the cases, root problem was linked to poor requirements management.
There is little evidence to suggest that things are different when using Agile. The backlog does not normally contain enough information to specify a complete solution. Information such as non-functional requirements, feature descriptions, architectural decisions, etc., can be captured as requirements.
Research has shown it can cost up to 100 times more to correct a defect later than when it’s still in the requirements definition stage. IBM research confirms too the correlation between cost of fixing software defects and the development stage of the project:
How much can help having a good requirements management?
IBM research proves the importance of software requirement management. Statistics indicate that companies can:
- Reduce development costs up to 57%
- Improve time to market up to 20%
- Optimize quality cost control by 69%