Disciplined Agile

Collaboration and Alignment

Having agreements on how people throughout the organization is critical. In all too many organizations these agreements are tantamount to “let’s follow SAFe” (or substitute your favorite framework). This takes our eyes off the real target (the quick realization of value predictably, sustainably and with high quality).

Take a look at SAFe’s big picture and the picture below of FLEX that represents the work taking place in a generic value stream.

flex

FLEX’s representation of the value stream

Which one helps you see the flow of work better? Why would this be important? I’d suggest that throughout the value stream people are making decisions on what to start working on, what to do when conflicting requests come in and more. The overriding factor in these decisions should be reducing the overall cost of delay. But unless one can see the items which these smaller items they are working on, they can’t actually understand these tradeoffs. While product managers and product owners are supposed to create this clarity, if the workstream itself does it as well, this greater visibility will make for better decisions.

Imagine that you were a person anywhere involved in the development of some work.  Which flow makes it easier to see which item is most important to be worked on? With epics, solutions, capabilities, … it can be a little confusing.  While there are several roles helping you decide what your responsibility is, when MBIs are used, it is a lot easier for everyone to see what is more important as determined by cost of delay. This can allow for a natural alignment of efforts which naturally allows for greater autonomy. That is, allowing decisions to be pushed down closer to the work itself.

By tying each sub-component in the hierarchy back to its parent, it is possible for everyone to see what MBI each sub-component is tied to. This provides critical information when a conflict of capacity occurs. This also creates alignment.

fig 10

Alignment Leads to Autonomy

Although SAFe describes roles and there are many agreements between the roles, agreements based on “follow SAFe” can lead to dogma SAFe’s practices become what we are to rally around.

We have found a more effective way to get alignment is to make some basic agreements across the organization. We call these the guardrails.

 

The Guardrails

guardrailsThe Guardrails for creating business agility (the quick realization of business value predictably, sustainably and with high quality) are a set of agreements different roles in the organization make with each other to facilitate working together. The guardrail system helps people in an organization work together towards their common goals. They also provide a series of questions that people can use to ensure they are keeping their agreements.

Solution Delivery is a complex process. However, it is possible to see if one is on track in a relatively straightforward manner. In essence, Lean-Agile methods are about achieving the highest level of Business value realization in the shortest amount of time in a predictable and sustainable manner. This requires working on the most important Business value requests within the proper capacity to implement them quickly. This is often complex and difficult; however, it is less difficult to assess if you are staying on track. To help with this, we have defined a set of guardrails.

These guardrails take the form of non-negotiable agreements made across the organization. Each agreement has a set of questions to consider to ensure that everyone is doing what was agreed to. The guardrails are grounded both in the intention of realizing Business value and in following known principles of Lean-Agile software development. The purpose of the guardrails is both for alignment and to keep people on the right path. They provide guidance to ensure that you are on course and to allow you to make decisions at a local level while ensuring you are still aligned to the rest of the value stream.

 

The basic agreements

We agree to:

  • Work on items that will realize the greatest amount of business value across the enterprise.
  • Collaborate with each other in order to maximize the realization of business value across the enterprise.
  • Ensure that all work will be made visible.
  • Take the necessary steps to sustain or increase predictability.
  • Keep the work throughout the value stream within capacity.
  • Encourage everyone to strive for continuous improvement.

guardrails

See the guardrails by role

 

The Guardrails

The guardrails go beyond agreements. Each guardrail includes a variety of questions that people can ask themselves to assess see if they are keeping the agreements.

Guardrail: Work on the greatest business value

We agree to work on items that will realize the greatest amount of Business value across the enterprise.

The purpose of this guardrail includes:

  • Realize more value by working on and delivering only those items of greatest value.
  • Enable the creation of alignment across the organization by having people understand what’s of greatest value. This helps people decide what to work on when there are conflicting requests.
  • Use relative value as a way of keeping your work beyond capacity. Do not start things of lesser value that will slow down things of greater value.

