トピック

概論ページの先頭へ

ソフトウェアを扱う場合に常に問題となる、品質の高いソフトウェアの提供とソフトウェアの迅速な提供との間の微妙な調和を達成する鍵は、プロセスの重要な要素を理解することと、プロセスのカスタマイズに関するガイドラインに従って、プロジェクトの特定のニーズに適切に対応することです。ソフトウェア開発プロジェクトの成功に役立つことが業界全体で証明されている最善の実践原則に準拠して、作業を実施します。

「小規模プロジェクト」の定義ページの先頭へ

「小規模」という言葉が表すものとして、プロジェクトの参加人数、プロジェクトの期間、開発するソフトウェアの量などが考えられます。このロードマップでは、「小規模プロジェクト」を次のようなプロジェクトとして定義します。

  • 参加人数が 3 ~ 10 人
  • プロジェクトの期間が 1 年未満

小規模プロジェクトの特性ページの先頭へ

小規模プロジェクトの主な特性は、正式さのレベルが低いということです。例外はありますが、プロジェクトに参加する人数が多くなり、製品が大規模で複雑になるほど、正式なプロセスの必要性が増します。たとえば、プロジェクトに地理的に分散した 100 人のチームがある場合や、複数の顧客や下請け業者と複数の関連製品を同時に開発している場合、5 人のチームで開発を行う場合に比べて、より正式なプロセスが必要となります。同様に、ミサイル誘導システムには、在庫システムをアップグレードする場合よりも正式な成果物が必要です。

では、なぜプロセスを利用するのでしょうか。プロセスを利用することで、成功した経験を繰り返すことができます。また、失敗した経験を排除したり、これらの経験を向上させることができます。特に、RUP では次のものが提供されます。

  • 最善の実践原則に関するガイダンス。
  • プロセスで考慮する必要がある作業、役割、成果物のセットと、これらに関するガイダンス。
  • プロジェクトに対して適切であると決定した技術を、効果的に適用するための詳細な情報。たとえば、UML 設計モデルで作業する場合は、適切なダイアグラムや、モデルの構築方法を参照できます。また、Rational ツールを使用する場合は、これらをプロセスの一部として効果的に使用する方法についてのガイダンスも利用できます。
  • プロセスに関する特定の問題を処理するために、プロセスをカスタマイズする方法についてのガイダンス。たとえば、プロジェクトに多量の要求変更がある場合は、要求を効果的に管理する方法についてのガイダンスを利用できます。

小規模プロジェクトでも大規模プロジェクトでも、必要な RUP 作業や成果物の多くは同じものです。相違は、成果物の形式や公式性のレベル、詳細、各作業に対する労力に関するものがほとんどです。このロードマップでは「小規模プロジェクト プロセス」を、公式性をほとんど必要としないプロジェクトと考えます。小規模プロジェクト プロセスの特性は、次のようになります。

  • 文書の数は減少し、詳細さも低下します。詳細なリスク管理計画書や製品検収計画書を作成する代わりに、これらのトピックを、ソフトウェア開発計画書の一部として 2 ~ 3 節だけで説明します。各反復のテスト計画は、反復計画書の 2 ~ 3 節になります。
  • 多くの場合、小規模プロジェクトの開始時には、最小限のソフトウェア開発ツールしか使用しません。プロジェクトが成長して成功するに従い (これが、小規模プロジェクトすべての目標です)、効果的なツールを使用してチームの最善の実践原則の実装を自動化することが重要となります。
  • 公式なレビューの代わりに、非公式な会議や討論を実施します。
  • 成果物の多くは、非公式に把握されます。ホワイトボードにリスク リストが作成され、ステータス評価は 2 ~ 3 段落分の電子メールで送られます。

作業の開始ページの先頭へ

小規模プロジェクトのプロセスを定義するには、まず次に示す RUP の基本構造をレビューします。

次に、これらの基本に対して既存のプロセスを評価し、脆弱な領域を修正することに集中します。多くのプロジェクトでは、最初に RUP の一部だけを使用し、段階的に新しいツールやプロセスを採用しています。

シナリオ: 小規模プロジェクトでの RUP の採用」では、小規模プロジェクトで、どのようにプロセスを定義するかについての例を示しています。プロジェクトのソフトウェア開発プロセスの定義と文書化に関する詳細なガイダンスは、「作業: プロジェクトのプロセスのカスタマイズ 」で説明しています。RUP Builder を使用してプロセスをカスタマイズする方法を示す、ツール メンターについても説明しています。

これらのツール メンターは、RUP プロセス コンポーネントを取捨選択してプロセスをカスタマイズし、プロジェクト固有のガイドラインを追加するなど、プロセス ビューを調整する方法を説明します。RUP Builder には、Small Project プロセス テンプレートの構成が含まれています。これは、「非公式な」テンプレートを含む RUP の小規模版の構成で、大規模でより形式的なプロジェクトに適用されるガイダンスが除外されています。小規模プロジェクトはこのテンプレートから開始して、プロジェクト固有のカスタマイズを適用します。

追加プロセスのカスタマイズページの先頭へ

小規模プロジェクトでは特に、「アジャイルなプロセス」に関連する実践原則やテクニックの採用が適しています。詳しくは、「概念: アジャイルな実践原則と RUP」や「../papers/smproj.htm -- このハイパーリンクは、生成されたこの Web サイト内に存在しませんWhite Paper: 小規模プロジェクトでの RUP の使用: eXtreme Programming からの発展」を参照してください。

Rational Unified Process   2003.06.15