Pages

Tuesday, 20 May 2025

What is NFR in scrum agile?

 In Scrum Agile, NFR stands for Non-Functional Requirements.

๐Ÿ“Œ What are Non-Functional Requirements (NFRs)?

These are the system qualities or performance criteria that describe how a system should behave, rather than what it should do (which is handled by functional requirements).


๐Ÿงฉ Examples of NFRs in Agile:

  • Performance: “The page must load in under 2 seconds.”

  • Scalability: “The system must support 10,000 concurrent users.”

  • Security: “All passwords must be stored using SHA-256 hashing.”

  • Usability: “The interface must be usable by visually impaired users.”

  • Availability: “99.9% uptime required.”

  • Compliance: “Must comply with GDPR.”


๐Ÿง  NFRs in Scrum Agile Context:

  • NFRs are often included in the Definition of Done (DoD).

  • They can be written as acceptance criteria for user stories.

  • For large or complex NFRs, Scrum teams may create separate technical stories or spikes.

  • Product Owners and stakeholders prioritize them alongside functional features.


✅ Best Practices:

  • Make NFRs testable: “System should respond in under 500ms” (not “should be fast”).

  • Document shared NFRs globally (across multiple stories) in a central place or backlog.

  • Involve architects/devops early if NFRs affect infrastructure or deployment.


Here’s how you can write Non-Functional Requirements (NFRs) in Agile Scrum — using user stories, acceptance criteria, and backlog integration.


✅ 1. Writing NFRs as User Stories

Even though NFRs describe qualities, you can still format them as user stories when appropriate:

๐Ÿ”น Example 1: Performance

As a user,
I want the product page to load within 2 seconds,
So that I can browse quickly without frustration.


๐Ÿ”น Example 2: Security

As a system administrator,
I want all user passwords encrypted with SHA-256,
So that user data remains secure.


๐Ÿ”น Example 3: Availability

As a customer,
I want the application to be available 99.9% of the time,
So that I can rely on it for business operations.


✅ 2. Using Acceptance Criteria for NFRs

You can also include NFRs as acceptance criteria in a functional user story.

๐Ÿงพ Functional Story:

As a user,
I want to log into the system,
So that I can access my dashboard.

✅ Acceptance Criteria (with NFRs):

  • Login response time must be under 1 second

  • System must log all login attempts

  • Passwords must never be stored in plaintext


✅ 3. Storing NFRs in the Backlog

๐Ÿงฑ Where to keep NFRs:

  • As individual backlog items (e.g., spikes or tech tasks)

  • As part of the “Definition of Done” — applied to all stories

  • In technical documentation linked to stories (e.g., a system quality matrix)


๐Ÿ’ก Tips:

  • Tag NFRs in your backlog for visibility: #NFR, #Security, #Performance

  • Prioritize critical NFRs in early sprints to avoid technical debt

  • Collaborate with DevOps/QA to define testable metrics for NFRs

Sunday, 11 May 2025

What is the difference between stories, epics, and tasks ?

Item

Definition

Purpose

Example

Epic

A large body of work that can be broken down into smaller stories.

Groups related features or goals at a high level.

"Build a user account system"

Story (User Story)

A feature or requirement told from the user’s perspective.

Represents one functional piece of an Epic.

"As a user, I want to reset my password so I can regain access"

Task

A detailed, actionable piece of work needed to complete a story.

Used to track development steps or subtasks.

"Design reset password page", "Implement backend API"


๐Ÿ” More Details

๐ŸŸฃ Epic

  • High-level feature or initiative

  • Too big to complete in a single sprint

  • Often spans multiple sprints

  • Broken down into multiple user stories

๐ŸŸข User Story

  • Focused on user value

  • Written in this format:
    ๐Ÿ‘‰ “As a [user], I want [goal] so that [benefit]”

  • Helps teams understand why something is needed

  • Estimated using story points

๐Ÿ”ต Task

  • Often used for planning or technical implementation

  • Can be assigned to individuals

  • Helps track progress within a story

  • May include testing, documentation, UI design, etc.


๐ŸŸฃ EPIC Template & Example

Epic Template

Title: [Brief Name of the Epic]
Description: [What this large feature or initiative is about and why it matters]
Business Value: [How it supports user needs or business goals]
Acceptance Criteria (optional): [What success looks like for the whole epic]
Related Stories: [Break this epic down into user stories]

