Design system

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A Design System is a set of interconnected patterns and shared practices coherently organized.[1] Design Systems aid in digital product design and development of products such as apps or websites. They may contain, but are not limited to, pattern libraries, design languages, style guides, coded components, brand languages, and documentation.

It serves as a reference or source of truth that helps the different teams involved (such as designers, developers, copywriters and project managers) to design and build digital products.[2]

Some of the advantages of a design system are:

  • Faster builds, through reusable components and shared rationale.
  • Better products, through more cohesive user experiences and a consistent design language.
  • Improved maintenance and scalability, through the reduction of design and technical debt.
  • Stronger focus for product teams, through tackling common problems so teams can concentrate on solving user needs.[3]

Notable design systems include Lightning Design System (by Salesforce),[4] Material Design (by Google),[5] Carbon Design System (by IBM),[6] and Fluent Design System (by Microsoft).[7]

Origins[edit]

Using patterns in digital product design started in the 1960s, for which the first written record is the proceedings of the 1968 NATO Software Engineering Conference. It is here where the definite interest in Christopher Alexander's work is mentioned, for the benefit of better digital systems - then called software. Alexander published his work about a decade later, titled A Pattern Language where together with his co-authors they introduced the notion of a "pattern language", an interconnected system of design elements, called patterns, or in modern usage, design patterns.

Interests in the digital field surged again in the latter half of the 1980s, for this tool to be used in software development[8] which led to the notion of Software Design Pattern. As patterns are best maintained in a collaborative editing environment, it led to the invention of the first wiki, which later led to the invention of Wikipedia itself. Regular conferences were held, and even back then, patterns were used to build user interfaces.[9] The surge continued well into the 90s, with Jennifer Tidwell's research closing the decade.[10] Scientific interest continued way into the 2000s.[11]

Mainstream interest about pattern languages for UI design surged again by the opening of Yahoo! Design Pattern Library in 2006[12] with the simultaneous introduction of Yahoo! User Interface Library (YUI Library for short). The simultaneous introduction was meant to allow more systematic design than mere components which the UI library has provided.

Google's Material Design in 2014 was the first to be called a "design language" by the firm (the previous version simply called "Holo Theme"). Soon, others followed suit.

Technical challenges of large-scale web projects led to the invention of systematic approaches in the 2010s, most notably BEM[13] and Atomic Design. The book about Atomic Design[14] helped popularize the term "Design System" since 2016.

Difference between pattern languages and design systems and UI kits[edit]

A Pattern Language allows its patterns to exist in many different shapes and forms - for example, a login form, with an input field for username, password, and buttons to log in, register and retrieve lost password is a pattern, no matter if the buttons are green or purple. Patterns are called patterns exactly because their exact nature might differ, but similarities provide the relationship between them (called a configuration) to remain the same. A design language however always has a set of visual guidelines to contain specific colors and typography. Most design systems allow elements of a design language to be configured (via its patterns) according to need.

A UI kit is simply a set of UI components, with no explicit rules provided on its usage.

References[edit]

  1. ^ Kholmatova, Alla (2017). Design systems : a practical guide to creating design languages for digital products. Smashing Media AG. p. 18. ISBN 978-3-945749-58-6.
  2. ^ "Everything you need to know about Design Systems". 2019-10-03.
  3. ^ Perez-Cruz, Yesenia (2019). Expressive Design Systems. Jeffrey Zeldman. p. 4. ISBN 978-1-937557-85-0.
  4. ^ "Lightning Design System".
  5. ^ "Material Design". Material Design. Retrieved 2021-04-09.
  6. ^ "Homepage – Carbon Design System".
  7. ^ "Homepage – Fluent Design System".
  8. ^ "Using Pattern Languages for Object-Oriented Programs". c2.com. Retrieved 2021-10-07.
  9. ^ wiki.c2.com http://wiki.c2.com/?HistoryOfPatterns. Retrieved 2021-10-07. Missing or empty |title= (help)
  10. ^ "Common Ground". www.mit.edu. Retrieved 2021-10-07.
  11. ^ "Elisabeth G Todd - Publications". dl.acm.org. Retrieved 2021-10-07.
  12. ^ "Yahoo! Design Pattern Library". Creative Commons. 2006-02-14. Retrieved 2021-10-07.
  13. ^ "'Why BEM?' in a nutshell / DECAF Blog". ‘Why BEM?’ in a nutshell / DECAF Blog. Retrieved 2021-10-07.
  14. ^ Frost, Brad (2016). Atomic design. Massachusetts. ISBN 978-0-9982966-0-9. OCLC 971562254.

External links[edit]