Agile has definitely become a buzzword. The concepts of Agile have quickly spread throughout the software development world and are also starting to make an impact in non-software realms. However, the price of such high popularity is the diffusion of some of the core values that have made Agile so powerful - things expressed in the Agile Manifesto.
In some cases, "Agile" software development has been reduced to two practices: holding daily stand-up meetings and working in increments of 4 weeks or less. While these provide benefits - like interim progress checkpoints, handling manageable chunks of work, and early visibility to risks - when they're not coupled with core Agile values, much of the potential benefit is left on the table.
This is a bit like having a 6-cylinder engine and only using a couple of the pistons to move the vehicle. You can achieve forward progress with 2 cylinders, but you have the capability to move significantly faster if the other cylinders are engaged.
One of my favorite cylinders is collaboration, which should be center stage for Agile teams. On most projects, customers negotiate requirements down to a very detailed level with the analysts, who turn around and hash out the implementation with the technical team, who hand off the solution to a testing team, who turn the solution over to the customer.
Certainly all the people in this process are adding value, and each piece of the process is needed in order to create the solution. However, each person is kept within their silo, focused on producing their deliverable...
What would happen if everyone starts the project together, equally owns the entire process of solution delivery, and collaborates on what needed to be done? What if we bring high-caliber professionals together and make an environment that fosters creatively building high-value solutions?
I have seen analysts add technical skills to the mix, developers ask wonderful requirements questions, and customers refining screen layouts based on their understanding of the users. Early on, testers can ask some practical "what-if" questions that help everyone envision what the solution might be and what exceptions might happen. In other words, everyone is working on the whole process and has the same goal: produce a working, valuable solution.
In short, better solutions are produced when we work together.
Remember the 6-cylinder engine? Even firing on all cylinders, it takes a lot of energy to get a vehicle up to full speed. In the same way, it takes hard work to implement Agile and reap the desired benefits. Organizational lines will be crossed. Collaboration needs to be facilitated. Trust must be granted and kept. But ultimately, high-quality solutions emerge that provide great value to the organization.
What steps can you take to get your Agile engine firing on all cylinders?