This part of the article published in IEEE Spectrum's site
(not their official view) is pretty much my viewpoint
Finally, the software relied on systems known for their propensity to fail (angle-of-attack indicators) and did not appear to include even rudimentary provisions to cross-check the outputs of the angle-of-attack sensor against other sensors, or even the other angle-of-attack sensor. Big strike No. 3.
...
Another difference is between the autopilots in my system and that in the 737 Max. All of the CAN bus–interconnected components constantly do the kind of instrument cross-check that human pilots do and that, apparently, the MCAS system in the 737 Max does not.
(bolding mine)
MCAS software design violates the fundamental principles of quality automated monitoring/response software.
If there were two separate flight computers each with access to (in theory) identical sensor data, then a basic principle says that MCAS should NOT be permitted to take any action without agreement between both computers. Boeing didn't include that basic precaution.
That's why I think Boeing bears the
primary responsibility for 350+ people being dead.