0.07秒のずれが原因のように受け取れるニュースが多いけどそうではない。JAXAの会見を見ればよくわかる。
直接の原因は、自動監視プログラムがタイムラグを考慮した設計になっていなかったこと。タイムラグはあって当然。
ただ、会見ではあまり触れられていないが、事前にその不具合を発見できなかったことのほうが問題深刻度が大きいと思う。不具合を発見できなかった原因は、監視対象の姿勢データが返ってきていない場合はロール角を0度と判定している仕様にしている事と、テスト段階でロール角0度でパスするケースでしかテストをしなかった事にある。
前者はなにかのトレードオフで意図的にこういう仕様にしている可能性はゼロではないが、その場合、0という値に異なる2つの意味を持たせながら、一つケースしかテストをしていないことになるので考えにくい。後者についてはランチャを旋回させなければテストできないという趣旨のことを言っているが、各種センサーが返す可能性のある値をシミュレーションできずに自動監視プログラムが正しく動くかどうかテストできるはずがないので、にわかには信じられない。
自動監視のヒントにしたという心電図で例えると、誰かに装着しているかどうかを判定する機能がなく、装着してないから波形がフラットなのか、装着しているにも関わらず波形がフラットなのか、その違いを考慮することなく、波形がフラットな状態でしかテストをしなかった、というところだろうか。 正常値として取りうる値を、データが返ってきてないという異常時の値としても使っているので少し違うか。