Show simple item record

dc.contributor.authorFaria, Daniel Lippi Castro de
dc.date.accessioned2022-05-04T20:26:02Z
dc.date.available2022-05-04T20:26:02Z
dc.date.issued2022-04-18
dc.identifier.citationFARIA, Daniel Lippi Castro de. Mock objects: um estudo de caso de uma aplicação na indústria. 2022. Trabalho de Conclusão de Curso (Graduação em Engenharia de Computação) – Universidade Federal de São Carlos, São Carlos, 2022. Disponível em: https://repositorio.ufscar.br/handle/ufscar/16022.*
dc.identifier.urihttps://repositorio.ufscar.br/handle/ufscar/16022
dc.description.abstractContext: Modern Java applications make extensive use of mock objects. In this context, many approaches to this topic are present in the literature. A great number of these, employ basic OO design principles, such as object interfaces. However, developers practice tend to disagree with such ideas. Aims: This study case will assess how an industry application (in Java) makes use of mock objects and how this practice is related to software quality traits and OO design principles. Method: Relying on the Factor-Criteria-Metrics quality model, this study will analyze how mock object usage correlates to the intrinsic quality factors of the investigated application. In this regard, all the 101 mock occurrences are examined under different perspectives such as mock distribution in test classes, functionalities used, refactoring required, and others. Results: In the analyzed application, mock object implementations are highly related to the design of the same. The number of dependencies in a production class is directly related to the number of mocks in the respective test class, as an example. As a consequence, poor design choices, are harmful to intrinsic quality factors such as the maintainability of the application tests. Conclusion: The application of mock objects in the assessed system ignores basic OO design principles existent in the literature. This is a sign that developers are making an immature use of the technique. Important software quality aspects are underestimated by the approach analyzed.eng
dc.description.sponsorshipNão recebi financiamentopor
dc.language.isoporpor
dc.publisherUniversidade Federal de São Carlospor
dc.rightsAttribution-NonCommercial-NoDerivs 3.0 Brazil*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/br/*
dc.subjectQualidade de Softwarepor
dc.subjectSoftware qualityeng
dc.subjectMock objectseng
dc.subjectPOOeng
dc.subjectOO designeng
dc.titleMock objects: um estudo de caso de uma aplicação na indústriapor
dc.title.alternativeMock objects: a case study of an application in the industryeng
dc.typeTCCpor
dc.contributor.advisor1Vincenzi, Auri Marcelo Rizzo
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/0611351138131709por
dc.description.resumoContexto: Aplicações modernas em Java utilizam amplamente a ideia de mock objects. Nesse cenário, diversas técnicas e abordagens de uso aparecem na literatura. Muitas dessas se ancoram em princípios básicos de design OO como a interface entre objetos. No entanto, a prática dos desenvolvedores parece não coincidir com tais propostas. Objetivos: Este estudo de caso investiga como um sistema da indústria (em Java) utiliza mock objects e como a aplicação destes se relaciona com conceitos de qualidade de software e princípios de design OO. Método: Utilizando o modelo de qualidade Factor-Criteria-Metrics, o estudo analisa as implicações do uso de mock objects em aspectos da qualidade interna do produto investigado. Para isso, todas as 101 ocorrências de mocks desse sistema foram examinadas sob diferentes perspectivas como distribuição nas classes de teste, funcionalidades utilizadas, refatoração exigida e outras. Resultados: A implementação de mock objects na aplicação analisada mostra forte ligação com o design da mesma. O número de dependências de uma classe em produção correlaciona-se ao número de mocks da classe de teste correspondente, por exemplo. Como consequência, decisões pobres em design, prejudicam em muito ideias internas de qualidade como a manutenibilidade dos testes da aplicação. Conclusão: O uso de mock objects no sistema avaliado ignora conceitos básicos de design OO existentes na literatura. Isso é um grande indício que os desenvolvedores utilizam a técnica de forma imatura ao desconsiderar importantes aspectos de qualidade de software associados à sua aplicação.por
dc.publisher.initialsUFSCarpor
dc.subject.cnpqCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpor
dc.publisher.addressCâmpus São Carlospor
dc.contributor.authorlatteshttp://lattes.cnpq.br/4412101645458658por
dc.publisher.courseEngenharia de Computação - ECpor


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record

Attribution-NonCommercial-NoDerivs 3.0 Brazil
Except where otherwise noted, this item's license is described as Attribution-NonCommercial-NoDerivs 3.0 Brazil