65
Ontologias de Engenharia de Software Ricardo de Almeida Falbo Ontologias para Engenharia de Software Departamento de Informática Universidade Federal do Espírito Santo

Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Embed Size (px)

Citation preview

Page 1: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Ontologias de Engenharia de

Software

Ricardo de Almeida FalboOntologias para Engenharia de Software

Departamento de InformáticaUniversidade Federal do Espírito Santo

Page 2: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Agenda• SemanticWebBasedSE• OntologiasdeTodoDomíniodeES– SEontology(Dillonetal.,2008)(Wongthongthametal.,2009)– SWEBOKOntology(Abranetal.,2006)

Page 3: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Semantic-WebBasedSE• DificuldadesdaES(Zhaoetal.2009):

– Expansãodereúsodecódigoparareúsodetodosostiposdeinformação(requisitos,processos,casosdetesteetc.).Contudo,aatualformaderepresentaçãodessainformaçãotornadifícilgerenciar,recuperare,portanto,reusar.

– Diversidadedeprocessosusadosemummesmoprojetodistribuídoeequipescomconhecimentotambémdiverso.

• Necessidadedecompartilhamentoereúsodeconhecimento.• AWebSemânticaprovêumframeworkintegrado,demodoque

ainformaçãopossaserbemorganizada,amplamentepublicadaecompartilhada,facilmenterecuperadaeintegradademaneirasimples.

• OobjetivoépermitirqueosconteúdosnaWebsejamcompreensíveisporagenteshumanosedesoftware.

• OntologiaéumimportantecomponentedaWebSemântica.

Page 4: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Semantic-WebBasedSE• TécnicasdeWebSemântica(WS)eontologiassãoaplicadas

àEScomointuitode:– Formalizarainformação– Proveramploacessoapartirdediferenteslocalizaçõesfísicas– Proverumserviçodebuscauniversalqueseapliqueatodosostiposdeconhecimentosobresoftware

– Permitiracomparaçãoecorrespondência(matching)deconceitos.

Page 5: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Semantic-WebBasedSE• AabordagemdeSemantic-WebbasedSEtipicamente

envolveosseguintespassos:– RecursosdeinformaçãosobreES(processos,métodos,ferramentas,esobreosoftwareemsi)sãoreunidos.

– Conceitossãoextraídosdessesrecursoseincluídosemumaontologia,aqualéimplementadaemumalinguagemdeontologias(OWL).

– RecursosdeinformaçãosãopublicadosnaWebparaprocessamentotantoporpessoasquantoporagentesdesoftware.

Page 6: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Semantic-WebBasedSE• AideiadeZhaoetal.(Zhaoetal.2009)apoia-sena

existênciadeumaontologia(ouumconjuntodeontologias)relacionadaaodomíniodeES.

• Umaontologiacentralnestecontextoéumaontologiadeprocessodesoftware.

Ontologia de Processo de Software

Page 7: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SoftwareProcessOntology• OntologiadeProcessodeSoftware:defineatividades,fases

doprocessoemodelosdeprocesso,bemcomoartefatos.• Aplicações:– ProcessospodemsermodeladosecompartilhadosnaWeb– TécnicasdeWSpodemserusadaspara:

• automatizarprocessos,• montarprocessosdinamicamente,• adaptarelementosdeprocesso,• consultareraciocinarsobreespecificaçõesdeatividades,• reusarprodutosdetrabalho(artefatos).

Page 8: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

DomainOntologies• OntologiasdeDomíniodeAplicação:representamo

conhecimentosobreumdomíniodeaplicaçãoeainformaçãodenegóciorequeridaparaconstruiraplicaçõesnestedomínioespecífico.SãoresultadodeumprocessodeEngenhariadeDomínio.

• Aplicações:– ConhecimentodedomíniopodesermodeladoecompartilhadonaWeb,tantoparaaprendizadoquantoparareúsoemdiversasatividadesdoprocessodesoftware.

