SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza...

87
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO SISTEMA DE HELP DESK BASEADO EM RBC Área de Inteligência Artificial por Tharso de Souza Ferreira Rudimar Luís Scaranto Dazzi, Dr. Orientador Itajaí (SC), julho de 2008

Transcript of SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza...

Page 1: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

SISTEMA DE HELP DESK BASEADO EM RBC

Área de Inteligência Artificial

por

Tharso de Souza Ferreira

Rudimar Luís Scaranto Dazzi, Dr. Orientador

Itajaí (SC), julho de 2008

Page 2: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

SISTEMA DE HELP DESK BASEADO EM RBC

Área de Inteligência Artificial

por

Tharso de Souza Ferreira Relatório apresentado à Banca Examinadora do Trabalho de Conclusão do Curso de Ciência da Computação para análise e aprovação. Orientador: Rudimar Luís Scaranto Dazzi, Dr.

Itajaí (SC), julho de 2008

Page 3: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

ii

SUMÁRIO

LISTA DE ABREVIATURAS .................................................................. iv

LISTA DE FIGURAS ................................................................................. v

LISTA DE TABELAS ............................................................................... vi RESUMO .................................................................................................. vii ABSTRACT ............................................................................................. viii 1 INTRODUÇÃO ...................................................................................... 9

1.1 PROBLEMATIZAÇÃO .................................................................................... 11 1.1.1 Formulação do Problema ............................................................................... 11 1.1.2 Solução Proposta ............................................................................................. 11 1.2 OBJETIVOS ....................................................................................................... 11 1.2.1 Objetivo Geral ................................................................................................. 11 1.2.2 Objetivos Específicos ....................................................................................... 12 1.3 METODOLOGIA .............................................................................................. 12 1.4 ESTRUTURA DO TRABALHO ...................................................................... 12

2 FUNDAMENTAÇÃO TEÓRICA ...................................................... 13

2.1 HELP DESK ....................................................................................................... 13 2.2 INTELIGÊNCIA ARTIFICIAL ...................................................................... 15 2.2.1 História ............................................................................................................. 16 2.3 RACIOCÍNIO BASEADO EM CASOS .......................................................... 17 2.3.1 Histórico ........................................................................................................... 19 2.3.2 Elementos Básicos do RBC ............................................................................. 20 2.3.3 Funcionamento de um RBC ........................................................................... 21 2.3.4 Representação de um Caso ............................................................................. 22 2.3.5 Similaridade ..................................................................................................... 24 2.3.6 Adaptação......................................................................................................... 29 2.3.7 Aprendizado ..................................................................................................... 30 2.4 SISTEMAS SIMILARES .................................................................................. 32 2.4.1 Fireman Professional ...................................................................................... 32 2.4.2 HelpDesk-3 ....................................................................................................... 35 2.4.3 Automidia CBR ............................................................................................... 37 2.4.4 Análise de ferramentas similares ................................................................... 39

3 PROJETO ............................................................................................. 40

3.1 ANÁLISE DE REQUISITO ............................................................................. 42 3.1.1 Requisitos Funcionais ..................................................................................... 42 3.1.2 Requisitos não funcionais ............................................................................... 43 3.1.3 Regras de negócio ............................................................................................ 43 3.2 MODELAGEM DO SISTEMA ........................................................................ 44

Page 4: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

iii

3.2.1 Diagrama de casos de uso ............................................................................... 44 3.2.2 Diagrama de classes ........................................................................................ 55 3.2.3 Diagrama Entidade-Relacionamento (ER) ................................................... 62 3.2.4 Diagrama de seqüência ................................................................................... 63 3.3 TECNOLOGIAS UTILIZADAS NO PROJETO ........................................... 67 3.4 INTERFACE DO SISTEMA ............................................................................ 68 3.5 TESTES .............................................................................................................. 81

4 CONCLUSÃO ...................................................................................... 83

REFERÊNCIAS BIBLIOGRÁFICAS ................................................... 84

Page 5: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

iv

LISTA DE ABREVIATURAS

CBR Case Based Reasoning DHCP Dynamic Host Configuration Protocol DNS Domain Name System ER Entidade Relacionamento IP Internet Protocol PHP Hypertext Preprocessor RBC Raciocínio Baseado em Casos SE Sistemas Especialistas SQL Structured Query Language TCC Trabalho de Conclusão de Curso UFRGS Universidade Federal do Rio Grande do Sul UFSC Universidade Federal de Santa Catarina UML Unified Modeling Language UNIVALI Universidade do Vale do Itajaí

Page 6: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

v

LISTA DE FIGURAS

Figura 1. As divisões do processo do RBC. ...................................................................................... 18 Figura 2. Ciclo do Raciocínio Baseado em Casos. ............................................................................ 22 Figura 3. O Ciclo RBC – Versão mais Analítica ............................................................................... 23 Figura 4. Abertura de um chamado. .................................................................................................. 33 Figura 5. Abertura de um chamado via Web. .................................................................................... 34 Figura 6. Criação da Base de conhecimento. ..................................................................................... 35 Figura 7. Abertura de chamados via web. ......................................................................................... 36 Figura 8. Busca por problemas já conhecidos. .................................................................................. 37 Figura 9. Automidia Change Management - Interface Web para os Analistas. ................................ 39 Figura 10. Projeto visão do usuário. .................................................................................................. 41 Figura 11. Caso de Uso do Administrador. ....................................................................................... 44 Figura 12. Caso de Uso do Usuário. .................................................................................................. 52 Figura 13. Diagrama de classes. ........................................................................................................ 56 Figura 14. Diagrama Entidade Relacionamento (ER). ...................................................................... 63 Figura 15. Configuração de usuário. ................................................................................................. 64 Figura 16. Configura Casos. .............................................................................................................. 65 Figura 17. Consultar Casos. ............................................................................................................... 66 Figura 18. Tela de Login. .................................................................................................................. 68 Figura 19. Tela de apresentação do módulo administrador. .............................................................. 69 Figura 20. Tela de consulta de problemas cadastrados. .................................................................... 70 Figura 21. Tela de cadastro de categorias. ......................................................................................... 71 Figura 22. Tela de cadastro de estrutura de produto. ......................................................................... 72 Figura 23. Tela de cadastro de caso. .................................................................................................. 73 Figura 24. Tela de configuração de usuários. .................................................................................... 74 Figura 25. Tela de alteração dos dados do usuário. ........................................................................... 75 Figura 26. Tela de cadastro de usuário. ............................................................................................. 76 Figura 27. Tela de alteração de senha. ............................................................................................... 77 Figura 28. Tela de apresentação do módulo do usuário. ................................................................... 78 Figura 29. Tela de consulta solução. ................................................................................................. 79 Figura 30. Tela de consulta histórico. ................................................................................................ 80 Figura 31. Tela de alteração de senha. ............................................................................................... 81

Page 7: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

vi

LISTA DE TABELAS

Tabela 1. Análise de Ferramentas Similares ..................................................................................... 39 Tabela 2. Descrição das tabelas de dados. ......................................................................................... 57 Tabela 3. Dicionário de Dados da Tabela Casos. .............................................................................. 58 Tabela 4. Dicionário de Dados da Tabela Caso_problema. .............................................................. 58 Tabela 5. Dicionário de Dados da Tabela Chamado. ........................................................................ 59 Tabela 6. Dicionário de Dados da Tabela Problema. ........................................................................ 59 Tabela 7. Dicionário de Dados da Tabela Status. .............................................................................. 59 Tabela 8. Dicionário de Dados da Tabela Categoria. ........................................................................ 60 Tabela 9. Dicionário de Dados da Tabela Conjunto. ......................................................................... 60 Tabela 10. Dicionário de Dados da Tabela Conj_obj. ....................................................................... 60 Tabela 11. Dicionário de Dados da Tabela Objeto. ........................................................................... 60 Tabela 12. Dicionário de Dados da Tabela Conj_prob. .................................................................... 61 Tabela 13. Dicionário de Dados da Tabela prob_status. ................................................................... 61 Tabela 14. Dicionário de Dados da Tabela Usuário. ......................................................................... 62

Page 8: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

vii

RESUMO

FERREIRA, Tharso de Souza. Sistema de Help Desk Baseado em RBC. Itajaí, 2008. 68 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação)–Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2008. Com os avanços tecnológicos no começo do século XXI, alguns itens como o computador e a Internet tornaram-se fatores essenciais na vida de qualquer pessoa, muito mais que a televisão, que até alguns anos era campeã nessa liderança. Com o aumento da utilização de tais recursos, a quantidade de problemas sobre eles aumentou consideravelmente, assim como a rapidez e a importância na resolução dos mesmos. Para o suporte nessa área, uma área que se tornou importante é a do help desk, porém são profissionais que muitas vezes fazem a utilização do tempo para resolução de problemas semelhantes ou até mesmo iguais, enquanto de outra forma poderiam dedicar esse tempo a novos problemas ou outras situações. Essa necessidade motivou ao desenvolvimento de um sistema que permitisse ao usuário um contato direto com as soluções dos profissionais de help desk sem a utilização direta do seu tempo. A característica principal do sistema é a utilização do conhecimento adquirido em situações anteriores, assim sendo problemas podem ser utilizado com base nas novas utilizações do sistema. Com a utilização do Raciocínio Baseado em Casos (RBC), uma técnica de Inteligência Artificial, casos anteriormente são recuperados e comparados por processos de similaridade com o problema atual e com os problemas eficazmente resolvidos no passado. Palavras-chave: RBC. Inteligência Artificial. Help Desk.

Page 9: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

viii

ABSTRACT

With the technological advances at the beginning of the twenty-first century, some items of the

computer and Internet have become essential in every person´s life, even more than television, that

until some years ago was the champion of the electronic sector. Because the increase of operation

of these resources, the quantity of problems about the electronic systems also have risen

considerably just like the speed and importance of the resolution of these products. To the support

of this area, the Help Desk has gotten importance, although the professionals of this area are the

ones who use their time solving similar or even equal problems, while they could use this time to

new problems or different situations. This need has motivated the development of a system that

allows the user a direct contact with the solutions of the Help Desk professionals without using all

their time. The main characteristic of the system is the use of the knowledge acquired in the past

situations, so the problems may be used as basis for the new cases. With the use of Reasoning

Based on Cases (RBC), a technical of Artificial Intelligence, past cases are recovered and

compared by processes of similarity between the actual problem and problems effectively solved in

the past.

Keywords: Reasoning Based on Cases. Artificial Intelligence. Help Desk.

Page 10: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

9

1 INTRODUÇÃO

No início do século XXI, as centrais de atendimento já possuíam a capacidade de

executar determinados serviços sem a intervenção humana, poupando recursos e dedicação

para os mesmos. Ainda assim, existem resoluções para determinados problemas e ações no

sistema que são muito complexas para serem automatizadas. Qualquer empresa que tenha

seu próprio Help Desk, ou seja, um serviço de apoio ao usuário para suporte de problemas

técnicos, lidam todos os dias com um imenso número de chamados, sobre diversas dúvidas.

Entretanto em sua grande maioria, essas chamadas são semelhantes ou até mesmo iguais.

Desta forma o deslocamento de um técnico e a atenção dada a essas dúvidas gera um

consumo de tempo e recurso humano desperdiçado equivocadamente, além dos gastos com

deslocamento e a utilização de meios de telecomunicação, como telefone, largamente

utilizado pelas empresas. Grande parte das dúvidas geradas são simples e podem ser

resolvidas pelo próprio usuário. Estas são dúvidas cotidianas ou utilizações incorretas, e

que consomem de alguma forma, recursos da empresa que podem ser empregados em outro

setor.

No caso de um provedor de Internet, este arca diariamente com dúvidas simples, tais

como problemas de navegação. Grande parte desses problemas podem ser resolvido

