"I know that you believe that you understood what you think I said, but I am not sure you realize that what you...
heard is not what I meant." Most often attributed to Robert McCloskey, a State Department spokesman during the Vietnam era, this statement could be describing the age-old software requirements problem, and why it's so hard to get them right.
Tools for managing requirements have been around for a while, but of late the focus is turning to tools that help elicit, capture and hone requirements so that the product developed better hits the mark.
"People are recognizing that they're still struggling with projects not meeting needs," said Mary Gerush, an analyst for Forrester Research's IT application development and program management practice. "We've spent a lot if time on project management, testing and development, but not around business analysis and really honing skills and helping business analysts get training in the right areas. It's always been important, but people are just starting to recognize the importance of the role in a broad way and what it can buy you."
Requirements are the root of all projects," said David Locke of Rational Director, Offerings Marketing, IBM Software Group. "The notion of elicitation is really about drawing out of people what they're trying to say." Collaboration and interpersonal communications are key to the process, Locke said. "There are so many ways people think; some people are graphically oriented, some texturally. There are so many ways to collaborate." But, he said, "at the end of the day it's about solving business problems."
And that takes getting the requirements right, which is the problem vendors like IBM Rational, Ravenflow, Blueprint, Borland, iRise and others are addressing with requirements definition tools that enable the elicitation process. IBM Rational's newest tool in its application lifecycle management (ALM) suite is Requirements Composer. But on Jazz, IBM Rational's collaboration platform, it provides textual and visual requirements definition techniques in a collaborative environment. It is meant to be used as front end to RequisitePro, IBM Rational's requirements management offering. In the future it will also integrate with the DOORS requirements management product, which IBM acquired with Telelogic, Locke said.
Whereas requirements management tools like RequisitePro and DOORS are critical for software projects that have robust compliance and traceability demands, such as embedded software for military systems or medical devices, many IT shops find them too heavyweight for their needs, said Forrester's Gerush. "If they own them, in a lot of cases they try to use them but they are too heavy. They haven't figured out how to use them in their environment."
Requirements definition tools are in demand now, Gerush said, because the problem is so chronic and the tools themselves are lighter. Also, she added, "the ones starting to emerge now tend to be usable by the business analyst."
The new tools emerging now are a reflection of a fundamental shift in the last few years to a next-generation approach, according to Matt Morgan, chief marketing officer of Blueprint Software Systems Inc., in Toronto. "The focus is on ensuring the requirements are accurate, complete, precise. In the past, it was more about organizing and tracing the requirements."
The Blueprint Requirements Center 2009 targets all phases of the requirements definition lifecycle: elicitation, elaboration, validation, and the auto-generation of business requirements documents during requirements acceptance. Blueprint has a strategic relationship with HP, Morgan said, and the Blueprint Requirements Center tightly integrates with HP Quality Center Requirements Management. It also works with other management products, as well as with Microsoft Word.
Many business analysts today write their requirements in Word. Emeryville, Calif.-based Ravenflow, another vendor in the requirements definition space, earlier this month announced a standalone release of Raven Express, a Word plug-in. "We saw lots of people who had requirements as part of their job, but needed something easy to start up with," said Adam Frankl, Ravenflow's vice president of marketing.
With Express, he said, "you can select requirements text in Word and it auto-generates requirements diagrams for you. It also points out process gaps, missing requirements, places where you need more detail. People do this now this [Microsoft] Visio and draw it by hand. We take this process and do it in minutes, which means people can be faster responding to changes in requirements."
Express is designed as a low-cost entry point to the full-blown requirements definition solution Ravenflow offers with Raven Professional and our Raven Collaboration Space. Frankl said Raven integrates with requirements management tools such as RequisitePro, DOORS, and Microsoft Team Foundation Server, and the company has lately been working with MKS Software.
While the two phases of requirements, elicitation and management, are what Forrester's Gerush terms as separate disciplines, some vendors offer tools that target both areas, while others partner. "I think they will always be separate disciplines but joined," she said. "I think people will recognize that [requirements] is not a sequential process; it occurs throughout the lifecycle, so it definitely shouldn't end at the end of the requirements phase. Every time there's a change you need to go back to the definition mode."
IBM Rational's Locke sums it this way: "The first rule of thumb is requirements are iterative; they're never complete, so you build the learning curve into process. The second is all requirements are related in some way; as [requirements] pyramid out, you need traceability. If a requirement doesn't trace back up, are you sure it should be in the scope? Generally the answer is no. And the third is the umbrella rule—requirements are definitely a team sport, so you need a process and tooling in place to support effective collaboration."