ナレッジNEW
トレーサビリティ管理とは。具体的な方法や管理ツールを解説

目次
システム開発では、エンタープライズ系システム、組み込みシステムを問わず、どのようなシステムや製品を作ろうとしているのかという要求に基づき、基本設計、詳細設計、実装といった具体的な実現手段へと落とし込まれます。規模が大きく、長期間にわたって使用されるシステムほど、要求と実現手段の関係性が複雑になっていき、一部の機能の追加や修正が予期せぬ影響を及ぼすことがあります。
本記事では、このような影響による課題を解決するための一つの手段として取り入れられている「トレーサビリティ管理」に焦点を当て、なぜトレーサビリティ管理が必要なのか、一般的な手法があるのかについて解説します。
トレーサビリティとは
皆さんは、「トレーサビリティ」という言葉から何を連想されるでしょうか?
本記事では、システム開発における「トレーサビリティ」に焦点を当てますが、一般的には「食品のトレーサビリティ」を思い浮かべる方も多いことでしょう。同じ「トレーサビリティ」という言葉が使われていますが、これらは似て非なるものです。
「食品のトレーサビリティ」では、消費者が食品を手にするまでの生産・流通・加工といったモノの経路を追跡(トレース)できることを指します。そうすることで、万が一、食中毒などの問題が発生した場合、その経路上の問題箇所を迅速に特定し適切な対策を講じることができます(図表1)。

一方で、「システム開発のトレーサビリティ」は「システム要求」を実現するための「基本設計」、「詳細設計」、「実装」といった流れにおいて、文書内や文書間の関係を追跡(トレース)できることを指します(図表2)。

文書間の関係を追跡(トレース)できるこのトレース情報は、上流工程で定義された要求やインプットが下流工程で正しく実現手段として落とし込まれているか、機能追加・変更時に関連するドキュメントにどのような影響が及ぶのか分析するために管理します。
トレース情報を管理する活動は、システムの品質を確保するために必要不可欠であり、このための専用の手法やツールが存在します。
トレーサビリティの管理について
前述の通り、システム開発のトレーサビリティは食品のトレーサビリティと異なる側面があります。本記事ではシステム開発におけるトレーサビリティ管理の手法を深堀して解説します。
システム開発のトレーサビリティ管理では、システムに対する要求が、基本設計、詳細設計、実装の各工程でどのように実現手段として落とし込まれているかを管理します。
また、V字の開発工程において基本設計に対応する統合テスト、詳細設計に対応する結合テストなどのように、設計項目に対してテストが網羅的に落とし込まれているかを確認できるようにする必要があります。
このことにより、上流工程での要求・設計が正しく下流工程に落とし込まれているか(一貫性)、上流工程で定義された要求や設計項目が下流工程に網羅的に落とし込まれているか(網羅性)、要求・設計変更時に関連ドキュメントが漏れなく改定されているか(影響分析)の確認が容易になります(図表3)。

トレーサビリティ管理のメリット・デメリット
システム開発においてトレーサビリティ管理を行うことのメリットとデメリットを見ていきましょう。
トレーサビリティ管理は、一貫性、網羅性、変更時の影響分析といった確認を容易にできるようにするものです。要求に従って正しくシステムが作られているかを確認しやすくすることで、システムの品質向上を促進します。これがトレーサビリティ管理の最大のメリットであると言えるでしょう。
一方、トレーサビリティ管理を適切に行うためには、情報の作成に労力が必要です。確保するための手法は複数あるものの、いずれも人の作業を完全になくすことは難しく、工数やコストがかかることがデメリットと言えます。品質とコストがトレードオフの関係にあるため、製品・システムの品質レベルに応じて管理レベルを見極めることが求められます。
設計項目を細かくトレースすることで、変更時の影響分析が詳細になりますが、そのための工数も増加します。従って、製品・システムの特性に合った適切な粒度を見定めることが重要です。特に重要な機能やサブシステムに対して粒度を細かくするといった管理方法も有効でしょう。
トレーサビリティ管理の方法
以下に、具体的なシステム開発のトレーサビリティ管理手法を紹介します。
ここで紹介するトレーサビリティ管理手法は、実際に筆者が多くのプロジェクト担当者から収集した情報や経験に基づきまとめたものです。
タグ付け型
タグ付け型のトレーサビリティ管理では、例えば設計やテストの項目内に、上流工程のどの項目を参照しているのかを示すため、タグと呼ばれるようなIDを入力して、上流工程の項目を特定できるようにします。
設計担当者が設計しながらタグを入力できるため、比較的容易にトレースできるのですが、下流工程から上流工程への一方向でしか関係性を確認できないという特徴があります。もちろん、逆方向にタグ付けすることで、上流工程から下流工程への関係性を確認することも可能です。ただし、実際には、工数の関係などから設計文書で双方向にタグ付けしているようなケースはまれでしょう。
この特徴により、上流工程側で定義された設計項目が網羅的に下流工程側に落とし込まれているかの確認が難しいというデメリットがあります(図表4)。

