Scaling Kanban in the Enterprisewith Jira/Greenhoppercombining multiple work items and spanning agile teams with a common ...
• “Engagement Marketing” company with a suite of SaaS  applications, serving over 500,000 customers.• Employs ~1000 people...
Our Needs• Sprints were feeling like  mini-waterfalls• Too many systems (project,  defect, requests)• Impediments and  bot...
Game Plan• Kanban key ideas            • Applying to                                Jira/Greenhopper• Agile enterprise    ...
Why Kanban?• Football 3 yards at a time => far better odds                           Rush 3 yards at a time               ...
Kanban Key Ideas  • Pull work from queue, based on capacity constraint  • Streamline completing work (bottleneck visibilit...
Agile Enterprise• Balancing self-  organizing agile  teams with  enterprise  governance
Agile Enterprise Challenges• Prescriptive structure• Managing work dependencies across teams• Measuring progress and readi...
Product Roadmap & Priorities  Release 1                   Release 3              Release 2                 Priority 1     ...
Kanban Task Board
Electronic Dashboard Needs• Represent value chain per team• Combine different types of work• Share across teams• Common st...
Greenhopper Task Board• Mimics the physical board
Enterprise Steps1. Declare common defect workflows2. Suggest common card workflows3. Declare shared statuses (must appear ...
Key Statuses• ToDo / User Story  • Create event                                               ToDo /  • Project backlog (s...
Defect Resolution Field• Jira system field• Required when  visible *• Resolved event• Configurable values
Defect WorkflowEach of these statuses become shared set
Defect Workflow                                                                      Resolution                           ...
Defect Workflows_Defect Workflow Steps 1   _Defect Workflow Steps 2   _Defect Workflow Steps 3ToDo / User Story          T...
DefectWorkflow• Linked Status  key fields• Step Name  alias• Transitions as  allowed actions
Apply Workflows• Assign to issue types in a workflow scheme
Transitions as Buttons• Defect: Ready for Dev• Defect: In Development       Clear Resolution:    transition back to itself...
Applying Transition Constraints• Exclude versions
Applying Transition Constraints• Restrict patterns
Applying Transition Constraints• Set Resolution
Team Steps1. Diagram team value chain (tune „queue/work‟ pattern)2. Reduce steps when issue types and fields make more sen...
Feature Workflow Steps   Feature Statuses      Components                                               • Marketplace     ...
Feature Statuses      Defect StatusesStatuses               ToDo / User Story     ToDo / User Story                       ...
Task Board Column Mapping• Add column headings from whiteboard steps• Status selected from combined workflows list
Task Board Columns• Steps and transitions match expectations
Rapid Board Column Mapping
Rapid Board Columns
Program Manager• Scheduling and coordinating     • Leading post release point  routine releases                  releases ...
Aggregating Issue Types• Cross-project team search
Benefits: Consolidating Issues• Issue tracking {Features,         • Dependency management  Defects, Requests}             ...
Cumulative Flow Diagram
Cycle Time (Control Chart)
Defect Dashboard
Defect Reduction• Defects as failing tests or  subtask WIP Defects• If escaping, promote from  WIP Defect to Defect issue ...
2011 Results• Migrated separate {Defects; Stories; Requests}  => Jira issues ranked in task board (team visibility)• Track...
What we covered• Kanban key ideas            • Applying to                                Jira/Greenhopper• Agile enterpri...
Thank you!
References• Practical JIRA Administration, Using JIRA Effectively:  Beyond the Documentation; Matt Doar, O‟Reilly Media,  ...
Scaling Kanban in the Enterprise with GreenHopper
Upcoming SlideShare
Loading in...5
×

Scaling Kanban in the Enterprise with GreenHopper

3,864

Published on

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.

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,864
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
79
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • Moving the ball 3 yards at a time => far better oddsConsistency => predictability
  • Agile Manifesto culture across the enterpriseRelease cycles with uncertainty and managed riskAgile teams are self organizingPlanning details at the last responsible momentContinuous integration and regression testingContinuous feedback and improvementEnterprise governanceBusiness value priorities and obligationsAlignment to standards, practices, schedulesKPI metric collection and visibility
  • Provide the release schedule cadence and prioritized backlog, and teams can self-manage work within teams. Teams operate on their own, working towards a common schedule. The Program Manager leads the teams to prepare for release, assess overall risk, and provide a green light to update.
  • The enterprise has a roadmap and prioritized project list
  • The physical task board (whiteboard with taped grid & sticky notes)Columns with prioritized backlog & steps in developing and testing work items (smallest testable chunks)Work items represented by color coding (different class of service)Combining planned work, defects, and request tickets (footprints)Work In Process Limits (WIPL) constrains concurrent workPolicies document describes the working rules within the team
  • Represent the physical value chain board per teamCombine different types of work in the same task boardShare related work across teamsProvide structure to team organizationExtensible to integrate other toolsAllow for self-directed workAggregate visibility across the organizationProvide efficiencies in continuous improvement
  • Standardize on workflows and constraints for key issue types
  • Throughput: Time when an issue enters the assigned backlog until closedCycle Time: Time when work begins on the issue until closed
  • Integrate the Jira Resolution field values with the workflow.
  • Identify key statuses that are shared. Alternate key statuses can be defined if some teams are using them and some are not. Of those using the alternates, you want them to be the same.
  • Add all the transitions to move between statuses, including backwards only if your organizations allows for it.Add separate transitions for each Resolution valueRemove the Resolution value when moving a card upstream to where the Resolution is set or before.
  • Comparing alternate workflows with their optional statuses…
  • Basic Defect Workflow in Jira
  • Workflow schemes are a collection of workflows. Assign specific workflows for specific issue types, and default if you want to use a workflow for all other issue types.
  • In this case, we don’t want the team fixing defects in a backlog version.
  • In this case, we added aValidator to require only one Fix Version/s value for defects.
  • This is an example of setting the first value in the Resolution field during the transition.
  • The team should follow these steps to figuring out what will be placed on the task board in Jira and how the issues will move through the board.
  • Whiteboard the workflow in a flow diagram, identify matching statues, identify refinement of the board by using components, custom fields, and different issue types.
  • Validate that the statuses of each workflow of the project match up appropriately.
  • Build the task board.
  • This is what the task board looks like.
  • Build the Rapid Board.
  • This is what the Rapid Board looks like.
  • The Program Manager role is key to the enterprise success of managing cross-functionally and coordinating major releases.
  • Keeping on top of counts per issue type…
  • Scaling Kanban in the Enterprise with GreenHopper

    1. 1. Scaling Kanban in the Enterprisewith Jira/Greenhoppercombining multiple work items and spanning agile teams with a common delivery scheduleDavid JellisonDirector, Quality EngineeringConstant Contact, Inc.djellison@constantcontact.com
    2. 2. • “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
    3. 3. Our Needs• Sprints were feeling like mini-waterfalls• Too many systems (project, defect, requests)• Impediments and bottlenecks persisting to next sprint
    4. 4. Game Plan• Kanban key ideas • Applying to Jira/Greenhopper• Agile enterprise • Program Management role• Jira/Greenhopper solution• Breaking down the Kanban value chain into workflow steps and transitions
    5. 5. Why Kanban?• Football 3 yards at a time => far better odds Rush 3 yards at a time Hail Mary Pass
    6. 6. Kanban Key Ideas • Pull work from queue, based on capacity constraint • Streamline completing work (bottleneck visibility) • SLA (service level agreement) classes of service Scheduled Queue Done Backlog• Card • Card • Card• Card • Card • Card • Card • Card • Card Unscheduled • Card • Card WIP WIP Backlog WIP Limit WIP Limit
    7. 7. Agile Enterprise• Balancing self- organizing agile teams with enterprise governance
    8. 8. Agile Enterprise Challenges• Prescriptive structure• Managing work dependencies across teams• Measuring progress and readiness to deploy RISK team team team team
    9. 9. Product Roadmap & Priorities Release 1 Release 3 Release 2 Priority 1 Priority 2 Priority 3
    10. 10. Kanban Task Board
    11. 11. Electronic Dashboard Needs• Represent value chain per team• Combine different types of work• Share across teams• Common structure• Extensible with plug-ins• Aggregate visibility
    12. 12. Greenhopper Task Board• Mimics the physical board
    13. 13. Enterprise Steps1. Declare common defect workflows2. Suggest common card workflows3. Declare shared statuses (must appear in each project workflow)4. Declare constraints (e.g. all Defects have a priority)
    14. 14. Key Statuses• ToDo / User Story • Create event ToDo / • Project backlog (scheduled) User Story • Start throughput• In Development Throughput • Start cycle time In• Closed Cycle Time Development • Close event Closed • Ends cycle time, throughput
    15. 15. Defect Resolution Field• Jira system field• Required when visible *• Resolved event• Configurable values
    16. 16. Defect WorkflowEach of these statuses become shared set
    17. 17. Defect Workflow Resolution Set Resolution ClearedUse post functions in transitions to set and clear Resolution field
    18. 18. Defect Workflows_Defect Workflow Steps 1 _Defect Workflow Steps 2 _Defect Workflow Steps 3ToDo / User Story ToDo / User Story ToDo / User Story Ready for Dev Ready for DevIn Development In Development In DevelopmentReady for Test Ready for Test Ready for TestIn Test In Test In Test Test DoneClosed Closed Closed
    19. 19. DefectWorkflow• Linked Status key fields• Step Name alias• Transitions as allowed actions
    20. 20. Apply Workflows• Assign to issue types in a workflow scheme
    21. 21. Transitions as Buttons• Defect: Ready for Dev• Defect: In Development Clear Resolution: transition back to itself & post function to clear field value
    22. 22. Applying Transition Constraints• Exclude versions
    23. 23. Applying Transition Constraints• Restrict patterns
    24. 24. Applying Transition Constraints• Set Resolution
    25. 25. Team Steps1. Diagram team value chain (tune „queue/work‟ pattern)2. Reduce steps when issue types and fields make more sense3. Flow diagram (white board) key steps and transitions4. Map shared statuses to steps in the flow diagram5. Create new workflow(s) in Jira/Greenhopper6. Transitions named as action taken (button labels)7. Map step columns in Task Board and Rapid Board to statuses
    26. 26. Feature Workflow Steps Feature Statuses Components • Marketplace ToDo / User Story • Community • Dev Website Ready for Dev • Experts • Blog In Development Custom Fields • Stakeholder Ready for Test • Stakeholder Review • Reject Reason In Test • QA Required Test Done Issue Types • Dev Forward External Dependency • WIP Defect • Defect User Acceptance • Subtask • Automated Test Closed • Prod / Expedited • Programs / Promo
    27. 27. Feature Statuses Defect StatusesStatuses ToDo / User Story ToDo / User Story Ready for Dev Ready for Dev In Development In Development• Match up the same steps in different Ready for Test Ready for Test workflows with In Test In Test common Statuses Test Done Test Done External Dependency User Acceptance Closed Closed
    28. 28. Task Board Column Mapping• Add column headings from whiteboard steps• Status selected from combined workflows list
    29. 29. Task Board Columns• Steps and transitions match expectations
    30. 30. Rapid Board Column Mapping
    31. 31. Rapid Board Columns
    32. 32. Program Manager• Scheduling and coordinating • Leading post release point routine releases releases and hot fixes• Gathering readiness and risk • Coordinating continuous assessments from teams improvement exercises• Leading deployment procedure • Metrics• Coordinating cross-functional • Coach Kanban & workflow meetings design
    33. 33. Aggregating Issue Types• Cross-project team search
    34. 34. Benefits: Consolidating Issues• Issue tracking {Features, • Dependency management Defects, Requests} across teams • One platform with multiple types • Common roll-up of progress of work • Metric aggregation • One board for team to see all work together • Linking like things together
    35. 35. Cumulative Flow Diagram
    36. 36. Cycle Time (Control Chart)
    37. 37. Defect Dashboard
    38. 38. 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
    39. 39. 2011 Results• 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
    40. 40. What we covered• Kanban key ideas • Applying to Jira/Greenhopper• Agile enterprise • Program Management role• Jira/Greenhopper solution• Breaking down the Kanban value chain into workflow steps and transitions
    41. 41. Thank you!
    42. 42. 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
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×