Unit 2 — Agile Development & Scrum¶
Learning objectives¶
- Explain agile values without reducing agility to "no documentation" or "no planning".
- Describe Scrum roles, events, and artifacts.
- Use short iterations to create inspectable increments and learning.
Agility¶
Agility is the capability to respond to change while continuing to deliver value. It depends on technical practices as much as planning practices. A team with fragile code and slow manual testing cannot remain responsive for long.
Scrum in one view¶
flowchart LR
PB[Product Backlog] --> SP[Sprint Planning]
SP --> SB[Sprint Backlog]
SB --> DEV[Build + Test]
DEV --> INC[Potentially usable Increment]
INC --> REV[Sprint Review]
REV --> PB
DEV --> RET[Sprint Retrospective]
RET --> SP
Definition of Done¶
A useful Definition of Done can include:
- Code implemented and peer-reviewed.
- Automated tests passing.
- Static checks passing.
- Documentation updated.
- Acceptance criteria demonstrated.
- No known critical security issue introduced.
Anti-patterns¶
- Calling every two-week period a sprint without producing an increment.
- Treating velocity as employee productivity.
- Skipping engineering quality to "move fast" and then losing speed to rework.
- Using daily stand-ups as manager status reporting rather than team coordination.