Agile: Requirements Management

Hand holding a pen revieweing chart printouts

Requirements Management: Creating a Requirements Management Plan for an Agile Project

Profile iconRebecca Norton, Angela Lee

The Project Management Institute recommends creating a requirements management plan (RMP) to outline how requirements should be managed over the life of a project. In CNA's experience, the RMP for an agile project should describe the processes for conducting user research, developing epics and stories from themes, defining user stories with acceptance criteria, validating story implementation, and communicating requirements to stakeholders. Although the Agile Manifesto emphasizes working software over comprehensive documentation, for an agile project the RMP could be represented by a simple graphic or short document. Below, we provide our recommendations for content to include in the RMP.

Overview of Requirements Management Process

User Research

Themes identified in the Concept of Operations (ConOps) and Operational Requirements Document (ORD) are defined at the highest level. These themes are a guide to the more detailed user research conducted iteratively throughout an agile project to create epics and user stories. User research is a valuable step in user-centered design and should be included in the RMP. Usability.gov provides examples of user research methods. The RMP should describe the desired outputs from the user research, such as the following:

user sessions icon

Personas

Personas are synthetic biographies of fictitious users of the future product. These biographies generally include a picture or stock photo, demographics, behaviors, and wants and needs. Personas are helpful when making user interface design decisions.

interview icon

Wireframes and prototypes

Wireframes are low-fidelity designs used to communicate the content and the general layout of a user interface. Prototypes have the look and feel of the end product user interface and range from low-fidelity drawings on paper to high-fidelity clickable content. Both can be outputs from user research depending on the need to generate user stories.

story mapping icon

Use Cases

Use cases are step-by-step descriptions of how users will perform tasks through the solution. They are written from the user perspective and describe the system behavior when the user interacts with it to reach a particular goal. Use cases help describe the complexity of a desired process or capability.

Epics, Stories, and Acceptance Criteria

Epics represent groups of user stories. To maintain traceability from the themes to the solution, CNA recommends mapping the epics to the functional capabilities from the ConOps or operational requirements from the ORD – two documents typically developed to support the federal acquisition life cycle – and including this in the RMP. The RMP should also define what requirements management tool will be used to document epics and stories as well as how business analysts should format their epics to encourage consistency across the project.

The outputs from user research will provide the inputs needed to generate user stories and acceptance criteria. User stories represent the smallest functionality that delivers user value. Every story should have detailed acceptance criteria that indicates what must be met to be accepted into an upcoming iteration or sprint. We recommend using the INVEST (Independent, Negotiable, Valuable, Estimable, Testable) checklist to evaluate user stories prior to implementation and including example stories that satisfy this checklist within the RMP. CNA recommends including the format for acceptance criteria within the RMP to ensure the business analysts, developers, and testers understand what to expect for each user story.

Story Validation

The implementation of a user story should be tested as soon as the story has been developed. Validation of user stories can be done through automated or manual acceptance testing. When test cases are written and whether they are automated or manual acceptance testing varies across the different agile methodologies. After acceptance testing, user story demos with the product owner and key users should be completed as soon as possible to ensure the solution meets the intended need. While a test plan may be created to document the testing approach, CNA recommends indicating in the RMP what testing and approvals must occur for user stories to be validated, as well as the change management process when defects and enhancements are identified.

Communications and Planning

It is critical that both internal and external stakeholders understand the user stories. Within the agile team, user stories are presented to the developers and testers, who estimate the level-of-effort required to complete them. The prototypes or wireframes along with the user story and acceptance criteria can be used to ensure the agile team understands what the user needs. During development, the agile team works together with the product owner and subject matter experts to answer any questions.

For program communications, the status of stories ready for development, under development, and accepted are used to keep an up-to-date product roadmap. Keeping the roadmap current will help with planning and give an understanding of whether the project is on schedule or needs to be adjusted.

External stakeholder communications are needed to continue to engage users, set expectations, and gain buy-in. Demonstrations of accepted stories and communication artifacts such as the product roadmap are useful tools to communicate to stakeholders the completed and upcoming development. When stakeholders are dispersed organizationally or geographically, CNA recommends using collaborative online tools for these communications. Regardless of the communication method, we recommend including a communications strategy in the RMP to make sure stakeholders are continually engaged throughout the project. This is especially important for large agencies with a diverse set of stakeholder groups that may not be as frequently involved.