Page 9: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

RequirementOntology• OntologiadeComportamentodeSistema:modela

comportamentosdesistemaeasaçõesqueosistemarealizaemcertoscenários.Principaisconceitos:evento,açãoetc.

• Aplicações:– UsonaEngenhariadeRequisitos.

Page 10: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ArchitectureandDesignOntologies• OntologiadeArquiteturadeSoftware:modelaconceitos

relacionadosaarquitetura,taiscomoestilosarquitetônicos,componentesesuasinterações.

• Aplicações:– Descreverestilosarquitetônicos.

• OntologiadeDesignOO:defineconceitosusadosnamodelagemOO,taiscomoclasses,interfaces,métodoseatributos.

Page 11: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

PatternOntology• OntologiadePattern:visaproverumcatálogo(???)de

patterns,incluindodesignpatterns,patternsdeusabilidade,patternsdeaplicaçõesWeb,etc.

• Aplicações:– Descreverformalmenteospatterns.

Page 12: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ImplementationOntologies• OntologiadeArtefatodeSoftware:provêumconjuntode

conceitosquepermitemclassificarosdiferentesartefatosdeacordocomseusformatoseestruturasinterna(arquivosdetexto,diagramas,imagens,códigoetc.)oudeacordocomseustipos (códigofonte,designedocumentação).Inclui,ainda,conceitosrelacionadosaartefatos,talcomopessoa quepodeserocriadordoartefato,eprojeto ondeoartefatopodeserproduzido.

• Aplicações:– Organizarartefatosproduzidosduranteaimplementação(?).

Page 13: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ImplementationOntologies• OntologiadeCódigoFonteOO:formalmenteespecificaros

principaisconceitosdelinguagensdeprogramaçãoOO,taiscomopacote,classe,atributo,método,parâmetro,variáveletc.

• AdiferençaentreestaontologiaeaontologiadeDesignOOéqueestaenvolvemaisconstrutosdelinguagensdeprogramaçãoquenãosãousadosnodesign,talcomovariáveislocais.

Page 14: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ImplementationOntologies• OntologiadeVersão:visamodelarosrelacionamentos

entrearquivos,releaseserevisõesemprojetosdesoftware.• OntologiadeConfiguraçãodeSoftware:modelarestrições

(p.ex.,dependência)entrecomponenteseversões.• Aplicações:– Facilitaragerênciadeconfiguração.

Page 15: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

DocumentationOntologies• OntologiadeDocumentação:consistedeumagrande

quantidadedeconceitosquepodemaparecernoconteúdodedocumentosdesoftware(?).

• OntologiadeDocumento:modelatiposdedocumentoseseusrelacionamentos(useTemplate,related,refinedIn,update,etc.).

• Adiferençaentreessasontologiaséqueaontologiadedocumentovisaorganizardocumentos,enquantoaontologiadedocumentaçãovisaorganizarainformaçãoregistradanosdocumentos.

Page 16: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

QualityOntologies• OntologiadeQualidade:representaconhecimentoreusável

sobrediferentescaracterísticas,subcaracterísticasemétricasdequalidade.

• OntologiadeTeste:defineconceitosrelacionadosateste,taiscomotestador,ambiente,contexto,artefatosendotestado,métododetesteeatividade.

Page 17: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

QualityOntologies• OntologiadeDefeito:defineosconceitosusadospara

descreverdefeitosencontradosduranteafasedetestedesoftware,taiscomodefeito,ação,pessoaecomentário.

Page 18: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

MaintenanceOntology• OntologiadeProcessodeManutençãodeSoftware:define

osconceitosrelacionadosàmanutençãoesuasrelações,taiscomoatividade(atividadedemanutenção,atividadedemodificaçãoetc.),pessoa(engenheirodemanutenção,clienteetc.),procedimento,recursoetc.

Page 19: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

