The Truth about Practices and “Being” Agile-Lean

[article]
Summary:
A working definition of “practice” is: A practice is a common and adaptive approach for doing something with a specific purpose in mind. When “being” agile and applying a practice we are focused on value-added not the means.

Vince Lombardi, one of, if not the greatest coach in football history, once said, “Practice does not make perfect. Only perfect practice makes perfect”.

A misnomer is labeling a practice a “best” practice"; a practice is only best in the specific context in which it exists.

My working definition of “practice” is: A practice is a common and adaptive approach for doing something with a specific purpose in mind. When “being” agile and applying a practice we are focused on value-added not the means.

Figure 1.0 depicts candidate practices applicable to “being” agile.

rp0210-1

Figure 1.0 - Candidate Practices

When a team is “being” agile, one of the things they will do is self-organize self-direct around practices; selecting one or more practice to apply to an iteration/sprint.

The benefits of which are:

  • Iterative incremental adoption of “being” agile
  • Gives team a context and narrow focus to rally around
  • Provides a non-threatening easy way for team to learn together, “be” agile, apply an iterative and incremental approach, and get better at what they we do

So, let’s take a closer look at two of these practices.

Practice - Mastering the Iteration

Figure 2.0, Figure 3.0 and Figure 4.0 depict an iterative and incremental cycle.

rp0210-2

Figure 2.0 – William Deming’s Plan, Do, Check/Study, Act –

Quality Improvement Cycle

 

 

rp0210-3

 Figure 3.0

 

rp0210-4

Figure 4.0 – Scrum Framework

In all actuality William Deming’s quality improvement cycle of Plan, Do, Check/Study, Act is embodied in Scrum.

When “being” agile, we work in sprints/iterations developing and delivering commercial or operational value incrementally. Iterative and incremental is time-specific/activity-based and product-specific/value-based. The term iteration is time-specific and activity-based while the term increment is product-specific and value-based.

Being agile and applying iterative and incremental development puts the Product Owner (the business or customer representative) in the driver’s seat; communicating and collaborating with the team “what” is to be developed, delivered and deployed, with the Product Backlog serving as their steering wheel.

This approach also puts the Development Team in the driver’s seat. While the Product Owner is responsible for “what” is to be developed the development team is self-directing and self-organizing around “how” to develop the system-software product; with the Iteration/Sprint Backlog serving as their steering wheel.

Applying an iterative and incremental cycle is all about increasing the feedback loop, reducing waste, effectively and efficiently responding to change and delivering often, commercial or operational value.

rp0210-5

The bottom line: delivering commercial or operational value early and often, giving ourselves the best opportunity to beat the competition to market, realize revenue and discover insights that we can use to help us improve.

Practice - Three level planning

rp0210-6

rp0210-7

rp0210-8

rp0210-9

rp0210-10

rp0210-11


About the Author
Russell Pannone is the Founder of We Be Agile and the Agile Lean Phoenix User Group, as well as the Agile-Lean Adoption Lead. With almost 30 years of system-software development and delivery experience, my focus is on working side-by-side with folks on real projects helping them deliver valuable system-software to production early and often, giving those I collaborate with the best opportunity to beat the competition to market, realize revenue and discover insights that we can use to help us improve.

About the author

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.