トレーサビリティとは?その意味と管理の方法を解説

 2021.12.08  株式会社システムインテグレータ

食品や医薬品、工業製品などでは、その製品がどのような原料や素材を使用してつくられ、調達方法から加工の内容、流通経路などが追跡できる仕組みが備わっています。この仕組みをトレーサビリティといいます。

では、IT業界のトレーサビリティとは、どのようなことをいうのでしょうか。今回は、IT業界でのトレーサビリティの意味とその管理方法について解説します。

トレーサビリティとは

トレーサビリティの意味

トレーサビリティとは、さまざまな業界で使われること場で、その製品の原料や素材、構成から現在の状態になるまでの加工内容や流通経路が追跡できること、または追跡するための仕組みのことです。

トレーサビリティという言葉が広まったのは、2003年に農林水産省から発表された「牛肉のトレーサビリティ」です。これは、食の安全を確保するため、すべての牛を識別できるようにし、生産地から仕入、販売の記録をとることでその過程を追跡できるように義務付けています。さらに、その後は牛肉以外にも同様の取り組みを行って「食品のトレーサビリティ」と呼ばれています。

製造業では品質管理、安全管理の目的で製品の部品をシリアル番号やロット番号などで個別管理しています。近年ではサプライチェーン管理(SCM)も拡がり、調達や流通、製品回収に至るまで迅速に行える仕組みが必須となっています。

他にも、分かりやすい例としては、宅配の追跡システムがあります。たとえばネットショッピングで商品を購入すると、その商品が今どこにあり、どの経路を通っていつ届くかがわかるようになっています。このように追跡できる仕組みがトレーサビリティです。

それでは、IT業界でのトレーサビリティとはどのようなものをいうのか、簡単に解説します。

 IT業界でのトレーサビリティ

IT業界でのトレーサビリティは、対象のシステムやソフトウェアの設計・開発過程を可視化し、品質を保証するものです。

システム開発でよく用いられる開発手法であるウォーターフォールでは、要件定義→基本設計→詳細設計→開発→単体テスト→結合テスト→システムテストという流れで開発を進めていきます。ウォーターフォールのポイントとして工程1つ1つを確実に進めないと、不備や変更が発生した場合手戻りが大きくなるという点があげられます。

そのため、次工程に行く前に万が一の手戻りを防ぐためのチェックを行います。これが「トレーサビリティチェック」です。たとえば、基本設計書、詳細設計書で作成された設計書の内容が要件定義の内容を漏れなく取り込んでいるか、テスト仕様書の内容は設計書の内容尾漏れなく確認できているか、というチェックを行います。

トレーサビリティのメリット

トレーサビリティを行うことで、要件定義(顧客要件)から出発して実際に開発されたプログラムまで、どのような設計やテストを経て開発されたものか詳細に確認できるようになります。これにより、得られるメリットを3つ解説します。

ソフトウェア品質の向上

トレーサビリティを行うことで、要件の考慮漏れや設計ミスなどを早い段階で発見でき、ソフトウェアの品質を高められます。また、ウォーターフォールでは仕様変更や不具合によるスケジュールの見直しや工数増大の影響が大きい開発手法であるため、トレーサビリティによって手戻りの防止にも役立ちます。

リスク管理の強化

テストを実施して不具合が見つかった場合に、その不具合の原因を特定しやすくなります。プログラミングのミスか、設計ミスか、原因による影響範囲などを調査する手間も削減できます。

顧客満足度、信頼度の向上

トレーサビリティを行うことで顧客要件をきちんと満たすだけでなく、顧客要件からどのように設計・開発に至っているかを可視化するため、開発経緯も確認も可能です。これにより、顧客から信頼され、満足度向上にも繋がります。

以上のように、トレーサビリティは品質管理という点で大きなメリットがあり、それにより顧客満足度向上につながります。続いては、具体的なトレーサビリティの方法をご紹介します。

トレーサビリティマトリクス

V字モデルでのトレーサビリティの例

ウォーターフォールの開発手法において各工程の開発工程とテスト工程を対応させたモデルをV字モデルと言います。具体的には、単体テストにおいて詳細設計の内容を実装しているか、結合テストで基本設計の内容を実装しているか、システムテストにおいて要件の内容を満たしているか、というテストを行います。

この各テスト工程において、不具合を検出した場合、その原因を即座に調査できなければなりません。この時トレーサビリティができると、速やかな原因特定が可能になります。つまり、開発工程の中で、前工程の内容がきちんと網羅されているか確認できるようにします。image1

トレーサビリティマトリクスとは

トレーサビリティマトリクスとは、要件が各工程のどこで実装され、該当するプログラムがどれであるか、一目でわかるようにまとめられたマトリクス表のことです。これがあると、プログラムで不具合が発生した場合、それが各工程のどの部分なのかわかるだけでなく、要件に対応したプログラムの有無がわかるため、実装漏れも防ぐことができます。

大規模な開発においては、開発者とテスター(テストを実施する人)が別々のケースがあります。そのような場合、不具合を発見してもどのプログラム、どの設計によるものかを見つけるのは困難なケースが少なくありません。

トレーサビリティマトリクスによって不具合箇所の特定を速やかに行うことで、作業効率の向上につながります。

トレーサビリティマトリクスの書き方

ここでは、トレーサビリティマトリクスの簡単な例をご紹介します。左端に要件、右側に各工程の成果物において、要件に対応する内容を記載します。image2

対応内容の記載と共に、実際にその内容を実装している成果物のファイルの場所や記載箇所があわせて管理されていると、速やかに確認できるため役立ちます。このように、要件に対して実装内容を可視化することで開発工程の中で実装されていく過程を追跡できます。

トレーサビリティの管理

トレーサビリティマトリクスはExcelなどのOfficeソフトで簡単に作成できます。また、記載内容をテスト項目として扱い対応させればマトリクス表を埋めるのも容易です。規模が大きい場合はAccessなどのデータベースを利用するのも一つの方法です。

他にも、製造業や食品業ではトレーサビリティ管理システムを採用している場合が多く、IT業界向けにもトレーサビリティ管理ツールが存在します。それらを活用するとよいでしょう。

新規CTA
新規CTA

まとめ

本記事では、IT業界におけるトレーサビリティについて解説しました。トレーサビリティを実現する方法としてトレーサビリティマトリクスをご紹介していますが、このようなマトリクス表を作成することで、品質向上や顧客満足度向上など大きなメリットが得られます。

大規模開発プロジェクトや高い品質を求められるシステム開発プロジェクトでは、ウォーターフォールが採用されることが多いため、トレーサビリティも非常に重要です。また、アジャイル開発でもスプリント内で行う開発の品質向上に利用できます。ぜひ今回ご紹介した内容をプロジェクトで取り入れ、品質向上に役立ててみてください。

CTA

RECENT POST「コラム」の最新記事


コラム

これからのソフトウェア設計書に求められる書き方とは?

コラム

ミスの少ない「筋の良い」設計書の書き方とは?

コラム

ウォーターフォールとは?~各工程について解説~

コラム

ローコード開発とは?〜特徴やおすすめプラットフォームを紹介〜

トレーサビリティとは?その意味と管理の方法を解説