Crafting an Effective User Story: The Art of Communicating Needs
User Stories are an effective tool for translating customer needs and stakeholder requirements into actionable descriptions of features or functionalities. While deceptively simple at first glance, writing an effective User Story is both an art and a science. It requires clarity, insight, and precision to ensure that it fosters collaboration and drives meaningful progress.
Per the Project Management Institute (PMI) guidance, User Stories are a fundamental aspect of Agile Methodology, intended to convey tasks and objectives to the delivery team. They serve as brief, actionable descriptions of a feature or functionality from the viewpoint of the end user. However, in my role as a project manager, I observed that expressing requirements solely from one end user's perspective was inadequate and incomplete. This approach proved too narrow and lacked consideration of essential cross component requirements. For example, writing a User Story from the perspective of a buyer may omit the relevant requirements related to finance, quality assurance, and export compliance.
When writing User Stories, stating the requirements from the perspective of a single end user complies with the PMI guidance. However, it is more important and effective to identify and incorporate the needs of all relevant cross-component Users for a comprehensive solution. This approach prevents costly rework, eliminates wasteful processes and features, builds organizational trust, ensures customer and stakeholder satisfaction, and minimizes security and compliance vulnerabilities.
Although this approach differs from the conventional guidelines provided by PMI and Agile methodology for User Story creation, I have effectively applied this practice in multiple organizations, including the U.S. Department of Homeland Security (DHS), the U.S. Department of Defense (DoD), and the Aerospace industry. This approach has proven to have considerably greater advantages compared to the traditional model. This article outlines the elements of creating User Stories that diverge from conventional guidelines, aiming to achieve resonance and effectiveness.
Understanding the Purpose of a User Story
The User Stories are intended to bridge the gap between stakeholders and the delivery team, ensuring mutual understanding of the value and context of the work involved. I have observed that the most effective User Stories are those that align closely with a specific need outlined in the requirements document.
The User Stories should aim to capture the "who," "what," "when," and "why" of a requirement, integrating all pertinent components and engaging all relevant parties. A Project Manager (Scrum Master in Agile projects) is responsible for collaborating and coordinating with the Requirements Manager, Product Owner, or Stakeholders to ensure that the User Story is defined comprehensively and accurately.
When dealing with complex and demanding User Stories, the best practice involves creating and assigning a discovery User Story during the iteration planning event, allowing time to research and then draft a delivery User Story. Project Managers may often seek assistance from a Business Analyst or Requirements Analyst for this task. The objective of the task is to produce a clearly defined, comprehensive, and precise User Story that specifies the expected outcome.
When writing a User Story, it is important to meet the objectives and purposes outlined below to ensure the User Story is both effective and constructive. Make sure that the User Story:
Focuses on Understanding Requirements:
Includes comprehensive details that fulfil a specific requirement with measurable outcomes, ideally one that is documented in a project requirements document.
Serves as a common language for conveying detailed user requirements, facilitating shared understanding among the delivery team, product managers, and stakeholders.
Fosters Continuous Improvement:
Incorporates feedback from retrospectives.
Includes relevant risk mitigation and opportunity exploitation strategies.
Encourages the team to think critically and creatively about deriving a comprehensive solution that benefits all parties.
Facilitates Collaboration:
Serves as a conversation starter rather than rigid specifications, fostering discussion and collaboration among team members, ensuring alignment with the requirements.
Assists the delivery team and testers in comprehending the perspective of each component, along with their interdependencies and interfaces.
Supports Delivery Management:
Serves as a tool to decompose large, complex tasks into smaller, manageable ones, facilitating the estimation of required effort and tracking of progress.
Functions as a blueprint for defining Acceptance Criteria, enabling the delivery team to confirm that all requirements are met.
Acts as a checklist for the Definition of “Done”, allowing the test team to verify that all tasks are completed and ready for release.
Focuses on Value:
Highlights the benefits and value that a feature provides to the User, ensuring that the development team is creating something both useful and desired.
Avoids spending time and resources on features that are wasteful and unnecessary and do not contribute to any tangible value.
Focuses on the User needs, not technical implementation.
Challenges with the Structure of User Story as Recommended by PMI and Agile
PMI and Agile methodology define a User Story as an informal, general explanation of a software feature written from the perspective of the end user. Its purpose is to articulate how a software feature will provide value to the customer.
While the PMI definition technically meets the textbook criteria for a User Story, adhering strictly to this conventional approach presents several challenges and limitations that can overlook critical elements. This oversight may result in gaps within the User Story, leading to costly rework as well as potential schedule delays and cost overruns. When writing User Stories, avoid these pitfalls:
Should Not be Limited to Software Development: The Agile methodology, including User Stories, has proven beneficial across various industries and sectors. Furthermore, User Stories are useful not only for defining tasks in the development phase but also for specifying tasks in other phases of the project, particularly during the planning phase. For example, a User Story can be created to gather requirements for the Accounts Payable department during the requirements phase of an ERP implementation effort.
Should not be Informal: In project management, formalizing User Stories is not just about adhering to a specific format; it is about creating a clear, consistent, and standard approach to delivery. Formalizing can ensure that all aspects of a User Story are well-defined and understood, leading to improved communication, planning, and ultimately, better outcomes.
Should not be General Explanations: The description should contain an appropriate level of detail, avoiding both excessive and insufficient information. Avoid general descriptions, ensuring that the information is specific and precise to prevent any misinterpretation or miscommunication of the objectives and requirements. User Stories should include context when defining the specifications.
Generic: "As a User, I want to set a password."
With specific context: "As a first-time User with an Admin role, I want to create a secure password during account setup in Acme application so that I can protect my personal information in both web application and the mobile application interfaces.”
Should Not Limit to Single User’s Perspective: Limiting the scope to a single user can overlook dependent components, workflows, and interfaces. Instead of focusing on a single end-user perspective, include all parties involved to obtain a broader and more comprehensive description of the task.
Single User: “As a User, I like to submit purchase requisition in the purchasing module and pay invoices in the accounts payable module.”
With Stakeholder input: "The application should enable Users with the buyer role to submit purchase requisitions in the purchasing module and allow users with the accounting role to pay in the accounts payable module. To comply with separation of duties requirements, buyers and accountants should not be able to perform each other's functions."
Missing Security and Compliance Considerations: Writing a description from a single User’s perspective may overlook important security and compliance requirements. It is necessary to consult with security and compliance experts to include relevant requirements and avoid risk of costly and embarrassing infractions.
Single User: “As a User I like to have light pink, blue, gray, and white UI theme for the Acme application.”
With input from Stakeholders: “The UI for the Acme application must have a theme that is inviting and complies with the company’s branding and style guide; however, the UIs must also meet the 508 Compliance mandates.”
Missing Necessary Components: Writing a description from a single user's perspective may overlook critical requirements including data attributes, workflow, and role specifications. It is necessary to consult with appropriate subject matter experts to include relevant requirements and avoid the risk of costly rework and dissatisfied customers.
Single User: “As a User I like to enter my biographic information in the Acme form.”
With input from Stakeholders: "The UI for the Acme form should include fields to add biographic information. The data fields include Name, Date of Birth, Social Security Number, Phone Number, and Address. The name should be displayed in two fields, First and Last. DoB should be a date field and follows DD/MM/YYYY format, cannot be before 1900 and cannot be a future date. SSN must follow the ###-##-#### format; SSN must be masked upon submission for security purposes and only visible to the Applicant and the Admin roles. Phone Number must follow (###)-###-#### format. Addresses must be validated using available solutions. All fields are mandatory. To support all Users, the form must comply with 508 mandates.”
To address these challenges and limitations, project managers are encouraged to deviate from the traditional PMI definition and adopt a more comprehensive structure that provides a broader perspective.
Structure of a Good User Story
What defines a good User Story? A good User Story should balance the level of effort with the scope of work. It must be defined in such a way that it can be completed within a single iteration. If the User Story extends beyond one iteration, the scope is likely too broad and should be broken into smaller tasks. A well written User Story encompasses input from stakeholders and aligns with project requirements and objectives, assuring the User Story meets requirements while the effort does not exceed an iteration.
The recommended structure of a good User Story follows the format below, understanding that the key to success is tailoring the format to suit the project needs:
Title: A clear and concise title for the User Story.
User Story Description: Summary of the key features, capabilities, and functionalities.
Requirements: The expectations expressed as must haves/needs/wants, and expected outcome in terms of:
Workflow with Appropriate Roles and Responsibilities
UI/UX including format and layout
Data Attributes and Transformations
Systems requiring integration and interfaces
Access and Authentication
Notifications and Alerts
Scope: Defines what is included and excluded in the delivery.
Acceptance Criteria: Specifies the functions and features needed to confirm that requirements have been satisfied.
Definition of “Done”: This outlines all requirements needed to validate a delivery candidate is ready for release.
Optional Components:
Known Dependencies and Prerequisites
Known Challenges
Key Assumptions
User Community
Related Tasks
Governing Epic
Key Steps
Refer to the example of a User Story at the end of the article.
Best Practices for Writing Effective User Stories
When drafted effectively, User Stories offer a clear structure for task management and provide a detailed framework for understanding requirements. They foster collaboration, encourage innovation, and contribute to the overall enhancement of the product. Below are some best practices for writing effective User Stories.
Begin with the Project Requirements Document(s): This method ensures that the User Stories are consistent with the requirements established and endorsed by the Stakeholders, integrating the needs and desires of the User community and the priorities set by the leadership.
Assign a Discovery User Story: For User Stories that do not have detailed project requirements documents or in situations where there are concerns or extensive discussions related to a User Story, it is advisable to create discovery User Stories that aim to research, draft, and define delivery User Stories at appropriate levels. This method allocates resources required to identify and outline the requirements in an organized manner to ensure a high-quality outcome.
Engage and Collaborate: User Stories should not be written in isolation. Involve developers, designers, and product owners in the process to incorporate diverse perspectives. When necessary, include the User community including customers, subject matter experts, and stakeholders to define and prioritize features and functions. This approach leads to more comprehensive and feasible stories, encompassing requirements from relevant parties.
Ensure Security and Compliance: If security and compliance requirements are not clearly outlined in the project documentation, consult with stakeholders and industry experts to identify any necessary security or compliance standards that should be incorporated.
Keep It Simple and Concise: A common mistake in writing User Stories includes cramming too many details in a single story. Avoid excessively wordy descriptions, technical jargon, metaphors, and slang. Avoid this by concentrating on providing requirements for one feature or functionality per story.
Define Clear Acceptance Criteria and Definition of “Done”: Establishing precise and comprehensive Acceptance Criteria ensures that the outcome meets specified requirements. Additionally, including a thorough and complete Definition of “Done” ensures that all validation tasks are completed, and the outcome is ready for release. This approach proactively ensures both requirements are met, and validation is complete, thereby mitigating the risk of rework.
Review and Refine: User Stories, like any form of communication, benefit from feedback and refinement. It is advisable to regularly review and update these stories during iteration planning meetings or backlog grooming sessions to ensure they remain relevant as User requirements change and project objectives evolve.
Common Pitfalls to Avoid
For new and inexperienced project managers, writing or reviewing User Stories may be an overwhelming task due to the elements involved and attributes to balance. However, this structured approach to writing effective User Stories should simplify the process, easing anxiety and providing a sense of reassurance. It is important to note that despite this guidance, writing effective User Stories presents its own set of challenges. Here are some common pitfalls to avoid:
The User Story does not meet SMART criteria, Specific, Measurable, Attainable, Realistic, and Time-based. In other words, the requirements are unclear, it does not include sufficient Acceptance Criteria or Definitions of Done, the tasks extend over multiple iterations, include objectives that are not achievable, and contain features that are impractical. Ensure the User Story complies with the SMART criteria.
Not incorporating feedback from retrospectives, missing opportunities to appreciate team input and improve the process.
Failing to consider risks and opportunities, thereby missing a chance to mitigate potential risks and capitalize on beneficial opportunities.
Neglecting to involve all relevant stakeholders and parties when gathering requirements, which may result in costly rework.
Providing technical solutions that may limit the creativity and innovation of the delivery team.
Reaching for perfect later and overlooking the good now, potentially delaying the delivery of a reasonably acceptable outcome.
Complicating the Story by adding excessive detail that can obscure the main purpose of the story.
Conclusion
A User Story serves as a detailed narrative that bridges stakeholder expectations and end user experiences with the efforts of the delivery team, serving as a blueprint for the task at hand.
Although the conventional PMI definition of User Stories may be adequate, it is not considered a best practice. A well-crafted User Story encompasses more than just the requirements from a single user's standpoint. To craft effective and constructive User Stories, it is essential to incorporate insights from all relevant stakeholders and include comprehensive and detailed requirements. This method promotes collaboration, motivates action, and ensures successful results.
It is essential to remember that the end goal is not to merely build features but to resolve issues and deliver value. Ultimately, an effective User Story is the foundation of an exceptional User experience.
Example: From Conventional to Recommended Structure
Conventional Structure:
“As a user I want to be able to attach a research paper and submit for approval, upon which the approved paper is published in Acme social media.”
Recommended Structure:
User Story Description: There should be the ability to submit a research paper in the Acme Research Submission application. There should be a workflow for reviewing and approving the research paper. When approved, it should be posted to Acme company social media page for consumption.
Requirements:
Workflow with Appropriate Roles and Responsibilities:
In the Research Submission application, a user assigned the Researcher role must be able to attach the research paper.
A field is required to capture the Title and Completed Date.
Upon submission, the form must proceed to the first line of approval, which is the manager in the chain of command.
The Manager must have the Manager role within the application.
The Manager has the authority to approve or reject the form.
If the form is rejected, it should be editable, allowing the Researcher to resubmit it.
The Manager should have the ability to provide comments.
UI/UX including format and layout:
The Researcher role has three fields: file upload, Completion Date, and Title.
The Manager role can view all Researcher fields, open or download the file, and respond.
Responses include accept, reject, or exit without action. Managers should be able to provide comments when responding.
The UI must follow marketing and branding style guides.
Data Attributes and Transformations:
Title is a single line text field.
Completion Date is a date field defaulting to the current date, following the DD/MM/YYYY format.
The date field can be edited but must not be set in the future.
Document uploads are restricted to Microsoft Word files; other formats are not permitted.
In the Manager view, comments are optional when approving and mandatory when rejecting, with the field being a multi-line text field.
At the top of the screen, the cycle-time should be displayed, calculated as the difference between the current date and the date submitted for active activities, and the difference between the current date and the date approved for completed activities.
Systems requiring integration and interfaces:
The system should interface with Acme company's social media accounts to post published papers upon completion of work.
Security and Compliance:
UI must comply with 508 mandates.
The files enroute must be encrypted.
Access and Authentication:
Access to the system is restricted to individuals with Acme company credentials and authorized access to the Acme application.
Managers are permitted to view submissions made by their subordinates, but they are not allowed to see submissions from other departments.
Researchers are granted access solely to their own submissions.
Full submission visibility is exclusive to users with Admin access.
Notifications and Alerts:
Researchers must receive error messages when the title exceeds the character limit, dates in the future are entered, or non-compliant file formats are added. The message should appropriately reflect the nature of the error.
The Manager must receive an error message when a comment is not provided with rejection responses.
Both the Manager and Researcher should receive emails upon submission, rejection, and approval. The message should appropriately correspond to the status of the response.
Scope:
Form should be web view only, not mobile view.
Expensive COTS solutions are not approved.
Post only to the Acme Company social media page; other pages are out of scope.
Acceptance Criteria:
Researchers can add data, upload files, and submit.
Managers can approve or reject submissions.
Rejected submissions require comments and can be resubmitted.
Published work is shared on social media.
Definition of Done:
Unit testing has been completed.
Functions have been tested to include positive and negative use cases.
The application complies with 508 mandates.
Integration testing has been completed.
UAT concluded with stakeholder approval.
All high priority issues have been resolved.
Optional Components:
Known dependencies and prerequisites:
Coordinate with the social media team to confirm the site is operational.
Known challenges:
508 compliance testing needs to be conducted by an external party. Coordination is necessary.
Key assumptions:
The delivery team is aware of and understands 508 compliance requirements.
User Community:
The target audience includes the Research Department and, ultimately, the broader Social Media community.
Related tasks:
Dependent On: User Story #12345 Social Media page release.
Governing Epic:
Linked Epic: #23456 Publishing Research Papers to Social Media.
Key steps (if known):
Step 1: Review Design
Step 2: Develop
Step 3: Unit Testing
Step 4: Internal Testing
Step 5: UAT