外注費用の相場と工数の目安を要件定義の精度で変える
要件定義の精度が高いほど見積もりのブレ幅が小さくなり、複数社比較が意味を持ちます。逆に言えば、要件が曖昧なまま発注した場合、ベンダ側は「最悪ケース」を想定した金額を積み上げるため、見積もりが実態より大きく膨らむ構造があります。
要件定義の完成度別・見積もり乖離幅の傾向
要件定義の完成度が見積もり精度に直結する理由は、ベンダの「不確実性コスト」にあります。決まっていない仕様はリスクとして換算されます。
IPA(情報処理推進機構)の「ソフトウェア開発分析データ集2022」は、国内5,546件の実プロジェクトを集計した公開データです(出典: IPA「ソフトウェア開発分析データ集2022」)。同データによると、情報通信業を含む国内ソフトウェア開発プロジェクトの生産性中央値は9.1FP(ファンクションポイント)/人月と報告されています。ファンクションポイント(FP)とは、システムの機能量を定量化する指標で、開発規模の単位として広く用いられます。
また、IPA「ソフトウェア開発データ白書2018-2019 情報通信業編」(238件分析)では、開発規模100FP未満の小規模プロジェクトにおける実績値が集計されています。
| 指標 | 実績値 | 出典 |
|---|---|---|
| 平均工期 | 約3.9か月 | IPA「ソフトウェア開発データ白書2018-2019 情報通信業編」 |
| 平均工数 | 約6.2人月 | 同上 |
| 生産性中央値 | 9.1FP/人月 | IPA「ソフトウェア開発分析データ集2022」 |
中小企業が発注するシンプルな業務システム(勤怠管理・在庫管理など)は、この100FP未満の規模に収まるケースが多く、「工期3〜4か月・工数6人月前後」が一つの参照軸になります。ただし、要件の曖昧さはそのまま工数の上振れリスクに変換されます。
要件定義を完成させてから発注した場合と、未完成のまま発注した場合では、ベンダが積む「不確実性マージン」の大きさが変わります。具体的には以下の差が生じます。
- 要件完成後に発注した場合: 機能スコープが固定されているため、ベンダは実績ベースで見積もれる。比較可能な数値が複数社から集まる
- 要件が曖昧なまま発注した場合: 「後から追加が出る前提」でベンダが余裕を積む。または要件確定後に追加費用が発生する「仕様追加」が起きやすい
- 口頭合意が多い場合: 契約後の認識ズレが追加変更(追加費用)の温床になる
費用の絶対値は案件により大きく変動するため、複数社への相見積もりを「同じ要件定義書」で取得し、差額の根拠をベンダに説明させることが精度の高い比較につながります。費用相場の詳細は「[社内システム外注費用の相場と工数単価の見方](/)」で別途解説しています。
クラウドサービス活用とスクラッチ開発の選択基準
要件定義の段階で「スクラッチ開発か、既存クラウドサービスか」を決めることは、費用と工期の両方に影響する重要な判断です。この選択を後回しにすると、ベンダ選定の軸がずれます。
総務省「令和6年通信利用動向調査(企業編)」によると、国内企業全体のクラウドサービス利用率は2024年時点で**77.0%に達しています。また、同調査の令和5年版では、従業者数300人未満の中小規模企業に限定したクラウド利用率は72.4%**と報告されており、大企業との差は縮まりつつあります(出典: 総務省「令和5年通信利用動向調査(企業編)」)。
ただし、同調査では活用目的の中心はメールやグループウェアなど汎用ツールであり、基幹業務への適用は限定的とも示されています。つまり「クラウドを使っている」と「業務システムをクラウドで構築している」は別の話です。
要件定義の段階で以下の基準を確認することで、選択肢を絞り込めます。
| 判断軸 | クラウドサービスが向いている | スクラッチ開発が向いている |
|---|---|---|
| 業務プロセスの独自性 | 一般的な業務フローに近い | 自社固有のルールが多い |
| 既存システムとの連携 | APIが公開されている | 独自DBや旧来システムとの深い連携が必要 |
| 初期費用の制約 | 抑えたい | ある程度確保できる |
| 改修・拡張の頻度 | 低い | 高い(機能追加が継続的に発生する) |
| 運用体制 | 社内IT担当が手薄 | 内製チームまたは保守契約先がある |
クラウド移行の発注ステップに特化した詳細は「[社内システムクラウド移行の失敗を防ぐ、発注ステップガイド](/)」を参照してください。本記事では、要件定義の段階でこの選択肢を意識的に検討し、仕様書に「前提となるアーキテクチャの方向性」として明記することを推奨します。それだけでベンダへの提案依頼の精度が上がります。
つまずきやすい箇所:技術選定・データ連携・権限設計の落とし穴
現場担当者が最もつまずくのは「既存システムとのデータ連携仕様」の記述で、ここが曖昧だと追加費用が発生するリスクが高まります。技術選定と権限設計も、要件定義段階で決めておかなければ後から大きなやり直しが生じる代表的な項目です。
既存システムとのAPI・CSV連携を要件に落とし込む方法
APIとは、異なるシステム同士がデータをやり取りするための接続口のことです。この仕様の記述が曖昧なまま発注すると、開発途中に「接続できない」と判明し、追加対応費用が発生するケースが少なくありません。
要件定義の段階で確認すべき連携の観点を以下に整理します。
| 確認項目 | 確認する内容の例 |
|---|---|
| 連携対象のシステム名とバージョン | 販売管理システム「〇〇」Ver.3.2 など |
| 接続方式 | REST API、SOAP、CSVファイル連携、DB直結のいずれか |
| APIドキュメントの有無 | 仕様書が公開されているか、取得できるか |
| 認証方式 | APIキー、OAuth2.0、Basic認証など |
| データの取得・更新頻度 | リアルタイム同期か、夜間バッチ処理か |
| エラー発生時の処理 | 失敗したデータをどう扱うか、アラートは誰に飛ばすか |
特に注意が必要なのは、既存システムのベンダとの連絡調整です。APIドキュメントを取り寄せるだけでなく、「そのAPIが外部接続を許可しているか」を確認するまでが要件定義のスコープです。許可されていない場合、接続方式をCSV連携に変更する判断が必要になります。
CSVによるファイル連携を選択する場合も、以下の点を要件に明記します。
- ファイルの文字コード(UTF-8、Shift-JIS など)
- ヘッダ行の有無と列の定義
- ファイルの置き場所と受け渡し方法(SFTP、共有フォルダなど)
- ファイル名の命名規則と取り込みタイミング
「CSVで連携できる」という合意だけでは不十分です。上記が未定のまま発注すると、ベンダが独自の前提で実装を進め、受け入れテスト段階で不一致が発覚します。
ユーザ権限設計を要件定義段階で決めるべき理由
ユーザ権限設計とは、「誰がシステムの何の機能を使えるか」を決める設計のことです。開発着手後に変更すると、画面設計やデータベース構造の修正を伴うため、手戻りコストが大きくなります。
権限設計が後回しにされがちな理由は、業務要件と比べて「地味に見える」からです。しかし、権限の粒度を誤ると、情報漏えいリスクや操作ミスの温床になります。
要件定義段階で決定すべき権限設計の項目は次のとおりです。
- ロール(役割)の種類を列挙する 例: システム管理者、一般ユーザ、閲覧専用ユーザ、外部パートナーなど
- 機能ごとの操作可否マトリクスを作成する 「データの閲覧」「登録」「編集」「削除」「承認」「エクスポート」をロール別に○×で表にする
- 部署・拠点・得意先単位でのデータ参照範囲を定める 「営業担当者は自分の担当先データのみ閲覧可」といった業務ルールを言語化する
- 管理者権限の付与・剥奪フローを決める 入退社・異動時に誰が申請し、誰が承認するかを確認する
権限設計に漏れがあると、ベンダは「全ユーザが全機能を使える」前提で実装します。後から「この担当者には削除ボタンを見せたくない」という要望が出ても、追加工数が発生します。
技術選定については、クラウドサービスかスクラッチ開発かという選択が要件定義の方向性を大きく左右します。この判断基準は前のセクション(セクション4)で詳しく整理していますので、そちらも合わせてご参照ください。