A requirement is a very simply a stated desire or need: For example, in a fictitious library system, a requirement could be that "the library system allows people to check-in and check-out books". Requirements management is the process of capturing and managing all of the different ‘needs’ that different stakeholders have in a system. Sometimes the needs relate to the functionality (the system needs to do X), other times it may be technical need (the system needs to run on specific web browsers, database servers, etc.)
The first thing you need to do is brain storm with your stakeholders (business, marketing, technical, end users, …) and put together the wish list of ideas, concepts and needs. SpiraPlan makes this process easy with its easy to use requirement entry screens complete with powerful rich text editor:
Once you have captured the needs, SpiraPlan allows you to quickly and easily organize requirements in a hierarchical structure (for example the system requirements might be organized under the parent functional requirement).
Requirements can be prioritized, estimated and also associated with a specific release. Each requirement is displayed with its associated test coverage. You can move, copy and filter the requirements according to a variety of criteria.
Sometimes a standard requirement is not sufficient to explain the need, that’s where a ‘use case’ comes in. A use case (also known as a scenario) is a description of the steps that a specific user would take to accomplish the task. A single requirement may have several different use cases depending on the different scenarios that are possible. For example, an administrator logging in might be a different use case to a general user.
SpiraPlan supports the capture and management of system use-cases as part of the requirements definition process. Use cases can be stored in the system along with their associated scenarios and links to the other requirements that the use case defines:
SpiraPlan can display the list of steps in each use case as a process flow diagram automatically generated from the entered scenario:
SpiraPlan offers multiple views to help you analyze and trace requirements, including their dependencies and associations. The mind-map graphical view makes it easy to see all of the requirement relationships in a simple easy to visualize format:
This view displays the requirements as a mind map diagram, with the root nodes displayed on the left hand side, with their successive children shown from left to right. it displays the name and ID of the requirement in each node, with a tooltip that shows the description and any comments. In addition, each node is color coded by its priority / importance value.
As well as showing the primary hierarchy, there is an option to turn on the display of requirement associations as well. This will let you see all of the associations as dotted lines.
For associations that denote dependencies there is an arrow and dotted line that shows the direction of the dependency. The system will display either the comment or type of association, depending what was entered when the association was created.
One of the most common needs from a requirements management system is the ability to quickly navigate and scan all of the requirements in the product. The SpiraPlan document view makes this one click away:
For each requirement, SpiraPlan will display the ID, name, full text description, status, priority/importance, and type of the requirement. The full text will include any embedded tables, images, bullets, links, and lists. In addition, for requirements that have scenarios / steps defined, it will also show a process flow diagram.
You can customize the different requirements types and prioritization schemes as well being able to define custom properties that add business specific attributes to the different project templates.
Requirements can be categorized into different types, each of which can have its own customizable workflow. This allows you to define different rules, permissions and operations for each of the different requirement types:
SpiraPlan lets you manage your requirements test coverage (also known as requirements traceability). Within SpiraPlan, you can map each requirement to one or more test case that validates that the functionality works as expected.
With this information, SpiraPlan lets you run requirements traceability reports and perform impact analysis on how critical each test failure is (i.e. how many high priority requirements does it affect).
SpiraPlan lets you decompose each requirement into lower-level work Task work items. These tasks can be assigned to different team members and individually estimated. SpiraPlan lets you compare the top-down story point estimate with the detailed task estimates.
With SpiraPlan, each requirement can be linked to other requirements or defects, providing end-to-end traceability. For example, a change request that turns into a new requirement can be associated to preserve the pedigree of the requirement and a use case can be linked to the feature that it is describing.
You can also see the associations between the requirements and revisions made to the linked source code repository to get code-level traceability.
SpiraPlan lets you have projects that share their artifacts with other projects. This powerful feature lets you have projects that reuse components, features and tests from other projects:
In addition, you can share requirements between projects so that you can view all of your requirements in a single list; those from the current project and those from any component projects being included:
All of the changes made to a requirement are tracked by SpiraPlan, so that at any time you can view the history log of all the changes made to an artifact, including the date of the change, who made the change, and what information was changed.
In addition, SpiraPlan lets you specify that certain operations require an electronic signature which is used to permanently sign the changes made to the requirement.
SpiraPlan has a built-in document management system that lets you quickly attach files, screenshots and hyperlinks to requirements so that you can have all your diagrams, specifications and other assets managed within the system and readily available.