Chuyển tới nội dung
SourceViet

Bàn giao phần mềm cần những gì: danh sách 11 thứ phải nhận

Một file zip không phải là bàn giao. Đây là danh sách nên ghi vào hợp đồng, và phép thử chứng minh việc bàn giao là thật.

HN

Hiếu Nguyễn

Founder

Đăng ngày · Đọc 7 phút

Bàn giao phần mềm cần những gì: danh sách 11 thứ phải nhận

Bàn giao là chỗ nhiều doanh nghiệp bị thiếu mà không biết, vì phần mềm vẫn đang chạy nên không có gì báo động. Vấn đề chỉ hiện ra một năm sau, khi cần sửa và người làm đã đi.

Dưới đây là mười một thứ tạo thành một lần bàn giao đầy đủ. Copy vào hợp đồng, ở phần điều kiện thanh toán đợt cuối.

Mã nguồn và hạ tầng

1. Toàn bộ mã nguồn, đọc được. Không minify, không obfuscate, kèm lịch sử commit nếu có dùng Git. Lịch sử commit quan trọng hơn bạn nghĩ — nó cho người sửa sau biết vì sao một đoạn code được viết như vậy.

2. Danh sách biến môi trường, kèm giải thích từng biến. Đây là thứ bị thiếu nhiều nhất. Mã nguồn không chạy được nếu thiếu một khoá API mà chỉ bên làm biết là có.

3. Lược đồ cơ sở dữ liệu và các file migration. Không chỉ một bản dump. File migration là thứ cho phép dựng lại cấu trúc dữ liệu từ trắng.

4. Tài liệu triển khai. Từng bước, từ máy trắng tới website chạy. Phép thử: một lập trình viên chưa từng thấy dự án làm theo tài liệu này có chạy được không.

Quyền truy cập

5. Tên miền, đứng tên bạn. Kiểm tra bằng whois, không tin lời nói. Nếu đứng tên bên làm, đây là điều kiện chặn thanh toán.

6. Hosting hoặc VPS, tài khoản của bạn. Thanh toán bằng thẻ của bạn, email khôi phục của bạn.

7. Mọi tài khoản bên thứ ba. Dịch vụ gửi email, lưu trữ ảnh, cổng thanh toán, Google Analytics, Search Console. Liệt kê từng cái kèm ai đang là chủ tài khoản.

Chúng tôi viết kỹ hơn về bốn thứ phải đứng tên bạn trong bài về sở hữu mã nguồn.

Vận hành

8. Tài liệu vận hành cho người dùng. Không phải tài liệu kỹ thuật — tài liệu cho nhân viên: làm thế nào để tạo đơn, sửa giá, xuất báo cáo. Kèm ảnh chụp màn hình.

9. Một buổi đào tạo được ghi lại. Ghi màn hình, 45–90 phút, lưu thành file bạn giữ. Nhân viên mới vào sáu tháng sau xem lại được. Đây là thứ rẻ nhất trong danh sách và có giá trị cao nhất.

10. Quy trình sao lưu và phục hồi, đã được thử. Không phải "có sao lưu tự động hàng ngày" — mà là: sao lưu ở đâu, ai tải về được, và đã thử phục hồi một lần chưa. Một bản sao lưu chưa từng được phục hồi thử không phải bản sao lưu.

Điều ít ai yêu cầu

11. Danh sách những thứ cố tình không làm, kèm lý do.

Đây là thứ có giá trị cao nhất và gần như không bao giờ được giao.

Mọi dự án đều có những quyết định bỏ qua điều gì: không xử lý trường hợp khách có hai địa chỉ, không tính thuế cho đơn xuất khẩu, không hỗ trợ đăng nhập nhiều thiết bị cùng lúc. Những quyết định này thường đúng ở thời điểm đó.

Vấn đề là một năm sau, khi có người gặp đúng trường hợp đó, không ai biết là nó đã được cân nhắc và bỏ qua có chủ đích. Họ báo lỗi, người sửa mới đi tìm nguyên nhân trong code, và mất ba ngày để phát hiện ra đó không phải lỗi.

Một trang giấy với mười dòng "chúng tôi không làm X vì Y" tiết kiệm nhiều ngày làm việc trong tương lai.

Phép thử chứng minh bàn giao là thật

Ghi điều này vào hợp đồng, ở điều kiện thanh toán đợt cuối:

Bên B bàn giao gói tài liệu và mã nguồn. Bên A chỉ định một lập trình viên độc lập, dựng lại hệ thống trên một máy chủ mới chỉ dựa vào gói bàn giao, không hỏi Bên B. Nếu hệ thống chạy được, đợt cuối được thanh toán.

Điều khoản này thay đổi hành vi của cả hai bên, và nó là điều khoản duy nhất trong danh sách có tác dụng cưỡng chế. Bên làm việc tử tế sẽ đồng ý ngay; bên phản đối cho bạn một thông tin hữu ích.

Nếu bạn đang chuẩn bị ký hợp đồng

Đưa mười một mục trên vào phần bàn giao, và giữ lại 15–20% giá trị hợp đồng cho tới khi bàn giao hoàn tất. Đây là thực hành thông thường và không ai làm ăn tử tế phản đối.

Với dịch vụ của chúng tôi, mười một mục này là mặc định, kể cả mục thứ mười một. Nếu bạn muốn xem mẫu tài liệu bàn giao trước khi quyết định, nhắn Zalo — chúng tôi gửi bản của một dự án cũ, đã xoá thông tin khách.

  • bàn giao phần mềm
  • checklist bàn giao dự án
  • hợp đồng phần mềm
  • nhận mã nguồn phần mềm
Về trang bài viết

Đọc tiếp