I have been thinking of writing something about Agile Teams for a long time and its correlation to football, given that I have played professionally in the past. In this article I will try to give some insights on the analogy between football and software development as far as agile management is concerned.
Nowadays almost every software development team is working in Agile, so you can also call them Agile Software Development Teams. Myself being not an IT guy, the first time I heard about Agile I wondered what it was. I am a person who if I do not understand something right away, I tend to do whatever I can to understand it. So, I went full speed and learned all I could from my team what Agile was and how it is impacting today’s IT project workflow. I learned from them that Agile is a new, modern word of delivering quality work by constant monitoring and collaboration between team members.
I played football (professional level) for about 10 years, until I broke my knee when I was 18 years old. Nevertheless, I have learned some very important lessons from the time when I used to play. Discipline, hierarchy, respecting the opponent, being a team player, and of course being part of an Agile team. Well, now they call it Agile but back in the days and even now in almost every team sport is just the normal way of playing the game, which means sharing and working together to achieve a common goal, that of winning.
Just like a football team, an Agile software team has different individuals who each play a certain and specific role in order to win the game, or complete a project. They have to play together, interact with each other and help each other in many different occasions. Same for football, software and digital communications (everything that needs a team of different individuals and professionals). In football before every game, the coach comes up with a game plan, and the whole team knows exactly what to do, and usually every member of the team knows his tasks and their relation to the overall game. In software, the Agile teams have a list of the requirements, features and functionality that the client wants to have in the final product. Being that a website, application, TV Commercial, or a platform.
As the game is in full speed, the coach makes sure to change or rethink the strategy on the field with the final goal to win. This is influenced by the opponent, the conditions of his team and other factors such as possible injuries, and eventual expulsion from the field of a certain player. In software it works more or less the same, as the PM (Project Manager) or TL (Team Leader) breaks down what went well and what did not go according to the planning. In software you do that after every Sprint (usually 2 weeks where every member is assigned with specific tasks to complete) or during the stand-up call or meeting you have every morning with your team.
The final and most important lesson out of this is the importance of being a team player, and if you want to be successful each member of the team needs to understand the role, tasks and responsibilities. This is the same in football, software and everywhere where people work in teams. The commitment of every individual inside the group (team) is what makes a team and eventually a company work!