一般社団法人 全国個人事業主支援協会

COLUMN コラム

  • システム開発におけるプロジェクト管理について

視野を広げてもらうため、お客さま先の情シス若手向けにまとめました。

————————————————
システム開発のプロジェクトマネジメントとは?
————————————————
まず念頭に置いておきたいのは、プロジェクトマネジメントは、システム開発を成功させるために取引先と
チームメンバーの間に立ち、交渉や調整を行なう業務であるということです。

どのような開発を行なう上でも、プロジェクトを成功させるためには、開発期間や人員、予算といったリソースの
有効活用が欠かせません。システムやソフトウェア開発は、数ヶ月や数年という長い期間をかけて行なわれるケースが
多いため、入念な準備や進捗管理が不可欠となります。「プロジェクトマネジメント」とは、サービス・製品開発に
おける機能要求を、工期・予算・人員という制約の中で達成させるよう計画し、実行することです。

この役割を担うのは、プロジェクトの最高責任者であるPM(プロジェクトマネージャー)の役目になります。
端的に言えば、企業の社長が「会社経営の指揮」を行なうように、PMは「開発プロジェクトの指揮」を担う存在です。
このPMが行なうプロジェクトマネジメントには、大きく分けて以下の5つの業務があります。

————————————————
システム開発におけるプロジェクトマネジメントの業務
————————————————

業務 詳細
1.要件定義 「何をどうやっていつまでに開発するか」を関係者と打ち合わせする
2.プロジェクト計画書の作成 システム開発を成功に導く「具体的な計画」を立てる
3.スタッフや環境構築の準備 開発スタッフのスケジュール管理や機材の準備などを行なう
4.進捗確認 スケジュール通りにシステム開発が進行しているかを管理する
5.評価 次回の開発に活かす目的で、プロジェクトのレビューを実施する

1.要件定義
 PMが担う「要件定義」とは、スタッフや取引先と打ち合わせを行なうことです。開発の目的や予算、納期と
 いった要望のヒアリングなどを進め、「何をどうやっていつまでに開発するか」といった要素を決定します。
 この時点で、実現の可能性が低い場合はきちんとクライアントへ伝えて、落としどころを見つけておくことも
 欠かせません。
 また、要件定義の段階で「成果」というゴールの共通認識を築いておくことも重要です。早めに「成果」を
 明確にしておかないと、システム開発の進行や成果物に悪影響を及ぼすこともあります。要件定義の時点で、
 クライアントに自社の体制やスケジュールを伝えておき、「仕事がしやすい環境にあらかじめ整備しておく
 こと」も、プロジェクトマネジメントの重要な役割です。

2.プロジェクト計画書の作成
 要件定義によって目標が定まったら、システム開発を成功に導く「具体的な計画」を立てます。各工程に
 QCD(品質・コスト・納期)を定め、役割分担ができるようスコープ(作業範囲)を明確にして作業を構造化します。
 ちなみに、開発における要件定義や計画の段階を「上流工程」とも呼びますが、上流工程の時点でリスクを
 最小限に抑えることができれば、プロジェクトが成功する可能性も大きく向上します。
 プロジェクトマネジメントの中でも、PMの力量が問われる大切な工程と言えます。

3.スタッフや環境構築の準備
 プロジェクト計画書が完成したら、開発スタッフや環境構築の準備に入ります。
 エンジニアの配置やスケジュール管理、システム開発に必要となる機材やソフトウェアの準備などを行ない、
 実際に開発がスタートする流れです。
 外部の開発企業に依頼をする場合は、PMが外部パートナーと交渉を行ないます。プロジェクトを推進する
 マネージャーとして、社内と社外の関係各所を巻き込みながら万全の準備を整えるのです。チームを統括する
 ことを求められる以上、PMの人心掌握スキルや意思疎通を円滑に行えるコミュニケーション能力がプロジェクトの
 成否を分けます。

4.進捗確認
 システム開発がスタートすると、PMの業務はほとんど進捗管理になります。スタッフやクライアントと
 適宜打ち合わせを行ないながら、スケジュール通りにシステム開発が進行しているかを管理するのが、PMの
 役目です。
 なおプロジェクトによっては、PMがエンジニアやデザイナーとして、管理業務と開発業務を兼任することも
 あります。

5.評価
 システムが完成した後は、PMがプロジェクトのレビューを実施します。万が一、工数の実績が超過した場合は、
 その理由や設計変更の要因などを振り返り、その原因を徹底的に掘り下げます。管理者であるPMが総合的に
 判断して下すレビューは、後のプロジェクトに活かせる情報となります。
 レビューは文書に残されることがほとんどですが、文面ですべてを伝えるのは難しいことから、次の開発に
 携わるPMを交えてレビュー結果を報告するケースもあります。

 ・実施報告書
 ・稼働判定

