Tag Archives: Agile Culture

Enterprise-level Agile Implementation

I was recently asked to help a consulting firm work with a client on a very large enterprise-level Agile implementation.  The company had gone totally into Agile across the whole company and the Senior Executives were unhappy with the way it was going:

  • Many projects were going off track and senior management didn’t feel like they had much visibility and predictability
  • They wanted to see if all the development efforts were really well-aligned with the company’s business strategy
  • I think this is a typical problem that many companies face for large-scale, enterprise-level Agile implementations.

The Challenge

The problem is that large companies typically have some kind of management infrastructure such as a PMO  for managing projects. They also typically have some kind of project portfolio management approach to align projects with the company’s business strategy. And, in many cases, their existing management infrastructure probably isn’t totally compatible with an Agile development approach.  The choices are:

  1. Dismantle the existing management infrastructure and simply implement Agile at a development team level with no guiding management infrastructure.  That typically results in problems  such as projects going out of control and not being well-aligned with the company’s business strategy
  2. Implement a new top-to-bottom Agile management approach such as the Scaled Agile Framework.  This is a good solution but requires a major redefinition of the company’s management infrastructure. And, some companies are just not ready to make that kind of gut-wrenching change.
  3. Implement a “bridge” between the existing management infrastructure and the Agile development approach. This might involve using a hybrid management approach overlaid on top of the Agile development process.

Higher Levels of Management

The most important point is that you can’t ignore the need for these higher levels of management. Implementing Agile as a development process only without defining some way that it integrates with the company’s overall business strategy may not be effective. The choices look something like this:

Enterprise Level Agiie Business Strategy

This can be a difficult thing to do because standard Agile methodologies such as Scrum do not provide much guidance above the development team level. And, there are a number of choices at each of these levels.  At each level, there is a choice of implementing a more Agile or a more traditional, plan-driven management approach.  It is somewhat like a chess game as shown in the diagram below:

Enterprise Agile 2

Potential Enterprise-level Agile Frameworks

Here’s how I would position some of the frameworks for filling this need:

Enterprise Agile 3

The three frameworks shown above are:

  1. My own Managed Agile Development model
  2. Scott Ambler’s Disciplined Agile Delivery model
  3. Dean Leffingwell’s Scaled Agile Framework (SAFe)

Additional Resources

You will find much more detail on this in my Online Agile Project Management Training.

Developing an Agile Company Culture

Developing an Agile company culture can be a major obstacle to successfully implementing an Agile development approach; however, it doesn’t have to be that difficult.

  • Some people make the mistake of thinking that you have to change the entire culture of a company in order to adopt an Agile development approach
  • I don’t believe that is necessarily the case. A company’s culture should be designed around whatever business they are in and
  • That may or may not be well-aligned with implementing an Agile development approach

See my previous blog post on “Agile and Corporate Culture” for more discussion on this.

Agile Company Culture
Organizational Culture Word Cloud on White Background

Impact of Agile Company Culture

The nature of the company’s business can have a big impact on the implementation of Agile. Agile works best:

  • In companies that are in the business of developing products or
  • Where software product development is directly related to their primary business

In other companies where the relationship is more indirect, it can be much more difficult to implement an Agile development approach. In those companies, an Agile development approach may not be as well-aligned with the company’s primary business objectives. Check out this article for more on that:

What Are the Most Important Factors?

Here are a few of what I think are the most important factors in developing a corporate culture that is consistent with Agile:

1. Transparency and Trust

In many large corporations,

  • There is somewhat of a contractual relationship between the business users and the people who deliver Information Technology solutions.
  • The business users may be under intense pressure to reduce costs and want to get firm commitments from the solution providers on the costs and schedules of projects

That is one of the major factors that has can be a big obstacle to implementing an Agile development approach. Sometimes it even creates somewhat of an adversarial relationship between the two organizations. The key to getting past that obstacle is:

  • Companies need to realize that this is not an “all-or-nothing” proposition to totally give up all control of projects to become Agile
  • There are many ways to blend traditional project management principles and practices with Agile principles and practices to develop the right balance of agility and control

