Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf ·...

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

Transcript of Ontologias de Engenharia de Software - inf.ufes.brfalbo/files/OES/OES4-Ontologias_Dominio_ES.pdf ·...

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 .