TechnologyOntology• OntologiadeTecnologia:éumrepositóriodetecnologiasde

desenvolvimentodesoftware,ambientes,plataformas,ferramentasetc.

Page 20: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ClassificaçãodeOntologias• Deacordocomasatividadesrelacionadas(atividades

facilitadaspelasontologias)

?

?

Page 21: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ClassificaçãodeOntologias• Deacordocomotipodeinformaçãosendomodelada

Page 22: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ClassificaçãodeOntologias• Deacordocomoescopodeaplicação

Systemconfiguration ontologyismainlydesignedtocaptureconstraintsandinterrelationshipsbetweencomponentsofasystem.Eachsoftwaresystemshouldhaveitsownconfiguration.Thus,thisontologyisproject-specific.Documentationontologyconsistsofalargebodyofconceptsthatareexpectedtoappearinthecontentofdocuments.Theinformationwithinthisontologyismainlyrelatedtoaspecificproject.

?

?

Page 23: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

UsodeOntologiasnaES• Apartirdeumaperspectivadeciclodevida:– Requisitos:

• Ontologiasdedomínio:apoioaolevantamentoderequisitosfuncionais.

• Ontologiadequalidade:apoioaolevantamentoderequisitosnãofuncionais.

• Ontologiasdedomínio:aprendizadosobreodomínio.• Ontologiasdedomínio edecomportamentodesistema:apoioàanotaçãoerecuperaçãodecasosdeuso.

• Ontologiasdedomínio:apoioàavaliaçãoderequisitos,pormeiodemapeamentoentreitensdaespecificaçãoderequisitoseelementosdaontologiadedomínio.

Page 24: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

UsodeOntologiasnaES• Apartirdeumaperspectivadeciclodevida:– Design:

• Ontologiadepatterns:apoioàdisseminaçãoeaoaprendizadosobrepatterns.

• Ontologiasdemodelodefeatures:orientaçõesparaodesign,bemcomochecagemdeconsistência.

– ImplementaçãoeIntegração:• Ontologiasdedomínio edecódigofonteOO:geraçãodecódigo.• Ontologiasdedomínio:derivaçãodemodelosdedadosrelacionais.• Ontologiasdeconfiguraçãodesistema:serviçoswebparaconsultaeraciocíniosobreaconfiguraçãodosistema,apoiandoaavaliaçãoeachecagemautomáticadaintegração.

Page 25: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

UsodeOntologiasnaES• Apartirdeumaperspectivadeciclodevida:– Teste:

• OntologiadecódigofonteOO:apoioàdetecçãodeáreaspotencialmenteproblemáticasnocódigo.

• Ontologiadeteste:apoioàcomunicaçãoeinteraçãoentreagentesdesoftwarerealizandoatividadesdeteste.

– Manutenção:• Ontologiadeprocessodemanutenção:ferramentadeapoioaoplanejamentoegerência.

• Ontologiasdedomínio,dedesignOO,teste equalidade:apoioàgerênciadeartefatos,dependênciaseconsistênciaentreeles,bemcomoapoioaocontroledealterações.

Page 26: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

UsodeOntologiasnaES• Apartirdeumaperspectivadeciclodevida

X: já há usos?: há potencial

?

?

?

?

?

? ??

Page 27: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

UsodeOntologiasnaES• Apartirdeumaperspectivadequestõescríticas(gerais):– Documentação– Rastreabilidade– ControledeAlteração– ControledaQualidade– Reutilização– SeleçãodeTecnologiaeApoioaoProcesso

Page 28: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Documentação• Artefatosdesoftwarepodemserclassificadosdeacordo

comaontologiadeartefatosdesoftware.• Artefatospodemseranotadoscomconceitosdeontologias

dedomínio.Serviçosdebuscapodemserprovidosparafacilitaroacessoàinformação(documentaçãosemântica).

Page 29: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Rastreabilidade• Conceitosdeontologiasdedomíniopodemserusadospara

