Skip to main content

Introduction

"Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments toward organizational objectives. It is the fuel that allows common people to attain uncommon results." - Andrew Carnegie (American Industrialist)
We frequently find we refine the program and team structures after the organization starts scaling its agile practices. We want a team to be a group of people working toward a common objective; they are working to deliver value to their customers and should ideally be organized so the team can deliver value by itself, regardless of the context of the teams.

Decisions to make

  • Decide which agile/scrum/kanban teams will be included in the program
  • Find the source-of-truth (e.g. Jira Board IDs) for team-level work (i.e. stories, bugs) for each team in order to build plans to make their work visible
  • Decide how much standardization of the team practices and workflows will be needed to effectively govern the program

Context

  • Sometimes Jira Align is integrated with another team tool (Jira, ADO, etc.), so we need to be able to attribute the work in that team tool to one of the teams in Align
  • Sometimes the team hierarchy is different from the reporting hierarchy
    • The team focuses on the people who work together to deliver solutions
    • The reporting hierarchy is also valuable and is represented in the Organization Structure within Jira Align
  • Sometimes we find that teams also have their own features (aka Jira Epics) that they’re tracking and reporting to; we need to connect those features to the program level

Why we care

  • Teams should be organized around delivering value regardless of where they report to in the organization
  • If teams are shared across multiple programs, we may want to configure for organization structure reporting
  • The team should decide what work it is going to do; only people who are assigned to the team can add work or rearrange the team’s backlog
  • Each team should have a designated product owner who is responsible for managing that team’s backlog of work, and only the product owner can rearrange the sprint plan once the sprint is underway
  • Ideally, teams are self-contained and have all the people needed to define, develop, and test stories within a sprint
  • If work is split between a ‘development team’ and a ‘testing team’, there can be unnecessary delays in the lifecycle and extra coordination required across teams
  • We assume teams are responsible for delivery of working stories and that the teams have a consistent way of writing stories

The Atlassian view

  • Teams working together as a program may give up some individual team efficiency to help ensure the larger program can operate at its highest level (e.g. systems thinking)
  • Kanban teams require a different setup than scrum teams; scrum teams have a regular sprint cadence whereas kanban teams do not require sprints
  • Tools that provide program visibility (e.g. Jira Align) focus on providing rolled up views of data across a program or team-of-teams; having disconnected teams decreases the benefit
  • We want to make sure dependencies can be tracked across all teams responsible for coordinating software delivery — we don’t track dependencies within teams, we do track dependencies across teams
  • Atlassian products provide tools for scrum masters and agile coaches to track the performance of the team and identify ways to improve the efficiency of the team
  • We want to make sure all the teams involved in delivering software are included in in the program tool (e.g. Jira Align) because including only part of the teams in a program can cause double work for certain roles and reduce visibility
  • Stories are estimated in story points; teams will coalesce around common guidelines after a few successful iterations
  • Shared services teams should be set up as separate teams and combined together in a separate program with representatives from the program included in the planning sessions of other programs

Next step:

Discovery

Was this content helpful?

Connect, share, or get additional help

Atlassian Community