OntoExper-SPL

uma ontologia de apoio a experimentos de linha de produto de software

UNIVERSIDADE ESTADUAL DE MARINGÁ
CENTRO DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA
PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO

Henrique Vignando
Orientador: Prof. Dr. Edson A. Oliveira Junior

Agenda

  1. Introdução/Contextualização
  2. Fundamentação Teórica
  3. OntoExper-SPL 
  4. Avaliação Empírica da OntoExper-SPL
  5. Protótipo de um Sistema de Recomendação para OntoExper-SPL
  6. Conclusão

Introdução/Contextualização

  1. Contexto/Problemática
  2. Questão de Pesquisa
  3. Objetivos
  4. Metodologia

Introdução/Contextualização

Contexto

Experimentação em LPS

 

  • Fornece evidencias da teoria para o mundo real
  • Aumenta a capacidade de replicação
  • Melhoria continua nos processos de ES

Introdução/Contextualização

Problemática

  • Falta de formalização para experimentos em LPS
  • Carência de documentação adequada

Ontologia

  • Formalização de conhecimento
  • Padronização de dados e metadados sobre experimentos em LPS
  • Inviabilidade na replicação e auditoria dos estudos em LPS

Gera

  • Interoperabilidade, troca de informações e replicação dos estudos

Gera

Questão de Pesquisa

Como formalizar o conhecimento de experimentação em LPS?

Introdução/Contextualização

Objetivo Geral

  • Especificar uma ontologia que represente formalmente o estado da arte e do prático sobre experimentos de LPS

Objetivo Específicos

  • Gerar e representar metadados sobre experimentos de LPS
  • Avaliar empiricamente a ontologia proposta

Introdução/Contextualização

Metodologia

Introdução/Contextualização

Fundamentação Teórica

  1. Linha de Produto de Software
  2. Experimentação em Engenharia de Software
  3. Experimentos de LPS
  4. Ontologias
    1. Definição
    2. Classificação
    3. Ontologias para ES
  5. Trabalhos Relacionados

Linha de Produto de Software

Fundamentação Teórica

Fundamentação Teórica

Experimentação em Engenharia de Software

Fundamentação Teórica

Experimentos de LPS

  • Mapeamento sistemático (MS)
  • 174 experimentos de LPS
  • 11 Questões de pesquisa
  • +70 Atributos para experimentos de LPS (elementos experimentais)

Furtado, 2018

Fundamentação Teórica

  • 28 diretrizes para avaliar a qualidade de experimentos de LPS
  • documentar de forma apropriada

  • permitir o compartilhamento

  • permitir a replicação

  • permitir auditoria

Objetivo

  • Modelagem conceitual para apresentar os conceitos de experimentos abordados

Experimentos de LPS

Furtado, 2018

Fundamentação Teórica

  • Experimento possui Material Experimental
  • Material Experimental possui Nome da LPS
  • Nome da LPS possui Fonte da LPS

Experimentos de LPS

Furtado, 2018

Fundamentação Teórica

Ontologias

Estudo da descrição das coisas do mudo real

Modelagem de dados para representar um conjunto de conceitos dentro de um domínio e os relacionamentos entre eles

Uma ontologia define primitiva/diretrizes para um domínio de conhecimento

Computação

Fundamentação Teórica

  • Representação do conhecimento
    • Logica descritiva
  • Definição de regras de combinação entre dos termos e seus relacionamentos

Morais e Ambrósio (2007)

PoC RecSys

Ontologias

  • Benefícios:
    • Comunicação
    • Formalização
    • Representação do conhecimento

Guizzardi (2000)

Fundamentação Teórica

Ontologias - Classificação

Genérica

conceitos genéricos, ex. espaço, tempo

de Domínio

conceitos de domínios particulares, descreve um "mini-mundo"

de Tarefas

conceitos sobre resoluções de problema

de Aplicação

conceitos sobre dependentes do domínio e das tarefas particulares

de Representação

conceitos que fundamentam o formalismo e deixar claro as informações conceituadas

Fundamentação Teórica

Ontologias - para ES

Fundamentação Teórica

Trabalhos Relacionados

  • Garcia et al. (2008)
    • EXPEROntology por meio de diagramas de classes UML
  • Cruzes et al. (2007) 
    • trata de uma técnica para extrair meta-informação de experimentos em ES
  • Cruz et al. (2012)
    • ciclo de vida de experimentos científicos
    • explorar a semântica de metadados.
  • Blondet et al. (2016) e Soldatova e King (2006)
    • tratam ontologias no contexto geral de experimentos
  • Gelernter e Jha (2016)
    • desafios de avaliar uma ontologia

OntoExper-SPL

  1. Concepção

  2. Projeto

    1. Modelagem com Protégé

    2. Povoamento com Python

  3. Exemplo de Aplicação

  4. Avaliação Preliminar

OntoExper-SPL

  • Metodologia MFPFO (Multi-Faceted Product Family Ontology) - etapas:

    • Construção de uma taxonomia da família de produtos

    • Extração de entidades

    • Avaliação e validação da ontologia

