開発プロセス選択の要素
開発プロセスを選択する場合は,それぞれのプロジェクトの特徴や考慮点を理解したうえで,個々のプロセスに「テーラリング」できるエキスパート(プロセス・エンジニアと呼ぶ)の存在が重要になる。テーラリングとは,プロジェクトごとに成果物や作業手順を定義することを指す。プロセス・エンジニアは,上で述べたタイプごとの考慮点以外にも,図8に示したような観点でテーラリングを実施し,プロジェクトに最適な開発プロセスを定義しなければならない。

例えば,ミッション・クリティカルなシステムとそうでないシステムでは要求される品質レベルが異なり,品質保証体制や作業項目が違ってくる。また,地理的に分散した環境で開発するのであれば,それに応じたコミュニケーション計画や開発環境の整備が必要となる。さらに要員のスキルや経験が不足している場合には,開発プロセスやツールに関する教育・訓練を開発プロセスに組み込む必要がある。
プロジェクトマネジメントの観点では,どの開発プロセスでも,まずはプロジェクトの初期段階でスコープを明確にし,管理することが重要である。特に,反復型を採用した場合には,プロジェクトの後半で要件や仕様の変更が相次ぎ,プロジェクトがいつまでも収束しない事態に陥りやすいので十分注意して欲しい。
最近,「ウォーターフォール型はもはや役に立たない」,「今後は反復型開発プロセスが主流になる」といった意見をよく聞く。だが,これまで述べてきたことを考えると,そう単純な話ではないことが分かるだろう。大事なのは,それぞれの開発プロセスの特徴を理解し,プロジェクトに応じて最適な開発プロセスを選択し適用することだ。そのためには,ITエンジニア1人ひとりが開発プロセスについての知識を深める必要がある。本記事がより詳しい勉強のきっかけになれば幸いである。