If you’re ever on your local car dealership’s website chatting away with Ana, you can thank Dealer Inspire for that experience. Specifically, you can thank product manager Nate Jones and lead developer Steven Musumeche.
These are two of the masterminds behind Ana, the new AI chatbot added to Conversations, the messaging platform Dealer Inspire engineered for auto dealership websites. The directive to create this chatbot came from CEO Joe Chura, who was confident this was the next big feature the company needed to provide. Ana is the point guard—every website visitor interacts with her first. Ana detects shopper tone and emotion, gathers contact info, unlocks pricing, answers questions, helps visitors shop for cars, schedules appointments, and starts online deals. Anytime she doesn’t know the answer to a question, she connects customers with team members who do. And all of this interaction is designed to make customers feel like they are just speaking with a human.
In order to provide this experience, Nate and Steven worked a lot of magic behind the scenes to get Ana up and running. They decided that, in order to provide a seamless customer experience, Dealer Inspire would need to build a bot themselves. They started by integrating with Watson, an artificial intelligence platform by IBM.
Steven knew perfectly well how to make Watson work with Dealer Inspire’s API. What he wasn’t sure of was how to build out the dialog flows to ensure Ana could perform all necessary functions and not sound like the bot she actually was.
Finding the right tool
So the first step was for Nate to put words in Ana’s mouth. He needed to outline all the customer flows and dialogs so that Steven could clearly understand what to build. Nate started mapping these dialog flows using Twine, and while this tool worked as a scratchpad, he quickly realized that Steven wouldn’t be able to make much sense out of what was basically a stream of consciousness.
Consequently, Nate began furiously searching for tools others used to build their chatbots. Nearly all the tools he found claiming to be chatbot builders were really just mockup tools that didn’t provide the functionality he needed.
“Twine works for a linear flow, but we have so much conditional logic and branching logic that it really couldn’t model the way we needed it to. There are actually other tools besides Twine where you can build a chatbot without writing any code. But for what we needed to do, it just wasn’t powerful enough,” Steven recalls.
Then Nate came across someone who started with Twine and then switched to Lucidchart. Steven already had experience with Lucidchart for diagramming process flows and software architecture, so the two decided to give the platform a try.
Mapping the dialog flows
As Nate began diagramming, he realized Lucidchart was exactly what he’d been looking for—he could map the customer interaction in detail from entry point to resolution in an organized and coherent fashion. “Figuring out how a customer can interact with a computer in a human way is a weird, abstract concept,” Nate recalls. “Being able to draw it out helps me understand.”
Nate also knew this new tool would make Steven’s life a whole lot easier. Nate and Steven do not work in the same location, so the fact that Lucidchart is in the cloud and accessible anytime, anywhere is the only way that the two were able to successfully complete such a project from different locations.
In order to keep track of all the different flows, Nate color codes his diagram. Blue boxes are messaging variants—the boxes identify the message type, and each type has multiple message options to choose from. This method makes the experience more human by ensuring customers don’t receive the same exact message twice.
After the customer responds to Ana, a grey box indicates what a customer wants to do, such as schedule parts or get directions. As the flow continues, green boxes act as nodes in the dialog flow. Each node (such as “Contact Info” or “Cancel Appointment”) has a detailed dialog flow attached to it. If at any point Ana can’t answer a customer’s question, the customer is directed to a team member who can.
Nate shared his diagram with Steven in Lucidchart so that, as Nate finished sections, Steven could review and provide feedback. Rather than emailing versions of the diagram back and forth, both can be in the document editing in real time.
The final diagram was a map for Steven to follow during implementation. It clearly indicates how the conversation between Ana and a customer plays out based on what the visitor says. Instead of wasting time trying to interpret the web that Twine created, Steven could easily read and follow Nate’s Lucidchart diagram without any confusion. The clarity allowed the project to keep moving along.
Communicating in one place
Ana is now in beta, and sometimes Nate needs to tweak his diagram to incorporate customer feedback. Anytime Nate needs to make Steven aware of a change to implement, he simply comments on that portion of the diagram and @mentions Steven. Nate and Steven even have to-do lists within the document—they like being able to keep all their communication within Lucidchart, eliminating versioning issues with email or the clutter of Slack.
According to Nate and Steven, Ana would not exist if it weren’t for Lucidchart. “There really isn't another tool that allows us to do this. All of the products that are marketing themselves as chatbot builders are really just mockup tools, and it doesn't help with any of the conditional things or the loops. It couldn't handle it. So it would have been immeasurably more difficult to do this without Lucidchart.”
Steven agrees, “I don't know any other way we could have done it. There are other flowcharting tools we could have used, like Visio, but this is what I've been using and I like it. And it’s cheaper than Visio.”
Hearing about Nate and Steven’s use case was fascinating—we’re certainly glad Lucidchart could help get the job done. And just think—if this team could create artificial intelligence using Lucidchart, just imagine all the other revolutionary possibilities…