TM管理型
TM管理型のトレーサビリティ管理は、例えばExcelを使ってトレーサビリティマトリクス(TM)を作っていくという管理手法です。
TMは左側に最上流工程の要求や要件を縦に並べ、右側に下流工程側の基本設計や詳細設計での成果物の項目を並べる構造でトレーサビリティを一覧できる形式であることが一般的です。
マトリクスという名が示す通り、上記を縦と横の二次元で表現します。
一方、シンプルなマトリクスの表現では、工程間で詳細化される項目の流れを、一見して追いづらくなるため、変形して表現することも珍しくはありません。
例えば、ベリサーブでは「要求マップ」という名称で、上流工程の成果物の各項目に対して、右隣に対応する下流工程の設計やテストの項目を並べることで、上流から下流を網羅的かつ階層的に確認しやすくした帳票を用いています(図表5)。
直感的に把握しやすい帳票であることから、作成担当者に特別なスキルが要求されることはあまりありません。ただし、上流工程起点で下流工程へのつながりを見ていくため、一対多の関係性は把握しやすいのですが、多対多の関係性だと全体像を把握することが難しくなってしまうことを理解した上で用いるようにしています。
TM一般に言えることとして、視認性に優れているものの、スプレッドシートを用いると表の構造が複雑となり、設計項目の追加・削除、トレーサビリティの追加・削除といった変更が入った場合に、手作業だとTMのメンテナンス工数が大きくなってしまう傾向にあるといったデメリットが考えられます。
こういったことから実際の開発現場において、設計変更によるTMのメンテナンスは、すでに作ってあるTMを編集するのではなく、ゼロベースで作り直すことで最新の状態を保持する運用がされていることも多いようです。

専用ツール利用型
タグ付け型、TM管理型のデメリットをカバーするためのトレーサビリティ管理手法として、専用ツール利用型の管理手法が挙げられます。
トレーサビリティ管理の意義として前述した「一貫性」「網羅性」「影響分析」について、確認を容易にするための専用の機能・画面が備わっているものが多くあります。こういった専用ツールをうまく使いこなせれば、トレーサビリティ管理に関して課題を抱えているプロジェクトのQCD向上に寄与することが期待できます。
業界別のトレーサビリティ管理の導入状況
続いて、業界別のトレーサビリティ管理の導入状況を見ていきます。紹介する導入状況は、トレーサビリティ管理手法と同様に、さまざまなお客様から筆者が収集した情報に基づいて、用例としてまとめ直したものです。
自動車
自動車の制御システムには非常に高い品質や安全性が求められ、ISO 26262などといった機能安全規格によってトレーサビリティ管理を行っていくことが要求されています。日本国内では、専用ツールを用いたトレーサビリティ管理が進んでいる分野の一つと考えられます。
医療機器
医療機器は高品質が求められる分野で、要求と設計間のトレーサビリティが必要です。最近、専用ツールの利用が増えつつありますが、自動車ほどの普及には至っていないようです。
金融システム
金融システムでは、多くがTM管理型を採用しており、専用ツールの普及はまだ限定的のようです。
その他
ここで紹介した分野以外でも、多くのプロジェクトでトレーサビリティ管理が行われています。ただし大半がタグ付け型またはTM管理型で、専用ツールを使用しているプロジェクトは少数と思われます。
トレーサビリティシステムについて
ここまでの中でトレーサビリティ管理の手法の一つとして、専用ツールを使った管理手法を紹介してきましたが、専用ツールにもいくつかのタイプがあり、大きく以下の三つに分類されます。
設計記述型 | 設計書や仕様書エディタとトレーサビリティ管理機能が一体型のツール。 |
---|---|
タグベース型 | Wordといった文章形式やExcelなどスプレッドシート形式で記述されたドキュメントを取り込み、タグでトレーサビリティを確保するツール。 |
ドキュメント取り込み型 | 設計ドキュメントを取り込んで、トレース情報を生成する機能を持ち、タグ付けされていないドキュメントにも対応可能なツール。 |
代表的なトレーサビリティ管理ツール
トレーサビリティ管理ツールの代表例として、ベリサーブが開発・提供しているトレーサビリティ管理ツール「ConTrack」を紹介します。
「ConTrack」は先ほどの三つの分類のうち、ドキュメント取り込み型に該当します。
WordやExcelなど多種多様なアプリケーションで作成された設計ドキュメントをそのまま取り込むことにより、一定のルールに従って自動的に項目の抽出を行います。この項目間で線を結ぶようなイメージでトレース情報を作っていけるのが「ConTrack」の特徴です(図表6)。
また、「ConTrack」はタグ付け型で作成されたドキュメントにも、取り込みとタグをベースにしたトレース情報を生成するため、純粋なドキュメント取り込み型ではなく、タグ付け型で作られた設計ドキュメントとタグ無しのドキュメントの間でもトレーサビリティを確保できます。
これ以外にも、設計ドキュメントが更新された際の変化点分析機能や、ファイルの該当箇所へのジャンプ機能などにより、「一貫性」「完全性」「影響分析」について、容易かつ直感的に確認できるような工夫を随所に盛り込んでいます。

効率的なトレーサビリティ管理を実現するに当たって
ここまで業界別に見ても、トレーサビリティをシステムとして専用ツールで確保していくプロジェクトは、日本国内においていまだ少数にとどまっているのですが、それはなぜなのでしょうか。
専用ツールの普及が進まない理由として次の三点が考えられます。一つ目はトレーサビリティ管理ツールが十分に知られていないこと、二つ目は現状の手法で大きなトラブルがないこと、三つ目は専用ツールへ移行する初期コストが大きいことです。
市場の変化によりトレーサビリティ管理が重要視されるようになり、適切な開発手法を取り入れないと限界を迎える可能性があります。トレーサビリティ管理は、将来の損失を防ぐための重要な活動であり、専用ツールを使うことでその効果を高めていけると筆者は確信しています。
筆者はトレーサビリティ管理ツールを開発している者の一人として、こういったツールが多くのプロジェクトで使われるようになり、健全なプロジェクト運営の一助となることを切に願っています。
■関連サービス■
■参考■
(※1) 農林水産省サイト 食品のトレーサビリティ
この記事は面白かったですか?
今後の改善の参考にさせていただきます!