Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.

Detalhes bibliográficos
Autor(a) principal: Silva, Renata Brasil
Data de Publicação: 2020
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da USP
Texto Completo: https://www.teses.usp.br/teses/disponiveis/3/3141/tde-20052021-130141/
Resumo: A arquitetura de software tem papel fundamental durante o desenvolvimento e a evolução de um software. Em desenvolvimento open source, ela é crucial para possibilitar que os desenvolvedores trabalhem distribuídos geograficamente e ao mesmo tempo; além de ser uma das motivações que atraem novos colaboradores. Quando a arquitetura é afetada por problemas que aumentam o esforço de manutenção e dificultam a acomodação de novas funcionalidades, diz-se que ela está em degradação. Mesmo abordagens de desenvolvimento flexíveis, como as tipicamente usadas no desenvolvimento open source, podem ser afetadas por esse processo. São vários os motivos para a degradação da qualidade da arquitetura, dentre os quais, falta de documentação da arquitetura, mudanças de requisitos e alterações feitas por desenvolvedores menos experientes. Uma das medidas para minimizar a degradação que pode ser menos impactante para o processo diz respeito à política de desenvolvimento e a experiência dos desenvolvedores. Sendo assim, neste trabalho, investiga-se a influência da experiência dos desenvolvedores da degradação da arquitetura em desenvolvimento open source. Foram analisados quatro projetos grandes e com anos de desenvolvimento por meio da mineração de repositórios de software. Os resultados permitiram concluir que a experiência generalizada não tem relação com a degradação da arquitetura e que, por outro lado, desenvolvedores fazem boas contribuições locais nos componentes em que são especialistas, apesar de não serem conscientes do impacto nos demais componentes.
id USP_9c4626634b04030c2ad813abfd43bf85
oai_identifier_str oai:teses.usp.br:tde-20052021-130141
network_acronym_str USP
network_name_str Biblioteca Digital de Teses e Dissertações da USP
repository_id_str 2721
spelling Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.Empirical analysis of the influence of developer experience on the degradation of software architecture in open source development.Architectural degradationArquitetura de softwareDeveloper experienceExperiência de desenvolvedoresMineração de repositórios de softwareMining software repositoriesSoftware architectureA arquitetura de software tem papel fundamental durante o desenvolvimento e a evolução de um software. Em desenvolvimento open source, ela é crucial para possibilitar que os desenvolvedores trabalhem distribuídos geograficamente e ao mesmo tempo; além de ser uma das motivações que atraem novos colaboradores. Quando a arquitetura é afetada por problemas que aumentam o esforço de manutenção e dificultam a acomodação de novas funcionalidades, diz-se que ela está em degradação. Mesmo abordagens de desenvolvimento flexíveis, como as tipicamente usadas no desenvolvimento open source, podem ser afetadas por esse processo. São vários os motivos para a degradação da qualidade da arquitetura, dentre os quais, falta de documentação da arquitetura, mudanças de requisitos e alterações feitas por desenvolvedores menos experientes. Uma das medidas para minimizar a degradação que pode ser menos impactante para o processo diz respeito à política de desenvolvimento e a experiência dos desenvolvedores. Sendo assim, neste trabalho, investiga-se a influência da experiência dos desenvolvedores da degradação da arquitetura em desenvolvimento open source. Foram analisados quatro projetos grandes e com anos de desenvolvimento por meio da mineração de repositórios de software. Os resultados permitiram concluir que a experiência generalizada não tem relação com a degradação da arquitetura e que, por outro lado, desenvolvedores fazem boas contribuições locais nos componentes em que são especialistas, apesar de não serem conscientes do impacto nos demais componentes.Software architecture has a fundamental role in software development and software evolution. In open source software, architecture is essential to support distributed software development and to attract newcomer developers. When an architecture is affected by issues that increase maintenance efforts and hinders accommodation of new requirements, we can say that it degraded. Architectures might degrade even in flexible development processes, as the ones typically used by open source community.There are several factors connected to architecture quality degradation, such as lack of architectural documentation, requirements changes, and modifications made by less experienced developers. One of the less impactful alternatives to mitigate architectural degradation is the adoption of development policies that considers experience of developers. Therefore, in this work, we investigate the influence of developer experience on software architecture degradation in open source projects. We analyzed four large open source projects by mining software repositories. Our results indicate no relation between generalized experience and architecture degradation. On the other hand, our results indicate that specialists in components contribute with better quality solutions for architecture on those components, even though they are not aware of the impacts of their contributions in other components.Biblioteca Digitais de Teses e Dissertações da USPSiqueira, Fabio LevySilva, Renata Brasil2020-12-02info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://www.teses.usp.br/teses/disponiveis/3/3141/tde-20052021-130141/reponame:Biblioteca Digital de Teses e Dissertações da USPinstname:Universidade de São Paulo (USP)instacron:USPLiberar o conteúdo para acesso público.info:eu-repo/semantics/openAccesspor2021-05-20T19:19:02Zoai:teses.usp.br:tde-20052021-130141Biblioteca Digital de Teses e Dissertaçõeshttp://www.teses.usp.br/PUBhttp://www.teses.usp.br/cgi-bin/mtd2br.plvirginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.bropendoar:27212021-05-20T19:19:02Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)false
dc.title.none.fl_str_mv Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
Empirical analysis of the influence of developer experience on the degradation of software architecture in open source development.
title Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
spellingShingle Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
Silva, Renata Brasil
Architectural degradation
Arquitetura de software
Developer experience
Experiência de desenvolvedores
Mineração de repositórios de software
Mining software repositories
Software architecture
title_short Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
title_full Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
title_fullStr Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
title_full_unstemmed Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
title_sort Análise empírica da influência da experiência do desenvolvedor na degradação da arquitetura de software em desenvolvimento open source.
author Silva, Renata Brasil
author_facet Silva, Renata Brasil
author_role author
dc.contributor.none.fl_str_mv Siqueira, Fabio Levy
dc.contributor.author.fl_str_mv Silva, Renata Brasil
dc.subject.por.fl_str_mv Architectural degradation
Arquitetura de software
Developer experience
Experiência de desenvolvedores
Mineração de repositórios de software
Mining software repositories
Software architecture
topic Architectural degradation
Arquitetura de software
Developer experience
Experiência de desenvolvedores
Mineração de repositórios de software
Mining software repositories
Software architecture
description A arquitetura de software tem papel fundamental durante o desenvolvimento e a evolução de um software. Em desenvolvimento open source, ela é crucial para possibilitar que os desenvolvedores trabalhem distribuídos geograficamente e ao mesmo tempo; além de ser uma das motivações que atraem novos colaboradores. Quando a arquitetura é afetada por problemas que aumentam o esforço de manutenção e dificultam a acomodação de novas funcionalidades, diz-se que ela está em degradação. Mesmo abordagens de desenvolvimento flexíveis, como as tipicamente usadas no desenvolvimento open source, podem ser afetadas por esse processo. São vários os motivos para a degradação da qualidade da arquitetura, dentre os quais, falta de documentação da arquitetura, mudanças de requisitos e alterações feitas por desenvolvedores menos experientes. Uma das medidas para minimizar a degradação que pode ser menos impactante para o processo diz respeito à política de desenvolvimento e a experiência dos desenvolvedores. Sendo assim, neste trabalho, investiga-se a influência da experiência dos desenvolvedores da degradação da arquitetura em desenvolvimento open source. Foram analisados quatro projetos grandes e com anos de desenvolvimento por meio da mineração de repositórios de software. Os resultados permitiram concluir que a experiência generalizada não tem relação com a degradação da arquitetura e que, por outro lado, desenvolvedores fazem boas contribuições locais nos componentes em que são especialistas, apesar de não serem conscientes do impacto nos demais componentes.
publishDate 2020
dc.date.none.fl_str_mv 2020-12-02
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://www.teses.usp.br/teses/disponiveis/3/3141/tde-20052021-130141/
url https://www.teses.usp.br/teses/disponiveis/3/3141/tde-20052021-130141/
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv
dc.rights.driver.fl_str_mv Liberar o conteúdo para acesso público.
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Liberar o conteúdo para acesso público.
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.coverage.none.fl_str_mv
dc.publisher.none.fl_str_mv Biblioteca Digitais de Teses e Dissertações da USP
publisher.none.fl_str_mv Biblioteca Digitais de Teses e Dissertações da USP
dc.source.none.fl_str_mv
reponame:Biblioteca Digital de Teses e Dissertações da USP
instname:Universidade de São Paulo (USP)
instacron:USP
instname_str Universidade de São Paulo (USP)
instacron_str USP
institution USP
reponame_str Biblioteca Digital de Teses e Dissertações da USP
collection Biblioteca Digital de Teses e Dissertações da USP
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)
repository.mail.fl_str_mv virginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.br
_version_ 1809090890425171968