Um modelo de referência para ferramenta de identificação de violações da lei de demeter
Autor(a) principal: | |
---|---|
Data de Publicação: | 2015 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações do ITA |
Texto Completo: | http://www.bd.bibl.ita.br/tde_busca/arquivo.php?codArquivo=3233 |
Resumo: | Uma das principais preocupações consideradas na Engenharia de Software consiste na redução do custo de manutenção durante seu ciclo de vida, que pode compreender até 67% de seu custo total. A qualidade interna do código-fonte de um software representa um dos aspectos relacionados ao seu grau de manutenibilidade. Características de seu design como sua estruturação e facilidade de compreensão podem influenciar o esforço associado à sua manutenção. Especialistas em projetos de sistemas Orientados a Objetos (OO) defendem que a manutenção de baixo acoplamento entre os módulos resultam em produtos de software mais confiáveis e manuteníveis. Ao longo dos anos, autores formularam heurísticas para auxiliar os programadores a realizarem a tarefa de controlar o acoplamento entre módulos de um software. Uma destas heurísticas, a Lei de Demeter (Law of Demeter - LoD), foi proposta com a motivação de favorecer a modularização de um software através de sua aplicação. A Análise Estática de Código (AES) consiste em uma dentre as possíveis abordagens para automação da verificação da aderência ou violação da LoD no código-fonte de um software. Entretanto, sua aplicaçãoo pode apre- sentar alguns desafios como longos tempos de execução de análise, ruído excessivo e taxas inaceitáveis de falsos-positivos. Neste trabalho de pesquisa, se investiga, concebe, implementa e verifica um framework, denominado Law Of Demeter Reduced (LoDRed), para identificação automatizada de violações da LoD utilizando AES e redução do volume de ruídos resultantes. Nele, propõe-se ainda uma extensão para LoD, a Extensão da Lei de Demeter (Law of Demeter Extension - LoD-E) com a finalidade de investigar, definir e suportar, sob a ótica da LoD, elementos para análise de algumas construções particulares de linguagens OO como generics e lambda expressions, além de considerar a aplicação de filtros sobre agrupamentos lógicos. O framework LoDRed consiste na principal contribuição desta pesquisa. Ele define um processo, composto por quatro métodos que, em conjunto, têm a finalidade de identificar e reportar, de forma automatizada, violações da LoD e da LoD-E nos códigos-fonte de softwares. A sua implementação resultou em três produtos de software de código aberto e foi verificada nesta pesquisa por meio da execução de um experimento que apresentou redução no volume de ruídos da ordem de até 95%. |
id |
ITA_bcd7a51fab4f879bf34b764f4c471323 |
---|---|
oai_identifier_str |
oai:agregador.ibict.br.BDTD_ITA:oai:ita.br:3233 |
network_acronym_str |
ITA |
network_name_str |
Biblioteca Digital de Teses e Dissertações do ITA |
spelling |
Um modelo de referência para ferramenta de identificação de violações da lei de demeterProgramação orientada para objetosManutenção de softwareAnálise estatísticaCódigos computacionaisDesenvolvimento de softwareEngenharia de softwareUma das principais preocupações consideradas na Engenharia de Software consiste na redução do custo de manutenção durante seu ciclo de vida, que pode compreender até 67% de seu custo total. A qualidade interna do código-fonte de um software representa um dos aspectos relacionados ao seu grau de manutenibilidade. Características de seu design como sua estruturação e facilidade de compreensão podem influenciar o esforço associado à sua manutenção. Especialistas em projetos de sistemas Orientados a Objetos (OO) defendem que a manutenção de baixo acoplamento entre os módulos resultam em produtos de software mais confiáveis e manuteníveis. Ao longo dos anos, autores formularam heurísticas para auxiliar os programadores a realizarem a tarefa de controlar o acoplamento entre módulos de um software. Uma destas heurísticas, a Lei de Demeter (Law of Demeter - LoD), foi proposta com a motivação de favorecer a modularização de um software através de sua aplicação. A Análise Estática de Código (AES) consiste em uma dentre as possíveis abordagens para automação da verificação da aderência ou violação da LoD no código-fonte de um software. Entretanto, sua aplicaçãoo pode apre- sentar alguns desafios como longos tempos de execução de análise, ruído excessivo e taxas inaceitáveis de falsos-positivos. Neste trabalho de pesquisa, se investiga, concebe, implementa e verifica um framework, denominado Law Of Demeter Reduced (LoDRed), para identificação automatizada de violações da LoD utilizando AES e redução do volume de ruídos resultantes. Nele, propõe-se ainda uma extensão para LoD, a Extensão da Lei de Demeter (Law of Demeter Extension - LoD-E) com a finalidade de investigar, definir e suportar, sob a ótica da LoD, elementos para análise de algumas construções particulares de linguagens OO como generics e lambda expressions, além de considerar a aplicação de filtros sobre agrupamentos lógicos. O framework LoDRed consiste na principal contribuição desta pesquisa. Ele define um processo, composto por quatro métodos que, em conjunto, têm a finalidade de identificar e reportar, de forma automatizada, violações da LoD e da LoD-E nos códigos-fonte de softwares. A sua implementação resultou em três produtos de software de código aberto e foi verificada nesta pesquisa por meio da execução de um experimento que apresentou redução no volume de ruídos da ordem de até 95%.Instituto Tecnológico de AeronáuticaAdilson Marques da CunhaRoberto Pepato Mellado2015-05-14info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://www.bd.bibl.ita.br/tde_busca/arquivo.php?codArquivo=3233reponame:Biblioteca Digital de Teses e Dissertações do ITAinstname:Instituto Tecnológico de Aeronáuticainstacron:ITAporinfo:eu-repo/semantics/openAccessapplication/pdf2019-02-02T14:05:08Zoai:agregador.ibict.br.BDTD_ITA:oai:ita.br:3233http://oai.bdtd.ibict.br/requestopendoar:null2020-05-28 19:41:24.728Biblioteca Digital de Teses e Dissertações do ITA - Instituto Tecnológico de Aeronáuticatrue |
dc.title.none.fl_str_mv |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
title |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
spellingShingle |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter Roberto Pepato Mellado Programação orientada para objetos Manutenção de software Análise estatística Códigos computacionais Desenvolvimento de software Engenharia de software |
title_short |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
title_full |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
title_fullStr |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
title_full_unstemmed |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
title_sort |
Um modelo de referência para ferramenta de identificação de violações da lei de demeter |
author |
Roberto Pepato Mellado |
author_facet |
Roberto Pepato Mellado |
author_role |
author |
dc.contributor.none.fl_str_mv |
Adilson Marques da Cunha |
dc.contributor.author.fl_str_mv |
Roberto Pepato Mellado |
dc.subject.por.fl_str_mv |
Programação orientada para objetos Manutenção de software Análise estatística Códigos computacionais Desenvolvimento de software Engenharia de software |
topic |
Programação orientada para objetos Manutenção de software Análise estatística Códigos computacionais Desenvolvimento de software Engenharia de software |
dc.description.none.fl_txt_mv |
Uma das principais preocupações consideradas na Engenharia de Software consiste na redução do custo de manutenção durante seu ciclo de vida, que pode compreender até 67% de seu custo total. A qualidade interna do código-fonte de um software representa um dos aspectos relacionados ao seu grau de manutenibilidade. Características de seu design como sua estruturação e facilidade de compreensão podem influenciar o esforço associado à sua manutenção. Especialistas em projetos de sistemas Orientados a Objetos (OO) defendem que a manutenção de baixo acoplamento entre os módulos resultam em produtos de software mais confiáveis e manuteníveis. Ao longo dos anos, autores formularam heurísticas para auxiliar os programadores a realizarem a tarefa de controlar o acoplamento entre módulos de um software. Uma destas heurísticas, a Lei de Demeter (Law of Demeter - LoD), foi proposta com a motivação de favorecer a modularização de um software através de sua aplicação. A Análise Estática de Código (AES) consiste em uma dentre as possíveis abordagens para automação da verificação da aderência ou violação da LoD no código-fonte de um software. Entretanto, sua aplicaçãoo pode apre- sentar alguns desafios como longos tempos de execução de análise, ruído excessivo e taxas inaceitáveis de falsos-positivos. Neste trabalho de pesquisa, se investiga, concebe, implementa e verifica um framework, denominado Law Of Demeter Reduced (LoDRed), para identificação automatizada de violações da LoD utilizando AES e redução do volume de ruídos resultantes. Nele, propõe-se ainda uma extensão para LoD, a Extensão da Lei de Demeter (Law of Demeter Extension - LoD-E) com a finalidade de investigar, definir e suportar, sob a ótica da LoD, elementos para análise de algumas construções particulares de linguagens OO como generics e lambda expressions, além de considerar a aplicação de filtros sobre agrupamentos lógicos. O framework LoDRed consiste na principal contribuição desta pesquisa. Ele define um processo, composto por quatro métodos que, em conjunto, têm a finalidade de identificar e reportar, de forma automatizada, violações da LoD e da LoD-E nos códigos-fonte de softwares. A sua implementação resultou em três produtos de software de código aberto e foi verificada nesta pesquisa por meio da execução de um experimento que apresentou redução no volume de ruídos da ordem de até 95%. |
description |
Uma das principais preocupações consideradas na Engenharia de Software consiste na redução do custo de manutenção durante seu ciclo de vida, que pode compreender até 67% de seu custo total. A qualidade interna do código-fonte de um software representa um dos aspectos relacionados ao seu grau de manutenibilidade. Características de seu design como sua estruturação e facilidade de compreensão podem influenciar o esforço associado à sua manutenção. Especialistas em projetos de sistemas Orientados a Objetos (OO) defendem que a manutenção de baixo acoplamento entre os módulos resultam em produtos de software mais confiáveis e manuteníveis. Ao longo dos anos, autores formularam heurísticas para auxiliar os programadores a realizarem a tarefa de controlar o acoplamento entre módulos de um software. Uma destas heurísticas, a Lei de Demeter (Law of Demeter - LoD), foi proposta com a motivação de favorecer a modularização de um software através de sua aplicação. A Análise Estática de Código (AES) consiste em uma dentre as possíveis abordagens para automação da verificação da aderência ou violação da LoD no código-fonte de um software. Entretanto, sua aplicaçãoo pode apre- sentar alguns desafios como longos tempos de execução de análise, ruído excessivo e taxas inaceitáveis de falsos-positivos. Neste trabalho de pesquisa, se investiga, concebe, implementa e verifica um framework, denominado Law Of Demeter Reduced (LoDRed), para identificação automatizada de violações da LoD utilizando AES e redução do volume de ruídos resultantes. Nele, propõe-se ainda uma extensão para LoD, a Extensão da Lei de Demeter (Law of Demeter Extension - LoD-E) com a finalidade de investigar, definir e suportar, sob a ótica da LoD, elementos para análise de algumas construções particulares de linguagens OO como generics e lambda expressions, além de considerar a aplicação de filtros sobre agrupamentos lógicos. O framework LoDRed consiste na principal contribuição desta pesquisa. Ele define um processo, composto por quatro métodos que, em conjunto, têm a finalidade de identificar e reportar, de forma automatizada, violações da LoD e da LoD-E nos códigos-fonte de softwares. A sua implementação resultou em três produtos de software de código aberto e foi verificada nesta pesquisa por meio da execução de um experimento que apresentou redução no volume de ruídos da ordem de até 95%. |
publishDate |
2015 |
dc.date.none.fl_str_mv |
2015-05-14 |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis |
status_str |
publishedVersion |
format |
masterThesis |
dc.identifier.uri.fl_str_mv |
http://www.bd.bibl.ita.br/tde_busca/arquivo.php?codArquivo=3233 |
url |
http://www.bd.bibl.ita.br/tde_busca/arquivo.php?codArquivo=3233 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Instituto Tecnológico de Aeronáutica |
publisher.none.fl_str_mv |
Instituto Tecnológico de Aeronáutica |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações do ITA instname:Instituto Tecnológico de Aeronáutica instacron:ITA |
reponame_str |
Biblioteca Digital de Teses e Dissertações do ITA |
collection |
Biblioteca Digital de Teses e Dissertações do ITA |
instname_str |
Instituto Tecnológico de Aeronáutica |
instacron_str |
ITA |
institution |
ITA |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações do ITA - Instituto Tecnológico de Aeronáutica |
repository.mail.fl_str_mv |
|
subject_por_txtF_mv |
Programação orientada para objetos Manutenção de software Análise estatística Códigos computacionais Desenvolvimento de software Engenharia de software |
_version_ |
1706809297351999488 |