UML モデルの追跡可能性

システムまたはプロジェクトを作成およ びモデル化する際には、問題点、設計に関する決定、 および変更された要求に対処するための新規要素を作 成する必要があり、それによってシステムがより複雑 になることがあります。 作成する要素間のトレース関係を設定すると、プロジェクト内の各要素の仕様を利害関係者が理解しやすくなります。

トレース関係を効果的に作成すると、要素間の有向トレース関係のトレールをたどって以下の情報を発見することができます。

追跡可能性のコンテキストで、実装、仕様、およびトレース関係は、以下のように定義されます。

抽象化のレベルとは、システムを考慮する際の複雑度のレベルのことです。 システムを構築またはモデル化する際には、抽象化の上位レベル (例えば、要求が主で詳細はほとんどない) から始めます。 そして、抽象化の下位レベル (例えば、より詳細な設計) へと進みます。 次に、抽象化の最下位レベルへと進みますが、これは、Java™ クラスなどの要素や多数の詳細を使用した具象実装などになります。 システムを抽象化のさまざまなレベルから 考慮することで、プロジェクト管理者、開発者、およ びテスターなどの利害関係者が、システムの仕組みをよりよく理解できるようになります。

要素は、順方向にも逆方向にもトレースすることができます。 例えば、IBM® Rational® RequisitePro® 要求などの要素を順方向にトレースして、それを実装するコード要素を発見したり、Java クラスなどのコード要素を逆方向にトレースして、その要素を作成する元になった要求を発見したりすることができます。

IBM Rational モデリング製品では、以下の 3 つのドメインの要素間における追跡可能性がサポートされています。

ドメインとは、ある知識範囲内にある要素のグループ化のことです。 ソフトウェア開発に関連するものとしては、要求ドメイン、モデリング・ドメイン、および実装ドメインがあります。 要求ドメインには、ユースケース、利害関係者の要求、およびフィーチャーなどの要求要素が含まれます。 モデリング・ドメインには、ユースケース、クラス、およびアクターなどの UML モデリング要素が含まれます。 実装ドメインには、Java クラス、パッケージ、およびインターフェースなどの実装要素が含まれます。

対象となる要素のタイプによって、追跡可能性を確立するための手順が変わります。

影響分析

システムへの新規フィーチャーの追加、問題点の解決、または既存機能のリファクタリングのどれが必要になる場合でも、既存要素の 1 つを変更するか、新規の要素を作成することによって、システムを進化させる必要があります。 システムを正常に進化させるには、システムを壊すことなく何らかの方法で変更する必要があります。 複雑なシステムを正常に進化させることは難題となる場合があります。システムの要素間に大量の依存関係が存在したり、各要素への変更がシステムを壊す可能性があるためです。

計画されている変更がシステム内の要素にどのような影響を与えるかについてよりよく理解することで、システムに悪影響を及ぼすリスクを最小化することができます。 システムに変更を行う前に、影響分析を実行して、変 更によって引き起こされる可能性がある結果を調べ たり、依存関係をダイアグラムで参照したりすることができます。 システムの要素間にある依存関係を可視化すると、システムの要素間にある依存関係およびシステムの仕組みを理解しやすくなります。


フィードバック