Learn about how teams can use agile to work collaboratively and in harmony using agile communication practices and visualisation tools.
Agile is a collaborative methodology and empowers the team to identify, organise and manage the workload. Agile allows a team to take control and accountability for the work they deliver. The method provides a shared structure, language and platform for open communication and encourages reflection, learning and improvement as a team.
High-performing teams are a result of people working well together and harnessing the combined potential, so that they can achieve far higher performance and improved outcome than if they all worked as individuals. Agile provides a tool to help teams find the best structure and rhythm to deliver value as effectively and efficiently as possible.
A high-performing agile team is:
An agile manager accepts that their team has the skills, knowledge and expertise to make decisions and create the best solution, based on the goal and objectives they are given. If properly implemented, the agile approach provides capacity for training and resources to support the creation of highly effective and productive teams.
A good team structure is important to support the development of a team that is able to perform optimally. This includes its ability to communicate effectively, work together collaboratively and and deliver work efficiently.
Agile is all about keeping things small, simple and actionable, even when scaled up for larger solutions and teams. It does this by breaking down a large scope of work into smaller packages of achievable chunks of work. Concepts such as the minimum viable product (MVP) are used to develop early solutions and deliver value early with a small amount of resources, and then scale up to expand and refine solutions as needed.
Small agile teams of 4–12 members are able to work on specific chunks of work, allowing them to focus and achieve optimum performance by maintaining a size where good communication and collaboration is still practical between members. Agile teams can maintain strong communication channels using roadmaps and pipelines to connect them, optimising flow and consistency.
Within a team it is important to have clear roles and responsibilities so that each member is clear on what is expected from them and when. Team leaders and managers must balance skills and preferences to ensure that all work is completed.
Since agile empowers individuals to select their tasks from the defined batch of work and are encouraged to work with and support the wider team, members begin to shift their preferences towards particular tasks they are good at and enjoy.
The way that teams and their roles and responsibilities are formed can change as an agile team develops and members find their optimal positions. Agile teams are more goal-driven and project-orientated, formed from existing skills teams (for example, marketing and production). Members from across the business specialise by forming virtual cross-functional teams that contain a mixture of skills to work on a particular problem or segment of the business. Agile helps to facilitate teams that bring the right people together for the right projects.
In software there is a form of agile team, which is known as a scrum (developed by Jeff Sutherland and others in the 1990s as a software development approach). In a scrum team there is typically a team leader known as the ‘scrum master’, a product owner that is ideally the customer, and a number of multi-discipline team members.
The team leader, or scrum master, is responsible for facilitating the team and its members. They ensure that sprint planning, stand-ups and retrospectives are scheduled and held. The team leader is responsible for generating and sharing performance and feedback metrics for review in team meetings and for sharing with wider stakeholders. A team leader ensures that resources are available to the team as needed and is responsible for dealing with blocks or problems. The team leader also ensures that new work is channelled to the team via the inbox rather than ad hoc, and that discussions are held routinely to review and build in these requests as appropriate.
The product owner is a person that represents the users and customers of the work that the team delivers. The product owner is engaged actively with the team, testing and reviewing the value and fit of the solution being developed. The role of the product owner is to provide the team with a direct link to the customer/user perspective and to help identify needs and formulate solutions. The product owner contributes through providing the customer perspective and voice at planning sessions and feedback at retrospective meetings.
The agile team board is a mutual space for the team to share and communicate work to do and work in progress, as well as review the outcome of completed work. The board helps to manage the capacity of the team and manage how the team receives new work.
When an agile dashboard is introduced and work in progress is captured and tracked, it enables the members to gain a snapshot of their work immediately: it gives sight of the mix of their work, and allows them to gain a perspective on the rate of work achieved and the team’s wider activities. This information can provide team performance metrics that can be analysed to uncover the strengths and weaknesses of performance and the validity and effectiveness of current processes and systems.
Shared and dependent work is captured on the board. By being aware of others’ workloads and their dependencies, a team can plan sprints to deliver work on demand as it is needed by others. Using estimation and planning games, the team can find a volume and order of work that allows everyone to perform and deliver as effectively as possible.
Individual team members can distinguish themselves in a couple of ways to show what they are working on.
Avatars, a picture to represent a person, can be used as markers to show work in progress. Swim lanes (rows showing multiple workflows across the board) can be used to represent different people or types of work, if the team find this easier initially to visualise their workloads. Over time, a team usually will remove these swim lanes in favour of avatars and keys. As they begin to work more as a team rather than individuals, work is tailored with colours, shapes or labelling to differentiate board components.
A good way to introduce an agile dashboard is for a particular scope of work or project that the group is working on as a type of pilot. This allows the team to take a minimum viable change approach (see Section 16) that gives the opportunity to test the method on a component of work that may be low risk and convenient.
The agile dashboard structure is an effective way for teams to manage tasks or activities (see Figure 17.3). This is particularly useful if the team is working on specific projects or is responsible for producing a specific product or solution that has a number of shared or dependent activities or purposes.
Agile dashboards can use the ‘inbox’ and ‘done’ boxes as a flag for the activity to be received by the team or passed on to another team. For example, if the work needs to be recorded onto a time-recording system for client billing, an administrator may take the completed cards and use the actual recorded time and put this into the system. Introducing a method of recording time that also provides valuable performance metrics back to the team can help to improve the recording of time, which can ensure that appropriate resources are made available and can support an increase in revenue if time spent is chargeable to clients.
Teams can choose work to do from the defined activities in that sprint of work. This means that team members can choose in which order they do their activities, both individually and as part of the team. If we find we are good at something, generally we tend to enjoy doing it. Some of us like a constant challenge, while others enjoy routine. Allowing teams to choose who and when the work is delivered encourages the team to work together and help each other to achieve. Using agile to identify where individuals are strong performers and where they enjoy working means that they can be utilised most effectively in the team: it means that there is less friction and greater acceptance when delegating and assigning tasks.
Since an agile team works closely together, if one area of work gets blocked or too big, team members can swarm around the problem to help alleviate the bottleneck and ensure that the flow of the team’s output is maintained.
There is an approach in software development called mob programming (a team working practice developed as a practice within Extreme Programming software development teams, see Woody Zuill: http://mobprogramming.org), where the team gather around one computer to solve a specific problem or undertake a complex activity. Only one person can work at the computer at a time. The team members take turns in that position, while the other members of the team support that person, advising them on what to write, finding information out to assist them and providing feedback on their work.
Another common method used in software development is pair programming (a common practice within Extreme Programming software development teams), where two people work together on one computer to write software. One person will work on the computer while the other dictates, advises or provides research support. This method works on the theory that two heads are better than one in solving a problem. The pairing of people to work together also promotes knowledge sharing, peer learning and review.
While in some cases, boards do evoke a degree of competition – in terms of moving tasks across the board – once the initial novelty subsides and awareness is raised about how each team member is dependent on the other, this begins to cultivate a movement towards collaboration where each realises the benefit to them if their teammates are also performing well.
In some circumstances, agile should come with a warning label, as this method literally does put the writing on the wall. In other words, it gives your work a high level of transparency. It will show visually your strengths and weaknesses, it will show up bottlenecks and problems with existing processes, it will show high and low performance, it will uncover friction and blocks.
Agile raises awareness and there is nowhere to hide, combining this visibility with a toolset that enables learning and improvement. Unfortunately, it can reveal issues in a team but, in the majority of cases, it is an enlightening experience for a team, as they use agile to identify and implement opportunities for improvement, embrace the opportunity to work more closely together and begin to see and implement improvements.
Agile approaches provide individuals with a much higher level of insight and self-awareness of their own work, and their performance against others in the team. This new level of self-awareness can stir up emotions either positively or negatively, which can affect behaviour and attitude significantly. Agile is a great tool for developing self-awareness of how we prefer to work, the highs and lows and how external and internal forces – whether professional or personal – affect our work and also our behaviour.
Agile is a self-management tool that provides methods for supporting the management and delivery of work. The process of reflection allows each individual to review and learn from previous actions and how they affect the environment in which they work. This time allows each team member to reflect upon their own performance, and establish how they wish to perform in the future and what changes are needed next time.
Using agile provides teams with an opportunity to achieve a higher level of social awareness. Through interaction and awareness of the work that others do, members get to know more about the people they work with, such as each member’s strengths and weaknesses, their preferences, habits and the way they like to work. By using this knowledge, the team can form better working relationships, which help to streamline and improve performance.
Agile working highlights the dependencies and relationships within the team and raises awareness of the impact of these. The team become better aware of the internal and external behaviours and actions that affect the rhythm and morale of the team, and use agile to identify these and manage them better. The team develop an understanding of how best to communicate and manage relationships in a positive and considerate way.
Forecasting and reflection are powerful agile tools and help to manage awareness and respond in a way that is positive for the team and all of its members.
Together, these four insights represent our emotional intelligence and form four key skills that allow us to understand ourselves better and how to improve our work with others (see Figure 26.1). Our emotional intelligence can be developed through gaining a better awareness and understanding of our own and our colleagues’ beliefs, values and behaviour and how personal dynamics and preferences impact upon performance and working relationships.
Figure 26.1 Emotional intelligence skills model
Source: Bradberry (2005)
It is important to establish board etiquette with a team. Clarity over the rules and expectations helps a team to develop a working relationship: for example, who can move what/where on the board. Generally, only the task owner can move their task(s).
Receiving work requests ad hoc can be very distracting, interrupting work in progress, which can cause delays. If new work is being received constantly, a team can end up starting projects but not finishing them before moving onto the next new work.
Inbound work should be placed in the inbox for review at the next stand-up or sprint planning meeting, rather than simply placed straight into to do. The reason for this control is that the work in the current sprint is fixed and at full capacity so, in order to allocate time/resources to this task in the current sprint, either something must be taken out, or the task estimated and assigned to the slack time available during the sprint.
Agile particularly works to control how new work is received and provides a channel that can be managed and reviewed regularly.
In order to be open and trusting, a degree of confidentiality and mutual respect needs to be established and shared with the team so that these rules are clear and can be adhered to.
The team can learn from the metrics on performance, such as volume, velocity and burn down rates to identifying why performance is not as expected, and look to make wider improvements: for example, improving skills through training, making changes to processes or adjusting future estimations to take account of the differences as needed.
Situations where work is being held up or slowed down can be reviewed to identify where improvements can be made, and the level of forecast work versus capacity can be measured and adjusted if needed to meet demand or manage expectations.
The team also can see the work that does not get done and identify why this is the case. It could be that a suitable solution has been delivered with fewer resources; that there is a block or problem; that there is work the team does not particularly like doing; a skills gap, or there is just too much work and some things keep lapsing continuously.
There are a number of ratios that can be identified to see the variation of work that is being achieved. The team also can identify how much of the work is predictable, and how much work is unplanned and unexpected. If a team can predict that on average, 30 per cent of work is unplanned, then slack can be built into sprints to allow for this work.
Wherever there is change there is likely to be resistance. While early adopters will be proactive and engaged, later adopters often will come up with excuses and reasons why agile will not work for them, especially when it is first introduced.
Some of us already have a good handle on what we are doing and when. We are comfortable and happy, and we do not see the point in adopting what appears to be a personal work management tool when we already have everything under control.
But does everyone else you work with know? When we work as part of a team or do something that impacts on another, then it is not just about us. Agile is a way to communicate and share. By working more closely with others and sharing our work, a team can work to improve their performance collectively.
All the more need for agility then, surely? Yes, true, it would be an overwhelming board if the entire business were mapped out using sticky notes, and it would require a large amount of wall space, but that, generally, is not required. Agile is about change and improvement and chunks of focused activity, not everything and anything that can be mapped. Many businesses have adopted agile within parts of the business where it can be used to identify and resolve problems and identify routes to growth.
Agile does have planning and it does have goals. It is not about forgetting what we already know and plan to do; it is accepting that probably we do not know it all and there are likely to be a few things that change along the way.
Agile as a methodology helps to change direction without having to descend into chaos because it takes account for the fact that there will be change. Agile is a great tool for managing the unknown. Lean is a great tool for refining and improving systems and processes. It is not about replacing current approaches, systems and tools, it is a method for improving them.
There are now a number of digital solutions available to create agile boards digitally for sharing. Agile does not have to be at your side night and day; it can be visited daily or even weekly. If the team are distributed, then it can help to bring them together virtually. A key issue with distributed teams is that they find communication a barrier, and agile can provide a suite of tools to help at least lessen the impact of remote working. Video conferencing and remote file sharing make it possible to use parts of agile to provide a fixed shared space when everything else is constantly moving.
You can point out that customers do not know exactly what they want at the start by using agile to help them explore their goals, the reality and the options. Despite this recurring fear that customers will not accept a solution without a definitive price, scope and time, they will when it has been tried. Agile works to build trust and awareness with the customer. It includes them in the decision-making process, delivers value early and allows them to change their mind. Ask your clients, would they like to fix the solution now, or would they like the option to change their mind along the way. You may or may not be surprised to hear they would like the option to change their mind when you ask them directly.