Your Path through Agile Fluency: The Agile Fluency Model, by J.Shore and D.Larsen

I'm currently studying The Agile Fluency model by James Shore and Diana Larsen, and I found this talk, which is almost a perfect transposition of the great article published by the very same authors on Martin Fowler's blog: http://martinfowler.com/articles/agileFluency.html. This post is indeed the starting point if you want to deepen this topic. Or you can check out my notes here...

Here's the video: https://vimeo.com/68327316

The promise of Agile is simple and compelling: a team that effortlessly surfs the wave of business possibility, changing direction to meet the needs of a changing market. So why do so few teams achieve that ideal? Lack of fluency. Agile may be simple, but it's far from easy, and it takes years of practice to do well. We'll look at four phases of Agile fluency, what you can expect from each phase, and how to increase your team's fluency so you can achieve what Agile promises.

My personal notes taken while watching this video

"Essentially, all models are wrong, but some are useful." George E. P. Box, statistician.

About Fluency

Fluency is unconscious competence, how you react under pressure.
What you fallback to is your fluency.

Fluency is more a matter of habits than skills. Although training courses can teach the underlying skills, the skillful ease at the heart of fluency requires practice. A lot of practice.

Team Fluency is how a team develops software when it’s under pressure. Anyone can follow a set of practices when given time to focus in a classroom; true fluency is a skillful, routine practice that persists when your mind is distracted with other things.

It’s best to choose the level of fluency you want to achieve and to practice everything needed for that level from the beginning.

Teams progress through four distinct stages of Agile fluency:

Teams progress through four distinct stages of Agile fluency

Level 0: We Build Code

Starting point: fluency in programming. You have a "team" of dev which build code, maybe not bug-free, maybe not able to deliver when they should.
The "team" is now really a collection of individuals with complementary technical skills, not a real team.

Than a foreign element occurs: e.g. managers want to improve quality (reduce bugs) or more successful ability to deliver. So they decide they want embrace agility.

One Star: We Create Business Value

One-star fluency level reflects Agile fundamentals.

Driving questions

If that’s enough for you and will serve your purposes, a team fluently proficient at one star is your best fit. Invest in developing a strong, trusting, collaborative team and a work process design (like Scrum, Kanban, Scrumban) that focuses on prioritizing work by the value it will deliver.

This level requires a team to learn to work together and to focus on creating business value rather than merely finishing technical tasks: instead of planning in terms of technical considerations, such as software layers or modules, the team now plans in terms of business, customer, or user benefit, exhibiting Focus on Value fluency.

In return, the organization gains greater insight into the team’s work, and has more opportunities to influence that work in positive directions.

This level requires a shift in team culture (team work vs individual work), a mindset shift.

Dev will speak the business language, not just tech topics.

Many companies succeed producing crap code... why?

Business success makes a company, but the lack of Technology success will brake the company later.
Personal success will glue the company together.

Two Stars: We Deliver Business Value

Two-stars fluency level reflects Agile sustainability.

Driving questions

Focus on the ability to ship at will: shipping at market's cadence (to do that you have to have high productivity and low bug rates)

You'll need to invest in a team skills shift, a lot of work! The team have to invest in learning a wide array of development skills. This shift eliminates technical limitations to delivering working software, and the team exhibits Deliver Value fluency.

XP is an Agile method commonly used by two-stars teams. It’s often combined with Scrum or Kanban.

Useful techniques include automated build, continuous integration, test-driven development, pair programming, collective code ownership, evolutionary design, refactoring, ...

Some companies start with both the 1-star and the 2-stars, while other companies start by reaching only level 1 fluency and then adds technical excellence of the level 2 later. Both of them will reach anyway level 1 first, because it's easier.

Three Stars: We Optimize our Business Value

Three-stars fluency level represents the promise of Agile: a team that dances and turns in response to changing market conditions, and collectively takes responsibility for building the best product your investment can buy.

Driving questions

Just because you're shipping it doesn't mean you're shipping the right things.
Shipping the most valuable things that you could, at the market's cadence. That's 3-stars fluency.

You'll need to invest in a shift of organizational structure. This may mean changing organization structure, redefining management roles, and shifting administrative and operational procedures.

This also mean that the team may internalize the capability to understand and address market needs and conduct experiments. This organizational structure shift moves key business capabilities inside the team, which will then exhibit Optimize Value fluency.

Having a PO without powers (a glorified PM, which has to ask to others) or having a PO that you see only once a week or once a month is not the right thing to do to reach this level of fluency.
You need real expertise in the team as full-time contributors... sometimes you have to develop this expertise on your own team because the company does not have that.

Lean Startup is an example of a method that operates at the three-star level. It’s most applicable to new product development. The ideas from Lean Software Development are also useful.

Techniques like:

are all useful to define the vision of the product to build.

Spend social capital to bring business and market expertise in the team.

Four Stars: We Optimize our Organization's Business Value

The fourth star represents Agile’s future, or "Beyond Agile": it's where Agile could be headed as the community continues to evolve its understanding of Agile possibilities.

Driving questions

Four-star teams collaborate with other teams to optimize the value produced by their whole organization. Reaching this level requires whole-system thinking and a willingness to experiment.

It's an inspirational level (it's not a good idea for every company)

It requires a strong shift in the org culture.

Techniques include Agile portfolio management, systems thinking, value stream analysis, whole system planning, intact teams, open book management, and radical self-organization.

Companies at the 4-stars level:

How to use this model?

This is not a maturity model (e.g. CMM). In a maturity model you want to reach the highest level.

  1. if you're influencer in an org: the model will help you understand where to make your investment
  2. if you're a consultant: you will be able to help your client to understand what the trades-off are (investment vs benefits) in an agile evolution.

Use the model diagram to have conversations with decision-makers about trade-offs on how to use agile in their orgs:

  1. Start considering benefits: which of these benefits do we want to achieve?
  2. Check the trade-off investments
  3. Choose your target

    • level 1 throw-away system (delivered in half a year and not maintained then)
    • level 2 large or bureaucratic orgs
    • level 3 small orgs, startups
    • level 4 culture of extreme innovation
  4. Practice everything necessary to get there

  5. Never Stop Practicing

More resources

http://martinfowler.com/articles/agileFluency.html

https://www.infoq.com/news/2015/01/agile-adoption-fluency

Agile Fluency: Finding Agile That's Fit-for-Purpose