Part (i) - Way of Working for an Agile Distributed Team
- 3 week iterations (all teams starting and ending on the same days)
- Sprint Planning with the teams (Planning Poker for Stories, hours for tasks)
- Daily Scrums (3 questions plus "What have your learned?")
- Prioritised Backlog (Stories for the next-up phases, Use Cases for further out, Epics beyond that)
- Product Owners own Product Backlog
- Release Plan (always visible with named internal releases each iteration)
- Defects, Technical Stories (NFR's) and Technical Risks on the Product Backlog too
- Cross Functional Teams (UI Designers, Product Owners, Designer / Developers, Testers)
- Core Services Team (Environments, CM, CI, DBA)
- Crozz Timezone Teams (no primary location - Scrum Masters could be anywhere)
- Scrum of Scrums (meeting 2-3 times a week)
- Demos each iteration with client Acceptance / Signoff
- Empowered Onsite Clients (but not full time)
- Retrospectives every Iteration
- Definition of Done (see part (ii))
- Automated Integration Tests (captured with Selenium from Wireframes before development)
- Automated Acceptance Tests / Regression Tests (ensuring "Accepted Functionality never gets lost)
- IBM RTC for Stories, Tasks, Defects
- IBM RTC for SCM
- Hudson for CI
- Virtual Taskboards (IBM RTC)
- Each teams Velocity tracked and displayed
- Product Burnup displayed as Lean Cumulative Flow Diagrams
- Sprint Burndowns tracked and displayed
- Teams (Re)Plan and (Re)Estimate every Iteration
- System Testing within an Iteration
- Hudson and RTC Radiators (builds and graphs displayed on Screens plus audible feedback from HudsonTracker)
- Collaborative workspaces (whiteboards, pens, post-its, breakout areas)
- Regular High Bandwidth COmmunications (Eyecatcher VC Units, MSCommunicator VoIP, desktop sharing)
- No changes during an Iteration
No comments:
Post a Comment