4. Comercio Eletr´onico na ´area farmacˆeutica - no qual os chat bots s˜ao utilizados como assistentes de venda, ajudando os utilizadores a comprar a medica¸c˜ao prescrita pelo profissional de sa´ude.
3.3
Chat bots de diagn´ostico
Foi poss´ıvel identificar as seguintes aplica¸c˜oes com o objetivo similar aos problemas anteriormente dispostos: Baylon Healthcare (Babylon), HealthTap (HealthTap, Inc.), Pharmabot (Comendador et al., 2015), Your.Md (Your.MD Ltd.), Sensely (Sensely), Buoy Health (Buoy Health, Inc) e Florence (PACT Care BV).
A aplica¸c˜ao Babylon Healthcare ´e uma solu¸c˜ao integrada de sa´ude, desenvolvida na Gr˜a-Bretanha. Esta solu¸c˜ao cont´em um chat bot que efetua aconselhamento m´edico, sugere ao utilizador a marca¸c˜ao de consulta e realiza uma v´ıdeo-chamada com um especialista de sa´ude.
Uma das funcionalidades desta aplica¸c˜ao ´e o Babylon Check. Esta funcionalidade efetua o diagn´ostico atrav´es da utiliza¸c˜ao do feedback do utilizador. Para este efeito, a avalia¸c˜ao ´e realizada com recurso a um sistema de inteligˆencia artificial baseado em ´arvores de grafos para diagnosticar e emitir uma recomenda¸c˜ao (Middleton et al., 2016).
O Pharmabot ´e um chat bot que realiza recomenda¸c˜oes farmacol´ogicas para crian¸cas. Este chat bot emprega uma abordagem de left-right parsing para interpretar o feedback fornecido e um sistema de regras para emitir uma opini˜ao sobre o feedback (Comendador et al., 2015).
As aplica¸c˜oes HealthTap, Your.Md, Sensely, Buoy Health s˜ao um conjunto de chat bots que procuram solu¸c˜oes para os sintomas mais comuns.
A aplica¸c˜ao Florence ´e um chat bot que permite auxiliar o utilizador na sua rotina di´aria em termos de sa´ude.
descritas.
Tabela 3.1 – Tabela comparativa das v´arias aplica¸c˜oes
Aplica¸c˜ao Tipo de licen¸ca Plataformas Open source Fun¸c˜ao Algoritmia Babylon Healthcare Subscri¸c˜ao Android \ iOS N˜ao Assistente Pessoal
\ Symptom Checker
´
Arvore de Decis˜ao
HealthTap Gratuito Android \ iOS \ Web Browser N˜ao Assistente Pessoal \ Symptom
Checker
Desconhecido
Your.Md Gratuito Android \ iOS \ Web Browser N˜ao Symptom Checker Desconhecido Sensely (AskNHS) Gratuito Android \ iOS \ Web Browser N˜ao Assistente Pessoal
\ Localizador de Servi¸cos \ Symptom Checker
Desconhecido
Buoy Health Gratuito Web Browser N˜ao Symptom Checker Desconhecido Florence Gratuito Windows \ Web Browser \ Skype N˜ao Assistente Pessoal Desconhecido Pharmabot Gratuito Desconhecido Desconhecido Symptom Checker Sistema de Regras
Na primeira coluna encontra-se o nome da solu¸c˜ao. De seguida, na segunda coluna ´
e indicado qual o tipo de licen¸ca da aplica¸c˜ao. Na terceira coluna indicam-se as plataformas que suportam as aplica¸c˜oes. Na quarta coluna indica-se se a plataforma ´
e open source. Por ´ultimo, indicam-se as principais fun¸c˜oes das aplica¸c˜oes.
Como se pode verificar, das aplica¸c˜oes que se destacam, existe uma larga maioria cujo modelo de neg´ocio segue a gratuitidade da aplica¸c˜ao. Em termos de plataformas, estas aplica¸c˜oes encontram-se no ramo das plataformas m´oveis suportando os dois sistemas operativos (SO) mais comuns, o Android e o iOS. Tal como se pode observar na tabela, a maioria das aplica¸c˜oes destacam-se por serem symptom checkers sendo que algumas delas acarretam algumas funcionalidades adicionais.
Por fim, em termos algor´ıtmicos, dado que a maioria das solu¸c˜oes n˜ao s˜ao open source, n˜ao ´e poss´ıvel apurar qual o tipo de algoritmia utilizada al´em das informa¸c˜oes que transmitem ao p´ublico, com a exce¸c˜ao de duas dessas aplica¸c˜oes onde ´e poss´ıvel obter informa¸c˜ao do funcionamento atrav´es de artigos que as descrevem (Comendador et al.,2015; Middleton et al.,2016).
3.4. NOTAS FINAIS 27
3.4
Notas Finais
Neste cap´ıtulo abordaram-se alguns sistemas onde os chat bots desempenham pap´eis relevantes. Estes sistemas tˆem uma multitude de aplicabilidade desde o entreteni- mento `a educa¸c˜ao.
Na ´area da sa´ude, descreveram-se algumas aplica¸c˜oes, em particular no diagn´ostico de doen¸cas.
Em rela¸c˜ao `as aplica¸c˜oes similares `a que se pretende implementar, destacaram-se um conjunto de aplica¸c˜oes que, na sua maioria, s˜ao symptom checkers, e utilizam alguma forma de IA para efetuar os diagn´osticos, entre outras carater´ısticas.
4
Levantamento de Requisitos
Neste cap´ıtulo apresenta-se toda a documenta¸c˜ao relativa `a parte de Engenha- ria de Software para implementar as aplica¸c˜oes e plataformas necess´arias para o funcionamento do chat bot.
Este cap´ıtulo encontra-se divido em seis sec¸c˜oes. A sec¸c˜ao 4.1 efetua o levamento dos requisitos que a plataforma tem de cumprir na sua implementa¸c˜ao. Na sec¸c˜ao
4.2 procede-se `a modela¸c˜ao dos diagramas de casos de usos e `a descri¸c˜ao de cada caso de uso. Na sec¸c˜ao 4.3, modelam-se os dados relevantes atrav´es do modelo Entidade-Relacionamento antes de implementar na BD. A sec¸c˜ao 4.4apresenta as arquiteturas escolhidas para desenvolver a plataforma. Na sec¸c˜ao 4.5 abordam-se as tecnologias escolhidas para elaborar a plataforma. Por ´ultimo, a sec¸c˜ao4.6 tem as notas finais do cap´ıtulo.
4.1
Requisitos das aplica¸c˜oes
Para desenvolver o chat bot procedeu-se ao levantamento de requisitos relativos `a plataforma por forma a perceber e identificar todas as necessidades alusivas seu desenvolvimento.
Uma vez definidos os requisitos relativos `a implementa¸c˜ao do chat bot torna poss´ıvel o seu desenvolvimento de uma forma mais f´acil.
Para proceder ao levantamento de requisitos foi utilizado o modelo FURPS+. O modelo FURPS (Dromey, 1995) decomp˜oe as caracter´ısticas de um sistema em dois grupos de requisitos: os requisitos funcionais e os n˜ao funcionais (requisitos de usabilidade, de fiabilidade, de performance e de suporte).
Derivado do modelo FURPS, o modelo FURPS+ (Eeles,2005) identifica um conjunto adicional de requisitos, representam limita¸c˜oes a impor ao sistema. Estas limita¸c˜oes traduzem-se em requisitos de design, de implementa¸c˜ao, de interface e requisitos f´ısicos.
No levantamento de requisitos identificou-se que ´e necess´ario implementar uma plataforma de Back Office, uma aplica¸c˜ao m´ovel e um servi¸co web.
Para a implementa¸c˜ao destas trˆes aplica¸c˜oes, identificaram-se os seguintes requisitos:
1. As aplica¸c˜oes dever˜ao suportar a arquitetura REST.
2. As aplica¸c˜oes dever˜ao suportar a arquitetura cliente-servidor.
3. As aplica¸c˜oes dever˜ao efetuar a comunica¸c˜ao atrav´es de pedidos e respostas HTTP.
4. As aplica¸c˜oes dever˜ao ser compat´ıveis com o SGDB mySQL. 5. As aplica¸c˜oes dever˜ao ser escal´aveis.
6. As aplica¸c˜oes dever˜ao ter tempo de resposta curto.
Para o Back Office, foram identificados os seguintes requisitos:
1. O Back Office dever´a ser desenvolvido em C#, recorrendo `a framework ASP.NET.
4.1. REQUISITOS DAS APLICAC¸ ˜OES 31
2. O Back Office dever´a permitir efetuar a autentica¸c˜ao do utilizador. 3. O Back Office dever´a permitir efetuar o registo do utilizador.
4. O Back Office dever´a permitir que cada tipo de utilizador tenha a sua pr´opria interface.
5. O Back Office dever´a permitir a visualiza¸c˜ao e edi¸c˜ao dos dados do utilizador. 6. O Back Office dever´a permitir a consulta dos chats do utilizador.
7. O Back Office dever´a permitir a emiss˜ao de aprova¸c˜ao ou n˜ao aprova¸c˜ao da intera¸c˜ao do chat bot de um determinado chat.
8. O Back Office dever´a permitir criar, visualizar, editar e eliminar patologias. 9. O Back Office dever´a permitir criar, visualizar, editar e eliminar sintomas. 10. O Back Office dever´a permitir criar, visualizar, editar e eliminar n´ıveis de
triagem.
11. O Back Office dever´a permitir criar, visualizar, editar e eliminar respostas a utilizar pelo chat bot.
12. O Back Office dever´a permitir criar, visualizar, editar e eliminar nomenclatura alternativa para associar a patologias e sintomas.
Relativamente `a aplica¸c˜ao m´ovel, os seguinte requisitos foram identificados:
1. A aplica¸c˜ao dever´a ser desenvolvida para o sistema operativo Android. 2. A aplica¸c˜ao dever´a incluir a biblioteca Volley para as comunica¸c˜oes HTTP. 3. A aplica¸c˜ao dever´a incluir a Gradle para a resolu¸c˜ao de dependˆencias externas. 4. A aplica¸c˜ao dever´a permitir efetuar a autentica¸c˜ao do utilizador.
6. A aplica¸c˜ao dever´a permitir interagir com o chat bot.
7. A aplica¸c˜ao dever´a permitir visualizar todas a intera¸c˜oes com chat bot. 8. A aplica¸c˜ao dever´a permitir visualizar os dados do utilizador.
Por fim, para o servi¸co web (chat bot ) identificaram-se os seguintes requisitos:
1. O servi¸co web dever´a ser desenvolvido em Java, mais especificamente, em Java Enterprise Edition \ Jakarta Enterprise Edition.
2. O servi¸co web dever´a incluir o Apache Maven para a resolu¸c˜ao de dependˆencias externas.
3. O servi¸co web dever´a incluir a biblioteca JAX-WS para suportar a componente de servi¸cos web.
4. O servi¸co web dever´a incluir a biblioteca OpenNLP para o processamento de texto.
5. O servi¸co web dever´a permitir que seja efetuada a intera¸c˜ao entre o servi¸co web e uma aplica¸c˜ao.
6. O servi¸co web dever´a registar toda a intera¸c˜ao realizada.
7. O servi¸co web dever´a ser capaz de questionar o utilizador sobre determinados sintomas.
8. O servi¸co web dever´a efetuar diagn´osticos a partir dos sintomas reportados pelo utilizador.
9. O servi¸co web dever´a ter a capacidade de extrair palavras-chave para poder efetuar a avalia¸c˜ao das patologias.
10. O servi¸co web dever´a ser capaz de efetuar a triagem acompanhado de uma recomenda¸c˜ao para a triagem que foi efetuada.