Chuyên môn · Quản trị và vận hành lâu dài

Giữ hệ thống không loãng theo thời gian

Một hệ thiết kế số xây tốt vẫn có thể chết sau bàn giao nếu không có người sở hữu và quy trình kiểm soát thay đổi rõ ràng.

Chốt nhanh

Hệ thiết kế số loãng dần vì hai lý do: không ai chịu trách nhiệm sau bàn giao, và không có quy trình xét duyệt khi thêm hoặc sửa thành phần. Giải pháp cốt lõi là chỉ định một nhóm sở hữu nhỏ kết hợp với quy trình đóng góp có kiểm duyệt, dù quy mô tổ chức còn nhỏ. Thiếu một trong hai, hệ thống sẽ phân mảnh hoặc lỗi thời dù ban đầu xây rất kỹ.

Hệ thiết kế số (design system) không chết vì xây sai. Phần lớn trường hợp Sinh Vũ quan sát thấy, hệ thống chết vì sau khi bàn giao không còn ai coi đó là việc của mình. Sáu tháng sau, Figma và code bắt đầu lệch. Một năm sau, các đội sản phẩm tự làm component riêng. Hai năm sau, hệ thống chỉ còn tồn tại trên giấy tờ.

Nguyên nhân gốc: nhầm sản phẩm với dự án

Đây là nhầm lẫn phổ biến nhất. Một dự án có ngày kết thúc. Một sản phẩm thì không. Khi tổ chức coi hệ thiết kế số là dự án để hoàn thành rồi bàn giao, họ vô tình thiết lập điều kiện cho hệ thống tự suy tàn.

Nathan Curtis từ EightShapes, người viết nhiều nhất về chủ đề này, gọi cách tiếp cận đúng là product mindset (tư duy sản phẩm): hệ thống cần có lộ trình phát triển, có người dùng nội bộ là các đội thiết kế và kỹ thuật, và có vòng phản hồi (feedback loop) liên tục. Khi nào còn coi nó là dự án một lần thì hệ thống sẽ chết sau bàn giao.

Hai điều kiện tối thiểu để hệ thống sống lâu

Không cần bộ máy phức tạp. Nhưng cần đủ hai thứ này:

  • Nhóm sở hữu (core team): Dù chỉ một người, phải có tên, có thời gian được phân bổ, và có quyền quyết định thay đổi nào được đưa vào hệ thống. Không có người này, mọi đóng góp đều trở thành tranh cãi hoặc bị bỏ lơ.
  • Quy trình đóng góp (contribution process) có kiểm duyệt: Các đội sản phẩm cần có con đường rõ ràng để đề xuất thêm hoặc sửa component. Nếu không có lối vào chính thức, họ sẽ tự làm ngoài hệ thống, và hệ thống dần mất đi tính đại diện cho thực tế sản phẩm.

Điểm cân bằng giữa chặt và mở

Chặt quá: Core team kiểm soát tất cả, không ai được đóng góp nếu không qua quy trình dài. Hệ quả: các đội sản phẩm mất kiên nhẫn, tự xây component riêng, hệ thống trở thành thư viện chết không ai dùng.

Mở quá: Ai cũng có thể thêm component mà không cần duyệt. Hệ quả: thư viện phình to nhưng không nhất quán, component trùng lặp, không ai tin tưởng vào chất lượng chung.

Điểm cân bằng thực tế: Mô hình liên kết (federated model), các đội đề xuất, core team xét duyệt về tính nhất quán và chất lượng trước khi đưa vào hệ thống chính. Đây là tổng kết từ quan sát thực hành rộng rãi trong ngành, không phải lý thuyết trên giấy.

