誰でもシステム開発の見積もり根拠をチェック・評価できるようになる方法~工数・妥当性の基礎知識~

システム開発の見積もりは複雑で分かりにくいと思われがちです。

依頼者側からすると工数や費用の妥当性も分からない場合が多く、開発側も依頼者との認識の相違が生まれるとトラブルの元となります。

この記事では、システム開発の見積もりの根拠をチェック・評価できるようになる方法を解説します。

これから見積もりをとる方、見積もりを出す会社の方に読んでいただけると幸いです。

目次

システム開発における見積もりには何が書かれているのか

システム開発における見積もりは複雑化しやすいことが特徴です。

見積もりには、費用はもちろん工数や期間、算出方法等が記載されています。

作業工程や開発方法や開発の難易度などは種類が多く、また会社によって費用に差が出やすいと言えるでしょう。

システム開発のみならず、契約の前に見積もりを取ることは非常に重要です。契約するか否かの判断だけでなく、契約後の費用面のトラブル防止にも大きく役立ちます。

また事前に相場を理解しておき、相見積もりを取ることで、よりマッチする開発会社を比較検討することができるでしょう。

契約後や作業中にトラブルを生まないためにも、見積もりの内訳や費用の根拠を確認した上で外注先を慎重に選びましょう。

システム開発の見積もり構成内訳~よくある費目・根拠を解説~

システム開発にかかる費用は多数ありますが、大部分が人件費と言えます。よくある費目としては以下のものが挙げられます。

  • 要件定義
  • 設計
  • デザイン
  • 開発
  • テスト
  • 導入
  • 保守運用

要件定義

実際の設計などを行う前のシステムの方向性を決めるための費用です。機能の要不要や仕様を依頼者のニーズとすり合わせていきます。費用は作業時間に応じてかかる場合が多いため、システムが複雑であるほど費用はかかる傾向にあります。

設計

要件定義で決めた仕様をプログラミングするための設計書を作る費用を指します。

プログラミング言語の選択や機器の環境も含まれます。

デザイン

デザインとはユーザーインターフェース(UI)のデザイン費用を指します。

ユーザーから見た画面となるので、使い勝手・見やすさに大きく影響します。

開発

プログラミングをするための費用を指します。

プログラマー・エンジニアの人件費がほとんどです。

テスト

プログラミングしたシステムの操作性のテストを行うための費用を指します。

1つずつ構成単位をチェックする「単体テスト」、構成単位を組み合わせてチェックする「結合テスト」、ユーザーの使用前の「統合テスト」を段階をふみ確認していきます。

導入

開発したシステムを導入し、依頼者が快適に使用できるための費用を指します。

システムの初期設定を行い、依頼者への操作説明やマニュアルの作成などを行います。

運用保守

開発したシステムを継続的に運用し、障害発生時に復旧するための費用です。

運用保守を含まないケースもあります。

システム開発の見積もり算出手法のパターン~根拠・妥当性のある工数算出手法とは何か?~

システム開発の見積もり算出手法は大きく4つに分けられます。それぞれの概要とメリットとデメリットをまとめました。

  • 類推見積(トップダウン)
  • 係数モデル(パラメトリック見積)
  • ボトムアップ(工数積上げ)
  • プライスツーウィン法

類推見積(トップダウン)

過去の類似したシステム開発のデータを元に、コストや必要な工数を見積もる手法です。他の手法と比較するとややざっくりとした推計手法と言えます。

メリットデメリット
見積もりの算出が早い類似データがあれば正確性に優れている類似事例がないと算出できない

係数モデル(パラメトリック)

係数モデル(パラメトリック)は特定の数学的「モデル」を利用し、システム開発に必要な各作業を「点数化」して見積もりを算出する手法です。

過去のデータを元にパラメータ化(点数化)し、システム開発の各項目を自動算出する手法です。類推見積もりと併用もされます。

メリットデメリット
知識や経験に左右されず見積もりの算出ができるデータとサンプルがないと精度が落ちる点数で評価できない項目の選出が難しい

ボトムアップ(工数積上げ)

ボトムアップ(工数積上げ)は、システムを作るための作業を仮定して、工数を積み上げる手法です。工数を正確に細分化できる場合であれば、最も信頼性の高い見積もり方法で、開発会社と依頼者間のトラブルを防ぎやすいと言えます。

メリットデメリット
作業工程が抜けが発生しにくい見積もりの精度が高い見積もりに時間がかかる大規模な開発案件には不向き

プライスツーウィン法

プライスツーウィン法とは、依頼者の予算に合わせて見積もりを算出する手法です。

予算を元に工数などを見積もるため、予算ありきの開発であれば優れた手法と言えます。

メリットデメリット
設定した予算の過不足を防ぎやすい予算によっては機能不足などの影響を受ける

システム開発の見積もりを正しくチェック・評価するためには前提条件を合意しておく

システム開発の見積もりを評価するためには、前提条件として見積もり発行者と合意を取るべき項目が多数あります。

依頼者と開発側のイメージの乖離が起こらないように、前提条件は十分に明確にしておきましょう。

  • 見積もりの対象範囲
  • 見積もりの対象外範囲
  • 使用技術
  • 開発手法
  • プロジェクト期間
  • 要件
  • 運営方法
  • 開発・ネットワーク環境
  • テスト
  • 納品物

見積もりの対象範囲

