ChatGPT-4oにシステム開発の工数見積もりを取らせてみた

ある日、工数見積もりを行っている時にふと思った。
あれ、これ今の生成AIならもしかしたらできんじゃねと。

既存のシステムだとそのシステム独自のドメイン知識やしがらみへの理解が必要になるため難しいかもしれないが、ある程度前提条件も書かれていて、その情報からゼロベースで提案、工数だしを行う状況下なら結構いける気がする。

というわけでChatGPT 4oに、まずは小手調べに下記のような要件を書いたプロンプトを与えてみた。

あなたは平均的なエンジニアが在籍する日本の組織のシステムアーキテクトです。
この組織のエンジニアの1人日の単価は5万円です。1人日は8時間分の稼働を表します。
下記の要件のシステムをAWSを利用して構築する見積もりを作成してください。
見積もりにはAWSの利用料も別途含みます。
出力はMarkdown形式にしてください。
金額サマリは項目ごとに整形された表にしてください。
--------------------------
◆システム概要
ChatGPTのようなアプリケーションを構築し、社内ユーザーにのみ展開したい。
社内のイントラネットからアクセスできるサイトをクロールしその情報をRAGでLLMにグラウンディングできるようにしたい。
◆想定機能
・社内のMicrosoftADと連携したログイン画面
・LLMとチャットを行う機能
・チャットの履歴を保存する機能
・管理者用の利用者を管理する機能
◆備考
3か月でローンチしたい。
具体的なアーキテクチャや利用するプロダクト、プログラミング言語も教えて欲しい。

今色んなところでふわっと要望として降ってきてそうなものを考えてみた。
さてどのような結果になるだろう。

システム構築見積もり

1. 要件整理

  • システム概要: ChatGPTのようなアプリケーションを社内ユーザー向けに展開
  • 機能:
  • 社内MicrosoftAD連携のログイン画面
  • LLMとのチャット機能
  • チャット履歴の保存機能
  • 管理者用利用者管理機能
  • ローンチ期間: 3か月

2. アーキテクチャ

2.1 利用するAWSプロダクト

  • IAM: ユーザー管理と認証
  • Amazon S3: チャット履歴の保存
  • Amazon RDS: データベース
  • Amazon EC2: アプリケーションサーバー
  • AWS Lambda: サーバーレス機能
  • Amazon CloudFront: コンテンツ配信
  • Amazon Cognito: Microsoft AD連携
  • Amazon SageMaker: LLMモデルのホスティング
  • Amazon Elasticsearch Service: クロールデータのインデックス化
  • Amazon VPC: 仮想プライベートクラウド

2.2 プログラミング言語

  • フロントエンド: React.js
  • バックエンド: Python (Django)、Node.js
  • インフラ管理: Terraform

3. 作業工程と工数

3.1 設計フェーズ (2週間)

  • システム設計、要件定義、プロトタイプ作成
  • 工数: 4人日 x 10日 = 40人日
  • 費用: 40人日 x 50,000円 = 2,000,000円

3.2 開発フェーズ (8週間)

  • フロントエンド開発、バックエンド開発、インフラ構築、テスト
  • 工数: 8人日 x 40日 = 320人日
  • 費用: 320人日 x 50,000円 = 16,000,000円

3.3 テスト・デプロイフェーズ (2週間)

  • 総合テスト、デプロイ、ドキュメント作成
  • 工数: 4人日 x 10日 = 40人日
  • 費用: 40人日 x 50,000円 = 2,000,000円

4. AWS利用料金見積もり (月額)

4.1 サーバーコスト (EC2, SageMaker)

  • EC2インスタンス: m5.large (8時間/日 x 22日)
  • 費用: 約50,000円/月
  • SageMaker: ml.m5.large (24時間稼働)
  • 費用: 約150,000円/月

4.2 ストレージコスト (S3, RDS)

  • S3ストレージ: 100GB
  • 費用: 約2,000円/月
  • RDS: db.t3.medium
  • 費用: 約15,000円/月

4.3 ネットワークコスト (CloudFront)

  • データ転送量: 1TB
  • 費用: 約10,000円/月

4.4 その他サービス

  • Elasticsearch: t3.medium (8時間/日 x 22日)
  • 費用: 約20,000円/月
  • Cognito: ユーザー管理費用
  • 費用: 約5,000円/月
  • Lambda: サーバーレス処理
  • 費用: 約3,000円/月

5. 見積もりサマリ

項目工数 (人日)費用 (円)
設計フェーズ402,000,000
開発フェーズ32016,000,000
テスト・デプロイフェーズ402,000,000
合計 (工数)40020,000,000
AWS利用料金 (月額)約255,000
合計 (3か月分 AWS料金)765,000
総合計40020,765,000

