Practical Agile Transformation framework — Conduct Experiments to get there

Last updated on: Published by: Asad Safari 1

Yaya, It’s the third part of the practical agile transformation framework that we call it Factful Agility Framework. In the first part we created a shared change vision, in the second part we understood the current condition and chosen some meaningful metrics. 

In the last part, we will exploit the change program by conducting experiments. 

Why do we call it experiments?

We are factful, so we should make decisions based on facts. There are 3 facts here:

1- We have a shared change vision, So we know the direction.

2- We assessed the current situation, So we know the current conditions. 

3- We have some hypotheses on how to reach the direction, But we are not sure, these are just hypotheses. 

These are just hypotheses

So let’s come back to our first principle: Our goal is not to implement “scrum”, “Kanban”, or even scaled ones like “SAFe”, “LeSS”, …. 

We will hire one or mix of these practices to help us to reach our own objectives. 

Develop the Experimenting mindset

It’s really important to develop the experimenting mindset in you and your team members. 

Start with yourself

“I have Scrum Master certification, So I believe that scrum will help us to reach our goal.” 

Change your word, Change your World

As a change agent, or Agile coach or … we need to change our words “In order to reduce the lead time, We will use Scrum and Kanban”.

Hypothesis Story 

You can use the Coaching Card or Hypothesis Story to frame better hypotheses. A template like this:

In order to (Our determined metrics in the second part)

We want to hire/use (a specific practice)

For example:

Hypothesis Story

With these details:

The granularity of stories: 

Like user stories, you can break down big Hypothesis stories to small stories too. You can create Hypothesis Epic <- Hypothesis Story.

Breakdown Hypothesis Story

 Develop the experimenting mindset on team members

I can guarantee that the change will fail:

1- If you couldn’t be able to develop the experimenting mindset on team members

2- If you couldn’t be able to create and visualize a great scoreboard. Great teams know at every moment whether or not they are winning. They must know, otherwise, they don’t know what they have to do to win the game.

How to develop the experimenting mindset on team members? 

As an agile coach or Scrum master you need to use all of your skills: 

This model is based on Agile Coaching Competency Framework

I will tell you how to use these skills to stick the team to the change.

Conduct a “Change Exploit Planning”

This event is designed to:

1- Stick the team to the change

2- Create a small and concrete winning plan 

3- Create an experimenting mindset

1. Prepare yourself for the event, Pre-Planning 

In this part, you need to use your Agile/Lean Practitioner skills. There are lots of Agile/Lean practices, let’s create a Practice Backlog. You can use any framework. As a template for your backlog items, you can use the Hypothesis Story too.

Practice Backlog

If you don’t have any idea about practices, you can use your assessment tools too. For example, the Comparative Agility assessment is mostly based on known practices or you can use scrum/kanban/XP checklists like this one

You don’t need to prioritize this backlog right now. Don’t forget that, in the future, we will find new practices too, so this Practice Backlog is a live artifact.

2. Train them (Optional)

This level is optional, and it depends on your team knowledge about Agile/Lean practices.

In this level, you will use your training skills. The goal of the level is, create knowledge and awareness about practices.

I suggest don’t skip this level. Why? Based on my experience, most of the teams have a very superficial knowledge of agile methods. A deep understanding of agile midset and practices can help you in later stages.

You can ask other coaches/trainers to help you in this stage too. 

3. Start Change Exploit Planning with coaching skill

It’s time to show your coaching skills. The essence of coaching based on the International Coaching Community:

  • To help a person change in the way they wish and helping them go in the direction they want to go.
  • Coaching builds awareness empowers choice and leads to change.

In the coaching stance, You should do 4 things(Idea from Toyota kata):

1- Create or Share a shared direction. If the change vision is not created by them, share the created vision and let them know what is the direction.

2- Create awareness about current conditions. Sometimes, there are people who will ask “Why we need to change?”. You can create awareness with “Our Change Vision document”.

For example, In a company, I asked the team, “Do you think, how many bugs reported last week?” They said “Almost 10- 15 bugs”. Then I presented a Jira report of production bugs “44 bugs”. “Holy sh*t, we created a crappy product!!! What we should do?!” they told me. It’s a great moment in a coaching stance. They are ready to contribute to the change program.

3- Create an agreement about the next target

Having a direction and awareness is not enough, we need to breakdown the change. Small targets but meaningful outcomes. 

The organization can be both bad and better. Progress comes bit by bit.

You can use the metrics of the change vision(Described in the second part of the Facful Agility Framework.)

For example, In the first quarter, we would like to focus on just 2 objectives:

