The State of Agility is an 8-week blog series
from the Centare agile practice.
Focus on people
As Erik pointed out in his first blog post in this series, tools and scaling had a strong presence at the Agile 2013 conference. However, numerous talks, presentations, and workshops provided a refreshing reminder that Agility is really about people, communication, and teamwork.
Two of the keynote speakers touched directly on this. Tim Lister chimed in with anecdotes about how it is not technology issues, but people problems that plague our industry in his keynote speech on Forty Years of Trying to Play Well with Others. Gene Kim wrapped up the conference by discussing breaking down silos between development and operations groups with his keynote Why Everyone Needs DevOps Now. Furthermore, numerous other recognized experts in the industry spoke about building skills, language, and communication.
Communication is the key to success
The success of any software project, no matter the methodology used, revolves around communication and teamwork. Most projects fail not due to technical issues, but due to “sociological” factors as Tim Lister describes it in his book Peopleware. Agile methodologies bring this to the forefront by breaking down silos and working to get everyone involved in the project speaking the same language and seeing the same value. Breaking down barriers can be hard, but by focusing on building strong communication and transparency at the core of our process, we directly attack the issue at the heart of most software project failures.
Avoiding Communication issues
Communication related failures may stem from misunderstandings or even misused words. Having a common language between stakeholders and developers is key to eliminating many miscommunications before they occur.
Writing requirements such as User Stories are certainly one tool to help bridge this gap, by helping to keep all parties involved on the same page in regards to the business value of the work. Iterative development cycles, such as the sprint in Scrum, are another tool. Scrum drastically shortens the feedback loop allowing miscommunications to be corrected sooner, causing less ill effects.
Be careful of the language you use. Metaphors are fabulous mechanisms to help explain things and we all use them all the time, but they often can mask complexities. Good communication avoids ambiguity.
Break down the silos
While games of telephone when you were a kid might have been fun, it can be very frustrating to play this game while at work! So why do so many of us still play this game where the stakeholders only talk to the business analyst, who then talks to development manager, who then finally talks to the developers? Even as the industry as a whole has pushed for Agile methodologies to avoid this issue, many silos still exist. Break down these barriers; direct conversations are important in getting at the heart of the issue and help continue the process of avoiding miscommunications.
Everyone involved in a software project needs to be part of the team, further breaking down silos between groups. Teams have a common goal and a common vision. This helps teams deal with miscommunications and conflicts. On a well-functioning team, conflict will be through a lens of trust – everyone has the best interests of the team in mind and the conflict will lead to better results.
Keep people, communication, and teamwork the focus
While the industry will continue to talk about tools and scaling, a true focus on people is essential for the success of your organization. Projects fail due to people related problems, not tool related problems. Scrum and agility address this head on with a framework focusing on people and communication. It is refreshing to know that our industry can improve itself without having to buy and install a tool to do so.