top of page

Program with 4 Agile Squads

  • Writer: Anand Nerurkar
    Anand Nerurkar
  • Jun 30
  • 11 min read

Definition of Done (DoD) – Explained Simply

The Definition of Done (DoD) is a clear, shared, and measurable checklist of criteria that a product increment (feature, user story, task, or sprint deliverable) must meet before it can be considered complete.

It ensures:

  • Consistent quality

  • No hidden work

  • Alignment between developers, testers, product owners, and stakeholders

📌 Official Agile Definition (Scrum Guide):

“The Definition of Done is a formal description of the state of the Increment when it meets the quality measures required for the product.”

✅ Why DoD Matters

  • Prevents ambiguity around “done”

  • Promotes accountability and transparency

  • Supports sustainable development and faster delivery

  • Aligns team members and stakeholders on expectations

🧾 Example of a Definition of Done (for a user story):

✅ Code is written and reviewed✅ Unit tests written and passed (80%+ coverage)✅ Functional and integration tests passed✅ Code pushed to main branch✅ Feature tested in staging environment✅ No critical/high bugs open✅ Acceptance criteria met✅ Documentation updated (code + user-facing)✅ Product Owner reviewed and accepted✅ Deployed to production or ready for release

📦 Where Is DoD Used?

Context

How DoD Helps

Sprint Review

Only “Done” items are demoed

Velocity

Only “Done” stories count toward velocity

Planning

Helps size user stories realistically

Quality

Maintains consistency across teams

✅ DoD vs DoR (Definition of Ready)

Term

Definition

Definition of Ready

When a story is ready to be picked up by dev team (clear, estimated, testable)

Definition of Done

When a story is truly finished and meets all acceptance and quality standards

🎯 Best Practices

  • Define it collaboratively (Dev, QA, PO, Scrum Master)

  • Keep it visible (on boards, wikis, sprint planning docs)

  • Apply consistently across all sprints

  • Evolve it as the product matures


✅ Definition of Done (DoD) – SaaS Platform Version

Here’s a comprehensive and practical DoD tailored for a SaaS-based multi-tenant product:

🔹 1. Code and Development

  • ✅ Code is written, peer-reviewed, and follows coding standards

  • ✅ Unit tests are written and passing (minimum 80% coverage)

  • ✅ Feature flag enabled (if applicable)

  • ✅ Code is committed to trunk/main (trunk-based dev)

  • ✅ Static code analysis shows no critical issues (e.g., SonarQube, Checkstyle)

🔹 2. Testing and Validation

  • ✅ Functionality tested on all supported tenants (multi-tenancy verified)

  • ✅ Integration and regression tests passed

  • ✅ No open critical/major bugs

  • ✅ Performance benchmarks done (where applicable)

  • ✅ Security scans passed (OWASP, dependency checks, etc.)

  • ✅ Accessibility tests (if user-facing)

🔹 3. Environments and CI/CD

  • ✅ Code is deployed and verified in staging/pre-prod

  • ✅ CI pipeline passed (build, test, package, deploy)

  • ✅ Rollback strategy documented (or automated)

  • ✅ Feature validated behind toggle (if progressive rollout)

  • ✅ Deployment YAML/scripts updated (e.g., Helm chart, Terraform)

🔹 4. Documentation

  • ✅ API specs updated (e.g., Swagger/OpenAPI)

  • ✅ System documentation updated (confluence, architecture diagram)

  • ✅ Runbook/playbook created or updated

  • ✅ Release notes drafted (JIRA/Confluence)

🔹 5. Security and Compliance

  • ✅ GDPR/PII compliance checked (if handling user data)

  • ✅ RBAC/permissions validated across tenants

  • ✅ Audit logging added for critical actions

  • ✅ Secrets handled via vaults (no hardcoded secrets)

🔹 6. Product and Business Alignment

  • ✅ Acceptance criteria met

  • ✅ UX/UI approved by designer/stakeholder

  • ✅ Product Owner demoed and signed off

  • ✅ SLA/SLO implications reviewed

  • ✅ Tenant-specific config reviewed and validated

🔹 7. Release Readiness

  • ✅ Story marked "Done" in JIRA or tracking system

  • ✅ Tested on at least one tenant sandbox

  • ✅ Passed tenant onboarding checklist (if new feature)

  • ✅ Ready for release (automated or scheduled)

