本記事では、システム開発プロジェクトにおけるシステム企画フェーズの全体像を知ることができます。
システム企画フェーズは、システムを開発する何かしらのきっかけが起こり、何から手を付けるかが分かりにくい「ふわっとした状態」から開発の筋道(すじみち)をつくるフェーズです。
本記事はおもにシステム開発を企画する情報システム担当者向けに、システム企画フェーズの全体像を伝えられればと思います。
システム企画フェーズとは
前述のとおりシステム企画フェーズは「ふわっとした状態」から開発の筋道(すじみち)をつくるフェーズでした。
もう少し具体的な言葉で言うと、システム開発におけるシステム企画フェーズとは「実現すべきシステムのテーマを考え、その稼働に向けた計画を立てること」です。
システムのテーマとはどのようなシステムを開発すべきか、という意味です。つまり、システム開発を企画すべき何らかのきっかけが起こり、漠然とした空気の中で「どのようなシステム(What)」を「どのような方法と流れで(How)」開発するかを決め、稼働までの計画を立てる一連の作業のことを言います。
ちなみに「企画」という言葉を大辞林で調べると、
実現すべき物事の内容を考え、その実現に向けての計画を立てること
大辞林
とあります。
システム企画における”物事”はシステムですから、システム企画フェーズは実現すべきシステムの内容を考え、その稼働に向けての計画を立てることといえます。
システム企画フェーズの目的
システム企画フェーズの目的は「システム開発プロジェクトの方向性を決めること」です。
プロジェクトのごく初期の段階は「システムの価値があいまい」「何を作るのかがあいまい」「どのように進めていくのかがあいまい」「プロジェクトの意義や価値があいまい」など、ほとんどのことが決まっておらず、濃い霧の中にいる状態です。
濃い霧のなかで、システムを開発する意義、プロジェクトを作って人を集めて時間をかける意義、投資する意義、そして開発期間と工程(進め方)を明らかにして、システム開発プロジェクトの方向性を決めることがシステム企画フェーズの目的です。
システム企画フェーズの効果(メリット)
システム企画フェーズを設けることで、下記のような効果が得られます。
- システムの価値を明確にできる(Why)
- プロジェクトの価値を明確にできる(Why)
- 開発対象のシステムが分かる(What)
- 投資計画(概算費用や期間)を明確にできる(How)
- 開発プロジェクトの工程を立案できる(How)
システム企画フェーズで得られる最も重要な効果は、なぜシステムを開発するのか、なぜプロジェクトを組成するのかという「Why」の部分です。
開発のきっかけは様々で、経営層から〇〇システムを導入してほしい、新規事業プロジェクトのなかで〇〇システムを開発したい、などあります。システム企画フェーズではそのきっかけから一歩踏み込み、システムの価値、そしてプロジェクトの価値が明らかにされる(する)ということが重要な効果になります。Whyの部分を明確にすることで、開発に携わるメンバーの納得感、システムに投資する意義などの筋道を立てやすくなります。
また、どのようなシステムを開発すべきかその対象が明らかになり、概算の開発費用や期間が分かります。そのため、開発への投資計画を立てられます。
さらに、開発の工程を大まかに見積もることができます。パッケージかサービスか、もしくはスクラッチ開発かなどによって、今後の開発工程を計画できます。
システム企画フェーズのリスク
システム企画フェーズでは下記のようなリスクが想定されます。
- 開発の意義を見出せない(あいまいのまま)
- 提案依頼書(RFP)の作成に時間と手間がかかり過ぎる
- 開発パートナーが決まらない(良い会社と出会えない)
メンバー間でたくさん議論を重ねても、開発の意義が見いだせない場合があります。意義が見いだせないまま後続の工程に進んでもプロジェクトが好転する可能性は低いので、いったん中断するか中止する判断が必要です。
開発を外部に発注する場合には、外部に対してシステムの概要を提案依頼書に書き、提案を募集します。提案依頼書について書き方が分からない、細かく書きすぎている、書くのに時間がかかる、などのリスクがあります。
また、提案依頼書を送ったのち、これぞという良い会社と出会えない場合もあります。決め手にかける場合です。選考段階で決めてを欠いた場合、そのまま後続のフェーズに進んでも大きな問題として跳ね返ってくる可能性があるため、選考のやり直しや提案変更の依頼などの調整が必要になります。
プロジェクト全体におけるシステム企画フェーズの位置づけ
ウォーターフォール型の開発プロジェクト全体におけるシステム企画フェーズの位置づけは下図のとおりです。
- システム企画
- 要件定義
- 基本設計
- 詳細設計
- 開発
- 単体テスト
- 結合テスト
- システムテスト
- ユーザー受入テスト
- 移行
- 運用開始
システム企画フェーズは開発プロジェクトのすべての始まりに位置付けられます。プロジェクトで最も「ふわっとした状態」です。霧の中にいる状態から後続のフェーズの方向性を決める重要なフェーズです。
また、後続フェーズのあり方を大きく左右するとても創造的なフェーズでもあります。前述のとおり、システム企画フェーズの目的はシステム開発の方向性を決めること。その目的のとおり、システム企画フェーズで決めることが全体の流れを左右します。
システム企画フェーズで決めること
システム企画フェーズでは以下のことがらを決めることを目指します。
- システム開発の理由
- プロジェクト立ち上げの理由
- プロジェクトの目的と目標
- 開発対象のシステム概要
- プロジェクトのマスタスケジュール
- プロジェクトの実行体制
- 開発費用の概算と決裁
- 開発パートナー
- プロジェクト運用ルール
なによりも大切なことが、システム開発をする理由とプロジェクトを立ち上げる理由が決まっていることです。関係するメンバーで議論を重ね、Whyの部分を明文化します。
また、開発対象のシステムについては以下のことが決まっていると良いです。
- システムの目的
- 対象のユーザー
- 解決したい課題
- すでに世の中にあるシステムであればその領域(ERP/財務会計/生産管理/営業支援/コミュニケーション/コラボレーション…)
- 実現方法(スクラッチ開発/パッケージ導入/サービス導入など)
- 開発体制(内製/外注/購入)
そして、プロジェクトの進め方となるマスタスケジュールや体制、開発パートナーの有無などを決めます。
加えて、次工程以降のプロジェクト運用をどのように進めるか、プロジェクトの運用ルールを決めます。
システム企画フェーズのインプット
システム企画フェーズをはじめるにあたり、参照できる情報の例は下記の通りです
- ビジョンや事業目標
- 役員会資料
- 上位プロジェクトの資料(あれば)
- インターネット情報
- 業務マニュアル(あれば)
- 既存システム(あれば)
プロジェクトでは初期フェーズのため、既存情報としてはさほど多くありません。
会社や事業の方向性を知るためのビジョンや事業目標などの資料が活用できます。
また、システム開発のきっかけが役員間できまったものであれば役員会の資料、新規事業プロジェクトできまったのであれば新規事業プロジェクトの資料など、上位プロジェクトがあればその資料が活用できます。
また、開発対象のシステムがすでに市場があるものであれば、インターネットで製品検索などできます。そして、対象業務が分かれば、既存の業務マニュアルやあれば既存システムも参考にできます。
システム企画フェーズのアウトプット(成果物)
システム企画フェーズでの成果物は下記の通りです。
- 役員・上位プロジェクトヒアリングメモ
- 議論メモ
- プロジェクト企画書
- 提案依頼書(RFP)
- 開発パートナー評価表
開発のきっかけとなった役員や上位のプロジェクトがあれば、背景などをヒアリングしたメモを残します。
そして、システム企画フェーズで決めたことはプロジェクト企画書として残します。
また、外部に開発を発注する場合は提案依頼書や、提案の評価結果を記載する開発パートナー評価表を成果物として作成します。
システム企画フェーズの進め方(プロセス)
システム企画フェーズは下記のように進めます。
- きっかけが発生する
- システム企画フェーズの計画を立てる
- プロジェクトで解決したい問題を設定する
- 役員にヒアリングする
- 問題と現状を分析する
- プロジェクトの目的と目標を設定する
- ベンチマーキング(RFIあるいは同業他社の調査)
- 開発対象と方法を決める
- プロジェクト企画書を書く
- プロジェクト企画書を決裁する
- 開発パートナー選定の進め方を決める
- 提案依頼書(RFP)を書く
- 開発パートナーを選定する
- 開発パートナーと契約する
- 次工程以降を準備する
システム開発プロジェクトは何らかのきっかけが起こり、それを認識するところから始まります。きっかけの種類は様々ですが、例えば、既存システムの老朽化で保守契約更新ができなくなった、新規事業プロジェクトのなかでサービス/アプリ開発が必要になった、役員から営業案件管理の効率化について指示があった、など。ほかにも様々あります。
きっかけをもとに、システム企画フェーズの計画を立てます。開発の一部もしくは全体を外注する場合には選定方法の計画もあわせて立てます。そして提案依頼書を作成し、開発パートナー選定および契約をおこないます。最後に、次工程以降のプロジェクトの進め方やプロジェクト管理ルールを決めてシステム企画フェーズを完了します。
システム企画フェーズの参加者と役割
システム企画を遂行するために必要な参加者は下記の通りです。
- プロジェクトマネージャー
- 進行管理(ファシリテーター)
- 対象ユーザー(課題を抱える部門の担当者)
- 事務作業(文書作成支援&スケジュール調整など)
プロジェクト全体の意思決定ができるプロジェクトマネージャーをはじめ、システム企画フェーズの進行やヒアリングの進行、問題の分析、そしてプロジェクト企画書が書ける進行管理役のひとをアサインします。
加えて、開発対象システムの想定ユーザーとなる人(たち)もアサインします。外部向けサービスの場合はアサインが難しいですが、社内向けサービスの場合は対象の業務部門の人をアサインします。
また、ヒアリングのスケジュール調整やメモの記録など周辺作業も多く発生するため、事務作業を担える人などもアサインできると良いです。
システム企画フェーズを専門家に外注する場合
システム企画フェーズを専門家に支援してもらう場合には、コンサルティング会社などと契約をします。
専門家との契約形態には二種類あります。
- 準委任契約
- 請負契約
のいずれか。開発対象のシステムが判明していないタイミングからの契約になるため、実績時間で費用が変動する準委任契約が多く用いられます。
システム企画フェーズの終了基準
システム企画フェーズの終了基準とは、何ができていたらシステム企画フェーズを終了とできるか、という意味です。
明確な基準としては、システム企画フェーズのアウトプットが作成されていることです。プロジェクト企画書の内部に、システム企画フェーズで決めるべきことが記載されているかを確認します。
プロジェクト企画書の内容面では、システム開発の意義、プロジェクト立ち上げの意義などのWhyの部分が議論しつくされ、メンバーで納得がいく内容になっていることを確認します。
システム企画フェーズの遂行に必要なスキル
ここではシステム企画フェーズを進行する人のスキルに絞って挙げてみます。
- 会議の進行(ファシリテーションスキル)
- 問題分析手法
- ITストラテジスト
プロジェクトメンバー間で議論をすることが多いシステム企画フェーズでは、議論の進行ができるスキルが必要になります。ホワイトボードや各種ファシリテーションツールを活用してアイディアを取りまとめるスキルです。
また、システムで解決したい問題を分析するためにはいくつか問題分析手法(フレームワーク)を引き出しにもっておきたいところです。
そしてシステム企画フェーズの遂行に資格は必要ありませんが、該当する領域の資格としてはITストラテジストが該当します。
システム企画フェーズのスキル習得方法
システム企画フェーズに必要なスキルの習得には以下のような方法があります。
- 書籍
- 動画
- 研修
- OJT
独学で学ぶには書籍や動画がすぐにでも始められる方法です。ただしシステム企画に特化した書籍や動画は数が少ないためご注意ください。同様に研修もあまり数が多くありません。
現時点、OJTで経験者の仕事を見てまねる方法がもっともな近道となっています。
おわりに
システム企画フェーズは、開発プロジェクトのなかでも起点となる大切なフェーズです。一方で要件定義や開発アーキテクチャなどと比較すると公開された情報が少ないかもしれません。
経験による習得が中心となっているなか、本記事がプロジェクトの方向性を決める一助になれたら幸いです。