ligarartefatosrelacionados,taiscomorequisitos,componentes,códigofonteecasosdeteste.

• Ligaçõesderastreabilidadepodemserdescobertaseserviçosdebuscapodemserprovidos.

• Matrizesderastreabilidadepodemsergeradasapartirdeanotaçõesemdiferentesdocumentos.

Page 30: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ControledeAlteração• Ontologiasdedomíniopodemserumaboabasede

conhecimentoparaprevisãodealterações.Alteraçõesemrequisitosrelacionadosacertosfragmentosdaontologiapodemsercomuns.

• Ontologiasdecódigo-fonteedeversãopodemserusadasparaodesenvolvimentodeserviçosparaapoiaraanálisedeimpacto.

• Novamente,ousodeanotaçõessemânticaséabaseparaodesenvolvimentodeserviçosdessanatureza.

Page 31: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

ControledaQualidade• Ontologiadeprocessodesoftwarepodeserusadacomo

baseparaautomatizaçãodeprocesso,montagemdinâmicadeprocessoeadaptaçãodeelementosdeprocessoapartirdecomponentesdeprocesso.

• Ontologiadeprocessodesoftwarepodeserusadatambémpararaciocinarsobreatividades,liçõesaprendidasetc.

• Ontologiasdecódigo-fonte,dedefeitoedeversãopodemserusadasparaodesenvolvimentodeserviçosautomáticosdecoletademétricas.

Page 32: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Reutilização• AbordagensbaseadasemWebSemânticapodemserusadas

paraanotarativosdereúso(incluindoartefatose,emespecial,componentes)eparapermitirbuscasemântica.

• Ontologiasdeartefatosdesoftware,dedomínioedearquiteturapodemserusadasparaestefim.

Page 33: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SeleçãodeTecnologiaeApoioaoProcesso• Ferramentaspodemseranotadascominformaçõessobre

seuescopodeaplicação,requisitos,tiposdeentradaseformatosdesaída.

• Usandoontologiasdelógicadeaplicação,qualidadeetecnologia,serviçosdebuscaeseleçãodeferramentaspodemserprovidos.

• AmbientesdeEngenhariadeSoftwareBaseadosemConhecimentopodemserdesenvolvidosusandováriostiposdeontologias.

• Ferramentaspodemsersemanticamenteintegradas,usandoontologiascomointer-língua.

Page 34: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

UsodeOntologiasnaES• Apartirdeumaperspectivadequestõescríticas(gerais):

ontologiasusadasnasoluçãodeproblemas

X: já há usos?: há potencial

? ??

? ?

?? ?

?

??

?

Page 35: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiasemES• 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 36: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology• SEontology:OntologiapropostapelogrupodeDillonetal.

(Dillonetal.,2008)(Wongthongthametal.,2009)– “theworld’sfirstandonlySoftwareEngineeringOntology[…]availableonlineatwww.seontology.org”(Dillonetal.,2008).

– TheSEontologyconsistsofthefollowingsub-ontologies:• softwarerequirementsontology• softwaredesignontology• constructionontology• softwaretestingontology• softwaretoolsandmethodsontology

– InadditiontotheSEontology,thegroupatDEBIIhasdefinedaMultisiteProjectManagementOntology[3]whichconsistsof11sub-ontologies:process,product,enterprisearchitecture,softwarecomponent,actor&role,team,servicelevel,quality,risk,controlstructureandlocation.

Page 37: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEOntology

ThewholesetofsoftwareengineeringconceptsrepresentingsoftwareengineeringdomainknowledgeiscapturedinSEontology.

The specific softwareengineeringconceptsusedfortheparticularsoftwareprojectrepresentingsoftwareengineeringsubdomain knowledgearecapturedinontology.

Domainknowledgeisseparatefrominstanceknowledge.

Page 38: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology• ConhecimentododomíniodeES,desub-domíniosdaESe

