UNIVERSIDADE REGIONAL DE BLUMENAU
CENTRO DE CIÊNCIAS EXATAS E NATURAIS
CURSO DE SISTEMAS DE INFORMAÇÃO – BACHARELADO
SISTEMA PARA SERVICE DESK COM A UTILIZAÇÃO DAS
MELHORES PRÁTICAS DO ITIL E APLICAÇÃO DA
TÉCNICA DE MINERAÇÃO DE TEXTO
JARDEL DA SILVA
BLUMENAU
2014
2014/2-06
JARDEL DA SILVA
SISTEMA PARA SERVICE DESK COM A UTILIZAÇÃO DAS
MELHORES PRÁTICAS DO ITIL E APLICAÇÃO DA
TÉCNICA DE MINERAÇÃO DE TEXTO
Trabalho de Conclusão de Curso submetido à
Universidade Regional de Blumenau para a
obtenção dos créditos na disciplina Trabalho
de Conclusão de Curso II do curso de Sistemas
de Informação— Bacharelado.
Prof. Cláudio Ratke, Mestre – Orientador
BLUMENAU
2014
2014/2-06
SISTEMA PARA SERVICE DESK COM A UTILIZAÇÃO DAS
MELHORES PRÁTICAS DO ITIL E APLICAÇÃO DA
TÉCNICA DE MINERAÇÃO DE TEXTO
Por
JARDEL DA SILVA
Trabalho aprovado para obtenção dos créditos
na disciplina de Trabalho de Conclusão de
Curso II, pela banca examinadora formada
por:
Presidente:
______________________________________________________
Prof. Cláudio Ratke, Mestre – Orientador, FURB
Membro:
______________________________________________________
Prof. Everaldo Artur Grahl, Mestre – FURB
Membro:
______________________________________________________
Prof. Wilson Pedro Carli, Mestre – FURB
Blumenau, 2 de dezembro de 2014.
Dedico este trabalho a todos aos familiares e
amigos,
especialmente
aqueles
que
ajudaram diretamente na realização deste.
me
AGRADECIMENTOS
A Deus, pelo seu imenso amor e graça.
À minha família, que soube entender a minha ausência em momentos importantes,
devido a concentração necessária para a realização deste trabalho.
Aos amigos, que entenderam a minha ausência necessária para a realização deste
trabalho.
Ao meu orientador, professor Cláudio Ratke, por ter compartilhado seu conhecimento
e por contribuir com excelentes ideias para o desenvolvimento deste trabalho.
Aos professores do Departamento de Sistemas e Computação da Universidade
Regional de Blumenau por suas contribuições durante os semestres letivos e pelos valores
transmitidos durante o curso, certamente irei lembrá-los por toda a vida.
A minha namorada Eduarda, por ser paciente e por me cobrar comprometimento na
realização deste.
A empresa Via Blumenau Indústria e Comércio, que contribuiu financeiramente para a
conclusão deste curso, agradeço o auxílio que a mim foi disponibilizado, todos terão minha
eterna gratidão.
Procure ser uma pessoa de valor, em vez de
procurar ser uma pessoa de sucesso. O sucesso
é consequência.
Albert Einstein
RESUMO
Este trabalho consiste na criação de um Sistema para Service Desk fundamentado nas boas
práticas do Information Technology Infrastructure Library (ITIL) e que utiliza a técnica de
mineração de texto para auxílio nas buscas por erros conhecidos, incidentes e problemas
registrados no sistema. O objetivo do sistema é concentrar as informações referentes aos
atendimentos realizados pela equipe de Service Desk, para que posteriormente estas
informações sejam utilizadas na resolução de novos atendimentos. A utilização da técnica de
mineração de texto visa otimizar as funções de busca retornando ao usuário dados mais
adequados as pretensões da busca. Para o desenvolvimento do sistema utilizou-se a linguagem
de programação Java, com banco de dados Microsoft SQL Server. Como resultado, tem-se
um sistema que concentra as informações relacionadas aos atendimentos do Service Desk,
seguindo as boas práticas do ITIL, onde as buscas do sistema são realizadas de forma
inteligente e retornam resultados que melhor atende às necessidades dos usuários.
Palavras-chave: Service Desk. ITIL. Mineração de texto.
ABSTRACT
This paper consists in the creation of a Service Desk System based on the Technology
Infrastructure Library (ITIL) good practices, which uses the text mining technique to assist
with the search for known errors, incidents and problems logged in the system. The goal of
the system is to concentrate the information related to services performed by the Service Desk
team so that this information can be used to solve new appointments. Using the text mining
technique to optimize the search function, thus giving the user more suitable data relating to
said search. The Java programming language with the Microsoft SQL Server database were
used to develop the system. As a result, there is a system that concentrates the information
related to Service Desk calls, following good ITIL practices, where the system searches are
performed intelligently and return results that best meets the needs of users.
Key-words: Service Desk. ITIL. Text mining.
LISTA DE FIGURAS
Figura 1 - Estágios do ITIL ...................................................................................................... 16
Figura 2 - Arquitetura de um Sistema de Mineração de Textos ............................................... 20
Figura 3 - Cadastro de Incidente e sua solução ........................................................................ 22
Figura 4 - Cadastro de Problema e solução .............................................................................. 23
Figura 5 - Registro de Problemas ............................................................................................. 24
Figura 6 - Diagrama dos principais Casos de Uso ................................................................... 28
Figura 7 - Diagrama dos Casos de Uso de emissão de relatórios ............................................. 28
Figura 8 - Modelo Entidade Relacionamento ........................................................................... 29
Figura 9 - Classe Java de conexão com o banco de dados ....................................................... 31
Figura 10 - Função criada para retornar palavra no singular .................................................... 32
Figura 11 - XML do relatório de clientes ................................................................................. 33
Figura 12 - Diagrama de atividades do processo de mineração de texto do sistema ............... 34
Figura 13 - Tela de login do sistema ........................................................................................ 35
Figura 14 - Tela do menu principal .......................................................................................... 35
Figura 15 - Tela de cadastro de cliente ..................................................................................... 36
Figura 16 - Tela de cadastro de usuário .................................................................................... 37
Figura 17 - Fragmento do código fonte do cadastro de usuário .............................................. 38
Figura 18 - Tela de registro de incidente .................................................................................. 38
Figura 19 - Tela de registro de problema ................................................................................. 39
Figura 20 - Tela de cadastro de erro conhecido........................................................................ 40
Figura 21 - Tela de visualização de erros conhecidos cadastrados .......................................... 40
Figura 22 - Tela de visualização de incidentes registrados ...................................................... 41
Figura 23 - Tela de visualização de problemas registrados ...................................................... 42
Figura 24 - Tela de cadastro de item de configuração .............................................................. 42
Figura 25 - Tela de cadastro de palavras sem significado ........................................................ 43
Figura 26 - Tela de cadastro de sinônimos do negócio ............................................................ 43
Figura 27 - Tela de cadastro de sinônimos do português ......................................................... 44
Figura 28 - Tela de relatório de incidentes cadastrados ........................................................... 44
Figura 29 - Tela de relatório de problemas cadastrados ........................................................... 45
Figura 30 - Fragmento do código de tratamento de sinônimos ................................................ 45
Figura 31 - Fragmento do código da função de redução adverbial .......................................... 46
Figura 32 - Fragmento do código da função de redução de superlativo .................................. 46
Figura 33 - Fragmento de visualização de erros conhecidos com aplicação de mineração de
texto ....................................................................................................................... 47
Figura 34 - Código SQL de busca após execução da procedure .............................................. 47
LISTA DE QUADROS
Quadro 1 - Requisitos funcionais ............................................................................................. 26
Quadro 2 - Requisitos não funcionais ...................................................................................... 27
Quadro 3 - Comparativo entre sistema desenvolvido e trabalhos correlatos ........................... 49
Quadro 4 - Descrição do caso de uso Efetuar login ................................................................. 55
Quadro 5 - Descrição do caso de uso Cadastrar usuário do sistema ........................................ 55
Quadro 6 - Descrição de caso de uso Cadastrar clientes .......................................................... 56
Quadro 7 - Descrição do caso de uso Registrar incidentes....................................................... 57
Quadro 8 - Descrição do caso de uso Registrar problemas ...................................................... 57
Quadro 9 - Descrição do caso de uso Adicionar trâmite em incidente..................................... 58
Quadro 10 - Descrição do caso de uso Adicionar trâmite em problema .................................. 58
Quadro 11 - Descrição do caso de uso Listar erros conhecidos ............................................... 59
Quadro 12 - Descrição do caso de uso Cadastrar erro conhecido ............................................ 59
Quadro 13 - Descrição do caso de uso Cadastrar item de configuração .................................. 60
Quadro 14 - Descrição do caso de uso Listar incidentes .......................................................... 60
Quadro 15 - Descrição do caso de uso Listar problemas ......................................................... 61
Quadro 16 - Descrição do caso de uso Cadastrar sinônimos do negócio ................................. 61
Quadro 17 - Descrição do caso de uso Cadastrar sinônimos do português .............................. 62
Quadro 18 - Descrição do caso de uso Cadastrar palavras sem significado............................. 62
Quadro 19 - Descrição do caso de uso Gerar relatório de usuários .......................................... 63
Quadro 20 - Descrição do caso de uso Gerar relatório de clientes ........................................... 63
Quadro 21 - Descrição do caso de uso Gerar relatório de incidentes ....................................... 63
Quadro 22 - Descrição do caso de uso Gerar relatório de problemas ...................................... 64
Quadro 23 - Dicionário da tabela cliente .................................................................................. 65
Quadro 24 - Dicionário de dados da tabela usuario.................................................................. 65
Quadro 25 - Dicionário de dados da tabela incidente............................................................... 65
Quadro 26 - Dicionário de dados da tabela problema .............................................................. 66
Quadro 27 - Dicionário de dados da tabela tramiteIncidente ................................................... 66
Quadro 28 - Dicionário de dados da tabela tramiteProblema................................................... 67
Quadro 29 - Dicionário de dados da tabela itemConfiguracao ................................................ 67
Quadro 30 - Dicionário de dados da tabela erroConhecido ..................................................... 67
Quadro 31 - Dicionário de dados da tabela sinonimos1 ........................................................... 68
Quadro 32 - Dicionário de dados da tabela sinonimos2 ........................................................... 68
Quadro 33 - Dicionário de dados da tabela palavraSemSignificado ........................................ 68
LISTA DE SIGLAS
IC – Item de Configuração
ITIL – Information Technology Infrastructure Library
MER – Modelo Entidade Relacionamento
PHP – Hipertext Preprocessor
SGBD – Sistema Gerenciador de Banco de Dados
SLA – Service Level Agreement
SQL – Structured Query Language
TI – Tecnologia da Informação
XML – Extensible Markup Language
SUMÁRIO
1 INTRODUÇÃO .................................................................................................................. 12
1.1 OBJETIVOS DO TRABALHO ......................................................................................... 13
1.2 ESTRUTURA DO TRABALHO ....................................................................................... 13
2 FUNDAMENTAÇÃO TEÓRICA .................................................................................... 15
2.1 ITIL.................................................................................................................................... 15
2.1.1 Operação de Serviço ........................................................................................................ 17
2.1.2 Gestão de Incidentes ........................................................................................................ 17
2.1.3 Service Desk .................................................................................................................... 17
2.1.4 Gestão de Problemas ....................................................................................................... 18
2.1.5 Erros Conhecidos ............................................................................................................ 18
2.2 MINERAÇÃO DE TEXTO .............................................................................................. 19
2.2.1 Tratamento de Sinônimos ................................................................................................ 21
2.2.2 Tratamento de Stop Words .............................................................................................. 21
2.2.3 Tratamento de Radicais ................................................................................................... 21
2.3 TRABALHOS CORRELATOS ........................................................................................ 21
3 DESENVOLVIMENTO DO SISTEMA .......................................................................... 25
3.1 LEVANTAMENTO DE INFORMAÇÕES ....................................................................... 25
3.2 ESPECIFICAÇÃO ............................................................................................................ 26
3.2.1 Requisitos Funcionais ...................................................................................................... 26
3.2.2 Requisitos Não Funcionais .............................................................................................. 27
3.2.3 Diagrama de Casos de Uso .............................................................................................. 28
3.2.4 Modelo Entidade Relacionamento................................................................................... 29
3.3 IMPLEMENTAÇÃO ......................................................................................................... 30
3.3.1 Técnicas e ferramentas utilizadas .................................................................................... 31
3.1.1.1 Java ............................................................................................................................... 31
3.1.1.2 Microsoft SQL Server................................................................................................... 32
3.1.1.3 iReports ......................................................................................................................... 32
3.1.1.4 Mineração de Texto ...................................................................................................... 33
3.3.2 Operacionalidade da implementação ............................................................................... 34
3.4 RESULTADOS E DISCUSSÃO ....................................................................................... 47
4 CONCLUSÕES .................................................................................................................. 50
4.1 EXTENSÕES .................................................................................................................... 50
REFERÊNCIAS ..................................................................................................................... 52
APÊNDICE A – Descrição dos Casos de Uso ...................................................................... 55
APÊNDICE B – Descrição do Dicionário de Dados ............................................................ 65
12
1 INTRODUÇÃO
Por muitos anos, algumas organizações puderam continuar seus negócios, ainda que
tivessem pouco apoio da Tecnologia da Informação (TI). Hoje a realidade é diferente, a TI é
um fator crítico de sucesso para a organização, e em até muitos casos acaba sendo seu
diferencial competitivo no mercado. (TRIBUNAL DE JUSTIÇA DO DISTRITO FEDERAL
E DOS TERRITÓRIOS, 2012).
Segundo Melo (2008) a TI tem uma importância sem precedentes para o sucesso das
organizações, pois, é por meio dela que as empresas podem melhorar seus fluxos de
informações, integrar seus negócios, buscar e desenvolver novos relacionamentos com outras
organizações e melhorar seu desempenho, de forma a manter sua sobrevivência num mercado
cada vez mais competitivo.
O uso de sistemas que apoiem a gestão de serviços é um fator importante para a
eficiência do setor sobre a organização. Na área de Service Desk, o registro das atividades
realizadas para a resolução dos incidentes é necessário, para que seja possível a formação da
base de dados de erros conhecidos, que pode auxiliar os integrantes do setor, gerando uma
poderosa ferramenta de pesquisa para resolução dos incidentes, eliminando assim, a
necessidade de uma nova pesquisa em busca de solução para o mesmo.
A falta de um histórico dos atendimentos realizados pela equipe de Service Desk de
uma organização, implica na dependência do conhecimento dos integrantes da equipe, mesmo
que exista um meio formal de registro dos atendimentos, a centralização e disponibilização
destes dados aos integrantes da equipe, impacta na eficiência e agilidade da resolução dos
incidentes e cumprimento dos acordos de nível de serviço.
O Information Technology Infrastructure Library (ITIL) fornece um guia consistente e
compreensivo de melhores práticas na gestão de serviços de TI. ITIL consiste em
recomendações e orientação para obter qualidade dos serviços de TI e para acomodação e
ambientação de necessidades para suportar as TI. Não só apresenta um modelo de como as
atividades de gestão de serviços interagem umas com as outras, como também apresenta uma
forma de integrar e estruturar processos existentes (FARINHA, 2005).
Para auxílio no gerenciamento dos serviços, o sistema desenvolvido faz uso da técnica
de mineração de texto, a fim de melhor atender as expectativas do usuário na utilização das
opções de busca por incidentes, problemas ou erros conhecidos registrados no sistema.
13
Segundo Morais e Ambrósio (2007), a mineração de textos é um processo de
descoberta de conhecimento, que utiliza técnicas de análise e extração de dados a partir de
textos, frases ou apenas palavras. Envolve a aplicação de algoritmos computacionais que
processam textos e identificam informações úteis e implícitas, que normalmente não poderiam
ser recuperadas utilizando métodos tradicionais de consulta, pois a informação contida nestes
textos não pode ser obtida de forma direta, uma vez que, em geral, estão armazenadas em
formato não estruturado.
O presente trabalho visa demonstrar a implementação de um sistema para Service Desk
fundamentado nas práticas de ITIL, que faça o registro dos incidentes e problemas atendidos
pela equipe de TI de uma organização, gerando assim, uma base de erros conhecidos que pode
auxiliar na resolução de incidentes e problemas futuros. O sistema irá fazer uso da técnica de
mineração de texto sobre as opções de busca disponíveis no sistema, a fim de disponibilizar
ao usuário, dados que melhor satisfaçam as suas necessidades para o adequado gerenciamento
do departamento.
1.1 OBJETIVOS DO TRABALHO
O objetivo deste trabalho é o desenvolvimento de um sistema para Service Desk que
faça o registro dos atendimentos realizados pelo setor, fundamentado nas práticas de ITIL e
que utilize a técnica de mineração de texto sobre as consultas realizadas nos registros do
sistema, a fim de atender de forma eficaz as buscas realizadas pelo usuário.
Os objetivos específicos do trabalho são:
a) efetuar o registro dos incidentes atendidos pelo setor de Service Desk;
b) efetuar o registro dos problemas atendidos pelo setor de Service Desk;
c) gerar uma base de consulta de erros conhecidos;
d) gerar relatórios para mensurar as ocorrências atendidas pelo setor;
e) realizar mineração de texto nas opções de busca para melhorar a qualidade dos
resultados.
1.2 ESTRUTURA DO TRABALHO
Este trabalho está estruturado em quatro capítulos que estão descritos a seguir.
No primeiro capítulo tem-se a introdução ao tema principal deste trabalho com a
14
apresentação da justificativa e dos objetivos.
No segundo capítulo apresenta-se a fundamentação teórica pesquisada sobre ITIL,
Service Desk, Gerenciamento de Incidentes, Gerenciamento de Problemas, Mineração de
Texto, Erros Conhecidos e trabalhos correlatos.
O terceiro capítulo apresenta o desenvolvimento do Sistema para Service Desk com
fundamentos ITIL e Mineração de Texto iniciando-se com o levantamento de informações,
tendo na seqüência a especificação, implementação e por fim resultados e discussão.
No quarto capítulo tem-se as conclusões deste trabalho bem como apresentam-se
sugestões para trabalhos futuros.
15
2 FUNDAMENTAÇÃO TEÓRICA
Este capítulo aborda assuntos a serem apresentados nas seções a seguir, tais como
ITIL, Service Desk, Gerenciamento de Incidentes, Gerenciamento de Problemas, Erros
Conhecidos, Mineração de Texto, além de trabalhos correlatos.
2 .1
ITIL
O ITIL provê um abrangente e consistente conjunto de melhores práticas para a
identificação de processos da área de TI e o alinhamento dos seus serviços às necessidades da
organização, promovendo uma abordagem qualitativa para o uso econômico, efetivo, eficaz e
eficiente da infraestrutura de TI (MAGALHÃES; PINHEIRO, 2007, p. 30).
A adoção do ITIL pode oferecer aos usuários uma enorme gama de benefícios que
incluem (LANUNIVERSITY, [2014?]):
a) melhoria nos Serviços de TI;
b) custos reduzidos;
c) melhoria da satisfação do cliente através de uma abordagem mais profissional
para a prestação de serviços;
d) melhoria da produtividade;
e) melhor utilização de competências e experiência;
f)
melhoria da prestação de serviços de terceiros.
Segundo Magalhães e Pinheiro (2007, p. 61), o ITIL encontra-se amplamente
consagrado como o caminho mais seguro e bem sucedido para a busca por níveis mais
elevados de desempenho no Gerenciamento dos Serviços de TI. Os processos descritos no
ITIL abrangem os três ciclos de evolução do posicionamento da área de TI em relação a sua
contribuição para a geração de valor para a organização. Na Figura 1 estão ilustrados os ciclos
contidos no ITIL.
16
Figura 1 - Estágios do ITIL
Fonte: Adaptado de ITIL.ORG ([2011?]).
Os objetivos dos ciclos de vida contidos no ITIL, conforme Freitas (2010):
a) Estratégia de Serviço – manter e prover a qualidade do serviço de TI através de
um ciclo constante de acordos, monitoramento e relatórios sobre o andamento dos
serviços de TI e tomar ações para erradicar serviços sem qualidade;
b) Desenho de Serviço – desenhar os serviços de TI apropriados ou inovadores
incluindo suas arquiteturas, processos, políticas e documentação para atender os
requerimentos atuais e futuros do negócio;
c) Transição de Serviço – planejamento do projeto de implantação dos serviços que
serão suportados posteriormente no ciclo de Operação de Serviço;
d) Operação de Serviço – coordena e conduz as atividades e os processos necessários
para entregar e gerenciar os serviços, de acordo com os níveis requeridos pelos
17
clientes e pelo negócio;
e) Melhoria de Serviço Continuada – alinhar e realinhar continuamente os serviços
de TI com o negócio e com os requerimentos de mudanças no negócio pela
implementação de melhorias nos Serviços de TI. A Melhoria de Serviço
Continuada foca em como melhorar a eficiência e eficácia dos processos do
Gerenciamento de Serviços de TI a um custo justificado.
2.1.1 Operação de Serviço
A Operação de Serviço é gerida e suportada, de modo a atender os níveis de serviço
acordados. Através da central de serviços é realizada gestão dos pedidos realizados pelos
usuários, são detectados eventos através da monitorização, restabelecidas as interrupções não
programadas dos serviços, evitadas as causas dos incidentes e minimizados os impactos dos
incidentes não previstos (FERREIRA, 2011, p. 21).
2.1.2 Gestão de Incidentes
O processo de gestão de incidentes trata de todos os incidentes que possam provocar
ou que estejam a provocar interrupções ou reduções não planejadas na qualidade dos serviços
de TI. Uma falha em um Item de Configuração (IC), mesmo que não afete um serviço,
também é considerado um incidente (FERREIRA, 2011, p. 146).
2.1.3 Service Desk
Segundo Nóbrega (2007) o Service Desk não é um processo e sim uma função de TI.
Geralmente conhecida como “Suporte ao Usuário” ou “Help Desk”, esta função envolve
fornecer respostas às questões de usuários e soluções de problemas, registro formal dos
18
problemas, resolução, monitoramento, análise de tendência e priorização estão também
incluídos.
O Service Desk também é conhecido como Central de Serviços, é o ponto inicial de
contato com a organização de TI. Os livros mais antigos do ITIL referiam-se a ela como
Central de Assistência. A principal tarefa da Central de Assistência era registrar, resolver e
monitorar os problemas (ITSMF, 2005).
A estrutura organizacional da atividade de Service Desk é um fator decisivo para a
satisfação dos clientes, tendo em vista que ela define os aspectos fundamentais de autoridade
e de responsabilidade, que vão influenciar a produtividade e a qualidade dos relacionamentos
entre as pessoas que operam e gerenciam os processos de suporte com os clientes finais dos
serviços de TI entregues (MELENDEZ, 2011).
2.1.4 Gestão de Problemas
O gerenciamento de problemas identifica e remove erros do ambiente de TI, através da
análise dos incidentes registrados no gerenciamento de incidentes, a fim de garantir uma
estabilidade máxima dos serviços de TI (SORTICA; CLEMENTI; CARVALHO, 2004).
O Gerenciamento de problemas fundamentalmente visa identificar a causa raiz dos
incidentes, encontrando soluções de contorno e criando o chamado “erro conhecido”. A
solução definitiva é cadastrada no banco de dados de erro conhecido, e caso necessário, cria
uma requisição de mudanças, para a obtenção de uma solução permanente (GOMES;
PEREIRA, 2011).
2.1.5 Erros Conhecidos
Erro conhecido é a causa de um problema já conhecido, resultante da análise realizada
anteriormente. Os erros conhecidos são armazenados na Base de Dados de Erros Conhecidos
e utilizados para agilizar o atendimento dos incidentes que apresentam os mesmos sintomas
dos que levaram à definição e ao registro do erro conhecido (MAGALHÃES; PINHEIRO,
2007, p. 136).
19
2 .2
MINERAÇÃO DE TEXTO
A mineração de dados é o processo de descoberta de informações acionáveis em
grandes conjuntos de dados. A mineração de dados usa análise matemática para derivar
padrões e tendências que existem nos dados. Normalmente, esses padrões não podem ser
descobertos com a exploração de dados tradicional pelo fato de as relações serem muito
complexas ou por haver muitos dados (MICROSOFT DEVELOPER NETWORK, 2014).
A Mineração de Texto pode se definir como um processo de conhecimento intensivo
em que um usuário interage com uma coleção de documentos ao longo do tempo por meio de
um conjunto de ferramentas de análise. A Mineração de Texto procura extrair informações
úteis a partir de fontes de dados, através de exploração e identificação de padrões
interessantes (FELDMAN; SANGER, 2006, p. 1, tradução nossa).
A área de Mineração de Textos tem relação com outra grande área chamada
Mineração de Dados. Enquanto esta se preocupa em descobrir padrões e informações
existentes em banco de dados, a Mineração de Textos é um conjunto de métodos usados para
explorar, organizar, achar e descobrir informações em uma base de textos (MARTINS;
AZEVEDO; BASTOS, 2010, p. 2).
Os sistemas de mineração de textos baseiam-se em rotinas de pré-processamento,
algoritmos para descoberta de padrões, e elementos para apresentação dos resultados. As
etapas que compõem a arquitetura de um sistema para mineração de textos são: operações de
pré-processamento, geração de documentos processados, mineração e apresentação dos
resultados. O usuário do sistema interage com a etapa de pré-processamento, com o núcleo de
mineração e com a apresentação dos resultados (MARTINS; AZEVEDO; BASTOS, 2010).
Na Figura 2 é ilustrada a arquitetura de um sistema para Mineração de Textos sugerida
por Alvares (2005).
20
Figura 2 - Arquitetura de um Sistema de Mineração de Textos
Fonte: Alvares (2005).
21
2.2.1 Tratamento de Sinônimos
Segundo Wives (1999, p. 11) o uso da linguagem natural quotidiana como o
português, permite que as pessoas utilizem diversas palavras diferentes para indicar um
mesmo objeto, com isso o vocabulário utilizado pelo autor pode diferir do vocabulário
utilizado pela pessoa que realiza a busca, isso dificulta a localização da informação, já que as
pessoas acabam ficando sem saber que palavras devem usar para se especificar o assunto que
desejam obter.
2.2.2 Tratamento de Stop Words
Na eliminação de Stop Words, algumas palavras informadas nos campos de buscas
são desconsideradas para aplicação da técnica de Mineração de Texto. Segundo Wives (1999,
p. 38) nestes casos, é comum excluir estas palavras, pois elas influenciam no processo, além
de torná-lo mais lento, já que com elas há um número maior de características para serem
analisadas.
2.2.3 Tratamento de Radicais
O tratamento de radicais visa tratar as palavras, para que os resultados exibidos não
sejam prejudicados pelo uso de radicais apresentados no texto de busca. Segundo Wives
(1999, p. 25) é interessante eliminar as diferentes variações morfológicas de uma palavra
(singular ou plural por exemplo), utilizando somente seu radical.
2 .3
TRABALHOS CORRELATOS
Pode-se citar como trabalhos correlatos as monografias realizadas pelos alunos Carla
Andriéli Fink e Klauber Scheffler Fischer, ambos concluintes do curso de Sistemas de
22
Informação na Universidade Regional de Blumenau, e também será mencionado um software
que possui características semelhantes ao sistema desenvolvido.
O trabalho de Fischer (2012) foi o desenvolvimento de uma aplicação para Help Desk
com a técnica de Mineração de Texto aplicada sobre uma base de dados de erros conhecidos,
buscando resultados de forma eficaz. O trabalho foi desenvolvido na linguagem de
programação Java e utiliza o banco de dados Hibernate. A aplicação desenvolvida é
semelhante ao presente trabalho, devido ao uso da técnica de Mineração de Texto e pelo uso
de base de erros conhecidos, que também estarão presentes na aplicação desenvolvida. Na
Figura 3, o cadastro de incidente e sua solução de Fischer (2012).
Figura 3 - Cadastro de Incidente e sua solução
Fonte: Fischer (2012).
O trabalho de Fink (2010) foi o desenvolvimento de uma aplicação web que faz a
classificação de incidentes registrados em um Service Desk utilizando a técnica de Mineração
de Dados, visando minimizar tempo, diminuir erros e automatizar a atividade. A aplicação foi
desenvolvida para a plataforma web na linguagem PHP e banco de dados MySQL e utiliza
como modelo de referência as boas práticas de ITIL para a correta classificação dos
incidentes. Este trabalho é semelhante à aplicação por ser desenvolvido com o uso da técnica
de Mineração de Texto em um ambiente Service Desk e por usar o modelo ITIL de boas
práticas, como referência na classificação de incidentes. Na Figura 4, o cadastro de problema
e solução de Fink (2010).
23
Figura 4 - Cadastro de Problema e solução
Fonte: Fink (2010).
Outro trabalho correlato é o MillDesk, um sistema desenvolvido pela empresa Setrion
Saas Aplications que foi desenvolvido na linguagem de programação Hypertext preprocessor
(PHP) e utiliza PostgreSQL como banco de dados. Trata-se de uma ferramenta comercial,
baseada nas melhores práticas de ITIL, que possui opções de registro de incidentes, problemas
e consultas de soluções, a aplicação está disponível na plataforma web. O sistema MillDesk é
comparado ao sistema aqui desenvolvido por ser fundamentado nas práticas de ITIL e por
fazer o registro de incidentes e problemas, gerando uma base de erros conhecidos que podem
ser consultados para resolução de incidentes futuros.
No site do fabricante é possível se
registrar e obter 30 dias para avaliar a ferramenta gratuitamente. Na Figura 5 o registro de
problemas disponível na ferramenta MillDesk (SETRION SAAS APLICATIONS, 2014).
24
Figura 5 - Registro de Problemas
Fonte: Setrion Saas Aplications (2014).
25
3 DESENVOLVIMENTO DO SISTEMA
Neste capítulo estão descritos os aspectos técnicos utilizados no desenvolvimento do
sistema, bem como o levantamento de informações: requisitos funcionais e não funcionais.
Além dos diagramas utilizados no desenvolvimento: diagrama de casos de uso, modelo de
entidade e relacionamento e diagrama de atividades. Estão descritas também as técnicas e
ferramentas utilizadas, a operacionalidade da implementação e os resultados obtidos.
3.1 LEVANTAMENTO DE INFORMAÇÕES
Foi desenvolvido um sistema que atende as necessidades de um setor de Service Desk
que realiza o cadastro das atividades realizadas pelo setor, para que posteriormente as
informações armazenadas no sistema auxiliem os integrantes a solucionar incidentes e
problemas que possam acontecer futuramente.
Os problemas solucionados geram erros conhecidos conforme as boas práticas de
ITIL. Estes erros conhecidos podem ser usados como referência na solução de incidentes ou
novos problemas que possam surgir.
Ainda em conformidade com o ITIL o sistema disponibiliza o cadastro de Incidentes,
Problemas e Itens de Configuração, e também faz o cadastro de clientes que são atendidos
pelo setor de Service Desk e cadastro dos usuários que fazem uso do sistema.
As opções de busca por erros conhecidos, incidentes e problemas cadastrados no
sistema, utilizam a técnica de mineração de texto para auxiliar nos resultados exibidos ao
usuário, o texto de pesquisa é tratado antes de ser realizada a busca no banco de dados. Para
isso, são utilizadas regras como a eliminação de radicais, remoção de palavras sem significado
e tratamento de sinônimos da língua portuguesa e sinônimos específicos do ambiente de
trabalho, que podem influir sobre a pesquisa, objetivando trazer resultados que atendam de
forma eficaz os objetivos do usuário.
Para a construção da aplicação foi necessária a utilização das seguintes ferramentas:
a) NetBeans para compilação do código Java do desenvolvimento;
b) Microsoft SQL Server para armazenamento das informações e criação das
procedures e functions que exercem a função de Mineração de texto;
c) Software iReports para confecção dos relatórios do sistema.
26
3.2 ESPECIFICAÇÃO
Nesta seção serão apresentados os requisitos funcionais, requisitos não funcionais,
diagrama de casos de uso e modelo entidade relacionamento, para o desenvolvimento dos
casos de uso e diagrama de atividades, foi utilizada a ferramenta Enterprise Architect da
empresa Sparx Systems e para o desenvolvimento do modelo entidade relacionamento foi
utilizada a ferramenta DBDesigner.
3.2.1 Requisitos Funcionais
O Quadro 1 apresenta os requisitos funcionais disponíveis no sistema.
Quadro 1 - Requisitos funcionais
Requisitos Funcionais
RF01: O sistema deverá solicitar do usuário login e senha para acesso
Caso de Uso
UC01
ao mesmo.
RF02: O sistema deverá permitir apenas que usuários com nível de
UC02
“Administrador” façam o cadastro de usuários do sistema.
RF03: O sistema deverá permitir que o usuário faça o cadastro de
UC03
clientes.
RF04: O sistema deverá permitir que o usuário registre os incidentes.
UC04
RF05: O sistema deverá permitir que o usuário registre os problemas.
UC05
RF06: O sistema deverá permitir que o usuário faça o cadastro de
UC06
trâmites de atendimento de incidentes.
RF07: O sistema deverá permitir que o usuário faça o cadastro de
UC07
trâmites de atendimento de problemas.
RF08: O sistema deverá permitir que o usuário faça buscas por erros
UC08
conhecidos.
RF09: O sistema deve gerar um erro conhecido a cada problema
UC09
resolvido.
RF10: O sistema deverá permitir que o usuário faça o cadastro de itens
de configuração.
UC10
27
RF11: O sistema deverá permitir que o usuário faça buscas por
UC11
incidentes cadastrados.
RF12: O sistema deverá permitir que o usuário faça buscas por
UC12
problemas cadastrados.
RF13: O sistema deverá permitir que o usuário cadastre sinônimos
UC13
específicos do negócio que serão utilizados na mineração de texto.
RF14: O sistema deverá permitir que o usuário cadastre sinônimos do
UC14
português que serão utilizados na mineração de texto.
RF15: O sistema deverá permitir que o usuário cadastre palavras sem
UC15
significados que serão utilizadas na mineração de texto.
RF16: O sistema deverá permitir apenas usuários com nível
UC16
“Administrador” gerar relatórios de usuários cadastrados.
RF17: O sistema deverá permitir que o usuário gere relatórios de
UC17
clientes cadastrados.
RF18: O sistema deverá permitir que o usuário gere relatórios de
UC18
incidentes cadastrados.
RF19: O sistema deverá permitir que o usuário gere relatórios de
UC19
problemas cadastrados.
3.2.2 Requisitos Não Funcionais
O Quadro 2 lista os requisitos não funcionais previstos para o sistema.
Quadro 2 - Requisitos não funcionais
Requisitos Não Funcionais
RNF01: O sistema deve ser executado em ambiente Microsoft Windows XP/7/8/8.1.
RNF02: O sistema será projetado para a plataforma Cliente-Servidor.
RNF03: O servidor do banco de dados precisara ter instalado o Microsoft SQL SERVER
2008 ou superior.
28
3.2.3 Diagrama de Casos de Uso
Esta subseção apresenta o diagrama de casos de uso do sistema. A descrição dos
principais casos de uso é apresentada no Apêndice A. Na Figura 6 estão contidos os principais
casos de uso do sistema.
Figura 6 - Diagrama dos principais Casos de Uso
Na Figura 7 estão contidos os casos de uso referentes a emissão de relatórios do
sistema.
Figura 7 - Diagrama dos Casos de Uso de emissão de relatórios
29
3.2.4 Modelo Entidade Relacionamento
A Figura 8 apresenta o Modelo Entidade Relacionamento (MER) físico do sistema. O
dicionário de dados está disponível no Apêndice B.
Figura 8 - Modelo Entidade Relacionamento
O sistema utiliza o banco de dados Microsoft SQL Server para armazenar as
informações.
A tabela “Usuario” armazena as informações dos usuários que fazem uso do sistema.
Estas informações são utilizadas para referenciar o usuário que registrou algum erro
conhecido, incidente, problema ou trâmite, além de permitir o login no sistema, somente
usuários com nível “Administrador” podem acessar o cadastro de usuários.
A tabela “Cliente” armazena informações dos clientes atendidos pelo setor de Service
Desk. Estas informações são utilizadas para referenciar o cliente afetado por um incidente ou
cliente proprietário de item de configuração. Qualquer usuário pode criar ou alterar um
cadastro de cliente.
30
A tabela “ItemConfiguracao” armazena as informações dos itens que compõe a
infraestrutura atendida pelo setor de Service Desk. Estas informações são utilizadas para
referenciar o item de configuração que está gerando o incidente ou problema. Qualquer
usuário pode criar ou alterar um cadastro de Item de Configuração.
A tabela “Incidente” armazena as informações sobre os incidentes cadastrados no
sistema. Qualquer usuário pode criar ou alterar um cadastro de incidente.
A tabela “Problema” armazena as informações sobre os problemas cadastrados no
sistema. Cada problema pode criar um novo erro conhecido ou ser referenciado por um erro
conhecido já existente definido como solução para o problema. Qualquer usuário pode criar
ou alterar um cadastro de Problema.
A tabela “ErroConhecido” armazena a solução para um problema cadastrado no
sistema e também pode ser referenciado como solução de incidentes. Qualquer usuário pode
criar ou alterar um cadastro de Erro Conhecido.
A tabela “TramiteIncidente” armazena informações sobre trâmites de incidentes
cadastrados no sistema. Qualquer usuário pode adicionar trâmites em um incidente.
A tabela “TramiteProblema” armazena informações sobre trâmites de problemas
cadastrados no sistema. Qualquer usuário pode adicionar trâmites em um problema.
A tabela “Sinonimos” armazena palavras que são sinônimos na língua portuguesa,
estas palavras são utilizadas na técnica de mineração de texto contida no sistema, caso
contenham palavras no texto de pesquisa que estejam cadastradas na tabela de sinônimos,
então estes sinônimos são adicionados ao texto de pesquisa.
A tabela “Sinonimos2” tem a mesma função da tabela “Sinonimos”, porém nesta
tabela estão cadastrados sinônimos específicos, como termos técnicos que podem ser descritos
de formas diferentes pelos usuários, mas que são considerados ambíguos. Qualquer usuário
pode adicionar palavras consideradas sinônimos no sistema.
A tabela “PalavraSemSignificado” contém palavras que não devem ser consideradas
na execução da mineração de texto, caso o texto de pesquisa contenha uma palavra igual a
alguma das palavras registradas na tabela, então esta palavra é eliminada do texto de pesquisa.
Qualquer usuário pode adicionar palavras sem significado nesta tabela através do sistema.
3.3 IMPLEMENTAÇÃO
A seguir são mostradas as técnicas e ferramentas utilizadas e a operacionalidade da
implementação.
31
3.3.1 Técnicas e ferramentas utilizadas
O sistema foi desenvolvido utilizando a linguagem de programação Java, como
compilador do código foi utilizado o NetBeans IDE versão 7.2.
Os dados do sistema serão armazenados no Sistema Gerenciador de Banco de Dados
(SGBD) Microsoft SQL Server versão Express, além de armazenar os dados, toda a técnica de
mineração de texto que está disponibilizada no sistema foi desenvolvida através da mesma
ferramenta, com a utilização de functions, procedures e views é realizado todo o trabalho de
mineração de texto.
Para a geração de relatórios é utilizada a ferramenta iReports versão 5.1, que é
produzida pela Jaspersoft Community. O iReports é uma ferramenta gratuita e open source,
para criação de relatórios.
3.1.1.1 Java
A linguagem de programação Java foi utilizada em todo o desenvolvimento do
sistema. Na Figura 9 é apresentada a classe Java que faz a conexão com o banco de dados.
Figura 9 - Classe Java de conexão com o banco de dados
32
3.1.1.2 Microsoft SQL Server
O Microsoft SQL Server tem a função de armazenar os dados gerados pelo sistema, e
também foi utilizado para o desenvolvimento da função de mineração de texto. Na Figura 10
é exibido um fragmento do código que modifica uma palavra do plural para o singular. O
código verifica se os últimos caracteres da palavra verificada possuem um conjunto de
caracteres específicos, caso retorne verdadeiro, os últimos caracteres da palavra são
modificados e transformam a palavra do estado plural para o estado singular.
Figura 10 - Função criada para retornar palavra no singular
3.1.1.3 iReports
Para o desenvolvimento dos relatórios emitidos pelo sistema foi utilizada a ferramenta
iReports. Na Figura 11 pode se observar um fragmento do código XML que faz a geração do
relatório de clientes cadastrados no sistema.
33
Figura 11 - XML do relatório de clientes
3.1.1.4 Mineração de Texto
A técnica de mineração de texto presente neste trabalho, tem sua estrutura criada
usando como referência os arquivos disponibilizados em Ptstemmer (2014), que disponibiliza
códigos fontes que realizam a mineração de texto em várias linguagens de programação. Para
a criação da tabela de sinônimos da língua portuguesa foram extraídas informações de uma
ferramenta de código aberto (OPENOFFICE, 2014).
A Figura 12 apresenta o diagrama de atividades do processo de mineração de texto que
é realizado no sistema desenvolvido. A técnica de mineração de texto é aplicada nas telas de
incidentes registrados, de problemas registrados e visualizar erros conhecidos.
34
Figura 12 - Diagrama de atividades do processo de mineração de texto do sistema
3.3.2 Operacionalidade da implementação
Ao abrir o sistema, o usuário deverá fazer login. O usuário e a senha de acesso deverão
estar previamente cadastrados e somente usuários com nível de administrador podem
cadastrar usuários do sistema. Esta tela atende ao requisito funcional RF01. A Figura 13
apresenta a tela de login do sistema.
35
Figura 13 - Tela de login do sistema
Após a validação de login do usuário, o sistema exibe a tela de menu principal, onde o
usuário pode realizar o cadastro de clientes, de usuários, de incidentes, de problemas e itens
de configuração. Podem também ter as opções de geração de relatórios de cadastros de
cliente, de usuário, de incidentes e de problemas. Na Figura 14 tem-se a tela do menu
principal.
Figura 14 - Tela do menu principal
Na Figura 15 visualiza-se a tela de cadastro de cliente. Este cadastro serve para
referenciar o cliente que foi afetado por um incidente ou para referenciar um proprietário de
item de configuração. Esta tela cumpre o requisito funcional RF03.
36
Figura 15 - Tela de cadastro de cliente
Na Figura 16 é apresentada a tela de cadastro de usuário. Esta tela só pode ser
acessada por usuários que tiverem o nível de usuário igual a “Administrador”. Nesta tela é
possível cadastrar, consultar ou deletar um usuário. Nesta tela cumpre-se o requisito funcional
RF02.
37
Figura 16 - Tela de cadastro de usuário
Na Figura 17 apresenta-se um fragmento do código Java desenvolvido para cadastrar o
usuário na base de dados. Primeiramente o algoritmo verifica se já existe um cadastro com o
código de usuário informado. Caso exista, o sistema realiza a atualização dos dados, caso
contrário, um novo usuário é cadastrado no banco de dados.
38
Figura 17 - Fragmento do código fonte do cadastro de usuário
A tela de cadastro de incidente cumpre o objetivo específico (A) e reúne além das
informações pertinentes ao incidente, as informações sobre o cliente afetado e sobre o item de
configuração que está gerando o incidente. Na parte inferior da tela possui uma tabela que
lista todos os trâmites do incidente em específico, nesta tela além de cadastrar o incidente
pode-se cadastrar os trâmites relacionados ao mesmo. Com isso cumprem-se os requisitos
funcionais RF04 e RF06. A Figura 18 apresenta a tela de registro de incidentes.
Figura 18 - Tela de registro de incidente
39
A tela de cadastro de problema cumpre o objetivo específico (B) e reúne as
informações pertinentes ao problema e sobre o item de configuração que está gerando o
problema. Na parte inferior da tela tem-se uma tabela que lista todos os trâmites do problema
em específico, nesta tela além de cadastrar o problema pode-se cadastrar os trâmites
relacionados ao mesmo. Com isso cumprem-se os requisitos funcionais RF05 e RF07. A
Figura 19 apresenta a tela de registro de problema.
Figura 19 - Tela de registro de problema
Na Figura 20 apresenta-se a tela de cadastro de erro conhecido, que é gerada a partir
da solução de um problema cadastrado no sistema. Para isso, o usuário do sistema deve abrir
um problema que ainda não esteja resolvido e clicar no botão resolver problema, ou caso o
problema já tenha um erro conhecido atrelado ao mesmo, o usuário pode visualizá-lo ao clicar
no botão visualizar solução. A tela de cadastro de erro conhecido informa os dados do
problema que gerou o erro conhecido, e também as informações específicas do erro conhecido
como categoria, código, título e solução do erro conhecido, com isso cumpre-se o requisito
funcional RF09.
40
Figura 20 - Tela de cadastro de erro conhecido
Na Figura 21 pode se visualizar a tela de erros conhecidos cadastrados. Esta tela
cumpre o objetivo específico (C) e que lista os erros conhecidos cadastrados no sistema,
respeitando as regras informadas nas opções de filtro. Nesta tela pode ser utilizada a técnica
de mineração de texto para obter uma gama maior de resultados que podem ajudar na busca
por uma solução esperada. Caso a mineração de texto esteja desativada, é realizada uma
simples busca respeitando as configurações do filtro de pesquisa. Com isso cumpre-se o
requisito funcional RF08.
Figura 21 - Tela de visualização de erros conhecidos cadastrados
41
Na Figura 22 pode se visualizar a tela de incidentes cadastrados. Esta tela cumpre o
requisito funcional RF11. Nesta tela podem ser visualizados os incidentes cadastrados no
sistema. A opção de mineração de texto está disponível, e pode ser aplicada sobre a busca de
incidentes, exibindo ao usuário apenas registros que cumpram as condições informadas nos
campos de busca.
Figura 22 - Tela de visualização de incidentes registrados
A Figura 23 exibe a tela de problemas cadastrados. Esta tela cumpre o requisito
funcional RF12. Nesta tela podem ser visualizados os problemas cadastrados no sistema. A
opção de mineração de texto está disponível, e pode ser aplicada sobre a busca de problemas,
exibindo ao usuário apenas registros que cumpram as condições informadas nos campos de
busca.
42
Figura 23 - Tela de visualização de problemas registrados
Na Figura 24 pode se visualizar a tela de cadastro de item de configuração. Esta tela
cadastra os itens de configuração que podem ser referenciados nos cadastros de incidentes e
problemas do sistema. O cadastro de incidentes possui campos de cadastro específicos do
item de configuração, e também possui campos de informação sobre o cliente proprietário do
item de configuração. Com esta tela cumpre-se o requisito funcional RF10.
Figura 24 - Tela de cadastro de item de configuração
43
Na Figura 25 pode se visualizar a tela de cadastro de palavras sem significado. Nesta
tela o usuário pode visualizar todas as palavras já cadastradas no sistema, e também pode
adicionar ou excluir palavras sem significado, que serão desconsideradas na aplicação da
técnica de mineração de texto do sistema.
Figura 25 - Tela de cadastro de palavras sem significado
Na Figura 26 pode se visualizar a tela de cadastro de sinônimos do negócio. Nesta tela
o usuário pode visualizar todas os sinônimos de negócio já cadastrados no sistema, e também
pode adicionar ou excluir os mesmos. Estes sinônimos serão utilizados na aplicação da
técnica de mineração de texto do sistema, onde palavras consideradas sinônimos são
adicionadas ao foco de pesquisa.
Figura 26 - Tela de cadastro de sinônimos do negócio
44
Na Figura 27 pode se visualizar a tela de cadastro de sinônimos do português. Nesta
tela o usuário pode visualizar todas os sinônimos do português já cadastrados no sistema, e
também pode adicionar ou excluir os mesmos. Estes sinônimos serão utilizados na aplicação
da técnica de mineração de texto do sistema, onde palavras consideradas sinônimos são
adicionadas ao foco de pesquisa.
Figura 27 - Tela de cadastro de sinônimos do português
Na Figura 28 pode se visualizar o relatório de incidentes disponível no sistema. Neste
relatório são listados todos os incidentes cadastrados no sistema, este relatório cumpre o
requisito funcional RF18.
Figura 28 - Tela de relatório de incidentes cadastrados
45
Na Figura 29 é exibido o relatório de problemas cadastrados. Este relatório mostra
todos os problemas cadastrados no sistema. Também é exibido o erro conhecido que
soluciona o respectivo problema. No sistema também é possível gerar relatórios de usuários,
de clientes e de incidentes conforme Figura 28. Com isto, cumpre-se os requisitos funcionais
RF16, RF17, RF18 e RF19 e o objetivo específico (D).
Figura 29 - Tela de relatório de problemas cadastrados
A Figura 30 exibe um fragmento do código de procedimento realizado no Microsoft
SQL Server, que realiza o tratamento de sinônimos utilizado na técnica de mineração de texto.
O tratamento verifica as palavras contidas no texto de pesquisa e compara com as palavras
cadastradas nas tabelas de sinônimos. Caso contenham palavras iguais em alguma linha da
tabela, as palavras desta linha são somadas ao texto de pesquisa, que também executa o
tratamento de eliminação de radicais.
Figura 30 - Fragmento do código de tratamento de sinônimos
46
A Figura 31 exibe um fragmento da função de tratamento de redução adverbial
realizada no Microsoft SQL Server, que realiza a redução adverbial de uma palavra para que
esta não cause impacto nos resultados da pesquisa. A Figura 31 realiza a redução adverbial da
palavra “EXPERIMENTE”.
Figura 31 - Fragmento do código da função de redução adverbial
A Figura 32 exibe um fragmento da função de tratamento de redução de superlativo
realizada no Microsoft SQL Server, que realiza a redução do superlativo nas palavras do texto
de pesquisa, para que estas palavras não impactem sobre os resultados da mesma.
Figura 32 - Fragmento do código da função de redução de superlativo
A técnica de mineração de texto é aplicada sobre as buscas por registros de erros
conhecidos, incidentes e problemas. Caso a mineração de texto esteja ativada. O texto de
pesquisa é tratado com redução de superlativo, redução adverbial e eliminação de palavras
sem significado. Após este processo é realizada a procura por palavras que contenham
sinônimos cadastrados nas duas tabelas de sinônimos disponíveis no sistema. Na Figura 30
pode-se ver um fragmento da procedure desenvolvida na linguagem Structured Query
Language (SQL) para verificação das palavras sinônimos, com isto cumpre-se o objetivo
47
específico (E) deste sistema. Nas Figuras 33 e Figura 34 tem-se uma parte do processo de
mineração de texto.
Figura 33 - Fragmento de visualização de erros conhecidos com aplicação de mineração de texto
É possível perceber na Figura 33 que a solução de erro com código 15, que está
destacada entre linhas não possui a palavra impressora, portanto, se fosse realizada uma
pesquisa simples este erro conhecido não seria exibido. Mas como a pesquisa que deu origem
a este resultado foi realizada com a utilização da técnica de mineração de texto, palavras
consideradas sinônimos a impressora foram adicionadas ao escopo da busca, isto ocorre
porque é executada uma procedure que cria uma view de pesquisa com o código SQL,
adicionando ao escopo de busca palavras consideradas sinônimos, o texto de pesquisa
utilizado foi “impressora”, o código SQL gerado pela procedure pode ser visto na Figura 34.
Figura 34 - Código SQL de busca após execução da procedure
Após a execução da view de pesquisa, os resultados retornados seriam os exibidos na
Figura 33 desta subseção.
3.4 RESULTADOS E DISCUSSÃO
Foi atendida a proposta de criação de um sistema que realiza o cadastro dos
atendimentos realizados por uma equipe de Service Desk, seguindo as boas práticas do ITIL.
Isto se cumpre realizando o cadastro de incidentes, o de problemas e erros conhecidos. A
técnica de mineração de texto auxilia o usuário na busca de uma solução que atenda de fato as
48
suas necessidades.
Nos artigos e trabalhos de conclusão de curso consultados para a realização deste,
foram encontrados trabalhos semelhantes ao sistema proposto, devido a abordagem realizada
das práticas de ITIL ou a utilização da técnica de mineração de texto. Porém, as
funcionalidades disponibilizadas neste sistema, diferencia o mesmo quando comparado aos
trabalhos consultados.
Em relação aos trabalhos correlatos, o trabalho desenvolvido por Fischer (2012), tem
como objetivo a criação de uma ferramenta para Help Desk, que possui uma base de dados
com erros conhecidos, e que utiliza a técnica de mineração de texto. O sistema desenvolvido
abrange mais áreas do ITIL do que a aplicação proposta por Fischer. A técnica de mineração
de texto é aplicada sobre os registros de erros conhecidos, incidentes e problemas que estão
cadastrados na base de dados. Já a aplicação de Fischer só aplica mineração de texto sobre os
erros conhecidos.
Com relação ao trabalho de Fink (2011), são utilizadas técnicas iguais ao sistema
desenvolvido, porém, os objetivos são diferentes. Enquanto a aplicação de Fink realiza a
classificação de incidentes de um Service Desk, utilizando a técnica de mineração de texto. O
sistema desenvolvido realiza o cadastro das atividades realizadas por um setor de Service
Desk, utilizando a técnica de mineração de texto sobre as opções de busca do sistema.
Em relação ao software da Setrion Saas Aplications (2014), o milldesk realiza o
cadastro dos atendimentos realizados por um setor de Help Desk, baseado nas boas práticas do
ITIL, o que o torna semelhante ao sistema desenvolvido, porém, o software não faz uso da
técnica de mineração de texto, o que o torna diferente ao sistema desenvolvido.
No Quadro 3 é exibido um comparativo entre o sistema desenvolvido e os trabalhos
correlatos.
49
Quadro 3 - Comparativo entre sistema desenvolvido e trabalhos correlatos
ITIL
Gestão de Gestão de
Erros
incidentes problemas conhecidos
Sistema
desenvolvido
Ferramenta
desenvolvida
por Fischer
(2012)
Aplicação
desenvolvida
por Fink
(2011)
Sistema
desenvolvido
por Setrion
Saas
Aplications
(2014)
Mineração de texto
Aplicado Aplicado
Aplicado
sobre
sobre
sobre erros
incidentes problemas conhecidos
50
4 CONCLUSÕES
O sistema produto deste trabalho atendeu a todos os objetivos definidos no item 1.1
deste documento. Desenvolveu-se um sistema capaz de auxiliar uma equipe de Service Desk,
na resolução dos atendimentos prestados, e que através da técnica de mineração de texto se
torna uma ferramenta inteligente para busca de soluções para os atendimentos. O registro de
incidentes, de problemas e erros conhecidos consolidam a aderência das boas práticas do ITIL
no sistema desenvolvido.
As ferramentas utilizadas para o desenvolvimento do sistema foram adequadas. O
SGBD Microsoft SQL Server, além de persistir os dados do sistema, também foi utilizado
para o desenvolvimento da técnica de mineração de texto, as funcionalidades disponibilizadas
no mesmo atenderam de forma eficaz, as necessidades de desenvolvimento do sistema. A
ferramenta de criação de relatórios iReports, possui uma gama excelente de recursos para o
desenvolvimento de relatórios, além de possuir uma interface intuitiva e repleta de recursos
para personalização de relatórios.
O maior desafio encontrado durante o desenvolvimento do sistema foi a parte que
tange o desenvolvimento da técnica de mineração de texto. A elaboração de diversas funções
dentre elas as funções de segmentação das palavras do texto de pesquisa, eliminação de
palavras sem significado do foco de pesquisa e adição de palavras sinônimos ao texto de
pesquisa, e a junção destas funções para realização do resultado esperado.
O desenvolvimento deste trabalho proporcionou ao autor deste, um grande
aprendizado na linguagem de programação Java, também pode-se ter a dimensão da
importância de seguir as boas práticas do ITIL, no gerenciamento de um setor de Service
Desk.
4.1 EXTENSÕES
Este sistema pode ser melhorado, ampliado ou incrementado em trabalhos futuros
agregando novas funcionalidades ou utilizando outras técnicas e ferramentas para a execução
de algumas tarefas como:
a) implementar a função de adicionar arquivos anexos ao erro conhecido, na intenção
de armazenar mais elementos que possam contribuir na solução de um problema;
b) realizar controle de atendimento aos incidentes e problemas fazendo controle de
51
Service Level Agreement (SLA) conforme ITIL;
c) realizar o controle de mudanças conforme ITIL;
d) implementação de “Palavras chave” nos erros conhecidos;
e) adicionar funcionalidade para importar cadastros de clientes já existentes.
52
REFERÊNCIAS
ALVARES, Reinaldo V. Investigação do Processo de Stemming na Língua Portuguesa.
2005. Dissertação de Mestrado (Mestrado em Computação) – Departamento de Computação.
Universidade Federal Fluminense. Niterói. Rio de Janeiro. Disponível em:
<http://www2.ic.uff.br/PosGraduacao/Dissertacoes/258.pdf>. Acesso em: 6 out. 2014.
FARINHA, Carla M. P. Adoção de ITIL em Grandes Empresas. Portugal, 2005. 40 f.
Artigo (Licenciatura em Engenharia Informática) – Departamento de Engenharia Informática,
Universidade de Coimbra. Coimbra. Disponível em:
<http://student.dei.uc.pt/~cfarinha/scripts/CSI/GEs.pdf> Acesso em: 7 abr. 2014.
FELDMAN, Ronen; SANGER, James. The Text Mining Handbook: Advanced Approaches
in Analyzing Unstructured Data. New York: Cambridge University Press, 2006.
FERREIRA, Paulo A. S. Implementação de Processos da Fase de Operação de Serviço do
ITIL em Ambiente Universitário: O caso do ISCTE-IUL. 2011. Dissertação de Mestrado
(Mestrado em Gestão de Sistemas de Informação) – Departamento de Ciências e Tecnologias
da Informação, Instituto Universitário de Lisboa, Portugal. Disponível em:
<https://repositorio.iscteiul.pt/bitstream/10071/2338/1/Implementa%C3%A7%C3%A3o%20de%20Processos%20da%
20Fase%20de%20Opera%C3%A7%C3%A3o%20de%20Servi%C3%A7o%20do%20ITIL%2
0em%20Ambiente%20Universit%C3%A1rio%20%E2%80%93%20O%20Caso%20do%20IS
CTE-IUL.pdf/>. Acesso em: 3 out. 2014.
FINK, Carla A. Aplicação da Técnica Text Mining para Auxílio na Classificação de
Incidentes de Service Desk. 2010. Trabalho de Conclusão de Curso (Bacharelado em
Sistemas de Informação) – Centro de Ciências Exatas e Naturais, Universidade Regional de
Blumenau, Blumenau.
FISCHER, Klauber S. Aplicativo para empresa de Help Desk baseado em gestão do
conhecimento utilizando a técnica de Mineração de Texto. 2012. Trabalho de Conclusão
de Curso (Bacharelado em Sistemas de Informação) – Centro de Ciências Exatas e Naturais,
Universidade Regional de Blumenau, Blumenau.
FREITAS, Marcos A. S. Fundamentos do gerenciamento de serviços de TI: preparatório
para certificação ITIL V3 Foundation. 1 ed. Rio de Janeiro: Editora Brasport. 2010.
GOMES, Bruno J. N.; PEREIRA, Fabio L. G. Melhoria dos Serviços Através da Aplicação do
Modelo de Governança de TI e Ferramentas de Qualidade: Um Estudo de Caso. VII
CONGRESSO NACIONAL DE EXCELÊNCIA EM GESTÃO, Niterói, p. 6, 2011.
Disponível em:
<http://www.excelenciaemgestao.org/Portals/2/documents/cneg7/anais/T11_0334_1810.pdf>.
Acesso em: 10 abr. 2014.
53
ITIL.ORG. ITIL Knowledge – Overview. Suiça, [2011?]. Disponível em:
<http://www.itil.org/en/vomkennen/itil/index.php>. Acesso em: 8 set. 2014.
ITSMF. Fundamentos do Gerenciamento de Serviços em TI baseado no ITIL. 1 ed.
Holanda: Editora Van Haren Publishing, 2005. Disponível em:
<http://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=19&cad=rja&uact
=8&ved=0cfmqfjaioao&url=http%3a%2f%2Ffiles.tinorte.webnode.com.br%2F200000069d6b47d7ae3%2FFundamentos%2520de%2520ITIL.pdf&ei=IoiAVLSrNcurNrWphMgO&usg
=AFQjCNF76GXipcY0wosw7TFzxhFtJow7AA&bvm=bv.80642063,d.eXY>. Acesso em 4
dez. 2014.
LANUNIVERSITY: ITIL: Visão Geral e Benefícios. Campinas. São Paulo. [2014?].
Disponível em: <http://www.lanuniversity.com.br/itil/itil>. Acesso em: 31 mar. 2014.
MAGALHÃES, Ivan, L.; PINHEIRO, Walfrido, B. Gerenciamento de Serviços de TI na
Prática: Uma abordagem com base na ITIL Inclui ISO/IEC 20.000 e IT Flex. 1 ed. São
Paulo: Editora Novatec, 2007.
MARTINS, Yasmmin; AZEVEDO, Breno F. T.; BASTOS, Helvia, P. P. Identificação de
Palavras Compostas como Auxílio à Mineração de Textos: Desenvolvimento do
Compostas_v1. 6º Circuito de Tecnologia da Informação, Rio de Janeiro, 2010. Disponível
em: <http://www.essentiaeditora.iff.edu.br/index.php/citi/article/download/1470/680>.
Acesso em: 27 set. 2014.
MELENDEZ, Rubem. Service desk corporativo: Solução com base na ITIL V3. 1 ed. São
Paulo: Editora Novatec, 2011. Disponível em:
<http://www.novateceditora.com.br/livros/servicedesk/capitulo9788575222690.pdf>. Acesso
em 4 dez. 2014.
MELO, Daniel, R. A. A importância da tecnologia na informação nas estratégias das
organizações contemporâneas: breve revisão de literatura. V CONVIBRA – Congresso
Virtual Brasileiro de Administração, Manaus, p. 2, 2008. Disponível em:
<http://www.convibra.org/2008/artigos/412_0.pdf>. Acesso em: 2 set. 2014.
MICROSOFT DEVELOPER NETWORK. Conceitos de mineração de dados. Estados
Unidos, 2014. Disponível em: <http://msdn.microsoft.com/pt-br/library/ms174949.aspx>.
Acesso em: 27 set. 2014.
MORAIS, Edilson A. M.; AMBRÓSIO, Ana Paula L. Mineração de Textos. Goiás, 2007. 30
f. Relatório Técnico (Mestrando em Ciências da Computação) – Instituto de Informática,
Universidade Federal de Goiás. Goiânia. Disponível em:
<http://www.inf.ufg.br/sites/default/files/uploads/relatorios-tecnicos/RT-INF_005-07.pdf>.
Acesso em: 7 abr. 2014.
54
NÓBREGA, Rose M. D. R. Implementação de prática de gerenciamento de serviços de TI
no superior tribunal de Justiça: Uma análise do impacto em processos do modelo ITIL.
2007. 121 f. Monografia (Pós-Graduando em Administração Estratégica de Sistemas de
Informação) – Núcleo Brasília, Fundação Getúlio Vargas. Brasília. Disponível em:
<http://bdjur.stj.jus.br/xmlui/bitstream/handle/2011/19256/Implementa%C3%A7%C3%A3o_
Pr%C3%A1tica_Gerenciamento_Rose%20Mary.pdf?sequence=1>. Acesso em: 8 abr. 2014.
OPENOFFICE. Dicionário de português. Hungria, 2014. Disponível em:
<https://wiki.openoffice.org/wiki/Pt.openoffice.org/FAQ/Geral/0401>. Acesso em: 25 out.
2014.
PTSTEMMER. PTStemmer – A Stemming toolkit for the portuguese language. Estados
Unidos, 2014. Disponível em: <https://code.google.com/p/ptstemmer/>. Acesso em: 24 out.
2014.
SETRION SAAS APLICATIONS. MillDesk: Software para Help Desk e Service Desk.
Joinville. Santa Catarina. 2014. Disponível em: <http://www.milldesk.com.br>. Acesso em:
29 maio 2014.
SORTICA, Eduardo, A.; CLEMENTI, Sérgio; CARVALHO, Tereza C. M. B. Governança
de TI: comparativo COBIT e ITIL. 2004. 13 f. Artigo ([N.I]) – Centro Universitário
Fundação Santo André. Santo André. Disponível em:
<http://www3.fsa.br/LocalUser/gestaoti/Ativ09%20CLEMENTI%202004%20%20Governan
%C3%A7a%20de%20TI%20-%20Comparativo%20entre%20Cobit%20e%20Itil.pdf>.
Acesso em: 31 mar. 2014.
TRIBUNAL DE JUSTIÇA DO DISTRITO FEDERAL E DOS TERRITÓIOS. Fundamentos
em Gerenciamento de Serviços de TI. Brasília. Distrito Federal. 2012. Disponível em:
<http://www.tjdft.jus.br/institucional/controle-interno/boas-praticas/itil/at_download/file>.
Acesso em: 05 set. 2014.
WIVES, Leandro, K. Um Estudo sobre Agrupamento de Documentos Textuais em
Processamento de Informações não Estruturadas Usando Técnicas de “Clustering”.
1999. 84 f. Dissertação de Mestrado (Mestrando em Ciência da Computação) – Instituto de
Informática, Universidade Federal do Rio Grande do Sul. Porto Alegre. Disponível em: <
http://www.lume.ufrgs.br/bitstream/handle/10183/25933/000102235.pdf?sequence=1&locale
=pt_BR>. Acesso em: 27 set. 2014.
55
APÊNDICE A – Descrição dos Casos de Uso
Nos Quadros a seguir, apresentam-se o detalhamento dos casos de uso conforme
previstos no(s) diagrama(s) apresentado(s) na subseção 3.2.3.
No Quadro 4 apresenta-se o caso de uso "Login".
Quadro 4 - Descrição do caso de uso Efetuar login
UC01 – Efetuar login.
Ator: Usuário.
Objetivo: O sistema deverá permitir o usuário efetuar login no sistema.
Pré-condição: O usuário tem que estar cadastrado no banco de dados.
Pós-condição: Usuário autenticado pelo sistema.
Cenário Principal:
1.
O usuário informa seu login e senha;
2.
O sistema faz a validação de login e senha;
3.
O sistema abre o menu principal.
Cenário Alternativo 01:
No passo 2 do cenário principal, caso o sistema não encontre login e senha no banco de
dados:
1.
O sistema emite mensagem de usuário/senha inválidos.
No Quadro 5 apresenta-se o caso de uso "Cadastrar usuário do sistema".
Quadro 5 - Descrição do caso de uso Cadastrar usuário do sistema
UC02 – Cadastrar usuário do sistema.
Ator: Administrador.
Objetivo: O sistema deverá fazer o cadastrado dos usuários do mesmo.
Pré-condição: O usuário deverá ter feito login no sistema com usuário de nível
administrador.
Pós-condição: Usuário cadastrado ou alterado com sucesso.
Cenário Principal:
1.
O usuário pretende cadastrar um novo usuário do sistema;
2.
O usuário preenche os campos de nome, login, senha e nivel do usuário;
3.
O usuário clica em cadastrar;
4.
O sistema valida as informações e exibe mensagem de usuário cadastrado.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário pretenda alterar um cadastro de usuário
já existente:
56
1.
2.
3.
4.
5.
Na tela de cadastro de usuários clicar em pesquisar;
O sistema lista os usuários cadastrados, o usuário seleciona um deles e clica
em alterar;
O usuário pode alterar o nome, login, senha e nível do usuário;
O usuário clica em cadastrar;
O sistema valida as informações e exibe mensagem de usuário cadastrado.
Cenário Alternativo 02:
No passo 1 do cenário principal, caso o usuário pretenda excluir um cadastro de
usuário:
1.
Na tela de cadastro de usuários o mesmo clica em pesquisar;
2.
O sistema lista os usuários cadastrados, o usuário seleciona um deles e clica
em alterar;
3.
Os dados do usuário são listados na tela;
4.
O usuário clica em excluir usuário;
5.
O sistema pergunta ao usuário se ele confirma a exclusão;
6.
O sistema exclui o registro de usuário da base de dados.
No Quadro 6 apresenta-se o caso de uso "Cadastrar Clientes".
Quadro 6 - Descrição de caso de uso Cadastrar clientes
UC03 – Cadastrar clientes.
Ator: Usuário.
Objetivo: O sistema deverá realizar o cadastro de cliente.
Pré-condição: O usuário terá que ter feito login no sistema.
Pós-condição: Cadastro ou alteração de cliente efetuada com sucesso.
Cenário Principal:
1.
O usuário pretende cadastrar um novo cliente no sistema;
2.
O usuário preenche o nome, e-mail e telefone do cliente;
3.
O usuário clica no botão cadastrar;
4.
O sistema avisa que o cliente foi cadastrado com sucesso;
5.
O sistema limpa os campos para um novo registro.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário pretenda alterar um cadastro de cliente:
1.
O usuário clica em pesquisar;
2.
O sistema lista os clientes cadastrados, o usuário seleciona um cliente e clica
em alterar;
3.
O sistema abre a tela com os dados do cadastro;
4.
O usuário pode alterar o nome, e-mail e telefone do cliente;
5.
O usuário clica em cadastrar;
6.
O sistema informa que o cliente foi cadastrado com sucesso.
57
No Quadro 7 apresenta-se o caso de uso "Registrar Incidentes".
Quadro 7 - Descrição do caso de uso Registrar incidentes
UC04 – Registrar incidentes.
Ator: Usuário.
Objetivo: O sistema deverá realizar o registro de incidentes.
Pré-condição: Usuário deve ter feito login no sistema.
Pós-condição: Incidente registrado ou alterado com sucesso.
Cenário Principal:
1.
O usuário pretende cadastrar um novo incidente;
2.
O usuário informa a situação e prioridade do incidente, informa o cliente
relacionado, informa o item de configuração relacionado, cadastra a descrição
e solução de contorno do incidente;
3.
O usuário clica em cadastrar;
4.
O sistema valida as informações e exibe mensagem de incidente registrado.
Cenário Alternativo 01:
No passo 3 do cenário alternativo 01, caso o usuário queira resolver o incidente:
1.
O usuário clica em resolver incidente;
2.
O sistema abre a tela de visualizar erros conhecidos;
3.
O usuário seleciona o erro conhecido que deseja;
4.
O usuário clica em apontar erro conhecido;
5.
O sistema emite mensagem de apontamento de erro conhecido realizado com
sucesso.
Cenário Alternativo 02:
No passo 1 do cenário principal, caso o usuário queira visualizar a solução para o
incidente:
1.
O usuário clica em visualizar solução;
2.
O sistema abre a tela com os dados do erro conhecido atrelado ao incidente.
No Quadro 8 apresenta-se o caso de uso "Registrar Problemas".
Quadro 8 - Descrição do caso de uso Registrar problemas
UC05 – Registrar problemas.
Ator: Usuário.
Objetivo: O sistema deverá realizar o registro de problemas.
Pré-condição: Usuário deve ter feito login no sistema.
Pós-condição: Problema registrado ou alterado com sucesso.
Cenário Principal:
1.
O usuário pretende cadastrar um novo problema;
2.
O usuário informa a categoria, prioridade e situação do problema, o item de
configuração relacionado, descrição e solução de contorno do problema;
3.
O usuário clica em cadastrar;
58
4.
O sistema faz a validação das informações e exibe mensagem de problema
registrado.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário queira resolver o problema:
1.
O usuário clica em resolver problema;
2.
O sistema abre a tela de cadastro de erro conhecido;
3.
O sistema gera automaticamente as informações do problema de origem;
4.
O usuário pode informar o título e a descrição de solução do erro conhecido;
5.
O usuário clica em cadastrar erro conhecido;
6.
O sistema emite mensagem de erro conhecido cadastrado com sucesso.
Cenário Alternativo 02:
No passo 1 do cenário principal, caso o usuário queira visualizar a solução para o
problema:
1.
O usuário clica em visualizar solução;
2.
O sistema abre a tela com os dados do erro conhecido que soluciona o
problema.
No Quadro 9 apresenta-se o caso de uso "Adicionar trâmite em incidente".
Quadro 9 - Descrição do caso de uso Adicionar trâmite em incidente
UC06 – Adicionar trâmite em incidente.
Ator: Usuário.
Objetivo: O sistema deverá realizar o registro de trâmites em incidentes.
Pré-condição: Usuário deve ter cadastrado um incidente no sistema.
Pós-condição: Trâmite é adicionado ao incidente.
Cenário Principal:
1.
O usuário informa a descrição do trâmite;
2.
O usuário clica em adicionar trâmite;
3.
O sistema grava o trâmite no banco de dados com as informações de código,
nome do usuário, descrição e data e hora do trâmite;
4.
O sistema adiciona o trâmite a lista de trâmites do incidente relacionado.
No Quadro 10 apresenta-se o caso de uso "Adicionar trâmite a problema".
Quadro 10 - Descrição do caso de uso Adicionar trâmite em problema
UC07 – Adicionar trâmite em problema.
Ator: Usuário.
Objetivo: O sistema deverá realizar o registro de trâmites em problemas.
Pré-condição: Usuário deve ter cadastrado um problema no sistema.
Pós-condição: O trâmite é adicionado ao problema.
Cenário Principal:
1.
O usuário informa a descrição do trâmite;
2.
O usuário clica em adicionar trâmite;
3.
O sistema grava o trâmite no banco de dados com as informações de código,
nome do usuário, descrição e data e hora do trâmite;
59
4.
O sistema adiciona o trâmite a lista de trâmites do problema relacionado.
No Quadro 11 apresenta-se o caso de uso "Listar erros conhecidos".
Quadro 11 - Descrição do caso de uso Listar erros conhecidos
UC08 – Listar erros conhecidos.
Ator: Usuário.
Objetivo: O sistema deve listar os erros conhecidos.
Pré-condição: O usuário deve ter feito login no sistema.
Pós-condição: O sistema lista os erros conhecidos cadastrados ou erro conhecido
é alterado.
Cenário Principal:
1.
O usuário define as configurações de filtro;
2.
O usuário clica em pesquisar;
3.
O sistema lista somente os erros conhecidos que cumpram as condições
do filtro.
Cenário Alternativo 01:
No passo 1, caso o usuário desejar alterar um erro conhecido cadastrado:
1.
O usuário seleciona o cadastro de erro conhecido que deseja alterar;
2.
O usuário clica em apontar erro conhecido;
3.
O sistema abre a tela com os dados do erro conhecido selecionado;
4.
O usuário pode alterar o título, a categoria e a descrição de solução do erro
conhecido;
5.
O usuário clica em cadastrar erro conhecido;
6.
O sistema cadastra erro conhecido na base de dados.
No Quadro 12 apresenta-se o caso de uso "Cadastrar erro conhecido".
Quadro 12 - Descrição do caso de uso Cadastrar erro conhecido
UC09 – Cadastrar erro conhecido.
Ator: Usuário.
Objetivo: O sistema devera cadastrar erros conhecidos.
Pré-condição: O usuário deve resolver um problema já cadastrado.
Pós-condição: Erro conhecido, registrado.
Cenário Principal:
1.
O usuário clica em resolver problema;
2.
A tela de cadastro de erros conhecidos é exibida na tela, com as informações
de usuário, código e descrição do problema de origem já preenchido;
3.
O usuário informa a categoria, título e solução do erro conhecido;
4.
O usuário clica em cadastrar erro conhecido;
5.
O sistema emite mensagem de erro conhecido cadastrado com sucesso.
No Quadro 13 apresenta-se o caso de uso "Cadastrar item de configuração".
60
Quadro 13 - Descrição do caso de uso Cadastrar item de configuração
UC10 – Cadastrar item de configuração.
Ator: Usuário.
Objetivo: O sistema deverá realizar o cadastro de item de configuração.
Pré-condição: O usuário deve ter feito login no sistema.
Pós-condição: Item de configuração cadastrado com sucesso.
Cenário Principal:
1.
O usuário pretende cadastrar um novo item de configuração;
2.
O usuário preenche os campos de etiqueta de patrimônio, número de
série, local de instalação, categoria, cliente proprietário e descrição do
item de configuração;
3.
O usuário clica em cadastrar item de configuração;
4.
O sistema valida as informações e exibe a informação de item de
configuração cadastrado com sucesso.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário pretenda alterar um cadastro de item de
configuração:
1.
O usuário clica em pesquisar na tela de cadastro de item de configuração;
2.
O usuário seleciona um item de configuração da lista de itens de configuração
cadastrados;
3.
O usuário clica em alterar;
4.
O usuário pode alterar os campos de etiqueta de patrimônio, número de série,
local de instalação, categoria, cliente proprietário e descrição do item de
configuração;
5.
O usuário clica em cadastrar;
6.
O sistema mostrar mensagem de item de configuração cadastrado com sucesso.
No Quadro 14 apresenta-se o caso de uso "Listar incidentes".
Quadro 14 - Descrição do caso de uso Listar incidentes
UC11 – Listar incidentes.
Ator: Usuário.
Objetivo: O sistema deve listar os incidentes cadastrados.
Pré-condição: O usuário deve ter feito login no sistema;
Pós-condição: O sistema lista os incidentes cadastrados.
Cenário Principal:
1.
O usuário pretende procurar um incidente;
2.
O usuário define as configurações de filtro;
3.
O usuário clica em pesquisar;
4.
O sistema lista somente os incidentes que cumpram as condições do
filtro.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário queira alterar um incidente cadastrado:
1.
O usuário seleciona o incidente que deseja alterar;
2.
O usuário clica em alterar incidente;
61
3.
4.
5.
6.
O sistema abre a tela com os dados do cadastro;
O usuário pode alterar a situação, prioridade e adicionar trâmites no incidente
conforme Quadro 11 desta seção;
O usuário clica no botão cadastrar;
O sistema emite mensagem de incidente registrado.
No Quadro 15 apresenta-se o caso de uso "Listar problemas".
Quadro 15 - Descrição do caso de uso Listar problemas
UC12 – Listar problemas.
Ator: Usuário.
Objetivo: O sistema deve listar os problemas cadastrados.
Pré-condição: O usuário deve ter feito login no sistema.
Pós-condição: O sistema lista os problemas cadastrados.
Cenário Principal:
1.
O usuário pretende procurar um problema;
2.
O usuário define as configurações de filtro;
3.
O usuário clica em pesquisar;
4.
O sistema lista somente os problemas que cumpram as condições do
filtro.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário queira alterar um problema já
cadastrado:
1.
O usuário seleciona o problema que deseja alterar;
2.
O usuário clica em alterar problema;
3.
O sistema abre uma tela com os dados do cadastro;
4.
O usuário pode alterar a categoria, situação, prioridade e adicionar trâmites ao
problema conforme Quadro 12 desta seção;
5.
O usuário clica em cadastrar;
6.
Sistema valida as informações e exibe mensagem de problema registrado.
No Quadro 16 apresenta-se o caso de uso "Cadastrar sinônimos do negócio".
Quadro 16 - Descrição do caso de uso Cadastrar sinônimos do negócio
UC13 – Cadastrar sinônimos do negócio.
Ator: Usuário.
Objetivo: Cadastrar sinônimos na tabela de sinônimos do negócio.
Pré-condição: O usuário deve ter feito login no sistema.
Pós-condição: O sistema cadastra o sinônimo na tabela.
Cenário Principal:
1.
O usuário pretende cadastrar um sinônimo de negócio;
2.
O usuário informa as duas palavras que são sinônimos uma da outra;
3.
O usuário clica em adicionar;
4.
O sistema grava o sinônimo no banco de dados.
62
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário queira excluir um sinônimo do
negócio:
1.
O usuário seleciona o sinônimo que deseja excluir;
2.
O usuário clica em excluir;
3.
O sistema pede a confirmação da exclusão do sinônimo de negócio;
4.
O sistema exclui o sinônimo do negócio do banco de dados.
No Quadro 17 apresenta-se o caso de uso "Cadastrar sinônimos do português".
Quadro 17 - Descrição do caso de uso Cadastrar sinônimos do português
UC14 – Cadastrar sinônimos do português.
Ator: Usuário.
Objetivo: Cadastrar sinônimos na tabela de sinônimos do português.
Pré-condição: O usuário deve ter feito login no sistema.
Pós-condição: O sistema cadastra o sinônimo na tabela.
Cenário Principal:
1.
O usuário pretende cadastrar um sinônimo do português;
2.
O usuário informa as duas palavras que são sinônimos uma da outra;
3.
O usuário clica em adicionar;
4.
O sistema grava o sinônimo no banco de dados.
Cenário Alternativo 01:
No passo 1 do cenário principal, caso o usuário queira excluir um sinônimo do
português:
1.
O usuário seleciona o sinônimo que deseja excluir;
2.
O usuário clica em excluir;
3.
O sistema pede a confirmação da exclusão do sinônimo do português;
4.
O sistema exclui o sinônimo do português do banco de dados.
No Quadro 18 apresenta-se o caso de uso "Cadastrar palavras sem significado".
Quadro 18 - Descrição do caso de uso Cadastrar palavras sem significado
UC15 – Cadastrar palavras sem significado.
Ator: Usuário.
Objetivo: Cadastrar palavras sem significado no sistema.
Pré-condição: O usuário deve ter feito login no sistema.
Pós-condição: O sistema cadastra ou exclui a palavra na tabela de palavras sem
significado.
Cenário Principal:
1.
O usuário pretende cadastrar uma palavra sem significado;
2.
O usuário informa a palavra que não tem significado;
3.
O usuário clica em cadastrar;
4.
O sistema grava a palavra sem significado no banco de dados.
Cenário Alternativo 01:
63
No passo 1 do cenário principal, caso o usuário queira excluir uma palavra sem
significado:
5. O usuário seleciona a palavra sem significado que deseja excluir;
6. O usuário clica em excluir;
7. O sistema pede a confirmação de exclusão da palavra sem significado;
8. O sistema exclui a palavra sem significado do banco de dados.
No Quadro 19 apresenta-se o caso de uso "Gerar relatório de usuários".
Quadro 19 - Descrição do caso de uso Gerar relatório de usuários
UC16 – Gerar relatório de usuários
Ator: Administrador
Objetivo: O sistema deverá emitir relatório dos usuários cadastrados.
Pré-condição: O usuário deverá ter feito login no sistema com nível de administrador.
Pós-condição: Sistema gera o relatório de usuários.
Cenário Principal:
1.
O usuário clica em relatório de usuários cadastrados;
2.
O sistema gera um relatório com todos os usuários cadastrados.
No Quadro 20 apresenta-se o caso de uso "Gerar relatório de clientes".
Quadro 20 - Descrição do caso de uso Gerar relatório de clientes
UC17 – Gerar relatório de clientes.
Ator: Usuário.
Objetivo: O sistema deverá emitir relatório dos clientes cadastrados.
Pré-condição: O usuário deverá ter feito login no sistema.
Pós-condição: Sistema gera o relatório de clientes.
Cenário Principal:
1.
O usuário clica em relatório de clientes cadastrados;
2.
O sistema gera um relatório com todos os clientes cadastrados.
No Quadro 21 apresenta-se o caso de uso "Gerar relatório de Incidentes".
Quadro 21 - Descrição do caso de uso Gerar relatório de incidentes
UC18 – Gerar relatório de incidentes.
Ator: Usuário.
Objetivo: O sistema deverá emitir relatório de incidentes cadastrados.
Pré-condição: O usuário deverá ter feito login no sistema.
Pós-condição: Sistema gera o relatório de incidentes.
Cenário Principal:
1.
O usuário clica em relatório de incidentes;
2.
O sistema gera um relatório com todos os incidentes cadastrados.
64
No Quadro 22 apresenta-se o caso de uso "Gerar relatório de Problemas".
Quadro 22 - Descrição do caso de uso Gerar relatório de problemas
UC19 – Gerar relatório de Problemas.
Ator: Usuário.
Objetivo: O sistema deverá emitir relatório de problemas cadastrados.
Pré-condição: O usuário deverá ter feito login no sistema.
Pós-condição: Sistema gera o relatório de problemas.
Cenário Principal:
1.
O usuário clica em relatório de problemas;
2.
O sistema gera um relatório com todos os problemas cadastrados.
65
APÊNDICE B – Descrição do Dicionário de Dados
Este Apêndice apresenta a descrição das tabelas do banco de dados apresentadas na
seção de especificação deste trabalho. Os tipos de dados utilizados nos atributos são:
a) INT: armazena numéricos inteiros;
b) VARCHAR: armazena caracteres alfanuméricos;
c) DATETIME: armazena dados do tipo data e hora.
No Quadro 23 tem-se o dicionário de dados da tabela “cliente”.
Quadro 23 - Dicionário da tabela cliente
Atributo
Tipo
Descrição
CODCLIENTE
INT
Chave primária
NOMECLIENTE
VARCHAR(50)
Nome do cliente
EMAIL
VARCHAR(50)
E-mail do cliente
TELEFONE
VARCHAR(50)
Telefone do cliente
No Quadro 24 tem-se o dicionário de dados da tabela “usuario”.
Quadro 24 - Dicionário de dados da tabela usuario
Atributo
Tipo
Descrição
CODUSUARIO
INT
Chave primária
NOMEUSUARIO
VARCHAR(50)
Nome do usuário
LOGIN
VARCHAR(20)
Login do usuário
SENHA
VARCHAR(20)
Senha do usuário
NIVEL
VARCHAR(20)
Nível do usuário
No Quadro 25 tem-se o dicionário de dados da tabela “incidente”.
Quadro 25 - Dicionário de dados da tabela incidente
Atributo
Tipo
Descrição
CODINCIDENTE
INT
Chave primária
66
CODERROCONHECIDO
INT
Chave estrangeira
CODCLIENTE
INT
Chave estrangeira
CODITEMCONFIGURACAO INT
Chave estrangeira
CODUSUARIO
INT
Chave estrangeira
SITUACAO
VARCHAR(20)
Situação do incidente
PRIORIDADE
VARCHAR(20)
Prioridade do incidente
DESCRICAOINCIDENTE
VARCHAR(500)
Descrição do incidente
SOLUCAOCONTORNO
VARCHAR(500)
Solução de contorno do incidente
DATAINCIDENTE
DATETIME
Data e hora de registro do incidente
No Quadro 26 tem-se o dicionário de dados da tabela “problema”.
Quadro 26 - Dicionário de dados da tabela problema
Atributo
Tipo
Descrição
CODPROBLEMA
INT
Chave primária
CODITEMCONFIGURACAO INT
Chave estrangeira
CODUSUARIO
INT
Chave estrangeira
CODERROCONHECIDO
INT
Chave estrangeira
CATEGORIA
VARCHAR(20)
Categoria do problema
PRIORIDADE
VARCHAR(20)
Prioridade do problema
SITUACAO
VARCHAR(20)
Situação do problema
DESCRICAOPROBLEMA
VARCHAR(500)
Descrição do problema
SOLUCAOCONTORNO
VARCHAR(500)
Solução de contorno do problema
DATAPROBLEMA
DATETIME
Data e hora de registro do problema
No Quadro 27 tem-se o dicionário de dados da tabela “tramiteincidente”.
Quadro 27 - Dicionário de dados da tabela tramiteIncidente
Atributo
Tipo
Descrição
CODTRAMITEINCIDENTE
INT
Chave primária
CODUSUARIO
INT
Chave estrangeira
CODINCIDENTE
INT
Chave estrangeira
COMENTARIO
VARCHAR(200)
Comentário do trâmite
DATATRAMITE
DATETIME
Data e hora de registro do trâmite
67
No Quadro 28 tem-se o dicionário de dados da tabela “tramiteproblema”.
Quadro 28 - Dicionário de dados da tabela tramiteProblema
Atributo
Tipo
Descrição
CODTRAMITEPROBLEMA
INT
Chave primária
CODUSUARIO
INT
Chave estrangeira
CODPROBLEMA
INT
Chave estrangeira
COMENTARIO
VARCHAR(200)
Comentário do trâmite
DATATRAMITE
DATETIME
Data e hora de registro do trâmite
No Quadro 29 tem-se o dicionário de dados da tabela “itemConfiguracao”.
Quadro 29 - Dicionário de dados da tabela itemConfiguracao
Atributo
Tipo
Descrição
CODITEMCONFIGURACAO INT
Chave primária
CODCLIENTE
INT
Chave estrangeira
ETIQUETAPATRIMONIO
VARCHAR(20)
Código de etiqueta de patrimônio
NSERIE
VARCHAR(20)
Número de série
LOCALINSTALACAO
VARCHAR(50)
Local de instalação
CATEGORIA
VARCHAR(20)
Categoria do item de configuração
DESCRICAO
VARCHAR(500)
Descrição do item de configuração
No Quadro 30 tem-se o dicionário de dados da tabela “erroConhecido”.
Quadro 30 - Dicionário de dados da tabela erroConhecido
Atributo
Tipo
Descrição
CODERROCONHECIDO
INT
Chave primária
CODPROBLEMA
INT
Chave estrangeira
CODUSUARIO
INT
Chave estrangeira
TITULO
VARCHAR(400)
Título do erro conhecido
SOLUCAO
VARCHAR(500)
Solução do erro conhecido
No Quadro 31 tem-se o dicionário de dados da tabela “sinonimos1”.
68
Quadro 31 - Dicionário de dados da tabela sinonimos1
Atributo
Tipo
Descrição
PALAVRA1
VARCHAR(60)
Primeira palavra de sinônimo
PALAVRA2
VARCHAR(60)
Segunda palavra do sinônimo
No Quadro 32 tem-se o dicionário de dados da tabela “sinonimos2”.
Quadro 32 - Dicionário de dados da tabela sinonimos2
Atributo
Tipo
Descrição
PALAVRA1
VARCHAR(60)
Primeira palavra de sinônimo
PALAVRA2
VARCHAR(60)
Segunda palavra do sinônimo
No Quadro 33 tem-se o dicionário de dados da tabela “palavraSemSignificado”.
Quadro 33 - Dicionário de dados da tabela palavraSemSignificado
Atributo
Tipo
Descrição
PALAVRA
VARCHAR(25)
Palavra sem significado
Download

SISTEMA PARA SERVICE DESK COM A UTILIZAÇÃO DAS