Software businesses have seen a meteoric rise in the past decades. Safe to say that Bill Gates was right when he said “Software is the magic thing whose importance only goes up over time”.
Today the SaaS market is worth over $170 billions, recording 42% growth over the pandemic. This massive growth also led to the popularity of agile software development. Teams are constantly trying to figure out more efficient ways to develop software.
But how do you build an agile team? What are some metrics for agile teams? Keep reading to find out!
What is an agile team?
SAFe® defines agile teams as a group of 5-11 individuals. The purpose of this structure is to define, build, test and deploy solutions in small batches. Size does matter here: Bigger teams tend to have poorer quality of communication, agile organizations should aim for collections of small teams rather than a couple of big ones. This is also reflected in the way goals are defined for teams: agile squads divide their work into small, achievable milestones for rapid iteration.
Agile vs. Traditional
Traditional teams that adopt the waterfall approach use what we call the triangle structure: a clear hierarchical structure with a single leader at the top. This can often lead to office politics or rivalry between team members.
Agile teams, on the other hand, have a circular structure. Ownership and shot-calling responsibilities are distributed across the team and there is no hierarchical structure. Another notable difference is the classic approach usually sets goals quarterly, whereas agile organizations break the work up into smaller chunks.
Agile vs. Scrum
It is important to understand that Agile is a philosophy, whereas Scrum is a framework. Scrum is a specific way of implementing agile practices into your team. Most notably, agile teams are formed from cross-functional teams, whereas Scrum teams have specific roles such as Scrum Master and PO. It’s also worth mentioning there are many other agile methodologies besides Scrum, and each have their own working ways.
Agile squad: How do you form an agile team?
According to Adobe Workfront, there are 7 traits you should be looking for when forming an agile team.
T-shaped professionals have a basic high-level understanding of the project in various aspects. In addition, they have deep expertise on one specific topic.
Cross-functional team members are known for their skill set outside of their traditional areas: These are usually skills that would require external resources. The logic is pretty simple: The less dependent you are on external resources, the faster you get stuff done.
Agile team members are versatile. They work on a multitude of topics and this requires them to adapt to changing needs and workflows. An adaptable team member shows little to no change in output even when they switch topics/functions.
Agile teams are all about continuous improvement. This often stems from the curiosity of the members. Asking the right questions to incrementally improve your output is crucial for every agile organization.
In agile teams, the small team is the sole owner of the initiative. This means they should treat every project as a new venture. A classic approach would have team members follow orders. In contrast, agile team members should take an entrepreneurial standpoint and go the extra mile: Think outside the box and own the outcomes.
Agile teams are based on team achievements, not personal merit. All team members should be contributing to the project.
**“A team that depends on regular heroic actions to make its deadlines is not working the way it’s supposed to work.”
-** Jeff Sutherland, co-creator of Scrum
Committed to excellence
The ultimate purpose of agile methodologies is to produce better results in an efficient way. Agile teams must be committed to delivering the best results they can. Speed doesn’t help when all you’re producing is average output.
Agile management: how to organize and manage agile teams?
There are a few common roles in most agile teams. Even though each team has its unique dynamics, there are a few common things we can see in every agile team:
Shot-caller of the team. The person that is responsible for defining the business value and therefore the person who steers product direction. According to Atlassian’s Make, Sell, Operate framework, the person that is in the middle of everything.
People who possess some or most of the traits we have discussed above. Their job titles can differ greatly depending on the purpose of the project, but they are usually programmers, testers and designers.
Some example team structures from Adobe:
The person in the team that is responsible for the facilitation of all processes (standups, retrospectives, review sessions, etc.). Their sole purpose is to make sure the agile methodologies stay intact as the team continues to work.
They are external to the team but have either an interest or knowledge regarding the project.
It is important that agile teams have independence from other teams, and especially the PO/PM and the Master have the capacity and flexibility to do their work. Transitioning from a classic approach to an agile team might be tough: It is important to collect feedback from team members and find a unique balance that works for your team.
We have already discussed what to look for when hiring. It is crucial to keep standards high if you want to build a high-performing team. In retrospect, it is also important to know when to call quits: If your transition from a classic approach to agile is negatively affecting an employee -or even worse, the employee is affecting the team negatively- then you should seriously consider parting ways. In the end, it might prove to be better for both parties.
Agile metrics: how to measure the success of agile teams
An important factor to take into consideration here is team capacity. Atlassian defines team capacity as “the ratio of units of work that a team takes on measured against the maximum units of work that a team can get through in that period of time.”
To measure team capacity, we need to first compute what is called the Focus Factor:
Focus Factor = Story Points / Team Members * Available hours
Then we can estimate the team capacity as such:
Team Capacity = Focus Factor * (Team Members * Hours * Days)
It is important to keep track of this metric and question immediately if there is a drop. A team health check could be very useful in this case.
Some other metrics suggested by Agile Alliance are:
- On-time delivery that can be tracked by the Sprint Burndown Chart
- Completed Story Points
- Customer Satisfaction
- Business Value
- Product Scope
To sum up, you should keep track of three things in general: Your team, your speed and the quality of output.
Agile teams take a lot of effort to form. There is also a lot involved in managing them, but they are proven to be well worth the time over the long run.
Start your agile transformation today by learning more about the core principles and applying what makes sense to your own workflows. Iterate quickly (as an agile team would 🙂) and find what works best for you. In the end there is no magic formula!