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
- Introdução/Contextualização
- Fundamentação Teórica
- OntoExper-SPL
- Avaliação Empírica da OntoExper-SPL
- Protótipo de um Sistema de Recomendação para OntoExper-SPL
- Conclusão
Introdução/Contextualização
- Contexto/Problemática
- Questão de Pesquisa
- Objetivos
- 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
- Linha de Produto de Software
- Experimentação em Engenharia de Software
- Experimentos de LPS
-
Ontologias
- Definição
- Classificação
- Ontologias para ES
- 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
-
Concepção
-
Projeto
-
Modelagem com Protégé
-
Povoamento com Python
-
-
Exemplo de Aplicação
-
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
- Linguagem Python com bibliotecas



.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 ?templateQuantos 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
-
Definição do Estudo
-
Planejamento do Estudo
-
Execução do Estudo
-
Ameça à Validade
-
Análise dos Resultados
-
Discussão dos Resultados
-
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

- recebe os documentos, via e-mail
- realiza um estudo prévio dos metadados
- 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
1° 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
2° 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
-
Sistema de Recomendação
-
Collaborative Filtering
-
-
Concepção da PoC (Proof of Concept)
-
Aplicação de inferência na ontologia
-
-
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


4
PoC
Protótipo de um Sistema de Recomendação

Conclusão
-
Contribuições
-
Limitações
-
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