Applying Agile to Non-software Projects

I’ve had a lot of requests from my students to provide some case studies that show how to apply Agile to non-software projects so here is one I recently completed from my own experience. This was a house remodeling project which may seem simple and trivial; but believe me, it was not.

How Do You Apply Agile to Non-Software Projects?

Agile can be applied to some extent to almost any project but that doesn’t necessarily mean using Scrum and it certainly doesn’t mean just going through the rituals of doing Scrum mechanically. It can require a considerable amount of skill to interpret Agile principles and values in a broad context to figure out how to apply them to projects that don’t necessarily fit the mold of a typical software project.

Background

I have been a project manager for a long time – I’ve managed large, complex multi-million dollar projects but nothing compared to a recent project to do a major remodeling of the kitchen in our house. The project involved:

  • Knocking down a wall that separated the kitchen from the rest of the house to create a more open environment
  • Ripping up the concrete floor to re-route electrical and plumbing connections
  • Replacing all of the existing kitchen cabinets and appliances
  • Installation of new lighting fixtures
  • Moving the entrance-way to the master bedroom to be more consistent with the new floor plan
  • Removing a pantry and replacing it with a new pantry cabinet which required knocking down a wall and moving an intercom system
  • Repainting the entire area and many other cosmetic enhancements

Why was this project so difficult?

  • My wife was the major stakeholder in the project, she is a perfectionist, and she has a habit of changing her mind frequently about what she wants (Her response to that is “She doesn’t change her mind, she just decides as she goes along”)
  • All of the work in this project was done by multiple outside contractors
  • In spite of these difficulties, a major challenge was to try to manage the costs and schedule of this project within reasonable levels

Contractor Selection

The first task was to select a contractor (or contractors) to do the work. Here are the choices I was faced with:

  • Contractor “A” was the most widely-known contractor in this area. They advertise widely on television and have a good reputation for delivering a high-quality result and they would also take full responsibility for the overall solution. However, their approach is fairly rigid and controlled – once you sign a contract with them, it is very difficult to make any changes.
  • Contractor “B” was much less widely-known but offered much more flexibility and willingness to work with us to come up with a design that was customized to meet our needs. They would also take overall responsibility for managing the overall solution.
  • Contractor “C” offered the most flexibility to meet our needs but was actually two different contractors so it was not really possible for either of them to take overall responsibility for the overall solution
    • Contractor “C1” did the demolition and prep work including electrical and plumbing to prepare the new kitchen
    • Contractor “C2” provided the kitchen cabinets and counter-tops and installed them after the initial demolition and prep work had been completed
    • Following the installation of the cabinets and counter-tops, Contractor “C1” returned to do the finish work which included final installation of new lighting fixtures and repainting of the entire area

Selecting a contractor was difficult:

  • Contractor “A” was probably the lowest risk choice from a traditional project management perspective. It would require less management on my part but offered little flexibility to adapt the solution to meet our needs
  • Contractor “C” was the highest risk and involved coordinating the work of two different contractors but offered the most flexibility to meet our needs
  • Contractor “B” was a compromise between those two extremes. The advantage that they had over Contractor “C” was that they were a single contractor who would take overall responsibility for the solution but their costs were considerably higher than Contractor “C”

We chose contractor “C” because flexibility and adaptivity to meet our needs was so important even though contractor “C” had the highest risk and might be the most difficult to manage. I was apprehensive about splitting the work between two different contractors and the workload that would put on me but these two contractors had a history of working together successfully on other similar projects and I had a good feeling about these individuals that I could trust and partner with them to manage the overall solution. That was a key difference:

  • In a relationship with contractor “A”, I would have relied on a very clear and well-defined contract to deliver the solution but I would have little or no flexibility to make changes (That’s what many people might call “Waterfall”)
  • In a relationship with Contractor “C”, there was a statement of work but it was understood to be flexible and subject to change and much of the relationship relied on a spirit of trust, partnership, and collaboration (This relationship was much more similar to Agile)

