masterThesis
Definição e detecção de design smells em aplicações de processamento em lotes utilizando spring batch framework
Fecha
2020-08-31Registro en:
MELO, Deyvisson Carlos Borges de. Definição e detecção de design smells em aplicações de processamento em lotes utilizando spring batch framework. 2020. 86f. Dissertação (Mestrado Profissional em Tecnologia da Informação) - Instituto Metrópole Digital, Universidade Federal do Rio Grande do Norte, Natal, 2020.
Autor
Melo, Deyvisson Carlos Borges de
Resumen
To meet the constant changes of requirements and needs for new features, software
systems always remain in a state of constant evolution. The control of the software
evolution and maintenance process is crucial and one of the most complicated phases of
software development. If this control is not managed, systems are at risk of degradation of
important quality attributes, that consequently directly affect the degree of maintainability
of applications. Factors such as inexperience, lack of knowledge and pressure in relation
to the time to complete tasks lead to the adoption of bad practices of software design
and are the origin of Design Smells. In order to obtain a better control of the software
evolution and maintenance process, it is important to know how to identify the occurrence
of Design Smells in projects, and new studies indicate that the use of information specific
to the context of the application, such as the nature of the programs or architectural
roles used, can influence the detection process and the identification of problems that
only exist in the studied context. This work carries out a study to define and identify
Design Smells specific to the context of batch applications, and proposes the definition of a
catalog with 7 Design Smells and the implementation of a tool to automate the detection
process. The implemented tool was used in a case study in which the codes of 40 systems
were analyzed. In this study, it was observed that smells specific to the context of batch
processing applications affected almost 20% of the classes and more than 30% of the lines
of code of the systems analyzed. It was also possible to observe, through the application of
the tool in several versions of two systems, that the number of smells remained constant
throughout the versions, and in some cases it even grew. What can evidence the lack
of knowledge about the existence of the smells and the negative impacts that they can
incorporate in the applications.