One of the life experiences that comes with being a three decade veteran of military procurement is you have been around long enough to know where all the important bodies are buried — case in point, the Boeing 737 MAX. What we are seeing in the two recent 737 MAX crashes is the the 20 year accumulation of professional toxic waste and decay in Boeing management that came with the first Clinton Administration’s cancellation of MIL-STD-499A SYSTEM ENGINEERING MANAGEMENT.

I was e-mailed a link today to this Daily Kos post on the 737 MAX :
Did Boeing ignore basic SW engineering principles?
Thursday March 21, 2019 · 8:34 AM CDT
and this passage just jumped out:
A few software engineering principles:
- Software engineering 101: validate your inputs.
- Software engineering 201: when something goes wrong, provide useful data to the human.
- Software engineering 301: for life-critical decisions, avoid single point of failure.
Until today, I had thought that aviation was *good* at software engineering. But my faith is shaken by the New York Times description today of what went wrong with the Boeing 737 MAX.
The above passes my professional “Bozo Test” of whether the poster knows what he is taking about regards software development. He does.
This is where that “military procurement life experience” I mentioned comes in. The timing of the development of the 737 MAX MCAS software was roughly 20 years after the Clinton Administration cancelled the majority of Mil-Specs in the mid-1990’s and in particular the one for system engineering management.
See:
MIL-STD-499A (NOTICE 1), MILITARY STANDARD: SYSTEM ENGINEERING MANAGEMENT (27 FEB 1995) [NO S/S DOCUMENT]., MIL-STD-499A (USAF), dated 1 May 1974, is hereby canceled without replacement.