Conforme Gómez-Pérez et.al. (2004), como em qualquer recurso de software, o conteúdo das ontologias deve ser avaliado antes de ser reutilizado em outras ontologias ou aplicações. Nesse sentido, podemos dizer que não é recomendável publicar uma ontologia ou implementar uma aplicação de software que dependa de uma ontologia sem fazer a devida validação de seu conteúdo, isto é, seus conceitos, suas
definições, taxonomias e axiomas. Entretanto, garantem os autores, uma ontologia bem definida não é garantia de ausência de problemas. Neste projeto, propomos as atividades de: avaliação, verificação e assessment, conforme descrito a seguir:
• Avaliação de Ontologia: é o julgamento técnico de conteúdo de uma ontologia com uma delimitação de referência (definition frame). A delimitação poderá considerar: requisitos e também perguntas de competência da vida real (GRÜNINGER; FOX, 1995) etc. A avaliação deve estar focada em revisar se cada definição e axiomas estão na ontologia, revisar as coleções de definições citadas explicitamente na ontologia, definições importadas de outras ontologias e definições que podem estar inferidas de outras definições e axiomas.
• Verificação de Ontologia: corresponde às atividades que avaliam se a ontologia foi construída corretamente, isto é, assegura que os conceitos foram implementados corretamente na ontologia conforme requisitos e perguntas de competência.
• Assessment de Ontologias: considera a avaliação do conteúdo da ontologia de diferentes pontos de vista do usuário final. No assessment de ontologias, pretende-se avaliar seguindo os critérios de: consistência e completude. A consistência garante que não será possível ter conclusões contraditórias de definições de entrada válidas. A completude é fundamental para garantir que não existem conceitos abertos e, por conseguinte, garantir que não existe incompletude de definições individuais. Os erros validados serão conforme a taxonomia de avaliação representada na Figura 27.
Figura 27: Taxonomia de avaliação de Ontologias
Fonte: Gómez-Pérez et al. (2004) 3.3 ENGENHARIA DE ONTOLOGIAS
A engenharia de ontologias ou engenharia ontológica como também é denominada, trata do conjunto de metodologias, métodos, atividades, tarefas, artefatos, ciclo de vida e o processo de desenvolvimento, tendo como principal objetivo a criação, evolução ou manutenção de uma ontologia.
Já para Mizoguchi (2001), enquanto a engenharia ontológica trata de conhecimento de domínio específico, complementarmente aos conceitos gerais de categorias, tenta estabelecer teorias, tecnologias para acumular conhecimento com expressividade razoável, utilizando uma hierarquia entre os
conceitos (“é-um”, relacionamento entre conceitos do tipo herança).
Ainda para Mizoguchi (2001), Engenharia Ontológica é sucessora da engenharia do conhecimento, que tem sido considerada como uma tecnologia para a construção de sistemas intensivos de conhecimento. Embora a engenharia de conhecimento contribua para elucidar expertise, organizando-o em uma estrutura computacional, e construção de bases de conhecimento, os pesquisadores de IA têm percebido a necessidade de uma engenharia que pareça mais robusta e, teoricamente, que permite a partilha de conhecimento, reutilização e formulação da resolução de problemas.
Conforme Gómez-Pérez et al. (2004), a engenharia de ontologias é o conjunto de atividades que dizem respeito ao processo de desenvolvimento de ontologias, o ciclo de vida da ontologia, os métodos e as metodologias para construção de ontologias, e as suítes de ferramentas e linguagens que lhes dão suporte. Concordando com Gómez-Pérez et al. (2004), Blomqvist e Sandkuhl (2005) afirmam que a engenharia de ontologias é um processo contínuo de incorporação do ciclo de vida completo para uma ontologia. Para a autora, devem-se considerar tudo, desde a descrição da intenção de sua aplicação, engenharia de requisitos, construção da ontologia, implantação da ontologia na aplicação, manutenção e sua evolução.
Para Bézivin (1998), a Engenharia de Ontologias corresponde às atividades que tratam com meta-modelos. O autor considera que essas atividades estão se tornando mais comuns e presentes no dia-a-dia dos ontologistas. Além disso, a Engenharia de Ontologias deve ser baseada em técnicas e princípios claros e isso reforça a necessidade de ter consolidadas metodologias.
Para Euzenat e Shvaiko (2007), a engenharia de ontologias é um contexto onde usuários são confrontados com ontologias heterogenias e, de forma mais geral, as tarefas de deisgn, implementação, manutenção de aplicações baseadas em ontologias
Ainda para Gómez-Pérez et al. (2004), engenharia ontológica foi originária no contexto da nova ciência que codifica características das coisas, e com o mesmo desafio, ontologistas estão dedicados a extrair a essência das coisas.
A Figura 28 apresenta as atividades essenciais a um método de Engenharia de Ontologias, conforme Sbódio et al. (2010).
Figura 28: Sequência de melhora do Processo de Engenharia de Ontologias
Fonte: Sbódio et al. (2010, tradução nossa)
Para Sbódio et al. (2010), um método de Engenharia de Ontologias deve considerar os seguintes tipos de atividades: (i) atividades de gerência da ontologia, (ii) atividades de desenvolvimento da ontologia e (iii) atividades de suporte à ontologia.
• Atividades de gerência da ontologia: os procedimentos de gerência de ontologia devem incluir definições para planejar tarefas de engenharia de ontologia. Além disso, é necessário definir o controle de
mecanismos de qualidade e passos de garantia da qualidade.
• Atividades de desenvolvimento da ontologia: quando desenvolvemos uma ontologia, é importante que procedimentos sejam definidos no ambiente considerando o estudo de viabilidade. Depois da decisão para construir a ontologia, o engenheiro deve proceder na especificação conceitual, formal e implementar por último a ontologia.
• Atividades de suporte à ontologia: para apoiar o desenvolvimento da ontologia, um conjunto de atividades de apoio deve ser executado. Dentre essas estão: aquisição, avaliação, integração, fusão e alinhamento e gerência de configuração. Essas atividades são executadas em todos os passos do processo de gerência e desenvolvimento. A aquisição de conhecimento pode acontecer em uma forma centralizada ou descentralizada. A aprendizagem e o amadurecimento da ontologia podem ser feito por aquisição de conhecimento (modelagem de conhecimento) ou por técnicas de extração automática de conhecimento.
As macro-etapas de gestão, desenvolvimento e suporte observadas na Engenharia de Ontologias estão presentes em métodos de engenharia, em geral. Quando um projeto de Engenharia de Ontologia é iniciado, por exemplo, devem ser estabelecidas métricas de avaliação (ainda que se reconheça a dificuldade no caso de ontologias, pois as decisões de modelagem são, na maioria dos casos, feitas de forma subjetiva). A seguir, discute-se esse aspecto mais global de organização de processos a que a Engenharia de Ontologias pode ser comparada. Esses elementos serão oportunamente úteis ao entendimento das atividades envolvidas da engenharia de ontologias apresentadas na tese.
3.4 METODOLOGIAS DE ENGENHARIA DE ONTOLOGIAS