One size does not fit all when it comes to Requirements Management tools. Organizations steeped in the traditions of engineering and manufacturing view requirements with an altogether different perspective than those that are driven by time-to-market imperatives. Indeed there is tremendous convergence between the PLM (product lifecycle management) and the ALM (application lifecycle management) vendors because so many physical products these days have software on board. But that is a discussion for another time.
Given this continuum, and given that the very fabric of application development is in flux, from a methodologies, technologies and topologies perspective, getting stuck with a requirements tool that does not adapt to your way of working ultimately becomes a drag on productivity. As you move towards Agile methods your requirements management tool needs to facilitate development not hinder it.
The newest generation of requirements management tools are designed to mold to your way of working while keeping you up to date with modern best practices. Three elements are critical:
- Process-centricity is essential so that the requirements management tool supports your way of gathering, verifying, managing and tracking requirements.
- Extensibility matters so the attributes that you need to gather can be added and that includes the ability to add contextual validation to those attributes.
- Collaboration must be facilitated by the tool so that business users and technical users alike can have informed conversations about the details of the requirements and this may include wiki-like and chat-type capabilities.
Making the requirements management tool part of the development infrastructure matters too and the technology you select should be able to be integrated with other tools you use. This is important in order to achieve traceability from requirements to changes to tests to builds to deployments to help desk tickets.
If you can achieve this: requirements can be at the heart of all you do. But there are pitfalls you should be aware of. Having the ability to extend the definition of a requirement does not mean you should. Every unique or special case does not have to be accommodated. Having a standards and methods group that oversees tool usage is important to maintain consistency and prevent proliferation of one-offs.
Without doubt requirements management is on the mind of the CIO. There are perhaps many more urgent issues in IT that need to be addressed but there is none more important. Delays in getting requirements, getting requirements wrong, changing requirements after they have begun implementation are the major sources of IT waste. If you want to make an impact and really change your business, turn your attention to making requirements management a center of excellence.