Lỗi vận hành hay gặp

  • Bàn giao xong coi như xong, không có người tiếp nhận nội bộ hoặc hợp đồng duy trì.
  • Token thay đổi trong Figma nhưng không ai cập nhật code, dẫn đến hai thực tế song song tồn tại mà không ai hay.
  • Thiếu nhật ký thay đổi (changelog), khiến các đội không biết có gì mới, tiếp tục dùng component cũ hoặc tự làm lại component đã có.
  • Tài liệu (documentation) không được cập nhật cùng lúc với code vì không ai gắn việc này vào tiêu chí hoàn thành (definition of done).
  • Component được thêm vào thư viện nhưng không ai rà soát sự nhất quán với các component đã có trước đó.

Về kỹ thuật: đồng bộ token giữa Figma và code

Token là lớp dễ lệch nhất và cũng dễ kiểm soát nhất nếu có công cụ đúng. Các công cụ như Style Dictionary (do Danny Banks phát triển tại Amazon) hoặc Token Studio (do Jan Six phát triển, theo chuẩn của Design Tokens Community Group) cho phép tự động hóa việc chuyển đổi token từ nguồn duy nhất sang nhiều định dạng code khác nhau.

Tuy nhiên, công cụ chỉ giải quyết được phần cơ học. Khi có thay đổi về ngữ nghĩa, ví dụ màu gọi là color-primary nay được gán nghĩa khác trong bối cảnh thiết kế mới, vẫn cần con người xác nhận trước khi đẩy thay đổi đó ra toàn bộ sản phẩm.

Hệ thiết kế số là sản phẩm phục vụ người dùng nội bộ. Nó cần lộ trình, cần người chủ, và cần vòng phản hồi liên tục như bất kỳ sản phẩm nào khác.

Nathan Curtis, EightShapes, DesignSystems.com

Góc nhìn của Sinh Vũ

Sinh Vũ bàn giao kèm ba tháng bảo trì ban đầu và một buổi làm việc chung với đội kỹ thuật của khách để thiết lập thói quen vận hành. Mục tiêu của buổi đó không phải truyền đạt kiến thức mà là giúp đội khách thực sự chạy quy trình một lần trước khi tự chạy một mình.

Từ tháng thứ tư trở đi, khách cần có người sở hữu nội bộ hoặc ký hợp đồng duy trì (retainer). Nếu Anh/Chị chưa sẵn sàng cho một trong hai, Sinh Vũ sẽ nói thẳng điều đó trước khi ký hợp đồng, vì đây là điều kiện để đầu tư vào hệ thiết kế có ý nghĩa lâu dài. Xây một hệ thống tốt mà không có người giữ nó thì chi phí bỏ ra chỉ mua được vài năm đầu.

Nguồn tham khảo

Nathan Curtis, EightShapes, khung tư duy Design System as a Product (DesignSystems.com và Medium). Style Dictionary, Danny Banks, Amazon. Token Studio, Jan Six, Design Tokens Community Group (DTCG). Kinh nghiệm thực hành Sinh Vũ qua các dự án bàn giao có retainer.

Câu hỏi thường gặp

Nếu công ty chỉ có một designer thì có cần core team không?

Cần, nhưng core team lúc này có thể chỉ là một người, miễn là vai trò được chỉ định rõ ràng và có thời gian dành riêng cho việc duy trì hệ thống. Vấn đề không phải số lượng người mà là trách nhiệm có tên người chịu hay không. Nếu không ai được giao việc này chính thức, hệ thống sẽ bị xem là việc của mọi người, tức là không ai làm.

Figma và code bắt đầu lệch nhau thì xử lý từ đâu?

Bắt đầu từ việc kiểm kê xem lệch ở lớp nào: token màu sắc, token khoảng cách, hay component phức tạp. Token lệch thường giải quyết được bằng một sprint đồng bộ có dùng công cụ như Style Dictionary hoặc Token Studio. Component lệch phức tạp hơn vì cần xác định đâu là phiên bản đúng trước khi sửa. Sau khi đồng bộ xong, cần gắn ngay quy tắc: mọi thay đổi token phải cập nhật cả hai phía trong cùng một lần làm việc.

← Về Hệ thiết kế số
{INJ}