プロジェクトを成功に導くためのポイント3選
皆さん、これまでプロジェクトに携わったことはありますか? そのプロジェクトは成功しましたか? それとも失敗しましたか?
日経コンピュータの「ITプロジェクト実態調査 2018」によると、半分近くのプロジェクトが失敗しているとのことです。(成功率が52.8%)
そもそもプロジェクトの成功や失敗は何をもって判断するのか。まずはそれを確認しておきます。
一般的にはQCD(品質・コスト・納期)の3つの要素を全て達成していることが、プロジェクトの成功と定義されます。
・品質(Quality)
クライアントの要求を満たすシステムを納品し、品質を担保すること
・コスト(Cost)
プロジェクト計画時に設定した予算内に収めること
・納期(Delivery)
クライアントと約束した納期を守ること
これらを達成させること、すなわちプロジェクトを成功させるためには、どんなことに気を付けなければならないのか。
私がこれまでに担当してきたプロジェクトの経験を元に、これだけは必ず押さえておかなければならないポイントをお伝えします。
失敗の要因は色々とありますが、その中でも重要だと思うポイントを3つ説明します。
<ポイント3選> 1.要件定義/企画を明確にした上で開発に着手するべし 2.無理なプロジェクト計画は控えるべし 3.開発着手前に開発体制を整えるべし
1.要件定義/企画を明確にした上で開発に着手するべし

なぜ要件定義を明確にすることが重要なのか?
要件定義があいまいなまま開発に着手するとこのような結果になります。
■手戻りによるリスケ発生 <結果> 設計レビューやユーザーテストする度にマスト要件の抜け漏れが発覚 ↓ 設計のやり直しや実装済機能への影響調査 ↓ 追加タスクが発生 ↓ リスケ! 全体スケジュール調整
■設計が進まないことによるリスケ発生 <結果> 要件定義/企画書を見ただけでは何をどうすれば良いか企画者に聞かないと分からなく、設計が進まない ↓ 仕様を詰めながら設計を行う必要があり、工数超過 ↓ リスケ! 全体スケジュール調整
上記2ケースの繰り返しで、負のスパイラルに陥り、リスケの嵐となります。
では、どうすれば良いか?
これらのことを意識して実行することでリスクは減らせるのではないかと思います。
- イレギュラーを含めた現行の運用を新システムを使ってどのように行うのかを考える
- 全てのケースで業務フローを作成し、抜け漏れがないかを確認する
- 要件定義/企画のFIXはクライアントと何度もすり合わせを行い、落としどころを明確にし、ドキュメント化する
- FIXしたらその内容に対してクライアントに責任を持ってもらう意味で、承認の記録を明確にする
2.無理なプロジェクト計画は控えるべし

プロジェクト計画は、要件定義~リリースまでの各工程で、誰がいつ何をするのかを明確にする重要な作業です。
各工程で対応するタスクを洗い出し、それをスケジュール化します。そのスケジュールが適切でないとこのような結果となります。
■スケジュールが適切でない <結果> トラブル発生 ↓ 問題点/課題の解決 ↓ 追加タスクが発生 ↓ リスケ! 全体スケジュール調整
スケジュールに余裕がない場合、トラブルが発生したら即全体スケジュールに影響!
また、リソースに余裕のない状況で、プロジェクトマネージャーが開発者(SE)と兼任することがありますが、それは避けるべきです。
小規模のプロジェクトだと問題ない場合もありますが、大規模なプロジェクトで兼任するとこのような結果となります。
■プロジェクトマネージャーが開発者と兼任 <結果> 開発でトラブル発生 ↓ 問題点/課題の解決 ↓ 設計変更や実装済機能の改修などの追加タスクが発生 ↓ リスケ! 全体スケジュール調整
開発者(SE)として課題の解決を行い、現場を回す(設計を変更してPGに指示を出す)必要があります。
それと並行して、全体スケジュール調整の対応や各関連箇所との調整が必要となりプロジェクト全体が回らなくなります。
では、どうすれば良いか?
プロジェクトはトラブルがつきもので、予定通りには進まない。それを見越した上で下記内容でスケジューリングとプルジェクト体制を考えると失敗のリスクは減らせるのではないかと思います。
- スケジュールには規模に応じてバッファを設定する
- 大規模なプロジェクトではプロジェクトマネージャーと開発者(SE)は兼任しない
3.開発着手前に開発体制を整えるべし

これまでに実績のある開発手法を採用するのであれば問題にはならないが、新しい開発手法を採用する場合はまずその環境を整えてから開発に着手する必要があります。
環境を整えずに開発に着手するとこのような結果になります。
■環境を整えずに開発に着手 <結果> 開発環境を作成するのに苦戦 ↓ 調べながらの対応となり、設定工数内で収まらない ↓ リスケ! 全体スケジュール調整
では、どうすれば良いか?
開発現場を状況を考慮すればリスクは減らせるのではないかと思います。
- メンバーの熟練度を考慮し、サポート体制や環境を準備した上で進める
- ベテランメンバーによりパイロット版を事前に準備し、その内容とポイントを開発メンバーに共有する
まとめ
プロジェクトを成功に導くための3つのポイントについて説明してきました。
一番重要なことは、「要件定義をあいまいにしないこと」です。要件定義をあいまいにすると、要件の抜け漏れが発生し、下流工程に大きく影響します。
また、計画は重要です。要件定義が抜け漏れなくできたとしても、計画が適切でなければ進むことができません。
最後に開発環境について、作るものが決まって、計画を立てたとしても、どう作るかが決まっていなければそこで行き詰ってしまいます。
「言うは易く行うは難し」で、取り巻く環境などで理想通りには進まないこともあると思いますが、これらのことを踏まえた上で進めると失敗するリスクは減らせるのではないでしょうか。
ファブリカコミュニケーションズで働いてみませんか?
あったらいいな、をカタチに。人々を幸せにする革新的なサービスを、私たちと一緒に創っていくメンバーを募集しています。
ファブリカコミュニケーションズの社員は「全員がクリエイター」。アイデアの発信に社歴や部署の垣根はありません。
“自分から発信できる人に、どんどんチャンスが与えられる“そんな環境で活躍してみませんか?ご興味のある方は、以下の採用ページをご覧ください。