Use este identificador para citar o ir al link de este elemento: http://hdl.handle.net/1843/ESBF-A9CNEX
Tipo: Dissertação de Mestrado
Título: Co-occurrence analysis of design patterns and bad smells in software systems
Autor(es): Bruno dos Santos Azevedo Cardoso
primer Tutor: Eduardo Magno Lages Figueiredo
primer miembro del tribunal : Kecia Aline Marques Ferreira
Segundo miembro del tribunal: Marco Tulio de Oliveira Valente
Resumen: Sistemas de software são muitas vezes desenvolvidos de forma que as boas práticas do paradigma orientado a objetos não são satisfeitas, causando a ocorrência de anomalias. Anomalias são sintomas ou características estruturais de uma parte do código que podem sugerir a presença de um problema mais profundo no projeto do sistema ou no código. Por outro lado, padrões de projeto têm a intenção de catalogar as melhores práticas para o desenvolvimento de sistemas de software orientados a objetos. Embora aparentemente muito divergentes, pode haver uma coocorrência de padrões de projeto e anomalias, visto que este fenômeno algumas vezes é citado em estudos na área de engenharia de software, embora discretamente. Portanto, este trabalho realiza uma análise exploratória, a fim de identificar a coocorrência de padrões de projeto e anomalias em sistemas de software, que pode acontecer devido ao uso inadequado de padrões de projeto. Para atingir este objetivo, primeiro realizamos uma revisão da literatura a fim de compreender o estado atual da arte relativo a padrões de projeto e anomalias e, em seguida, foi realizado um estudo exploratório para identificar instâncias concretas de usos indequados de padrões de projeto que levam a ocorrência de anomalias. Neste estudo, ferramentas foram usadas para a detecção de padrões deprojeto e anomalias em cinco sistemas de médio a grande porte. Os resultados do estudo indicam coocorrências interessantes, como Command com God Class e Template Method com Duplicated Code. Nós analisamos porque esses padrões provocaram o surgimento das anomalias. Discutimos também a gravidade das anomalias e, quandoapropriado, propomos alterações ao código do sistema, visando solucionar as anomalias detectadas. Esses achados indicam que, apesar de padrões de projeto catalogarem as me lhores práticas para o desenvolvimento de sistemas de software, seu uso inadequadopode ter feitos indesejados.
Abstract: Software systems are often developed in a way that good practices of the object-oriented paradigm are not fulfilled, causing the occurrence of bad smells. Bad smells are symptoms or structural characteristics in a region of code that may suggest the presence of a deeper problem in the system design or code. On the other hand, design patterns are intended to catalog the best practices for developing object-oriented software systems. Although apparently widely divergent, there may be a co-occurrence of design patterns and bad smells, since this phenomenon is sometimes cited in studies in the software engineeringfield, albeit discreetly. Therefore, this dissertation performs an exploratoryanalysis in order to identify the co-occurrence of design patterns and bad smells in software systems, that may happen due to the inadequate use of design patterns. To achieve this goal, we first perform a literature review in order to understand the current state of art concerning design patterns and bad smells and, then, we accomplish an exploratory study to identify concrete instances of design patterns inadequate usagethat lead to bad smells occurrences. In this study, we use tools for detecting design patterns and bad smells in five medium to large size systems. The study results indicate interesting co-occurrences, as Command with God Class and Template Method with Duplicated Code. We analyse why these patterns provoked the bad smells arising. Wealso discuss the severity of bad smells and, when appropriate, propose changes to the system code in order to address the detected bad smells. These findings indicate that, although design patterns catalog the best practices for developing software systems, their inadequate use may have undesired effects.
Asunto: Componente de software
Software Desenvolvimento
Computação
Software Produtividade
Software Validação
Idioma: Inglês
Editor: Universidade Federal de Minas Gerais
Sigla da Institución: UFMG
Tipo de acceso: Acesso Aberto
URI: http://hdl.handle.net/1843/ESBF-A9CNEX
Fecha del documento: 13-nov-2015
Aparece en las colecciones:Dissertações de Mestrado

archivos asociados a este elemento:
archivo Descripción TamañoFormato 
brunodossantosazevedocardoso.pdf2.8 MBAdobe PDFVisualizar/Abrir


Los elementos en el repositorio están protegidos por copyright, con todos los derechos reservados, salvo cuando es indicado lo contrario.