Cách chia đợt không phải là rút gọn phạm vi mà là thiết kế lại thứ tự triển khai, và thứ tự đó có luật riêng.
Chia đợt thường an toàn hơn với hệ thiết kế số vì nhu cầu thực tế của đội kỹ thuật thường chỉ lộ ra khi họ bắt đầu dùng. Tuy nhiên, điều kiện bắt buộc là kiến trúc token (nền tảng định nghĩa màu sắc, khoảng cách, kiểu chữ dưới dạng biến số) phải được khóa lại hoàn toàn trước đợt 1, không để ngỏ bất kỳ phần nào. Nếu Anh Chị có deadline cứng hoặc đang làm lại toàn bộ giao diện cùng lúc, trọn gói sẽ đảm bảo tính đồng nhất tốt hơn.
Khi Anh Chị bắt đầu nghĩ đến hệ thiết kế số (design system), câu hỏi về phạm vi thường dẫn đến câu hỏi về thứ tự: làm hết một lần cho xong, hay chia ra từng đợt nhỏ để dễ kiểm soát? Cả hai hướng đều hợp lý, nhưng mỗi hướng đòi hỏi điều kiện riêng. Chọn sai điều kiện thì hướng nào cũng dễ thất bại.
Lý do thực tế: đội kỹ thuật hầu như không biết họ cần gì cho đến khi bắt đầu dùng hệ thống. Nhu cầu về component (thành phần giao diện tái sử dụng), về cách đặt tên, về mức độ linh hoạt của từng biến số, tất cả đều lộ ra dần trong quá trình tích hợp. Làm trọn gói 200 component ngay từ đầu có nghĩa là một phần đáng kể trong số đó sẽ không bao giờ được dùng, hoặc phải sửa lại vì không khớp với cách đội làm việc thực tế.
Nguyên tắc incremental delivery (giao tăng dần) từ khung Agile nói rõ: mỗi đợt phải tự đứng vững và tạo ra giá trị ngay, không cần chờ đợt sau. Nếu đợt 1 xong mà đội kỹ thuật chưa dùng được gì, đó không phải là chia đợt đúng nghĩa, đó là trọn gói bị cắt vụn.
Chia đợt không có nghĩa là để ngỏ kiến trúc. Token system (hệ thống biến số định nghĩa màu sắc, khoảng cách, kiểu chữ) phải được thiết kế toàn cục và khóa lại hoàn toàn trước khi bắt đầu đợt 1. Đây là điều kiện không thương lượng.
Theo đặc tả của DTCG (Design Token Community Group, tổ chức chuẩn hóa token cho ngành), token là nền tảng bất biến mà mọi component phụ thuộc vào. Nếu token thay đổi ở đợt 2 hay đợt 3, toàn bộ component đã làm từ đợt 1 phải sửa lại. Chi phí refactor (làm lại từ nền) lúc đó thường cao hơn làm trọn gói ngay từ đầu.
Điều kiện thứ hai: mỗi đợt nên cắt theo nhóm chức năng hoàn chỉnh, ví dụ toàn bộ form components (các thành phần nhập liệu) trước, rồi mới đến navigation (điều hướng). Cắt ngang nhiều nhóm cùng lúc khiến không nhóm nào hoàn chỉnh đủ để đội tích hợp thực tế.
Chọn chia đợt khi:
Chọn trọn gói khi:
Với hầu hết dự án ở quy mô vừa, Sinh Vũ đề xuất chia thành hai phase. Phase 1 là toàn bộ token system và khoảng 30 đến 40 core component, đủ để đội kỹ thuật tích hợp vào luồng làm việc thực tế trong vòng 6 đến 8 tuần. Phase 2 là các pattern nâng cao và component đặc thù, chỉ làm khi nhu cầu thực tế đã xác nhận.
Điều kiện tiên quyết Sinh Vũ giữ cứng: token architecture phải được khóa hoàn toàn trước khi viết dòng component đầu tiên. Không có ngoại lệ cho điều này, dù deadline có ép đến đâu.
Chia đợt tốt là chia theo giá trị, không phải chia theo ngân sách. Mỗi đợt kết thúc, đội kỹ thuật phải có thứ gì đó chạy được trong sản phẩm thật, không phải chỉ trong file thiết kế.
Kinh nghiệm thực hành, Sinh Vũ Studio
DTCG (Design Token Community Group) specification; Agile Manifesto và Scrum Guide; Tài liệu dịch vụ A3 của Sinh Vũ Studio.
Không hẳn. Mỗi đợt phát sinh chi phí kết nối và re-sync (đồng bộ lại) giữa các bên, nên tổng chi phí thực tế thường cao hơn làm trọn gói. Lợi thế của chia đợt là trải đều dòng tiền và giảm rủi ro làm dư thứ Anh Chị chưa cần, không phải là tiết kiệm tuyệt đối.
Đợt 1 nên bao gồm toàn bộ token system và khoảng 30 đến 40 component cốt lõi mà đội kỹ thuật dùng ngay trong vòng 4 đến 6 tuần tới. Đủ để đội cảm nhận giá trị và tích hợp thực tế, nhưng không ôm quá nhiều thứ chưa cần đến.
Đây là lỗi phổ biến nhất và tốn kém nhất. Component phụ thuộc vào token để hoạt động đúng, nếu làm ngược lại thì khi token thay đổi, mọi component đã làm phải sửa lại từ đầu. Sinh Vũ không nhận triển khai theo thứ tự đó vì kết quả gần như chắc chắn phải refactor (làm lại từ nền) trong vòng 6 tháng.