1- Low defect rates and technical debt are beneficial to job satisfaction and morale, improving retention and productivity. (Qualitative and Lagging)

2- Bug rates (Quantitative and ~Leading)

So the team decided to use a quantitative metric(Bug rates), and they know the current condition is 44 bugs per week. But What is the next target? The team thinks the Next Target should be zero bug state.

ِDon’t forget our principle, Small changes but meaningful outcomes. “What do you think to reach 5 bugs?”.

4. Create an agreement about how to visualize the scoreboard

“People play differently when they are keeping score. If you doubt this, watch a group of teenagers playing basketball. See how the game changes the minute score-keeping begins, it’s not a subtle change.” 4 disciplines of execution

In this part, we will talk about how to visualize important metrics. You can use a big TV. let people see the progress. Sometimes you can celebrate progress in daily standups or …

4. Continue Change Exploit Planning with your facilitating skill

It’s time to show your facilitating skills. I will show how to do it easily.

Draw one or several circles on a whiteboard, then write your next target(s) in the circle. 

Next Target

As a facilitator, you should facilitate this part (You can use liberating structure too)

1- “What practices can help us to reach our target?”

You can print your practice backlog or bring it with you and let the team see it. They are free to use practice backlog or write a new practice or initiative. Ask them to write the practices on sticky notes and put them on the whiteboard.

2- “I bet you the ____(practice) ___will help us to reach our target faster”

It’s time to bet 🙂 Why Bet? Because we are not sure, but if I would like to be on something, It means “ something has a near certainty of being right”. 

A Bet = An Experiment. 

Ask guys to bet on practices. Let’s Complete this sentence “I bet you these____practices ___will help us to reach our target faster”.

You can use dot voting for betting. Ask the group to cast their votes by placing a dot next to the items they feel the most strongly about(I bet on this one). They may use stickers or markers to do this. As a rule of thumb, giving each participant five votes to cast works well.

Participants cast their votes all at once and they may vote more than once for a single item if they feel strongly about it. Once all the votes are cast, tally them, and if necessary make a list of the items by their new rank.

3- Form “Hypothesis Story” cards

In order to Decrease bug rates of a week to under 5

We want to “Write unit tests for critical features”

or 

In order to Decrease bug rates of a week to under 5

We want to use a “Definition Of Done”

4- Select high priority practices and create a change sprint backlog

The concept of the change sprint is a period of a short time, to conduct experiments and see the result. You can map it to your current sprints and check the result in the retrospective meetings. 

Or you can create a Change Sprint with a 1-month length. You can conduct a “Change Exploit Planning” at the beginning of each change sprints. 

For change sprint backlog you can create a simple kanban board. 

Change Sprint Backlog

Ok, It’s time to exploit and adopt practices. But don’t forget our goal is not to adopt practices, we adopt practices to reach our objectives 🙂

1 more thing: Management Support and Investment 

Teams will focus on their change sprints and adopting practices, but management support is necessary. Insufficient support can cause turnover and create a cynical corporate culture that hinders improvements.

For example, When a team wants to work on quality and decrease bug rate, Based on agile fluency we know that they are trying to reach “Delivering” zone, and this zone needs some investment:

Common Organizational Investments

Provide time for lowered productivity while team members learn new skills.

Integrate non-programming technical disciplines, such as QA and ops, into the team.

Provide training in agile technical practices.

Engage skilled practitioner-coaches to mentor the team on their real-world work.

Regards

Asad



About the Author:

Asad Safari is an Enterprise Lean/Agile Coach. He has worked as an Agile coach for more than 8 years with several enterprises and startups. He has more than 14 years of experience in the IT industry as a Software Developer, Tester, and finally an agile practitioner. You can follow Asad on Twitter and LinkedIn.

Practical Agile Transformation framework -  Start with a vision

Last updated on: Published by: Asad Safari 1

“You should not do Agile, You should be Agile”. This is the most used buzzword by agile coaches to promote agile values. After +10 years in the agile world, I think this is a wrong approach too. 

Sometimes as an Agile coach, we are trying to sell our service, “We deliver agile coaching service to firms that help them to be Agile”. 

Based on my experience, most agile transformation failed because we did not have the right direction. Setting “Doing Agile” or “Being Agile” as a goal is not a good objective for a change program. 

This kind of change programs is buzzword centric. Agile mindset helped us to create “Customer-centric” products, but why we define a change program “buzzword-centric”? for example, “We want to implement OKR”, “We want to implement Scrum”, “We want to adopt agile”. 