simplesmente com a configuração de um DNS (Domain Name System - Sistema de Nomes

de Domínios), conexão nula ou limitada, que pode ser resolvido efetuando a configuração

de um IP (Internet Protocol), problemas de acesso a programas de Chat de conversa, que

muitas vezes podem ser solucionadas com a correção do calendário e relógio do

computador. Para dispositivos de hardware, placa de rede desativada, cabo de rede

desconectado, programa da interface de rede instalado incorretamente, geram o mesmo

problema de dificuldade na navegação, mais abordados de forma diferente.

Muitos usuários no ímpeto do momento, ao se depararem com dificuldade ao

acessar um determinado domínio na Internet chegam à conclusão que não existe sinal, sem

ao menos tentar efetuar a navegação em outros domínios. Partindo do princípio que

endereços na internet estão hospedados em servidores diferentes, ou seja, com

disponibilidades diferentes, a dificuldade em acessar um domínio na internet não pode

Page 11: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

10

torna-se uma obrigatoriedade para o acesso aos outros domínios. Dessa forma freqüentes

problemas de navegação podem ser solucionados tentando acessar domínios totalmente

opostos. Estes são problemas que o usuário por si mesmo tem a opção de resolver no

mesmo instante e sozinho, apenas com a indicação de uma direção para a solução.

Na grande maioria dos casos, porém a empresa provedora de serviços de Internet se

vê obrigada a abrir um chamado para aquele problema, solicitando até mesmo um prazo de

24 a 48 horas para a conclusão, sendo este um procedimento considerado padrão entre os

provedores de serviço de Internet. A união da grande quantidade de chamadas e os prazos

praticados pelas empresas provedoras de serviços de internet torna o atendimento ao

usuário demorado.

Uma estratégia para solucionar o problema dos atendimentos é a criação de um

Sistema de help desk, que se constitui de uma aplicação composta de técnicas de RBC

(Raciocínio Baseado em Casos). O funcionamento de todo o sistema está baseado em

perguntas e respostas, onde as dúvidas do usuário são consultadas em uma base de dados e

usando-se uma métrica pré-estabelecida, retorna com uma resposta semelhante ao

questionamento do usuário. O sistema de help desk deve ser de fácil usabilidade e fácil

acesso, desenvolvido diretamente para usuários que possuem os mínimos conceitos sobre

informática.

Quando um novo problema é encontrado, o RBC relembra casos similares e adapta

as soluções que funcionaram no passado ao problema corrente. Subjacente a este enfoque

está a suposição de que problemas cuja descrição possui formas similares apresentam

soluções similares. Conseqüentemente soluções de problemas prévios similares ao atual

torna-se um ponto de partida útil para soluções de um novo problema (WANGENHEIM e

WANGENHEIM, 2003).

O sistema em questão não possui o intuito de substituir os meios convencionais de

suporte e solução aos problemas do usuário, mas sim, agregar valor, tornando o serviço de

Help Desk já existente mais eficaz e eficiente. Este projeto de pesquisa também se justifica

em nível de Trabalho de Conclusão de Curso para o Curso de Ciência da Computação, por

se tratar do desenvolvimento de uma solução computacional que faz o uso de conceitos e

teorias como as citadas anteriormente.

Page 12: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

11

1.1 PROBLEMATIZAÇÃO

1.1.1 Formulação do Problema

Os profissionais que trabalham diariamente com atendimento ao cliente e com a

solução de dificuldades relacionados a problemas computacionais, tem que lidar com uma

gama extensa de conhecimentos. Entretanto pela infinidade de situações, muitos desses

conhecimentos se perdem com o passar do tempo e o desgaste do profissional em continuar

armazenando situações com a sua própria prática. Muitos desses conhecimentos podem ser

reutilizados visto que fazem parte de situações iguais ou até mesmo similares, retornando

para o usuário uma solução mais rápida e mais precisa.

1.1.2 Solução Proposta

A solução proposta baseia-se em uma técnica de Inteligência Artificial denominada

Raciocínio Baseado em Casos, visando melhoria do atendimento e resolução do problema

pelo especialista. Por se tratar de um sistema web, a interface permite a interação do

usuário com o especialista, evitando assim que problemas simples, de fácil resolução

possam comprometer o tempo de atendimento ao usuário. Desta forma o especialista tem

mais tempo disponível para o atendimento do próximo usuário, otimizando o tempo de

atendimento e a qualidade do serviço.

1.2 OBJETIVOS

1.2.1 Objetivo Geral

O objetivo geral deste projeto é desenvolver um sistema de Help Desk, usando

Raciocínio Baseado em Casos para auxiliar no atendimento dos clientes no setor de suporte

de um provedor de internet situado na cidade de Balneário Camboriú.

Page 13: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

12

1.2.2 Objetivos Específicos

• Pesquisar e analisar soluções similares;

• Determinar os principais requisitos exigidos pelo sistema;

• Compreender as metodologias utilizadas para o desenvolvimento de um sistema

RBC;

• Pesquisar e definir parâmetros para o RBC;

• Pesquisar e definir as tecnologias necessárias para a implementação do sistema;

• Realizar a modelagem conceitual do sistema;

• Implementar o sistema;

• Testar e validar o sistema; e

• Documentar o desenvolvimento e os resultados do sistema.

1.3 Metodologia

Para o desenvolvimento da fundamentação teórica, foram realizadas pesquisas

visando entender conceitos e metodologias envolvidas no processo de tratamento de

informações de um sistema Help Desk, conhecer o método de Raciocínio Baseado em

Casos tais como ferramentas necessárias ao desenvolvimento web. As pesquisas se

fundamentaram em livros, artigos científicos, sites na Internet que abordam o assunto e

trabalhos acadêmicos.

Em uma segunda etapa do trabalho, foi realizada a análise do sistema, usando UML

(Unified Modeling Language) para diagramar o modelo proposto. As demais etapas serão

descritas no TCCII.

1.4 Estrutura do trabalho

O trabalho está dividido em quatro capítulos: Introdução, Fundamentação Teórica,

Projeto e Considerações Finais.

Page 14: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

13

O primeiro capítulo apresenta uma breve introdução sobre o tema, descrevendo o

problema e apresentando uma solução. Também foi feita uma discussão sobre como os

objetivos devem ser trabalhados para que até o fim do desenvolvimento do trabalho os

mesmos possam ser alcançados.

No segundo capítulo é apresentado um estudo mais aprofundado sobre os temas que

serão abordados no trabalho. Inicia-se apresentando um estudo sobre a Inteligência

Artificial, mais especificamente sobre o Raciocínio Baseado em Casos, que é a técnica

utilizada neste projeto de pesquisa. E ao final são demonstrado outros sistemas de Help

Desk largamente utilizados no mercado.

O terceiro capítulo refere-se ao projeto, incluindo os requisitos do sistema e a forma

como ele será modelado e desenvolvido. Também é apresentado uma descrição sobre as

ferramentas utilizadas para o desenvolvimento do sistema, como por exemplo o PHP

(Hypertext Preprocessor) e o MySQL.

O quarto capitulo apresenta as conclusões e recomendações para trabalhos futuros.

2 FUNDAMENTAÇÃO TEÓRICA

Para o desenvolvimento do sistema de Help Desk necessita-se o conhecimento de

conceitos de Inteligência Artificial, mais exatamente em Raciocínio Baseado em Casos e

Rotinas de um setor de Help Desk. A seguir serão abordados os assuntos considerados os

mais relevantes para este projeto.

2.1 HELP DESK

Inicialmente para o desenvolvimento deste projeto deve-se entender o significado de

Help Desk. A palavra é um termo inglês, que se descreve como serviço de apoio ao usuário.

O Help Desk é uma área especializada na resolução de problemas, e suporte técnico a

equipamentos de informática e telecomunicações, seja por telefone ou acesso remoto, com

o objetivo de auxiliar e resolver problemas que os usuários possam ter. O objetivo maior do

Page 15: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

14

Help Desk é fornecer aos usuários um ponto único de contato (SPOC - Single Point Of

Contact), essencial para a comunicação entre os usuários e os profissionais da TI.

O Help Desk surgiu da idéia de um mal necessário, ou seja, com a função de manter

em funcionamento todo o aparato tecnológico que na teoria é responsável pelo crescimento

do negócio da empresa. O Help Desk é obrigado a dispor de uma variada gama de

conhecimentos, sendo que nem tudo que se apresenta através de dificuldade está disponível,

anotado ou documentado, novos problemas são criados a partir do conflito de novas

tecnologias, tornando-se algo inusitado.

De acordo com Cohen (2005), os Help Desks são constituídos sobre a tríade

pessoas, tecnologias e processos. Hoje em dia, os gerentes destas áreas encontram no

mercado de fornecedores um grande leque de ferramentas para suprir a lacuna tecnologia.

Possuem bom conhecimento sobre como organizar os mecanismos que envolvem

processos, frutos elaborados da fusão organizacional de antigos setores de Organização e

Métodos com as áreas de tecnologia da informação.

Na grande maioria dos setores de Help Desk, o principal problema se concentra em

receber mais chamados do que se pode atender. Na lógica a melhor maneira de solucionar

esse problema é diminuir o numero de chamados efetivos que chegam até o Help Desk. O

principal foco na diminuição de chamados para o Help Desk é a solução dos problemas que

são gerados no dia-a-dia, porém na rotina das empresas, muitos são os problemas que se

repetem, e chegam seguidas vezes ao suporte. O setor do Help Desk já tem por si próprio

que lidar com metas para que mantenha toda a estrutura tecnológica da empresa em

funcionamento, ou seja, deve-se separar o que é efetivo para ser solucionados diretamente

pelo Help Desk, e o que são problemas repetitivos nos quais existem alternativas para sua

solução. Na utilização de computadores, internet ou um sistema interno da empresa, os

usuários se deparam com problemas iguais ou similares todo o tempo. O que acontece

nesse caso é a forma que o problema é apresentado. Problemas de DNS (Domain Name

System - Sistema de Nomes de Domínios), por exemplo, afeta diversos programas que

acessam a internet, se não existe atribuição automática de DNS na rede onde se está

navegando, o mesmo necessita que seja configurado no computador um endereço de DNS

para o seu perfeito funcionamento, desta forma um programa de Chat, por exemplo, que

Page 16: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

15

não conecta ou não executa todas as suas funções pode ter seus problemas atribuídos a uma

mesma fonte, porém apresentado de forma diferente. Na tentativa de conectar-se à um rede

sem fio por exemplo, no dispositivo de rede é atribuído a informação “conexão nula ou

limitada”. Neste caso determina-se que o dispositivo provedor da rede sem fio não está

configurado para trabalhar com DHCP, ou seja não distribui IP’s automaticamente. Assim

sendo, o computador que tenta ingressar em sua rede não conseguirá navegar sem um IP

configurado manualmente, enquanto para o usuário o único ponto relevante é que o mesmo

não consegue utilizar a internet.

Grande parte dos problemas relacionados à utilização de tecnologias de informática

possui entre si uma similaridade por menor que ela seja. Assim sendo o tempo gasto na

resolução definitiva de problemas, em grande parte é curto. A demora é notada pelo tempo

que o profissional leva de deslocamento até a fonte, mais o tempo que é informado pelo

usuário sobre as dificuldades. Problemas que podem ser resolvidos com a utilização de um

sistema, deixando assim para o Help Desk apenas as situações efetivas. Fatores estes que

tornam o serviço mais ágil, desafogando o setor, que é constantemente fonte de

reclamações pela demora no seu atendimento.

2.2 INTELIGÊNCIA ARTIFICIAL

A palavra inteligência vem do latim inter (entre) e legere (escolher). Portanto,

inteligência significa aquilo que permite ao ser humano escolher entre uma, duas ou várias

