Dissertação de mestrado
Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
Fecha
2021-07-02Autor
Avancini, Rodrigo [UNIFESP]
Institución
Resumen
Ecossistema de Software (SECO) é uma área de pesquisa consolidada da Engenharia de Software, emergindo como um paradigma para o entendimento da dinâmica e dos relacionamentos entre sistemas de software que colaboram entre si para atingir seus objetivos. Entender um ecossistema de software e como seus elementos interagem é essencial para a evolução dos sistemas envolvidos, principalmente para aqueles que fornecem funções e serviços para outros sistemas, como APIs. Uma vez que uma API está sendo utilizada por outras aplicações, futuras alterações precisam ser feitas de forma sistemática e adequada, considerando seu ecossistema. No entanto, ainda existe uma grande demanda de se desenvolver formas eficazes para avaliação do uso de APIs no contexto de SECO. Assim, neste trabalho, foi desenvolvido o Ecolyzer, uma ferramenta de visualização de software que visa a apoiar a análise e avaliação do uso de uma API, por meio de uma visualização interativa e métricas que consideram seu ecossistema. Para mostrar a viabilidade e exequibilidade da solução proposta, foi conduzido primeiramente uma prova de conceito (PoC) usando uma API de código livre escrita na linguagem de programação Lua. Em seguida, realizou-se uma avaliação do uso de uma API de código livre escrita em Java, amplamente utilizada por outras aplicações. Os resultados obtidos com o Ecolyzer foram satisfatórios e evidenciam que a ferramenta é útil e promissora, fornecendo insights importantes que auxiliam no planejamento estratégico para evolução de APIs, levando em consideração seus ecossistemas. Software Ecosystem (SECO) is a consolidated research area of Software Engineering, emerging as a paradigm for understanding the dynamics and relationships among software systems that collaborate with each other to achieve their goals. Understanding a software ecosystem and how its elements interact is essential for the evolution of the systems involved, especially for those that provide functions and services for other systems, such as APIs. Since an API is being used by other applications, future changes need to be made in a systematic and appropriate manner, considering its ecosystem. However, there is still a great demand to develop effective ways to evaluate API usage in the context of SECO. Thus, in this work, Ecolyzer was developed, a software visualization tool that aims to support the analysis and evaluation of the use of an API, through an interactive visualization and metrics that consider its ecosystem. To show the feasibility and implementability of the proposed solution, a proof of concept (PoC) was first conducted using an open-source API written in the Lua programming language. Then, an evaluation was made of the use of an open-source API written in Java, widely used by other applications. The results obtained with Ecolyzer were satisfactory and show that the tool is useful and promising, providing important insights to assist in strategic planning for the evolution of APIs, taking into account their ecosystems.
Ítems relacionados
Mostrando ítems relacionados por Título, autor o materia.
-
Uma abordagem de linhas de produtos de software para apoiar e-Science
Foschiani, Fernanda Yara dos Santos, 1983- -
Abordagem de pontos de função no desenvolvimento de sistemas utilizando práticas ágeis
Silva, Marcelo Mendes da (Universidade Tecnológica Federal do ParanáCuritibaBrasilPrograma de Pós-Graduação em Computação AplicadaUTFPR, 2019-12-12)Function point analysis is a technique that enables the measurement of software development projects and, thus, establish a size unit that is used in software project management. Currently, agile methods and practices have ... -
Metodologia de projeto de software orientado a notificações
Mendonca, Igor Thiago Marques (Universidade Tecnológica Federal do ParanáCuritibaBrasilPrograma de Pós-Graduação em Engenharia Elétrica e Informática IndustrialUTFPR, 2020-12-17)Many studies have been proposed to mitigate problems of productivity, quality and increasing complexity in the software industry. One of these studies proposes a new computing approach called Notification Oriented Paradigm ...