🧭 Optional (if Mature SaaS)

  • ✅ Observability hooks added (Prometheus/Grafana, logging)

  • ✅ Feature usage metrics instrumented

  • ✅ API rate limiting tested

  • ✅ Chaos test (resiliency, failover)

📌 Where to Use This DoD?

Phase

Use it to ensure...

Story sign-off

All tasks are fully done

Sprint review

Only features that meet DoD are demoed

UAT / staging

Release is ready across all tenants

Release pipeline

Avoid rollback/failure in production

==========

Definition of Done (DoD) and Acceptance Criteria are closely related but not the same. They serve different purposes in Agile and Scrum.

✅ Key Difference: DoD vs Acceptance Criteria

Aspect

Definition of Done (DoD)

Acceptance Criteria

What it is

A universal checklist that defines when any item is “done”

A story-specific checklist that defines when that user story is accepted

Scope

Applies to all backlog items (global across the team or product)

Applies to a single user story or feature

Purpose

Ensures consistency, quality, and completeness

Ensures business intent is met for that story

Created by

Scrum Team (Dev + QA + PO)

Product Owner with Dev/QA input

Example Format

Checklist (code review, tests passed, deployed to staging)

Given-When-Then or bullet list describing behavior

Timing

Applied at the end of implementation

Defined before development starts

🧾 Simple Example:

🎯 User Story

As a tenant admin, I want to be able to reset passwords so that users can regain access if they forget credentials.

Acceptance Criteria

  • User receives a reset password link via email

  • Link expires after 24 hours

  • Reset must require at least one capital letter, one number, and 8+ characters

  • Audit log entry created for reset event

📋 Definition of Done (DoD)

  • Code reviewed and merged

  • Unit + integration tests pass

  • Functionality verified in staging

  • Security validations done (password strength, email masking)

  • Documentation updated

  • Feature toggled for tenants

  • PO review and sign-off

🔁 How They Work Together

| Acceptance Criteria | ✅ Are part of what must be met for the story to be functionally complete || Definition of Done  | ✅ Ensures all technical and process-level tasks are completed to mark it as “done” |

🔑 Analogy:If Acceptance Criteria is the “what” for one story,then Definition of Done is the “how” + quality gate for every story.

✅ Final Takeaway

  • Acceptance Criteria = specific to the functionality

  • DoD = broad checklist to ensure the story is shippable, testable, and production-ready

Both must be satisfied before a user story can be considered complete and deliverable.

=====================


🔴 Top Challenges in a Multi-Squad Agile Program (4 Squads)

1️⃣ Dependency Management Across Squads

  • Problem: Features often span multiple squads. If one squad delays, others get blocked.

  • Symptoms: Bottlenecks, finger-pointing, rework.

  • Solution:

    • Use a Dependency Tracker (JIRA Advanced Roadmaps, Confluence boards)

    • Visualize on a Program Board (PI Planning style)

    • Establish a "Dependency Champion" role per squad

2️⃣ Lack of Synchronization

  • Problem: Sprints may start/end at different times; inconsistent definitions of "done".

  • Symptoms: Misaligned releases, poor integration quality.

  • Solution:

    • Enforce sprint cadence alignment (e.g., all squads run 2-week sprints in sync)

    • Hold Scrum of Scrums (2–3 times per week)

    • Define a shared Definition of Done across squads

3️⃣ Fragmented Communication

  • Problem: Teams become siloed—no cross-talk between developers, testers, or POs.

  • Symptoms: Duplicate efforts, conflicting assumptions, slow issue resolution.

  • Solution:

    • Establish shared Slack channels / Teams groups

    • Rotate people for cross-squad code reviews / demos

    • Shared daily stand-ups or weekly Joint Reviews

4️⃣ Unclear Ownership of Shared Components

  • Problem: Backend services, APIs, or shared libraries are modified without coordination.

  • Symptoms: Breaking changes, build failures, integration bugs.

  • Solution:

    • Define Component Owners

    • Maintain API contracts and use semantic versioning

    • Adopt consumer-driven contract testing (e.g., Pact)

5️⃣ Inconsistent Backlog Grooming / Prioritization

  • Problem: Squads have different interpretations of priority or value.

  • Symptoms: Business value not realized; features delivered out of context.

  • Solution:

    • Use a single prioritized program backlog

    • Conduct Quarterly PI Planning (like SAFe) or joint grooming sessions

    • Product Managers work as a "PM Chapter" to align on goals