Here are questions to consider when trying to follow this guardrail:

  • Are all activities based on having us realize Business value incrementally?
  • Are we using Minimum Business Increments (MBIs) where appropriate?
  • Have we allocated all of the required capacity to work on the most important MBIs?
  • Have we sequenced work so all can align on what is most important?
  • Do we have a clear success criteria?
  • Do we understand why what we are working on is valuable?
  • Do we measure Business value realized after delivery?

Note: Some of these MBIs may be architectural / technical in nature.

Guardrail: Collaborate across boundaries

We agree to collaborate with each other in order to maximize the realization of Business value across the enterprise.

The purpose of this guardrail includes:

  • By working together more effectively  people in the organization can focus on realizing the most important items work, thereby supporting the Business value guardrail.
  • Delays in work, workflow, feedback and using information are often due to lack of collaboration across groups. These delays create additional, unplanned work that has a adverse cascading effect.
  • Collaboration on a worthwhile goal is fun and helps build trust and respect.

Here are questions to consider when trying to follow this guardrail:

  • Are we collaborating together in order to remove delays in feedback, workflow and realizing Business value of our MBIs?
  • Do we have the proper ecosystems to allow for collaboration?
  • Are different teams working together for the common goal of Business value realization?
  • Is the most common form of communication “talking to” / “meeting with” colleagues?

Guardrail: Make all work visible

We agree to ensure that all work will be made visible.

Visibility means being able to see these readily:

  • The workflow being used to realize value
  • The work being undertaken, including its size, priority and status (being worked on, waiting, blocked)
  • Any impediments present
  • Dependencies between pieces being built
  • Dependencies between groups that are involved in building the same item
  • Capacity issues
  • Quality issues

The purpose of this guardrail includes:

  • Without visibility, collaboration is difficult.
  • Visibility of priorities enables people to make decisions when there is limited capacity and a person who is a constraint on others has to decide what to work on.
  • Visibility enables people to be aware of constraints downstream so they can start work that they’ll have the people they need to realize it
  • Visibility enlarges our view of things and helps avoid local optimization that has an adverse affect on the overall speed of delivery.
  • Visibility of MBIs enables technology clarity on the context and purpose of what they are building.

Here are questions to consider when trying to follow this guardrail:

  • Can everyone see all Work-in-Process?
  • Can everyone see what is and/or will be expected of them?
  • Can everyone see any blockages present?
  • Is the status of everything clear?
  • Can everyone see any risks to delivery dates?
  • Is all work that is being done visible?
  • Do people know what everyone is working on and why?
  • Does everyone know when and why work is getting done?
    • Are additional roles required to ensure this?
    • Are there visual controls that can show this?
  • Is it clear how work activities are interacting?
  • Are all active or scheduled activities visible so that people can see what is happening?

Guardrail: Sustain or increase predictability

We agree to take the necessary steps to sustain or increase predictability.

Predictability does not mean being able to see the future. The essence of Lean and Agile is using feedback and to course correct continuously. However, there are many unpredictable things that can be avoided or at least detected quickly so as to minimize their effect.

  • Many bad estimates are due to poor code quality.
  • Lack of automated testing results in large delays in discovering problems causing additional work.
  • Misunderstanding requirements cause a tremendous amount of unplanned work to be created.
  • Most of unpredictability is due to the delays in feedback loops in the exchange of information and  in validating what we are building.

The purpose of this guardrail includes:

  • Unpredictable events typically create additional work, thereby reducing the speed of realization of Business value.
  • Unpredictability fosters an attitude of distrust which causes a loss of respect.

Here are questions to consider when trying to follow this guardrail:

  • Predictability requires sustainability and reliability.
    • Are we working at a sustainable pace?
    • Are we avoiding shortcuts that will lead to problems in the future?
    • Are we using consistent estimation practices and calculations of team capacity to accurately predict throughput?
    • Are we committing to a level of work commensurate with our proven delivery capacity?
  • Are we attending to technical debt, poor communication and bad visibility?
  • Are we managing interruptions?
  • Does all work come through a known work intake process?
  • Are we minimizing our dependencies on other groups?
  • Are we automating all of our testing?
  • Do we have written acceptance tests prior to writing code?
  • Is feedback sufficient?
    • What we are building
    • How we are building it
    • What our rate of progress is
    • Across all roles

