10.07.2015 Views

A CIO's Playbook for Adopting the Scrum Method of ... - Rally Software

A CIO's Playbook for Adopting the Scrum Method of ... - Rally Software

A CIO's Playbook for Adopting the Scrum Method of ... - Rally Software

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Tooling Infrastructure <strong>for</strong> Enterprise AgilityEven with this level <strong>of</strong> structure and coordination, larger projects and distributed teams may still find<strong>the</strong>mselves lacking <strong>the</strong> internal and cross-team coordination and project visibility required to reliably delivers<strong>of</strong>tware in rapid, fully-tested iterations. While <strong>Scrum</strong> provides a proven framework <strong>for</strong> <strong>the</strong> projectmanagement aspects <strong>of</strong> s<strong>of</strong>tware development, it does not prescribe specific s<strong>of</strong>tware engineering practicesnor recommend specific tooling to support <strong>the</strong> <strong>Scrum</strong> process. <strong>Scrum</strong>’s philosophy in this regard is “keep itsimple and let <strong>the</strong> teams decide.”Indeed, <strong>for</strong> <strong>the</strong> ideal team <strong>of</strong> less than ten co-located persons, <strong>the</strong> prime project management artifacts usedto plan <strong>the</strong> Sprint and communicate status <strong>of</strong> individual features, tasks and team progress can <strong>of</strong>ten bemanaged using a spreadsheet developed and maintained by <strong>the</strong> <strong>Scrum</strong>Master. The engineering artifacts <strong>for</strong>requirements, test cases and defects may be equally lightweight and written on index cards, whiteboards ormaintained on a team wiki.People and CommunicationHowever, scaling <strong>Scrum</strong> practices to distributed teams, and teams <strong>of</strong> teams, presentsScaling <strong>Scrum</strong> special communication challenges. Cross-team coordination <strong>of</strong> how to implementpresents specialshared requirements, track feature status and identify blocking issues becomes atooling challengesprimary concern. In <strong>the</strong>se cases “a mechanism <strong>for</strong> frequently synchronizing <strong>the</strong>ir workmust be devised and implemented. Also, a more detailed product and technicalarchitecture must be constructed so <strong>the</strong> work can be cleanly divided across teams.” (Schwaber 2004)While traditional project management tools may have worked <strong>for</strong> showing idealized task start/stop dates andper<strong>for</strong>ming - perhaps fruitless - critical path analysis on long waterfall projects, <strong>the</strong>se plan-driven activitieslose <strong>the</strong>ir relevance when working in short iterations where <strong>the</strong> entire team focuses on driving <strong>the</strong> fewhighest priority features to acceptance. Instead <strong>of</strong> one person maintaining a separate task database that isdecoupled from <strong>the</strong> day-to-day artifacts <strong>the</strong> team is actually planning and implementing (e.g. user stories andtests), larger programs need a real-time collaboration environment that supports <strong>the</strong> natural signalingoccurring among team members as <strong>the</strong>y advance a feature from <strong>the</strong> Product Backlog into development,testing and integration. To emulate <strong>the</strong> co-located team, this agile project management environment must leteveryone quickly see and update where a feature is in its lifecycle, how much ef<strong>for</strong>t remains be<strong>for</strong>e itscompletion and what specific issues are blocking its progress.Besides needing new ways to plan and track our iterations, <strong>the</strong> capabilities <strong>of</strong> tools applied to defining,organizing and sharing our system artifacts have new demands as well. Managing requirements, <strong>the</strong>iracceptance tests and defects calls <strong>for</strong> support that is horizontal across <strong>the</strong> lifecycle activities inside a Sprint,not vertical with deep silos <strong>of</strong> artifact in<strong>for</strong>mation that are poorly related to <strong>the</strong> commitments <strong>the</strong> teams havemade. In fact, with rapid iterations, it is really <strong>the</strong> relationships between <strong>the</strong>se artifacts that are <strong>the</strong> primaryconcern to <strong>the</strong> teams. After all, each Sprint is producing many pieces <strong>of</strong> working, tested code, so <strong>the</strong> teamsmust understand exactly how <strong>the</strong>se engineering artifacts relate to each o<strong>the</strong>r and be able to see <strong>the</strong>ir statusat every point in time.© 2005 <strong>Rally</strong> S<strong>of</strong>tware Development Corp., Ken Schwaber and <strong>Scrum</strong>Alliance 19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!