opções, ou ainda a habilidade de realizar uma determinada tarefa de forma eficiente. A

palavra artificial vem do latim artificiale, e significa algo não natural (produzido pelo

homem). Assim, inteligência artificial é um tipo de inteligência produzida pelo homem para

dotar as máquinas de algum tipo de habilidade que simula a inteligência

humana.(Fernandes, 2003 apud MENEZES, 2006).

A inteligência Artificial (IA) busca prover máquinas com a capacidade de realizar

algumas atividades mentais do ser humano. Em geral são máquinas com algum recurso

computacional, de várias arquiteturas, que permitem a implementação de rotinas não

necessariamente algorítmicas. As atividades realizadas por estas máquinas podem envolver

a sensopercepção (como tato, audição, e visão), as capacidades intelectuais (como

Page 17: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

16

aprendizado de conceitos e de juízos, raciocínio dedutivo e memória), a linguagem (como

as verbais e gráficas) e atenção (decisão no sentido de concentrar as atividades sobre um

determinando estímulo) (NASCIMENTO JR. e YONEYAMA, 2000).

Em termos de tecnologia, IA permite que máquinas possam realizar tarefas

complexas no lugar do operador humano, liberando-o de atividades enfadonhas, insalubres

ou inseguras. Também pode aumentar a eficiência do humano na sua interação com

equipamentos sofisticados. Permite, ainda que conhecimentos possam ser compartilhados

por muitas pessoas, sem que haja necessidade de consultas a especialistas (NASCIMENTO

JR. e YONEYAMA, 2000).

2.2.1 História

O primeiro trabalho reconhecido como IA foi realizado por Warren McCulloch e

Walter Pitts (1943). Eles se basearam em três fontes: o conhecimento da filosofia básica, a

função dos neurônios no cérebro, uma análise formal da lógica proporcional criada por

Russel e Whitehead, e a teoria da computação de Turing. Esses dois pesquisadores

propuseram um modelo de neurônios artificiais no qual cada neurônio se caracterizava por

estar “ligado” ou “desligado”, com a troca para “ligado” ocorrendo em resposta à

estimulação por um número suficiente de neurônios vizinhos. O estado de um neurônio era

considerado “equivalente em termos concretos a uma proposição que definia seu estímulo

adequado”. Por exemplo, eles mostraram que qualquer função computável podia ser

calculada por uma rede de neurônios conectados, e que todos os conectivos lógicos (e, ou,

não etc.) podiam ser implementados por estruturas de redes simples. McCulloch e Pitts

também sugeriram que redes definidas adequadamente seriam capazes de aprender. Donald

Hebb (1949) demonstrou uma regra de atualização simples para modificar as intensidades

de conexão entre neurônios. Sua regra, aprendizagem de Hebb, continua a ser um modelo

influente até hoje (RUSSELL e NORVIG, 2004).

Surgiram vários exemplos de trabalhos que hoje podem ser caracterizados como IA,

mas foi Alan Turing que primeiro articulou uma visão completa da IA em seu artigo de

1950 intitulado “Computing Machinery and Intelligency”. Nesse artigo, ele apresentou o

Page 18: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

17

teste de Turing, aprendizagem de máquina, algoritmos genéricos e aprendizagem por

esforço (RUSSELL e NORVIG, 2004).

Segundo Rabuske (1995 apud MENEZES, 2006), já em 1965, Zadeh propõe a base

lógica difusa, também chamada de lógica nebulosa ou fuzzy logic, que lida com a avaliação

de expressões lógicas contendo valores incertos.

Grande parte do trabalho em redes neurais nos anos 80 foi realizada na tentativa de

definir a abrangência do que poderia ser feito e de aprender como as redes neurais diferem

das técnicas “tradicionais”. Utilizando uma metodologia aperfeiçoada e estruturas teóricas,

o campo chegou a uma compreensão tal que, agora, as redes neurais podem ser comparadas

as técnicas correspondentes da estatística, do reconhecimento de padrões e do aprendizado

de máquinas, podendo ser utilizada a técnica mais promissora em cada aplicação.

(RUSSELL e NORVIG, 2004).

2.3 RACIOCÍNIO BASEADO EM CASOS

No dia-a-dia do ser humano, problemas que surgem a todo o momento em suas

vidas forçam-nos a tomar decisões. As pessoas, por natureza trabalham com a hipótese de

já ter vivido problema ou situação semelhante anteriormente, ou em outros casos,

conhecem alguém que já tenha vivido o mesmo problema. Dessa experiência vivida ou

adquirida utiliza-se solução semelhante ou até mesmo igual, focando na resolução do seu

próprio problema.

Segundo Wangenheim e Wangenheim (2003), a tecnologia de RBC pode ser

analisada de dois pontos de vista diferentes. Pode ser considerada como uma metodologia

para modelar o raciocínio e o pensamento humano e também como uma metodologia para

construir sistemas computacionais inteligentes.

Para Fernandes (2003 apud MIOTTO, 2006), “o processo característico do RBC,

Raciocínio Baseado em Casos, consiste em identificar o problema atual, buscar a

Page 19: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

18

experiência mais semelhante na memória e aplicar o conhecimento desta experiência

passada no problema atual”.

Abel (1996 apud MIOTTO, 2006), informa que para um domínio particular os

problemas a serem resolvidos tendem a ser recorrentes e repetir-se com pequenas alterações

em sua versão original. Desta forma, soluções anteriores podem ser aplicadas também com

pequenas alterações.

Segundo Leak (1996 apud THÉ, 2001) os sistemas de RBC podem ser

interpretativos, onde utiliza casos anteriores como ponto de referência para classificar e/ou

caracterizar novas situações, ou os RBC’s podem ser como soluções de problemas que

utiliza casos anteriores para sugerir soluções para aplicar em novas circunstâncias.

Segundo Fox (1995 apud GROSSMANN JR., 2002), o processo do RBC pode ser

dividido em tarefas separadas, porém onde exatamente ficam as linhas que separam cada

tarefa depende de cada aplicação em particular. Em linhas gerais normalmente esse

processo se divide em três partes: a recuperação de um caso semelhante da base de casos, a

avaliação do caso recuperado frente às necessidades do novo caso, e a adaptação do caso

recuperado para que atenda satisfatoriamente o novo problema, conforme podemos ver na

figura 1.

Figura 1. As divisões do processo do RBC.

Fonte: Adaptado de Grossmann Jr.(2002).

Page 20: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

19

O Raciocínio Baseado em Casos é a forma lógica de pensamentos racionais, que se

baseia em acontecimentos. A técnica é importante no modo de implementar um sistema de

Inteligência Artificial, por trazer para próximo a forma de raciocínio do ser humano, de

uma maneira simples e fácil de ser entendida. Uma metodologia simples, onde o problema

atual é o ponto de partida para buscar experiências passadas, utilizar a mesma solução ou

adaptar de forma que se aplique as novas situações.

2.3.1 Histórico

Segundo Wangenheim e Wangenheim (2003 ), as raízes do Raciocínio Baseado em

Casos na Inteligência Artificial foram inspirados nos trabalhos de Schank e Abelson sobre

Memória Dinânima e no modelo cognitivo de uma função central de lembrança de

situações passadas (casos e memória episódica) e de padrões de situações.

Para Melchiors (1999 apud GROSSMANNN JR., 2002), em 1977, Schank e

Abelson propuseram que o conhecimento geral das pessoas sobre as situações está

armazenado em scripts, permitindo que elas criem expectativas sobre o que ouvem, e dessa

forma façam deduções sobre as relações entre as coisas que ouviram. Os scripts foram

propostos como uma estrutura de memória conceitual, descrevendo informação sobre

eventos estereotipados, como ir a um restaurante ou a uma consulta a um médico. Porém

experimentos com scripts mostraram que eles não representam uma teoria completa de

representação de memória. Já que as pessoas confundem eventos que tem scripts similares.

Os scripts parecem ser apenas uma faceta dos conhecimentos que as pessoas utilizam para a

compreensão: elas se valem também de outros tipos de conhecimento, como o

conhecimento sobre objetivos, planos, relações interpessoais e papéis efetuados pelas

pessoas, segundo Kolodner (1993 apud GROSSMANNN JR., 2002). Representações sobre

estes tipos de conhecimento têm sido propostas e sistemas de computadores que usam estes

tipos de conhecimento para o entendimento têm sido desenvolvidos.

Outros caminhos dentro da área de RBC foram, em seguida, pesquisados por

Gentner, 1983, que estudou sobre o raciocínio analógico. Teoria de formação de conceitos,

resolução de problemas e aprendizado experimental dentro da psicologia e da filosofia. Mas

um dos primeiros sistemas que utilizou a metodologia de RBC foi o CYRUS, desenvolvido

Page 21: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

20

por Janet Kolodner em 1983, baseado no modelo de memória dinâmica de Schank. A

memória de casos neste modelo é uma estrutura hierárquica chamada pacotes de

organização da memória episódica. A idéia básica é organizar casos específicos que

possuam propriedades similares mais generalizadas de acordo com Plaza e Aamodt (1994

apud THÉ, 2001).

Outra base de RBC e conjunto de modelos foi desenvolvida por Bruce Poter e seu

grupo na University of Texas, em Austin. Inicialmente trabalhando com o problema de

aprendizado automático para classificação de tarefas, o grupo desenvolveu o sistema

PROTOS. O seguinte sistema enfatiza a integração do conhecimento geral do domínio e do

conhecimento específico de casos em uma estrutura de representação unificada – um

modelo de memória de casos. Além dessa, outra contribuição importante para a área foi o

trabalho do grupo de Edwina Rissland na University of Massachussetts, em Amherst, que

desenvolveram o sistema HYPO, aplicado para o domínio do Direito segundo Grossmannn

Jr. (2002).

2.3.2 Elementos Básicos do RBC

Para Wangenheim e Wangenheim (2003), os elementos básicos de um sistema de

RBC são:

• Representação do Conhecimento: Em um sistema de RBC, o

conhecimento é representado principalmente em forma de casos que

descrevem experiências concretas. No entanto, se for necessário, também

outros tipos de conhecimento sobre o domínio de aplicação podem ser

armazenados em um sistema de RBC (por exemplo, casos abstratos e

generalizados, tipo de dados, modelos de objetos usados como informação).

• Medida de Similaridade: Temos de ser capazes de encontrar um caso

relevante para um problema atual na base de casos e responder à pergunta

quando um caso relembrado for similar a um novo problema.

• Adaptação: Situações representadas como casos dificilmente serão idênticas

às do problema atual. Sistemas de RBC avançado têm mecanismos e

Page 22: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

21

conhecimento parar adaptar os casos recuperados completamente, para

verificar se satisfazem às características da situação presente.

• Aprendizado: Para que um sistema se mantenha atualizado e evolua

continuamente, sempre que ele resolver um problema com sucesso, deverá

ser capaz de lembrar dessa situação no futuro como mas um novo caso.

2.3.3 Funcionamento de um RBC

Segundo Wangenheim e Wangenheim (2003), o modelo mais aceito para o processo

de RBC é o Ciclo de RBC proposto por Aamondt e Plaza, que engloba um ciclo de

raciocínio contínuo composto por quatro tarefas principais demonstrado na figura 2:

• recuperar: o(s) caso(s) mais similar(es) da base de casos;

• reutilizar: este(s) caso(s) para resolver o problema;

• revisar: a solução proposta; e

• reter: a experiência representando o caso atual (ou partes desta experiência)

para reutilização futura.

Page 23: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

22

Figura 2. Ciclo do Raciocínio Baseado em Casos.

Fonte: Adaptado de Wangenheim e Wangenheim (2003).

2.3.4 Representação de um Caso

De acordo com Wangenheim e Wangenheim (2003), um caso é uma peça de

