10.不具合ゼロのためのソフトウェア設計まとめ

組込み

  

 製品出荷前のテストでの「不具合」発見を容易化するための工夫について、ここまで説明してきました。実は、そこには、ソフトウェアの設計上の工夫が含まれていました。ここでは、一度それらをまとめておきます。

(1)モニターできるように、重要なデーターはグローバル変数に格納する。

(2)モニター用のグローバル変数に、構造体の利用は避ける。

(3)一定時間間隔でデータを更新し、外部からサンプリングできる仕組みを持つ。

(4)計算処理の前に、計算利用するデータは全て揃えて置く。

(5)モニターする重要なデータは、割り込み処理に更新させず、固定周期処理で更新する。

(6)ハードウェア依存処理とアプリケーション処理を、独立して動作確認できる構造とする。

(7)アプリケーション処理を、テストが容易な単位に分割した関数で構成する。

(8)リアルタイムOSを活用する。

(9)例外割り込み処理を実装し、ランタイムエラーの原因を容易に把握し、是正できるようにする。

 上記の工夫をすることで、「組込み制御ソフトウェア」の製品出荷前の「不具合」発見が容易になり、開発はずいぶん楽になります。

 以降の章では、「不具合」早期発見のための工夫や、モデルベース開発に関連する、シミュレーション、制御設計ツール、「ブロック線図」によるソフト設計、自動コード生成の導入などについて、説明していきます。