scaling kanban in the enterprise with greenhopper

43

Upload: david-jellison

Post on 31-Aug-2014

3.998 views

Category:

Technology


1 download

DESCRIPTION

Presentation delivered @Atlassian Summit 2012. Balancing the coordination of many Agile product delivery teams on the same major release cycle -- and still allowing these teams to self-organise -- is a craft Agile Enterprises must master. JIRA, GreenHopper and Confluence provide a rich platform that accommodates cross team co-ordination and the flexibility required for teams to self-organise. In this talk, David will walk the audience through the process of breaking down a Kanban value chain into steps and transitions, mapping out compatible workflows, and building the combined board. David will also share details of how Constant Contact provides visibility into the progress of teams and the release cycle. Constant Contact was able to deliver 15% more often in 2011 than prior years by refining their Agile practices.

TRANSCRIPT

Page 1: Scaling Kanban in the Enterprise with GreenHopper
Page 2: Scaling Kanban in the Enterprise with GreenHopper

Scaling Kanban in the Enterprise with Jira/Greenhopper

David Jellison

combining multiple work items and spanning agile teams with a common delivery schedule

Director, Quality EngineeringConstant Contact, [email protected]

Page 3: Scaling Kanban in the Enterprise with GreenHopper

• “Engagement Marketing” company with a suite of SaaS applications, serving over 500,000 customers.

• Employs ~1000 people, with ~300 in Engineering & Operations, covering 4 locations.

• Has ~20 agile product delivery teams 8-12 people per team, and a ~3:1 ratio (Dev:QE).

• Scrum major release cycles, Kanban software development practices, and TDD in new teams

Page 4: Scaling Kanban in the Enterprise with GreenHopper

Our Needs

• Sprints were feeling like mini-waterfalls

• Too many systems (project, defect, requests)

• Impediments and bottlenecks persisting to next sprint

Page 5: Scaling Kanban in the Enterprise with GreenHopper

Game Plan

• Kanban key ideas

• Agile enterprise

• Jira/Greenhopper solution

• Breaking down the Kanban value chain into workflow steps and transitions

• Applying to Jira/Greenhopper

• Program Management role

Page 6: Scaling Kanban in the Enterprise with GreenHopper

Why Kanban?

• Football 3 yards at a time => far better odds

1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3

Rush 3 yards at a time

Hail Mary Pass

Page 7: Scaling Kanban in the Enterprise with GreenHopper

Kanban Key Ideas

• Pull work from queue, based on capacity constraint• Streamline completing work (bottleneck visibility)• SLA (service level agreement) classes of service

• Card• Card

Unscheduled Backlog

• Card• Card

Scheduled Backlog • Card

• CardWIP

• CardQueue

• Card• Card

WIP

• Card• Card

Done

WIP Limit WIP Limit

Page 8: Scaling Kanban in the Enterprise with GreenHopper

Agile Enterprise

• Balancing self-organizing agile teams with enterprise governance

Page 9: Scaling Kanban in the Enterprise with GreenHopper

Agile Enterprise Challenges

• Prescriptive structure• Managing work dependencies across teams• Measuring progress and readiness to deploy

team team team teamRISK

Page 10: Scaling Kanban in the Enterprise with GreenHopper

Product Roadmap & PrioritiesRelease 1

Release 2

Release 3

Priority 1Priority 2Priority 3

Page 11: Scaling Kanban in the Enterprise with GreenHopper

Kanban Task Board

Page 12: Scaling Kanban in the Enterprise with GreenHopper

Electronic Dashboard Needs

• Represent value chain per team

• Combine different types of work

• Share across teams

• Common structure

• Extensible with plug-ins

• Aggregate visibility

Page 13: Scaling Kanban in the Enterprise with GreenHopper

Greenhopper Task Board

• Mimics the physical board

Page 14: Scaling Kanban in the Enterprise with GreenHopper

Enterprise Steps

1. Declare common defect workflows

2. Suggest common card workflows

3. Declare shared statuses (must appear in each project workflow)

4. Declare constraints (e.g. all Defects have a priority)

Page 15: Scaling Kanban in the Enterprise with GreenHopper

Key Statuses• ToDo / User Story

• Create event

• Project backlog (scheduled)

• Start throughput

• In Development• Start cycle time

• Closed• Close event

• Ends cycle time, throughput

ToDo / User Story

In DevelopmentClosed

Throughput

Cycle Time

Page 16: Scaling Kanban in the Enterprise with GreenHopper

Defect Resolution Field

• Jira system field

• Required when visible *

• Resolved event

• Configurable values

Page 17: Scaling Kanban in the Enterprise with GreenHopper

Defect Workflow

Each of these statuses become shared set

Page 18: Scaling Kanban in the Enterprise with GreenHopper

Defect Workflow

Resolution Set

ResolutionCleared

Use post functions in transitions to set and clear Resolution field

Page 19: Scaling Kanban in the Enterprise with GreenHopper

Defect WorkflowsToDo / User Story

In Development

Ready for TestIn Test

Closed

_Defect Workflow Steps 1ToDo / User Story

Ready for DevIn Development

Ready for TestIn Test

Closed

_Defect Workflow Steps 2ToDo / User Story

Ready for DevIn Development

Ready for TestIn TestTest Done

Closed

_Defect Workflow Steps 3

