プロジェクトが成功するかは、開発前の初回打ち合わせを含めた準備で決まるといっても過言ではありません。システム開発会社との初回打ち合わせまでに話し合うべき内容について丁寧に準備しておくことで、有益な提案やわかりやすい見積書を受け取ることができます。
そこで今回は、プロジェクトを成功させるためのシステム開発会社との初回打ち合わせの仕方についてわかりやすく解説していきます。この記事を読むことで、トラブルを防止する契約の交わし方がわかるようになりますので、ぜひ参考にしてください。
システム開発における見積もり方法!根拠と初回打ち合わせが重要
システム開発会社が「提案書」による見積もりを提出する場合、総額でしか示されないことが多々あります。 驚くかもしれませんが、実は「見積もり根拠」について示されることはそう多くありません。これは、JUAS(日本情報システムユーザー協会)の調査で、システム開発会社への不満、第2位が「見積もり金額の妥当性が不明」となったことでも明らかです。
なぜ、「システム開発会社は見積もり根拠を出さないのか?」その最大の理由に、「見積もり時に、開発すべきシステムで曖昧な項目がある」ということが挙げられます。
見積もり根拠を明確にしてもらうためには、初回打ち合わせはとても大切なファーストコンタクトとなります。そしてこの「見積もり根拠」と「初回打ち合わせ」はプロジェクト成功のため最初の重要なステップでもあります。
見積もり根拠の確認が大切な理由
見積もりの根拠は、今後のプロジェクト管理において非常に重要であり、プロジェクトの「指針」となります。その理由や根拠について以下に示します。
システム開発会社から、見積もり根拠を提出してもらう理由は主に以下の点になります。
- 透明性と信頼性確保
- 費用の妥当性確認
- 予算管理の容易化
- プロジェクトスコープの明確化
- リスク管理の向上
提案された費用の根拠や背景が明確化されることで以下の効果が得られます。
- 開発プロセスや費用の詳細を理解できる
- 費用の妥当性を客観的に評価できる
- 予算の管理が容易になる
- プロジェクトのスコープや作業内容が明確化
- プロジェクトの進行がスムーズになる
- リスク要因や対策が明確化
- リスク管理が向上
システム開発会社に見積もり根拠を提出してもらうことは、システム開発における「あいまい」を可能な限りを無くして、必要な機能や予算を可視化することにもつながります。
初回打ち合わせの目的と重要性
初回打ち合わせの段階では、まだシステムに対しての見積もりが提出されていないことが多いです。初回打ち合わせの目的は、ユーザーから「やりたいこと」をヒアリングして、工数(開発に必要な時間)を算出し見積もりを作成するためのものです。つまり、この打ち合せで「システムの値段が決まる」と言っても過言ではありません。
「あいまい」な機能が多ければ、システム開発会社は最大限の機能を想定して工数算出をします。それにより費用が拡大することになります。明確にしておきたい項目を以下にまとめましたので、全て準備してから初回打ち合わせに挑みましょう!
項目 | 説明 |
機能要件 | システムが持つべき機能や機能要件を列挙する。 ユーザーがシステムを通じて行いたい具体的な操作や機能を明確にする。 |
非機能要件 | システムの性能やセキュリティ、使用環境などの非機能要件を定義する。 |
データ要件 | システムが扱うデータやデータの取り扱い方法を明確にする。 |
利用者の情報 | システムを利用する予定のユーザーのプロファイルやニーズを把握する。 |
予算とスケジュール | 開発にかけられる予算やスケジュールについて明確にする。 |
既存システムとの連携 | 既存システムとの連携やデータの統合が必要な場合、その要件を定義する。 |
ソフトウェアライセンス | 開発するシステムに使用するソフトウェアやライセンスに関する要件を考慮する。 |
サポートと保守 | 開発後のサポートや保守に関する要件を明確にする。 |
Jiteraなら見積もりの根拠をしっかりと提示し、不安や疑問を解消してから開発依頼が可能です。もし他社の見積もりに不安がある場合はぜひ1度ご相談ください。
システム開発の見積もり根拠はここを確認しましょう
システム開発会社から提供される「見積もりの根拠」、いわゆる「見積もりの詳細」が提示された場合、ユーザーのシステム理解度や経験によって、その妥当性を判断することは非常に難しいかもしれません。
それでも、各項目を慎重に確認し、疑問点があれば明確に質問する必要があります。見積もりに必要な項目が記載されていない場合、後で追加請求される可能性もあります。ここでは、見積もりの確認方法について詳しく説明していきます。
見積もり根拠の確認ポイント
見積もり根拠の確認ポイントについて以下にまとめました。提出された内容で、わからない項目については必ずシステム開発会社の担当者へ確認をしてください。納得できない場合には見積もりの再提出をお願いすることも必要です。
項目 | 説明 |
作業内容の詳細 | ・見積もりに含まれる作業内容が具体的かどうかを確認 ・作業が具体的に記載されているほど、見積もりの信頼性が高い |
費用構成 | ・見積もりの費用がどのように計算されているかを確認 ・各項目の費用が適切に明示されているかを確認 ・不明瞭な部分がないか確認 |
リスク要因の考慮 | ・見積もりにリスク要因が適切に考慮されているかを確認 ・リスク要因が明示されているか ・リスクに対する対策や追加費用が適切に考慮されているか |
納期とスケジュール | ・開発の納期やスケジュールが見積もりに含まれているかを確認 ・納期やスケジュールが明確に記載されているかどうかを確認 ・適切なタイミングでの納品が可能かを検討 |
追加費用の明示 | ・追加機能や変更に伴う追加費用が明示されているかを確認 ・追加費用が明確に記載されている場合、後々の追加作業に伴う費用を予測できる |
契約条件 | ・契約条件や支払い条件が適切に記載されているかを確認 |
契約条件や支払いスケジュールが明確に記載されていることはトラブルを避けるためにも重要です。
これらのポイントを確認することで、見積もり根拠の信頼性や適合性を評価し、プロジェクトの成功に向けた準備を整えることができます。
根拠となる要素の説明
ソフトウェア開発会社が見積もりを作成する場合、主に以下の要素を考慮して金額を算出します。
1. 開発時間
ソフトウェアの機能や規模に基づいて、開発に必要な時間(工数)を見積もります。これにはプログラミング、テスト、デバッグ、および展開にかかる時間が含まれます。
2. リソース
開発に関わる人員の給与や労働力コストを考慮します。開発者、テスター、プロジェクトマネージャーなどが含まれます。
3. 技術要素
使用する技術やツールによっても費用が異なります。特定のプログラミング言語、フレームワーク、ライブラリ、または開発ツールに関連する費用があります。
4. 環境構築
環境構築や運用にかかる費用も見積もりに含まれます。サーバー、データベース、ネットワーク、クラウドサービスなどが含まれます。
5. テストおよび品質管理
ソフトウェアの品質を確保するためのテストや品質管理活動にかかる費用が含まれます。
6. リスク管理
ソフトウェア開発プロジェクトに伴うリスクを考慮し、その影響を緩和するための追加費用が見積もりに含まれます。
プロジェクトの規模や複雑さ、利用される技術などによって、これらの要素の重みや詳細が異なる場合があります。
前提条件の明確化
前提条件とは、ある目標を達成するために必要な事柄や、ある命題が成立するための仮定や前提となる条件のことです。
これらの条件が満たされている場合に、目標の達成や命題の成立が可能となります。前提条件は、プロジェクトや議論の基盤となるため、正確に理解され、明確に定義さする必要があります。
例)ウェブサイトの開発プロジェクトの前提条件
- 要求仕様が明確である
- 予算とスケジュールが承認され、プロジェクトの進行が可能である。
- ウェブサイトのホスティングやドメインの取得方法が確保されている。
これらの前提条件が満たされている場合に、ウェブサイトの開発プロジェクトを開始することができます。
リスクへの対応
新規のシステム開発には、様々なリスクが存在します。これらのリスクに対処するために、まずリスクを識別し、その影響と確率を評価します。
その後、リスクを回避したり、軽減したり、移転したりする方法を探ります。一部のリスクは受容され、その影響を軽減するための対策が取られます。リスク管理の計画を策定し、実行することで、プロジェクトの成功に不可欠な要素を確保し、目標達成を支援します。
見積もり作成方法・手法
システム開発時の見積もり手法には、さまざまなアプローチがあります。システム開発会社はプロジェクトの規模、複雑さ、チームの経験などに基づいて、最適な手法を選択します。以下に、一般的な見積もり手法をいくつか紹介します。
1.専門家による見積もり(Expert Judgment)
経験豊富な専門家が直感や過去の経験に基づいて見積もりを行う方法。
2.類似プロジェクトに基づく見積もり(Analogous Estimating)
過去の類似プロジェクトのデータを参考にして見積もりを行う方法。
3.パラメトリック見積もり(Parametric Estimating)
プロジェクトのパラメータを使って統計的モデルを適用し見積もりを行う方法。
4.ボトムアップ見積もり(Bottom-Up Estimating)
プロジェクトを細かいタスクに分解し、それらの見積もりを合算して全体の見積もりを算出する方法。
5.スリーポイント見積もり(Three-Point Estimating)
各タスクに対して楽観的な見積もり、悲観的な見積もり、可能性が高い見積もりの三点を使って見積もりを行う方法。
6.デルファイ法(Delphi Technique)
複数の専門家に匿名で見積もりを提出してもらい、それらの平均値や中央値を使って客観的な見積もりを導く方法。
7.アジャイル見積もり(Agile Estimating)
アジャイル開発で使われる、ストーリーポイントやポーカープランニングなどの手法を使って見積もりを行う方法。
プロジェクトの特性やチームの経験に応じて、これらの手法を単独で使用するか、組み合わせて使用することが一般的です。正確な見積もりは、プロジェクトの成功に不可欠な要素であり、適切な手法の選択と適用が求められてます。
システム開発プロジェクトが成功する見積もりと初回の打ち合わせ項目
システム開発会社との初回打ち合わせでは、次のことについてしっかりとしたコミュニケーションを行いましょう。
要件定義で開発目的を明確化する
要件定義には、システム開発会社との細かな打ち合わせが必要であり、その過程で定義内容が変わってしまうことは珍しくありません。しっかりとした要件定義が出来ていない場合、想定した以上に開発に時間を必要としたり、開発したシステムが使い物にならないことになったりします。
他にも、最終的には当初の想定以上の見積もりになって、予算を超えることもありますので、初回打ち合わせでは実現したいことを文章や言葉で伝えるようにしましょう。
プロジェクトスケジュールを決定する
要件定義によって開発目的を明確化したら、システム開発のスケジュールや進捗管理に関するプロジェクトスケジュールについて話し合います。システム開発に要する時間は、開発物によりますが、一般的に2ヵ月~6ヵ月程度で完成するケースが多いです。しかし、大規模システムについては、この期間以上の時間を要するため、完成までのスケジュール把握が欠かせません。
ウォーターフォール型の開発なのか、アジャイル型の開発なのかで期間が違うのはもちろん、プロジェクトに参加するエンジニアの経験やスキル、予算によっても変わってくるため、システム開発会社とプロジェクトの依頼者が納得できる納期設定の必要があります。
費用と支払い方法の決定
プロジェクトスケジュールが明確に決まったら、システム開発の費用や支払い方法に関することを話し合っていきます。システム開発費用のほとんどは、エンジニアの人件費です。エンジニアの人件費は、システム開発費用の8割ともいわれています。レベル別のエンジニアの費用相場は、次のとおりです。
レベル | 費用相場 |
大手会社に所属しているプログラマー | 50〜100万円程度 |
初級レベルのシステムエンジニア | 60〜100万円程度 |
上級レベルのシステムエンジニア | 100〜160万円程度 |
エンジニアが開発といっても一人で開発プロジェクトを進めるわけではなく、全体管理をおこなうプロジェクトマネージャーはもちろん、仕事の補佐をするプロジェクトマネジメントオフィス、システムを構築するシステムエンジニア・プログラマーなどで開発チームを組み、ひとつのシステムを完成させます。
また支払い方法については、成果物の納品で料金を支払う請負契約とエンジニアの労働時間に対して料金が発生する準委任契約がありますので、どちらにするのか話し合いましょう。
チーム構成について話し合う
開発費用と支払い方法を決定したら、システム開発チームの構成や役割分担に関することを話し合っていきます。主なチーム構成は次のとおりです。
- 縦割りチーム
総合的な幅広い知識を有するジェネラリストと呼ばれる人が中心となって組織形成されるチームのことです。それぞれの開発範囲が明確なため、仕事がしやすいという特徴がありますが、一方で開発の細部までは把握しづらいという欠点があります。
- 横割りチーム
それぞれの領域のスペシャリストが中心となって組織形成されます。スペシャリストは、非常に専門的な知識を有しているため、仕事のレベルが高いという特徴がありますが、こだわりが強く統率しづらいという欠点があります。
- 混合チーム
縦割りチームと横割りチームの中間的な組織形成がおこなわれます。ジェネラリストはチーム全体を、スペシャリストはそれぞれの仕事が完成するようにプロジェクトを進めていきます。
連絡手段を決定する
チーム構成が決定したら、システム開発進捗や問題解決に関する連絡手段を確立していきます。たとえば、連絡手段が電話だけでは、気軽に質問したいことがしづらいでしょう。そのため、気軽にコミュニケーションできるように、チャットワークやLineなどのコミュニケーションアプリを決めておきます。そこにプロジェクトの開発進捗や質問に対する回答を返してもらうことで、開発納期まで安心して仕事を任せられます。
システム開発における見積もりと業者のチェックポイント
プロジェクトの成功はシムテム開発会社の対応によって大きく変わってきます。プロジェクトが成功する最初のステップは、システム開発会社選びとも言えます。システム開発会社を選定する場合に確認するポイントは複数ありますので詳しく説明していきます。
過去の類似案件の実績を確認する
新規システムを開発する場合、依頼するシステム開発会社に同様のシステムを開発した実績があるかないかでは、予算も期間もリスクも大きく違ってきます。実績や信頼性が高い会社を選ぶことで、品質やサービスの安定性が期待できます。
さらに、過去のプロジェクト実績から、会社の技術力や対応力を推測することができます。これにより、トラブルのリスクを最小限に抑え、開発プロセス全体を効率化することが可能となります。
また、実績のある会社は、プロジェクトの成功に向けて適切なアドバイスや提案を行ってくれる可能性が高く、信頼関係を構築しやすくなります。
費用対効果を比較検討する
複数のシステム開発会社から、開発を実際に依頼する企業を選定する場合、ただ「価格が安いから」などの理由で選ぶのはとても危険です。必ず、費用対効果を比較するようにしましょう。
まず、各会社が提供するサービスや製品の価格を比較します。次に、それぞれの会社の実績や信頼性、技術力、サポート体制などを考慮し、提供される価値を評価します。そして、それぞれの選択肢にかかる費用と、それによって得られる効果や利益をバランスさせます。
たとえば、費用が低い会社でも品質やサポートが不十分な場合、後々の修正や追加費用が発生する可能性があるため、最終的なコストを考慮する必要があります。費用対効果を比較することで、予算内で最適な選択を行い、最大の価値を得ることができます。
コミュニケーションの質を評価する
システム開発会社を選定する際にコミュニケーションの質を評価することは、プロジェクトの成功にとってとても重要です。コミュニケーションの質を評価する際には、特に以下の点に注意してください。
1. コミュニケーションの円滑さ
適切なタイミングで情報を共有し、問題が発生した際には迅速かつ適切に対処することができるかどうかが重要です。
2. 意思疎通能力
依頼した要件に対して、適切なキャッチアップができ対応できているか、提案される内容が分かりやすく伝えられているかを評価します。
3.レスポンスタイム
質問や要求に対する返答や対応をどれだけ迅速に行うかを評価します。迅速な対応があることで、プロジェクトの進捗が円滑に進むことが期待できます。
4. コミュニケーション手段の多様性
会社とのコミュニケーションを取るための手段が豊富であり、電話、メール、オンライン会議など、適切な方法でコミュニケーションを取ることができるかどうかを評価します。
ITエンジニアが教えるトラブルを防止するシステム開発における見積もり確認と契約の交わし方
システム開発の依頼先を決めたら、将来的なトラブルを防止するため、契約書を交わします。次に、現役のITエンジニアがトラブルを防止できるおすすめの契約書の交わし方についてご説明します。
契約書の内容をチェックする
システム開発会社との初回打ち合わせで、本当に契約しても良いと感じたら、契約書を交わします。契約書には、基本情報として次のことが記されているため、チェックしましょう。それぞれの項目の詳細は、次のとおりです。
項目 | 詳細 |
目的 | 契約目的やシステム開発する内容は何か |
有効期限 | 契約がいつまで期限なのか |
定義 | 契約書に記載されている言葉の定義 |
仕様 | 納品物の特徴について |
実施場所 | システム開発を実施する場所はどこなのか |
納期 | 何をいつまでに納品するのか |
報酬 | 完成品の納品で発生する報酬金額や支払い方法 |
不具合対応 | 納品物に問題が発生した場合の補償内容 |
権利 | 納品物の権利の所在について |
一般的に、システム開発の契約書は、開発契約書や業務委託契約書、開発委託契約書などの名称で契約書を交わします。初めてのことだからといって、内容を見ずに契約書を交わすと、のちに大きなトラブルにつながるため注意してください。
社内決済の必要性を伝える
契約書が交わされていなくても、口約束の仕方によっては過失が生じたことを理由に、損害賠償請求されるリスクが伴います。そのため、すべての契約は、社内合意が得られなければ進められないという意思を最初から伝えておきましょう。
また、社内決済の承認に多くの時間を要する場合は、システム会社によっては先行着手費として費用を請求されることがあります。そのため、事前にそういった費用の発生があるのかについて確認しておくだけでも、契約におけるトラブルを未然に防げます。
まとめ:適切な見積もりでシステム開発を成功させましょう
プロジェクト(システム開発)を成功させるためには、初回打ち合わせでシステム開発会社に対して正確かつ詳細に自分の要望を伝えることが重要です。相互の理解が不可欠です。これを実現するためには、システム開発会社の実績や信頼性が欠かせず、業者選びはプロジェクト成功のカギと言えます。
株式会社Jitera では、ユーザーとビジネスの課題を理解した後、ビジネスモデルの検討とプロダクトデザインを行い、必要に応じてプロトタイプを作成します。投資判断後はUI/UXデザインと要件定義を行い、Jiteraの開発自動化プラットフォームを活用してWeb/iOS/Androidアプリをリリースします。ユーザーフィードバックを受けて継続的な開発を行い、ビジネス目標達成を目指します。
株式会社Jitera は、システム開発会社として顧客管理システムや営業管理システム、ECサイト、予約管理システム、ビジネスマッチングシステムなどフロントエンドから業務管理システムまで幅広い開発実績がございます。
システム開発前に仕様書のドキュメントを納品するため、お互いの齟齬がなく開発がスタートできるのはもちろん、最新の技術や他社事例も交えて選択肢を提供させていただくため、初めての契約でもご安心して利用いただける体制を整えております。ぜひ、お気軽にご相談ください。