Documentos de Académico
Documentos de Profesional
Documentos de Cultura
VILA VELHA
2010
VILA VELHA
2010
AGRADECIMENTOS
A Deus, pelas sempre presentes segundas chances. Por nunca ter me apresentado uma situao mais difcil do que a capacidade de superao alcanada atravs
delas e pelo apoio das pessoas que coloca em minha vida para ajudar-me a enfrentlas. Obrigada, meu Senhor e meu Deus. V Teu fruto. Tua vitria. Graas.
beno de amor e carinho que a minha famlia. Ao meu porto seguro e lar.
queles dos braos abertos e sorrisos sem reserva. Das risadas e ombros para lgrimas. Quem me faz ser quem sou e lutar por meus objetivos. Meu muito obrigada.
A minha me e amiga Sandra, sempre to zelosa, paciente, incentivadora, inabalvel em sua f em minha vitria. Sem seu apoio essa graduao certamente no seria
possvel. Obrigada pelas oraes, pelas noites mal dormidas, pelos beijos de bom
dia, pelas horas de estrada, pelas filas enfrentadas, pela ajuda de fim de ms, pelas
ligaes carregadas de saudade, pelo esforo de ltima hora, pelas batalhas perdidas,
pela mo que reergue-me, pelo insistente otimismo, pelo zelo, pelo caracterstico bom
humor, por ser o incondicional e mais bonito exemplar de amor que conheo. Por ser a
Rocha constante em minha vida. Todo o meu imensurvel amor, devoo, admirao
e eterno agradecimento.
Ao meu pai Aldo, por todo seu rduo trabalho e esforo. Pelas noites viradas e
preocupao com nosso bem estar. Pelo incentivo e valorizao. Pelo amor e apoio
incondicionais. Meu amor e meu muito obrigada.
Ao orientador, professor e amigo Erlon Pinheiro, pela sua pacincia e calma durante os momentos difceis e incertos da jornada. Pela sua experincia e clareza de
pensamento no auxlio construo de idias. Pelo carinho e ateno com que conduz sua orientao. Muito obrigada.
s tias-mes Lilian, Cida e Arilana, por todas as incontveis oraes, todo o amor
e devoo.
Ao meu irmo Filipe, to decisivo durante as inseguranas de fim de jornada. Obrigada pelo apoio.
Aos professores e incentivadores Leo Muniz, Vinicius Rosalen e Coordenador Cristiano Biancardi. Pelos incontveis momentos de auxlio no decorrer do curso. Pela
ateno irreservada. Pelo incentivo excelncia acadmica. Pelo bom humor.
Aos amigos e colegas de curso, pois sei que sem o auxlio indireto dessas pessoas,
a caminhada teria sido muito mais tortuosa. Meu muito obrigada.
Aos amigos Fabio, Thiago, Driely, Felipe e Edgar pela caminhada conjunta. Pelo
auxlio mtuo e pelo apoio. Pela amizade iniciada e propagada durante o curso. Meu
muito obrigada.
Aos amigos Halysson, Juviani e Rodrigo, com quem dividi momentos que levo para
o resto da vida. Pela fora e determinao contagiantes, pelo carinho sem igual, pela
pacincia e compreenso dignas de famlia.
Aos amigos eternos Lariane, Hugo, Luciana e Maria Luza por sua onipresena
mesmo distncia. Pelo incondicional amor, apoio e irrevogvel crena em minha
vitria. Pelas palavras que impulsionam e acalmam, incentivam e consolam, fazem rir
e chorar. Todo o meu amor e meu muito obrigada.
Aos amigos Lucas e Gabriella pelo companheirismo e incondicional apoio. Pelos
momentos de luta pesada nos quais se recusam a abandonar a fronte de batalha.
Pelos momentos de descontrao to necessrio para minha sade mental e perseverana. Pelo incentivo minha escolha de carreira. Pela amizade incondicional e
irrestrita. Muito obrigada.
LISTA DE TABELAS
1
Regras de negcio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
50
51
52
LISTA DE FIGURAS
1
24
NeuroCase. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
29
30
32
34
34
35
36
10
36
11
37
12
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
13
38
14
39
15
40
16
41
17
46
18
48
19
54
20
54
21
56
22
57
23
59
24
60
25
62
26
63
27
64
28
65
29
66
30
. . . . . . . . . . . . . . . . . . . .
67
31
69
32
Plataforma Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
33
70
34
72
35
Navegabilidade de interface. . . . . . . . . . . . . . . . . . . . . . . . .
73
36
79
37
79
38
80
39
80
40
80
41
81
42
82
43
83
LISTA DE SIGLAS
API
BC
Base de Conhecimento.
BRMS
EC
Engenheiro do Conhecimento.
GPEB
IA
Inteligncia Artificial.
IDE
J2EE
MVC
Model-View-Controller (Modelo-Viso-Controle).
OO
Orientao a Objetos.
RBC
SE
Sistema Especialista.
SUMRIO
RESUMO
1 INTRODUO
17
1.1 JUSTIFICATIVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
1.2 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
19
19
19
20
2 LEVANTAMENTO BIBLIOGRFICO
21
2.1 HISTRICO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
22
2.2.1 Componentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
27
2.3.1 Exemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
30
31
31
31
33
33
33
3.2.2 Regras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
35
35
3.2.5 Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
37
. . . . . . . . . . . . . . . . . . . . . . .
37
3.3.1 Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.3.2 Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
39
40
4 LEVANTAMENTO DE REQUISITOS
42
42
42
46
47
47
48
4.3 AMBIENTES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
48
48
49
49
50
50
51
52
5 ESPECIFICAO DE ANLISE
53
53
54
55
55
56
57
61
61
61
61
61
66
66
67
6 ESPECIFICAO DE PROJETO
68
68
. . . . . . . . . . . . . . . . . .
68
. . . . . . . . . . . . . . . . . . .
70
71
6.2 ARQUITETURA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
. . . . . . . . . . . . . . . . . . . . . . . . . .
72
72
74
74
7 CONCLUSO
7.1 CONHECIMENTO ADQUIRIDO
76
. . . . . . . . . . . . . . . . . . . . . .
76
76
77
77
8 ANEXO
79
REFERNCIAS
84
RESUMO
O projeto apresenta o desenvolvimento de um prottipo de Sistema Especialista voltado ao auxlio do profissional de Educao na capacitao de estudantes de Medicina
em tcnicas de diagnstico. Trata-se de um software responsvel por gerar pacientes
virtuais por meio de inferncias em uma Base de Conhecimento lgica, composta por
fatos e regras que modelam o conhecimento de um especialista. De forma direta e
prtica, utiliza-se da metodologia investigativa de ensino para promover uma soluo
computacional que valide os conhecimentos adquiridos em sala de aula. O prottipo
possui integrao de dois diferentes paradigmas de programao para alcanar seus
objetivos: o Lgico e o Orientado a Objetos. Para tanto, fez-se uso do Sistema de
Gerncia de Regras de Negcio Drools utilizado durante a criao e manuteno de
doenas e sintomas associados.
Palavras-chave: Sistema Especialista, Inteligncia Artificial, Sistemas Computacionais, Sistemas Mdicos, Drools Rule Engine.
17
INTRODUO
Sistemas Especialistas (SE) foram criados para resolver problemas em um determinado domnio onde o conhecimento muito especfico e fortemente limitado aos
especialistas da rea. Tais sistemas podem ser definidos como programas que simulam o raciocnio de seres humanos na soluo de problemas complexos do mundo
real. Um SE Mdico prope-se a trazer tal perspectiva de solues de problemas
para o mbito clnico, comprometendo-se a ser fiel percia humana e aproximar-se
ao mximo das concluses que um perito na rea alcanaria na soluo dos mesmos problemas. Nesse projeto, apresenta-se o prottipo de um Sistema Especialista
Educacional voltado para o Diagnstico Mdico. Trata-se de um software responsvel
por validar diagnsticos de doenas baseado em uma Base de Conhecimento lgica.
A Base de Conhecimento do sistema ser construda de acordo com as informaes
obtidas na literatura sobre as doenas, como tambm no conhecimento de especialistas da rea. O sistema proposto tem como objetivo principal auxiliar os profissionais
de educao na capacitao de estudantes da rea mdica, ampliando seus conhecimentos e otimizando o tempo em sala de aula.
Sistemas Especialistas tm sido usados como auxlio ao processo de tomada de
deciso desde seu surgimento nos anos 70 [8]. Nascidos da necessidade sempre
crescente de emular o conhecimento humano e sua forma de raciocnio lgico, os
SEs primitivos surgiram com a esperana de que, num futuro prximo, o Especialista utpico se mostrasse invariavelmente exato, alm de constante e autonomamente
evolutivo. A associao desses conceitos tendncia da Inteligncia Artificial (IA) foi
naturalmente transposta para a rea educacional com o MYCIN em 1976 [8]. Na Era
da Onipresena Informacional, a inteno de replicar, e at mesmo aperfeioar o tutor
educacional, apresenta-se como fator chave para a evangelizao do conhecimento
especfico. Com o apelo do vislumbre de uma experincia educacional livre de restries temporais ou geogrficas e sem a necessidade presencial do detentor humano
do conhecimento, os Sistemas Especialistas Educativos apresentam-se como o futuro
18
da Educao, ao passo que promovem a reestruturao e modernizao das convenes sociais de ensino e a busca imperativa por novas formar de ensinar. Na rea
mdica, os Sistemas Especialistas mostraram-se ainda mais fortes, com esforos que
impulsionaram a prpria rea de Inteligncia Artificial ao redor do globo. Em territrio
nacional, imprecedentes foram os avanos do Grupo de Pesquisas em Engenharia
Biomdica (GPEB) da Universidade Federal de Santa Catarina, que desenvolveu Sistemas Especialistas nas mais especficas reas mdicas promovendo a capacitao
de profissionais da rea, alm da propagao de Engenheiros do Conhecimento especializados em Inteligncia Artificial Mdica [1].
1.1 JUSTIFICATIVA
O processo de aprendizado na rea Mdica envolto principalmente em tcnicas de repetio de prticas, tentativa e erro e pesquisa cientfica. Durante a execuo dessas tarefas estudantes, ainda no experientes, deparam-se com situaes
delicadas onde apenas a prtica recursiva leva ao aprimoramento do conhecimento
pesquisado. A rea Mdica , no entanto, uma rea que possui alta sensibilidade a
erros. Um diagnstico faltoso pode significar a perda da vida de um paciente. Dentro
desse contexto, alternativas para a prtica de diagnstico, como a presente prtica
virtual, trazem aos estudantes a segurana do aprendizado em um ambiente onde
seus erros no causam fatalidades e sim a oportunidade de acertar em uma prxima
tentativa. O presente projeto objetiva desenvolver o prottipo de uma soluo computacional capaz de emular a criao de pacientes virtuais. Estudantes de Medicina
podem interagir com esses pacientes, que possuem uma dentre uma coleo limitada
de doenas armazenadas em uma base de conhecimento. A meta do estudante ,
atravs de uma conversa com o paciente, apontar qual doena ele possui. Para alcanar essa meta, toma-se como hiptese de pesquisa a implementao multi-paradigma,
integrando uma aplicao Orientada a Objetos a uma Base de Conhecimentos lgica.
19
1.2 OBJETIVOS
1.2.1 Objetivo Geral
O objetivo da presente pesquisa desenvolver uma ferramenta educativa que
combine os dois diferentes paradigmas de programao, Lgico e Orientado a Objetos. Essa ferramenta ir auxiliar estudantes de Medicina a colocar em prova suas
capacidades no processo de diagnstico. Como exemplo, ser desenvolvido um prottipo do sistema especialista Hippocrates que testa o diagnstico de diversas doenas.
20
Anlise do problema, definindo a qual camada de implementao caberia a modelagem dos aspectos do prottipo.
Desenvolver um prottipo baseado nas pesquisas realizadas.
21
LEVANTAMENTO
BIBLIOGRFICO
2.1 HISTRICO
No incio dos anos 50, os fundamentos da Inteligncia Artificial comearam a possibilitar a representao do conhecimento lgico utilizando-se da Lgica Matemtica e
da Teoria das Funes Recursivas. Essa base terica para implementaes de estruturas declarativas, como listas e fatos, passaram a possibilitar o desenvolvimento de
expresses simblicas recursivas [2].
J nos anos 60, foram iniciadas as tentativas de simulao do processo de pensamento, quando os pesquisadores de IA tentavam emular a forma com que o ser
humano chegava a decises atravs da manipulao do seu conhecimento. Porm,
com recursos limitados e progressos isolados, as dificuldades ainda mostravam-se
maiores e mais significativas que os avanos alcanados na rea. [9].
Na rea de IA aplicada, aps uma dcada de trabalho, emergiram trs subreas
principais: Sistemas Especialistas, Linguagem Natural e Robtica - incluindo viso,
fala e locomoo [3]. A partir da, no incio da dcada de 80, os Sistemas Especialistas comearam a surgir no mbito comercial, embora ainda, de forma no muito
significativa. A primeira companhia formada exclusivamente para produzir sistemas
especialistas foi a Intelli Genetics, no campo de engenharia gentica e com tcnicos
oriundos do Projeto de Programao Heurstica da Universidade de Stanford.
22
23
Engenheiro do Conhecimento
Profissional da rea computacional responsvel pela construo do Sistema Especialista e da coleta de conhecimento especfico.
Usurio
Interador final. Papel que far uso do produto desenvolvido.
2.2.1 Componentes
A Figura 1 representa a arquitetura padro utilizada em Sistemas Especialistas e
seus componentes. Essa arquitetura, no entanto, passvel de adaptaes particulares a cada escopo.
Base de Conhecimento
Responsvel pelo crescente armazenamento de fatos e regras e recurso nico
do processo de inferncias. Nesse processo, todo o conhecimento da base utilizado, logo um fato ou regra adquirido pode modificar todo o processo de concluso
de problemas. Uma Base de Conhecimento bem estruturada vital para o bom funcionamento de um Sistema Especialista.
Aquisio de Conhecimento
considerada a parte mais complexa da construo de um Sistema Especialista,
tendo em vista que o processo indutivo responsvel por decidir o que ou no relevante base feito por um Engenheiro do Conhecimento, e no por um especialista
24
Mtodo Intermedirio
Mtodo que toma posse integralmente do trabalho de um Engenheiro do Conhecimento para que a Base de Conhecimento seja alimentada. Todo conhecimento
adquirido atravs da interseo do profissional que realiza entrevistas e pesquisas
com peritos da rea para compreender a rea de estudo. Ao empregar tal mtodo, o
Engenheiro pode fazer uso das seguintes tcnicas:
Observao:
Define-se pelo acompanhamento in loco do trabalho do especialista da rea.
Essa observao gera a coleta de informaes que posteriormente sero adicionadas base. Essa tcnica, apesar de demandar menos envolvimento do
25
Mtodo Semi-intermedirio
Nesse mtodo, o Engenheiro do Conhecimento faz uso de ferramentas computacionais auxiliadoras no processo de construo do conhecimento.
Mtodo Semidireto
No mtodo semidireto, parte da coleta do conhecimento especfico dada atravs
do contato direto do perito com ferramentas computacionais desenvolvidas para tal
coleta. Tal processo exige treinamento prvio do perito.
26
mente recebidos por meio de ferramentas computacionais heursticas, que fazem uso
de tcnicas de implementao de redes neurais para processar as informaes provindas da interao com o especialista. Toda a codificao de regras e fatos, nesse
momento, j no necessria atravs do Engenheiro. No entanto, preciso que o
profissional do conhecimento valide os dados adquiridos, atravs de testes de consistncia da base.
Mquina de Inferncia
Trata-se do interpretador e escalonador de regras. Profundamente associado
Base de Conhecimento, trabalham juntos no processo de desenvolvimento do pensamento lgico (buscar, analisar e concluir) visando a encontrar solues e a gerar
novos conhecimentos a partir do existente.
Sistema de Consulta
Segundo [5], o Sistema de Consulta uma camada de acesso ao usurio final
atravs de uma interface amigvel. A maioria dos sistemas utiliza-se de perguntas
pr-formatadas e respostas de mltipla escolha selecionadas pelo usurio. Podese utilizar uma linguagem sinttica simples e limitada, prpria para a utilizao do
sistema.
Sistema de Justificao
Obrigatrio nos Sistemas Especialistas, define-se por justificativas compreensveis ao usurio que explicitam as regras e fatos responsveis por validar a concluso
alcanada.
Quadro Negro
rea de trabalho do Sistema Especialista, responsvel pelo armazenamento temporrio de concluses, hipteses, probabilidades calculadas e possveis solues.
Embora todos os Sistemas Especialistas se utilizem de um Quadro Negro, nem todos o tm como componente explcito.
27
2.3.1 Exemplos
Prottipo de Software para o auxlio no aprendizado em Medicina
Trata-se de um prottipo de um sistema especialista para o auxlio no aprendizado
aplicado a um caso na medicina - o hipertireoidismo. O objetivo do prottipo foi o desenvolvimento de uma ferramenta didtica multimdia para a rea mdica com idioma
nacional, com o intuito de proporcionar um maior dinamismo ao ensino-diagnstico.
Este prottipo foi desenvolvido sob um modelo contendo os seguintes componentes: Base de Conhecimento, mquina de inferncia e a interface explanatria [7].
As semelhanas vlidas de contexto comum seriam a ambientao Mdica do
Sistema em questo, alm da tcnica de regras de produo como forma de representao do conhecimento.
Representao e indexao de casos em Sistemas de Raciocnio baseado em
casos para domnio da Neurologia
Tem por objetivo desenvolver um mecanismo de representao e indexao de casos que possa ser utilizado, de forma efetiva, em um sistema de ajuda ao diagnstico
28
no domnio da Neurologia.
Na primeira etapa so apresentados os mdulos que compem o prottipo. A
Figura 2 mostra a tela principal, onde possvel visualizar trs opes: Casos, Tabelas
e Relatrios.
O mdulo Casos representa toda a lgica de aplicao do sistema e apresenta
trs divises: Novo Caso, Altera Caso e Funcionalidades. No mdulo Tabelas vale
destacar a presena dos Vocabulrios, onde se encontra todo o histrico do paciente,
inclusive seus exames anteriores, tanto neurolgicos quanto complementares. O M-
Figura 2: NeuroCase.
dulo Relatrios responsvel pela impresso do relatrio dos casos. Cada caso
composto por duas pginas constando a confirmao e descrio da soluo do problema. Ao final, apresenta-se o diagnstico preciso do paciente.
Alm de utilizar o conceito de Sistemas Especialistas (SE), o trabalho utiliza a estratgia de raciocnio sobre essa Base de Conhecimento. O Raciocnio Baseado em
Casos (RBC), em suma, visa a adaptar solues que foram utilizadas para resoluo de problemas anteriores, para serem utilizadas na soluo de um novo problema.
Dessa forma, faz-se o sistema "relembrar"de casos relevantes e reutiliz-los em uma
nova soluo. Essa estratgia abrange a representao e indexao de casos, organizao desses casos, as funes de medidas de similaridades, bem como os algoritmos para a recuperao dos casos fontes.
Este trabalho especfico para rea neurolgica, com objetivo de modelar o raciocnio do especialista em Neurologia frente s tarefas de diagnstico e prescrio
mdica [6].
29
30
31
32
Uma base de conhecimento com muitas regras, no entanto, pode significar que
uma mesma assertiva de um fato seja dada como verdadeira para mltiplas regras.
Esse caso denominado na engine como um conflito. Para priorizar a execuo
de regras e ordenar suas chamadas durante o processo de inferncia, a Drools usa
Agendas como uma estratgia de resoluo de conflitos. Em uma Agenda, possvel
atribuir um grau de prioridade a regras. Regras com maior grau de prioridade so
chamadas primeiro durante a execuo.
Existem dois principais mtodos de execuo para sistemas de regras: o Encadeamento Para Frente ou Para Trs.
O Encadeamento Para Trs inicia sua execuo a partir de uma concluso, que
o motor de inferncia procura satisfazer. Se no puder, o motor procura concluses
que possa satisfazer, denominadas sub-objetivos, e vai inferindo de forma reversa at
alcanar a concluso inicial, que pode possuir ou no mais sub-objetivos. O Prolog
um exemplo de engine que utiliza o Encadeamento Para Trs.
J a Drools faz uso do Encadeamento Para Frente, um mtodo reacionrio, ou
seja, suas concluses so tomadas a partir da conseqncia de fatos sendo analisados e resultando em regras sendo simultaneamente verdadeiras ou no. Essas regras
so programadas na Agenda e, por fim, executadas. A engine inicia com um fato, ele
se propaga e gera uma concluso.
A Figura 5 mostra uma viso geral do Motor de Inferncia Drools.
33
34
conhecimento em Java utilizando as bibliotecas Drools. Vale notar que essa criao
dada com a instanciao clssica de um objeto KnowledgeBuilder, descrito na API.
3.2.2 Regras
Regras, no entanto, so implementadas em um arquivo prprio .drl, onde sua lgica de interpretao declarada. Abaixo, um exemplo de regra para a doena gripe
e seu sintoma associado.
35
36
3.2.5 Query
As consultas so dadas atravs de queries (Consultas. Singular: query.) criadas
dentro de arquivos .drl. Queries podem, posteriormente, ser chamadas pelo cdigo
Java, que armazena seu resultado num objeto QueryResults. Queries so utilizadas
para extrair conjunto de fatos definidos na base de conhecimento de forma direta [12].
Similares a consultas a banco de dados, queries oferecem a flexibilidade e rapidez em
recuperao de informaes durante o desenvolvimento desses sistemas. Na Figura
10 um exemplo de query utilizada no prottipo.
37
3.3.1 Java
Primeiramente, necessrio instalar a mquina virtual Java e seu kit de desenvolvimento. No site oficial da Oracle possvel fazer o download da verso mais atual
disponvel (http://www.oracle.com/technetwork/java/javase/downloads/index.html).
Instale o kit.
38
3.3.2 Eclipse
Agora preciso instalar o Eclipse, uma interface de desenvolvimento para criao de projetos Java. Durante o presente projeto, foi utilizado o Eclipe Helios Release 1, porm pode-se instalar a variao que mais agrada o desenvolvedor. As verses mais atuais da interface podem ser adquiridas atravs do site oficial do Eclipse
(http://www.eclipse.org/downloads/).
39
40
41
Finalize a criao do projeto. Ele deve parecer com a estruturao da Figura 16.
42
LEVANTAMENTO DE
REQUISITOS
43
Amigdalite
Dor de garganta.
Dores pelo corpo.
Febre.
Cansao.
Falta de apetite.
Dificuldade respiratria.
Dor de cabea.
44
Asma
Tosse.
Catarro.
Dificuldade respiratria.
Ardncia e/ou dor peitoral.
Chiado peitoral.
Catapora
Febre.
Erupes cutneas.
Rubola
Febre.
Aumento dos gnglios linfticos.
Erupes cutneas.
Sarampo
Febre.
Tosse rouca.
Coriza.
Conjuntivite.
Fotofobia.
45
46
47
48
4.3 AMBIENTES
O esforo do prottipo foi concentrado principalmente na interao com o estudante de Medicina, porm, foi prototipado um sistema inicial de segurana por login
atravs de nome de usurio e senha. Dessa forma, fez-se necessria a criao de um
ambiente administrativo que gerenciasse as contas de usurio.
49
Nome
Descrio
Nome
Descrio
50
Fluxos Alternativos
Regras de negcio
51
Fluxos Alternativos
Regras de negcio
52
53
ESPECIFICAO DE ANLISE
54
55
56
Modelo (Model)
Estruturao lgica dos dados.
Viso (View )
Coleo de classes que do suporte interface com o usurio.
Controle (Controller )
Realiza a comunicao entre o modelo e a visualizao.
57
58
KnowledgeManager
Responsvel por toda a comunicao com a base lgica, o KnowledgeManager
o grande centralizador de conhecimento do sistema. Cabe a ele a criao da
base de conhecimento e sua manuteno, tratando entrada de regras e fatos,
consultas e modificaes durante execuo.
PatientManager
Gerente responsvel pela gerncia de pacientes virtuais do prottipo. Cabe ao
PatientManager a criao de pacientes virtuais, bem como todo o processo de
interao do mesmo com o usurio.
ScreenManager
Gerente responsvel pela integrao das camadas de controle e apresentao
do sistema. Esse componente responsvel pela transio de telas e propagao de aes provindas da interao com o usurio.
A figura 24 explana as classes de Modelo da camada e seus relacionamentos
internos.
59
60
61
62
63
64
65
66
67
68
ESPECIFICAO DE PROJETO
69
Java Swing
API Java para desenvolvimento de interfaces grficas, o Swing traz uma agilidade
bem vinda criao de sistemas. Ao contrrio da maioria das APIs grficas, o Swing
se encarrega da prpria renderizao dos componentes de interao, tirando essa
responsabilidade do sistema operacional, como comumente efetuado.
Possui a desvantagem de ser, por isso, menos performtico, porm em um prottipo inicial, a API Swing encaixa-se com perfeio necessidade em mos.
70
71
72
6.2 ARQUITETURA
Dividido em camadas, o prottipo compartimentaliza as diferentes reas de implementao em trs reas especficas: Apresentao, Aplicao, Integrao e Lgica,
como mostrado abaixo:
73
Possui apenas tratamento de eventos e redirecionamento dos mesmos. Nenhuma regra de negcio implementada na camada de apresentao.
Baseada em Java Swing, o prottipo apresenta uma interface composta por: (1) trs
telas principais que possibilitam a navegao entre os mdulos existentes e (2) telas
auxiliares de alerta e mensagens.
Navegabilidade
Mensagens e Alertas
Alerta ao Sair
Uma caixa de dilogo alerta o estudante de que, ao sair durante uma seo de
questionrio com o paciente virtual, seu progresso no ser salvo e aconselha-o a
finalizar a seo antes de abandonar o sistema.
74
75
76
CONCLUSO
77
78
79
ANEXO
80
81
82
83
84
REFERNCIAS
[1] Linares, K. S.. Sistema Especialista Nebuloso Para Diagnstico Mdico. 1997.
[2] Diverio, T. e Menezes ,P.. Teoria da Computao: mquinas universais e computabilidade - 2o Edio. 2000.
[3] Flores, C.D.. Sociedades Artificiais: a nova fronteira da inteligncia nas mquinas.
2003.
[4] Alexandre, A.B.. Prottipo de um Sistema Especialista utilizando a ferramenta Expert Sinta Shell para auxlio no setor de suporte de uma Software House.. 2000.
[5] Pereira, M.A.. Sistema Especialista On-line de Auxlio ao Diagnstico de Cncer
de Prstata.. 2004.
[6] Rosa, J.. Prottipo de Software para o auxlio no aprendizado em Medicina. 2000.
[7] Azevedo, D.J.. Representao e Indexao de casos em Sistemas de Raciocnio
baseado em casos para domnio da Neurologia.. 2002.
[8] Shortliffe, E.. Computer-Based Medical Consultations: mycin. 1976.
[9] Calejo, M.. Interprolog: a declarative Java-Prolog interface. 2001.
[10] Bezerra, E.. Princpios de Anlise e Projeto de Sistemas com UML. 2006.
[11] Santos, G.. Aplicao do Padro de Projeto MVC com JSF. 2008.
[12] JBoss. Drools Expert User Guide. 2010.