
This Design System Governance guide was created to lay out instructions and suggestions for best practices to be followed. This guide was not meant to be a rule book. The suggestions that are made here would work for one team and may not make any sense to another team.
A design system can only stand the test of time if that system is constantly used, evolved and maintained by the design system managers in both the Product (UI/UX) Design and by the Front-end Development team. Effective communication and periodical reviews of the design system are two key factors for achieving this. Without periodic reviews, we will often find ourselves with many one-off components that are created for each project but are not added to the Design System. This will further create two problems,
Note:
In his article, Team Models for Scaling a Design System, Nathan Curtis talks about the three types of governance teams:
1. Solitary
2. Centralised
3. Federated
Back when I was working at Tata CLiQ, given its team size at that time and its product structure, the ideal structure was:

Submitting a new request
Reviewing and Approving
Publishing the Design System & its Communication
The design system should be published with an appropriate note.
In Figma, when the Design System is updated in the main file, it pushes the updates to all the project files which are using that Design System. In most scenarios, the designers can't view the change directly without applying the latest update to that project file. Despite testing, it’s possible that the latest update might break the layout of the designs for that project or it might visually not look as good as the previous version in a given project. Therefore, it’s important to maintain a history of components while updating them in the Design System. This helps in quickly rolling back to the previous design if something is not working as intended.
Steps for versioning
Nomenclature
Publishing the Design System & its Communication
The design system should be published with an appropriate note.


While publishing the library always make sure to add an update note in the description box of Figma. This communication should also be done separately via email to the wider design team working on other platforms, product managers and developers of that platform. The format for this update note is given below.For Figma[Action] [Component] [Change] [Reason]
Type of Release: STAGING or PRODUCTION
Change Log: 12/07/2022
Reviewed by: Name
Published by: Name
Updates:
For Email
Type of Release: STAGING or PRODUCTION
Change Log: 12/07/2022
Reviewed by: Name
Published by: Name
Updates:
The email changelog should be sent out only for Final Release after testing is completed.
Standard nomenclature is essential to quickly grasp and understand any system. While using any component in a file, designers go through multiple workflows of:
Therefore for ease of use, it’s important to follow a hierarchy and correctly name the layers.The basic naming convention followed in “Vanity - Pallete’s Design System” is of naming and hierarchy of the layers and component properties.
Layer

# - Visibility Property Used (Layer)
@ - Modifiable Content Property Used (Text, Instance)
#@ - Combination of above two
Component Property

Nesting hierarchy and nomenclature is followed while defining the Component Properties.
→ First
|-|→ Second
|-|-|→ Third
Here’s a fun Twitter thread on Design Systems:
https://twitter.com/delivreal/status/1546898511186247680
Tata CLiQ
Sr. Product Designer
Read more about my work at Tata CLiQ
