• Nenhum resultado encontrado

2.5 Metodologias para desenvolvimento de SBC’s

2.5.3 KADS/CommonKADS

EMYCIN/TEIRESIAS e ONCOCIN/OPAL constitu´ıam-se nas principais referˆencias para o desenvolvimento de sistemas especialistas por volta do final dos anos 70 e in´ıcio dos anos 80. En- tretanto, as limitac¸ ˜oes existentes fomentaram a busca de respostas mais satisfat´orias, especialmente no gargalo do processo, a aquisic¸˜ao de conhecimento. O que se observou neste per´ıodo foi o deslo- camento de soluc¸ ˜oes em torno de ferramentas computacionais para metodologias de construc¸˜ao de sistemas e aquisic¸˜ao de conhecimento, de natureza mais flex´ıveis. Mais do que ferramentas, as meto- dologias, ou modelos, buscam a definic¸˜ao de uma s´erie de passos ou processos atrav´es dos quais um engenheiro de conhecimento garantir´a a produc¸˜ao de sistemas de alta qualidade. Em outras palavras, tais sistemas devem ser confi´aveis, sujeitos a manutenc¸˜ao e devem estar de acordo com os requisi- tos do usu´ario. Metodologias, portanto, posicionam-se num n´ıvel de abstrac¸˜ao mais elevado, o que serviria de diretrizes para o desenvolvimento das pr´oximas ferramentas computacionais. Neste novo contexto, mais generalizado, sistemas especialistas passam ent˜ao a ser denominados de SBC.

Segundo Plant e Gamble (2003) estas metodologias podem ser divididas em dois tipos, se- gundo os requisitos do sistema a ser desenvolvido: modelos industriais, que primam pela velocidade de implementac¸˜ao e execuc¸˜ao do sistema, e modelos formais, cuja principal caracter´ıstica ´e o rigor formal que garanta um desenvolvimento com correc¸˜ao de sistemas mais complexos. Entre os modelos industriais de destaque est˜ao o KBSDLC, tamb´em conhecido como metodologia de Weitzel e Kers- chberg (Weitzel e Kershberg, 1989), o modelo de Miller (Miller, 1989), o modelo AISE ANSI/AIAA (ANSI, 1992), e o MOKA (Stokes, 2001). A caracter´ıstica comum a todos ´e a uma prototipagem r´apida sujeita a ciclos de refinamento at´e um sistema considerado satisfat´orio. J´a as principais meto- dologias formais s˜ao as baseadas em tarefas e as baseadas em meta-conhecimento. Estas metodolo- gias visam essencialmente atenuar a ausˆencia de um maior rigor matem´atico na especificac¸˜ao de um SBC. Para tanto, estes modelos prop˜oem n´ıveis de refinamento, onde um modelo conceitual inicial evolui para uma s´erie de processos, onde cada um descreve um vis˜ao do dom´ınio, como por exemplo, conhecimento, representac¸ ˜ao e processos cognitivos. O principal produto da metodologia formal ´e o KADS/CommonKADS (Schreiber et al., 1999).

A principal argumentac¸˜ao da metodologia KADS ´e a de que um SBC n˜ao ´e simplesmente um container, que deve ser preenchido com conhecimento extra´ıdo de um especialista, mas um mo- delo operacional que exibe algum comportamento desejado dentro do seu ambiente. A metodologia

KADS pode ser vista como o marco que delimita uma mudanc¸a de paradigma, j´a destacada neste cap´ıtulo, quando do deslocamento da abordagem por transferˆencia para a abordagem por modelos. Este ´e o momento em que a engenharia de conhecimento deixa de ser simplesmente o desenvolvi- mento de t´ecnicas de aquisic¸˜ao de conhecimento, caracterizada apenas pela captura e representac¸ ˜ao de um conhecimento elicitado, e passa a ter uma perspectiva em n´ıvel de conhecimento, segundo a denominac¸˜ao de Newell (1982).

Sob este novo modelo de desenvolvimento, o KADS sustenta o projeto de um SBC sob o mesmo conjunto de etapas definido por Buchanan et al. (1983), entretanto, a distinc¸˜ao entre elas n˜ao ´e evidente. Esta nova dimens˜ao dada ao modelo de Buchanan et al. (1983) pode ser compreendida a partir de trˆes princ´ıpios b´asicos da metodologia:

1. A introduc¸˜ao de m ´ultiplos modelos como um meio para o gerenciamento da complexidade do processo de engenharia de conhecimento.

2. Uma estrutura em trˆes camadas principais para a modelagem da per´ıcia requerida.

3. A reutilizac¸ ˜ao de componentes gen´ericos como estruturas para aquisic¸˜ao de conhecimento sob uma abordagem top-down.

A complexidade do sistema ´e agora dividida em uma colec¸˜ao de modelos, onde cada um captura aspectos espec´ıficos do SBC e do ambiente. S˜ao eles: Modelo de Organizac¸ ˜ao, Modelo de Tarefa,

Modelo de Agente, Modelo de Comunicac¸ ˜ao, Modelo de Per´ıcia, Modelo de Projeto, cujas relac¸ ˜oes

s˜ao descritas pela figura 2.6.