6️⃣ Technical Debt Accumulation

  • Problem: Teams focus on velocity and feature delivery, ignoring refactoring.

  • Symptoms: Long-term velocity slows down; bugs increase.

  • Solution:

    • Allocate 20–25% sprint capacity to tech debt

    • Set architecture guardrails and tech governance

    • Conduct bi-weekly tech syncs with architects and senior devs

7️⃣ Quality Variance Across Squads

  • Problem: Each squad has its own test strategy or automation maturity.

  • Symptoms: Inconsistent quality, test duplication, unstable releases.

  • Solution:

    • Define a shared quality framework (unit test % minimum, automation tools, etc.)

    • Implement a common CI/CD pipeline

    • Create a QA Center of Excellence (CoE)

8️⃣ Lack of Integrated Reporting / Visibility

  • Problem: Each squad has its own burndown and status; no holistic view.

  • Symptoms: Stakeholders lack confidence, delayed decisions.

  • Solution:

    • Use tools like JIRA Advanced Roadmaps / BigPicture / Aha!

    • Create a shared program dashboard (sprint velocity, risks, dependencies)

    • Weekly program-level sync meetings with POs, SMs, Architects

🛠️ Operating Model to Handle These Challenges

🔧 Structure

Role

Responsibility

Release Train Engineer or Program Manager

Oversees cross-squad planning and execution

Scrum of Scrums Lead

Coordinates daily inter-squad issues

Architecture Owner

Aligns design and tech standards

Chapter Leads

Align on testing, DevOps, security

📅 Cadence

Ceremony

Frequency

Sprint Planning

Bi-weekly

Scrum of Scrums

2–3 times/week

Program Sync (RTE + POs + SMs)

Weekly

System Demo / Release Review

End of sprint

PI Planning (2–3 month plan)

Quarterly

📌 Checklist for Program Stability

✅ Aligned sprint calendar across squads✅ Shared backlog with unified prioritization✅ Defined Definition of Done and Acceptance Criteria✅ Clear RACI for shared APIs/services✅ Metrics tracked: velocity, story completion rate, escaped defects✅ Cross-squad retrospectives quarterly

==============

✅ 1. Confluence / Notion Template – 4-Squad Agile Program Governance

This template is designed to help you track and manage the program-level execution, dependencies, alignment, and quality across 4 Agile squads.

📘 Confluence/Notion: Program Dashboard Home

📌 Program Name: SaaS Platform Modernization

Section

Purpose

Overview

Objective, teams involved, program duration, definition of success

Squad Overview

Team composition, PO, SM, Tech Lead, key deliverables

Program Timeline

Program increment calendar, sprint cadence, milestones

Key Objectives (OKRs)

Business + technical outcomes linked to each squad

Risks & Impediments

Rolling list with owner, severity, mitigation

Dependencies Tracker

Cross-squad feature dependencies and delivery links

Integration Readiness

Status of integrated modules across squads (updated per sprint)

CI/CD & Release Readiness

Deployment readiness by environment, code freeze, rollback plans

Stakeholder Updates

Weekly summary, metrics, and decisions made

🧩 Template: Squad-Level Section (Repeat for Each Squad)

Squad Name: e.g., Onboarding Squad

Field

Detail

PO

Name & contact

Scrum Master

Name & contact

Squad Members

Role-wise listing (Dev, QA, UX)

Feature Backlog

Link to JIRA filter / roadmap

Velocity Trend (Last 5 Sprints)

Embed chart / burn-up

Quality Dashboard

Unit test %, bugs per sprint, code coverage

Current Sprint Goals

2–3 crisp objectives

Key Dependencies

List of blocked teams or blockers

Demos & Review Notes

Add links to sprint demos

✅ 2. Scrum of Scrums Deck Template (Weekly)

This deck can be reused every week in your Scrum of Scrums sync. Use Google Slides / PowerPoint / Notion gallery view.

🔶 Scrum of Scrums Weekly Sync Template

Section

Content

Date

YYYY-MM-DD

Participants

PO, SM, Tech Leads from each squad

Program Goals Reminder

Slide with current PI/Release goal

Squad Updates (1 slide per squad)

Format below

Risks & Escalations

Add issues to escalate to leadership

Cross-team Dependencies

Tracker view: who needs what, by when

Release Timeline & Integration Status

Status of release branches, API mocks, etc.

