construindo aplicações semânticas com desenvolvimento Ágil: plataforma joint
TRANSCRIPT
![Page 1: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/1.jpg)
NEES/IC e CAED/ICMCUniversidade Federal de Alagoas e Universidade de São Paulo
[email protected] e [email protected] Ibert Bittencourt e Seiji Isotani
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
Conferência Web.br 2014
![Page 2: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/2.jpg)
Brasil
![Page 3: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/3.jpg)
Maceió
![Page 4: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/4.jpg)
Maceió
Maceió, AL
![Page 5: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/5.jpg)
NEES/IC e CAED/ICMCUniversidade Federal de Alagoas e Universidade de São Paulo
[email protected] e [email protected] Ibert Bittencourt e Seiji Isotani
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
Conferência Web.br 2014
![Page 6: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/6.jpg)
Ontologias
JOINT
Próximos Passos
![Page 7: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/7.jpg)
Ontologias
JOINT
Próximos Passos
![Page 8: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/8.jpg)
Doações de campanha e Prestações de Serviços
![Page 9: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/9.jpg)
Pessoal
Campanha
Organização
Prestação de Serviço
![Page 10: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/10.jpg)
Como recomendar um imóvel de acordo com os interesses e graus de
relacionamentos?
![Page 11: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/11.jpg)
Como recomendar um imóvel de acordo com os interesses e graus de relacionamentos?
Pessoas e Relacionamentos
Interesses
Imóveis
Cidades
Educação
Segurança
Pontos Comerciais
Ontologias
![Page 12: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/12.jpg)
Web das Coisas
![Page 13: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/13.jpg)
![Page 14: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/14.jpg)
![Page 15: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/15.jpg)
Ontologias
Compreender a
estrutura das
coisas
Melhorar a
comunicação
entre pessoas
Interoperar
sistemas
Potencializa
r Serviços
Filosofia
Linguística
Lógica
Computação
Ontologia Aplicada
![Page 16: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/16.jpg)
“The fast growing science of ‐ontology could exert a greater
impact on humanity than the rise of the Internet… ontologies allow for
data to interoperate and for machines to make inferences. The report calls for more education and
training opportunities for ontologists, and for better means of
connecting ontologists with organizations that need them.
![Page 17: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/17.jpg)
Semantic Interoperability is considered to be the problem of this decade…[currently] costing productivity, lives and billions of dollars annually…the overall human and financial cost to society from our failure to share and reuse information is many times the cost of the systems’ operation and maintenance [OMG, SIMF]
![Page 18: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/18.jpg)
![Page 19: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/19.jpg)
![Page 20: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/20.jpg)
![Page 21: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/21.jpg)
![Page 22: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/22.jpg)
![Page 23: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/23.jpg)
![Page 24: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/24.jpg)
![Page 25: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/25.jpg)
FenômenoPadrões de Apresentação
<D, W, R >
Linguagem
RealidadePercepçãoConceitualização
Compromisso Ontológico (K)
Interpretação (I)
Modelos MD(L)
Modelos Esperados IK(L)
(~) Ontologia Boa
![Page 26: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/26.jpg)
Ontologias
JOINT
Próximos Passos
![Page 27: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/27.jpg)
JOINT – Java Ontology INtegrated Toolkit
JOINT
JOINT-DE
![Page 28: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/28.jpg)
Joint-Detached
![Page 29: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/29.jpg)
JOINT-DE
Sistema de Mapeamento Ontologia-Objeto (OOMS);
Uso do Sesame como API base;
Uso de Objetos Desconectados;
Operações em repositórios (criar, limpar, remover, backup);
Operações em ontologias (adicionar, remover e atualizar ontologias);
Geração de Código;
Operações em Instâncias (CRUD);
Operações de Inferência (DL, SWRL e SPARQL)
![Page 30: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/30.jpg)
JOINT-DE (Relacionados)
Ferramenta Objetos
Desconectados
Objetos
Persistentes
Ger. de Código
Estável API base
Jastor X X Jena
OWL2Java X X Jena
Empire X Sesame
KOMMA X X Sesame
Alibaba/Elmo X X Sesame
JOINT-DE X X Sesame
![Page 31: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/31.jpg)
JOINT-DE (Arquitetura)
![Page 32: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/32.jpg)
JOINT-DE (Manipulando Ontologias)
![Page 33: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/33.jpg)
JOINT-DE (Gerador de Código)
Baseado no gerador de código do Alibaba (objetos persistentes);
Geração de Interfaces Java (herança múltipla);
Geração de classes concretas;
Classes implementas as interface gerada e a interface serializable;
![Page 34: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/34.jpg)
JOINT-DE (Gerador de Código)
![Page 35: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/35.jpg)
JOINT-DE (Código Gerado)
Interface OnlineAccount gerada Classe OnlineAccountImpl gerada
![Page 36: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/36.jpg)
JOINT-DE (Recupedando uma instância)
![Page 37: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/37.jpg)
JOINT-DE (Recupedando várias instâncias)
![Page 38: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/38.jpg)
JOINT-DE (Knowledge Abstract Object)
![Page 39: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/39.jpg)
Joint-DE (Estudos Empíricos)
![Page 40: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/40.jpg)
Estudos Empíricos (JOINT-DE)
Produtividade de Desenvolvimento
Desempenho e uso de memória
Desenvolvimento de Aplicações
![Page 41: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/41.jpg)
Estudos Empíricos (JOINT-DE)Produtividade de Desenvolvimento
![Page 42: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/42.jpg)
Estudos Empíricos (JOINT-DE)Desempenho e uso de memória
Q1: Existem diferenças de desempenho entre os OOMS JOINT-DE e Alibaba com relação às operações de create, retrieve e update? Se sim, qual ferramenta é a melhor?
Q2: Existem diferenças de utilização de memória entre os OOMS JOINT-DE e Alibaba com relação às operações de create, retrieve e update? Se sim, qual ferramenta utiliza menos memória?
Hipótese Hipótese Nula Hipótese Alternativa
H1 H1-0: T(F1, O1) = T(F2, O1) H1-1: T(F1, O1) ≠ T(F2, O1)
H2 H2-0: T(F1, O2) = T(F2, O2) H2-1: T(F1, O2) ≠ T(F2, O2)
H3 H3-0: T(F1, O3) = T(F2, O3) H3-1: T(F1, O3) ≠ T(F2, O3)
H4 H4-0: M(F1, O1) = M(F2, O1) H4-1: M(F1, O1) ≠ M(F2, O1)
H5 H5-0: M(F1, O2) = M(F2, O2) H5-1: M(F1, O2) ≠ M(F2, O2)
H6 H6-0: M(F1, O3) = M(F2, O3) H6-1: M(F1, O3) ≠ M(F2, O3)
![Page 43: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/43.jpg)
Estudos Empíricos (JOINT-DE)Desempenho
Create Retrieve Update
![Page 44: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/44.jpg)
Estudos Empíricos (JOINT-DE)Uso de Memória
Create Retrieve Update
![Page 45: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/45.jpg)
Estudos Empíricos (JOINT-DE)Uso de MemóriaHipótese Hipótese Nula Hipótese Alternativa Descrição Resultado (SIG. 0,05) Melhor Resultado
H1 H1-0: T(F1, O1) = T(F2, O1) H1-1: T(F1, O1) ≠ T(F2, O1) Tempo por iteração na operação create
Com diferença significativa
JOINT-DE
H2 H2-0: T(F1, O2) = T(F2, O2) H2-1: T(F1, O2) ≠ T(F2, O2) Tempo por iteração na operação retrieve
Com diferença significativa
JOINT-DE
H3 H3-0: T(F1, O3) = T(F2, O3) H3-1: T(F1, O3) ≠ T(F2, O3) Tempo por iteração na operação update
Com diferença significativa
JOINT-DE
H4 H4-0: M(F1, O1) = M(F2, O1)
H4-1: M(F1, O1) ≠ M(F2, O1)
Média de memória na operação create
Sem diferença significativa
-
H5 H5-0: M(F1, O2) = M(F2, O2)
H5-1: M(F1, O2) ≠ M(F2, O2)
Média de memória na operação retrieve
Com diferença significativa
JOINT-DE
H6 H6-0: M(F1, O3) = M(F2, O3)
H6-1: M(F1, O3) ≠ M(F2, O3)
Média de memória na operação update
Com diferença significativa
Alibaba
![Page 46: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/46.jpg)
Estudos Empíricos (JOINT-DE)Casos de Uso (MeuTutor)
INTERFACE DO USUÁRIO EM PHP
SERVIÇOS WEB
NEGÓCIO
PERSISTÊNCIA
BANCO DE DADOS RDF
SATÉLITE 1
SATÉLITE 2
SATÉLITE 3
MICRO-KERNEL
SATÉLITE 4
SATÉLITE ...
SATÉLITE N
CONE
CTOR
CONE
CTOR
USUÁRIOS FINAIS
Visão geral da arquitetura do MeuTutor-ENEM
![Page 47: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/47.jpg)
![Page 48: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/48.jpg)
Estudos Empíricos (JOINT-DE)Casos de Uso (MeuTutor)
0
1000
2000
3000
4000
5000
6000
Tempo de Resposta - Login
MeuTutor JOINT-DE
0
200
400
600
800
1000
1200
1400
1600
Memória Utilizada - Login
MeuTutor JOINT-DE
![Page 49: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/49.jpg)
Estudos Empíricos (JOINT-DE)Casos de Uso (MeuTutor)
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
Tempo de Resposta - Cadastro
MeuTutor JOINT-DE
0
200
400
600
800
1000
1200
1400
Memória Utilizada - Cadastro
MeuTutor JOINT-DE
![Page 50: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/50.jpg)
Estudos Empíricos (JOINT-DE)Casos de Uso (MeuTutor)
0
50
100
150
200
250
Tempo de Resposta - Troféus
MeuTutor JOINT-DE
0
50
100
150
200
250
300
350
400
450
500
Memória Utilizada - Troféus
MeuTutor JOINT-DE
![Page 51: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/51.jpg)
Estudos Empíricos (JOINT-DE)Casos de Uso (BoaMoradia)
![Page 52: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/52.jpg)
Como recomendar um imóvel de acordo com os interesses e graus de relacionamentos?
Pessoas e Relacionamentos
Interesses
Imóveis
Cidades
Educação
Segurança
Pontos Comerciais
Ontologias
![Page 53: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/53.jpg)
Estudos EmpíricosCasos de Uso (BoaMoradia)
![Page 54: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/54.jpg)
Ontologias
JOINT
Próximos Passos
![Page 55: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/55.jpg)
JOINT – Java Ontology INtegrated Toolkit
JOINT-DE
OLED
??
JOINT-LD
Metodologia (E.S. + E.O.) + Conjunto de Boas Práticas
HOZO
![Page 56: Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT](https://reader036.vdocuments.pub/reader036/viewer/2022062412/5870d0ff1a28ab64768b5845/html5/thumbnails/56.jpg)
Ig Ibert BittencourtNúcleo de Excelência em Tecnologias Sociais
Universidade Federal de Alagoas
Mesa Redonda: TI e Educação
II Workshop de EaD/UFGD: Educação no Mundo da Tecnologia Digital