How Did the Project Work Out?

There were a lot of difficulties associated with managing this effort:

  • The scope of the project changed numerous times – my wife decided that we couldn’t remodel the kitchen without replacing all the living room furniture and carpets; and, of course, there had to be changes to the rest of the house as well which included repainting the master bedroom, replacing pictures and reupholstering other furniture. and enhancements to other areas of the house
  • Nailing down the design requirements was very difficult – as I mentioned, my wife changes her mind frequently, and insists on perfection in the end-result. I can’t tell you how many different kinds of granite counter-tops and how many different floor tiles we looked at before making a final selection; and how many times what I thought was a “final selection” changed before it really became a “final selection”
  • This was a project management nightmare – This was not a large project but it was one of the most difficult ones that I have ever had to manage. For a traditional plan-driven project manager, this would have been a nightmare attempting to control all of these changes and being caught in the middle between a very demanding stakeholder on the one hand and contractors on the other hand who have to deliver the work within a given cost. However, this is a perfect example on a small scale of what an Agile Project Manager has to do – you have to learn how to balance flexibility and adaptivity to maximize the business value of the solution with some level of planning and control

What Were the Results?

The project turned out to be enormously successful

  • It was completed in a little over three weeks from the time the work started
  • It went over the budget that that we expected to spend but the costs were still at a reasonable level
  • Most importantly, my wife was delighted with the way it came out and she is the most important stakeholder I needed to satisfy.

Here’s a picture of what the finished kitchen looked like plus a couple of pictures taken during the work-in-progress leading up to finishing the kitchen:

Overall Conclusions and Lessons Learned

Agile principles and values can be applied to some extent to almost any project but it requires some skill to interpret these principles and perhaps combine them with traditional project management practices. Here are some important lessons-learned from this effort:

  • The overall value that the project delivers is what is most important and “value” is determined by the key stakeholder. Naturally, cost and schedule goals are not unimportant and have some value but that is only one component of value and not necessarily the most important,
  • A spirit of trust and partnership is important even in a contractual situation – over-dependence on a traditional contractual relationship can severely reduce flexibility and impact the value that the solution provides.
  • Risk management is important but attempting to minimize and over-control risk can also impact the value of the solution. Taking risks may be necessary to maximize the value of the solution.

How Does This Apply to a Business Situation?

I know this is an unusual situation but I like to use unusual situations because I think it encourages “out-of-the-box” thinking rather than viewing standard, stereotypical Agile case studies. Here’s how I think these lessons learned can be applied to a business situation:

  • Contractual Relationships – Most businesses could not survive without some kind of contractual relationships with outside contractors and many businesses have significant supply chains that are critical to the success of their business. The traditional way of managing those contracts is to develop a firm, fixed-price contract and use a competitive process involving multiple bidders to get the lowest possible price. That is a relatively low-risk approach from a cost-management perspective but doesn’t necessarily result in the best overall solution. When there is a lot of uncertainty in the requirements and it is important to maximize the business value of the solution, a different approach is needed that is based on more of a collaborative partnership with a contractor to work together to maximize the value of the solution.
  • Trust – Developing that kind of relationship with contractors requires trust so naturally it will not be possible to develop that kind of relationship with just any contractor. That’s why it is important in business to have strong relationships with a selected number of contractors who can be regarded as close partners.
  • Risk Management – I took a significant amount of risk in this project going with contractors that I thought were the highest risk from a project management perspective but that risk paid off in terms of the overall quality of the solution. I think a similar thing is true in a business environment – many times you have to take a risk to maximize the value of the solution.
  • Productivity – This project was completed amazingly fast once the work was started and that was largely due to the fact that I empowered the contractors to get the job done the best way they knew how and didn’t attempt to micro-manage what they were doing. Conventional project management might attempt to more directly manage the work being done