Focus on the agile team
With agile, it’s easy to talk about processes, ceremonies, and workflows, but it’s also easy to lose sight of the team. In general, agile teams are composed of five to seven developers. This small group of developers has overlapping, shared skill sets, making no single person the critical path or blocker. As the team works together, skill sets grow, knowledge is shared, and the team’s velocity increases working through the program backlog.
In this article, we’ll explore the dynamics of forming nimble agile teams, and how to configure Jira Software to support multiple teams. You’ll also learn additional tips on how to optimize work across a set of teams.
Change can be a good thing
Change is a constant reality. This is true for any business situation. In general, it’s best practice to keep agile teams together. The relationships formed and processes shared are highly valuable assets, and it’s usually much easier to change the work stream for an existing team then to form a brand new team. Sometimes, though, changes are so significant that it’s best to bring in new skill sets to accommodate that change.
So, when might a new agile team form? Integration projects often require skill sets from two very different code bases. For example, the developer tools integration in Jira Software requires developers from the Jira Software team, as well as developers from the developer tools team. Therefore, it makes good sense to bring knowledge of both code bases together and form a new team to tackle this work.
Configuring Jira Software to support sub teams
When dividing a large body of work across several sub teams, questions come up about how to structure the work inside of Jira Software. The biggest question: does each sub team need its own Jira Software project? If each team shares the same release cadence (Jira versions), then keep the work in one Jira Software project. For example, in the Jira Software team, we use a custom field called team to denote which team is taking on that issue.
If each team is using the same type of agile process and iteration cycle, also create one agile board for the entire program. Then, to subdivide work by team, quick filters or swimlanes can use the team custom field to organize work.
Quick filters
Quick filters are additive (think AND rather than OR) when used together. Selecting the team quick filter, then another quick filter, will focus the work for just that team. In the below image, see the top center for the selected team’s quick filter:
Swimlanes
Swimlanes structure work across the board, making it easy to see all of the work in context for each team. Keep in mind, though, for quick filters and swimlanes to work, each team needs to be on the same type of agile process.
In the image below, you can see the different team names in the left column (note that swimlanes collapse for easy readability):
Separate agile boards
For teams that have different agile processes but share the same release cadence, create an agile board for each team within the same project. Just customize the JQL query (in the image below, it’s shown in the bottom right) for each board within the project.
If the release cadence for each of the agile teams differs, consider creating a separate Jira Software project for each team. This gives each team its own version to manage the release of software.
So how are sub teams working for the Jira Software team?
The Jira Software team also formed a new agile team when two different parts of the product development team came together to form a large team of 20 people. Twenty people was too big for a single team, so we took some tips from Spotify’s engineering culture and built out six nimble squads to tackle the feature work ahead.
Learn how the Jira Software team divided the work stream across the six squads and what efficiencies the team gained in distributed development in a retrospective on the transformation.
Teams are central to an organization’s culture. Optimizing teams increases engagement, distributes work, manages risk across a program, and enables faster delivery using agile methodologies.