Organizational agility has become a necessity in today's workplace and it has been fueled by the accelerating pace of business, digital disruption and most recently the pandemic. In fact, the companies that have fared the best during the pandemic are those that have been able to pivot quickly, which is a hallmark of being agile.
Software groups started adopting Agile software development practices about 20 years ago, though not all teams are the same flavor of Agile. For example, different Agile methodologies include Scrum and Extreme Programming, and the composition of the team may vary. Some agile teams are operating in a hybrid Waterfall-Agile fashion while others have embraced DevOps, DevSecOps or Continuous Integration/Continuous Delivery (CI/CD).
Some of the traits shared by the various agile teams include the following:
- working as a cross-functional agile team;
- breaking projects into smaller pieces to increase quality and velocity;
- ownership and the responsibility that goes with it;
- frequent communication and collaboration; and
- an ethos of continuous improvement.
Those very concepts are spreading out across organizations to make businesses, operating units and processes nimbler.
Here are four agile team best practices to help business leaders create more effective teams within their organizations today.
1. Adopt an agile mindset
Agile development is often considered a methodology or set of methodologies that can accelerate outcomes. For developers, this means building and releasing software faster. At the business level it means creating a more fluid organization that's capable of responding to change more quickly.
Jeff Gallimore, chief technology and innovation officer and co-founder of Excella, an IT service management company, observed that companies tend to approach becoming agile in two different ways. One group approaches it as a methodology that focuses on process, a set of ceremonies or events -- such as standup meetings -- and frameworks. The other group views it as a mindset or a set of principles or values that shapes the way they work. The latter group tends to get better results.
For one thing, tools, processes and ways of working are all subject to change. While they all help facilitate a more agile organization, what may be missing is a vision and purpose. And getting too closely aligned with any tools or processes eventually results in process constraints, because what works best today may not work best tomorrow.
When agile concepts are adopted as a mindset, the details underneath it can change as necessary. This agile team best practice is a constant, iterative way of working that requires solid leadership and change management within the teams.
"Leadership support and proper change management are critical since the resistance to the new working model by some stakeholders will ultimately lead to inefficiencies with the [Agile] teams, which defies the very goal of Agile," said Susanne Turnbo, a managing director at management consulting company Sendero.
2. Adapt leadership styles
Agile teams are cross-functional and matrixed, so the traditional command-and-control style of management just won't work.
"Managers tell people what to do and how to do it. This kills creativity and innovation," said Alan Zucker, founding principal at Project Management Essentials, which provides training and advisory services in project management, Agile transformation and leadership. "For a team to become agile, the manager needs to shift from their traditional rule to being a servant leader. Like a good teacher who leads the student to an answer, an agile manager helps the team explore options, make decisions and continuously improve."
3. Have the right people on a team
There is no one team format that will suit all situations, therefore the desired outcome should drive the team's composition. For example, an Agile software team's goal is to deliver higher quality software faster -- to do that, they must consider what's keeping software from getting out the door as soon as desired, which means the team cannot only include developers. The team may also include a Scrum Master, UX/UI designer, tester or QA engineer, operations professional, product owner and perhaps a business analyst or full stack developer. If it's a data-oriented product, the team may need a data engineer, data analyst or data scientist. Security should also be considered.
However, the team should remain small, regardless of who's on it.
"Seven to 10 is ideal. It could be a little larger or smaller, but not much either way," said Gallimore. "In terms of roles, it really depends on the kind of thing you're trying to build."
It may be that some roles are not needed full-time and can be a shared resource.
4. Start small and grow
Two common mistakes companies make when attempting to become more agile is to attempt a "big bang" approach in which teams are working in a Waterfall fashion one day and agile the next.
"Traditional organizations spend years becoming agile. As they progress, they learn another important principle: Agile is not a destination but a journey," Zucker said. "Vibrant Agile organizations are continually adapting the way they work."
Adaptation can be seen in the progression of software teams as they mature from Agile to DevOps to CI/CD. However, a challenge in expanding Agile software development is that what works for one team may not work for others.
Today, the concept of agile teams is expanding beyond software development to the business at large. In fact, DevOps is the basis for an entire array of "Ops" functions including BizOps, MarketingOps, AIOps, MLOps and DataOps, to name a few.
BizOps is worth mentioning here because in this context, an agile team owns a "value stream" -- or product -- throughout its lifecycle. Unlike DevOps teams, which focus on software development and delivery, BizOps ensures that software development aligns with business objectives.
Both types of teams use metrics to evaluate whether they're meeting their goals. For example, DevOps metrics may include items like release velocity and error rates, whereas BizOps metrics may include operational efficiency or customer satisfaction.
"First and foremost, agile teams must stay close to their customer and understand the business goals and [how to solve] core problems," said Aníbal Abarca, CTO at global product development company Wizeline. "That requires entrusting the team to iterate and design a product that will add value, rather that providing specific requirements and guidelines."
Since almost every company is a software company today, they're creating products that should be advancing the organization's overall business goals. Not surprisingly, the Agile development concept of iteration has facilitated the switch from painstakingly planned products to minimally viable products, which are enhanced over time.
"Teams should have a clear goal and they should be organized around a real customer value stream, not on a certain technology area such as a back-end team or a mobile team," said Janetta Ekholm, head of ways of working and Agile coach at digital innovation and engineering company Futurice.