Research
Steps followed
User Interviews: Sample of 20 users
Domain Study
Competitive Analysis
Who are our users?
Our potential users fall into the following categories.
Our potential users fall into the following categories.
Our potential users fall into the following categories.
Our potential users fall into the following categories.
Insights received after talking to Users
Stock Related
Traders and swing traders expressed their issues about acquiring information from multiple sources and compiling it to track the market.
Lack of accessibility of financial experts and planners.
Users avoided taking the help of investment advisors as they found their services too expensive.
All our users felt that investing in stocks requires a lot of effort.
Novices didn't show interest in investing in stocks, as they found it difficult to track.
Most users who invested in stock used Sharekhan or Zerodha.
Users often took investment advice from friends and family
Mutual Funds Related
Users found mutual funds ambiguous
Users were unaware that there are two kinds of plans direct & regular.
Most investors of mutual funds were unaware that regular plans give you lesser returns.
Users felt that investment advisory services give biased opinions.
Traders and swing traders felt that investing in mutual funds would yield lesser returns.
Most users displayed a genuine interest in investing in Mutual Funds, especially Investors and Novices.
Domain Focus
We decided to focus our research and efforts on learning about Mutual Funds due to the growing interest in Mutual funds investment.
What is the main problem with Mutual Fund investment?
Problem: Ambiguity of Mutual Funds
Affects People who want to invest in mutual funds.
Impact: Getting a biased recommendation from Brokers. Lack of transparency in regular plan brokerage platforms. Difficulty making an investment decision. Lack of Returns after investing.
The ideal solution provides: Instant access to an unbiased guide to mutual funds
Understanding how mutual funds work?
On what basis are mutual funds recommended to a User?
Any form of mutual funds recommendation is given based on these factors. By assessing these factors an advisor will be able to determine the risk profile of a user.
Exploring mutual funds advisory service
To understand what sort of service the Chat-Bot should perform it was important to understand the service given by a Human investment advisor and the understanding they have towards their customers.
I had signed up for the following apps and spoke to a few investment advisors as a potential customer to get a first-hand experience of their service
Arthyantra
Finedge
Fisdom
Scripbox
FundsIndia
MoneyFrog
5nance
I notice a pattern in which their investment advisors were providing their recommendations for Mutual Funds Investment. This is the outline recommendation flow I noticed while speaking to advisors from the mentioned platforms. Although there were variations in approach the results were all the same.
Execution
These are the steps I took in developing the chatbot.
Personality Development: Building a Bot persona.
Artificial Intelligence: Depending on the use case and type of conversation, AI can be applied to execute the BOT persona.
Conversational Scripting: This step involves creating conversation flows for different aspects and implementing BOT personality behind each flow.
Interactive Elements: Once the flows are created, interactive elements can be applied to enhance the conversation experience.
Context & Memory: This aspect enriches the functioning of the BOT giving it human-like functions.
Building a BOT Persona
Today Humans adapt to machines, where there is a learnability curve to overcome and the ideal machine is one with no learnability curve to achieve. When it comes to conversing the first thing a user primarily wants is to be Understood. A user feels understood by the Bot when the Bot acknowledges every input of the User. Acknowledgement is not the same as having a response for each input.
Defining the personality of the bot
How does an AI Chatbot work?
Pattern Matchers
Bots use pattern matching to classify the text and produce a suitable response for the customers. A standard structure of these patterns is “Artificial Intelligence Markup Language” (AIML).
Chatbots respond to anything relating it to the associated patterns. But it can not go beyond the associated pattern.
Defining a Use Case
Let's consider Meera's story
Chat Architecture and Scripting
The aspects of conversation scripting are
Onboarding
Functional Scripting
Error Handling
Feedback
Help & Support </aside>
Onboarding
Onboarding is the first interaction users see from the bot—it could be a message that the bot sends to the installing user. It sets the first impression and tackles a set of tasks that can best be accomplished at the start of the conversation.
Different approaches we can take while onboarding the users to the app.
A good bot should cover all these three aspects at some point during the conversation.Different approaches we can take while onboarding the users to the app.
Onboarding script for two different scenarios
Considering Meera's scenario.
Although in this use-case, the user was able to ask the BOT what she wants but by keeping an open-ended approach a user has all the freedom to ask any sort of query. If the BOT is unable to answer such queries it creates a weak first impression.
Functional Scripting
A conversation with a BOT can be task-related or topic related.
Let’s consider the current use case
Our user has been onboarded onto the app. She is now interested in getting advice regarding the mutual fund's investment. Her end-goal is to make MF investment.
Task To Accomplish
Invest in Mutual Funds
Going back to Meera's scenario with the bot
Divergent Scenario
The previous scenario that we just went through is what we call an 'Ideal Scenario' or a 'Happy flow'. But when talking about a fluid chatbot, the users may not always stick to the expected output.
Let us consider the following use case
A conversation with a novice like Meera may look like this,
It is very possible that Meera (novice) who has a lack of knowledge or opinion about different domains of finance may not know what she wants.
Whereas an investment expert like Daniel may have the following response
Someone like Daniel who is a trader may be interested in both domains of investment.
To avoid conversations which don’t go according to the ideal flow. It is important to make the BOT queries as specific as possible.
Error Handling
Error Inputs are queries asked by a user for which the bot doesn’t have an answer.
Example of Error Inputs
1. Random Inputs
2. Asking the bot to perform an untrained task
3. Information about different domains of investment (other than stock and MF).
4. Expressing intent which the bot has content for but the input form is too complex for the bot to understand.
5. Small talk
Let us consider someone like Daniel, a stock trader and Investment Expert who will ask more specific Finance Based questions.
Help
It is important that a BOT has a help option, showing the users what it can do. One of the important aspects of this particular flow is the BOT should be able to introduce this feature automatically every time the user is stuck. Help can be in terms of content and functionality.
A user can simply ask the BOT questions like “What can you do?” Or “How can you help me?” In such a case a Bot should be trained with an Intent called HELP to give an appropriate response to such queries.
Feedback
Feedback is a way for users to provide you with information about their experience with the bot. By collecting feedback from the user the BOT the makers of the bot can work on improving the experience of the bot.
When to obtain feedback?
User is Satisfied
User is not Satisfied or frustrated
We know the user is satisfied or frustrated by analysing the sentiments of the conversations. We can use certain keywords to understand the intent of the user to solicit feedback from him/her.
Capturing Sentiments in a quick manner
Let's go back to the conversation the BOT had with Meera.
By having a thumbs up and thumbs down button, the user will be able to provide quick feedback to the BOT’s response. These buttons should only be introduced at the end of the task.
By recording and tracking the number of upvotes and downvotes we will be able to determine the overall sentiment behind a conversation.
Interactive Elements (UI)
Context
It is difficult to maintain context when it comes to conversing with a bot. A lot of BOTs are designed as request/response systems. Although that is relevant for certain use cases and tasks, a BOT which acts as a financial advisor should understand the context. It is challenging to create a BOT which understands context. As mentioned earlier that for BOT it is important to acknowledge all of the user intents.
Memory
When it comes to Memory, there are certain pieces of information about the user that the BOT must remember about to maintain context in conversations.
Information about the User the BOT should remember
Risk Profile
User’s experience with Investments
Transactions made through the BOT.
His/her portfolio
Execution
These are the steps I took in developing the chatbot.
Personality Development: Building a Bot persona.
Artificial Intelligence: Depending on the use case and type of conversation, AI can be applied to execute the BOT persona.
Conversational Scripting: This step involves creating conversation flows for different aspects and implementing BOT personality behind each flow.
Interactive Elements: Once the flows are created, interactive elements can be applied to enhance the conversation experience.
Context & Memory: This aspect enriches the functioning of the BOT giving it human-like functions.
Building a BOT Persona
Today Humans adapt to machines, where there is a learnability curve to overcome and the ideal machine is one with no learnability curve to achieve. When it comes to conversing the first thing a user primarily wants is to be Understood. A user feels understood by the Bot when the Bot acknowledges every input of the User. Acknowledgement is not the same as having a response for each input.
Defining the personality of the bot
How does an AI Chatbot work?
Pattern Matchers
Bots use pattern matching to classify the text and produce a suitable response for the customers. A standard structure of these patterns is “Artificial Intelligence Markup Language” (AIML).
Chatbots respond to anything relating it to the associated patterns. But it can not go beyond the associated pattern.
Defining a Use Case
Let's consider Meera's story
Chat Architecture and Scripting
The aspects of conversation scripting are
Onboarding
Functional Scripting
Error Handling
Feedback
Help & Support </aside>
Onboarding
Onboarding is the first interaction users see from the bot—it could be a message that the bot sends to the installing user. It sets the first impression and tackles a set of tasks that can best be accomplished at the start of the conversation.
Different approaches we can take while onboarding the users to the app.
A good bot should cover all these three aspects at some point during the conversation.Different approaches we can take while onboarding the users to the app.
Onboarding script for two different scenarios
Considering Meera's scenario.
Although in this use-case, the user was able to ask the BOT what she wants but by keeping an open-ended approach a user has all the freedom to ask any sort of query. If the BOT is unable to answer such queries it creates a weak first impression.
Functional Scripting
A conversation with a BOT can be task-related or topic related.
Let’s consider the current use case
Our user has been onboarded onto the app. She is now interested in getting advice regarding the mutual fund's investment. Her end-goal is to make MF investment.
Task To Accomplish
Invest in Mutual Funds
Going back to Meera's scenario with the bot
Divergent Scenario
The previous scenario that we just went through is what we call an 'Ideal Scenario' or a 'Happy flow'. But when talking about a fluid chatbot, the users may not always stick to the expected output.
Let us consider the following use case
A conversation with a novice like Meera may look like this,
It is very possible that Meera (novice) who has a lack of knowledge or opinion about different domains of finance may not know what she wants.
Whereas an investment expert like Daniel may have the following response
Someone like Daniel who is a trader may be interested in both domains of investment.
To avoid conversations which don’t go according to the ideal flow. It is important to make the BOT queries as specific as possible.
Error Handling
Error Inputs are queries asked by a user for which the bot doesn’t have an answer.
Example of Error Inputs
1. Random Inputs
2. Asking the bot to perform an untrained task
3. Information about different domains of investment (other than stock and MF).
4. Expressing intent which the bot has content for but the input form is too complex for the bot to understand.
5. Small talk
Let us consider someone like Daniel, a stock trader and Investment Expert who will ask more specific Finance Based questions.
Help
It is important that a BOT has a help option, showing the users what it can do. One of the important aspects of this particular flow is the BOT should be able to introduce this feature automatically every time the user is stuck. Help can be in terms of content and functionality.
A user can simply ask the BOT questions like “What can you do?” Or “How can you help me?” In such a case a Bot should be trained with an Intent called HELP to give an appropriate response to such queries.
Feedback
Feedback is a way for users to provide you with information about their experience with the bot. By collecting feedback from the user the BOT the makers of the bot can work on improving the experience of the bot.
When to obtain feedback?
User is Satisfied
User is not Satisfied or frustrated
We know the user is satisfied or frustrated by analysing the sentiments of the conversations. We can use certain keywords to understand the intent of the user to solicit feedback from him/her.
Capturing Sentiments in a quick manner
Let's go back to the conversation the BOT had with Meera.
By having a thumbs up and thumbs down button, the user will be able to provide quick feedback to the BOT’s response. These buttons should only be introduced at the end of the task.
By recording and tracking the number of upvotes and downvotes we will be able to determine the overall sentiment behind a conversation.
Interactive Elements (UI)
Context
It is difficult to maintain context when it comes to conversing with a bot. A lot of BOTs are designed as request/response systems. Although that is relevant for certain use cases and tasks, a BOT which acts as a financial advisor should understand the context. It is challenging to create a BOT which understands context. As mentioned earlier that for BOT it is important to acknowledge all of the user intents.
Memory
When it comes to Memory, there are certain pieces of information about the user that the BOT must remember about to maintain context in conversations.
Information about the User the BOT should remember
Risk Profile
User’s experience with Investments
Transactions made through the BOT.
His/her portfolio