By David Kendall
Software, and for that matter, product development of any kind, has historically been described as a conflict between three primary constraints: Time, cost, and quality.
The missing component to this description is the labor, i.e. the people involved throughout the product development lifecycle: There is a business need identified by the customer, an analysis is required to be completed by an analyst to convert the business need into a product solution, an engineer needs to convert that conceptual solution into some type of prototype which is then tested by another engineer or analyst, and finally an implementation specialist needs to ensure that risk has been mitigated to an acceptable level to present to the customer. Oh, and let’s not forget the customer needs—to experience business value once that product begins production—especially when evaluating the cycle success criteria.
All steps towards building a successful Agile development culture, including those outlined below, require that people be involved, engaged, transparent in communications, and aligned in their expectations.
The irony is that the conflict between time, cost, and quality cannot be optimized unless the culture that the people involved are working in empowers each of them to do their best work, to be accountable for their actions, and to do it in a timeframe that delivers business value throughout the product development lifecycle.
Rigorous application of the Agile principles and values through culture development is a powerful approach to empowering your workforce to do their absolute best work. Below are some of my tips to building a successful Agile development culture in your organization:
Step 1: Decide why (and when) you need Agile Methodology. The “why” part is straightforward: Agile will help you deliver your organization’s highest priorities faster—and more efficiently—than the conventional waterfall methodology. The overall Agile approach eliminates the need for finishing a project or product completely before moving on to the next iteration or dependent deliverable, allowing you to be more flexible with your input and output processes, and facilitating activities in shorter time frames that are much better suited to anticipating and mitigating changes along the way.
Agile methods work best when you are looking to break development down into small increments to shorten or skip up-front planning and design review processes. These small increments or sprints, as they are known in Agile circles, are typically set in one to four-week periods.
Step 2: Set goals for your organization that are compatible with Agile Methodology. If you don’t need the project or product urgently, then Agile methods should not be necessary. Of course, defining what is urgent isn’t always easy—especially when mission-critical operations or contractual obligations are factored into the schedule. Regardless, goal-setting can only be successful with disciplined and prescriptive analysis in hand. And ranking the highest priorities for your organization requires real-world experience as well as well-trained support staff.
Step 3: Equip and empower your Agile Methodology team. Once you have decided that you are going to use Agile Methodology and set the goals that it will help you achieve, you need to equip and empower your staff with the training and tools necessary for them to be successful. For example, investing in Certified ScrumMaster® (CSM) training for the members of your project management and product development teams ensures a common understanding and the practical application of a rapid-process development cycle, which will pay dividends in the form of production efficiency and time-savings.
Remember, KAIP Academy offers Certified ScrumMaster® (CSM) training courses! For more information or to register your team and take them to the next level, click here.
Step 4: Establish performance metrics and review your Agile Methodology practice continuously. Agile Methodology is designed to drive processes efficiently. Sprints are designed to help teams work collaboratively. Scrum teams are designed to create learning opportunities for individuals to prepare them to adapt to change—quickly. All outcomes from the Agile activities should be measured to ensure that the organization is optimizing the investment of training and tool sets on a continuous basis.
Step 5: Promote Agile Methodology with your staff, clients, and within your vendor community regularly. With purposeful planning, policies, procedures, and processes, Agile Methodology will become an integral part of your organization. By adding thoughtful and regular communication—promoting and reinforcing of the rapid-process development cycle principles and benefits—to both internal and external stakeholders, Agile Methodology will also become a pillar of your resource planning, new business strategy, and partnership programming. In short, it will become an integral part of your culture.
For more information on putting Agile Methodology to work for you, check out the following links:
Values and the 12 Principles of Agile
Agile Model & Methodology: Guide for Developers and Testers
3 REASONS WHY AGILE WORKS
When not to use Agile
About the Author: David Kendall is the President and Managing Director of KAI Partners, Inc. A Senior Information Systems professional with 30 years of experience leading Information Technology (IT) program and project teams focused on enterprise-wide solutions, Mr. Kendall began his career as a member of the United States Air Force working in Electronic Warfare. With an honorable discharge and a degree from the University of Maryland in Information Systems Management, Mr. Kendall moved into the Health and Human Services sector performing roles with increasing responsibility and complexity within the health care field. Mr. Kendall’s current work includes advising one of California’s health care agencies as a Senior Project Manager and Program Integration Manager.
1 thought on “5 Steps to Building a Successful Agile Development Culture”
Well written Mr. Kendall! I fully appreciate the discussion relative to optimizing the culture towards accepting the change and move towards an Agile environment. As you stated “time, cost, and quality cannot be optimized unless the culture that the people involved are working in empowers each of them to do their best work, to be accountable for their actions, and to do it in a time-frame that delivers business value throughout the product development life-cycle.” Implementing an Agile framework is just that, a framework the culture must accept to be sucessful. Your points relative to cultural optimization are cogent and well stated.