See my blog post on a Hybrid Agile framework here:

Developing a spirit of trust, partnership, and collaboration between the two organizations can require some strong executive-level leadership to break down some of the traditional barriers that exist inside of companies. The strongest driving force for making that happen is that it requires a more collaborative partnership approach to focus on rapid innovation.

2. Focus on Continuous Improvement and Innovation

A focus on process improvement and continuous innovation is certainly not new to Agile:

  • It has been around a long time and many companies have successfully adopted continuous improvement approaches based on Six Sigma and other process improvement methodologies
  • A similar thing is happening today with Agile. Companies who take the time and effort to understand Agile at a deeper level and adapt it to their business are probably more likely to do it successfully

3. Respect for People and Self-organizing Teams

This principle is also not new to Agile. It was a key element of Dr. Deming’s principles that form the basis of the Total Quality Management (TQM) approach. I can remember a strong focus on this when I worked at Motorola in the early 1990’s. It’s another thing like Six Sigma that some companies forget about when the pressure gets intense to deliver business results:

  • They sometimes take a superficial, brute-force approach to try to drive business results rather than
  • Taking a systems-thinking approach to understanding the factors that drive business results and the role that people play in achieving those goals

Overall Summary

If you only focus on those three things about a company’s culture, I think you will have a pretty good foundation for implementing an Agile development approach. Those three things are somewhat common to all companies regardless of what business they’re in.

Additional Resources

Here’s a related article on “Agile and Corporate Culture – How Do You Make it Work?”:

You will find much more detail on this in my Online Agile Project Management Training.

Agile Product Backlog Grooming “Iceberg”

An understanding of the Agile Product Backlog Grooming “Iceberg” is important.

How Far Do You Need to Plan Ahead?

A key decision is “How far do you need to plan ahead to stay ahead of the development process?”

  • A typical Agile approach of Product Backlog grooming is sometimes focused primarily on limiting the backlog to only about 2-3 sprints ahead
  • That approach involves only doing grooming only as needed to get stories ready for development

There can be a big difference in the Product Backlog Grooming depending on what level of planning the project requires:

Totally Adaptive Approach

If your project can be totally adaptive and doesn’t require a plan, you can probably live with that approach. You could completely define the Product Backlog “on the fly” as the project progresses.

More Plan-driven Approach

However, in many situations there is a need to have a plan either at the release level or project level for the project. In that situation, it’s very difficult, if not impossible, to

  • Limit the definition of the backlog too much and
  • Also be able to have some kind of plan of where the project is going

The Product Backlog Grooming “Iceberg” Approach

I like the idea of thinking of the Product Backlog as an “iceberg” as shown in the diagram below. I believe this iceberg Idea was originally created by Mike Cohn):

Product Backlot Grooming Iceberg

The “iceberg” idea is that:

  • As you pull items off of the top of the iceberg,
  • Other stories that are at lower levels in the iceberg move up to take their place

The process of developing stories and moving them up the iceberg goes on continuously to feed the development process. A Kanban process with different stages of definition for stories fits this process very well.

Product Backlog Grooming Guidelines

Here are a couple of suggested guidelines for this process:

1. You Never Want the Development Team Waiting for Stories to Go Into Development

The number of stories that are fully groomed and ready to go into development should always be far enough in advance to keep the queue from going empty. You always want to prevent developers becoming idle waiting for stories to develop.

2. Logical Stages for the Grooming Process

There are logical stages that the grooming process for the rest of the backlog goes through. Those stages should align with whatever planning objectives you need to meet. For example, if there is a need for release-level planning or project-level planning to forecast a plan and an estimated schedule, the Backlog needs to be sufficiently-defined far-enough in advance to support that objective.

3. Product Backlog Grooming Can Be a Very Time-Consuming

Product Backlog grooming can be a very time-consuming process. The time for grooming of what’s coming next needs to be built into the current sprint or it may not get done in time to keep up with the development effort.

4. Using People on the Team Efficiently

