scaling agile - multiple team dynamics

25
Scaling Agile Multiple Team Dynamics

Upload: versionone

Post on 13-Jan-2015

4.085 views

Category:

Technology


4 download

DESCRIPTION

As more organizations begin to adopt agile on multiple, interdependent teams, how do we ensure that the success within a team can translate to success at the enterprise level? Presented by: Sanjiv Augustine, President of LitheSpeed

TRANSCRIPT

Page 1: Scaling Agile - Multiple Team Dynamics

Scaling Agile

Presented by Sanjiv Augustine

[email protected]

April 07, 2010

Multiple Team Dynamics

Page 2: Scaling Agile - Multiple Team Dynamics

• Basic Adoption Threshold

• Multiple Team Dynamicso Preparing for Multiple Team

Rollouto Adoption Managemento Team Managemento Program Management

• Q&A

2

Agenda

Small is Beautiful

“…for a large organization to work it must behave like a related group of small organizations.”- E. F. Schumacher, Small is Beautiful

Image source: http://practicalactionconsulting.org/?id=is_small_beautiful

;

Page 3: Scaling Agile - Multiple Team Dynamics

Basic Adoption Threshold

Page 4: Scaling Agile - Multiple Team Dynamics

Traditional Silos Customer BA Designer DeveloperPM

CoreTeam(EXAMPLE)

BA / Tester

BA

Tester

ProductOwner

Developer

Designer

Developer /BA

SM

ReleaseManager

CapacityPlanner

Prod.

Architect

TechOps

BusinessSponsor

RiskAssessor

Security

Dedicated, Integrated Scrum Team

4

BAAnalysts DeveloperDeveloperDeveloperDesigners Tester

The Core Project Team ideally consists of 5-9 dedicated members (7 +/- 2).

The Extended Team can contain many additional members, each playing an important role, but they are typically not dedicated to the effort.

TesterTestersDevs

Page 5: Scaling Agile - Multiple Team Dynamics

Sprint

“Ready” and “Done” Discipline

What must be in place at the beginning of the Sprint for your project team to have a productive Sprint?

What must be in place at the end of a Sprint to have a deployable product increment?

Ready In Process Done

5

Page 6: Scaling Agile - Multiple Team Dynamics

Agile Engineering Practices allow teams to move fast, be flexible and deliver high quality software:

• Automated Builds & Continuous Integration reduce time and effort associated with manual builds, and risk from big-bang integrations

• Simple Design & Refactoring keep incremental development from leading to poor architectures

• Multi-Level/Automated Testing & Test-Driven Development reduce testing time and effort and allow developers to make changes with confidence

• Pair Programming increases software quality without impacting time to deliver.

Agile Engineering Practices

Agile Engineering, Pg. 1246

Page 7: Scaling Agile - Multiple Team Dynamics

Multiple Team Dynamics

Page 8: Scaling Agile - Multiple Team Dynamics

Preparing for Multiple Team Rollout

Page 9: Scaling Agile - Multiple Team Dynamics

• Executive, senior and middle management must all be change agents• Business and IT must be willing to dedicate the appropriate resources

o Agile teams require more dedication from assigned resourceso Need an Agile Champion to lead the Agile programo Need to fund for experienced Agile process coacheso Need to fund for additional training and capability developmento Need to fund for Agile team rooms

• Process learning will consume some amount of project teams’ time and effort

• Changes to existing processes will be necessary: in particular, resource management and portfolio management

• The project manager and product manager roles will change significantly

Large Scale Adoption Implications

9

Some typical implications of large scale adoption:

Page 10: Scaling Agile - Multiple Team Dynamics

Adoption Management

Page 11: Scaling Agile - Multiple Team Dynamics

Incremental Rollout Strategy

Initial Pilots - Pilot Projects With Day-to-Day Oversight by Master Coach

Expanded Pilots - Projects Using combination of Experienced Associates and Trained Associates with Master Coach oversight across Multiple Projects

Enterprise Rollout - Autonomous agile capability using experienced and trained associates. Occasional master coach involvement on an as-needed consultative basis

11

Page 12: Scaling Agile - Multiple Team Dynamics

Your first projects need:• Product Owner involved,

accountable & empowered to control scope & schedule

• ScrumMaster empowered to control process

• Dedicated, integrated team• Executive support for

learning and exploration• Short term initial release timeline (< 3 months) • Potential for measurable business results and impact

12

Pilot Project Selection Criteria

Thanks to Mike Cohn for the image:http://blog.mountaingoatsoftware.com/four-attributes-of-the-ideal-pilot-project

Page 13: Scaling Agile - Multiple Team Dynamics

Collaborative Workspace Design

13

Capital One Workspace Design, Source: http://www.degw.com/project.aspx?id=14&p=Capital+One

Page 14: Scaling Agile - Multiple Team Dynamics

14

