EVALUATION

MoSCoW List Achievement



IDDescriptionPriorityStateContributors
1Bot can answer general questions (chit-chat like daily greetings)MUSTZihan & Chaozy
2Bot can answer specific question about the company (e.g. what is our network security policy)MUSTZihan & Chaozy
3Channel the bot to Microsoft TeamsMUSTZihan & Chaozy
4Channel the bot to web browserMUSTZihan
5Bot receives attachments from usersMUSTZihan
6Form recognizer: Extracting data from business cardsSHOULDDavit
7Document analysis: Extracting table contents from a docSHOULDDavit
8Document analysis: Summarizing a doc.SHOULDZihan
9VDocument analysis: Building a QA system to single docSHOULDChaozy
10Document analysis: Building a QA system to multiple docsSHOULDChaozy
11Guiding the user through a series of steps using waterfall dialoguesSHOULDZihan
12Introducing unit testing to the botSHOULDZihan
13Building APIs for each feature to be called by the botSHOULDChaozy
14Reducing the response time of the QA systemCOULDChaozy
15Estimating the response time according to the file sizeCOULDZihan & Chaozy
16MultilanguageCOULD
17Recognizing all types of custom form, such as receiptsWILL NOT HAVE
18Sideloading the bot to Microsoft Teams as we don’t have the permissionWILL NOT HAVE
Key Functionalities:100 %
Optional Functionalities:66 %


Individual Contribution

Work PackagesZihanChaozyDavit
Partners liaison30%50%20%
Requirement analysis35%34%33%
Research and Experiments35%33%33%
Coding33%33%33%
Testing80%10%10%
Report Website50%30%20%
Video Editing20%60%20%
Overall Contribution34%33%33%




Critical Evaluation

User Experience

During the development, we always remember to evaluate our project from the user's perspective.

• We use option cards to guide users through a series of steps in a waterfall dialogue. They can clearly understand what the next step is from the statements on the buttons.
• When an unaccepted file is given from user, there is clear prompt reminding them about this issue.
• We also inform users about the estimated waiting time when the program is processing a file.
• An extra feature we provide in code but not in the bot (due to the time limitation) is the conversion of excel table. When user gives an image about a table or a business card, the information extracted will be also return in the format of an excel file. This helps user when they want to log in the information to their computer.

Functionality

We have always focused on the key design target which is about helping people to work remotely.

Meanwhile we also fulfil most of the requirements from our client about the functionalities: a working chatbot, building knowledge base from given documents, summarizing a file, response NL queries about one or multiple documents and information retrieval from images.

Stability-Efficiency

This are two areas where our project does not have good performance with. The QA system might not work well when searching through many documents. It comes up repeated top-rated answers in the backend. This is because we don't have enough time to fine tune the model to make it more compatible to our documents.

The QA system might take about 20 seconds to get back an answer. This is due to the fact that we cannot support a virtual machine with GPUs, which accelerates the calculating process in the program.

Another problem about our stability is that we are using many Azure services in the program, this includes Azure Functions to host the http triggers, virtual machine to support QA system, chatbot portal to run our bot on cloud, QnA maker and form recognizer as extra services. All these services are charging every day and our budget from our clients can't support them all the time. They might be turn off sometimes and will be closed eventually.

Compatibility

We deployed out bot on the Azure chatbot service, which can be channelled to many different platforms, including most of the poplar social medias, such as Facebook, Telegram, Line, Wechat and etc. Our team successfully to channel them to Microsoft Teams and a web page. It can also be run locally with Bot Emulator.

Maintainbility

We did a good job in modularizing our project. The core structure is the bot. Each feature has been developed individually and built into APIs. This makes it being easy to locate a bug and solve them without affecting the other parts.

Project Management

The project has been well managed. Different features are allocated to each member of the group at the very beginning. We utilized the gantt chart to schedule our deadlines for each part of the project. We also have regularly meeting with our client and communicate within the group weekly.


Bug List



IDBUG DescriptionPriority
1For text summarization, text extracted from document are sometimes incomplete/out of format.medium
2Information could be missing for image recognition, which though rarely happens.Low
3Lack of variety in types of document supported (PDF, PNG, and JPG only)Low




Future Work

1. More general image recognition Due to the time limitation we only support the information retrieval from business card. We are considering expand the scope to many other types of images, including receipts, ID cards, passports and so on.

2. Multiple file format Only the file in PDF is allowed for file analysing in our program for now. It would be more user-friendly when other types of file, say words document and website links, are accepted.

3. Multilanguage support: As a tool to help workers in modern society, communication in different languages is idea for companies that have workspaces in different countries. We will look into the feature about translating the answers into multiple languages and even process cross-language documents

4. A better layout of the output When the bot either extracts information from tables or summarizing a file, there is possibility that the output does not look good. The reason is that when these two APIs pass the texts, they have to be stored in the json format, which could sometimes modify the structure. We are working on formatting them in the bot side.