So, you will hire a buzzword-coach, Trainer and she will teach us how to do this. And people will show resistance against the buzzword. 

Outcome-centric vs Buzzword-centric

A Customer-centric or Outcome-centric change program, see the change from lens of the customer and not service provider(Like agile coach). Let’s see an example.

Charles Revson, the founder of Revlon, said:

In the factory we make cosmetics; in the drugstore we sell hope.

Maybe as an agile consultant/trainer/coach, I want to sell my service to companies, but a company doesn’t want to be agile, they want to be able to do awesome things. We think agile will help them to reach the right competencies to do awesome things. 

A customer-centric change program, will focus on the outcome and not just implementing different frameworks or practices or even values

Factful Agility Framework

I did not want to create another framework, I think we have enough frameworks. But based on my experience we have 2 main issues:

1- Most of the time an alone tool cannot solve our problems and in the real world we need to mix different tools.

2- There are lots of tools out there, and it makes it hard to choose them and mix them.

After working with +15 companies and +100 teams, I tried to create a container for these tools, That makes it easy to use them or choose them. I call this container “Factful Agility Framework”.

Some tools like, “Toyota Kata”, “Agile Fluency Model”, “Agenda Shift”, “Comparative Agility”, “Evidence-Based Management Guide”, and my own tools like “Change JTBD”, “Coaching Canvas Card”.

Explore: Start with the outcome

Let’s draw an outcome-based agile change program:

How to start an agile transformation program?

We used to dive into the agile frameworks and start to implement one of them and mostly scrum. But in the Factful Agility Framework, we start to explore, “Why our customer need to be agile?”

Start with “How we want things to be”

There are various reasons to be agile. We should help managers to find their own reason. 

I created a game to help them to do it faster and easier. I called this game “Change JTBD(Jobs-to-be-done)”

1- Print or write the following cards on sticky notes: (You can add your own cards too)

2- Invite key stakeholders of the change program to a workshop.

3- Ask them to prioritize these cards based on current reality.  

You can use dot voting for prioritization. Ask the group to cast their votes by placing a dot next to the items they feel the most strongly about. They may use stickers or markers to do this. As a rule of thumb, giving each participant five votes to cast works well.

Participants cast their votes all at once and they may vote more than once for a single item if they feel strongly about it. Once all the votes are cast, tally them, and if necessary make a list of the items by their new rank.

This prioritized list becomes the subject of discussion and decision making. In some cases, it may be useful to reflect on ideas that didn’t receive votes to verify that they haven’t been left behind without cause.

The result should be something like the below image:

4- Now categorize items by the Agile fluency model. Let’s map this card to agile fluency zones:

5- Explain the agile fluency model to workshop attendees. You can use this video too. 

6- Select the right Target

The Important part of this game is selecting the right target. In our example, based on votes, the second zone, Delivering is a suitable target for us.

Similarly, while each zone has value, each zone also brings challenges. Investing in more than you need could incur organizational backlash, and could even poison people’s perception of agile ideas in general.

Think of fluency as a ride on a bus. When you get on a bus, you buy a ticket for the zone that you want to reach. A zone that’s further away isn’t inherently more valuable; it just costs more and takes longer to get to. Sometimes you’ll buy a bus ticket for the suburbs, because you want to go to a big box store. Sometimes you’ll buy a ticket for downtown, because you want to see a play. Neither is inherently better — it all depends on what you need that day.

7- Create a transformation poster 

Now ask attendees to draw a poster with the following statements: 

1- How things are today 

2- Possible Solutions

3- How we want things to be (Use fluency model)

In this example, Agile fluency is a tool that helps you to set the right target.

8- Determine Key metrics

We need some lagging and leading metrics that show our progress against targets. These are quantitative targets. 

We can create a dashboard to visualize these metrics during the exploit.

We don’t need tons of metrics, we just need a few ones that make quantitative targets more clear and measurable. 

I mapped some of the popular metrics with agile fluency zones that you can use them:

Something like this:

Now we have a shared changed vision and a good reason for the change. It shows the direction.

In the next stories, I will share how to go the next steps, “Understand” and “Explore”. 

Please leave a comment for this story as feedback, Is this useful for you or not? Why we should continue if it’s not valuable 🙂 

Regards

Asad

About the Author:

Asad Safari is an Enterprise Lean/Agile Coach. He has worked as an Agile coach for more than 10 years with several enterprises and startups. He has more than 14 years of experience in the IT industry as a Software Developer, Tester, and finally an agile practitioner. You can follow Asad on Twitter and LinkedIn.