報價單上寫「系統開發一式 XX 萬」的那一行,通常不是重點,真正決定你會不會被追加預算、會不會被綁死的,是報價單「沒寫」的那些項目。這篇不談技術實作,只談身為發案方,簽約前該把哪些事情釘死。
報價單上最常被省略的六件事
先講結論:一份看起來便宜的報價單,多半是把成本推到你上線之後。你在比價時,請主動問廠商這六項有沒有含:
- 測試環境與正式環境是否各建一套。只做一套的話,未來每次改版都是拿正式環境當白老鼠。
- 第三方服務費用由誰付。金流、簡訊、地圖 API、雲端主機、憑證,這些是月費、年費,不是一次性。報價單常常只寫「串接」不寫「費用」。
- 保固期與保固範圍。保固是只修 bug,還是包含小幅調整?「bug」的定義由誰認定?沒寫清楚就是吵架的伏筆。
- 上線後的維運是月費制、工時制,還是不含。很多報價單默認「交付後就結束」,但軟體不像家具,交付日就是維運起點。
- 教育訓練與文件。要不要教你的員工怎麼用?操作手冊、後台說明有沒有?
- 資料轉移。如果你現在有舊系統的資料要搬過來,這件事的工時常常被低估甚至遺漏。
經驗法則是:報價單上「一式」兩個字越多,未來的爭議就越多。要求廠商把每一項拆開報,即使總價不變,責任邊界也會清楚很多。
合約要釘死的三組條款
第一組:原始碼與帳號歸屬。 這是最容易被輕忽、卻最容易把你綁死的地方。請在合約裡明確寫:原始碼歸誰所有、驗收後多久內交付、以什麼形式交付(例如放到你公司的 Git 帳號)。同樣重要的是「帳號歸屬」——雲端主機、網域、金流後台、第三方服務的主帳號,都應該用你公司的 Email 註冊,廠商是被授權的協作者,不是擁有者。這件事在合作愉快時看不出差別,翻臉時決定你能不能換廠商。
第二組:驗收條件。 「功能正常運作」這種文字沒有意義。驗收應該綁在具體可測的清單上:某某功能的輸入輸出、某某流程能從頭跑到尾、效能在合理範圍內(例如一般使用者能接受的等待時間)。清單越具體,雙方越輕鬆。
第三組:交接清單。 專案結束那天,你至少要拿到:原始碼與版本控制紀錄、資料庫結構與備份、所有第三方服務的帳密清單、系統架構說明、部署方式說明、已知問題清單。這份清單應該寫進合約,不是口頭承諾。
舉個例子,假設一家傳產想做一套線上訂貨系統,選了報價最低的廠商,合約沒寫原始碼歸屬也沒列交接清單。一年後想加功能,原廠商報價太高想換人,才發現原始碼拿不到、雲端帳號在廠商名下、資料庫結構沒文件——這時候換廠商的成本,可能比當初多付的差價還高。這種情境在市場上並不少見。
我們的觀察
挑軟體廠商跟挑裝潢師傅很像:便宜的報價不見得是陷阱,但「什麼都沒寫清楚」的報價一定是。願意跟你把每一項拆開講、把責任邊界寫進合約的廠商,通常做事也比較有章法。簽約前多花兩週把這些細節談完,比上線後花兩年跟廠商拉扯划算得多。
