REQUIREMENTS

Project Background

Avanade is the leading provider of innovative digital and cloud services, business solutions and design-led experiences, delivered with agility through the power of our people and the Microsoft ecosystem.

Recent Covid-19 crisis has changed people's working style. With remote-working being trendy in most companies, more and more online-officing tools are popping up to aid the employees. What Avanade is concerning is how to guide those new remote-workers, especially on-boarding people, to a quick adaptation to the new situation.

An AI-adopted chatbot is a good option for this vocation. The bot should be ready as employees' consultant of company-specific questions, helpful during the working phase, and multi-platform supported in order to fit in variable environments.

   PAIN POINTS   

  • Lack of guide for remote on-boarding employees
  • Delivery delay of new company info, policy and etc
  • Low productivity
  • No right telecommuting tools and methodology

   AVABOT CURES   

  • Provide guide for new employees
  • 24/7 company-specific question answering service
  • Features that assist telecommuting
  • Multi-platform

Client Requirements

With the knowledge of the project background, we met our client to discuss further what features the chatbot should have. We also agreed on meeting regularly on weekly basis, when we could report our real-time progress and get feedback from the client.

As specified by our client, the bot's AI functionality should focus on helping employees with documents in particular. Below are the in-detail requirements collected from him:

  • Answer questions from employees
  • Give employees information about a document
  • Allow natural language search questions over a document
  • Allow search through multiple documents for sections of interest

Project Goal

Our project is to develop a chatbot, i.e., AvaBot, that can run on web browser and other applications such as MS Teams.

AvaBot will be connected to a knowledge base, which allows it to answer general and company-specific questions from employees.

Documents can be received and processed according to the users' needs. AvaBot can summarize a document to illustrate what the document is about; to support natural language queries over documents backed up by a QA system; and to perform image recognition tasks for commonly used image types.

User Interviews

After evaluating the different methods of capturing requirements, we decided to conduct a semi-structured interview as it allows us to go in-depth and probe where necessary.


Q: people have been working remotely due to the spreading of corona-virus, would you like to have any tools to aid online office of your company?

A: We would like to have some sort of virtual agents, a chatbot in particular, to help improve employee productivity whilst working remotely.

Q: How do you like the chatbot to interact with you?

A: It should provide several options, for example, for employees to ask questions, or for them to give documents to the bot for processing. The overall UI should be concise and of low learning-cost.

Q: How do you like the tool to be run on ? a website? an application?

A: Web-browser chatbot is a good option. We are also envisaging an app on Teams

Q: What feature would you like to have in it?

A: The bot's AI functionality should focus on helping employees with documents in particular, giving them information about a document, allowing natural language search questions, or being able to search through multiple documents for single paragraphs or sections of interest. Also, It should be helping on-boarding people (new employees) quickly get familiar with the company and their jobs. It can also provide company background info so that they can sense the company culture and atmosphere.


Q: How do you like your new company?

A: It is my dream company and I like my new job. However, since everybody is working online, I have few opportunity to feel the company culture.

Q: Any problem faced when you work remotely in a new company?

A: There were times I felt lost in my job, the company introduced new tools and techniques, but I am not sure if I were applying them properly. Often when I am allocated with new tasks, I feel them tricky and don’t know how to get started or where to find help. The company has different principles and rules from where I came, which makes me confused at times.

Q: What tool is most frequently used for working remotely?

A: Microsoft Teams and Outlook

Q: How do you think a working chatbot can help with those problems?

A: I’d like It to remind me of the company rules, help me with the new tools and techniques, give advice for my tasks. Hopefully, It can also introduce to me some company backgrounds.

Personas

After conducting the interviews, we then came up with personas and scenarios for our target users in order to better understand their needs and goals and identify their requirements.

Use Cases

Now that we have understand who are the users and what do the users need, here comes the use case diagram to illustrate what actions users can take to interact with the bot and to complete certain tasks.

MoSCoW List

Having finished the research of the requirements of our project while considering as many cases including edge ones, we held a meeting with our client with the final MoSCoW list:

  • Bot can answer general questions (chit-chat like daily greetings)
  • Bot can answer specific question about the company (e.g. what is our network security policy)
  • Channel the bot to Microsoft Teams.
  • Channel the bot to web browser
  • Bot can receive attachments from users
  • Image recognition: extract data from images (business-cards)
  • Document analysis: extract table contents from a doc
  • Document analysis: summarize a doc
  • Document analysis: QA system for single-doc query
  • Document analysis: QA system for multiple-docs query
  • Guide users through a series of steps using waterfall dialogues
  • Introduce unit testing to the bot.
  • Build APIs for each feature to be called by the bot.
  • Reduce the response time of the QA system
  • Multi-language
  • Estimate the response time according to the file size
  • Recognize all types of custom forms and images, such as receipts - time limited
  • Sideload the bot to Microsoft Teams - we don’t have the permission



During the development phase, a few of the requirements were re-prioritized and slightly adjusted but most of them were consistently held. It has served as a guiding light for our whole project development.