マトリクスでの論理検証(メモ)
マトリクスでの論理検証メモ
※個人的なメモです。
簡単に言うと、以下のような表を作ります。
+――――+――――――+――――――+――――――+――――――+
| |イベント-1|イベント-2|イベント-3|イベント-N|
+――――+――――――+――――――+――――――+――――――+
|状態-1| | | | |
+――――+――――――+――――――+――――――+――――――+
|状態-2| | | | |
+――――+――――――+――――――+――――――+――――――+
|状態-3| | | | |
+――――+――――――+――――――+――――――+――――――+
|状態-N| | | | |
+――――+――――――+――――――+――――――+――――――+
状態-1であるときに、イベント-1がきたらこうしてこうなる、
イベント-2がきたらこうしてこうなる、… というのをマスの中に書いていくという作業です。
これにより、ある状態で、あるイベントが発生したときの処理が明確になり、タイミング障害をつぶせます。
マスの中は、普通、以下の内容が書かれます。
- その場合の処理内容
- 処理後の状態
まずは期待値ではなく、現版での実際の処理内容を書いてください。
書いてみると、おそらく、処理内容がおかしい、状態遷移がおかしい、処理がなくてマスが埋められない(これがタイミング障害と呼ばれるもの)というのが出てくると思います。
作り方の順序としては、以下が良いでしょう(Excelが良いと思う)。
0) 何を起点にするか
起点をどこにするか、きめましょう。
1) 横軸(イベント)を抽出する。
どんなイベントを受けるのかをずらずら書いていきます。
たとえば「センサーからの機器検出通知受信」とか。
※私はイベントを先に抽出する方が楽だと思いますが、どうかな。
状態は、どれを状態と言うかで頭を使うので。
2) 縦軸(状態)を抽出する。
どんな状態があるのかをずらずら書いていきます。
普通は「イベントを待っている状態」が1番に来るでしょう。
3) 各マスを埋めていきます。