- Webサイトやアプリの価格は、選んだことの合計です。画面、プラットフォーム、連携するシステム、言語、そして公開後の保守を誰が担うか。
- 同じ案件でも見積もりが違うのは、各社が要件を違う形で解釈し、含める行が違うからです。
- 初日に要らないものは削れます。テスト、セキュリティ、ソースコードの権利は削らないでください。
- 要件を一枚にまとめ、同じ一枚をすべての会社に送れば、見積もりを比べられます。
価格は自社で選べる判断の合計です
工務店に家の値段を聞くと、何部屋か、何階建てか、どの素材か、と聞き返されます。「Webサイト制作の費用はいくらか」「アプリ開発の費用はいくらか」も同じです。同じ名前の案件でも、規模は大きく違います。自社で決められるのは、価格を形づくる一つひとつの判断です。
この記事を通して出てくる言葉がスコープ(Scope)です。システムがすべきことと、含めないことの一覧です。よい見積書とは、すべての行に金額が付いたスコープです。
価格を動かす十の要因
画面と操作の流れ 最も大きな要因です。フードデリバリーのアプリにはメニュー、カート、決済、注文追跡があり、すべての画面の裏に管理画面と異常時の処理があります。たとえば、支払いが済んだ直後に店が閉まった場合です。毎回正しく動かなければならない流れは、情報を表示するだけの画面より費用がかかります。
プラットフォーム Webサイト、Webアプリ、iOS、Android、LINEミニアプリ。ひとつのコードで両OSに対応するクロスプラットフォーム開発は、別々に作るより費用を抑えられます。端末の機能に依存する部分は例外です。
デザインの水準 標準的な画面セットに色とロゴを合わせる方が、すべての画面を一から設計してアニメーションを付けるより安くなります。デザインに力を入れるのは、お客様が毎日使う画面で十分です。
連携するシステム(システム連携) ERP、在庫、POS、会員システム、決済代行、LINEログイン、配送、タイの電子税務インボイス(e-Tax Invoice)。費用の多くは画面からは見えません(末尾の開発チーム向けメモを参照)。
AI機能 チャット、タイ語の書類を読むOCR、商品のおすすめ。開発作業に加えて、利用量に応じた月額費用と、御社の実際の業務の例を使ったテストが必要になります。
コンテンツと言語 文章、写真、商品データを誰が用意するか。二言語の画面は、言語によって文章の長さが違うため、デザインとテストが二回分になります。
セキュリティと個人情報 タイの個人情報保護法(PDPA)の対象となる個人情報を扱うシステムには、同意画面、依頼に応じたデータ削除、暗号化、ペネトレーションテストが必要です。
公開後の保守 サーバー費用、iOSとAndroidの更新への対応、不具合の修正。初日の価格は、システムの寿命全体にかかるTCO(総保有コスト)の一部にすぎません。
納期の圧力 作業に必要な期間より短い納期は、人員の追加を意味します。価格は上がり、品質はたいてい下がります。
チームの形態 フリーランス、開発を外注する代理店、設計・開発・テストを自社チームで行うソフトウェアハウス。含まれるものが違うため価格も違います。二年後にも電話できる相手がいるかどうかも、その一つです。
| 要因 | 高くなる条件 | 安くなる条件 | 開発会社に聞く質問 |
|---|---|---|---|
| 画面と操作の流れ | 失敗できない流れ(決済など) | まだ誰も使わない画面を外す | この見積もりは画面と流れをいくつ数えていますか |
| プラットフォーム | iOSとAndroidを別々に開発 | クロスプラットフォーム、または一つのOSから | 顧客の多くはどちらを使っていますか |
| デザインの水準 | 全画面を一から設計、アニメーション | 標準の画面セット | どの画面が独自デザインで、どれが標準ですか |
| 連携するシステム | APIやテスト環境のない既存システム | 第一フェーズはファイルの一括送信 | 相手のシステムが止まったら、アプリはどうなりますか |
| AI機能 | 人の確認なしで毎回正確さが必要 | AIが下書きし、人が確認 | AIの月額費用は何に基づいて決まりますか |
| コンテンツと言語 | 初日から多言語 | 自社でコンテンツを用意し、一言語から | 文章、写真、商品データは誰が用意しますか |
| セキュリティとPDPA | 金融や健康のデータ | 必要なデータだけを集める | 同意画面とデータ削除は含まれていますか |
| 公開後の保守 | 計画がなく、修正のたびに新規案件 | 対象範囲が明記された保守プラン | 二年目には何に費用がかかりますか |
| 納期 | 作業に必要な期間より短い納期 | 準備できた部分から公開 | 納期を延ばすと価格は変わりますか |
| チームの形態 | テスト、ドキュメント、保証を含む | 小規模案件ならフリーランス | 実際に作業するのは誰で、障害時に誰が対応しますか |
見積書を一行ずつ読む
いちばん読みやすい見積書が、いちばん危ないことがあります。三行で、金額が一つ。書かれていないものは、後から追加で払うものです。漏れのない見積書には、要件の整理とプロトタイプ(試作版)、デザイン、開発、管理画面、各システム連携、テストとUAT(受け入れテスト)、サーバー構築またはストア申請、ドキュメントとソースコード、研修、保守プランが並びます。
見積書を一行ずつ読む
- ステップ1 受け取るものと作業を分ける ストアに公開されたアプリやドキュメントなど、「もの」の行に線を引きます。「開発」「保守」と書かれているだけの行は、何を受け取れるのかを確認します。
- ステップ2 抜けている行を探す 上の一覧と比べます。よく抜けるのは管理画面、テスト、ドキュメントです。含まれていないのか、別の行に入っているのかを聞きます。
- ステップ3 前提を探す たとえば、発注側がコンテンツを用意する、既存システムにすぐ使えるAPIがある、といった前提です。前提が外れると追加作業になります。
- ステップ4 変更時の条件を読む 途中で画面を追加したら、どう計算し、誰が承認し、納期にどう影響するのかを確かめます。
- ステップ5 支払いを目に見える成果に結び付ける クリックできるプロトタイプや試せるシステムに結び付いた支払いの方が、日付に結び付いた支払いより確実です。
- ステップ6 質問を返す 一社あたり十問まで。明確に、早く答える会社が、この先何か月も一緒に働く相手です。
同じ案件なのに見積もりが違う理由
要件があいまいだと、各社は自分の前提で空白を埋めます。ある会社にとって「会員機能」はメールでの登録で、別の会社にとっては会員ランクとポイントが付いたLINEログインです。ある見積もりは管理画面、テスト、ドキュメントを含み、別の見積もりはアプリ本体だけです。異常時のテストをし、他の人が読み継げるコードを書くチームは時間がかかります。安いチームが省いた分は、二年目に技術的負債として戻ってくることが多いのです。また、固定価格には確実さの対価が含まれ、時間単価はリスクを発注側に移します。
架空のケース
ノンタブリーの化粧品会社(社名と詳細は架空)が、店舗のPOSと連携するポイントアプリを作りたいと考えました。オーナーは短い要件を二社に送りました。一社目はフリーランスのチームで、見積書は三行。iOSとAndroidのアプリ、会員機能、通知です。二社目はソフトウェアハウスで、十四行あり、金額はかなり高めでした。オーナーはその場で一社目に決めかけました。
二枚を並べると、一社目には管理画面がなく、販促のたびにマーケティング担当が開発者に追加を頼む必要があります。POS連携もないのでポイントは手入力で、PDPAの同意画面もありません。オーナーは要件を一枚に書き直し、両社に送りました。一社目は行が増えて金額が上がり、二社目は一つのOSで始める第一フェーズを提案しました。差は縮まり、最後は一つの質問で決まりました。POS連携に問題が起きたとき、責任を持つのは誰か。
削ってよいもの、削ってはいけないもの
価格が予算を超えたら、初日に要らないものを削り、要るものの品質は保ちます。
削ってよいもの:二つ目のプラットフォーム、まだ顧客のいない言語、アニメーション、まだ誰も使わない管理機能、当面はファイルの一括送信で代わりになる連携、テストに足るデータがまだないAI機能。
削ってはいけないもの:テストとUAT、セキュリティと同意画面、バックアップ、マスターデータ用の管理画面、本番と分けたテスト環境(ステージング環境)、ドキュメント、そして契約で明確にしたソースコードの所有権。これらを削ると今日は安くなりますが、同じ開発会社にずっと頼ることになります。これをベンダーロックインと呼びます。
見積もりを依頼する前に、一枚にまとめること
- 利用者は誰か、何グループあるか、初日にそれぞれ何ができる必要があるか
- 主な業務を重要な順に並べたものと、まだ要らないもの
- 顧客の多くが実際に使っているプラットフォーム
- 連携するシステム、APIの有無、それぞれの管理者
- 扱うデータと、個人情報や機微なデータが含まれるか
- 初日に必要な言語と、コンテンツを用意する人
- 公開後の保守を担うのは自社チームか開発会社か
- 納期とその理由、成功を測る指標
段階的に作り、証明できたものに払う
第一フェーズは、すぐに売上を生むか作業を減らす流れです。公開し、測定し、実際の数字を見て次のフェーズを決めます。MVPと同じ考え方で、例はアイデアから試作品まで7日間にあります。各フェーズに独自のスコープと価格が必要で、最初に作ったものは作り直さずに拡張できなければなりません。契約前に、「フェーズ2」が価格に含まれているのか、別見積もりなのかを確認してください。
要件がまだスコープにできるほど固まっていなければAI開発会社に依頼する前に何を準備するかを、投資に見合うかを確かめたいなら自社は手作業に毎月いくら払っているのか?をお読みください。
開発チーム向け · 「システム連携」の一行に含まれる作業
「システムXと連携」という一行には、少なくとも六つの作業があります。Auth:API Key、OAuthまたはService Account、キーのローテーション、最小権限。Error Handling:Timeout、取引を重複させないRetry(Idempotency)、送信に失敗した項目のキュー。Data Mapping:同じ名前で意味の違う項目、単位、商品コード、タイ語の文字コード。Environment:タイの既存システムの多くにはSandboxがありません。Rate Limit:相手側が回数を制限している場合はまとめて送ります。Reconciliation:二つのシステムが一致しているかを示す日次の照合レポート。この六つから見積もってください。APIのエンドポイント数だけで数えると、必ず実際より少なくなります。
着手前に価格をはっきりさせる私たちの進め方
価格を決める情報は、御社の方々の頭の中にあります。営業は顧客がどう注文するかを、経理は書類がどうあるべきかを、ITは既存システムがどこまでつながるかを知っています。DNA Makerはまずその方々の話を聞き、画面、流れ、連携するシステムとして書き出し、作業を始める前にスコープと価格を固定します。
次にクリックできるプロトタイプを作って試していただき、御社の承認後に開発を始めます。チームはすべて私たち自身のメンバーで、外注はしません。毎週デモをお見せし、ソースコードはスコープに沿ってお渡しします。大規模な案件では、単独で稼働できる第一フェーズを先にご提案します。私たちの提案書の形は提案書サンプルでご覧いただけます。御社の要件の概算を知りたい場合は、Dreamに話していただければ数分で答えが出ます。AI Web開発とAIアプリ開発のページもご覧ください。私たちはこれまで500件を超えるプロジェクトを手がけ、タイの銀行、病院、大手企業グループの仕事も担当してきました。
SOFTWARE ENGINEERING GLOSSARY
ソフトウェア開発用語集
| 用語 | 意味 | わかりやすい例 | 開発チームへの質問 |
|---|---|---|---|
| スコープ(Scope) | システムがすべきことと、含めないことの一覧 | 「LINEで登録できる。会員ランクはまだ含めない」 | 今日の要望のうち、スコープ外はどれですか |
| プロトタイプ(試作版) | コードを書く前に作る、クリックできる画面 | 営業チームが注文を試し、確認画面がないことに気づく | 開発を始める前にプロトタイプを試せますか |
| システム連携 | 新しいシステムと既存システムの間でデータをやり取りできるようにすること | アプリが5分ごとにPOSから在庫を取り込む | 相手のシステムが止まったとき、利用者には何が見えますか |
| ソースコードの所有権 | 引き渡し後、コードが誰のものかについての取り決め | 会社がコードとドキュメントをすべて持ち、別のチームに改修を頼める | 最終支払いの後、コードは自社のものですか。どこに保管されますか |
| ベンダーロックイン | コード、ドキュメント、権限がないため開発会社を替えられない状態 | ドメインと開発者アカウントが受託側の名義になっている | 明日契約を終えても、自社だけで運用を続けられますか |
