Reg Dev: And what are the possible consequences of this?
Gilbert: Risk mitigation should be the keystone to effective requirements management and that's what requirements management tools help deliver. Having all the information at hand ensures that the right decisions can be made more effectively and more quickly. Of course, making the right decision is still down to the users – so when a tool delivers up all the information needed for a decision, some users may feel daunted – perhaps with nowhere to go if their decision is questioned later.
Reg Dev: I'd suggest that RM could even be seriously career limiting in some companies: it can highlight areas where the business doesn't really understand its own business process and can expose innocent developers to the shark-infested waters of company politics. In your experience, us this a real issue?
Gilbert: The sad fact is we live in a blame culture and especially in larger organisations we do see evidence of requirements management failing; not because of the tools, but because of users not wanting to use them or not using them effectively. We have to ask the question why? In the latter case, typically, training is the issue; in the former, politics. Too often users will simply not want to put their name against a feature request. Perhaps a throwback to the old notion of Business vs IT; perhaps an element of mistrust or misunderstanding of what each group does still exists. How often is the development team blamed for not understanding what the users wanted? Quite often, we've seen development teams coding away without a fully agreed specification.
Reg Dev: So, how does one address these issues?
Gilbert: For Xeau, we first have to understand where the problems lurk. Whether the client organisation is on the first rung on the ladder of ALM and requirements management or whether it's a mature organisation. We need to understand the structure, the culture of the organisation and also its goals and aspirations. These need to be placed in context with the resources available within the organisation. Once we have this understanding, we can look at a project and attempt to pin point the weak spots and where it went wrong – since sadly we are mostly called in when the project has or is about to fail. In essence, we have to get everyone involved and not just paying lip service.
Reg Dev: And do people address them? How often does RM software end up as 'shelfware'?
Gilbert: Sadly, too much software ends up on the shelf. Some of the reasons being cited include: too complicated, too prescriptive, too unstructured, and too inaccessible. All legitimate reasons in many cases, but in a minority of cases, they mask the political issues within organisations. Not surprisingly, when organisations look to deploy ALM and Requirements Management tools, many realise that their processes and working methods may need overhauling.
Reg Dev: Well, then, how would you claw something back from this situation?
Gilbert: Firstly, we need to understand why it failed - people, process and technology – are the three bedrocks. For issues within the people and process areas, consultancy works. If technology (the toolset) is the problem, then we look to either redeploy the current tool with revised training or, in extreme cases, suggest a replacement. Wherever possible we look to use the initially purchased toolset, but if it was a bad purchase then it has to go.
Reg Dev: It seems to me that many successful ALM implementations generally, and RM adoptions in particular, follow on from a crisis and address specific 'pain points'. But does RM, say, by itself deliver real benefit? Don't you need config management (for requirements as well as code etc), requirements-based testing and generation of code from requirements too?
Gilbert: You never need to dig too far to find a "pain point"; it seems a fact that many requirements management/ALM tool vendors market their wares on fear, uncertainty and doubt, portraying doom and gloom for those who don't spend many thousands on their offerings.
The reality for many is they neither can afford the whole gamut of ALM tools nor simply cannot deploy all facets of the ALM toolset in one go. Hence, requirements management tools languish on shelves.
Don't get me wrong, I'm a strong advocate for ALM, but buyers need to be aware of the full cost of ownership, which may include redefining processes and methods as well the simple administrative costs of tools for SCM and requirements management.
In terms of the directly attributable benefits of requirements management, the developer, the tester, the project lead (to mention just a few of the stakeholders) need to ask these questions every day – "Why am I writing/testing this code?", "Who is going to use this code?", "Do they still need this?", "What is this code going to be used for?", "When is this expected to go live?" – if any of this information changes then all involved in the project need to know it and know it in a timely manner.