๐Ÿงพ Epic Example

Title: User Account Management
Description: As part of our app launch, we need to allow users to create, manage, and recover their accounts.
Business Value: This allows user personalization, data persistence, and secure access—core to our product.
Acceptance Criteria:

·         Users can sign up, log in, log out

·         Users can reset passwords

·         Admins can deactivate accounts
Related Stories:

·         Sign up and sign in functionality

·         Password reset

·         Edit user profile

·         Email verification


๐ŸŸข USER STORY Template & Example

User Story Template

As a [type of user]
I want to [do something]
So that [benefit/value I get]

Acceptance Criteria:

·         [List of conditions that define when the story is complete]


๐Ÿงพ User Story Example

As a registered user
I want to reset my password
So that I can regain access to my account if I forget my login credentials

Acceptance Criteria:

·         User sees a “Forgot password?” link on the login page

·         A password reset email is sent when the user submits their email

·         User can set a new password using a secure token link

·         The link expires after 15 minutes

 

Friday, 9 May 2025

What goes into a scrum backlog? How to prioritize it?

 In Agile Scrum, the Product Backlog is the heartbeat of your project. It’s not just a to-do list—it's a living, evolving roadmap of everything your team might work on. But what exactly should go into a Scrum backlog, and how do you effectively prioritize what gets done first?

Whether you're a Product Owner, Scrum Master, or team member, understanding backlog management is essential to building high-performing Agile teams.


✅ What Is a Scrum Backlog?

The Scrum backlog, or Product Backlog, is a prioritized list of work that might be needed in the product. It includes features, fixes, technical work, and learning objectives.

The backlog is owned by the Product Owner and serves as the single source of truth for what the team works on during Sprints.


๐Ÿ“‹ What Goes into a Scrum Backlog?

Here are the most common Product Backlog Items (PBIs):

1. User Stories

"As a user, I want to [do something] so that [benefit]"

These describe features or functionalities from an end-user perspective.

2. Bugs or Defects

Fixing known issues to improve the product’s quality and performance.

3. Technical Tasks

Infrastructure work, refactoring, database setup, etc.

4. Spikes (Research Tasks)

Time-boxed tasks to explore unknowns or test technical approaches.

5. Improvements (Technical Debt)

Items to enhance code quality, performance, or reduce complexity.

6. Documentation or Compliance Work

Especially important in regulated industries or enterprise products.


๐Ÿง  How to Prioritize a Scrum Backlog

Prioritization is not just about urgency—it’s about delivering maximum value with the resources and time available.

Here are effective prioritization techniques used by Agile teams:


๐Ÿ”ข 1. MoSCoW Method

  • Must have – Core to product

  • Should have – Important, but not critical

  • Could have – Nice to have

  • Won’t have – Not in scope now

๐Ÿงฎ 2. Value vs. Effort Matrix

Plot each item on a 2x2 grid:

  • High Value + Low Effort = Top Priority

  • Low Value + High Effort = Bottom Priority

๐ŸŽฏ 3. Kano Model

Focuses on customer satisfaction:

  • Basic needs – Expected functionality

  • Performance needs – Add value

  • Delighters – Wow factor

๐Ÿง  4. Weighted Shortest Job First (WSJF)

(Used in SAFe):
WSJF = (Business Value + Time Criticality + Risk Reduction) / Job Size


๐Ÿ’ก Tips for Effective Backlog Grooming

  • Keep items small and clear (INVEST principle: Independent, Negotiable, Valuable, Estimable, Small, Testable)

  • Refine regularly (Backlog Refinement meetings once per sprint)

  • Collaborate — Invite the whole Scrum team to contribute

  • Use acceptance criteria to ensure clarity


๐Ÿ› ️ Recommended Backlog Tools

  • Jira

  • Trello (with Scrum Power-Ups)

  • ClickUp

  • Azure DevOps

  • Notion (custom setup)


๐Ÿ Conclusion

A well-managed Scrum backlog ensures your team stays aligned, focused, and delivers value each Sprint. By combining meaningful content (user stories, bugs, tasks) with a clear prioritization strategy, you set the foundation for Agile success.


What is NFR in scrum agile?

 In Scrum Agile , NFR stands for Non-Functional Requirements . ๐Ÿ“Œ What are Non-Functional Requirements (NFRs)? These are the system quali...