baisoku
ベテラン開発者が伝授!システム開発の見積りを読み切る!
2020年6月30日掲載した記事を2021年10月5日に内容更新しています。
BAISOKUです。
緊急事態宣言解除されましたが、まだまだ予断を許さない状況です。 テレワークの実施が難しかった・・・どうやら社内システムを見直す機会が来たとご判断される企業様もいらっしゃるのではないでしょうか?
システム開発を外部に依頼する際、相場はどのぐらい?項目の見方が分からないといった声をよく耳にします。
システム開発の専門的な知識がなければ、見積金額の妥当性を見極めるのはなかなか難しいところがありますよね。
納得のいかないまま発注することで、費用やできあがったシステムが想定と大きくずれてしまった・・・など、発注側と受注側にトラブルが起きる可能性が出てしまいます。こうしたトラブルをミニマムにするためにも見積り段階は、重要なポイントとなります。
今日は、これまで40年近くにわたり、大小さまざまなシステム開発を数多く手掛けてきたベテラン開発者が、システム開発に関する見積りの見方と進め方、納得できる依頼先を見極めるヒントをお届けします。

システム開発を依頼する前に、基本的な開発見積りの知識を知っておけば提案された見積りが妥当なものかどうか?を判断する材料になります。
この記事では、システム開発に関する3種類の見積り算出法と9つの見積項目について説明します。
|システム開発の見積り方法は3種類
システム開発の見積り方法は、3つに分類されます。それぞれの見積り方法の特徴を理解することで、適切な見積りなのかを判断できるようになります。
1)類推見積り(トップダウン) 類推見積りは、システム開発にかかるコストや工数で算定する方法で、過去の似たような開発事例を参考にしつつ類推しながら算定します。
全体のリソース量を見積もったうえで個々の作業に配分する形です。 類似した開発事例がある場合は工数やコストのズレは生じづらく、比較的精度の高い見積りができますが、ない場合は、開発会社の知識や技術、経験に左右されるため精度が低くなる可能性があります。 2)係数モデル見積り(パラメトリック見積り) 係数モデル見積りは、開発するシステム要件や設計箇所を係数(点数)化して算定する方法です。 この方法は、数学的モデルを利用して機械的いにコストを計算するので信憑性が高く、見積り担当者の知識や経験によるあいまいさを回避できるメリットがあります。 但し、係数モデルと入力する数値のそれぞれの信頼度性により、ばらつきが出てくるのと、データ数を参考に算定するため柔軟な対応は難しいというデメリットがあります。
参考までに、現場でよく使用される信頼性の高いモデルとして以下を挙げておきます。 ・ファンクションポイント法
・COCOMOモデル
・Putnamモデル
3)ボトムアップ見積り(工数積上げ) ボトムアップ見積りは、完成後のシステムを想定し、個々の構成要素を洗い出すことで算定する方法です。 構成要素ごとに工数を踏まえて計算するので、適切に細分化できていれば、モレのない最も精度の高い見積りを作成できます。 しかしその算定方法のせいで、完成までの工数が想定しにくい大きいプロジェクトには向いていません。ですので、主に中小企業向けのシステム開発に使われます。

|見積り内訳の9項目
見積り項目が細かいとついスルーしがちですが、ここはしっかり理解しましょう。9つと言っても、大きくは、準備段階・作業中・その他 の3グループと捉えれば考えやすいと思います。
--- 事前準備の費用項目 ---- 1)要件定義費用 システムの目的に基づき、システムの仕様や機能などを検討して文書化するための費用です。
ビジネスの目的を達成するために、どんなシステムを導入したいのか仕様や方針を明確にする必要があります。 2)設計費用 要件定義により決定した内容をシステムとして実現するのに必要な環境を検討するための費用です。具体的には、アプリケーションやデータモデル、サーバーなどのインフラ、運用方法など、各種設計にかかる費用です。 3)デザイン費用(進行管理費) システムを使用する人が使いやすいシステムにするためのUI(user interface)をデザインするための費用です。 受注側と開発側の間に立ち、完了までプロジェクト管理する、進行管理費もこの項目の中に含むシステム開発会社もあります。
--- 作成の費用項目 ---- 4)開発費用 システム開発に必要な専門言語(プログラミング言語)を使用して開発するエンジニアの人件費、技術費のことです。 人月を単位として計算することが多く、エンジニア、プログラマーのレベルにより単価が異なるため、見積り金額に大きな差が出る部分でもあります。 5)テスト費用 開発したシステムが設計通りに動くか、導入前の最終段階で検証するための費用です。 6)導入費用 システムの利用を開始するために行う初期設定費用のことです。 --- その他の費用項目 ---- 7)導入支援費用 開発、導入したシステムの操作方法の説明会を実施したり、使い方マニュアルを作成するための費用です。 8)購入費用 システム開発には、機材(ソフトウェア、サーバーなど)の購入が必要な場合もあるため、購入費として計上することもあります。 9)交通費 開発途中に何度も発生する打ち合わせを訪問先で実施した場合は交通費として計上します。 ◇
上記9項目が、システム開発の見積りにおいて基本的な項目になります。 一つ一つの項目の意味が分かれば、何にどれほどのコストがかかるのか?などの全体図が把握できますし、また、見積り依頼したシステム開発会社が、どの部分のコストを重視しているのか?などその会社の特徴や得意な部分も読み切ることができるようになります。
|システム開発の見積りで失敗しないための3つの注意点
適切な見積りをしてもらうために、主に3つの注意点があります。
1)細かい点まで話し合って決めること システム開発の初期段階から、細部の仕様まで決まっていることは少ないため、大枠の設計後にユーザビリティを考慮して細部の仕様設計、デザインするのが一般的です。 あとから「ここはこうなると思っていた」「こうするとこれが出るはずだ」など齟齬が生まれないためにも、細かい点まで話し合ったうえで、なるべく見積りに反映してもらうようにしましょう。 2)修正リスクの工数も含めた見積りにする 開発を進めるうちに修正が必要となり、最悪の場合、再開発になってしまうトラブルもありえます。システム開発の費用は、エンジニアの工数が大きな要素を占めるため、追加作業による工数増加で、追加費用が発生する事態になることも。 このような事態にも対応できるような、修正リスクを考慮した見積りを作成してもらいましょう。 3)管理する工数も含めた見積りにする 打ち合わせ、進捗管理、品質管理といった管理工数が見積りに含まれているか、確認するようにしましょう。 開発するシステムの内容について、依頼者と開発会社の間で共通認識をとるためにも打ち合わせは重要です。また進捗管理により、修正箇所を早期に発見できれば追加コストの発生を抑制することもできますし、品質管理においては、使い勝手をよくするために修正を加えたりも可能になります。
|BAISOKUなら・・・どうなるの?
複雑な見積り方法、チェックしなければならない多くの見積り項目、見積り依頼前のたくさんの準備、提案された見積りのあちらこちらに神経を張り巡らさなくてはならない・・・。 余計なコストをかけないために、多くの煩わしさを伴うのがシステム開発会社の選定だということがご理解いただけたことと思います。
御社のITシステム化は、ぜひ、BAISOKUへお任せください。 システム開発のためのヒアリングは、弊社主導で丁寧に行います。 その内容をもとにご提出した『お見積書』以外の追加料金は発生いたしません。
しかし、IT技術やクラウドの進化により、システム導入費は、いまや
ひとりぶんの人件費より安いほどです。IT化で業務改善する大きなチャンス!
検討するにあたり誰かに聞いてみたい…とりあえずご相談ください。