conhecimento contextualizado representando uma experiência ou episódios concretos.

Contém a lição passada, que é o conteúdo do caso e o contexto em que a lição pode ser

usada.

Um caso é definido pela representação do conhecimento contido em uma

experiência vivida que conduz o indivíduo a alcançar seus objetivos. Todo caso é composto

por Problema, que descreve o estado do mundo real onde o caso ocorre; e Solução, que

contém o estado das soluções derivadas para o problema. Pode-se ainda visualizar o caso

pela representação do espaço do problema e pela representação do espaço da solução de

acordo com Lagemann (1998).

Page 24: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

23

O caso é o ponto de partida para a procura de uma solução, ele representa

acontecimentos e conhecimentos, e traz com ele a lição passada da experiência vivida. A

figura 3, representa o ciclo do RBC de uma forma mais analítica.

Figura 3. O Ciclo RBC – Versão mais Analítica

Fonte: Adaptado de Grossmann Jr. (2002).

O que é comum a todos os casos é que eles representam uma situação

experimentada. Esta situação, quando relembrada mais tarde forma um contexto no qual o

conhecimento nela inserido é supostamente aplicável. Quando uma situação similar surge,

aquelas decisões e o conhecimento que fez parte delas provêm um ponto de partida para a

interpretação da nova situação ou para a solução do novo problema que esta situação coloca

(WANGENHEIM e WANGENHEIM, 2003).

Page 25: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

24

De acordo com Kolodner (1993 apud LUGER, 2002) propõe um conjunto de

heurística de preferências para ajudar a organizar o armazenamento e a recuperação de

casos. Entre elas estão:

1. Preferência orientada a objeto. Organizar os casos, pelo menos em parte, pelas

descrições do objetivo. Recuperar casos que tenha o mesmo objetivo que a

situação corrente.

2. Preferência por características salientes. Preferir casos que casem com as

características mais importantes ou aqueles que casem com o maior número de

características importantes.

3. Preferência por maior especificidade. Procurar por casamentos de

características, tão exatos quanto possíveis, antes de considerar casamentos mais

genéricos.

4. Preferência por ocorrências freqüentes. Verificar primeiro os casos que foram

mais freqüentemente casados.

5. Preferência por atualidade. Preferir casos usados mais recentemente.

6. Preferência por facilidade de adaptação. Usar primeiro os casos mais fáceis de

serem adaptados à situação corrente.

Segundo Fernandes (2003 apud MIOTTO, 2006), o problema na representação de

Raciocínio Baseado em Casos é essencialmente o que se deve guardar de um caso, a

estrutura apropriada para a descrição do mesmo e como a memória de casos deve ser

organizada e indexada pra efetuar satisfatoriamente a recuperação e reutilização.

2.3.5 Similaridade

O conceito de utilidade de casos é, de um ponto de vista abstrato, central para o

Raciocínio Baseado em Casos. Durante a recuperação de casos procura-se por um caso na

Page 26: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

25

base de casos, que, no contexto da descrição do problema atual, é útil para determinar a sua

solução (WANGENHEIM e WANGENHEIM, 2003).

Segundo Delpizzo (1997 apud MIOTTO, 2006), a similaridade é o ponto crucial do

RBC, pois todo raciocínio que dá fundamento a esta técnica está aqui. A avaliação feita

comparando-se os casos candidatos com o caso a ser solucionado, sendo a semelhança das

características é que irá determinar a similaridade entre eles.

Segundo Fernandes (2003 apud MENEZES, 2006), um caso será similar ao outro

quando as características que representam o conteúdo e o contexto do mesmo forem

semelhantes.

De acordo com Wangenheim e Wangenheim (2003), uma das hipóteses básicas de

um sistema de RBC é que problemas similares possuem soluções similares. Com base nesta

hipótese, o critério a posteriori da utilidade de solução passa a ser reduzido ao critério a

priori da similaridade de descrições de problema. Esta forma de proceder é justificada pela

premissa de que, em muitas aplicações, a similaridade de definições de problemas implica a

aplicabilidade da solução de um sobre outro.

Para Wangenheim e Wangenheim (2003), a solução descrita em um exemplo de

caso escolhido pode ser útil para um novo problema, caso ela:

• Permita o solucionamento do problema atual de alguma forma;

• Evite a repetição de um erro anterior;

• Permita um solucionamento eficiente do problema, que seja mais rápido do

que, por exemplo, utilizar uma heurística passo a passo para calcular uma

solução;

• Ofereça a melhor solução para o problema de acordo com um critério de

otimalidade qualquer;

• Ofereça ao usuário uma solução cuja lógica possa ser compreendida por ele.

Page 27: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

26

Assim sendo a similaridade é o ponto definitivo do funcionamento do RBC, através

dela serão definidos os padrões para a procura por soluções com base nos acontecimentos

anteriores. A similaridade diz o quanto próximo o problema atual, está de um problema do

passado, assim como a sua solução.

2.3.5.1 Indexação

Os índices de um caso são combinações de seus atributos mais importantes, que

permitem distingui-lo de outros e identificar casos úteis para uma dada descrição de

problema (WANGENHEIM e WANGENHEIM, 2003).

Os índices são normalmente utilizados quando a base de casos é grande, para

facilitar a recuperação dos casos armazenados, sendo os responsáveis por tornar um caso

acessível no momento e condição apropriado – isto é, quando ele possuir um potencial para

contribuir para a solução do problema corrente. São combinações dos descritores

importantes de um caso, isto é, daqueles descritores que distinguem um caso dos outros. O

esquema de indexação envolve várias partes. Primeiramente, devem ser designados rótulos

para os casos no momento em que estes são armazenados na base, de modo a garantir que

eles possam ser recuperados no momento apropriado. Tais rótulos são usados no momento

de recuperação para julgar se o caos armazenado deve se selecionado. Uma segunda

questão envolvendo a indexação é a definição da organização dos casos, de modo que a

busca através da base de casos seja eficiente e precisa. Relacionada a estas questões está a

definição dos algoritmos de recuperação a serem utilizados (GROSSMANN JR., 2002).

Segundo Lagemann (1998), a indexação é a essência do RBC, pois orienta a

avaliação da similaridade, e determina o que comparar entre os casos para determinar sua

similaridade. Assim, um RBC além de usar índices com os objetos de facilidade e rapidez

na recuperação, também os usa para realizar eficientemente a atribuição de similaridade

entre os casos.

Para Kolodner (1993 apud MIOTTO, 2006), o grande problema em um RBC é

retornar os casos apropriados. Para esta indexação existem dois problemas, que são o de

Page 28: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

27

colocar um rótulo no caso no momento em que ele está entrando na biblioteca de casos para

assegurar que possa ser lido no momento adequado e o segundo é que a busca possa ser

feita através desta biblioteca de casos de maneira eficiente e correta.

Algumas diretrizes que levaram a comunidade RBC a escolherem alguns índices:

• Índices devem ser preditivos;

• Predições devem ser possíveis de serem feitas para ser um índice útil;

• Índices devem se abstratos o suficiente para fazer um caso útil em uma

variedade de situações futuras; e

• Índices devem ser concretos o suficiente para serem facilmente reconhecidos em

situações futuras. (ibidem)

Assim sendo, os índices devem efetuar a tarefa de rotular um caso como sendo

capaz de auxiliar no suporte para determinadas decisões que o sistema de RBC possa

sugerir.

2.3.5.2 Recuperação

Recuperação do caso envolve a lembrança dos casos anteriores e a seleção do

melhor sub-conjunto daqueles casos recordados, de acordo com Kolodner (1993 apud THÉ,

2001).

Para realizar essa recuperação, é necessário casar a descrição do problema atual com

os problemas armazenados na base de casos, aplicando uma medida de similaridade

(WANGENHEIM e WANGENHEIM, 2003).

À medida que a descrição do problema de entrada está definida é preciso utilizar um

algoritmo de recuperação, utilizam-se, então, os índices já valorados anteriormente para

este processo. A avaliação da similaridade mede a similaridade do caso de entrada com os

casos da base. A recuperação tem por objetivo recuperar os casos mais similares entre o

Page 29: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

28

caso de entrada e o caso da base aproveitando a solução do problema que está sendo

analisado segundo Watson (1997 apud THÉ, 2001).

O processo de recuperação de casos tem por objetivo localizar um caso ou conjunto

de casos que de alguma forma possa ter a solução para situação atual. Esse processo pode

ser descrito por um conjunto de subtarefas à serem realizadas pelo sistema de RBC:

• Assessoramento da situação objetivando a formulação de uma consulta

representada por um conjunto de descritores relevantes da situação ou

problema atuais;

• Casamento, objetivando a identificação de um conjunto de casos

suficientemente similares à consulta;

• Seleção, que escolhe o melhor casamento ou casamentos com base no

conjunto de casos selecionado (WANGENHEIM e WANGENHEIM, 2003).

2.3.5.3 O Vizinho mais próximo (Nearest Neighbour)

Segundo Wangenheim e Wangenheim (2003), uma medida de similaridade

freqüentemente utilizada é a técnica nearest neighbour, bastante simples para a

determinação de similaridade entre dois casos. A idéia básica deste enfoque motivado

geometricamente é, que as ocorrências em uma base de casos podem também ser vistas

como pontos em um espaço multidimensional.

Segundo Kolodner (1993 apud MIOTTO, 2006), cada característica do caso de

entrada é comparada com a sua correspondente nos casos armazenados, o grau de igualdade

é computado, e baseado na importância atribuída para cada dimensão, uma medida de

similaridade é calculada.

Para cada característica no caso de entrada.

• Encontre a característica correspondente no caso armazenado;

• Compare os valores e calcule o grau de igualdade;

Page 30: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

29

• Multiplique pelo coeficiente que representa a importância da característica para

similaridade; e

• Adicione os resultados que derivarem ao total.

Uma formula para similaridade pelo vizinho mais próximo, segundo Fernandes

(2003 apud MENEZES, 2006), é apresentada na Equação 1.

( ) iii

n

i

wFNfFNdeSimilarida*