Guardrail: Keep WIP within capacity

We agree to keep the work throughout the value stream within capacity.

Managing Work-in-Process (WIP) is a cornerstone of Lean and Kanban. Scrum manifests it indirectly through the use of sprints, saying that a team should not plan more work than it can accomplish during a sprint. Managing WIP is not merely a way to focus on finishing. It can be used to decide what to start and not start.

With the combination of sequencing items of value, visibility and predictability, items of value can be started or deferred based on whether the capacity to build, deliver and realize value from it is achievable. Working beyond capacity in any part of the value stream that is a bottleneck creates delays in work flow and creates a large amount of unplanned work.

The purpose of this guardrail includes:

  • Avoid working on more things that people should be working on.
  • Create flow of work throughout the value stream.
  • Improve the efficiency of the work being done.
  • Allow for quicker feedback through the elimination of delays.

Here are questions to consider when trying to follow this guardrail:

  • Is WIP visible and appropriately limited?
  • Are we emphasizing completion rather than starting new work?
  • Are we ensuring we know what it means to be “Done” before starting something?
  • Do we know the delivery capacity of the organization? The Portfolio? Teams?

Guardrail: Continuously improve

We agree to encourage everyone to strive for continuous improvement.

The purpose of this guardrail includes:

  • If we are not continuously improving then we are likely to fall back into bad habits.
  • Continuous improvement keeps us engaged and feels good.
  • Knowledge workers like a challenge.
  • Many competitors are continuously improving and we need to do the same to stay competitive.

Here are questions to consider when trying to follow this guardrail:

  • Are teams performing retrospections on a regular basis?
  • Are after action reviews being done at the Program level on a regular basis?
  • Are teams and the Program implementing what is learned in these AARs?
  • Are we measuring the right things?
  • Do we proactively report and review metrics to look for trends / issues and take corrective actions?
  • Do we look at ‘leading’ versus ‘trailing’ indicators to help stay on track?

The mindsets that undergird the Guardrails

There are a number of mindsets that support the guardrails.

Systems thinking. The guardrails are based on Lean Thinking, a cornerstone of which is systems thinking. The essence of systems thinking is:

  • All aspects of the system are inter-connected
  • The overwhelming number of challenges individuals face in a system are due to the system
  • The system shapes the behavior exhibited by those in the system
  • To change the behavior of people in the system, focus on improving the system

Faith in quality. The guardrails are also based on another tenet of Lean Thinking, a commitment to quality. This commitment stems from the belief that when one lets quality slide for a short term gain, the net result will be more waste in the long term. Hence, we always attend to achieving fixing challenges.

Sustainability. There are two aspects to sustainability – short term and long term. Short term sustainability means we don’t attempt to achieve objectives by just having people work overtime. That is, death marches are not allowed. Long term sustainability means we look to see if the actions we are taking will make us less dependent upon outside consultants or even key management. In other words, we can keep going even with losing some key people.

Respecting culture. Changing organizations is difficult. Doing so without attending to the current culture people have makes it even more difficult. Different organizations change at different rates and cherish different ideals. It is important to respect this when attempting to change it.

Why the Guardrails work

How can six simple agreements make such a big difference? There are several important reasons. First, the guardrails encompass the critical aspects of value delivery. But just as important, because they are agreements across all roles, they encompass the entire value stream. This combination provides a context within which all roles can make decisions. Everyone can have confidence that if they take actions that maximize Business value, increase predictability, manage capacity, ensure visibility, collaborate, and continuously improve that they will be adding value to the overall value stream.

The Guardrails by Role and Activity

While the agreements are the same for all roles, how they manifest them is different.  For example, “Keep WIP Within Capacity”, is done different for managers and teams. For managers, this means not interrupting teams capriciously or demanding teams work on more than is effective. For teams, it means to have a focus on finishing and not start too many things.