Agile and Scrum in Mission-Critical Projects

Sunday, May 18, 2014 by Rainer Stropek
Image source: https://www.flickr.com/photos/dok1/6555922825/, under Creative Commons License
Although this is not my own shoulder, my X-Ray image looks very similar as I now have 9 screws in my arm, too.

Agile is Often a Hard Sell in Mission-Critical Projects

In our business we have different kinds of projects. All of them are important to our customers, otherwise they won‘t do them. But let‘s face it, not all of them are mission-critical. If the introduction of time cockpit in a customer‘s organization would fail (has never happened before, just a thought experiment), the team might not be as efficient as it could be, invoices might be delayed, customers might receive inaccurate project reports. But at the end of the day business would continue. On the other hand we have customers who bet the farm on us. One-product companies who rely 100% on our libraries, products, technologies, and knowledge.

In such critical projects, an agile approach like Scrum or Kanban is often a hard sell. If a project is really, really important, customers want to reduce risk. With its iterative nature and its missing big design upfront, agile development isn’t very appealing to them at first sight.

Agile Shoulder Surgery, Are You Serious?!

Last week I learned a lesson about the agile approach in such critical projects the hard way. I had an accident with my mountain bike. I fell directly on my shoulder and I immediately knew that it wasn’t just a bruise. X-ray and CAT scanner showed that it was a complex fracture. Now what has that to do with agile development? It turned out that the shoulder surgery I needed would be agile.

Before I was brought to the theater, I talked to the doctor who would do the surgery. He made a few points very clear to me:

  1. Although we had all the images, he wasn’t completely sure what he will find when opening my shoulder. So he had limited knowledge about the circumstances of the project.
  2. He had an idea how he wanted to repair my shoulder. However, he also told me a long list of possible problems that he might confronted with during the surgery. So flexibility would be extremely important as the situation could change any second.
  3. The goal of the project was not exactly specified. Of course the ultimate goal was obvious: fully repair the shoulder so that it can be used as before. However, in reality it would never be completely as it was. The doctor told me that I might wake up with some screws in my shoulder or even with an artificial shoulder joint. He would have to decide which route to take depending on the progress of the surgery.

No Option to the Agile Approach

Looking back, I realize that the doctor was describing an agile project to me. Big design upfront was no option. We simply didn’t have the time. Let’s compare my situation just before the surgery with the situation a customer for a mission-critical software development project could be in:

  1. The customer might have an urgent need. Planning the projects for months is not an option.
  2. The topic is super importance for the customer. Failure would have severe consequences.
  3. The customer might have a vision for the project (in my case “fix my shoulder”) but a detailed specification about what has to be done isn’t available.
  4. The current situation is not fully known and much less documented.
  5. It’s impossible to define a detailed project plan because of so many variables.

It is All a Matter of Trust

The shoulder surgery was a mission-critical project for me. At the end it was a question of trust. I finally trusted the doctor and agreed to the “agile” approach. As IT consultants, we have to ask ourselves how to become so trustworthy, that our customers agree to agile in mission-critical projects, too. Here are my five most important advices:

  1. Just as my doctor, we can refer to our qualification. Which degrees do we have? Which certifications?
  2. Even more important is a proven track record. How much experience do we have from similar projects that were successful? Are you a well-known specialist in the corresponding domain? What about referrals (in my case, the doctor has successfully operated my aunt’s shoulder, too)?
  3. The customer has to feel that we have the honest goal to do everything we can to help him. Do not seek to maximize your profit on the short run but help the customer succeed in his mission-critical project. You will get a very loyal customer and financial success will follow anyway.
  4. We have to be willing to fight for the success of the project. We are not going to turn away from the project as soon as the first problems appear.
  5. Be brutally honest in your communication. Don’t withhold the truth. If you talk about problems clearly and honestly, this will help you building a trust relationship with the customer.

Happy End

By the way, my shoulder surgery went well. Very likely I will be able to use my shoulder as I could use it before the accident. So my mission-critical agile project was successful.

comments powered by Disqus

Rainer Stropek

Rainer Stropek

Co-founder, architect, developer

Bio

I am co-founder and CEO of the company software architects and have been serving this role since 2008. At software architects my team and I are developing the award-winning SaaS solution time cockpit. Previously, I founded and led IT consulting firms that worked in the area of developing software solutions based on the Microsoft technology stack.

In my work I focus on .NET development and software architecture. I have written some books and articles on C#, database development, Windows Azure, Windows 8 development, WPF, and Silverlight. Regularly I speak at conferences, do workshops and conduct trainings in Europe and the US. Since 2010 I have been MVP for Windows Azure.

I graduated the Higher Technical School Leonding (AT) for MIS with honors and hold a BSc (Hons) Computer Studies of the University of Derby (UK).

Contact

Twitter: @rstropek
Facebook
Google+
Xing
LinkedIn

Authors