🧩 Squad Update Slide Template

Squad Name: e.g., Tenant Management

Field

Example

Sprint #

Sprint 8 (24-Jun to 5-Jul)

Current Sprint Goals

Implement multi-tenant dashboard, begin billing sync

Achievements

2 stories done, API validated with "Billing Squad"

Risks

Schema refactor delay may impact UAT

Dependencies

Waiting on Kafka event from "Core Services"

Demo Video / QA Link

[Click to view]

✅ 3. Program-Level Dashboard Layout (for PMs, CTO, Stakeholders)

Use this in Confluence or a reporting dashboard tool (like PowerBI, Google Data Studio, or JIRA Dashboards):

📊 Program Dashboard Sections

🟩 Program Health Summary

Metric

Value

Status

Sprints Completed

5 of 10

🟡 On Track

Overall Feature Progress

62%

🟢 Green

Escaped Defects (last release)

3

🟢 Green

Velocity Stability

90% confidence

🟡 OK

Deployment Success Rate

98%

🟢 Green

🟦 Squad Velocity Table

Squad

Avg Velocity

Latest

Trend

Onboarding

30 SP

32 SP

⬆️

Billing

26 SP

22 SP

⬇️

Tenant Management

28 SP

30 SP

➡️

Core Services

33 SP

33 SP

➡️

🟨 Risks Tracker (Auto-Rolling)

Squad

Risk Description

Severity

Mitigation Owner

Core Services

Kafka contract not finalized

High

Ravi (Architect)

Billing

GST module delay from vendor

Medium

PO

🟥 Cross-Squad Dependency Matrix

Squad → Depends On

Core

Billing

Tenant Mgmt

Onboarding

Core

Billing

Tenant Mgmt

Onboarding


====

Mutual Fund Platform Modernization Program

📊 Program Overview

  • Program Name: Mutual Fund Platform Modernization

  • Business Goal: Modernize legacy systems to a scalable, secure, and cloud-native microservices-based platform supporting multiple investor touchpoints (mobile, web, API).

  • Scope:

    • Digital onboarding and KYC

    • Transaction management (purchase, redemption, switch)

    • Portfolio tracking and reporting

    • Advisor and distributor management

    • Regulatory reporting and audit compliance

  • Duration: 9 Months (3 Program Increments)

  • Tech Stack: Java 17, Spring Boot Microservices, Azure Kubernetes Service (AKS), Azure API Management, Azure SQL, Azure Cosmos DB, Azure Event Hub/Kafka, Azure DevOps, Key Vault, App Gateway, Azure Monitor, Istio

👥 Agile Squad Structure (4 Squads)

1. Investor Experience Squad

  • Focus: UI/UX, onboarding, KYC, dashboard, authentication (OAuth2, Azure AD B2C)

  • Key Deliverables:

    • Modern responsive UI

    • KYC integration (Aadhaar, PAN, DigiLocker)

    • Mobile + web login

    • Role-based dashboards

2. Transaction Services Squad

  • Focus: Purchase, Redemption, SIP/STP/SWP flows, transaction history

  • Key Deliverables:

    • Order placement and validation engine

    • Integration with RTA (CAMS/Karvy) APIs

    • Retry, timeout, idempotency handling

    • Business rule engine for product validation

3. Advisory & Partner Services Squad

  • Focus: Distributor onboarding, advisor dashboards, commissions, reporting

  • Key Deliverables:

    • Advisor hierarchy and payout engine

    • Real-time dashboards for commissions and AUM

    • Data sync with partner CRM

4. Compliance, Risk & Reporting Squad

  • Focus: SEBI regulations, audit trails, portfolio statements, tax reports

  • Key Deliverables:

    • Audit logging (write-ahead, immutable)

    • Portfolio and tax reporting module

    • Integration with Azure Purview & Sentinel

    • Static code scans and compliance checklists

💼 Program-Level Governance

  • Program Manager / RTE: Coordinates across squads

  • Architect: Ensures alignment to microservices and Azure reference architecture

  • Scrum of Scrums: Held twice weekly

  • Tools: JIRA (Program Board + Backlogs), Confluence (DoD, AC), Azure Boards

  • PI Planning: Conducted every 3 months

  • Release Cadence: Every 2 sprints (biweekly)

