IBM® Rational® Rhapsody® DiffMerge では、2 つのユニットを比較して、特定のユニット内の要素の一致を検出します。ユニットは、同じ IBM Rational Rhapsody プロジェクトのものでも、同じユニットの異なる 2 つのバージョンのものでもかまいません。
基本認識モードの場合は、基本ユニットである、3 番目のユニットを指定することもできます。Rational Rhapsody DiffMerge を使用した並行開発を参照してください。比較アルゴリズムは、以下のように動作します。
- 2 つのモデル要素のタイプ (つまり、Rational Rhapsody で認識されるメタクラス)、名前、および親モデル要素が同じである場合、それらは一致と見なされます。要素が名前で一致しない場合は、Rational Rhapsody DiffMerge によって、ID による一致の検出が試行されます。一致する要素は常に同じ親に属し、同じメタクラスを持っています。
- 2 つのモデル要素が一致する場合、そのすべての属性と他のモデル要素への参照が比較され、差分があるかどうかが確認されます。
- 2 つのモデル要素が一致する場合、その集約されたモデル要素も同様に比較され、差分があるかどうかが確認されます。これらのモデル要素はメタクラスおよび名前または ID で突き合わされ、その属性および関係に差分があるかが確認されます。集約が存在する場合も同様に比較が行われます。基本的に、プロセスはすべての集約で再帰的に実行されます。
また、必要に応じて基本認識比較の自動マージおよびわずかな差分対わずかではない差分も参照してください。