Lesson 03
Roles, artifacts, events, and the empirical process that ties them together.
Scrum is a lightweight framework for developing, delivering, and sustaining complex products. It is built on empirical process control โ the idea that knowledge comes from experience and decisions should be based on what is observed, not what is predicted.
Scrum is intentionally incomplete. It defines only the minimum structure needed for teams to self-organize and iterate. Everything else โ engineering practices, tools, coding standards โ is left to the team. In our Agile Workflow, we fill those gaps with TDD, SOLID, GitFlow, and CI/CD.
Agile is a set of values and principles (the manifesto). Scrum is a framework that implements those values. Not all agile teams use Scrum, but Scrum is the most widely adopted agile framework โ used by over 80% of agile teams worldwide.
Every element of Scrum exists to support one or more of these three pillars.
The significant aspects of the process must be visible to those responsible for the outcome. Transparency requires a common standard so observers share a common understanding of what is being seen.
Scrum users must frequently inspect Scrum artifacts and progress toward a Sprint Goal to detect undesirable variances. Inspection should not be so frequent that it gets in the way of work.
If inspection reveals that a process or product aspect deviates beyond acceptable limits, the process or material being processed must be adjusted. Adjustment must be made as soon as possible to minimize further deviation.
Scrum defines three roles. In our workflow system, each role maps to an AI agent persona with specific responsibilities and expertise.
@po)The Product Owner is responsible for maximizing the value of the product resulting from the work of the Development Team. They are the single point of accountability for the product backlog.
@sm)The Scrum Master is a servant-leader for the Scrum Team. They help the team understand Scrum theory, practices, and rules. They facilitate ceremonies and remove impediments.
The Development Team consists of cross-functional professionals who deliver a potentially releasable increment every sprint. In our system, each specialty maps to an AI agent.
| Role | Agent | Owns | Does NOT own |
|---|---|---|---|
| ๐ Product Owner | @po |
What to build, priorities, backlog, acceptance criteria | How to build it |
| ๐ Scrum Master | @sm |
Process, ceremonies, impediments, velocity | Technical decisions |
| ๐๏ธ Architect | @arch |
System structure โ components, boundaries, data flow, infrastructure, patterns (Clean Architecture, Event-Driven, etc.), ADRs | Code-level quality (that's @lead) |
| ๐จโ๐ป Tech Lead | @lead |
Code quality โ PR reviews, SOLID/Clean Code enforcement, tactical technical decisions, unblocking devs | System architecture (that's @arch) |
| โจ๏ธ Developer | @dev |
Implementation, TDD, feature branches, pull requests | Approving own code |
| ๐งช QA Engineer | @qa |
Test strategy, coverage, TDD coaching, exploratory testing | Skipping tests for speed |
| ๐ DevOps | @devops |
CI/CD pipeline, deployment, infrastructure-as-code | Business logic |
| ๐ก๏ธ Security | @sec |
OWASP audits, CVE scanning, auth/data review | Feature development |
| ๐จ UX Engineer | @ux |
Frontend implementation, accessibility (WCAG), design system | Backend logic |
| ๐๏ธ DBA | @dba |
Schema design, migrations, query optimization | Application logic |
@arch thinks in systems: "Should we use a message queue between these services?" @lead thinks in code: "Should this be a method or a separate class?" @lead escalates system-level questions to @arch. @arch delegates code enforcement to @lead.
A common mistake is making the Scrum Master a "project manager" who assigns tasks and tracks deadlines. The Scrum Master is a servant-leader and process coach. The team self-organizes; the SM helps them do it effectively.
Artifacts represent work or value. They are designed to maximize transparency of key information so everyone has the same understanding.
An ordered list of everything that is known to be needed in the product. It is the single source of requirements. The Product Owner owns it and is responsible for its content, availability, and ordering.
# Product Backlog (ordered by priority)
1. [STORY] User authentication via OAuth โ 8 pts
2. [STORY] Payment processing integration โ 13 pts
3. [STORY] Dashboard analytics view โ 5 pts
4. [TECH] Migrate DB to PostgreSQL 16 โ 8 pts
5. [BUG] Fix session timeout on mobile โ 3 pts
...
The set of Product Backlog items selected for the Sprint, plus a plan for delivering the Increment and achieving the Sprint Goal. It is owned by the Development Team and is a real-time picture of the work they plan to do during the Sprint.
The sum of all Product Backlog items completed during a Sprint and the value of the increments of all previous Sprints. At the end of a Sprint, the new Increment must be "Done" โ usable and meeting the Definition of Done. It must be in a releasable condition.
Scrum defines five events (also called ceremonies). Each creates regularity and minimizes the need for ad-hoc meetings. We cover these in detail in Lesson 05: The Sprint Lifecycle.
| Event | Purpose | Timebox | Pillar |
|---|---|---|---|
| Sprint | Container for all other events; 1-2 week iteration | 1-2 weeks | All three |
| Sprint Planning | Define sprint goal, select stories, create plan | 2-4 hours | Inspection, Adaptation |
| Daily Standup | Synchronize work, identify blockers | 15 minutes | Transparency, Inspection |
| Sprint Review | Demonstrate increment, collect feedback | 1-2 hours | Inspection, Adaptation |
| Retrospective | Reflect on process, plan improvements | 1-1.5 hours | Inspection, Adaptation |
Scrum is simple to understand but difficult to master. The framework is intentionally minimal โ it provides just enough structure for empirical process control to work. Everything else (engineering practices, tools, coding standards) is for the team to decide. Our Agile Workflow fills these gaps with concrete practices: TDD, SOLID, code review, CI/CD, and more.
Who is responsible for owning and prioritizing the Product Backlog?