Recently, a friend of mine shared an article that talks about the Boeing 737 Max incident saga.
While reading the first few lines of the article, it just gives me an impression this has something related to agile in software development.
Agile has been a great love by organizations and corporates which helps them to cut down operations costs by sacrificing the quality.
That’s what Boeing did by avoiding getting expensive hardware and putting their bets on software to solve hardware problems.
Before I continue, I would like to state that I never worked with Boeing and have not any single knowledge about software development processes used for this plane.
Here are my summarized thoughts about the incident and how it relates to agile:
Lack of understanding the system as a whole
As a consultant, I have been working with numerous agile software development teams. They all have something in similar, which is “want to see the big picture”, “want to see how things fit together as a whole” and etc.
Ironically, this is a never-ending question and nobody ever willing to resolve this issue. You may ask, “why is that?”
Well, let me tell you the truth, managers want to adopt agile in their organisations because they believe agile helps them to cut down operation costs and faster delivery speed.
Again, there is always a trade-off between faster delivery speed and operations cost. And that is called “quality”.
It is nearly impossible to deliver a state of the art quality product with fast delivery speed.
Lack of documentation
Developers dislike reading documentation, they prefer not to write one too. There are a few key reasons why they don’t like it;
- Documentation gets get out-of-date easily;
- Documentation is boring and nobody really read on it
Although a lot of people keep saying agile promotes writing “just enough documentation”. As far as I know of, a minority of them are doing minimal documentation nowadays.
Let’s face it, we just want to do less to achieve maximum benefits, hence we found an excuse and believe documentation is not deemed to be a necessity in software development.
Now, let’s take a look at what happened to the Boeing 737 max incident.
Secondly, pilots were not told about the MCAS and how to respond when the system working unexpectedly. Unlike software development, pilots tend to take the handbook very seriously and part of their professional practice.
What’s worse, an article shows that the pilots were struggling to find any answers in the handbook manual before the plane crashes.
Emerging Design changes At Later Stage
One of the key benefits of agile is to “allow design changes, even at the later stage of development”.
I would say, that might work well for other situations, not when it is a mission-critical and hazardous software.
Should we blame the developers when an incident happens?
Well, no you can’t.
The reason is simple. Not all developers have such extensive domain knowledge. Even if they do, not all of them know the details like how riveting wings on, designing control yokes, fitting landing gears work and etc.
If you have been working under an agile environment, you will soon realize that agile rarely discusses risk management because everyone will tell you, it has short iterations cycle and quick enough to mitigate the risks.
From the Boeing 737 Max incident, I have learned that are few key risk items here:
- Using a piece of software to fix bigger engine issues;
- Only one sensor is being used to collect critical data;
Because we always believe “working software is a measure of progress”, agile teams tend to make bold assumptions based on an educated guess to make things happen.
However, everything is too late when a catastrophic event happens.
Again, I would like to re-state that I never worked for Boeing and do not know much about their software development team process. This incident definitely has a strong smell of agile.
As a professional, we should evaluate the situation and understanding the industry instead of blindly following the crowd and do what others say.
Agile might be a good fit for most situations however it might not be a top choice where human lives are involved.