'1

),( ∑=

=

Onde:

N = novo caso

F = caso existente

n = número de atributos

i = atributo individual variando de 1 a n

f = função de similaridade para o atributo i nos casos N e F

w = peso do atributo i.

Equação 1

O Cálculo será aplicado para toda a base de casos para que se obtenha um ranking

dos mesmos. A similaridade normalmente varia de um intervalo entre 0 e 1, sendo 0

atribuído ao caso sem similaridade e atribuído 1 ao caso que tiver a similaridade exata,

segundo Fernandes (2003 apud MENEZES, 2006).

2.3.6 Adaptação

De acordo com Fernandes (2003 apud MIOTTO, 2006) o processo de ajuste da

nova situação é incremental, podendo ser desenvolvida antes ou durante a recuperação.

Page 31: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

30

Parte do processo irá ocorrer antes da pesquisa, parte durante sua avaliação e, sendo a

avaliação inicial incompleta, parte ocorre após a pesquisa, sendo que:

• Existe a necessidade de ajuste da situação para se descobrir o tipo de nova

situação, o que importa nela é as verdades além do motivo;

• É feita a avaliação dos detalhes e interpretação da situação, sendo mais completa

a interpretação que a situação, mais sujeita as mudanças do raciocinador;

• Pessoas podem realizar a interpretação de formas diferentes, como também os

programas;

• Interpretações inexatas geram conclusões pobres; e

• Pode haver a necessidade de várias interpretações para encontrar algo

satisfatório.

O ajuste da situação pode ser realizado em três etapas:

• Antes da pesquisa: definindo o contexto com o uso de check-list;

• Durante a pesquisa: refinando o contexto incrementalmente; e

• Após a pesquisa: redefinindo o contexto.

Pelo fato de nenhum problema do passado, se encontrar exatamente ao problema

atual, qualquer utilização de uma solução deve ser adaptada visando solucionar os novos

problemas. O processo de adaptação desenvolve-se durante todo o processo pela busca de

uma solução, do momento que a mesma é encontrada, até o momento que é utilizada. Esse

desenvolvimento da adaptação para uma solução, torna a capacidade de resolver um

problema mais eficaz, garantindo que o sistema sempre apresente uma alternativa.

2.3.7 Aprendizado

Para Lagemann (1998) na IA, quando se fala de aprendizagem, é comum pensar no

aprendizado por generalização, tanto pela indução quanto baseado em explicações.

Page 32: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

31

Enquanto a memória de RBC informa sobre similaridade entre casos e também informa

sobre quando generalizações podem ser formadas. O RBC obtém a maioria do seu

aprendizado de duas maneiras:

• Pela acumulação de novos casos; e

• Pela identificação de quais índices utilizar ou não na recuperação.

Nas palavras de Wangenheim e Wangenheim (2003) RBC implica uma forma de

aprendizado por analogia, em que, por meio da transformação e extensão de conhecimento

existente, uma tarefa ou problema similar são executados ou resolvidos. Em contraste com

métodos gerais de aprendizado por analogia, que são utilizados para caracterizar métodos

que solucionam novos problemas com base em experiências passadas análogas adquiridas

em um outro domínio de aplicação, métodos de RBC típicos enfocam estratégias de

indexação e recuperação para casos de um único domínio. As analogias geradas pelos

métodos de RBC não necessitam ser corretas e generalizáveis.

A tarefa de aprender pode ser vista como o processo de melhoria da performance de

um sistema de RBC (WANGENHEIM e WANGENHEIM, 2003):

• para a melhora dos repositórios de conhecimento de um sistema de RBC, em

especial a base de casos, por meio de adição, modificação e deleção de casos,

• para a melhora da medida de similaridade, por exemplo, por meio do ajuste de

pesos, e

• para a transformação da metodologia de solução, por exemplo, por meio do

ajuste das regras de adaptação de casos (WANGENHEIM e WANGENHEIM,

2003).

Page 33: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

32

2.4 Sistemas Similares

Seguindo através de pesquisas pela internet, foram selecionados alguns sistemas

similares dentro da área de Help Desk, não somente baseado sobre Inteligência Artificial,

devido à falta de sistemas específicos.

2.4.1 Fireman Professional

Fireman Professional é um aplicativo para registro de chamados, help desk e suporte

técnico. Utilizando tecnologia de três camadas, pode ser utilizado tanto para suporte interno

quanto externo, integrando-se aos seus bancos de dados já existentes.

O Fireman Professional permite o gerenciamento de solicitações de serviços, base

de conhecimento, inventário, detalhes sobre a empresa / usuário, de maneira fácil. Através

dele pode ser notado a melhora em um determinado departamento assim como o

atendimento ao usuário, aumentando a eficiência, reduzindo a carga de serviço e, mantendo

os usuários confiantes no suporte oferecido (FIREMAN, 2007).

O Gerenciamento de Configuração deve identificar, registrar e relacionar os

componentes de TI, assim como suas versões, componentes constituintes e seus

relacionamentos. Os itens que podem estar sob controle do Gerenciamento de Configuração

incluem hardware, software e documentações associadas (FIREMAN, 2007).

Através do FireDog, coletor de inventário do Fireman, são possíveis:

• Coletar, de maneira automática, hardwares de cada estação na rede (considere

restrições existentes do produto, como ambiente operacional e outros);

• Coletar, de maneira automática, softwares de cada estação na rede (considere

restrições existentes do produto, como ambiente operacional e outros);

• Inclusão manual de novos itens de inventário como dispositivos de rede (hubs,

switchs), documentação, impressora de redes, etc;

Page 34: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

33

• Acompanhar as licenças de softwares existentes em seu parque de equipamentos

e o gerenciamento sobre elas;

• Planejar o Gerenciamento de Mudanças (necessidades, upgrades, trocas de

versão, etc) através dos dados contidos neste Gerenciamento de Configurações;

• Identificar itens de configuração (ou de inventário) antigos que podem estar

gerando problemas no ambiente de infra-estrutura;

• Policiamento sobre mudanças não-autorizadas na rede (novos softwares nas

estações; remoção ilegal de peças e periféricos, etc); e

• Auditoria nos itens de configuração, assim como log de mudanças nos mesmos

(FIREMAN, 2007).

Figura 4. Abertura de um chamado.

Fonte: Fireman (2007).

Page 35: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

34

Figura 5. Abertura de um chamado via Web.

Fonte: Fireman (2007).

Page 36: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

35

Figura 6. Criação da Base de conhecimento.

Fonte: Fireman (2007).

2.4.2 HelpDesk-3

Uma solução integrada e modular, que cobre todo o ciclo de atendimento e suporte a

usuário. Entre os principais itens que aborda estão:

• mapeamento das características do cliente (inventário estático e dinâmico);

• estabelecimento de regas de atendimento;

• montagem de scripts e base de conhecimento ( usando IA);

• controle de chamados integrado ao inventário automático;

• indicadores de desempenho; e

• pesquisas de satisfação (HELPDESK-3, 2007).

Page 37: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

36

Dentre as características do sistema, podem-se destacar a criação de bases de

conhecimento com mecanismo inteligente de busca, facilidade de armazenamento,

indexação e recuperação de conhecimento e a criação de scripts inteligentes, para guiar o

processo de registro de um atendimento, tanto via web como via cliente-servidor,

garantindo as perguntas certas para obter dados essenciais ao atendimento do chamado.

Figura 7. Abertura de chamados via web.

Fonte: Helpdesk-3 (2007).

O HelpDesk-3 tem uma estratégia voltada para inteligência artificial para efetuar a

busca por informações. Criado para dar suporte ao processo de atendimento, o HD-3 tem

como principal diferencial a utilização da tecnologia CBR (Case Based Reasoning) para

permitir o acesso fácil às informações, aumentando de forma significativa a eficiência das

atividades de suporte técnico (HELPDESK-3, 2007).

Page 38: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

37

Figura 8. Busca por problemas já conhecidos.

Fonte: Helpdesk-3 (2007).

2.4.3 Automidia CBR

O AUTOMIDIA CBR consiste em uma ferramenta de Help Desk que utiliza Case-

based Reasoning, ou apenas CBR, que consiste em uma forma de recuperar conhecimento e

informação baseando-se na similaridade entre as situações.

Poderíamos fazer uma analogia entre um Caso e um Objeto da OOP (Programação

Orientada a Objetos) - são compostos por um conjunto de atributos, que recebem valores

diferentes para cada instância do Objeto. Em uma Base de Casos para suporte ao Helpdesk,

um Caso representa um Problema (sua descrição, atributos) e respectiva solução indicada

pelo segundo nível (AUTOMIDIA, 2007).

Page 39: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

38

No Automidia CBR, à um Caso associam-se: uma descrição (fornecida em

linguagem natural), um conjunto de questões com suas respostas esperadas e uma solução

indicada para solucionar aquele caso (AUTOMIDIA, 2007).

O processo de busca inicia por uma Descrição em Linguagem Natural fornecida

pelo usuário que é submetida a uma comparação "não-exata" com todas as descrições de

casos armazenados na base. Isto significa que, mesmo não tendo as mesmas palavras

usadas pelo usuário (ou dispostas de maneira diferentes) descrições de casos podem ter um

grau de similaridade próximo a 100% (AUTOMIDIA, 2007).

A partir da comparação inicial, é construído um conjunto de Casos Candidatos que

será usado no refinamento da busca. Neste processo, entram as Questões associadas aos

casos que receberam maior "score" no processo de comparação das descrições

(AUTOMIDIA, 2007).

Um conjunto de casos candidatos é construído. A partir de então, um refinamento da

busca é feito usando as questões associadas a cada caso. O mecanismo de comparação

(match) seleciona as questões que tem maior capacidade de promover a identificação de um

caso para a situação apresentada (AUTOMIDIA, 2007). Ao final do processo uma certa

quantidade de pontos é relacionado ao caso, ou seja é definido para aquele caso um “índice

de similaridade”, e os casos que atingem próximo a 100% representam situação igual à

apresentada pelo usuário.

Page 40: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

39

Figura 9. Automidia Change Management - Interface Web para os Analistas.

Fonte: Automidia (2007).

2.4.4 Análise de ferramentas similares

A tabela a seguir representa um quadro comparativo entre as ferramentas similares e

o projeto desenvolvido.

Ferramentas

Fireman Help Desk - 3 Automidia CBR HDRBC

Técnica IA Não possui RBC RBC RBC

Aplicação Web Sim Sim Sim Sim

Acessibilidade - Sim Sim Sim

Hardware Sim Sim Sim Sim

Software Sim Sim Sim Sim

Aprendizagem Não Não - Sim

Acompanhamento Sim Sim Sim Sim

Tabela 1. Análise de Ferramentas Similares

Page 41: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

40

• Técnica IA: Trata-se da técnica de Inteligência Artificial que o sistema contempla.

• Aplicação Web: Capacidade do sistema contemplar ou não uma interface web, não

necessitando que o usuário tenha o sistema instalado no próprio computador.

• Versatilidade: Compões-se da capacidade do sistema em se adequar as necessidades

do seu utilizador, seja ele empresa ou simplesmente o usuário.

• Acessibilidade: Trata-se de tornar o sistema acessível ao qualquer pessoa durante a

sua utilização. Este item aborda desde opções de layout até mesmo e desenvolvimento

do código, tornando de acordo com as necessidades do usuário.

• Hardware: Define se o sistema contempla ou não a capacidade de gerenciar soluções

para problemas de hardware.

• Software: Define se o sistema contempla ou não a capacidade de gerenciar soluções

para problemas de software.

• Aprendizagem do sistema: É a capacidade do sistema de aprender com as novas

situações. A partir do momento que o sistema sugere uma solução correta ou não para

o usuário, o mesmo deve aprender e armazenar na sua base de casos, para que

futuramente possa ser utilizada.

• Acompanhamento do Analista: Independente da capacidade de sugerir soluções ao

usuário, este item define se o sistema contempla ou não o acompanhamento de um

analista para eventuais situações inesperadas.

3 PROJETO

O presente trabalho consiste em um software utilizando Raciocínio Baseado em

Casos ou RBC, para auxiliar os usuários na busca por soluções para problemas

Page 42: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

41

computacionais do dia-a-dia, deixando para o setor de Help Desk apenas os problemas não

resolvidos pelo sistema RBC.

O sistema disponibiliza uma interface para o administrador e outra para o usuário.

Nesse caso, o administrador se trata de um analista do setor de Help Desk, para que o

mesmo possa acompanhar o andamento dos processos e as freqüentes dúvidas. Também

disponibiliza a interface de consulta do usuário, onde o mesmo pode procurar soluções

necessárias. A interação do usuário com o sistema dentro do que se assim bem como o

funcionamento do RBC em um contexto geral é demonstrado na Figura 10.

Figura 10. Projeto visão do usuário.

Neste capítulo, será apresentado o projeto do Sistema de Help Desk baseado em

RBC. Inicialmente serão demonstrados os requisitos funcionais e não funcionais do

sistema, seguido por uma análise do sistema através da notação UML.

O diagrama de caso de uso foi utilizado para descrever o problema e mostrar de que

forma será a interação que o usuário terá com o sistema. No diagrama de classes foram

Page 43: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

42

representadas as principais classes de negócio que farão parte do sistema, enquanto o

diagrama de seqüência representa a forma como os eventos deverão acontecer no sistema e

as suas principais operações.

3.1 ANÁLISE DE REQUISITO

3.1.1 Requisitos Funcionais

Os requisitos funcionais abrangem todas as funcionalidades que o sistema deve

possuir. De acordo com o estudo feito, foi definido que para o Sistema de Help Desk

Baseado em RBC devem ser atribuídos os seguintes itens como requisitos:

• RF.01 - O sistema deve permitir o cadastro, a manutenção e exclusão de

usuários do sistema;

• RF.02 - O sistema deve permitir o cadastro, alteração e exclusão de novos

casos;

• RF.03 - O sistema deve fazer pesquisa de soluções computacionais similares

(RBC);

• RF.04 – O sistema deve analisar o caso definido pelo usuário, e através da

medida de similaridade nearest neighbour (Vizinho mais próximo) pesquisar

casos semelhantes na base de casos.

• RF.05 - O sistema deve disponibilizar um módulo administrador para

alterações no sistema;

• RF.06 - O sistema deve ser capaz de aprender com os casos apresentados

pelo usuário, para que os mesmos possam ser utilizados futuramente;

• RF.07 - O sistema deve permitir a sua utilização pelo usuário mediante a

apresentação de login e senha;

Page 44: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

43

• RF.08 - O sistema deve permitir consulta ao histórico de resoluções de

problemas;

• RF.09 - O sistema deve permitir ao usuário enviar mensagens aos analistas

de Help Desk cadastrados no sistema;

• RF.10 - O sistema deve permitir separar os problemas por categoria; e

• RF.11 - O sistema deve permitir ao usuário consultar os resultados menos

relevantes como segunda opção apresentada pelo sistema.

3.1.2 Requisitos não funcionais

• RNF.01 - O sistema operacional deve ser o Windows NT, 2000, XP ou

Vista;

• RNF.02 - O Browser utilizado deve ser o Internet Explorer 5.0 ou superior;

• RNF.03 - O banco de dados utilizado será o Mysql;

• RNF.04 - Módulo apache em execução como servidor; e

• RNF.05 - O sistema deve permitir acesso apenas a usuários cadastrados no

sistema assim como administradores;

3.1.3 Regras de negócio

• RN.01 - O usuário poderá ter acesso ao seu histórico de resoluções de

problemas;

• RN.02 - Somente os administradores poderão excluir usuários do sistema;

• RN.03 - Somente o administrador poderá ter acesso ao histórico de todos os

usuários cadastrados.

Page 45: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

44

3.2 Modelagem do Sistema

A seguir é apresentada a modelagem do sistema, utilizando-se a linguagem UML,

contendo os principais diagramas que foram utilizados.

3.2.1 Diagrama de casos de uso

Segundo Furlan (1998 apud MIOTTO, 2006), os diagramas de caso de uso

fornecem uma descrição do sistema e suas interações com o mundo exterior, representando

uma visão de alto nível de funcionalidade intencional mediante o recebimento de um tipo

de requisição do usuário.

Figura 11. Caso de Uso do Administrador.

UC 01.01 – Configura Usuário: Permite o cadastro, alteração e exclusão dos usuários que

possuem acesso ao sistema.

Cadastra Novo Usuário – Fluxo Principal.

1. O sistema exibe o menu de configurações de usuários.

Page 46: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

45

2. O Administrador escolhe a opção cadastrar usuário

3. O Administrador insere os dados para o cadastro do novo usuário.

4. O sistema insere no banco de dados o novo usuário

Alterar Usuário – Fluxo Alternativo.

1. Sistema exibe o menu com as opções.

2. O Administrador seleciona a opção alterar usuário.

3. O sistema busca os usuários cadastrados no banco de dados.

4. O sistema exibe na tela a lista dos usuários cadastrados.

5. O Administrador seleciona o usuário.

6. O Administrador altera os dados do usuário.

7. O administrador confirma as alterações

8. O sistema atualiza as informações do usuário selecionado.

Excluir Usuário – Fluxo Alternativo.

1. O sistema exibe o menu com as opções.

2. O Administrado seleciona o a opção excluir usuário.

3. O Sistema busca os usuários cadastrados no banco de dados.

4. O Sistema exibe na tela os usuários cadastrados.

5. O Administrador seleciona o usuário à ser excluído.

6. O Administrador confirma a exclusão.

7. O Sistema exclui o usuário selecionado.

Page 47: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

46

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

UC 01.02 – Cadastra Casos: Este caso de uso consiste em como o administrador do

sistema cadastra e configurar novos casos na base de casos.

Cadastra Caso – Fluxo Principal.

1. O sistema exibe o menu com as opções.

2. O Administrador seleciona a opção cadastro de casos.

3. O sistema exibe a tela para cadastro de novos casos.

4. O Administrador informa os dados do novo caso.

5. O Administrador confirma a inclusão do novo caso.

6. O sistema insere no banco de dados o novo caso.

Alterar Caso – Fluxo Alternativo.

1. O sistema exibe o menu com as opções.

2. O Administrador seleciona a opção listar casos.

3. O sistema exibe na tela a lista dos casos cadastrados.

4. O Administrador seleciona o caso desejado.

5. O Administrador altera os dados do caso.

6. O Administrador confirma as alterações do caso.

7. O sistema altera o caso selecionado.

Page 48: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

47

Excluir Caso – Fluxo Alternativo.

1. O sistema exibe o menu com as opções.

2. O Administrador seleciona a opção listar casos.

3. O sistema exibe a lista de casos cadastrados no banco de dados.

4. O Administrador seleciona o caso desejado.

5. O Administrador seleciona excluir caso.

6. O Administrador confirma a exclusão.

7. O sistema exclui o caso selecionado do banco de dados.

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

UC 01.03 – Consulta Casos: Este caso de uso permite ao administrador definir no sistema

como será a utilização da consulta dos casos cadastrados na base de casos.

Consulta Caso – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O Administrador seleciona a opção consulta casos.

3. O sistema busca os casos e apresenta na tela.

4. O Administrador seleciona o caso que deseja consultar.

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

Page 49: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

48

UC 01.04 – Cadastra Categoria: Permite ao administrador do sistema cadastrar e

configurar categorias para os problemas consultados na base de casos.

Cadastra Categoria – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O Administrador seleciona a opção Cadastrar Categoria de Objetos.

3. O sistema apresenta a lista das categorias cadastradas.

4. O Administrador seleciona a opção incluir.

5. O sistema apresenta a tela de cadastro de nova categoria.

6. O Administrador informa os dados da nova categoria.

7. O Administrador confirma a inserção.

8. O sistema cadastra a nova categoria.

Alterar Categoria – Fluxo Alternativo.

1. O sistema exibe na tela o menu com as opções.

2. O Administrador seleciona a opção listar categorias.

3. O sistema apresenta as categorias cadastradas no banco de dados.

4. O Administrador seleciona a categoria que deseja alterar.

5. O Administrador altera os dados.

6. O Administrador confirma as alterações.

7. O sistema atualiza as informações da categoria.

Page 50: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

49

Excluir Categoria – Fluxo Alternativo.

1. O Sistema exibe na tela as opções do menu.

2. O Administrador seleciona listar categoria.

3. O sistema exibe na tela as categorias cadastradas.

4. O Administrador seleciona a categoria que deseja excluir.

5. O Administrador confirma a exclusão.

6. O sistema exclui do banco de dados a categoria escolhida.

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

UC 01.05 – Consulta Histórico do Usuário: Este caso de uso descreve como o

administrador pode ter acesso ao histórico de consultas de casos para solução de problemas

dos usuários do sistema.

Consultar Histórico do Usuário – Fluxo Principal.

1. Se o Administrador estiver autenticado no sistema.

2. O sistema exibe na tela as opções do menu.

3. O Administrador seleciona a opção Listar Usuários.

4. O sistema exibe na tela os usuários cadastrados.

5. O Administrador seleciona o usuário que deseja consultar histórico.

6. O Administrador seleciona a opção Consultar Histórico do Usuário.

7. O Sistema exibe na tela o histórico do usuário selecionado.

Page 51: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

50

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

UC 01.06 – Cadastra Problema: Este caso de uso descreve como o administrador do

sistema efetua o cadastro, alteração ou exclusão de problemas no sistema.

Cadastra Problema – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O Administrador seleciona a opção Cadastro de Problemas dentro da

categoria desejada.

3. O sistema exibe a tela de cadastro de problema

4. O Administrador insere os dados do novo problema,

5. O Administrador confirma os dados.

6. O sistema insere o novo problema.

Alterar Problema – Fluxo Alternativo.

1. O sistema exibe na tela as opções do menu.

2. O Administrador seleciona a opção listar problemas.

3. O Administrador seleciona o problema desejado.

4. O sistema exibe na tela os dados do problema.

5. O Administrador insere novos dados sobre o problema.

6. O Administrador confirma as alterações.

7. O sistema atualiza os dados do problema no banco de dados.

Page 52: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

51

Excluir Problema – Fluxo Alternativo.

1. Se no passo 5 do fluxo “Altera Problema” do Use Case 01.07, o

Administrador não estiver de acordo.

2. O Administrador pode selecionar a opção “Excluir Problema” na tela

“Alterar Problema”.

3. O Administrador confirma a exclusão.

4. O sistema exclui o problema selecionado.

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

UC 01.07- Consulta Problema: Este caso de uso descreve como o administrador do

sistema pode efetuar a consulta por problemas separados por categoria no sistema.

Consulta Problema – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O Administrador seleciona a opção Consulta Problema.

3. O Sistema exibe na tela os problemas cadastrados.

4. O Administrador Seleciona o problema desejado.

5. O sistema exibe as informações sobre o problema selecionado.

Pré-condição.

1. O Administrador deve estar autenticado no sistema.

Page 53: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

52

Figura 12. Caso de Uso do Usuário.

UC 02.01 – Efetua Login: Usuário acessa o sistema com login e senha.

Efetua Login – Fluxo Principal

1. Usuário acessa a página inicial do sistema.

2. Sistema exibe na tela o campo de login e a senha.

3. Usuário informa o login e a senha e solicita autenticação no sistema.

4. Se os dados foram digitados, o sistema verifica no banco de dados; e

5. Se o login e a senha conferem, sistema direciona o usuário para a tela do

menu inicial no sistema.

Page 54: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

53

Dados Incorretos – Fluxo Alternativo

1. No passo 5, se o login e a senha não foram digitados corretamente, o

sistema não permite o acesso e exibe uma mensagem de erro para

notificar o usuário.

UC 02.02 – Visualiza seu Histórico de Consultas: Este caso de uso descreve a permissão

do usuário em acessar o seu histórico de consulta por problemas, podendo visualizar os

todos, ou apenas os últimos problemas resolvidos através do sistema.

Visualiza seu Histórico de consultas – Fluxo Principal.

1. Se o Usuário estiver autenticado no sistema.

2. O sistema exibe na tela as opções do menu.

3. O Usuário seleciona a opção Histórico de Consultas.

4. O Sistema exibe na tela o Histórico do usuário.

Pré-condição.

1. O Usuário deve estar autenticado no sistema.

UC 02.03 – Cadastra Problema: Este caso de uso descreve como o usuário pode efetuar o

cadastro de novos problemas para serem solucionados.

Cadastra Problema – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O Usuário seleciona a opção Cadastra Problema dentro da categoria

desejada.

3. O sistema exibe a tela de cadastro de problema

4. O Usuário insere os dados do novo problema,

Page 55: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

54

5. O Usuário confirma os dados.

6. O sistema registra um novo chamado.

Pré-condição.

1. O Usuário deve estar autenticado no sistema.

UC 02.04 – Consulta Soluções: Este caso de uso descreve como o usuário efetua a

utilização da consulta por soluções, assim como a consulta por soluções alternativas,

àquelas que possuem um grau de similaridade menor.

Consulta Soluções – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O Usuário seleciona a opção Consulta Soluções.

3. O sistema efetua a busca por soluções utilizando a medida de

similaridade nearest neighbour (Vizinho mais próximo).

4. O Sistema exibe na tela a lista de soluções com a porcentagem de

similaridade, da mais similar para a menos similar.

5.O Usuário seleciona a solução que deseja consultar.

6.O sistema exibe na tela a solução selecionada.

Consulta Solução Alternativa – Fluxo Alternativo

1. Se no passo 6 do fluxo “Consulta Soluções” do Use Case 02.04, o

usuário não estiver de acordo com a solução apresentada .

2. O Usuário pode selecionar a opção Solução Alternativa.

3. O sistema exibe na tela a lista das soluções com menor grau de

similaridade.

Page 56: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

55

4. O Usuário seleciona a solução desejada.

5. O sistema exibe na tela a solução selecionada.

Pré-condição.

1. O Usuário deve estar autenticado no sistema.

UC 02.05 – Envia Mensagem ao Help Desk: Este caso de uso descreve como o usuário

pode ter contato com os analistas de Help Desk, caso não consiga uma solução através da

consulta na base de casos.

Envia Mensagem ao Help Desk – Fluxo Principal.

1. O sistema exibe na tela as opções do menu.

2. O usuário pode selecionar a opção “Enviar Mensagem ao Help Desk”.

3. O Sistema exibe na tela o formulário para o preenchimento da

mensagem.

4. O Usuário preenche os campos da mensagem.

5. O Usuário seleciona a opção enviar.

6. O sistema envia a mensagem ao Help Desk.

Pré-condição.

1. O Usuário deve estar autenticado no sistema.

3.2.2 Diagrama de classes

Segundo Furlan (1998 apud MIOTTO, 2006) trata-se de uma estrutura lógica

estática em uma superfície de duas dimensões mostrando uma coleção de elementos

declarativos de modelo como classes, tipos e seus respectivos conteúdos e relações.

Page 57: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

56

Figura 13. Diagrama de classes.

Page 58: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

57

NOME DA TABELA DESCRIÇÃO

Status Tabela que armazena o status dos problemas.

Chamado Tabela que armazena todo os histórico dos chamados.

Caso Tabela que armazena os casos envolvidos, juntamente com o objeto e

sua categoria, assim como uma solução e o status do caso.

Caso_problema Tabela que armazena o relacionamento entre os casos e os conjuntos,

assim como os problemas e o status dos problemas.

prob_status Tabela que armazena o relacionamento entre os objetos, conjunto,

problemas e status dos problemas.

Problema Tabela que armazena os problemas relativos dos conjuntos.

conj_prob Tabela que armazena o relacionamento entre objeto, conjunto e os

problemas. Onde serão definidos os pesos dos problemas para busca de

soluções.

Objeto Tabela que armazena informações sobre os objetos que são tratados no

sistema.

Categoria Tabela que armazena as categorias dos objetos.

Conj_obj Tabela que armazena o relacionamento entre os conjuntos e os objetos.

Conjunto Tabela que armazena os conjuntos.

Usuário Tabela que armazena todas as informações relativas aos usuários

Tabela 2. Descrição das tabelas de dados.

Page 59: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

58

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_caso INTEIRO Código do caso

cod_categoria INTEIRO Código da categoria dos objetos

desc_caso VARCHAR(255) Descrição do caso

solução_caso VARCHAR(255) Solução aplicada para o problema

ocorrido.

status_caso VARCHAR(45) Status do caso

Tabela 3. Dicionário de Dados da Tabela Casos.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_caso INTEIRO Código do caso

cod_categoria INTEIRO Código da categoria de objeto

cod_conjunto INTEIRO Código do conjunto

cod_objeto INTEIRO Código do objeto

cod_problema INTEIRO Código do problema

cod_status INTEIRO Código do Status

Tabela 4. Dicionário de Dados da Tabela Caso_problema.

Page 60: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

59

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_caso INTEIRO Código do caso no qual o atendimento

refere-se

cod_chamado INTEIRO Código do chamado

cod_user INTEIRO Código do usuário

date_chamado DATE Data do chamado

hora_chamado DATETIME Hora do chamado

prioridade_chamado VARCHAR(20) Prioridade no atendimento do chamado

Tabela 5. Dicionário de Dados da Tabela Chamado.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_problema INTEIRO Código do problema

desc_problema VARCAHR(45) Descrição do problema

Tabela 6. Dicionário de Dados da Tabela Problema.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_status INTEIRO Código do Status

desc_status VARCHAR(45) Descrição do Status

Tabela 7. Dicionário de Dados da Tabela Status.

Page 61: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

60

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_categoria INTEIRO Código da categoria dos objetos

desc_categoria VARCHAR(45) Descrição da categoria dos objetos

Tabela 8. Dicionário de Dados da Tabela Categoria.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_conjunto INTEIRO Código do conjunto

desc_conjunto VARCHAR(45) Descrição do conjunto

Tabela 9. Dicionário de Dados da Tabela Conjunto.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

Cod_categoria INTEIRO Código da categoria do objeto

Cod_conjunto INTEIRO Código do conjunto

Cod_objeto INTEIRO Código do objeto

Tabela 10. Dicionário de Dados da Tabela Conj_obj.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_categoria INTEIRO Código da categoria do objeto

cod_objeto INTEIRO Código do objeto

desc_objeto VARCHAR(45) Descrição do objeto

Tabela 11. Dicionário de Dados da Tabela Objeto.

Page 62: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

61

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_categoria INTEIRO Código da categoria do objeto

cod_conjunto INTEIRO Código do conjunto

cod_objeto INTEIRO Código do objeto

cod_problema INTEIRO Código do problema

peso INTEIRO Peso configurado para o problema

Tabela 12. Dicionário de Dados da Tabela Conj_prob.

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_categoria INTEIRO Código da categoria do objeto

cod_conjunto INTEIRO Código do conjunto

cod_objeto INTEIRO Código do objeto

cod_problema INTEIRO Código do problema

cod_status INTEIRO Código do status

Tabela 13. Dicionário de Dados da Tabela prob_status.

Page 63: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

62

NOME DO ATRIBUTO TIPO / TAMANHO DESCRIÇÃO

cod_user INTEIRO Código do usuário

contato_user VARCHAR(255) Endereço do usuário

email_user VARCHAR(45) E-mail do usuário

historico_user VARCHAR(255) Histórico de consultas do usuário

login_user VARCHAR(20) Login do usuário

nome_user VARCHAR(30) Nome do usuário

permissao_user VARCHAR(20) Permissão do usuário (Técnico,

Administrador ou Usuário)

senha_user VARCHAR(20) Senha do usuário

Tabela 14. Dicionário de Dados da Tabela Usuário.

3.2.3 Diagrama Entidade-Relacionamento (ER)

Diagrama entidade relacionamento (ER) é um modelo diagramático que descreve o

modelo de dados de um sistema com alto nível de abstração. Ele é a principal representação

do Modelo de Entidades e Relacionamentos. Sua maior aplicação é para visualizar o

relacionamento entre tabelas, no qual as relações são construídas através da associação de

um ou mais atributos destas tabelas que farão parte do projeto físico do banco de dados.

Page 64: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

63

Figura 14. Diagrama Entidade Relacionamento (ER).

3.2.4 Diagrama de seqüência

O diagrama de seqüência é uma forma de demonstrar a execução das atividades

dentro de um sistema e as trocas de mensagens entre os seus componentes.

Page 65: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

64

Figura 15. Configuração de usuário.

Page 66: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

65

Figura 16. Configura Casos.

Page 67: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

66

Figura 17. Consultar Casos.

Page 68: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

67

3.3 TECNOLOGIAS UTILIZADAS NO PROJETO

Tendo em vista a necessidade do desenvolvimento de um sistema voltado para web,

dentre todas as outras tecnologias, optou-se em utilizar as tecnologias PHP e MySQL, pelas

vantagens citadas a seguir..

O MySQL é um sistema de gerenciamento de banco de dados, que utiliza a

linguagem SQL (Structured Query Language - Linguagem de Consulta Estruturada) como

interface. Algumas vantagens da sua utilização são:

• Possui código aberto e funciona em um grande número de sistemas

operacionais;

• Bom desempenho e estabilidade;

• Exige pouco dos recursos de hardware;

• Facilidade de uso;

• É um software livre; e

• Compatibilidade com diversas linguagens de programação.

PHP é uma linguagem de programação de computadores interpretada, livre e muito

utilizada para gerar conteúdo dinâmico na internet. Apesar de ser uma linguagem de fácil

aprendizagem e de utilização para pequenos scripts dinâmicos simples, o PHP é uma

poderosa linguagem orientada a objetos.

Dentre as principais vantagens da sua utilização estão:

• Velocidade;

• Facilidade na sua utilização;

• Estruturado e orientada a objeto; e

• Portabilidade, ou seja, roda em qualquer plataforma;

Page 69: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

68

3.4 INTERFACE DO SISTEMA

Neste capítulo serão apresentadas as telas do sistema. Serão apresentadas as telas

para o módulo administrador e logo após, a tela para o módulo do usuário, dentre elas as

telas de consulta e cadastro que compõem todo o escopo do sistema.

A figura 18 apresenta a tela inicial do sistema, onde permite que os usuários

devidamente cadastrados pelo administrador tenham acesso ao sistema, de acordo com a

permissão previamente liberada pelo administrador do sistema, é aberto uma área de

trabalho diferente tanto para administrador quanto para usuário.

Figura 18. Tela de Login.

Page 70: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

69

A figura 19 mostra a tela principal do modulo de administrador, onde são

disponibilizadas todas as opções que esse administrador possui. Ao final do menu é

disponibilizada a opção para alteração de senha do usuário logado.

Figura 19. Tela de apresentação do módulo administrador.

Page 71: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

70

A figura 20 apresenta a tela de consulta de problemas cadastrados, ela apresenta

uma lista de todos os problemas cadastrados no sistema, assim bem como soluções

aplicadas e se o mesmo está disponível para interação com o RBC. Através de a tela a

seguir o administrador tem a opção de excluir situações que não sejam úteis à base de caso,

tornando as situações mais confíáveis.

Figura 20. Tela de consulta de problemas cadastrados.

Page 72: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

71

A figura 21 exibe a tela de cadastro de categoria ou produto, disponibilizando para o

administrador a inserção no sistema de novas categorias para organização de sua base de

dados.

Figura 21. Tela de cadastro de categorias.

Page 73: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

72

A figura 22 apresenta a tela de cadastro de estrutura de produtos, permitindo ao

administrador cadastrar as perguntas que farão a composição de uma determinada situação,

assim bem como os pesos das perguntas e o peso das respostas, decisivos no calculo do

RBC..

Figura 22. Tela de cadastro de estrutura de produto.

Page 74: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

73

A figura 23 apresenta a tela para cadastro de novos casos, que será a base de todas

as consultas, efetuadas pelo sistema utilizando o Raciocínio Baseado em Casos, assim

como em conjunto permitindo cadastrar uma solução e um status para esse determinado

caso, tudo isso separado de acordo com a sua categoria.

Figura 23. Tela de cadastro de caso.

Page 75: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

74

A figura 24 apresenta todos os usuários cadastrados nos sistema, para que o

administrador possa efetuar a exclusão, alteração, assim como o cadastramento de novos

usuários, que farão parte dessa lista.

Figura 24. Tela de configuração de usuários.

Page 76: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

75

A figura 25 apresenta a tela de alteração de dados do usuário que foi selecionado na

tela anterior, disponibilizando ao administrador fazer alteração de qualquer dado desse

determinado usuário sem restrição, assim como as permissões que esse usuário dispõe no

sistema.

Figura 25. Tela de alteração dos dados do usuário.

Page 77: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

76

A figuras 26 apresenta a tela de cadastro de novos usuários pelo administrador, onde

o mesmo tem a opção de cadastrar todos os dados, inclusive as permissões no sistema que

usuário irá possuir.

Figura 26. Tela de cadastro de usuário.

Page 78: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

77

A figura 27 apresenta a tela para alteração de senha do usuário logado, para que o

administrador possa mudar apenas a sua própria senha.

Figura 27. Tela de alteração de senha.

Page 79: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

78

A figura 28 mostra a tela de apresentação do módulo do usuário, com opções bem

mais restritas que o administrador, dando ênfase apenas no cadastramento de problemas e

na busca por soluções, assim como o envio de mensagens ao Help Desk.

Figura 28. Tela de apresentação do módulo do usuário.

Page 80: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

79

Na figura 29, o sistema apresenta a tela para consulta de soluções, onde baseado em

uma dúvida do usuário, dividindo-na por categoria utilizando a técnica do Raciocínio

Baseado em Casos, o sistema apresentará as possíveis soluções.

Figura 29. Tela de consulta solução.

Page 81: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

80

Na figura 30 é disponibilizada ao usuário consultar o seu histórico analisando todas

as consultas já feita e podendo também refazer consultas anteriormente executadas.

Figura 30. Tela de consulta histórico.

Page 82: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

81

Na figura 31 é apresentada a tela para alteração da senha do usuário logado no

sistema, mesma situação apresentada no modulo do administrador.

Figura 31. Tela de alteração de senha.

3.5 TESTES

A etapa de teste buscou como objetivo principal, acompanhar e analisar

procedimentos durante a utilização do sistema. Esta etapa foi realizada com a ajuda de um

técnico de qualidade de software em uma empresa de desenvolvimento de software,

avaliando as respostas do sistema, assim como a sua administração, tais como organização

dos usuários, casos e problemas.

A primeira etapa de avaliação do sistema foi utilizada uma versão Beta, sem layout,

visando apenas analisar a questão das funcionalidades do sistema, assim como as respostas,

dessa forma foram localizados alguns pontos onde será necessário uma atenção para com as

Page 83: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

82

informações disponíveis para utilização. Em um segundo momento foi analisado a

usabilidade do sistema, já na versão com layout, visando verificar a quantidade de

informações trazidas na tela, tais como seqüência de procedimento, cores, posições dos

botões e facilidades de acesso.

Dentro do processo de avaliação do sistema, a questão dos problemas, ou seja,

definição de variáveis, assim bem como os seus respectivos pesos ficaram a cargo de serem

definidos através de sugestões de funcionários do suporte, se fundando na experiência de

conhecer determinadas situações e cenários no processo de busca por soluções.

Durante o processo de avaliação e recuperação dos casos, foram seguidos alguns

critérios, quando um caso é avaliado, o sistema busca na base de dados todos os casos

relativos à categoria escolhida. Após a pesquisa dos casos utilizando a técnica de

inteligência artificial o Raciocínio Baseado em Casos, o sistema lista todas as situações ou

problemas que estão diretamente ligados. Tendo em si listados todos os problemas, o

sistema efetua a consulta para verificar se o problema atual se assemelha diretamente ou

mesmo se iguala a algum dos casos já existentes na base, se for igual aplica-se a fórmula

para calcular a similaridade, caso as condições não sejam favoráveis o sistema segue para o

próximo caso.

Durante a avaliação do sistema, foi constatado uma possível melhora no índice de

acertos, para uma amostra de 30 casos foi observado um acerto de cerca de 65%, sendo

constatada um índice de 73% quando a base de casos atingiu a amostra de 60 casos, sendo

fundamental para essa mudança a melhoria e refinamento dos dados já contidos na base e o

aumento da quantidade de casos cadastrado na base de casos do sistema. Para um

determinado produto onde foram cadastrados 25 casos conseguiu-se uma similaridade de

91%, em outra situação um produto onde a base de casos possui 15 casos, conseguiu-se

uma similaridade de 70% e para um determinado produto onde foram cadastrados 8 casos

conseguiu-se uma similaridade de 56,43%. Durante a etapa de testes o ponto que foi

determinante na soluções dos problemas apresentados ao sistema, foi a sinceridade do

administrador, a quem efetua grande parte dos cadastramentos no sistema e do usuário que

efetua as consultas, pois o sucesso de cada consulta é relacionado ao quanto próximo da

situação real ambos descrevem suas posições para o sistema.

Page 84: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

83

4 CONCLUSÃO

Este trabalho focou-se principalmente em um software capaz de auxiliar técnicos e

pessoas que tenham contato com equipamentos ou serviços de informática direta ou

indiretamente, utilizando-se do Raciocínio Baseado em Casos. Um RBC é uma técnica de

Inteligência Artificial que facilita a obtenção de soluções atendendo as necessidades de seus

usuários, situação essa que motivou a escolha da empresa para a realização dos teste do

sistema, empresa que atualmente utiliza-se de um módulo no seu sistema de suporte, onde a

busca por soluções consiste apenas na comparação de palavras similares, exemplificando

em seguir uma série de informações que ajudam o técnico a selecionar o melhor caso para

resolução do problema, porém não indica uma solução específica para situação apresentada.

O Sistema proposto foi desenvolvido com base nas informações coletadas junto a

uma base de dados utilizada na empresa onde se fundamentaram os testes, utilizando-se de

situações reais, procurando obter mais facilidade nos pontos importantes e variáveis

fundamentais no funcionamento do RBC, sem tornar o sistema grande ou complexo, que

dificulte a sua utilização por usuários com menos conhecimento nas rotinas de informática.

Inicialmente, foi analisada a necessidade de fixar categorias específicas para a

distribuição dos casos, porém verificou-se a possibilidade de disponibilizar ao

administrador, pois este, poderia fazer organização e a divisão das categorias, com a

finalidade de tornar o sistema o mais adaptável possível de acordo com cada tipo de

utilização.

Dentro das necessidades encontradas, a utilização do Raciocínio Baseado em Casos,

se mostrou muito efetivo para as situações propostas. Para uma utilização mais eficaz das

características que o sistema apresenta, torna-se necessário uma quantidade maior de

informações em sua base de dados, visando uma melhora nas respostas apresentadas.

A medida de similaridade utilizada pelo RBC no desenvolvimento deste projeto foi

a do vizinho mais próximo. Desta forma o RBC ficou responsável pela busca de resultados

similares em sua base de conhecimento, visando auxiliar o técnico de informática ou

mesmo sanar diretamente as dúvidas do usuário que utiliza o sistema.

Page 85: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

84

Para trabalhos futuros, propõe-se a implementação de novas funcionalidades no

sistema, modificação da interface focando-se na necessidade de tornar o ambiente de

trabalho adaptativo as necessidades de cada usuário, assim como o estudo de novos

métodos de recuperação que possam proporcionar respostas mais objetivas e resultados

mais exatos.

REFERÊNCIAS BIBLIOGRÁFICAS

AUTOMIDIA – CBR – AUTOMIDIA informática. Disponível em <http://www.automidia.com.br/>. Acesso em: 16 set. 2007.

BALBINOTTI, Alexandre Magnus. Sistemas de Informações baseado em Sistemas Especialistas e Raciocínio Baseado em Casos para Auxiliar na Prática Desportiva na UNIVALI, 2006. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2006.

CAMARGO, Kátia Gavranich. Inteligência Artificial Aplicada à Nutrição na Prescrição de Planos Alimentares, 1999. Dissertação (Mestrado) - Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 1999.

COHEN, Roberto. Competências preferidas para Help Desk e Service Desk, 2005. Trabalho de Conclusão de Curso (Graduação em Psicologia nas Organizações) – Faculdade de Psicologia, Pontifícia Universidade Católica do Rio Grande do Sul, Porto Alegre, 2005.

FIREMAN - PROFESSIONAL – SIAL software. Disponível em <http://www.fireman.com.br/p-pro.php>. Acesso em: 15 set. 2007.

GROSSMANN JR., Helmuth . Sistema Especialista para Auxílio ao Diagnóstico de Problemas em Computadores Utilizando Raciocínio Baseado em Casos, 2002. Dissertação (Mestrado) – Mestrado em Ciência da Computação Área de Concentração Sistemas de Conhecimento, Universidade Federal de Santa Catarina, Florianópolis, 2002.

HELDESK-3 – TREE TOOLS Tecnologia da Informação. Disponível em < http://www.treetools.com.br/tti/>. Acesso em: 20 set. 2007.

INFOWESTER . Disponível em < http://www.infowester.com/servapach.php>. Acesso em: 15 out. 2007.

IMASTERS - PHP . Disponível em < http://www.imasters.com.br/secao/php>. Acesso em: 15 out. 2007.

Page 86: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

85

LAGEMANN, Gerson Volney. RBC para o Problema de Suporte ao Cliente nas Empresas de Prestação de Serviço de Software: O Caso Datasul, 1998. Dissertação (Mestrado) – Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 1998.

LUGER, George F. Inteligência Artificial: estruturas e estratégias para a solução de problemas complexos. 4 ed. Porto Alegre: E. Artmed, 2002.

MATOS, Ivan Carlos. Utilização de Raciocínio Baseado em Casos na Determinação de Aparelhos Auditivos Via Web. São José, 2007. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, São José, 2007.

MENEZES, José Vanderlei de. Sistema de Help Desk Utilizando Raciocínio Baseado em Casos, 2006. 100 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2006.

MIOTTO, Marcelo. Programação Alimentar Utilizando RBC, 2006. 117 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2006.

MYSQL – Manual de Referência do MySQL 4.1 . Disponível em < http://dev.mysql.com/doc/refman/4.1/pt/index.html>. Acesso em: 16 out. 2007.

MYSQL – Brasil . Disponível em < http://www.mysqlbrasil.com.br/>. Acesso em: 16 out. 2007.

NASCIMENTO JR., Cairo L.;YONEYAMA, Takashi. Inteligência Artificial em controle e altomação. 1 ed. São Paulo: E. Blücher, 2000. 218p.

PHP - MAGAZINE. Disponível em < http://www.phpmagazine.com.br/>. Acesso em: 16 out. 2007.

RABUSKE, Renato Antônio. Inteligência Artificial. Florianópolis: E. UFSC, 1995.

REVISTA - PHP . Disponível em < http://www.revistaphp.com.br/>. Acesso em: 16 out. 2007.

RUSSEL, Stuart; NORVIG, Peter. Inteligência Artificial. Rio de Janeiro:Elsevier, 2004.

SILVA, Jaine José da. Help Desk com Sistema RBC para as Gerências de Aplicativos do Banco do Brasil, 2004. Trabalho de Conclusão de Curso (Especialização) – Curso de Especialização em Desenvolvimento, Segurança e Qualidade na Internet, Universidade Federal do Rio Grande do Sul, Porto Alegre, 2004.

Page 87: SISTEMA DE HELP DESK BASEADO EM RBC Área de …siaibib01.univali.br/pdf/Tharso de Souza Ferreira.pdf · iv LISTA DE ABREVIATURAS CBR Case Based Reasoning DHCP Dynamic Host Configuration

86

THÉ, Maria Alice Lagos. Raciocínio Baseado em Casos: uma abordagem fuzzy para diagnóstico nutricional, 2001. Tese (Doutorado) – Programa de Pós Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 2001.

WANGENHEIM A. Von; WANGENHEIM, C. G. Von. Raciocínio Baseado em Casos. Barueri; Manole, 2003.

ZAGUINI NETO, Adolfo. Aplicando a Técnica de Raciocínio Baseado em Casos para o Auxilio do Profissional Homeopata na busca do melhor Tratamento. Itajaí, 2007. 60 folhas. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação)-Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí,2007.