acercadasinstânciasédisponibilizadoparacompartilha-mento entreengenheirosdesoftwarepelaInternet.

• Membrosdasequipes,adespeitodesualocalização,podemconsultarainformaçãosemanticamenteligadaeusá-lacomobasecomumparacomunicação.

• “OpropósitoprincipaldaSEontologyépermitiracomunicaçãoentresistemasdecomputadorouentreengenheirosdesoftwareengineersdemodoaobterumentendimentocomumdoconhecimentodeESerealizarcertostiposdecomputações”(Wongthongthametal.,2009).

Page 39: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology• Érepresentadagraficamenteusandoumanotaçãoproposta

pelosautoreseéimplementadaemOWL.• SEontologycontém362conceitose303relações.• SEontologypodeserusadaparafacilitar:– Compartilhamentodeconhecimento(Ex.:modelagemdecasosdeuso)

– Comunicação(Ex.:diagramadeatividades)• Aplicaçõespráticas:– Anotaçãoerecuperaçãodeinformação.

Page 40: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 41: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 42: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 43: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 44: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 45: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 46: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SEontology

Page 47: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOKOntology• Baseadanaversão2004doSWEBOK(Abranetal.,2006).• SWEBOK:GuidetotheSoftwareEngineeringBodyof

Knowledge:iniciativaqueproduziuumnotávelconsensoacercadeumsubconjuntodoconhecimentodeES.

• 1ªFase:envolveuaproximadamente500revisoresde42países.

• 2ªFase:envolveumaisde120revisoresde21países.

Page 48: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOK• OGuianãodeveserconfundidocomoCorpode

Conhecimentoemsi.• Opropósitodoguiaédescreverqueporçãodocorpode

conhecimentoéaceitodeformageral,organizarestaporçãoeproveracessopormeiodetópicosaela.

• Ocorpodeconhecimentoéencontradonasreferênciasenãonoguia.

48

Page 49: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOK• CategoriasdeConhecimento

Page 50: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOK:Versão2004• ÁreasdeConhecimento:– RequisitosdeSoftware– DesigndeSoftware– ConstruçãodeSoftware– TestedeSoftware– ManutençãodeSoftware– GerênciadeConfiguraçãodeSoftware– GerênciadeEngenhariadeSoftware– ProcessodeEngenhariadeSoftware– MétodoseFerramentasdeEngenhariadeSoftware– QualidadedeSoftware

50

Page 51: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOK:Versão2004• DisciplinasRelacionadas:– EngenhariadeComputação– CiênciadaComputação– Gerência– Matemática– GerênciadeProjetos– GerênciadaQualidade– ErgonomiadeSoftware– EngenhariadeSistemas

Page 52: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOK:Versão2014• ÁreasdeConhecimento:

– RequisitosdeSoftware– DesigndeSoftware– ConstruçãodeSoftware– TestedeSoftware– ManutençãodeSoftware– GerênciadeConfiguraçãodeSoftware– GerênciadeEngenhariadeSoftware– ProcessodeEngenhariadeSoftware– MétodoseModelos deEngenhariadeSoftware– QualidadedeSoftware– PráticaProfissionaldeEngenhariadeSoftware– EconomiadeEngenhariadeSoftware– FundamentosdeComputação– FundamentosdeMatemática– FundamentosdeEngenharia

52

Page 53: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOK:Versão2014• DisciplinasRelacionadas:– EngenhariadeComputação– CiênciadaComputação– GerênciaGeral– Matemática– GerênciadeProjetos– GerênciadaQualidade– EngenhariadeSistemas

Page 54: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOKOntology• FasesdoProjeto:– ConstruçãodaProto-ontologia:

• Análisedosconceitos,relaçõeseaxiomasporáreadeconhecimento.Base:GuiadoSWEBOKepadrõesISOeIEEErelacionados.

