We used to tag every requirement in the functional design specs, and state in each test case which requirements the test case applied to. Because the test documents, at the time, were written in a consistent manner, a Word VBA macro would then be used to create a requirements cross reference. Even with that bit of automation, it proved an expensive way of doing things, especially at a time when margins were starting to shrink*.
Fast forward to today, and requirements are captured in Jira, grouped by functionality in sub-tasks. Test engineer and developer comments flesh out the scoping (the important part, because getting anyone to review the final test documentation is hard) and ultimately describe how the requirements will be tested. On the team I’m currently working with, this approach is actually working quite well but I think more consistent Jira usage is needed. I think it’s a good example of how a lot of the thinking that came out of the Agile movement applies to any development approach (we’re still fundamentally waterfall).
- Reducing the cost of Professional Services remains a challenge.