6. 合計費用

20,765,000円

この見積もりには開発に必要な人件費と3か月分のAWS利用料金が含まれています。これらの費用は概算であり、実際の費用はシステムの詳細設計や運用状況により変動する可能性があります。

あれ、これ結構ヤバイ。
イニシャルコスト二千万円。RAGの要件を無視したりBedrockを使ってなかったりびみょいサービス選定も見受けられるがそれでも意外にいい線いってる気がする…。

次に、RFPをそのままぶち込んでみたらどうなるか今度はIPAが公開している仮想のRFPをこのプロンプトとともに投げてみる。

あなたは平均的なエンジニアが在籍する日本の組織のシステムアーキテクトです。
この組織のエンジニアの1人日の単価は5万円です。1人日は8時間分の稼働を表します。
アップロードしたファイルはある企業から出されたRFPです。
これを査読しシステム提案と見積もりを行ってください。
出力はMarkdown形式にしてください。
金額サマリは項目ごとに整形された表にしてください。

こちらが生成結果。

システム提案書と見積書

プロジェクト概要

本プロジェクトは、XXXXX株式会社の経営支援システムの再構築を目的としています。現行の経営管理サブシステムに加え、新たに活動管理サブシステムを開発し、全体の業務効率化と迅速な意思決定を支援することを目指します。

システム全体構成

本システムは以下の主要な機能を含みます。

  • 店舗別メニュー別予実績管理
  • 活動計画作成・管理
  • 売上/営業利益管理
  • 労務費管理
  • 経費管理
  • 情報分析結果管理
  • PDFファイル生成

提案するシステムの特徴

  • 使用技術: Java, J2EEフレームワーク
  • 開発手法: アジャイル開発手法
  • インフラ: クラウドベースの冗長化構成

開発スケジュール

プロジェクトの期間は、2024年7月1日から2025年6月30日までの12ヶ月を予定しています。以下は主要なマイルストーンです。

マイルストーン期間
要件定義2024年7月1日~8月31日
システム設計2024年9月1日~10月31日
ソフトウェア開発2024年11月1日~2025年3月31日
システムテスト2025年4月1日~5月31日
本番移行と運用開始準備2025年6月1日~6月30日

開発体制

  • プロジェクトマネージャ: 1名
  • システムアーキテクト: 1名
  • 開発エンジニア: 5名
  • テストエンジニア: 2名

開発費用の見積もり

人件費

1人日の単価は5万円とし、1人月を20人日と仮定します。

作業項目工数(人月)単価(万円)合計金額(万円)
要件定義4100400
システム設計3100300
ソフトウェア開発251002500
システムテスト8100800
本番移行と運用準備3100300
総計434300

ハードウェア・ソフトウェア費用

  • サーバー(クラウド利用料含む): 500万円
  • 開発ツール・ライセンス料: 200万円

その他の費用

  • プロジェクト管理費: 300万円
  • 教育・トレーニング費用: 100万円

金額サマリ

項目金額(万円)
人件費4300
ハードウェア・ソフトウェア費用700
その他の費用400
総計5400

システム提案のメリット

  • 経営情報の迅速かつ正確な収集・分析が可能となり、意思決定の迅速化が期待できます。
  • 店舗別、メニュー別の予実績管理により、詳細な経営分析が可能となります。
  • 活動管理サブシステムの導入により、現場の迅速な対応と改善活動が推進されます。

注意事項

  • 提案内容には、予算を超える部分の追加提案が含まれています。予算調整のための詳細な協議が必要です。
  • 開発期間は現時点の見積もりであり、実際の進捗に応じて調整が必要です。

以上が提案書と見積書の内容です。詳細な仕様や追加のご質問については、別途ご連絡ください。

要点をおさえてそれっぽい提案と見積もりをまたも数秒で返してきた。
前提条件次第でこういったものの金額は大分揺れるがRFP一枚ポンと投げつけられた時の見積もりとしてはそう悪い内容ではないと思う。ちゃんとまとめるべきことまとめてるし。

その組織が得意とするパッケージやSIのやり方、エンジニアのスキルセットや単価表を前提知識としてプロンプトで渡したり、RAGで過去の見積もりを参照させたりすればもっと精度が上がりそうだ。


興味本位で試しただけでも結構ショッキングな結果になってしまった。
ベンダー側が提案や見積もりのたたき、アーキ検討のたたきに使えるのは言うまでもなく、依頼側もこれで相見積もりやベンダー側の情報提供がなくても自分たちの要求するものがどの程度のコスト感なのかわかってしまうということにもなりかねない。

上流の上流、コンサルや営業やプリセールスのフェーズも生成AIの浸食とはまったく無縁じゃない。