What allows agile to succeed in an organization?
Perfect the art of predictable delivery.
Initially, focusing on the structure of teams and engineering practices to create a team-based iterative and incremental delivery engine is a useful precursor to agile. Once that structure is in place and we have delivery safety, some of the other properties I discuss below can emerge. First, we begin with cross-functional teams organized around producing products and value-focused services in frequent iterations. Then, employing agile engineering practices such as TDD/ATDD and continuous integration help reduce technical debt and establish a rhythm of predictability that goes far beyond what many organizations can accomplish. As my fellow coach, Doug Brophy, likes say: ”If the organization is not shifting its investment from Defect Management to Defect Prevention, then it is not getting agile.” With a focus on delivering valued product and continuously pushing for engineering excellence in the product produced, the teams are perfecting this art of predictable delivery.
Concentrate on correct collaboration.
Frequent and actionable collaboration between business and engineering is key to agile success. Business (especially sales and marketing) should have the “voice of the customer”, and engineering should have the “voice of the possible” in what is capable now versus the long term. Both sides collaborate and set expectations with each other to address key customer and market needs. Neither side makes key decisions or commitments without the other. In an agile framework, this collaboration happens every one to two weeks to balance the voice of the customer and the technically possible, resulting in a new set of commitments to deliver value. This communication allows the entire organization to respond in an agile fashion to any competitor, market shift, new technology or new government regulation with speed unmatched by most competitors.
Learn from visibility in any form.
Success with agile involves establishing clear measures of success at every level of the organization and paying close attention to learning opportunities in those measures whether they go up or down. In successful agile cultures, failures are seen as one form of learning opportunity. Failures tend to be more affordable when teams are executing in 2 week iterations versus 6-12 month projects. Such failure is minimal and can reveal useful information about team dynamics, product development, quality, engineering disciplines, and connection with customers. It provides a wide variety of useful data that teams and the organization can use to improve predictability. Applying collaborative learning approaches (such as retrospectives, charts visible across the organization, and other learning techniques) allow thorough examination of the learning opportunity. Applying these techniques to guide next steps help accelerate success with agile.
Delegate and collaborate on decision-making.
A common misconception with agile teams is that the term “self-managed” means teams make all the decisions. That is far from the truth of successful agile teams. However, organizations that are successful with agile are very clear about what decisions teams can make on their own, and which decisions require collaboration outside the team (with product management, functional management, or other teams), and which decisions need to be made outside the team but adhered to by the team, such as quality standards.
Take small steps to learn.
Organizations that succeed with agile eventually realize that a transition will suggest many changes to process, engineering disciplines, business policies, staffing and more. None of these aspects of the business can be changed overnight. Agile organizations select those elements that have the highest impact and greatest likelihood of success first, observe how the changes affect other areas of the business, and plan the next set of changes based on the outcomes. These small steps help the organization gradually adapt to the new, agile way of working. Furthermore, this “small step approach” helps the organization move into an agile mindset for developing products in the same manner.
Should your organization wish to develop some of these characteristics to accelerate your agile transformation, the staff at LeadingAgile is here to help.