Page 20: Scaling Kanban in the Enterprise with GreenHopper

DefectWorkflow• Linked Status

key fields

• Step Name alias

• Transitions as allowed actions

Page 21: Scaling Kanban in the Enterprise with GreenHopper

Apply Workflows

• Assign to issue types in a workflow scheme

Page 22: Scaling Kanban in the Enterprise with GreenHopper

Transitions as Buttons

• Defect: Ready for Dev

• Defect: In Development

Clear Resolution: transition back to

itself & post function to clear field value

Page 23: Scaling Kanban in the Enterprise with GreenHopper

Applying Transition Constraints

• Exclude versions

Page 24: Scaling Kanban in the Enterprise with GreenHopper

Applying Transition Constraints

• Restrict patterns

Page 25: Scaling Kanban in the Enterprise with GreenHopper

Applying Transition Constraints

• Set Resolution

Page 26: Scaling Kanban in the Enterprise with GreenHopper

Team Steps

1. Diagram team value chain (tune ‘queue/work’ pattern)

2. Reduce steps when issue types and fields make more sense

3. Flow diagram (white board) key steps and transitions

4. Map shared statuses to steps in the flow diagram

5. Create new workflow(s) in Jira/Greenhopper

6. Transitions named as action taken (button labels)

7. Map step columns in Task Board and Rapid Board to statuses

Page 27: Scaling Kanban in the Enterprise with GreenHopper

ToDo / User Story

Ready for DevIn Development

Ready for TestIn TestTest Done

External DependencyUser AcceptanceClosed

Components• Marketplace• Community• Dev Website• Experts• BlogCustom Fields• Stakeholder• Stakeholder Review• Reject Reason• QA RequiredIssue Types• Dev Forward• WIP Defect• Defect• Subtask• Automated Test• Prod / Expedited• Programs / Promo

Feature StatusesFeature Workflow Steps

Page 28: Scaling Kanban in the Enterprise with GreenHopper

Statuses

• Match up the same steps in different workflows with common Statuses

ToDo / User Story

Ready for DevIn Development

Ready for TestIn TestTest Done

Closed

ToDo / User Story

Ready for DevIn Development

Ready for TestIn TestTest Done

External DependencyUser Acceptance

Closed

Feature Statuses Defect Statuses

Page 29: Scaling Kanban in the Enterprise with GreenHopper

Task Board Column Mapping

• Add column headings from whiteboard steps• Status selected from combined workflows list

Page 30: Scaling Kanban in the Enterprise with GreenHopper

Task Board Columns

• Steps and transitions match expectations

Page 31: Scaling Kanban in the Enterprise with GreenHopper

Rapid Board Column Mapping

Page 32: Scaling Kanban in the Enterprise with GreenHopper

Rapid Board Columns

Page 33: Scaling Kanban in the Enterprise with GreenHopper

Program Manager

• Scheduling and coordinating routine releases

• Gathering readiness and risk assessments from teams

• Leading deployment procedure

• Coordinating cross-functional meetings

• Leading post release point releases and hot fixes

• Coordinating continuous improvement exercises

• Metrics

• Coach Kanban & workflow design

Page 34: Scaling Kanban in the Enterprise with GreenHopper

Aggregating Issue Types

• Cross-project team search

Page 35: Scaling Kanban in the Enterprise with GreenHopper

Benefits: Consolidating Issues

• Issue tracking {Features, Defects, Requests}• One platform with multiple types

of work

• One board for team to see all work together

• Linking like things together

• Dependency management across teams

• Common roll-up of progress

• Metric aggregation

Page 36: Scaling Kanban in the Enterprise with GreenHopper

Cumulative Flow Diagram

Page 37: Scaling Kanban in the Enterprise with GreenHopper

Cycle Time (Control Chart)

Page 38: Scaling Kanban in the Enterprise with GreenHopper

Defect Dashboard

Page 39: Scaling Kanban in the Enterprise with GreenHopper

Defect Reduction

• Defects as failing tests or subtask WIP Defects

• If escaping, promote from WIP Defect to Defect issue type

• Track Escaping, no more than can count on 2 hands

Page 40: Scaling Kanban in the Enterprise with GreenHopper

• Migrated separate {Defects; Stories; Requests}=> Jira issues ranked in task board (team visibility)

• Tracking {WIP Defects; Escaping Defects} => defect debt reduction (cut defect backlog by ½)=> preventing defects (far less escaping)

• Cycle time (Start Dev <> Closed) => improved metrics drove cycle time reduction=> 15% more delivery per year

2011 Results

Page 41: Scaling Kanban in the Enterprise with GreenHopper

What we covered

• Kanban key ideas

• Agile enterprise

• Jira/Greenhopper solution

• Breaking down the Kanban value chain into workflow steps and transitions

• Applying to Jira/Greenhopper

• Program Management role

Page 42: Scaling Kanban in the Enterprise with GreenHopper

Thank you!

Page 43: Scaling Kanban in the Enterprise with GreenHopper

References

• Practical JIRA Administration, Using JIRA Effectively: Beyond the Documentation; Matt Doar, O’Reilly Media, May 2011

• Kanban football analogy, Gil Irizarry, Constant Contact, Inc.

• Agile Defect Prevention (WIP Defects)http://davidjellison.wordpress.com/2011/09/23/agile-defect-prevention