Develop with pleasure!

福岡でCloudとかBlockchainとか。

RUP

反復型開発アプローチを主とするRUP。

方向付けフェーズ→推敲フェーズ→作成フェーズ→移行フェーズというイテレーションの中において各フェーズにおける成果物は、最終的にプロジェクト終了時に完了するため、フェーズ遂行時は発展途上。ただサイクルの中で上位フェーズから下位フェーズへの繋がりがあるのは確か。

反復型の開発においては、各フェーズにおけるマイルストーンを定義するがこれも結局、各サイクルにおける成果物の完成度をどこまで設定するかに左右される。そしてその完成度も、顧客との要件及び認識の合意レベルから判断されるべきものなんだろう。

アジャイル手法の中でも有名なXPで、開発途上で実装コードやテストコード以外に成果物を作らないというのも、プロジェクト管理上の要点である「変更を管理する」という主点において、変化に対応しやすくするための1つのアプローチ。そのため、プロジェクト終了時に必要なドキュメントは一式きちんと作成されているのが正(プロジェクト終了後に仕様の管理ができないため)。都合良くドキュメント作らないという認識は、結果的に要求を管理できていないことになりNG。まぁ、仕様の管理が最終的に「ドキュメント」と言われる形式にこだわった形で残る必要は無いが、ただ関係者が仕様を共通理解として認識するために必要なものという点では、何らか形のあるものに落ちるしかない。

結局、反復型開発における成果物をどのフェーズでどう作るかは、顧客との開発体制/プロセス、要求の管理といったところへの依存度が強いため、 PJ毎に(顧客に応じた)初期設定をして、各フェーズ移行時に次フェーズに対し前フェーズの成果物が関連付けられるような体系が最低限必要になるんだと思う。 (RUPも明確に成果物はこれと定義していないし。)