Conversation design is a cheap way for designing content-first and therefore people-first. It involves using a conversation as an early, low-fidelity prototype of the interaction or feature you want to ship. It helps you:
Whether you're at the idea stage or you've already got a working product, you can use this technique when working on new features or iterating on existing ones.
It has 4 main steps:
Below we'll go into more detail about each phase using an example dApp. This dApp allows you to borrow DAI by putting up some ETH as insurance, just like MakerDAO collateralized debt positions.
Note: we chose this example because of its complexity
The eventual scripting will involve 1 team member playing the part of your product/service and another the user. This means you need to understand your user well enough to anticipate the kinds of questions and responses one of you will provide. You should have a sense of their goals, motivations and pain points before you move into the second phase.
This phase will ultimately help you:
When you know this about your users, you can write some user stories or job stories to frame the conversation even further.
From there you're well placed to start scripting the conversation based on your understanding of your users, the jobs they want to get done and any motivations and pain points they might have already.
The beauty of scripting is that it's low cost and relatively quick to do. You should do different scripts for:
This will help you identify the similarities and differences between the content needed for different audiences. It will also force you to figure out how the different parts of the flow join up conversationally. Chances are if it feels natural in conversation, it will feel natural in the interface.
Think of them as really low fidelity prototypes – a really early chance to figure out information hierarchy plus identify any edge cases and error states. Take a look at the example below:
|MakerDao||New to DeFi user|
|Well, how much ETH would you like to put up as insurance? The more ETH, the safer your loan???|
|I want to put up 1 ETH|
|If you want 1000 DAI, you'd need to put up US$1500 worth of ETH - minimum.|
|And, you should actually increase it, to protect your collateral from being liquidated by the system.|
|200-250% is a good number.|
|Ok let's go with $2000 worth of ETH|
|Bada bing bada boom|
Go through with the entire team, highlight what's remarkable or notable about the dialogue.
This will help you answer the following questions:
Here's an example of some annotated script.
What we highlighted:
You can see how the language we might end up using on the interface is already becoming simpler. And we're coming up with ways to help explain key concepts.
Best of all, even if this doesn't make it into the final interface, it's helped the team cement their understanding of the service.
After scripting out this interaction, the order of information naturally flowed like:
Next up, we turn this into UI.
Use your script and what you've learned to inform flow and microcopy. You've probably already made some UI choices based on the script that you should put to paper. Makes sure you include language and phrases identified through scripting here.
Even if it feels quite verbose at first, you can always edit it down later.
Steadily increase fidelity. Move from script to sketches to prototypes or shippable product. The script should act as a point of reference every time you increase the fidelity to make sure you're still meeting the users needs and communicating in a way that they understand.
Because it always does...
Even if you've got to the sketching phase or beyond, as soon as something new comes up you should repeat the process you've just gone through.
So imagine that this new dApp now accepts bitcoin as insurance, just re-script the parts of the flow that this affects. Then see how you can naturally fit it in. If it feels natural in the dialogue, it'll feel natural in the experience.
|MakerDao||New to DeFi user|
|I'd like to borrow 1000 DAI please|
|Sure, first you need to offer up some cryptocurrency to insure your loan. We'll take this if you don't pay back your loan.|
|You can use Ether or Bitcoin.|
|Great, I'll choose bitcoin|
See how more natural your dApp feels to use when: