Agile software development
Domain focus
The CAT exam tests agile software development as a set of values, frameworks and feedback mechanisms that change how testing is planned and performed. You need to recognize Scrum and Kanban vocabulary, XP engineering practices and the Agile Manifesto's four value pairs.
Core rules and concepts
- The Manifesto values individuals and interactions, working software, customer collaboration and responding to change over the items on the right, while still valuing the right-hand items.
- Scrum uses three accountabilities (Product Owner, Scrum Master, Developers), three artifacts (Product Backlog, Sprint Backlog, Increment) and five events (Sprint, Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective). The Definition of Done is a shared quality gate for the Increment.
- Kanban visualizes flow, limits work in progress and pulls work when capacity exists; it does not prescribe Scrum events.
- XP contributes test-driven development, pair programming, continuous integration, refactoring, simple design and collective code ownership.
Worked example
A team says, 'We are agile because we hold a 15-minute daily stand-up.' That is insufficient evidence. The stand-up is only one Scrum event. The team also needs a prioritized Product Backlog, a Sprint Goal and Sprint Backlog, a demonstrable Increment meeting the Definition of Done, a Sprint Review with stakeholders and a Retrospective for process improvement. A tester should ask how acceptance criteria enter the backlog and how the Increment is verified.
Traps
- Treating agile as 'no documentation' rather than 'just enough documentation.'
- Confusing the Product Owner (value and priority) with the Scrum Master (process facilitation) and Developers (delivery).
- Assuming Kanban requires sprints or that Scrum forbids flow-based work.
- Calling a daily meeting a status report to management; it is for the team to plan the day.