Aplicações de Ontologias em Engenharia de...
Transcript of Aplicações de Ontologias em Engenharia de...
![Page 1: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/1.jpg)
Aplicações de Ontologias em Engenharia de
Software
Ricardo de Almeida FalboOntologias para Engenharia de Software
Departamento de InformáticaUniversidade Federal do Espírito Santo
![Page 2: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/2.jpg)
Agenda• Introdução• OntologiasemEngenhariadeSoftware• OntologiasnoDesenvolvimentoDistribuídodeSoftware• OntologiasnoDesenvolvimentodeSistemasMultiagentes• CategorizaçãodeOntologiasemES(2)• ExemplosdeOntologiasExistentes• WebSemânticadeES
![Page 3: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/3.jpg)
Oqueéumaontologia?• Umaontologiaéumadescriçãoparcialeexplícitadeuma
conceituaçãocompartilhada.• TiposdeOntologias:– Quantoaograudegeneralidade(Guarino,1998):ontologiasdefundamentação,ontologiasdedomínio,ontologiasdetarefaeontologiasdeaplicação.
– Quantoaograudegeneralidade(Scherpetal.,2011):ontologiasdefundamentação,ontologiasnúcleo(coreontologies)eontologiasdedomínio
– Emrelaçãoàfasedoprocessodedesenvolvimentodeontologias(Guizzardi,2007):ontologiasdereferênciaeontologiasoperacionais.
– Quantoaoníveldeaxiomatização(Ruizetal.,2006):ontologiaspesadaseontologiasleves.
![Page 4: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/4.jpg)
Modelos,Meta-modeloseOntologias• OntologiasdeReferênciasãomodelosconceituais.Modelos
Conceituaisdesistemastambém.Qualadiferençaentreelesentão?– Escopo.Modelossãodestinadosaumprojetoparticular,enquantoontologiastêmumescopobemmaisabrangente,queperpassaváriosprojetoseorganizações,visandoserummodeloconsensualparaumacertacomunidade.
• Muitasvezes,meta-modelossãoconsideradosmaisrelacionadoscomontologias.Contudo,elessãomodelosquefalamsobremodelose,portanto,visammelhorarorigordemodelossintaticamentesemelhantes,massemanticamentediferentes.Jáontologiasvisamtratarasemântica.
![Page 5: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/5.jpg)
OntologiasemEngenhariadeSoftware• AsaplicaçõesdeontologiasemESsãomúltiplas.• Ontologiaspodemserintegradasainfraestruturasde
desenvolvimentoenoprópriosoftwaresendodesenvolvidoparaapoiarváriasatividadesdoprocessodesoftware.
• ComosurgimentodaWebSemântica(WS),iniciativascapitaneadaspororganizaçõesdepadronização,taiscomoW3CeOMG,começaramaserdesenvolvidasnosentidodeintegrarasáreasdeWSeES.(Happeletal.,2010)
![Page 6: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/6.jpg)
6
AplicaçõesdeOntologias– VisãoGeral
• AplicaçõesdeOntologias(Jasperetal.,1999):– Comunicação– InteroperabilidadedeSistemas– EspecificaçãodeSistemas– RecuperaçãodeInformação
![Page 7: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/7.jpg)
7
AplicaçõesdeOntologias– Comunicação
• Comunicaçãoentrepessoas:– Ontologiasreduzemconfusõesterminológicaseconceituais.
– Favorecemoentendimentocompartilhadoentreaspessoas.
![Page 8: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/8.jpg)
8
AplicaçõesdeOntologias– Comunicação
• Podemserusadasparacriarumarededeconceitosdentrodeumsistemapermitindoàspessoasexploraremenavegarematravésdessaredeparaentenderosrelacionamentosinternosdosistema.
• Comunicação:– Entrepessoas– Entrepessoasesistemas– Entresistemas(interoperabilidade)
![Page 9: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/9.jpg)
9
AplicaçõesdeOntologias– Interoperabilidade
• Ontologiaspodemserusadascomoumainter-línguaparaapoiaratraduçãoentrediferenteslinguagenserepresentações.
• Permitemacomunicaçãoentresistemas.• AcessoComumàInformação:umaontologiaéusada
parapermitirquemúltiplasaplicações-alvotenhamacessoafontesheterogêneasdeinformaçãoquesãoexpressasusandovocabuláriodiversoouformatoinacessível(Jasperetal.,1999).
• ServiçosCompartilhados
![Page 10: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/10.jpg)
AplicaçõesdeOntologias– Interoperabilidade
• Sistemas:DadoseServiços• ArquiteturasOrganizacionais:Processos• Representações:Modelos
![Page 11: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/11.jpg)
11
AplicaçõesdeOntologias– EspecificaçãodeSistemas
• Ontologiaspromovemoentendimentocompartilhadodeumdomíniooutarefa.
• OntologiacomoEspecificação:umaontologiadeumdeterminadodomínio/tarefaécriadaeprovêumvocabulárioparaespecificarrequisitosparaumaoumaisaplicações-alvo.Aontologiaéusadacomoumabaseparaespecificaçãoedesenvolvimentodesoftware,permitindoreúsodeconhecimento(Jasperetal.,1999).
![Page 12: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/12.jpg)
• OntologiasdeDomínioßàModelosEstruturais• OntologiasdeTarefaßàModelosComportamentais• OntologiasdeFundamentação:baseparaambosos
modelos:ModelagemConceitual.
AplicaçõesdeOntologias– EspecificaçãodeSistemas
![Page 13: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/13.jpg)
13
AplicaçõesdeOntologias– RecuperaçãodeInformação
• Máquinasdebuscatradicionaisretornamlistasderecursosrecuperados,oferecendopoucaounenhumainformaçãosobreasrelaçõessemânticasexistentesentreeles.
• Ontologiasoferecemummeiodelidarcomarepresentaçãoderecursosdeinformação:omodelodedomíniodescritoporumaontologiapodeserusadocomoumaestruturaunificadoraparadarsemânticaeumarepresentaçãocomumàinformação(Daviesetal.,2003).
• BuscaBaseadaemOntologias:umaontologiaéusadaparaprocurar,emumrepositóriodeinformação,porrecursosdesejados,melhorandoaprecisãoereduzindoaquantidadedetempogastonabusca(Jasperetal.,1999).
• Ex.:Web Semântica
![Page 14: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/14.jpg)
14
AplicaçõesdeOntologias– RecuperaçãodeInformação
• Recuperaçãodeitensdeconhecimento:artefatos,liçõesaprendidas,discussões...
• Recuperaçãodecomponentes,bibliotecas,serviços,frameworks.
![Page 15: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/15.jpg)
AplicaçõesdeOntologias• Inferência• OrganizaçãoeReutilizaçãodeConhecimento(Gerênciade
Conhecimento)
![Page 16: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/16.jpg)
UsodeOntologiasnaES- Geral• IntegraçãodeFerramentas:Diferentesprojetosoumesmo
stakeholdersdeummesmoprojetousamdiferentesferramentas,quemuitasvezesnãosecomunicam.
• Problema:Interoperabilidade• Ontologiaspodemserusadasparaapoiaraintegração
semânticadasinformaçõesarmazenadasnessasferramentasedeserviçosprovidosporelas.
![Page 17: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/17.jpg)
UsodeOntologiasnaES- Geral• CompartilhamentodeConhecimento:necessidadesde
conhecimento,muitasvezes,nãosãoexplicitamentedeclaradas,massimestabelecidaspelogapentreoconhecimentodeumdesenvolvedoreoconhecimentonecessárioparadesempenharumatarefaà Necessidadededisseminaçãopró-ativa.
• Problema:Encontraroequilíbrioentresobrecargadeinformaçãoefaltadeinformação
• Problemasrelacionados:Provisão,AcessoeUtilizaçãodaInformação (incluindoasdiferençasentreoscontextosdecriaçãoedeusodeumitemdeconhecimento).
![Page 18: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/18.jpg)
UsodeOntologiasnaES- Geral• AcessoàInformação:Comoencontrarainformação
necessáriapararesolverumproblemaourealizarumatarefa?Aexistênciadegrandesrepositóriospodedificultarabuscaporitensrelevantesparaocontextoemmãos.
• Ontologiaspodemserusadasparaanotarsemanticamenteitensdeconhecimento,taiscomoartefatosdoprocessodesoftware,liçõesaprendidas,artefatosdecolaboração(e-mails,listasdediscussão,fórunsetc.).Gruposdeinteressepodemserestabelecidosdinamicamente atravésdaligaçãoentreoconteúdoanotadosemanticamenteeosperfisdosstakeholdersanotadoscombasenamesmaontologia.Mecanismosdeconsultaavançadosbaseadosemontologiaspodemserusadosparaapoiarabusca.
![Page 19: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/19.jpg)
UsodeOntologiasnaES- Geral• ProvisãodeInformação:Desenvolvedoresfrequentemente
evitamesforçosdedocumentaçãoerejeitamaideiadeterdedescreveritensdeconhecimentoparareúso(anotaçãosemântica).
• Ontologiaspodemajudaraexplicitamentecapturarinformaçõesdecontextoeofereceraosdesenvolvedoresumvocabuláriomaisprecisoenãoambíguoparaexpressarcertasinformações.Alémdisso,certasinformaçõescontextuaispodemserderivadasautomaticamentedeartefatosdesoftware,utilizando-sedemétodosdeextração(documentaçãosemântica).
![Page 20: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/20.jpg)
UsodeOntologiasnaES- Geral• Documentação:Diferentesartefatoscontémvárias
informaçõesinter-relacionadas(p.ex.,documentosderequisitos,códigofonteecasosdeteste).Astarefasdejuntaremanteressasligaçõesficamacargodosusuáriosedesenvolvedoresdessesartefatos.
• Ontologiaspodemserusadasparaadicionarsemânticaaelementosdeinformaçãoemdocumentos,demodoqueferramentasautomatizadaspossamprocessarerelacionarestasinformações(documentaçãosemântica).Ex.:Wikisemânticos.
![Page 21: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/21.jpg)
UsodeOntologiasnaES- Geral
• Rastreabilidade:Mantermatrizesderastreabilidadeémuitotrabalhoso.
• Ontologiasusadasparaapoiaradocumentaçãosemânticapodemserusadastambémparadescreverasemânticadasrelaçõesexistentesentreosváriosartefatos desoftwareproduzidos,permitindoodesenvolvimentodeferramentasautomatizadasparaamanutençãoerecuperaçãodeinformaçõesderastreabilidade.
![Page 22: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/22.jpg)
UsodeOntologiasnaES- Geral
• Tratabilidade:Softwareéumaentidadesócio-técnicae,portanto,énecessáriomanterumatrilhadetodasasinteraçõesrelevantes:humano-humanoehumano-software(p.ex.,chatqueexplicaumadecisão).
• Ontologiaspodemserusadasparadescreverasemânticadasrelaçõesexistentesentreosváriosartefatos,incluindoaquelesquenãosãoclassicamentedefinidoscomoentradaousaídadeumaatividadedoprocessodedesenvolvimento.
![Page 23: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/23.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento• Requisitos:Asprincipaisrazõesdefracassosdeprojetosde
softwaresão:faltadeenvolvimentodeusuários,requisitosincompletosoumalespecificadosevolatilidadederequisitos.
• Umavezqueengenheirosdesoftwarenormalmentenãosãoespecialistasdedomínio,elesprecisamaprendersobreodomíniodoproblemacomusuários.ObterumentendimentocompartilhadoéumdosprincipaisdesafiosdaER.
![Page 24: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/24.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento:Requisitos• Ontologiaspodemserusadascomoumaespecificaçãode
domínio(modelodedomínio)compartilhada,formalenãoambígua,quesirvadepontodepartidaparaaespecificaçãoderequisitosparaváriossistemasnaqueledomínio(abordagemdeEngenhariadeDomínio).
![Page 25: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/25.jpg)
25
EngenhariadeDomínio• Enfoquesistemáticoparaaproduçãodecomponentes
reutilizáveis.• Atividades:– AnálisedeDomínio:visarepresentarrequisitoscomunsdeumafamíliadeaplicaçõespormeiodemodelosdedomínio;
– ProjetodeDomínio:buscaprovermodelosarquiteturaisparaumaclassedeaplicaçõesapartirdeumúnicomodelodedomínio;
– ImplementaçãodeDomínio:proverimplementaçõesdecomponentesquerepresentamfuncionalidadesbásicasdeaplicaçõesrelacionadasaumdomínio.
![Page 26: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/26.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento:Requisitos• Usodedistinçõesontológicasprovidasporontologiasde
fundamentaçãoduranteamodelagemconceitualdesistemas.P.ex.,usodeOntoUMLnamodelagemconceitualdesistemas.
![Page 27: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/27.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento• ArquiteturadeSoftware:Namaioriadossistemas,alógica
denegócioécodificadaemumalinguagemdeprogramaçãoemumcomponentedaarquitetura.Mudançasnalógicadenegóciorequeremmodificaçõesnocódigofonte eanálisesdeimpactos.
• Arquiteturasbaseadasemregraseusodemáquinasderegraspodemserumasoluçãoparaesteproblema.Aideiaésepararalógicadenegócioealógicadeprocessamento.
• Emumaarquiteturabaseadaemregras,umaontologiapodeserumcomponente(emtempodeexecução)dacamadadelógicadenegócio,separadodocomponentedelógicadeprocessamento(papeldesempenhadoporumamáquinaderegras– reasoner).
![Page 28: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/28.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento• ReutilizaçãodeComponentes/ServiçosWeb:Estessão
casosmaisespecíficosdoproblemadeacessoàinformação,contextualizadosnasfasesdeprojetoeimplementaçãodoprocessodedesenvolvimento.Aquestãobásicaé:existemcomponentes/serviçosquepodemserreusados?Comoencontrá-loseusá-losnocontextodoprojetocorrente?
• Ontologiaspodemserusadasparadescrevercomponentes/serviçosweb(anotaçõessemânticas),demodoapermitirousoposteriordemecanismosdebuscamaisconvenientesepoderosos.
• Nocasodeserviçoswebsemânticos,descoberta,matchingecomposiçãoautomáticosdeserviçospodemserfeitos,tomandoporbaseaconceituaçãocompartilhadaoferecidapelaontologia.
![Page 29: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/29.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento• ManipulaçãodeErros:Outrocasomaisespecíficodo
problemadeacessoàinformação,contextualizadonasfasesdeteste,depuraçãoemanutenção.Quandoumerroéapresentado,oqueelesignifica?Comotratá-lo?
• Geralmente,éútilencontrarocorrênciassimilaresdomesmoerroe,paratal,desenvolvedores,muitasvezes,recorremamecanismosdebuscabemgerais,comooGoogle.Oproblemaéqueocontextopodesermuitodiferente...
• Ontologiaspodemserusadasparasefazerumamediaçãoentreosdiferentescontextos,tomandoporbaseanotaçõessemânticas baseadasemontologia.
![Page 30: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/30.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento• Testes:Oprojetodecasosdetesterequerconhecimento
tantododomíniodoproblemaquantododomíniodasolução edastécnicasaseremaplicadas.
• Ontologiasdedomíniopodemserusadasparaapoiartestadores,quenormalmentenãoestãotãoenvolvidoscomodomínioquantodesenvolvedores,acompreender melhorodomíniodosistemaasertestado.
• Alémdisso,anotaçõessemânticaspodemserusadasparaligarinformaçãorelacionadanoprojeto(ouatéemoutrosprojetos),comop.ex.,casosdetesteerequisitos.
![Page 31: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/31.jpg)
UsodeOntologiasnaES– ProcessodeDesenvolvimento• Manutenção:Duranteamanutenção,hámuitostiposde
informaçãorelacionados,massemumaconexãoexplícita,tornandodifícilasoluçãodeumproblema.
• Ontologiaspodemajudaraconectar comunicaçõeseletrônicas(e-mails,listasdediscussão),relatosdebugseitensdesoftwareafetados,provendoumacamadaparaintegrardadosdediferentesfontes(interoperabilidadesemântica)emummodelosemânticounificado.
• Osdadoscombinadospodemser,então,usadosparaderivarinformaçãoadicionalpormeiodeinferênciasoumineraçãodedados,informaçãoessaquenãoestavaexplicitamentedeclaradaemnenhumadasbases.
![Page 32: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/32.jpg)
UsodeOntologiasnaES• AmbientesdeDesenvolvimentodeSoftware(ADSs):
precisamtermodelosdeprocessos,demodoacompreender,dentreoutros,asatividadesqueestãosendorealizadaseasdependênciasentreartefatos,demodoaapoiarmaisefetivamenteosdesenvolvedoresnarealizaçãodesuastarefas.
• OntologiasdodomíniodeprocessosdesoftwarepodemcontribuirparaarealizaçãodeADSsSemânticos,provendoabaseparaumsuportebaseadoemconhecimento esensívelaocontextodousuário.
![Page 33: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/33.jpg)
DesenvolvimentoDistribuídodeSoftware• DesenvolvimentoDistribuídodeSoftware(DDS):
colaboraçãoentregruposdedesenvolvedoresquetrabalhamemconjunto,localizadosemcidadesoupaísesdiferentes.
![Page 34: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/34.jpg)
34
DesafiosdoDDS- Comunicação
• Awareness:Consciência,PercepçãoeConhecimentodasAtividadesDesenvolvidas.– Oqueestáacontecendo?– Quemestárealizandodeterminadatarefa?– Ondeelaestáacontecendo?– Quemprecisasernotificadoacercadenovasinformações?– Qualadependênciaentrerequisitos/funcionalidades?
• Contexto:Qualocontextodecadaintegrantedaequipe?
![Page 35: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/35.jpg)
35
DesafiosdoDDS- Comunicação
• DispersãoGeográficaeTemporal:– Dificuldadedeobterconsenso.– Estadosfísicosementaisdosparticipantes.
• EstilosdeComunicação:Preocupaçõescomaformaeoconteúdodacomunicação.
• FormasdeComunicação:– Comunicaçãoinformaléreduzida.– Necessidadedecomunicaçãoindireta.– Prejuízoparaariquezadecontexto.– Sentidodeumafrasenãoestáapenasnaspalavras.Outroselementosdãosentidoaumafrase,taiscomotomdevoz,linguagemcorporal,expressãofacial,usodosilêncioetc.
![Page 36: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/36.jpg)
UsodeOntologiasnoDDS• Coordenação:suanecessidadetemorigemnas
dependênciasentreastarefasdoprocessodesoftware,oquerequerquediferentespessoascoordenemseustrabalhosparaatingirumobjetivoouprodutocomum.
• Problema:Faltadeconsciência(awareness)dotrabalhodosoutros.
• Osusosdeontologiasdiscutidonosproblemasrelacionadosaoacessoàinformaçãosãoigualmenteúteisparaaformaçãodaconsciência,emespecial:anotaçãosemânticadeitensdeconhecimento,mecanismosdebuscabaseadosemontologias,pró-atividadenadisseminaçãodeconhecimento.
![Page 37: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/37.jpg)
Agentes• Agentessãosistemascomputacionaiscapazesdeações
autônomas emalgumambiente,afimdealcançarseusobjetivosdeprojeto.
• Umagente,tipicamente,senteseuambiente(porsensoresfísicos,nocasodeagentessituadosnapartedomundoreal,ouporsensoresdesoftwarenocasodeagentesdesoftware)edisponibilizaumrepertóriodeaçõesquepodemserexecutadasparamodificaroambiente,oqualpoderespondernão-deterministicamenteàexecuçãodessasações.
![Page 38: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/38.jpg)
SistemasMultiagentes(SMAs)• Sãosistemascomputacionaiscompostospordiversos
agentesinteragindonoambienteafimdealcançarseusobjetivosdeprojeto.
• EmumSMA,agentesprecisamsecomunicar afimdealcançarmelhorosseusobjetivosouosobjetivosdosistema/sociedadenoqualelesexistem.
• EmumSMA,agentesprecisamcoordenar suasaçõescomadeoutrosagentesparaatingirosobjetivosdosistemaousociedade.
• Ontologiaspodemserusadasparaassociarsignificadoàsmensagenstrocadasporagentes,ouparaproverumaconceituaçãocomumparaagentesemumSMA.
![Page 39: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/39.jpg)
CategorizaçãodeOntologiasemES• SegundoHappeletal.(2006),ousodeontologiasnaES
podesercategorizadosegundoduasdimensõesprincipais:– Usoemtempodedesenvolvimentox emtempodeexecução– Usoparatratarproblemasrelativosaodomínioxaspectosdeinfraestrutura
![Page 40: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/40.jpg)
CategorizaçãodeOntologiasemES
Ontology-driven development (ODD): uso de ontologias em tempo de desenvolvimento, descrevendo o domínio do problema
![Page 41: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/41.jpg)
CategorizaçãodeOntologiasemES
Ontology-enabled development (OED): uso de ontologias em tempo de desenvolvimento com o objetivo de apoiar desenvolvedores em suas tarefas.
![Page 42: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/42.jpg)
CategorizaçãodeOntologiasemES
Ontology-based architectures (OBA): uso de ontologias como um artefato em tempo de execução (ontologia como um elemento central na arquitetura do software).
![Page 43: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/43.jpg)
CategorizaçãodeOntologiasemES
Ontology-enabled architectures (OEA): uso de ontologias para prover suporte de infraestrura em tempo real (p.ex., descoberta automática de serviços).
![Page 44: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/44.jpg)
CategorizaçãodeOntologiasemES• RuizeHilera(2006)propõemumataxonomiadeontologias
paraEngenhariaeTecnologiadeSoftware(SET)formadaporduascategoriasgenéricas:– OntologiasdoDomíniodeSET:descrevemconhecimentoacercadodomíniodeSET.
– OntologiascomoArtefatosdeSoftware:usadascomoartefatosduranteoprocessodesoftware.
![Page 45: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/45.jpg)
CategorizaçãodeOntologiasemES• OntologiasdoDomíniodeSETsãoclassificadas
considerandoumadistinçãoentreEngenhariadeSoftwareeTecnologiadeSoftware,conformeestabelecidonasDiretrizesCurricularesdeComputaçãodaACM.
![Page 46: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/46.jpg)
CategorizaçãodeOntologiasemES• OntologiasdeES,quantoàcoberturadodomíniodeES,
podemserontologiasdetodoodomínio(ditasgenéricas)oudeumsubdomínio(ditasespecíficas).
• OntologiasdetododomíniotêmoambiciosoobjetivodemodelarocorpodeconhecimentodeESporcompleto.SãobaseadasemfontescomoSWEBOK,livroseglossários.
• Ontologiasdesubdomíniosbuscamtrataraconceituaçãodeapenasparte(subdomínio)destadisciplina.– AlgumasontologiasdesubdomíniosdeSETsãoelaboradaslevandoemcontaapossibilidadedeintegraçãocomoutrasontologiasdesubdomínio,visandoestabelecerumarededeontologias(ontologynetwork).
![Page 47: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/47.jpg)
CategorizaçãodeOntologiasemES• SoftwareEngineering(SE)Ontologies– Generic(all-domain)– Specific(sub-domain)
• SoftwareRequirements• SoftwareDesign• SoftwareConstruction• SoftwareTesting• SoftwareMaintenance• SoftwareConfigurationManagement• SoftwareQuality• SoftwareEngineeringTools&Methods• SoftwareEngineeringProcess• SoftwareEngineeringManagement
![Page 48: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/48.jpg)
CategorizaçãodeOntologiasemES• AscategoriasesubcategoriasdataxonomiadaACMforam
usadasparaclassificarOntologiasdeTecnologiadeSoftware.
![Page 49: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/49.jpg)
CategorizaçãodeOntologiasemES• SoftwareTechnology(ST)
– Software• ProgrammingTechniques• ProgrammingLanguages• OperatingSystems
– Data• DataStructures• DataStorageRepresentations• DataEncryption• CodingandInformationTheory• Files
– InformationTechnologyandSystems• ModelsandPrinciples• DatabaseManagement• InformationStorageandRetrieval• InformationTechnologyandSystemsApplications• InformationInterfacesandRepresentation(HCI)
![Page 50: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/50.jpg)
CategorizaçãodeOntologiasemES• OntologiascomoArtefatosdeSoftwaresãoclassificadasem
umprimeironívelemontologiascomoartefatosusadosemtempodedesenvolvimentoouusadosemtempodeexecução.
• Acategoriadasontologiasusadasemtempodedesenvolvimentoésubdivididacombasenafunçãodosprocessosdeciclodevidanosquaiselassãoprincipalmenteusadas,tomandoporbaseaISO/IEC15504-2(1998).
• Parasimplificar,apenasdoisníveisdequebra(gruposdeprocessoecategoriasdeprocesso)foramusados,tendosidodesconsiderados,portanto,oníveldeprocessosindividuais.
![Page 51: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/51.jpg)
CategorizaçãodeOntologiasemES• GruposeCategoriasde
ProcessodaISO15504-2(1998)– ProcessosPrimários
• Cliente-Fornecedor• Engenharia
– ProcessosdeApoio• Apoio
– ProcessosOrganizacionais• Gerência• Organização
• TaxonomiadeOntologiascomoArtefatosusadosemtempodedesenvolvimento:– ParaProcessosdeEngenharia
• Desenvolvimento• Manutenção
– ParaOutrosProcessos• Cliente-Fornecedor• Apoio• Gerência• Organização
![Page 52: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/52.jpg)
CategorizaçãodeOntologiasemES• Acategoriadasontologiasusadasemtempodeexecuçãoé
subdivididaemduassub-categorias,tomandoporbaseaclassificaçãodeGuarino:– Ontologiascomoartefatosarquitetônicos:quandoaontologiaépartedaarquiteturadosoftware,sendoumcomponenteadicionalquetrabalhacomorestodosistemaemtempodeexecuçãoparaatingirosobjetivosdosoftware.
– Ontologiascomorecursosdeinformação:quandoaontologiaéusadapelosoftwareemtempodeexecuçãoparaumpropósitoespecífico,atuandocomoumrecursodeinformação,normalmenteremoto,sobreoqualosoftwareopera,realizando,p.ex.,consultasespecíficas.
![Page 53: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/53.jpg)
ExemplosdeOntologiasdeSEExistentes• RuizeHilera(2006)fazemumlevantamentodediversas
iniciativasrelativasaontologiasdoDomíniodeSETencontradasnaliteraturaaté2005.
• SoftwareEngineering(SE)Ontologies– All-domain(3)
• SWEBOK(2)• IEEEGlossaryofSoftwareEngineeringTerminology(1)
![Page 54: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/54.jpg)
ExemplosdeOntologiasdeSEExistentes– Sub-domain(Ruiz;Hilera,2006)
• SoftwareEngineeringProcess(ProcessosdeSoftware)(4)• SoftwareMaintenance(5)• SoftwareQuality(2)• SoftwareEngineeringManagement(MediçãodeSoftware)(2)• SoftwareRequirements(4)
– NegociaçãodeRequisitos(Win-Win)(1)– ModelagemdeSistemas
» ModeloseOntologias(1)» UML(1)
– ModelagemdeAgentes(1)• SoftwareDesign(3)
– ESBaseadaemComponentes(1)– ModelagemdeSistemas
» ModeloseOntologias(1)» UML(1)
![Page 55: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/55.jpg)
ExemplosdeOntologiasdeSTExistentes• SoftwareTechnology(ST)Ontologies– Software
• ProgrammingTechniques(5)– Serviços(3)– Agentes(1)– ComputaçãoUbíquaePervasiva(1)
• ProgrammingLanguages(3)– Código-Fonte(Genérica)(1)– Java(2)
– Data• CriptografiadeDados(1)
– InformationTechnologyandSystems• DatabaseManagement(1– SQL)• InformationInterfacesandRepresentation(2– Human-ComputerInteraction)
![Page 56: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/56.jpg)
ExemplosdeUsodeOntologiascomoArtefatosdeSoftware
• Ontologiascomoartefatosdesoftwareusadosemtempodedesenvolvimento:– ProcessosdeEngenharia
• ProcessodeDesenvolvimento(14)– DestaqueparaafasedeAnálisedeRequisitos,com11propostas.
• ProcessodeManutenção(1)
– OutrosProcessos(NãoEngenharia)• ProcessosdeApoio(3):GarantiadaQualidade,Verificação&Validação,Documentação(Rastreabilidade)
• ProcessosdeGerência(3):GerênciadeConhecimento(1),DefiniçãodeProcessosdeSoftware(2,sendoqueumdelestambémtratadagerênciadoprojeto).
![Page 57: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/57.jpg)
ExemplosdeUsodeOntologiascomoArtefatosdeSoftware
• Ontologiascomoartefatosdesoftwareusadosemtempodeexecução:– Comoartefatosarquitetônicos(3):
• Osautoresdestacam,ainda,queháváriaspropostasusandoarquiteturadesistemasbaseadosemconhecimento(máquinadeinferênciaatuandosobreumrepositórioquecontémaontologia),mas,porseremmuitocomuns,elespreferemcitartrêsexemplosqueusamoutrasarquiteturas.
– Comorecursosdeinformação(3)• MáquinasdebuscanaWeb(SemanticWeb)• Ontologiascomosubstitutosdebasesdedadosparaoarmazenamentodeinformação(naverdadearmazenamentoemtriplas)
• Aindaquenãocitadonosexemplos,osautoresdestacamaplicaçõesdaSemanticWebeWebServicesSemânticos.
![Page 58: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/58.jpg)
WebSemânticadeES• AWebSemânticadeES(Happeletal.,2010)éumaWebna
qualagentesrealizamtarefasdedesenvolvimentodesoftwarebaseadosemdadosenriquecidossemanticamente.
• AESéumcenárioapropriadoparaestavisão,umavezqueoconhecimentoemprojetosdesoftwareestátipicamenteespalhadoemvárioslocais,formatos,sistemasepessoas.
• Especialmenteemgrandesprojetoseprojetosdistribuídos,ainformaçãoéheterogêneaedistribuída.
![Page 59: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/59.jpg)
WebSemânticadeES• NaWebSemânticadeES,desenvolvedorespodemobter
umavisãogeralbemmaiscompletaeprecisadainformaçãorelacionadaàsuatarefacorrente.
• Alémdisso,elespodemsebeneficiarderecursosadicionais,taiscomoacessoecompartilhamentofácildeexperiênciasdeoutrosdesenvolvedoresechecagemdeconsistência.
![Page 60: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/60.jpg)
WebSemânticadeES• AvisãodaWSdeESaindanãoestáconcretizada,masela
podecalcadaemcimadosseguintespilares:– Dadosdeprojetodevemserexpostosseguindoaabordagemdawebsemântica(metadadosanotadossemanticamente,combaseemontologias).
– Ferramentasdevemserconstruídasparaseremcapazesdeproduzireconsumirdadoseserviçossemânticos(interoperabilidadesemântica).
– Ferramentasdevemfazerusodemecanismosdebuscabaseadaemontologias,sendocapazesdecombinarinformaçãoexternamenterelevante(p.ex.,naWeb)edadosdeoutrosprojetoscomdadosdoprojetocorrenteedocontextoespecíficododesenvolvedor(incluindoatarefasendorealizada).
![Page 61: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/61.jpg)
WebSemânticadeES• AconcretizaçãodaWebSemânticadeESdependedetrês
fatoresprincipais(Happeletal.2010):– Existênciadeontologiasapropriadasparaosváriosfinsdiscutidosanteriormente.
– Existênciademetadados(anotações)semânticos– Existênciadeferramentaspoderosascapazesdeincrementaressesdadosparaprovernovosserviços.
![Page 62: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/62.jpg)
WebSemânticadeES• SegundoHappeletal.(2010):– Odesenvolvimentoemanutençãodeontologiaséumdesafioporsisó,queprecisaserjustificadoporganhosdeprodutividade.
– Contudo,paraavaliarosucessoemváriosdoscenáriosvislumbradosdousodeontologiasemES,éprecisoaplicá-las(problemado“ovoedagalinha”).
– Nãohá(nemhaverá)umaúnicaontologiasatisfazendotodasasnecessidades.
– SãováriasasaplicaçõesdeontologiasemESe,portanto,asontologiasresultantesvãovariaremexpressividade,escopoepropósito.
![Page 63: Aplicações de Ontologias em Engenharia de Softwarefalbo/files/OES/OES3-Aplicacoes_Ontologias_ES.pdf · • Ontologias em Engenharia de Software • Ontologias no Desenvolvimento](https://reader031.fdocuments.net/reader031/viewer/2022021808/5c04c07809d3f29b388c417f/html5/thumbnails/63.jpg)
Referências• Happel,H.J.,Seedorf,S.,ApplicationsofOntologiesinSoftwareEngineering.
In:2ndInternationalWorkshoponSemanticWebEnabledSoftwareEngineering,2006.
• Happel,H.J.,Maalej,W.,Seedorf,S.,ApplicationsofOntologiesinCollaborativeSoftwareDevelopment.In:CollaborativeSoftwareDevelopment,Mistrik,I.,Grundy,J.,Hoek,A.,Whitehead,J.(Eds.),Springer,2010,pp.109– 129.
• Ruiz,F.,Hilera,J.R.,UsingOntologiesinSoftwareEngineeringandTechnology,In:OntologiesinSoftwareEngineeringandSoftwareTechnology,Calero,C.,Ruiz,F.,Piatinni,M.(Eds.),Springer,2006,pp.62– 119.
• Dillon,T,S.,Chang,E.,Wongthongtham,P.,Ontology-basedSoftwareEngineering- SoftwareEngineering2.0, 19thAustralianConferenceonSoftwareEngineering,2008.