システム開発の手順の中で品質管理はどう行われているか知ってる?

パソコンを見ながら打ち合わせをする風景

更新日:2017年09月14日 | 公開日:2016年11月07日

システム開発で重視されるポイントは当然ですが、納品物が当初依頼した目的を達成できている品質を確保しているかです。
しかし、実は最初に上流工程で「要求定義」、「要件定義」を行い「外部設計」や「内部設計」を済ませた後は、とにかく納期優先でプロジェクト管理が進行します。
しかし、発注者側としては途中チェックなどを含め最後まで品質に対するこだわりたいはずです。
これを実現するためにはどうすればよいのでしょうか。

プロジェクトマネジメントとプロダクトマネジメントの違い?

コミュニケーションをとるイメージ

伝統的な「ウォーターフォール型開発」の場合、プロジェクトの品質は最初の上流工程でほぼ決まると言っても過言ではありません。
もちろん、途中のコーディングの段階でも品質は求められるわけですが、あくまでもその時の品質とは、最初の設計通りに過不足なくできているかどうか、が基準になります。
言い換えれば、最初に設計した以上に品質の高い納品物は上がってこないといえるのです。

この意味で、ウォーターフォール型開発においては、「プロジェクトマネジメント」=「プロジェクトが予定通り予算内で納期通り開発できるかどうかを管理すること」となります。

これに対して、納品物の質のチェックを発注者とともに途中段階で行い、満足行くレベルに達したものを小さくリリースしていく「アジャイル型開発」という方法が最近注目を集めています。
この開発手法では、プロジェクトの開発単位を細かく分け、ひとつひとつにゴールを設けます。
つまり最終的に完成する前にも、部分的にリリース可能な製品を作り上げていくというタイプの開発方法になります。

例えば、ある業務システムの構築において、最優先事項は「全国の事業のごとの日報を本社の担当者がその日のうちにみたい」ということだったとします。
これをウォーターフォール型でやると、バックアップシステムはどうする、入力手順やチェックはどうする…といった全体像を考えます。
しかし、アジャイル型開発では、まず、手書きのスキャンや原稿のエクセルシートでもよいので、ファイルサーバを立てて一箇所にデータを集約し、そのファイルを本社の担当者がオンラインで閲覧できるところまでシステムを完成させて、それをリリースして納品し、担当者に使ってもらいます。

そして、その閲覧システムの使い勝手を評価しながら、次に必要なのはバックアップシステムなのか? それとも、日報の項目の検索なのか? といった優先順位を決め直します。

つまり、アジャイル型開発では事細かく決められた手順で全体のシステムを滞りなく完成させるというプロジェクトのマネジメントが最優先ではなく、そのシステムによって何が可能になるのかというプロダクトの品質向上が最優先事項になっているのです。

この意味で、伝統的なウォーターフォール型開発ではプロジェクトマネジメントが重要であり、アジャイル型開発ではプロダクトマネジメントが重要だといえるでしょう。

システム開発の手順の中でのふたつのPMの役割の違い

パソコン

このように整理してみると、伝統的なウォーターフォール型開発ではプロジェクトを管理するプロジェクトマネージャー(PM)の役割が重要で、アジャイル型開発ではプロダクトの品質を向上させるプロダクトマネージャー(こちらもPM)の役割が重要であることがわかります。

発注者にとっては、プロジェクトを管理するプロジェクトマネージャー(進行管理型PM)は、納期通りかつ予算の範囲内でプロジェクトを仕上げてもらえる責任者として付き合えばよいということになります。
連絡内容についても基本的に「順調ですか?」という発注者側からの問いかけに対しては、「ええ、大丈夫ですよ」であるとか「ちょっと遅れが出そうで、そのことについてご相談があるのですが」といったことに終始します。

しかし、プロダクトの品質を向上させるプロダクトマネージャー(品質管理型PM)の場合には、例えば「納品してもらった日報ファイルシステムですが、やっぱり、項目ごとの検索ができないとだめだ、という意見が出ています」という問いかけに対して「では、データベースのバックアップが次の優先順位でしたが、そちらを優先にしましょう。ついては、詳細の打ち合わせをお願いします」などのように、より製品の内容に関するつっこんだ話し合いが必要になってきます。

まとめると下記のようになります。

品質管理型PMの役割
  • 納期管理
  • 予算管理
  • 納品テストの手配
  • など
品質管理型PMの役割
  • 納期管理
  • 予算管理
  • 納品テストの手配

などがあります。

品質管理型PM
  • 発注者とともにテストをくりかえす
  • 発注者の要求をプロジェクトの途中でも常に吟味
  • 契約の優先順位の変更に柔軟に対応

【まとめ】見積りを取る段階でシステム開発手順の検討を

以上、システム開発の手順の中でのふたつのPMの役割の違いについて整理しました。
以前はシステム開発の失敗の多くが、「納期がオーバーした」「追加予算を要求された」といった、プロジェクトマネジメントに関するものであったのに対し、変化の激しいIT環境の中、最近では「納品されたシステムが結局陳腐化していて使い物にならなかった」「現場からの要望に対応してくれなかったので、あまり使われないシステムになってしまった」などの品質に関するプロダクトマネジメントの失敗に移ってきています。

こうした点に注意しながら、発注した後、ソフトウェア開発の手順が具体的にどのように進むのか、途中段階でも品質の向上に関して相談に乗ってもらえるのか、などについても相見積もりを取る段階できちんと判断することが大切です。

日本最大級の発注業者比較サイト「アイミツ」ではシステム構築に関する専門知識を持ったコンシェルジュが、信頼のおける業者を完全無料で紹介することができます。

まずはお気軽にお問い合わせください。
すぐれたコンシェルジュが、あなたの会社に合った企業選びを全力でお手伝いさせていただきます。

いま知りたいこと
コンシェルジュが解決します!

コンシェルジュサービスは
3万社以上が利用している無料の相談サービスです。

コンシェルジュ