「XDDP」は派生開発に特化した開発アプローチであり、派生開発の特徴である「短納期」とか「部分理解」すなわち全体を理解できない状態で変更作業が強いられることによる思い込みと勘違いの問題などに対応するためにいろいろな施策が講じられています。

たとえば、

  • 成果物とプロセスの合理的な連鎖
  • 変更プロセスと機能追加のプロセスを分離
  • 「変更3点セット」の成果物

などがその代表的なものです。

XDDPが提供するこれらの施策を支えているものに「USDM(Universal Specification Describing Manner)」と「PFD(Process Flow Diagram)」という技法があります。

「USDM」は、「仕様は基本的に要求の中の動詞にある」と考えており、それを効果的に実現するために要求と仕様を階層構造の中で表現します。これによって従来は設計工程の中で行われていた仕様の抽出を、要求仕様の策定段階で可能にしました。

たとえば、追加機能の要求仕様書の仕様書としての精度が高いということは、それだけベースライン設定後の仕様変更が少ないことを意味します。仕様変更率が5%以下という状況の中では、途中で発生した仕様変更に対してきちんと変更制御を機能させることができ、仕様変更に伴う混乱も減少します。これは「短納期」という中では重要なことです。

また、この要求仕様の構造を「変更」に応用し、「変更要求」と「変更仕様」の階層構造での表現、さらに「before/after」で表現するというルールを取り入れることで、変更の影響箇所の気付きを支援しています。

これに対して、「PFD」は合理的なプロセスを設計するためのツールとして重要な役割を果たしています。「短納期」という制約の中では無駄な作業は排除しなければなりません。 PFDは成果物とプロセスの生成関係を図で表現します。つまり、この成果物はどのプロセスから生成されるもので、それはどのような成果物から生成されるのかということが一目でわかります。

ただし、この生成関係が適切なものかどうかはPFDの「図」だけでは判断できません。成果物の構成の定義とこれらの成果物をどのように処理して目的の成果物を生成するのかというプロセスの定義を伴ってはじめて「PFD」として機能します。多くの場合、これらの定義書を書いていく中で、それまでの考え方にモレがあることに気づいたり、さらには目的の成果物を生成できないことに気づくことができます。

プロジェクトの成功の秘訣は、今回の要求にマッチしたプロセスと成果物の合理的な連鎖が設計され、それをしっかりシミュレーションしたかどうかにかかっています。PFD(成果物とプロセスの定義を含む)はそれを可能にするツールです。

また、成果物とプロセスが合理的に連鎖していることが見積りの精度を高め、また進捗管理の中でも見積りの調整を可能にします。サイズ見積りの連鎖が見積りの調整を可能にしているのです。

「派生開発」という制約が多くあるプロジェクトでは、無駄な作業の排除、必要不可欠な作業の発見、進捗管理の中での開発アプローチの調整が不可欠であり、「USDM」や「PFD」といった手法が「XDDP」という派生開発に特化した開発アプローチを支援しているのです。

派生開発推進協議会 初代代表 清水 吉男