Product Management
Đăng nhập
ESC

Nhập từ khóa để tìm kiếm

↑↓ Di chuyển
Enter Mở
ESC Đóng

Buổi 7 · Design system và tính nhất quán

Đã đọc 0/13 mục · còn khoảng 4 phút
Cách chúng tôi ghi nhận

Một mục được tính là đã đọc khi nó nằm giữa màn hình đủ lâu so với độ dài của nó (bảng và sơ đồ tính một nửa), bạn vẫn đang cuộn hoặc bấm phím, và bạn đã thấy tới cuối mục. Lướt nhanh hoặc để tab mở không được tính. Chúng tôi chỉ lưu thời gian đọc từng mục — không lưu gì khác.

Buổi 7 — Design system và tính nhất quán

Vì sao PM nên quan tâm tới design system

Nghe như việc của designer, nhưng nó ảnh hưởng trực tiếp tới tốc độ giao hàng — thứ PM chịu trách nhiệm.

Có design system: một tính năng mới dùng lại thành phần có sẵn, ship trong vài ngày. Không có: mỗi màn hình thiết kế lại từ đầu, mỗi nút được code lại, và sản phẩm dần trông như được ghép từ nhiều sản phẩm khác nhau.

Design system là gì

Không phải một thư viện màu. Nó gồm ba tầng:

Token — các giá trị nền: màu, khoảng cách, cỡ chữ, bo góc. Đổi một token thì đổi toàn bộ sản phẩm.

Component — thành phần dùng lại: nút, ô nhập, thẻ, hộp thoại. Kèm theo mọi trạng thái của chúng.

Pattern — cách kết hợp component để giải quyết một tình huống lặp lại: form nhiều bước, danh sách có bộ lọc, luồng xác nhận.

Tầng thứ ba là tầng có giá trị nhất và hay bị bỏ qua nhất.

Nhất quán không có nghĩa là giống hệt

Mục tiêu không phải mọi màn hình trông như nhau. Mục tiêu là người dùng đoán được: cùng một thao tác cho cùng một kết quả, cùng một loại thông tin ở cùng một chỗ.

Sự không nhất quán bắt người dùng học lại ở mỗi màn hình. Chi phí đó vô hình nhưng cộng dồn.

Khi nào phá vỡ hệ thống

Đôi khi cần. Nguyên tắc: phá vỡ có chủ đích và có lý do ghi lại, không phá vỡ vì tiện.

Nếu một tình huống mới xuất hiện lặp lại, đó không phải ngoại lệ — đó là pattern mới cần đưa vào hệ thống.

Nợ thiết kế

Giống nợ kỹ thuật: mỗi lần "làm nhanh cho kịp" tạo ra một biến thể phải bảo trì. Sau hai năm, sản phẩm có bảy kiểu nút và không ai biết dùng cái nào.

Dấu hiệu nợ thiết kế đang tích tụ: designer phải hỏi "chỗ này dùng component nào" và không có câu trả lời rõ ràng; hoặc cùng một chức năng trông khác nhau ở hai màn hình.

PM nên coi việc trả nợ này như trả nợ kỹ thuật — dành một phần năng lực mỗi quý, không đợi tới khi nó thành khủng hoảng.

Câu hỏi PM nên hỏi

  • Tính năng này dùng được component có sẵn không? Nếu không, vì sao?
  • Nếu tạo component mới, còn chỗ nào khác sẽ dùng nó?
  • Việc này tạo thêm bao nhiêu biến thể phải bảo trì?

Bài tập

Chụp màn hình năm nút chính trong sản phẩm của bạn và đặt cạnh nhau. Đếm số kiểu khác nhau. Con số đó là thước đo nợ thiết kế hiện tại.

<!--les-append-->

Lập luận về tốc độ — dành cho PM

Design system thường được trình bày như vấn đề thẩm mỹ, nên nó thua mọi cuộc tranh giành ưu tiên. Lập luận đúng là tốc độ giao hàng:

Không có design systemCó design system
Mỗi màn hình thiết kế lại từ đầuGhép từ thành phần có sẵn
Mỗi nút được code lạiDùng lại, đã kiểm thử sẵn
Mỗi thành phần mới phải kiểm accessibility lạiĐã kiểm một lần, dùng khắp nơi
Đổi thương hiệu = sửa hàng trăm chỗĐổi token, cả sản phẩm đổi theo
Với đội đang đi nhanh, khoản tiết kiệm này tích luỹ rất nhanh. Đó là ngôn ngữ để bạn bảo vệ khoản đầu tư này trong cuộc họp ưu tiên.

Khi nào nên bắt đầu

Quy môNên có gì
1 sản phẩm, 1–2 người làm giao diệnVài token dùng chung (màu, khoảng cách, cỡ chữ) là đủ
1 sản phẩm, đội lớn hơnThư viện thành phần cơ bản, có mọi trạng thái
Nhiều sản phẩm hoặc nhiều độiDesign system thật, có người sở hữu
Xây design system quá sớm cũng lãng phí — bạn chuẩn hoá trước khi biết cái gì đáng chuẩn hoá. Dấu hiệu đúng lúc: khi có người trong đội hỏi "nút này nên dùng kiểu nào?" nhiều hơn một lần một tuần.

Vai trò của PM

Bạn không thiết kế hệ thống, nhưng bạn quyết ba điều:

  • Có dành công suất cho nó không, và bao nhiêu mỗi sprint
  • Khi nào được phép phá quy tắc — và mọi lần phá đều phải ghi nợ
  • Ai sở hữu nó khi có nhiều đội cùng dùng; không có chủ thì nó phân mảnh trong một quý

Dấu hiệu hệ thống đang phân rã

  • Có ba kiểu nút "chính" trong cùng một sản phẩm
  • Thành phần được sao chép rồi sửa thay vì mở rộng
  • Không ai biết phiên bản nào là bản chuẩn
  • Thư viện thiết kế và mã nguồn không khớp nhau
Dòng cuối là dấu hiệu nghiêm trọng nhất: khi bản thiết kế và bản chạy thật khác nhau, người ta sẽ ngừng tin bản thiết kế.

Làm ngay

Đếm số kiểu nút khác nhau trong ba màn hình chính của sản phẩm. Nếu trên ba, bạn có dữ liệu để mở một cuộc trò chuyện về design system — bằng con số, không bằng cảm giác. <!--/les-append-->

Học xong bài này rồi? Tạo tài khoản miễn phí để lưu lại — lần sau vào là biết ngay đang dở ở đâu, và học hết khóa thì có chứng chỉ. Lưu tiến độ của tôi