Using people on the team efficiently to do backlog grooming can be a challenge.

  • The developers who are going to take responsibility for the development of the stories need to be involved in the final stages of grooming. Prior to taking the stories into development, there should be a common understanding of the intent for the stories
  • However, it might be a significant drain on the team if the entire development team became deeply engaged in the very early stages of backlog grooming. A large portion of that effort can be done by the Product Owner and/or a Business Analyst working with the Product Owner supplemented by inputs from the development team as needed

Additional Resources

You will find much more detail on this in my Online Agile Project Management Training.

Agile and Corporate Culture – How Do You Make it Work?

Agile and Corporate Culture

It’s important to understand the relationship of Agile and corporate culture.

  • Adapting an Agile development process to a corporate culture can be a very difficult thing to do. Especially if it involves changing a well-established corporate culture
  • If you ignore this problem and implement an Agile development process without attempting to integrate it with the overall business environment, it’s not likely to be totally effective
  • Some people think that you have to force the whole company to be Agile in order to adopt an Agile development process. I don’t believe that is the best solution in many cases.
  • A company’s culture should be designed and optimized around the business and markets that company operates in
Agile and Corporate Culture

Value Disciplines

One of my favorite books on this subject is “The Discipline of Market Leaders” by Treacy and Wierzema. It identifies three primary “value disciplines”

Value DisciplineDescription
Operational ExcellenceCompanies who focus on “Operational Excellence” succeed or fail by offering products and services more efficiently than their competitors can offer them.
McDonald’s and Walmart are examples of companies whose primary value discipline is operational excellence. They do the same thing repeatedly at a low cost; that is what “operational excellence” is and it is reflected in their culture.
Product LeadershipCompanies who focus on “Product Leadership” succeed or fail primarily by innovating products to meet market needs faster and better than their competitors.
Apple and Samsung are examples of companies whose primary value discipline is product leadership.
Constant innovation is very important to these companies and they might be dominated by engineers who wear jeans and sweatshirts to work.
Customer IntimacyCompanies who focus on customer intimacy succeed or fail primarily by providing a high level of personalized service to their customers relative to other competitors.
Ritz Carlton Hotels is an example of a company who is driven by a culture of customer intimacy.
Their employees are trained that customer needs and customer service always come first and their processes need to be flexible to adapt to customer needs.

The idea of value disciplines is that:

  • A company can’t be deficient in any of the three areas; however, no company can be all things to all people. The company needs to choose one value discipline as the primary area of focus to excel in.
  • The value discipline that is chosen as the primary competitive differentiation tends to define the whole company and its culture and values

Alignment of Values and Corporate Culture

How do these value disciplines align with an Agile development approach?

Product Leadership

  • Obviously, the Product Leadership discipline has a very strong alignment
  • Companies who are in a business that demands Product Leadership will have little difficulty in adapting to an Agile development approach
  • In that type of company, there is a natural alignment with the primary success factors in their business.

Operational Excellence

Operational Excellence is probably the one that is most difficult to align an Agile Development approach with. In these companies, there are several alternatives:

Ignore the Misalignment

One option is to ignore the misalignment and just implement Agile as a development process without attempting to align it with the business. That’s not likely to deliver optimum results, in my opinion.

Force the Company to Change It’s Culture

Another option is to attempt to force the company to change its culture to be more Agile. That may not be successful either and also may not be the best solution for the company’s business.

Develop an Adaptation Layer

Finally, you might develop an “Adaptation Layer” between the Agile development approach and the company’s business environment.

  • This approach is probably the most practical and most likely to be successful in many cases
  • It might consist of putting a thin plan-driven “wrapper” around an Agile development approach to integrate it with the company’s business

Check out this article for more on developing a hybrid approach:

Overall Summary

Alignment is very important in any company and it is particularly important in integrating Agile and corporate culture. Ideally, the company should be well-aligned from top-to-bottom for the company to operate as smoothly and efficiently as possible. Corporate culture can be the “glue” that holds that alignment together.

Additional Resources

Here’s a related article on “Developing an Agile Company Culture”:

You will find much more detail on this in my Online Agile Project Management Training.