Concepção

  • Tipologia Almeida e Bax (2003) - definição:
    • quanto à função: é uma ontologia de domínio
    • quanto ao grau de formalismo: é uma ontologia semi formal
    • quanto à aplicação: é uma ontologia de especificação,
    • quanto à estrutura: é uma ontologia de domínio
    • quanto ao conteúdo: é uma ontologia para modelagem de conhecimento e de domínio.

OntoExper-SPL

Concepção

1

2

3

4

OntoExper-SPL

Projeto Modelagem

  • Modelagem com 
    • Definição das classes
    • Definição das propriedades de objeto
    • Definição das propriedades dos dados
    • Artefato gerado pelo Protégé (.owl)

OntoExper-SPL

Projeto - Modelage

OntoExper-SPL

Projeto Modelage

OntoExper-SPL

Projeto Povoamento

  • Problemática
    • Inserção manual das propriedades dos indivíduos 
    • 86 propriedade de dados
    • 8 propriedade de objeto
    • 211 indivíduos
    • 94 * 211 = 19.834 operações manuais

OntoExper-SPL

  • Solução
    • Linguagem Python com bibliotecas
      • Pandas
      • OwlReady2
    • Script ETL
      • Extração dos dados
      • Mapeamento das propriedades
      • Manipulação dos dados
      • Inserção dos indivíduos 

.owl com 5 MB

Projeto Povoamento

.owl com 66 kB

OntoExper-SPL

Exemplo de Aplicação

  • Consulta SPARQL
    • Protocolo de acesso a modelagem RDF
    • Orientada a dados
PREFIX rdf: '<http://www.w3.org/1999/02/22-rdf-syntax-ns#>'
PREFIX rdfs: '<http://www.w3.org/2000/01/rdf-schema#>'
PREFIX : '<http://www.semanticweb.org/henrique/ontologies/2019/3/onto-exper-lps#>'

SELECT ?template (count(?template) as ?count)
	WHERE {
		?doc rdf:type :Documentation .
		?doc :template ?template .
	}
GROUP BY ?template

Quantos experimentos possuem templates experimentais?

OntoExper-SPL

Avaliação Preliminar

  • Ferramenta                (OntOlogy Pitfall Scanner!)
    • Detecção de 34 pontos de avaliação semi-automático
  • Armadilhas encontrada na OntoExeper-SPL
    • P19 "Definir vários domínios ou intervalos nas propriedades" - Critico
    • P10 "Desarticulação em falta" - Importante
    • P41 "Nenhuma licença declarada" - Importante
    • P08 "Anotações ausentes" - Baixo
    • P13 "Relações inversas não explicitamente declaradas" - Baixo

Avaliação Empírica

  1. Definição do Estudo

  2. Planejamento do Estudo

  3. Execução do Estudo

  4. Ameça à Validade

  5. Análise dos Resultados

  6. ​Discussão dos Resultados

  7. Propostas de Melhorias

tese de Vrandecic (2010)

Avaliação Empírica

Definição do Estudo

Avaliar a ontologia OntoExper-SPL

Com o propósito de caracterizar a sua viabilidade

Referente aos critérios de avaliação

Do ponto de vista de especialistas em LPS e Ontologias

No contexto de pesquisadores das seguintes instituições: UEL, ICMC-USP, PUC-PR, UEM, UTFPR, SIDIA, PUC-RS, IFPR e Unipar

Avaliação Empírica

Planejamento do Estudo

Seleção dos Participantes

  • Pós-doutor
  • Doutor
  • Mestre

Obs.: Por causa do nível de conhecimento dos participantes não foi necessária a realização da fase de treinamento.

Convidados de forma conveniente não-probabilística

Pesquisadores da área de LPS e Ontologia

Avaliação Empírica

Planejamento do Estudo

Instrumentação

  • ​Descritivo da avaliação
  • Questionário com critérios de avaliação (Google Forms)
  • Metadados da ontologia
    • .owl do modelo
    • .owl da OntoExper-SPL povoada
    • Excel contendo os dados originais
    • Figuras: diagrama de classe, modelo conceitual "clusterizado", grafo inicial, grafo gerado

Avaliação Empírica

Planejamento do Estudo

Critérios de Avaliação

  • Precisão
  • Adaptabilidade
  • Clareza
  • Completude
  • Eficiência Computacional
  • Concisão
  • Consistência
  • Capacidade Organizacional

1: (DT) Discordo totalmente

2: (DP) Discordo parcialmente

3: (N) Nem concordo nem discordo (neutro)

4: (CP) Concordo parcialmente

5: (CT) Concordo totalmente.

Escala Likert

Avaliação Empírica

Execução

  1. recebe os documentos, via e-mail
  2. realiza um estudo prévio dos metadados
  3. realiza a leitura do material e preenche o Google Forms

