Get Started with Systems Design
Learning Objectives
After completing this unit, you’ll be able to:
- Understand the main focus of systems design.
- Describe the benefits of systems design.
“A system is an interconnected set of elements that is coherently organized in a way that achieves something.”
–Donella Meadows, Founder, Academy for Systems Change
What Is Systems Design?
To understand our unique design system, the Salesforce Lightning Design System (SLDS), you need to know systems design. Systems design involves designing and combining elements that interact to achieve a common goal. Focusing on how each individual element relates to the overall user experience, the objective is to design systems that satisfy users’ needs as specified in system requirements.
When you take a systems design approach to designing a user experience, you focus on scalability. Scalable elements have multiple uses, support multiple viewpoints, and fit multiple structures. Then you combine those elements to form the full user experience.
Reusable elements benefit designers, who design experiences efficiently by reusing existing interaction patterns. New users also benefit by learning a new interface quickly because they recognize its elements. Consistent appearance, purpose, and placement of elements in an app guide helps users build habits, which increases users’ efficiency.
Building: An Analogy
Systems design is an abstract concept so let’s consider an analogy: building a house. When you consider the breadth and scope of a project like building a house, imagine how the material objects, architectural blueprints, and craftsmanship of construction work together to make a usable living space.
Zoom in to a single door. The instructions for your door latch probably match the functionality of millions of others, so there’s no need to invent an entirely new type of handle and lock. Over time, you learn the most basic lesson: Keep it simple by using existing solutions to solve common problems.
The same ideas hold true for systems design. The foundation of systems design is recognizing that the relationships between elements are more important than the individual elements.
The efficiency that systems design offers designers extends to developers as well. When a pattern of elements solves a problem or facilitates completing a task in one area of an app, you can save time by reusing that pattern in your design. The developers implementing the design save time too by reusing the code already written to implement that pattern. Both designers and developers have more time to devote to more complex issues. We cover reuse more in-depth later in this module.
Supercharge User-Centered Thinking by Including Systems Design
User-centered design has revolutionized application and website design since its introduction in 1986 through an ISO standard. It birthed a new mainstream focus area of design that Don Norman coined user experience, or UX for short.
Creating a fantastic user experience requires balancing two activities.
- Consider the patterns (micro and macro) that people learn, through widely accepted UX best practices and unique patterns in your application.
- Ensure that users can accomplish a discrete task on a single page or in a single feature.
Without systems design considerations, you can fall into the trap of neglecting the user’s end-to-end experience. To maintain a holistic view while creating a design system, focus on these key questions.
- What does someone do within the app before they come to your new page or feature?
- How can you use interconnected experiences to supercharge your design?
Focusing on the relationships between the individual elements and the overall user experience produces compelling user experiences. This is systems design.
Resources
- eBook: Thinking in Systems: A Primer
- eBook: Atomic Design
- Article: Beyond Components: A Design System to Support Multiple Frameworks
- YouTube: Thinking in Symbols for Universal Design