✅ Definition of Done (DoD)

  • Code developed, reviewed, merged

  • Unit tests ≥ 80% coverage

  • Integration tests passing

  • API contract stable

  • Tested across dev/test environments

  • Deployed via Azure DevOps to AKS

  • Static scans (SonarQube, Trivy) passed

  • Observability metrics instrumented (Prometheus/Grafana)

  • Documentation and release notes updated

  • PO sign-off done

📝 Sample Acceptance Criteria (Investor Onboarding)

  • Given a valid PAN and Aadhaar, when the user submits onboarding, KYC is auto-initiated

  • If KYC success, user gets account creation email

  • If user is minor, guardian workflow is triggered

  • All steps logged in audit trail with timestamp

📊 Program-Level Dashboard

Metric

Value

Status

Sprints Completed

5 / 18

🟡 Yellow

Overall Feature Progress

42%

🟠 Green

Escaped Defects (Prod)

3

🟠 Green

Active Dependencies

6

🔴 Red

API Integration Coverage

78%

🟡 Yellow

🚧 Risks and Mitigation Plan

Risk ID

Category

Description

Severity

Mitigation Action

R1

Dependency

RTA API delay from CAMS impacting transaction squad

High

Use mock RTA API, parallel contract testing, raise escalation

R2

Architecture

Common API gateway latency spikes under load

Medium

Implement rate limiting + caching + auto-scale App Gateway

R3

Compliance

Missing SEBI audit checkpoint for digital onboarding

High

Validate checklist weekly; sync with legal every sprint

R4

Integration

Duplicate investor records from partner CRM sync

Medium

Add dedup logic and alerting, fuzzy match rules

R5

Team Alignment

Inconsistent DoD across squads

Medium

Conduct DoD alignment workshop and adopt shared template

R6

Release Risk

Regression failure in shared microservice

High

Contract testing, feature flagging, nightly integration runs

🌍 Tools Used

  • Code: GitHub + Azure Repos

  • CI/CD: Azure DevOps Pipelines

  • Infra: Azure AKS, App Gateway, Cosmos DB, Azure SQL

  • Monitoring: Azure Monitor, Grafana, Prometheus, Application Insights

  • Security: Azure Key Vault, Defender, OWASP ZAP, Trivy

  • Documentation: Confluence (DoD, AC, APIs), Miro (Architecture), Draw.io

  • Collaboration: JIRA, Teams, Slack, Scrum of Scrums

🚀 Next Steps

  • Complete Sprint 6 planning across squads

  • Align integration test strategy for cross-squad flows

  • Conduct mid-PI demo for leadership

  • Track open risks and refresh mitigations weekly


Shared Definition of Done (DoD) – Mutual Fund Platform Program

Category

DoD Item

Development

✅ Code checked in to GitHub/Azure Repos


✅ Branch naming conventions followed

Code Quality

✅ Code reviewed by at least 1 peer


✅ Static analysis passed (SonarQube: no critical/blocker issues)


✅ Linting and formatting applied

Testing

✅ Unit test coverage ≥ 80%


✅ Integration tests written and passed


✅ Postman/Newman API tests passed


✅ Regression tests updated if needed

API/Contract

✅ OpenAPI/Swagger contract published and reviewed


✅ Backward compatibility confirmed


✅ Pact/Contract testing for shared services

Security

✅ OWASP Top 10 checks addressed


✅ Trivy/ZAP scan passed


✅ Secrets managed in Azure Key Vault

Infrastructure

✅ Deployed to Dev/QA via Azure DevOps Pipelines


✅ Environment variables configured via Helm charts

Observability

✅ Logging integrated (Log4j/Serilog)


✅ Metrics exposed to Prometheus/Grafana


✅ Alerts configured for critical flows

Documentation

✅ Functional design updated in Confluence


✅ API documentation published


✅ Release notes prepared

Product Validation

✅ PO reviewed and accepted via demo


✅ Acceptance Criteria met (JIRA closed)


✅ End-to-end UAT done (if applicable)

Governance

✅ Linked to Epic/Feature in Program Board


✅ Story status = “Done” in JIRA


✅ No open dependencies/blockers


 
 
 

Recent Posts

See All
SpringBoot IQ

How to enable audit service of springboot To leverage Audit Service ,pls follow below steps Enable entityListener for AuditEntityListener...

 
 
 

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
  • Facebook
  • Twitter
  • LinkedIn

©2024 by AeeroTech. Proudly created with Wix.com

bottom of page