Digital innovation is a hugely overused term right now. Still, this doesn’t change the fact that many organizations are looking at how to improve or optimize their business using digital technology. The possibilities are endless, but you need to start somewhere. It always starts with an idea: how can we approach our customers in a different way or what can we do to deliver a better service?
Have you ever tried to think about it in the context of your business?
We have, many times. Both for ourselves and our customers.
One of these journeys took us to a place that was quite unusual for us. We tried to figure out how we can help to do a better job – and this time, our end users were plumbers.
Our task was simple: to figure out and build a proof-of-concept implementation which would address our customer’s problem with reaching out to their customers, namely plumbers.
Plumbing doesn’t have a lot to do with digital tools. It is somewhat “wet” and depends on robust tools, materials, and knowledge of people who use them.
The customer is a manufacturer of materials for plumbers. The company operates across several countries under various brands. They are now looking for new channels to connect with their customer base and provide solutions that will make plumbers’ work easier.
That was the entire problem statement; and it was up to us to figure out where we would take it.
Believe me when I say that we can be very creative when it comes to finding new ideas. We did a little brainstorming session, and we’ve had quite a few.
Some of the most interesting were:
- To change the complete business model of our customer and deliver 3D designs for printers, for plumbers to print parts on their own
- To build a cognitive service-based application that would be able to recognize a problem and communicate with the plumber. They in turn could immediately build an order of necessary items and have them shipped to their workplace.
All were bold and interesting, however implementing those required a little time (especially in the case of 3D printing). In the end, we focused on a solution which addressed a few problems:
- Inventory discovery: how can the plumber know which parts or items from the catalog are required and available nearby to be applied to their particular situation
- Location discovery: how to help them find out where is the closest place they can grab all the inventory they need
- Speed: how to make arrangements for order and save time on completing the purchase.
It was something we could tackle in a quick proof-of-concept implementation.
We’ve decided to quickly prototype the solution in a form of a conversational bot with some enhancements.
Why a bot?
We chose this form because it is becoming quite a popular solution. It allows people to interact with it easily from multiple form factors (a fancy name for a mobile phone 😉) and can later be easily integrated into various channels (like social media).
As a platform to build the bot upon, we have selected Azure, which provided the necessary components as PaaS.
The desired functionalities we set for the bot were to be able to:
- Provide inventory discovery in the conversation through a chat interface
- Provide information on inventory availability in the stores based on location data
- Allow plumber to gather the order and then navigate them to the store close to their location.
To build it we have used several Azure platform services, listed below.
Azure Bot Service
The Azure Bot Service provides a framework to build bots on Azure. Its goal is to speed up development of bots with ready-made templates, tools and fast connectivity to different channels like SMS, Facebook or Skype. Azure Bot Service is a framework we have used to build the core functions of the bot.
LUIS (which stands for Language Understanding Intelligent Service) is one of the cognitive services from Microsoft Azure that enables applications to understand what the user is saying in natural language. It can take the text provided by the user and break it down into components pointing out to intents, entities and other elements.
With LUIS we can quickly equip our bot with an understanding of what the user is typing and put it on the right track of our conversation path.
App Service provided us with an easy to deploy and maintain web application environment. We used it to host the APIs required for our bot to interact with inventory and other elements of data stored in the storage services.
Azure SQL Database and Storage services
Azure SQL Server and Storage provided easy to use storage to which we have imported all the inventory data about the product catalog and store location of items.
Bing Maps API
We used Bing Maps API to quickly deliver a map of locations where items are available, and navigation based on the location data.
Application Insights were used to gather telemetry and diagnostic information from our application and the integrated services.
All the above components are provided as part of a platform. We enhanced them and connected with the solution code. The overall solution architecture was very simple and straightforward:
Does it work? Of course, it does!
Using the bot interface, the plumber can ask about a specific item in the inventory. If needed, the bot will also guide them through additional parameters required to scope the object.
When the items are found, the user can decide which one should be put in a basket to build the entire order.
Finally, if they want to check where these items are available, the location-based elements of the solution will guide them and point out on the map where the closest store is, and what is the fastest way to get there.
It is a very simple implementation of the conversational bot. Thanks to Azure platform services it could be implemented fast to validate the idea and approach. It doesn’t require extensive coding or building components of the solution to finding out if it will work.
This is the advantage of using a platform instead of building a solution based on the traditional code on top of the infrastructure.
Using other services, we can easily extend the functionality of the bot:
- Introduce image recognition using cognitive functions. This would narrow down the initial search of the product based on the image of it
- Use speech recognition APIs in order to interact with a bot in spoken natural language
- Build additional flows and integrations with external services using Azure Logic Apps and Function components
- Deliver better search capabilities with Azure Search functions
- Add new channels of interaction with a bot, such as SMS or e-mail to allow easier access to its services.
Bot services are also evolving, providing more straightforward ways to integrate with external services and channels.
This particular implementation is currently at the stage of verifying whether it serves a purpose and establishing what the feedback from target customers is. With this simple service, however, the company has started a new path on the road to digital transformation. As you can see, it doesn’t have to be very complicated, fancy and take years to complete (especially that last one!).
Ultimately, elements of digital transformation can be easier to implement than you think. The key is to have the right idea and target for what you want to achieve.
Your organization is already sitting on data you can analyze, process and digest. It can help you better understand what is going on within your organization and how your customers behave.
Cloud services available on Azure or other platforms make it much easier and faster to build and confirm the ideas in the form of implementation. They allow you to develop, validate and iterate on these ideas quickly.
An organization like Predica can help you match your ideas with technology. We can also support your team in the implementation of those on a cloud platform.
All these elements together provide a great opportunity for you to bring your business or services to a higher level. Contact us now to find out how!