現在自動車メーカーにて、制御モデルの作成をSimulink, Stateflowにて行っております。
現在使用しているモデルにおいては、列挙型の値を「<」や「>=」を用いて比較を行っている部分があり、違和感を感じております。
列挙型の値の例としては、High, Middle, Lowのような大きさを表す尺度だけではなく、Start, Stop, Stayなどの状態を表すものもあります。
Stop = 0, Stay = 1, Start = 2とすると、「StatusがStopでなければ」という条件を表すブロックとして、
「Status != Stop」ではなく「Status >= Stay」というように表現されており、非常にわかりにくくなっております。
これを改善するように指摘したところ、
「現状の『Status >= Stay』というモデルで動作に問題がないので、これを変更して不具合が混入するというリスクを犯したくない」という理由で却下されてしまいました。
そのため、「Status >= Stay」という表現に問題があるということを客観的な根拠をもとに主張しようと考えております。
そこで質問なのですが、「Status >= Stay」という表現がMISRA CやCERT C, ISO 26262やJMAABといったモデリングガイドライン、あるいはコーディングガイドラインに引っかかるといったことはあるのでしょうか?
(先ほど自分でもモデルアドバイザーを使用してみましたが、特に上記のような表現がもとで引っかかっているようなところはありませんでした、、、)