• Extraçãoautomática(processamentodelinguagemnatural)paracompletaralistadeconceitoserelações.

– CiclosdeValidaçãoInterna:inicialmentecommembrosdoprojeto,visandoprogressivamenteconstruirumconsensomaisamplo,noqueserefereaoselementosnaproto-ontologia.

– CiclosdeValidaçãoExterna:idem,masconsiderandoespecialistasnodomíniodeESdereputaçãointernacional.Nãoficaclarosefoifeita(otextodizque“serárequerida”).

Page 55: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOKOntology:FasesdoProjeto

Page 56: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOKProto-ontology• ForamidentificadosnoGuiaSWEBOK:4.141conceitos,407

relações,1.087fatose15princípios.

Page 57: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOKOntology• Usodeumaontologiadefundamentaçãocomobase:

OpenCyc0.9.• Métododefundamentaçãousado:– EncontrarnaontologiadefundamentaçãoumaoumaiscategoriasquepodemsersupertipoparaumacategoriadaontologiadoSWEBOK.

– Checarseomapeamentoéconsistentecomorestantedaontologia.

– Proverpredicadosapropriadosparacaracterizaranovacategoria.

– EditarnoProtégé(ououtroeditor)paraseobteraversãoformalfinal.

• Aargumentação(afavoroucontra)acercadeumconceitooupredicadoéfeitatomandoOpenCyccomobase.

Page 58: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

SWEBOKOntology• Principaiselementosdaontologia,transversaisaváriasáreasde

conhecimentodoSWEBOK.• Conceitoscentrais:

– Atividade(focoematividadesefetivamenterealizadas)– subtipodeOC::PurposefulAction

– EngenheirodeSoftware(papeldesempenhadoporumagentehumano)–subtipodeOC::IntelligentAgent,excludingcollectives:Equipe,Organização)

– Artefato(OC::Artifact)– Documento(“Animportantontologicaldifferentiationisthatof

Documentsandits“propositional”content,i.e.theinformationtheycontain.”)

– ProgramadeComputador:(OC::ComputerProgram,whichis“distinctfromcomputercodeandfrombothrunningandinstalledprograms.”)

Page 59: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiaparaMetodologiaseEsforçosdeDesenvolvimentodeSoftware

Page 60: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiaparaMetodologiaseEsforçosdeDesenvolvimentodeSoftware

Page 61: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiaparaMetodologiaseEsforçosdeDesenvolvimentodeSoftware- Processo

Page 62: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiaparaMetodologiaseEsforçosdeDesenvolvimentodeSoftware– Estágios

Page 63: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiaparaMetodologiaseEsforçosdeDesenvolvimentodeSoftware- Produto

Page 64: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

OntologiaparaMetodologiaseEsforçosdeDesenvolvimentodeSoftware- Produtor

Page 65: Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf · • Ontologias de domínio: derivação de modelos de dados relacionais. • Ontologias

Referências• Abran,A.,Cuadrado,J.J.,García-Barriocanal,E.,Mendes,O.,Sánchez-Alonso,

S.,Sicilia,M.A.,EngineeringtheOntologyfortheSWEBOK:IssuesandTechniques.In:OntologiesinSoftwareEngineeringandSoftwareTechnology,Calero,C.,Ruiz,F.,Piatinni,M.(Eds.),Springer,2006,pp.103- 121.

• Wongthongtham,P.,Chang,E.,Dillon,T,S.,Sommerville,I.,DevelopmentofaSoftwareEngineeringOntologyforMultisiteSoftwareDevelopment, IEEETransactionsonKnowledgeandDataEngineering,vol.21,no.8,August2009,pp.1205- 1217 .

• Zhao,Y.,Dong,J.,Peng,T.,OntologyClassificationforSemantic-Web-BasedSoftwareEngineering,IEEETransactionsonServicesComputing,vol.2,no.4,October-December2009,pp.303- 317 .