Câu hỏi đầu tiên của gần như mọi khách hàng là “làm cái này bao nhiêu tiền”. Câu trả lời trung thực nhất luôn là “còn tuỳ”, và điều đó khiến người hỏi khó chịu. Bài viết này bóc tách những thứ thật sự tạo nên con số trong một bản báo giá gia công phần mềm, để bạn đọc báo giá của bất kỳ đơn vị nào cũng biết mình đang trả tiền cho cái gì.
Chi phí phần mềm là chi phí thời gian của con người
Khác với mua hàng hoá, phần mềm không có giá vốn nguyên vật liệu. Toàn bộ chi phí quy về một thứ: bao nhiêu người, làm trong bao nhiêu ngày. Vì vậy khi đọc báo giá, thứ bạn nên tìm không phải con số cuối cùng mà là bảng ước lượng công sức cho từng hạng mục.
Một báo giá chỉ ghi độc một dòng “Xây dựng phần mềm quản lý: 150.000.000đ” không cho bạn cơ hội thương lượng. Một báo giá chia thành mười lăm hạng mục có ước lượng ngày công riêng cho phép bạn nói “hạng mục báo cáo nâng cao này tạm bỏ, giai đoạn hai làm sau”.
Sáu nhóm chi phí có trong hầu hết dự án
1. Phân tích và thiết kế nghiệp vụ
Thường chiếm 10–20% dự án. Đây là phần ngồi với bộ phận nghiệp vụ, vẽ luồng dữ liệu, xác định phân quyền. Nhiều khách muốn cắt phần này cho rẻ, nhưng cắt ở đây thì trả gấp đôi ở khâu sửa về sau.
2. Thiết kế giao diện
Chiếm 10–15%. Bao gồm dựng bố cục từng màn hình và duyệt qua lại với khách. Số vòng chỉnh sửa nên được ghi rõ trong hợp đồng, ví dụ “tối đa ba vòng chỉnh sửa cho mỗi màn hình”.
3. Lập trình
Phần lớn nhất, thường 40–50%. Chi phí phụ thuộc số màn hình, số quy tắc nghiệp vụ và độ phức tạp của việc phân quyền.
4. Tích hợp với hệ thống khác
Khoản hay bị bỏ sót nhất. Nối phần mềm mới với phần mềm kế toán, cổng thanh toán hay đơn vị vận chuyển luôn tốn công hơn dự tính, vì bạn phụ thuộc vào tài liệu và tốc độ phản hồi của bên thứ ba.
5. Kiểm thử
Chiếm 10–15%. Một dự án không có dòng kiểm thử trong báo giá nghĩa là khâu đó được làm qua loa, và bạn sẽ là người phát hiện lỗi thay họ.
6. Triển khai và hướng dẫn sử dụng
Cài đặt lên máy chủ, chuyển dữ liệu cũ sang hệ thống mới và đào tạo người dùng. Riêng phần chuyển dữ liệu cũ, nếu dữ liệu đang nằm rải rác trong nhiều file bảng tính không thống nhất, có thể tốn bằng cả một hạng mục lập trình.
Những khoản thường bị bỏ sót khiến dự án đội chi phí
- Chuyển dữ liệu cũ. Hỏi rõ báo giá đã bao gồm việc này chưa và bao gồm tới mức nào.
- Chi phí hạ tầng. Máy chủ, tên miền, chứng chỉ bảo mật, dịch vụ gửi tin nhắn — thường tính riêng và trả hằng năm.
- Phí nền tảng bên thứ ba. Cổng thanh toán, dịch vụ bản đồ, dịch vụ gửi email đều có phí theo lượng dùng.
- Bảo trì sau bảo hành. Bảo hành là sửa lỗi của bên làm. Bảo trì là thay đổi theo nhu cầu mới của bạn. Hai thứ khác nhau và tính tiền khác nhau.
Ba câu hỏi làm rõ báo giá
- Hạng mục nào có thể cắt để giảm giá? Câu trả lời cho bạn biết bên báo giá có thật sự chia nhỏ công việc hay chỉ đưa một con số ước chừng.
- Cái gì được coi là phát sinh? Ranh giới này phải rõ trước khi ký, không phải lúc tranh cãi.
- Sau bàn giao, chi phí duy trì hằng năm là bao nhiêu? Nhiều dự án rẻ lúc đầu nhưng đắt về sau vì bị buộc vào gói bảo trì bắt buộc.
Rẻ nhất hiếm khi là tiết kiệm nhất
Trong gia công phần mềm, một báo giá thấp bất thường thường có ba khả năng: bên làm hiểu sai phạm vi, họ định bù bằng phát sinh về sau, hoặc họ cắt khâu kiểm thử. Cả ba đều kết thúc bằng việc bạn trả thêm.
Cách so sánh đúng không phải đặt hai con số cạnh nhau, mà đặt hai bảng phạm vi công việc cạnh nhau. Nếu bên A rẻ hơn 30% nhưng phạm vi thiếu mất phần chuyển dữ liệu và kiểm thử, thì họ không hề rẻ hơn.