Blockchain Design Principles
What our team has learned so far—about business and user needs specific to blockchain—that informs our design work.
Currently, the IBM Blockchain Design Team is designing anything from supply chain flows to documentation, from open source developer tools to blockchain as a service. It’s the nature of the industry now: a mad dash to explore all possible applications of a technology with the potential to vastly reduce cost and inefficiency in areas like finance, healthcare, and government.
Despite designing in so many different directions, there are common themes in our users’ needs that have informed our design principles as a team. This is the IBM Blockchain Design Team’s first iteration of these principles—what we focus on when critiquing work and prioritizing design decisions.
Design for trust
“Just because blockchain technology is built to eliminate the reliance on trust doesn’t mean users will trust the machine or network.”
— Jonny Howle, UX/UI Designer
Many of our users are in industries that deal with highly sensitive information and maintaining their trust is critical to our business. Almost everyone is “new” to blockchain, with varying levels of understanding and confidence. Users must perceive our products (and the people behind them) to be reliable, trustworthy, and stable. We accomplish this through careful data exposure, consistency, feedback, anticipating mistakes, and active guidance.
Some users require more exposure to blockchain data than others—many will need to see how the blockchain technology is replacing their previous processes to feel that it is trustworthy. The exposure of data affects users’ understanding of how the application works. For example, data indicates that a function call took place, or it serves as proof that something is cryptographically secure.
When deciding whether to include a data element, we use the following hierarchy:
- The data must be actionable.
- If the data is not actionable, it must be serving a trust-building and/or educational purpose.
“Old school” blockchain tools show you a lot of long cryptographic hashes. They’re not human readable. They’re of no use to a user…and yet people like them! Why? It’s a feeling of comfort: “I can see a non-human readable chaincode ID, so I believe that this thing I’m looking at is secure.
— Ed Moffat, Design Lead, Fabric Composer
Establishing visual consistency across products and the customer experience is essential to the perception of trustworthiness. We use grid based layouts (with meaningful and proportional negative space), strong typographic hierarchy, and apply color with meaning.
Having a consistent user experience allows our users to feel at ease, it is particularly important with new blockchain technology as this enables adoption and learning.
—Tobias Hunter, UX Designer
Because blockchain’s visual language is still being codified, we are careful in our use of iconography to clarify concepts. While we create associations with familiar elements to help users retain information, we are cautious with visual metaphor—simplifying certain concepts can actually misinform or create confusion later.
We make every effort to use jargon-less, consistent terminology. Language should be concise, clear, and align with our users’ natural communication patterns. We maintain a conversational tone without being overly casual or flippant. Our team pays special attention to meaning-loaded words like identity, update, and network: while many blockchain concepts are similar to commonly understood meanings, they can be significantly different and confusing.
We design for wherever our users are. Because the very definition of blockchain is distributed, we must design across borders with globalization by default: things like UI expansion, icon meaning, and translation must always be factored in. In addition, many uses of blockchain are mobile by nature — we maintain a consistent experience regardless of device.
We help our users understand what is happening and reduce anxiety by designing constant feedback. Motion and animation, used sparingly, supports understanding of what is happening.
When you are learning a foreign language you do so by practice and play, not by reading a dictionary. We are producing tools and documentation which allow our users to play and try things out to learn this new technology.
— Sam Winslet, Visual Designer
The user should always know what is happening, what just happened, and what will happen next. Time is a significant element in blockchain applications and many times a simple loader isn’t going to be enough.
A high throughput distributed system is by its nature asynchronous and multiple components of the system depend on timeouts or polling intervals. A transaction may configurably be held (usually for seconds) while waiting for an optimal block size to be reached. An SDK will poll, wait, and retry for a new channel’s creation.
—Jason Yellick, Software Developer
We make sure that we’ve accounted for (and tested after release) the amount of time an activity or function will take and inform the user. This also applies to any metrics in the interface — how many of a category the user is seeing, how many are not being shown, etc.
Our users like hands-on, interactive learning, so they can learn while creating something tangible.
— Raissa Xie, UX Researcher
Allow for and anticipate mistakes to be made
Because a blockchain is effectively immutable, we pay extra attention to user actions that are irreversible. We add in levels of friction or confirmation to reduce error and direct to next steps, should a mistake occur.
There are no take-backs on a blockchain.
— Jonny Howle
Zero states are common in many of our products, so we make sure to provide a natural next step. Users must have clear, persistent navigation — they should easily know how to get back to a previous state and what their next step is.
Our users want to see simple instructions in order to get set up and running as fast as possible.
— Lucie Wu, UX Designer
Because control over visibility is a business imperative, we make sure to account for different views of an interface depending on role. If a user doesn’t have access to certain data, we don’t leave holes in the interface.
The blockchain technology is relatively new, most of the users do not necessarily know what they need. A good designer should know how to filter their opinions and come up with the best solution. Designers are helping them to understand the benefits and possibilities this technology can bring into their lives by guiding them through the process.
— Andrea Lee, UI Designer
Our team anticipates the need for further help and seeks to reduce it, while being cognizant of where our personas are most likely to go for help. We surface insights to create transparency and eliminate uncertainty, and give suggestions for the things users don’t remember.
Presenting the user their new vocabulary with tool-tips and a progress bar makes an otherwise daunting learning task seem manageable.
— Kayla White, UI Designer
Regardless of context, we do not include elements that will clutter an interface or confuse the user — every element serves a purpose, nothing is for decoration. We leverage common design patterns and reduce the amount of learning users have to do.
In many cases, more than one of our personas will be part of a process. To foster collaboration we design for the steps before and after our user’s given tasks. Adoption of our technology by teams is crucial to our business model, so it’s a given that we value inclusive, accessible design.
Designing for complexity doesn’t mean make things simple. Make the tasks easier but don’t take away their control.
— Dante Guintu, UI Designer
Excitement for blockchain technology increases the tendency to focus on machine needs over human ones. As designers, we must constantly refocus our efforts into solving problems and making delightful experiences for human beings. We must balance the tension between the nature of blockchain and human-centered design.
The technical concepts of blockchain seem unusually alluring even for non-technical users to get interested in.
— Ed Moffat
Because many of the applications of blockchain have the potential to be very powerful, we must take care to behave and design ethically. This means making sure diversity is baked-in to our design — from user research participants to our team itself.
Our design team remains in a state of continuous collaboration: researching, testing, and vigilant for evolving user needs and design patterns. We commit to protecting and advocating for our users, considering edge-cases and outliers, and accounting for our users’ emotions. We strive to improve our users’ lives while not creating new problems for them.
Design is not immutable. The main mantra for this group is that we strive for excellence, not perfection.
— Sean Barclay, Creative Director
Sarah Mills is a design lead at IBM based in Research Triangle Park, North Carolina. The above article is personal and does not necessarily represent IBM’s positions, strategies or opinions.