Tinybots · 2018

Conversational design for a social robot

Branching, speech-recognized conversations robot Tessa could have with people with dementia, fully scripted and controlled by their families.

01One-way reminders weren’t enough to provide good cognitive support

Tessa started out able to do one thing: speak a scheduled reminder. The closed beta that reworked Tessa’s installation flow surfaced something else too: families wanted more than fixed reminders, they wanted Tessa to respond.

At Tinybots, Tinybots changed their name to Tessa Care in 2026. Source we realized that we needed to design unscripted interactivity for users that needed predictability.

Client

Tinybots

Year

2018

Duration

8 months

Role

Co-founder
Lead Designer

The main challenge

Tessa needed to become interactive without becoming unpredictable. Routine and structure matter enormously for people with dementia, so any back-and-forth Tessa had needed to stay entirely within boundaries a family member set in advance.

The script editor, where families write and structure Tessa's side of a conversation.
The script editor, where families write and structure Tessa's side of a conversation.

02Speech recognition in its simplest form

Rather than open-ended conversation, which is exactly the kind of unpredictable Tessa couldn’t afford to be, scripts relied on simple, closed questions.

We figured out early in this process that we could dramatically decrease the technical scope and introduce predictability at the same time by limiting the interaction to yes/no conversations.

An early concept for planning a script.
An early concept for planning a script.
Another early concept of the script editor.
Another early concept of the script editor.
A more complex, power-user oriented version of the editor.
A more complex, power-user oriented version of the editor.

These rough mockups were taken early in the process to different users, family members and healthcare professionals, to see which mental model resonated.

Based on that research, we chose the model that was closest to understanding conversations: a comic-style speech balloon pattern to indicate the differences between each conversational branch.

03Creating a blueprint to determine all edge cases

To account for every state and edge case, the whole journey was mapped in full. Not just the UI in the app, but also what Tessa said, what Tessa did, and what she had to report back to the app afterward.

One flow for creating a new script: user actions, system actions, and UI screens mapped separately, details obscured on purpose.
One flow for creating a new script: user actions, system actions, and UI screens mapped separately, details obscured on purpose.

04Say, Ask, and Wait: the building blocks of a script for Tessa

The final editor was built from speech balloons, each one a single step: a Say-action, an Ask-action, or a Wait-action could be chained together into a full script. If Tessa recognized a yes after asking a question, she followed the yes-branch; a no triggered the no-branch; anything else fell to an other-branch, used only when Tessa didn’t clearly recognize either answer.

Building a branching conversation from Say, Ask, and Wait steps.
Building a branching conversation from Say, Ask, and Wait steps.

Scripts weren’t one-off either. They could be saved to a library, reused, modified, and scheduled just like a regular reminder, for example, a nightly script checking whether the front door was locked. The same mechanism could also just play music, not every script needed a branch at all.

A library of scripts users could add to, modify, and reuse.
A library of scripts users could add to, modify, and reuse.

Later, Tessa’s capabilities also expanded to include playing music playlists. Playlists could be created in-app and scheduled for a specific moment. When that time came, Tessa would ask if the person wanted to hear music: a yes started the playlist, a no, or an answer she didn’t recognize, meant she wouldn’t.

Scripts could also trigger music, not just conversation.
Scripts could also trigger music, not just conversation.

05Predictable interactivity with just enough flexibility

The temptation on a project like this is always to make the robot “smarter”, more open-ended, more able to hold a real conversation. Keeping every branch closed and every response scripted by a family member was what made Tessa trustworthy enough to talk back at all.

Was this a perfect interaction? Looking back, there were two limiting factors. One, speech recognition accuracy proved challenging and would break down interactions. Two, even though this system allowed for bespoke scripts, family members were often struggling to write good scripts, not necessarily because of how the UI or interaction worked, but more because of the ability to imagine good scripts. Later, we introduced a script library to help people edit scripts instead of writing them from the ground up.

From...

Tessa could only speak pre-scheduled reminders, one-way, with no way to adapt to what someone said back.

To...

Families wrote branching scripts using simple yes/no logic, keeping Tessa fully predictable while giving her room to respond.

Collaborators

Arno Nederlof, Erik Hoogeveen, Wang Long Li

Robert A. Paauwe

About Robert

Design + Systems Thinking + Platforms + Complex Orgs

Currently I am Chapter Lead Design - Platform at Rabobank. Previously, co-founder of Tinybots and creator of social care robot Tessa.

More projects

Designing and building a tarot app into the app stores

A tarot app designed, built, and shipped solo, with its own brand identity, live now on the App Store and Google Play.

Improving employee experience and workflow for job mediators

From instructions in a PowerPoint deck to robust internal tooling for VDAB mediators to match job seekers with training programs across Flanders.