Create a defined and reliable process:• Standardize high-level process steps, deliverables,

tools and artifacts• Agree on process audit procedures• Develop standard process metrics

Process Standardization

The Six Sigma Paradox

To attain six sigma performance, we must minimize process variability, slack and

redundancy by building variability, slack and redundancy into our organizations.

Page 15: Scaling Agile - Multiple Team Dynamics

Team Management

Page 16: Scaling Agile - Multiple Team Dynamics

16

Conquer and divide by building a federation of agile teams:

• Build the “whole” into the “parts”

• Set a size limit ( e.g. 7 +/- 2 people)

• To grow, create new integrated Agile teams when team size limit is reached

• Coordinate among teams via an Agile PMO

Scaling Agile Teams

Page 17: Scaling Agile - Multiple Team Dynamics

Agile Engineering Practices allow teams to move fast, be flexible and deliver high quality software:

• Automated Builds & Continuous Integration reduce time and effort associated with manual builds, and risk from big-bang integrations

• Simple Design & Refactoring keep incremental development from leading to poor architectures

• Multi-Level/Automated Testing & Test-Driven Development reduce testing time and effort and allow developers to make changes with confidence

• Pair Programming increases software quality without impacting time to deliver.

Agile Engineering Practices

Agile Engineering, Pg. 12417

Page 18: Scaling Agile - Multiple Team Dynamics

Software Craftsmanship:• Replaces the notion of software development as

an engineering activity in favor of an older concept of a software studio with a skills progression from apprentice to journeyman to master craftsman

• Developers are expected to take on multiple roles and be responsible for a complete job from start to finish

• Proficiency is built across the spectrum of the core skills of programming: programming, testing, debugging, and maintenance

• Master craftsmen are journeymen who develop their mastery through learning and experience on many projects, and the nurturing of other developers

Software Craftsmanship

18

http://manifesto.softwarecraftsmanship.org/

Page 19: Scaling Agile - Multiple Team Dynamics

“Productivity” is not a mechanical measure of speed.

• Knowledge drives productivity; Knowledge workers need to own the responsibility for their own productivity

• Knowledge worker productivity is dependent on quality at least as much as quantity

• Optimal quality is the path to high productivity

19

From AllPosters.com

Team Productivity Management

Tips: Measure outcome, not output Measure only a few things Ensure commonly understood operational definition

and measurement plan Target specific questions and audiences

- Courtesy Robin Dymond and Deborah Hartmann

Page 20: Scaling Agile - Multiple Team Dynamics

Program Management

Page 21: Scaling Agile - Multiple Team Dynamics

• Encourage face-to-face dialogue across levels

• Create overlapping management with “linking pins”

• Run the Lean-Agile PMO as an Agile project teamSource: The Lean-Agile PMO, Sanjiv Augustine and Roland Cuellar (Cutter Consortium 2006)

21

Organizational Structure

Oscillating Between Information Discovery and

Integration

A centralized structure works well for discovery, because the

individual’s role is to find information and report it back. In contrast, a richly connected

network works best for integration and decision

making, because it allows the individual to hear everyone

else’s opinion about the expected return from each of

the alternatives.

- Alex Pentland, How Social Networks Network Best, Harvard Business Review,

February 2009

Page 22: Scaling Agile - Multiple Team Dynamics

Portfolio Alignment Wall

22

Page 23: Scaling Agile - Multiple Team Dynamics

• Terminate sick projects

• Split large projects in smaller ones

• Prioritize projects by business value, at least within business unit

• Limit development timeframe to months

• Re-prioritize projects regularly

1

Development

3 24

Little’s Law WIP Completion Rate

Portfolio Realignment

23

Business Goals & Strategy Production Sunset

Cycle Time =

Backlog

Page 24: Scaling Agile - Multiple Team Dynamics

• Multiple, stable teams each focused on a single project at a time

• Dedicated to platforms or lines of business

• Platform owner prioritizes next project

• Result:o Support multiple lines of business

simultaneouslyo Focused effort results in quick

delivery for individual projectso Clear accountability o Stability and predictability

Source: The Lean-Agile PMO, Sanjiv Augustine and Roland Cuellar (Cutter Consortium 2006)

24

Stable Platform Teams

Page 25: Scaling Agile - Multiple Team Dynamics

25

Contact Us for Further Information

Sanjiv [email protected]

Arlen BankstonExecutive Vice President

Roland CuellarVP, Enterprise Agile Consulting

David BulkinVP, Agile Coaching

On the Web:

http://www.lithespeed.com

http://www.sanjivaugustine.com

"I only wish I had read this book when I started my career in software product management, or even better yet, when I was given my first project to manage. In addition to providing an excellent handbook for managing with agile software development methodologies, Managing Agile Projects offers a guide to more effective project management in many business settings." John P. Barnes, former Vice President of Product Management at Emergis, Inc.