Obs.: Os especialistas tiveram um prazo de 40 dias para a finalização do questionário de avaliação

  • Projeto Piloto
  • Procedimentos de Participação:

Avaliação Empírica

Análise do Resultados

  • Perfil dos especialistas
  • Análise de Frequência da escala Likert
  • Análise do teste normalidade dos resultados
  • Análise do teste de hipótese aplicado aos resultados
  • Análise da correlação entre os critérios de avaliação.

Avaliação Empírica

Análise do Resultados Perfil dos especialistas

Média de 7,2 anos de experiência

  • 4 pós-doutor (23,5%)
  • 6 doutores (35,3%)
  • 6 mestres (35,3%)
  • 1 mestrando (5,9%)

58,8% doutores

Avaliação Empírica

Análise do Resultados Frequência Likert

Avaliação Empírica

Análise do Resultados Frequência Likert

Avaliação Empírica

Análise do Resultados Teste Normalidade

Shapiro-Wilk

p-value = 0,44 > 0,05

distribuição da VD é normal

VD = variável dependente contínua

método aditivo

Avaliação Empírica

Análise do Resultados

Teste Hipótese

Teste paramétrico de Mann-Whitney

hipótese - Nível de Formação dos especialistas:

  • Hipótese Nula (H0): não existe diferença na formação do especialista com relação a VD.

existe diferenças nos resultado dado o
Nível de Formação.

O resultado do teste:

p-value = 0,00000029 < 0,05
logo é possível rejeitar H0

VD com distribuição normal

Avaliação Empírica

Análise do Resultados

Teste Hipótese

hipótese - Experiência em LPS e/ou Ontologias (em anos) dos especialista:

  • Hipótese Nula (H0): não existe diferença na experiência do especialista com relação a VD.

existe diferenças nos resultado dado a Experiência em LPS e/ou Ontologias (em anos).

O resultado do teste:

p-value = 0,00000027 < 0,05
logo é possível rejeitar H0

  • Grupo 1: 0 à 5 anos
  • Grupo 2: 6 à 10 anos
  • Grupo 3: 11 à 15 anos

Teste paramétrico de Mann-Whitney

VD com distribuição normal

Avaliação Empírica

Análise do Resultados

Correlação

Avaliação Empírica

Discussão dos Resultados

Média de 7,2 anos de experiência 

58,8% são Doutores e Pós-doutores

OntoExper-SPL é altamente adaptável a novas extensões, tornando ela coesa e de fácil extensão a novos axiomas

Existe uma duvida com relação a eficiência computacional, ou seja, a OntoExper-SPL possui um bom desempenho em sua execução?

Avaliação Empírica

Ameaça à Validade

Validade de Conclusão

  • Somente 17 especialistas participantes
  • Conhecimento dos especialistas foi significativo
  • Não é possível generalizar as conclusões

Avaliação Empírica

Propostas de Melhorias

Estatística

Especialistas

OOPS!

Investigar melhor os resultados do critério Eficiência Computacional (47,05% N)

Tratativas especificas para as 5 armadilhar encontradas

Relacionamentos

Falta de elementos experimentais

Melhorias estruturais

Melhoria de performance

Protótipo de um Sistema de Recomendação

  1. Sistema de Recomendação

    1. Collaborative Filtering

  2. Concepção da PoC (Proof of Concept)

    1. ​Aplicação de inferência na ontologia

  3. Execução Projeto em 4 fases

Protótipo de um Sistema de Recomendação

Sistema de Recomendação

Collaborative Filtering

Protótipo de um Sistema de Recomendação

2

Owlready2

Pandas

1

3

DE(x,y) = \sqrt{\sum_{i}^{p}{(x_i-y_i)^2}}
sim = \frac{1}{(1+DE(x,y))}
NOTA_p() = \frac{\sum_{i}^{usuarios}{(sim_i*nota_i)}}{\sum_{i}^{usuariosTemNota}{(sim_i)}}

4

PoC

Protótipo de um Sistema de Recomendação

Conclusão

  1. Contribuições

  2. Limitações

  3. Trabalhos Futuros

Conclusão

Contribuições

Formalização do conhecimento sobre experimento em LPS

Conclusão

Contribuições

Avaliação empírica

PoC de Sistema de Recomendação

Conclusão

Limitações

  • Não é possível generalizar a OntoExper-SPL para outros domínios
  • Avaliação empírica não é suficiente para determinar a qualidade da OntoExper-SPL
  • Não foi possível uma avaliação da PoC RecSys

Conclusão

Trabalhos Futuros

  • Aplicar pontos de melhorias na modelagem da OntoExper-SPL
  • Extender a OntoExper-SPL para incluir os metadados sobre qualidade
  • Avaliação qualitativa dos 8 critérios (replicação da avaliação empírica)
  • Desenvolvimento de um RecSys mais amplo, com explorações mais profundas na OntoExper-SPL

Defesa - Mestrado - v1

By Henrique Vignando

Defesa - Mestrado - v1

  • 42