They say “A rising tide lifts all boats”.
If you’re a designer like me, and unless you have spent the last quinquennium under a rock, you may have heard, seen, educated about, or forced into the rising tide of design systems.
Design systems have become an essential tool for design teams to create consistent and efficient designs. Yes, that’s the maxim. A well-created design system can bring numerous advantages to a design team, like coherence, cohesion, efficiency, flexibility, collaboration, and more. Yes, that’s the promise.
Some of the advantages that Design Systems may bring to your team are:
- Consistency/Cohesion: Design systems are supposed to ensure consistency in the design language and elements used across all products, projects, and platforms your team works on. This consistency should create a cohesive visual identity for the company, which should help establish your product’s presence and brand recognition.
- Efficiency/Speed: Design systems are supposed to provide design teams with ready to use material in the shape of pre-made templates, components, and guidelines, which should help your team reduce the time spent on repetitive tasks and better tackle similar problems across your product. In time, this increased efficiency should allow for quicker design iterations, and the ability to work on multiple projects at once with the same level of fidelity but spending less effort.
- Scalability/Flexibility: Design systems should be made to be scalable, to allow for easy expansion and edition as your product grows and adds new features, sections, offerings or platforms. Design components from the system should also provide enough flexibility to allow for even more updates and changes as needed, with the same workforce, while still maintaining consistency.
- Improved Communication/Collaboration: By providing a shared language and understanding between designers, developers, and stakeholders, Design systems should improve communication and collaboration amongst these teams, which should lead to faster decision making and a more effective product + design process.
So we’re told.
However, these same design systems also come with their own set of challenges. The time and resources required to create, implement, and maintain a design system can be significant, and most of the time and resources has to be invested upfront, much before any of the benefits can be seen, let alone reaped. This can create a lot of tension amongst teams that see the overhead as not necessary, mostly if they already have doubts of the future benefits, and can also entice design teams to accelerate the component creation process, rushing into hasty decision-making processes and adhering to half-baked solutions and design patterns that may not work well neither now nor in the long term.
Some of the main waste of time and resources that design systems can force on teams are:
- Initial Investment: Creating a design system requires a significant initial investment of many team’s time and resources. Design teams must research, define, and document all elements of the design language and design system, while either adapting their existing designs or considering compatibility between new patterns and existing ones. This can become a long and complex process that can take enough weeks, months or even years for the rest of the team to start to feel unconvinced.
- Maintenance/Upkeep: Design systems require serious and ongoing maintenance and dedication to their up-keeping to ensure they remain relevant and up-to-date. This includes regular updates and changes to the design language and elements, as well as training and education for design teams, which takes time from them.
- Implementation/Adoption: Implementing a design system can also be a time-consuming process, where a design team must make changes to existing designs and workflows to align with the new patterns and designs. Additionally, it can take time for the design team to fully adopt the new system and for it to become a natural part of the design process, mostly if it is a new team or a fast-growing one.
We could consider that a well-created design system can bring numerous advantages to a design team, like said consistency, efficiency, scalability, and improved communication.
While we do that, it is also important to consider the amount of time and resources required to create, implement, and maintain such a system. Design teams must weigh the benefits against the shortcomings and determine if a design system is the right choice for their product teams, mostly taking into consideration that most of the time saved can then be lost to maintenance, need to repurpose and revise existing components, and keep the team informed and educated on the current and new components and designs.
Keeping a product tidy and understandable does not necessarily requires a design system. Sometimes good communication channels and proper collaboration can do most of the heavy lifting, while keeping the team nimble and fast.
So you should really carefully consider if and when to rise to the level of requiring a design system, and when not to.
Otherwise your product team may end up drowning in that same rising tide of your own design system.