システムの対象範囲を明確にしておきましょう。大規模システムになるほど、機能や連携のシステム等考慮すべきものが増えていきますので注意が必要です。

見積もりの対象外範囲

対象範囲と同時に、何を対象外とするのかも明記しておきましょう。どちらも明確にしておくことで前提条件における曖昧さを防ぐことができます。文章だけでは分かりにくいので、図面等の視覚的によりはっきりとした記載をすることもおすすめします。

使用技術

開発言語だけでもC言語、Java、PHP、Python、Rubyなど多岐に渡ります。サーバーやクラウドの使用有無など、見積もりの段階で分かるだけでも明記しておきましょう。

開発手法

システム開発のプロセスにはいくつか種類があります。ウォーターフォール型開発・アジャイル型開発・スパイラル型開発・プロトタイプ型開発・DevOpsなど、どのモデルで進行するか決めておきましょう。

プロジェクト期間

開発作業の期間がどの程度かかるかで費用は大幅に変わります。依頼者の要望と開発会社の人数によっても異なるため、スケジュールを確保しておきましょう。

要件

開発工程において要件定義が基盤となるように見積もりに大きく関わる部分です。どのような機能を必要としているか明確にしておきましょう。

運営方法

プロジェクトの進捗管理や推進をどうするのかを明記します。スケジュール通りに進行できているか、主にプロジェクトマネージャーによって行われます。

開発・ネットワーク環境

開発・ネットワーク環境は購入以外にも借りたり構築したりといった選択肢もあります。購入金額や借りられるかどうかの確約など、確実に確保できるようにしておきましょう。

テスト

どういったテストを行うのか、またテストの動作環境によっても工数が増えていきます。OSやブラウザのバージョンアップの影響を受けて費用がかさむ可能性があります。あらかじめ明記しておきましょう。

納品物

システム開発における納品物はシステムのみではありません。設計書1つとっても、ざっくりとした記載にせず、詳細が分かるようなレベルのものを依頼すると良いでしょう。

システム開発の見積もりを評価するためのチェックポイント~根拠の有無を見抜く方法~

システム開発の見積もりを評価するためには、どういった内容を確認すれば良いのでしょうか。

数字の根拠を見抜くために重要なチェックポイントをまとめました。

  • 数字の根拠が明確か
  • 前提条件を満たしているか
  • リスクに対する見積もりが含まれてるか
  • 作業内容が明確か
  • 管理工数が含まれているか
  • 調査分析項目が含まれているか
  • 機材の購入代が含まれてるか
  • 検収について明確になっているか

数字の根拠が明確か

各項目を確認し、適切であるか・不自然な箇所がないか・詳細が記載されているか確認しましょう。

曖昧であったり、項目内容が一括りにされていては費用の妥当性は分かりません。

前提条件を満たしているか

上記の前提条件を満たしているか、改めてチェックしましょう。対象範囲・使用技術・要件など、これらが正確でなければ見積もりの費用にも影響が出てしまいます。

リスクに対する見積もりが含まれてるか

システム開発の工程において、修正が必要となるケースは多々あります。修正の度に工数は増えてしまうため、必然的に費用も追加されてしまいます。見積もりでは、この修正等に対しての工程の費用が含まれているのか確認が必要です。

作業内容が明確か

システム開発は多数の作業工程を積み重ねています。これらの工程1つ1つが明確にされているかチェックしましょう。ひとくちに「設計」「テスト」「導入」といっても、作業範囲や採用する手法は様々です。見積もりにも大きく影響するので、依頼者側も十分に把握しておく必要があります。

管理工数が含まれているか

工数に管理工数が含まれているかチェックしましょう。よくある作業として、進捗管理・品質管理・変更管理・障害管理がありますが、これらは他の作業の片手間でできるようなものではありません。別途計上しておく必要があります。

調査分析項目が含まれているか

要件定義の前の、事前調査や分析にかかる費用はよくある作業工程の中になく見落としがちです。現行システムだけでなく新しい技術に関しても調査分析が必要となる場合があるので、開発外で必要なコストが計上されているか確認しましょう。

機材の購入代が含まれてるか

システム開発の際に、機材の購入が必要な場合があります。ハードウェアやソフトウェア、サーバーなどその他必要なものがあるか、購入代が含まれているか確認しましょう。

検収について明確になっているか

要件通りにシステムが完成しているかどうか「検収」を行い判断しなければなりません。

この検収には様々な方法があり、また複数回行うケースも増えています。見積もりでは、検収方法や期間・不具合が見つかった場合の費用負担などが明確になっているか確認しておきましょう。

まとめ

この記事では、システム開発の見積もりの根拠をチェック・評価する方法を解説しました。

  • システム開発の見積もりは複雑
  • 工数や見積もり方法・会社により費用の差が大きい
  • 見積もりの算出方法はいくつかあり、開発により合う手法が異なる
  • 前提条件に合意しておくことが重要
  • 見積もりの根拠を見抜くポイントがある

システム開発の工数・妥当性をおさえておけば、複雑になりやすい見積もりも自分で評価できるようになります。的確に判断してより良い費用で外注できるよう知識として覚えておきましょう。

クリーヴァではSucSak(サクサク)という、月額制でシステム開発チームのレンタルサービスを行なっております。CTOレベルの技術者が、見積もりに必要な使用技術の選定や要件の整理をサポートすることも可能です。

ご興味を持たれた方は、以下URLより弊社サービスをご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次