O modelo de organizac¸ ˜ao permite estruturar o sistema a partir da especificac¸˜ao das func¸ ˜oes que deve desempenhar, distinguidas em unidades organizacionais. Desta forma permite-se a identificac¸˜ao dos processos do sistema, que subseq¨uentemente podem ser depurados e otimizados.

O modelo de tarefa apresenta uma estrutura hierarquica de tarefas nas quais podem ser organi- zadas as unidades organizacionais definidas no modelo de organizac¸˜ao. Estas tarefas s˜ao definidas a partir de suas entradas, sa´ıdas, controle interno, restric¸ ˜oes de ambiente e capacidades requeridas. O KADS denomina este processo de an´alise de tarefa. O modelo inclui ainda a especificac¸˜ao de que agentes s˜ao designados para as diferentes tarefas.

O modelo de agente define a capacidade de cada agente envolvido em alguma das tarefas do dom´ınio. Isto ´e feito pela especificac¸˜ao do conjunto de propriedades relevantes dos agentes para as diferentes tarefas.

2.5. Metodologias para desenvolvimento de SBC’s 45 requerida Modelo de Organização Modelo de Tarefa Modelo de Modelo de Projeto Modelo de Comunicação Modelo de Agente Definição de problema

requerida requerida Comunicação

Competência Capacidade

Realização computacional Perícia

Figura 2.6: CommonKADS e as relac¸˜oes entre seus modelos segundo Plant e Gamble (2003)

O modelo de comunicac¸ ˜ao ´e respons´avel por identificar a decomposic¸ ˜ao de tarefas, distribu´ı- las e ainda definir as interfaces entres os agentes. A distribuic¸ ˜ao deve ser feita segundo as restric¸ ˜oes do modelo de agente e do modelo de per´ıcia.

O diferencial da abordagem KADS est´a no modelo de per´ıcia, que distingue trˆes tipos de conhecimento para a resoluc¸˜ao de uma tarefa espec´ıfica. Grosso modo, corresponde a etapa de AC da metodologia. Estes tipos correspondem `a vis˜ao est´atica, `a vis˜ao funcional e `a vis˜ao dinˆamica do SBC. Na nomenclatura KADS s˜ao denominados conhecimento do dom´ınio, conhecimento de inferˆencia e

conhecimento de tarefa.

O conhecimento de dom´ınio especifica todo o conhecimento necess´ario para a resoluc¸˜ao de uma tarefa. Este conhecimento inclui a conceitualizac¸ ˜ao do dom´ınio em uma ontologia de dom´ınio (Guarino e Giaretti, 1995), e uma teoria declarativa deste conhecimento. Esta estrutura permite reutilizac¸˜ao.

O conhecimento de inferˆencia especifica os processos de racioc´ınio utilizados pelo SBC. As

ac¸˜oes de inferˆencia s˜ao escolhidas de acordo com o papel executado pelo conhecimento de dom´ınio

tratado. Uma estrutura de inferˆencia determina as dependˆencia entre as suas ac¸ ˜oes e o papel. Esta noc¸˜ao de papel facilita as quest˜oes de reuso deste conhecimento uma vez que lhe provˆe uma vis˜ao independente do dom´ınio.

O conhecimento de tarefa determina a decomposic¸˜ao das tarefas em subtarefas e ac¸˜oes de inferˆencia, associando-as a metas e como estas metas podem ser alcanc¸adas. Este conhecimento tamb´em provˆe os mecanismos de controle sobre as subtarefas e as ac¸˜oes de inferˆencia.

Com a separac¸˜ao expl´ıcita entre o conhecimento de dom´ınio da descric¸˜ao gen´erica dos m´etodos de resoluc¸˜ao de problemas e do conhecimento de tarefa, habilitam-se pelo menos dois tipos de reuso. O primeiro tipo ´e o reuso de conhecimento de dom´ınio para a resoluc¸˜ao de diferentes tipos de tarefas por diferentes m´etodos de resoluc¸˜ao de tarefas. O segundo tipo ´e o reuso de m´etodos de resoluc¸˜ao de problemas em diferentes dom´ınios, definindo uma nova vis˜ao de um outro conhecimento de dom´ınio. A extens˜ao do KADS, o CommomKADS, permite o reuso e a configurac¸˜ao destes componentes do modelo de per´ıcia.

O modelo de per´ıcia ´e especificado por uma linguagem semi-formal, a Linguagem de Modela- gem Conceitual (do inglˆes “Conceptual Modelling Language”) (CML), e por uma linguagem formal, a ML, baseada em l´ogica de predicados de primeira ordem. A primeira ´e utilizada para a comunicac¸˜ao entre engenheiro de conhecimento e especialista, enquanto a segunda ´e utilizada para a formalizac¸˜ao do modelo.

Finalmente, o modelo de projeto ´e a realizac¸˜ao dos requisitos funcionais especificados nos modelos de per´ıcia e comunicac¸˜ao. O modelo de projeto, ent˜ao, especifica a arquitetura do sistema e os mecanismos computacionais para a implementac¸˜ao as ac¸˜oes de inferˆencia.

O KADS suporta o desenvolvimento de atividades segundo uma construc¸˜ao gradual dos di- ferentes modelos, segundo um modelo c´ıclico, como o modelo de desenvolvimento de software em espiral (Pressman, 1995). Sua utilizac¸˜ao deve-se, especialmente, a uma abordagem que visa a minimizac¸˜ao de riscos de falhas de projeto.