YU2TA7KA's BLOG ~take one step at a time~

派生開発、組み込み開発周りのこと。

インパクトマトリクス[IM]とトレーサビリティーマトリクス[TM]

IMとTMに関する説明

「派生開発」を成功させるプロセス改善の技術と極意の2.5.3,2.5.4より。

IMとTMとは

 インパクトマトリクス:今回の変更要求に対して、変更する箇所をもっているタスクやソースファイルだけを配置する。
トレーサビリティーマトリクス:当該システムやサブシステムが扱う全てのタスクやソースファイルを配置する。そのため、今回の変更には該当しないタスクやソースファイルも「列」に存在する。

TMの役割

TMによって、担当者が認識した変更要求に対する"Where"の情報を表現し、これをレビューアが確認することで、"Where"の情報の漏れや誤りを発見する。IMによって、"Where"の情報を可視化することも可能であるが、IM作成時の変更箇所自体に誤りがある可能性があるため、TMを作成すべき。

自チームの現状と変更

自チームでは、仕様書にIMのような記載がありました。具体的には、変更内容を説明しているセルの隣のセルに変更箇所を全て記載しています。そのため、変更箇所記載の列は1列になります。そこで、TMに近づけるために、変更するソースファイルを列項目にして、変更内容行が影響する交点に、変更する関数名を記載するよう変更しました。関数外の変更の場合は、「○」を記載するようにしました。
変更にかかった時間は、既に変更箇所が抽出されているため、50項目程度に対して1~2時間程度です。
f:id:yuji-tanaak:20180217071525p:plain

考察

ほとんどの各変更仕様に対して、影響するソースファイルが1つだけ対応するマトリクスになりました。いくらかは複数のソースファイルへ影響する変更仕様もありました。このことから、変更内容の粒度が細かすぎるのではないかと考えています。また、変更後のマトリクスの活用方法として、変更後マトリクスの赤枠のようにグルーピングすることで、TMのような影響範囲を括り出せるのではないかと考えています。その他TMへ近づけるために、変更箇所のソースファイルを当該システムが扱うソースファイル全て、の状態へアップデートすることが必要と考えています。

仕様書の記載方法を変更した効果

まだ効果を確認できる段階になっていません。検証時に不具合が発生したときのデバッグで何かしら効果があるのではないかと考えています。結果が出たら、更新します。