Requirements

Project Background & Partner Intro

Our client, the National Health Service (NHS), is the publicly-funded healthcare system in the United Kingdom, providing comprehensive healthcare to all residents, regardless of their ability to pay. It was established in 1948 and is one of the largest and oldest single-payer healthcare systems in the world. The NHS covers everything from primary care, such as GP visits, to secondary care, including hospital treatments and surgeries, and specialized services, such as mental health and palliative care. Our primary partners for this project are James Parker (Automation & Innovation Manager at NHS SBS) and Lucy Rose Hewitt (Senior Programme Manager at NHS England).

NHS trusts and clinics often have the bare essentials in their services mapped online. Some small trusts and clinics even do not have many IT people in their organisations. If they want to create a chatbot for each trust and clinic from scratch, they need to hire IT people that have advanced skills to develop and maintain it. Moreover, the cost of creating the chatbot can be very expensive as it needs more people and a lot of time to develop. In addition, most people nowadays prefer consulting medical questions from their phones rather than going to the hospital or clinic. Therefore, some NHS trusts and clinics need to have their own chatbot.

Project Goal

Our goal for this project is to support all NHS trusts and clinics to create a low-cost chatbot easily, so they do not have to hire many IT people. To help them reducing the cost and time of developing a chatbot from scratch, we build a chatbot generation service that can create a chatbot for any NHS trusts' websites, the so-called NHS Auto-chatbot. There are multiple layers of technology stack behind this service so that the user can get the best possible answer. The predefined questions will get the answer from our web scraping tool, and other general questions will retrieve from Bing API. Our generation service is quick, adaptable, user-friendly and maintainable. That being said, every trust and clinic only needs 20-30 minutes to create a chatbot with 3 simple steps, and they can implement it into their own website. In the future, they can also improve and maintain it by modifying the chatbot dialogue.

Personas

Persona 1

Scenario: John is an experienced software engineer who works with a team to maintain large data sets for other companies. The NHS is one of his clients. This is a typical busy workday for John. After arriving at his office, he login to the administrator page of the chatbot and updated some related dialogue around recent top-searched words to facilitate users with similar questions. After that, John checks the suggestion mailbox. All the suggestions about bugs are sent to other team members and fixed as soon as possible. The useful improvement suggestions are collected and aimed to publish in the later version. Finally, John has finished his work. He thinks the administrator page saves both time and steps in maintaining the system.

persona_one

Persona 2

Scenario: Michael is a 20-year-old college student who has broken his arm badly before and wants his arm to regain the ability to play in intense basketball competitions. He wants to receive treatment at a moderate price as soon as possible so that he could participate in the next season's basketball tournament. As a hardworking student who does not want to miss any classes, Michael uses his lunchtime to see how might physiotherapy help him. He opens the NHS website on his smartphone and finds a chatbot to consult. Michael has used customer service chatbots many times before and is confident to quickly find his choice of treatments and possible costs.

persona_two

Persona 3

Scenario: Bob is a 70-year-old retired man who recently finds that his back is painful when he sits on a chair and wants to relieve the symptom. He entered NHS's website for treatment and costs but quickly get overwhelmed by the amount of information on the webpage. Thankfully, he notices the distinct icon of the chatbot pop on the page. The chatbot is simple and easy to use even for a person who is not familiar with technology like him. The "Speech To Text" function helps him input text without a keyboard and the chatbot also guides him step by step to specify the symptom. Bob easily finds the information he needed and feels satisfied with the result.

persona_three

Use Cases

After determining who the users are and gathering requirements, here we present the use cases diagram that illustrates the actions and tasks users can carry out while using NHS Auto-chatbot.

Use Cases Diagram

use_cases_diagram


List of Use Cases

ID Use Case for User (NHS IT Admin/NHS Patient)
UCU1 Generate a chatbot
UCU2 Greeting/conversing with NHS Auto-chatbot


Use Case Descriptions

Use Case Description 1 (UCU1)

Use Cases
ID UCU1
Actor NHS IT Admin
Description Generate a chatbot
Main Flow 1. Paste your trust's website homepage link to URL text box and click "Generate" button
2. Copy the reference code from alert dialog box
3. Wait for around 20-30 minutes until the chatbot ready
4. When it is ready, paste the reference code to Reference Code text box and click "Get JSON File" button
5. The Dialog JSON file can be downloaded and used for implementing the chatbot to your own website
6. The chatbot can be previewed and tested by clicking the "Preview Chatbot" button
Result Received Dialog JSON File and Generated an NHS Auto-chatbot

Use Case Description 2 (UCU2)

Use Cases
ID UCU2
Actor NHS Patient
Description Greeting/conversing with NHS Auto-chatbot
Main Flow 1. Type your greeting/conversation/question in the text bar
2. Click the send button or press enter
3. Read NHS Auto-chatbot's response
4. Reply or repeat the conversation accordingly
Result Conversation with NHS Auto-chatbot

MoSCoW List

After completing the research for our project's requirements while taking into account as many cases as possible, including edge cases, we had a meeting with our client with the final MoSCoW List:

Functional

  • Chatbot can answer predefined questions - e.g., hours of operation, address, phone number
  • Retrieval-based Chatbot (using intent classification, entity recognition, and response selection)
  • The tool is adaptable to any NHS trusts' website
  • Generation service needs to be fast
  • IT admins can download a dialog JSON file and upload it to IBM Watson Assistant
  • IT admins can track the history of previously generated chatbots on the generation service website
  • IT admins can directly preview the chatbot on the generation service website
  • Use IBM NLU API to filter the data from our web scraping tool
  • Provide a "Reference Code" for IT admins to get the dialog JSON file later
  • Create a section called Settings for changing IBM API Key and Watson Assistance Instance ID
  • IT admins can modify the chatbot dialogue (e.g., when covid responses were needed)
  • Use Azure Cognitive Service for Language to evaluate the answers and extract the most relevant information from Bing API
  • Deploy the chatbot to Microsoft Azure HealthBot
  • Use Amazon Web Services (AWS) - we don't have the permission
  • Use ChatGPT API - time limited (not released during our development phase)

Non-Functional

  • The cost to generate a chatbot should be as low as possible
  • Chatbot can be implemented in any NHS trusts' website
  • Chatbot can answer in a useful and friendly way - e.g., if no data is retrieved from our web scraping tool and Bing API, then explain this to the user instead of displaying an error
  • User-friendly Experience - Users must be able to easily interact with the chabot and IT people can easily use the generation service
  • User optimised - Website should be fast
  • Create a section called Help to show how to use the tool and how to deploy their own generation service on their own server
  • Create a section called About for linking to Team 12's development website
  • Display estimated waiting time for generation service
  • Make a clean UI for the generation service website
  • Integrate chatbot into NHS website - their IT admins will do it

Some of the requirements were reordered and slightly modified during the development phase, but the majority of them were consistenly upheld. It has provided direction for the development of our entire project.