————————————————
システム開発でおこるプロジェクトの失敗の原因
————————————————
ここで言うプロジェクトの失敗とは、予定していたQCD(品質・コスト・納期)を達成できない状況に追い込まれる
ことを指します。プロジェクトが失敗する主な要因は以下の通りです。

●不明確な要件のまま進める
 プロジェクトが失敗に陥る理由の多くは、発注側と開発側のコミュニケーション不足です。
 例えば、発注側が「こんなイメージで作って欲しい」と言ったきり丸投げをしてしまい、開発側も要件を
 詰めずに自己解釈でシステムの実装を進めてしまうケースが考えられます。
 信頼できる外部パートナーに任せるのは悪いことではありませんが、放置すると意に沿わないシステムに
 なって痛い目を見る可能性があります。また、開発側も不明確な要件のまま進めてしまうと、後になって
 大幅な仕様変更の必要があり、コストも工数もかさんでしまいかねません。要件定義からリリースまで、
 発注側と開発側とで誤認が生じない良いように密なコミュニケーションを取ることが大切です。

●無理な納品設定
 発注側と開発側のコミュニケーションによって誤認がない場合でも、プロジェクトが失敗に終わるケースも
 あります。それは、実現可能性が低い予算・納期を設定することです。とくに、開発会社が案件獲得を優先
 してしまった場合は、非現実的な見積もりが出されてしまうことも多く、プロジェクトが炎上しやすくなります。
 予算が少なすぎると、希望した機能の実装が難しくなることもしばしばです。また、納期を短くしすぎると、
 間に合わせるために品質が落ちてしまうか、間に合わずに遅延しやすくなります。

————————————————
プロジェクトを管理するメリット
————————————————
プロジェクトマネジメントが必要とされる理由は、効率的にシステム開発を遂行できる利点があるためです。
また、PMによってあらかじめ念入りにプロジェクト計画が練られていると、認識のズレ・対応もれ・伝達ミスに
起因する品質低下や納期遅れといったリスクを先んじて防げるというメリットがあります。端的に言えば、
プロジェクトマネジメントを実施することで「プロジェクトが成功する可能性」が高くなるということです。
とくに規模の大きいプロジェクトになると、開発に関わる組織やスタッフの規模の肥大化、開発期間の長期化が
発生しやすく、マネジメントの重要性も高まります。

————————————————
プロジェクトを円滑に進めるためのポイント
————————————————
最後に、PMが押さえておきたい「プロジェクトマネジメントのポイント」を紹介します。

●目標を明確にする
 成果物に対する指針を決めるのはもちろんですが、プロジェクトメンバーで共有できる達成可能な目標を
 作ることもプロジェクトを進める上で欠かせません。具体的な目標を設定する理由は、作業途中で「どこから
 手を付けてよいのか分からない」というつまずきによる工数ロスを避けるためでもありますが、スタッフの
 モチベーションを上げるためには「何を達成するためにこの作業をやっているのか」を明確にすることが
 大切だからでもあります。
 また、目標確認や進捗報告を全体で行なえば、スタッフに方向性を提示できるだけでなく一体感も生まれ
 やすくなります。連携が強固になれば、作業をより進めやすくなるでしょう。

●円滑なコミュニケーションをはかる
 実際に開発を進め、システムを作り上げるのが人間である以上、プロジェクトマネジメントではスタッフとの
 コミュニケーションも大切です。また、スタッフ同士の積極的なコミュニケーションを促して、チーム間の
 風通しを良くするよう働きかけることも求められます。もしコミュニケーションが滞ると進捗状況やトラブルの
 情報共有が行なわれにくくなり、スケジュールに遅れが生じやすくなります。
 とりわけ、テレワークや外部パートナーがメンバーに多い場合は、社内・社外で手軽にコミュニケーションが
 取れるプロジェクト管理ツールやチャットツールを導入するのも手段の一つでしょう。

●取引先との関係を構築
 PMの役割は、開発を円滑に進めるだけではなく、「ビジネスと技術を繋ぐこと」でもあります。いわば、
 取引先とシステム開発スタッフの窓口です。システム開発を成功に導くためには、プロジェクトチーム内だけ
 ではなく取引先との関係性も大切です。取引先と協力関係ができていないと「すべてお任せする」と一任
 されますが、それでも取引先の希望通りのシステムに仕上げなくてはプロジェクトも成功しません。
 取引先を蚊帳の外においてしまうと、仕様や計画の策定スケジュール、調整対応に遅れが生じる可能性があります。
 一緒にプロジェクトに参加してほしいという姿勢を見せてクライアントとの協力関係を強固にしておくことで、
 仕様やプロジェクト計画をスムーズに定められます。発注側と開発側のどちらにしても、綿密なコミュニケーションは
 「プロジェクトを成功させる鍵」ということを留意しておきましょう。

以上です。

The following two tabs change content below.

甲斐 展久

最新記事 by 甲斐 展久 (全て見る)

この記事をシェアする

  • Twitterでシェア
  • Facebookでシェア
  • LINEでシェア