Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software

Detalhes bibliográficos
Autor(a) principal: Avancini, Rodrigo [UNIFESP]
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UNIFESP
Texto Completo: https://repositorio.unifesp.br/handle/11600/61800
Resumo: 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.
id UFSP_2b27635ea4a24ca9d9c9140e22abe5c8
oai_identifier_str oai:repositorio.unifesp.br:11600/61800
network_acronym_str UFSP
network_name_str Repositório Institucional da UNIFESP
repository_id_str 3465
spelling Avancini, Rodrigo [UNIFESP]http://lattes.cnpq.br/0585455104447750http://lattes.cnpq.br/5447376166964411Silveira, Fábio Fagundes [UNIFESP]São José dos Campos, SP2021-09-02T12:26:17Z2021-09-02T12:26:17Z2021-07-02https://repositorio.unifesp.br/handle/11600/61800Ecossistema 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.Não recebi financiamento66 f.porUniversidade Federal de São PauloEngenharia de SoftwareUso de APIEcossistemas de SoftwareVisualização de SoftwareUma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de softwareSoftware visualization tool for evaluating API usage in context of software ecosystemsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UNIFESPinstname:Universidade Federal de São Paulo (UNIFESP)instacron:UNIFESPInstituto de Ciência e Tecnologia (ICT)Ciência da ComputaçãoEngenharia de SoftwareSistemas ComputacionaisORIGINALRodrigoAvancini_DissertacaoMestrado_UNIFESP.pdfRodrigoAvancini_DissertacaoMestrado_UNIFESP.pdfapplication/pdf5055644${dspace.ui.url}/bitstream/11600/61800/1/RodrigoAvancini_DissertacaoMestrado_UNIFESP.pdff2ef22e205177c4c8f5465464736f966MD51open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-85872${dspace.ui.url}/bitstream/11600/61800/2/license.txtffb4d9eba39dd6b1a4c1ba29f72c0dc7MD52open accessTEXTRodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.txtRodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.txtExtracted texttext/plain128672${dspace.ui.url}/bitstream/11600/61800/3/RodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.txt65bb1b881fbcdbe15bcebe4eb62f4290MD53open accessTHUMBNAILRodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.jpgRodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.jpgIM Thumbnailimage/jpeg3488${dspace.ui.url}/bitstream/11600/61800/5/RodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.jpga51a8925c9174b03224c625a39531354MD55open access11600/618002023-05-24 01:10:42.303open accessoai:repositorio.unifesp.br:11600/61800VEVSTU9TIEUgQ09OREnDh8OVRVMgUEFSQSBPIExJQ0VOQ0lBTUVOVE8gRE8gQVJRVUlWQU1FTlRPLCBSRVBST0RVw4fDg08gRSBESVZVTEdBw4fDg08gUMOaQkxJQ0EgREUgQ09OVEXDmkRPIE5PIFJFUE9TSVTDk1JJTyBJTlNUSVRVQ0lPTkFMIFVOSUZFU1AKCjEuIEV1LCBSb2RyaWdvIEF2YW5jaW5pIChhdmFuY2luaXJvZHJpZ29AZ21haWwuY29tKSwgcmVzcG9uc8OhdmVsIHBlbG8gdHJhYmFsaG8g4oCcVW1hIEZlcnJhbWVudGEgZGUgVmlzdWFsaXphw6fDo28gZGUgU29mdHdhcmUgcGFyYSBBdmFsaWHDp8OjbyBkZSBVc28gZGUgQVBJIG5vIENvbnRleHRvIGRlIEVjb3NzaXN0ZW1hcyBkZSBTb2Z0d2FyZeKAnSBlL291IHVzdcOhcmlvLWRlcG9zaXRhbnRlIG5vIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIFVOSUZFU1AsYXNzZWd1cm8gbm8gcHJlc2VudGUgYXRvIHF1ZSBzb3UgdGl0dWxhciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgcGF0cmltb25pYWlzIGUvb3UgZGlyZWl0b3MgY29uZXhvcyByZWZlcmVudGVzIMOgIHRvdGFsaWRhZGUgZGEgT2JyYSBvcmEgZGVwb3NpdGFkYSBlbSBmb3JtYXRvIGRpZ2l0YWwsIGJlbSBjb21vIGRlIHNldXMgY29tcG9uZW50ZXMgbWVub3JlcywgZW0gc2UgdHJhdGFuZG8gZGUgb2JyYSBjb2xldGl2YSwgY29uZm9ybWUgbyBwcmVjZWl0dWFkbyBwZWxhIExlaSA5LjYxMC85OCBlL291IExlaSA5LjYwOS85OC4gTsOjbyBzZW5kbyBlc3RlIG8gY2FzbywgYXNzZWd1cm8gdGVyIG9idGlkbyBkaXJldGFtZW50ZSBkb3MgZGV2aWRvcyB0aXR1bGFyZXMgYXV0b3JpemHDp8OjbyBwcsOpdmlhIGUgZXhwcmVzc2EgcGFyYSBvIGRlcMOzc2l0byBlIHBhcmEgYSBkaXZ1bGdhw6fDo28gZGEgT2JyYSwgYWJyYW5nZW5kbyB0b2RvcyBvcyBkaXJlaXRvcyBhdXRvcmFpcyBlIGNvbmV4b3MgYWZldGFkb3MgcGVsYSBhc3NpbmF0dXJhIGRvIHByZXNlbnRlIHRlcm1vIGRlIGxpY2VuY2lhbWVudG8sIGRlIG1vZG8gYSBlZmV0aXZhbWVudGUgaXNlbnRhciBhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFPDo28gUGF1bG8gKFVOSUZFU1ApIGUgc2V1cyBmdW5jaW9uw6FyaW9zIGRlIHF1YWxxdWVyIHJlc3BvbnNhYmlsaWRhZGUgcGVsbyB1c28gbsOjby1hdXRvcml6YWRvIGRvIG1hdGVyaWFsIGRlcG9zaXRhZG8sIHNlamEgZW0gdmluY3VsYcOnw6NvIGFvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIFVOSUZFU1AsIHNlamEgZW0gdmluY3VsYcOnw6NvIGEgcXVhaXNxdWVyIHNlcnZpw6dvcyBkZSBidXNjYSBlIGRlIGRpc3RyaWJ1acOnw6NvIGRlIGNvbnRlw7pkbyBxdWUgZmHDp2FtIHVzbyBkYXMgaW50ZXJmYWNlcyBlIGVzcGHDp28gZGUgYXJtYXplbmFtZW50byBwcm92aWRlbmNpYWRvcyBwZWxhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFPDo28gUGF1bG8gKFVOSUZFU1ApIHBvciBtZWlvIGRlIHNldXMgc2lzdGVtYXMgaW5mb3JtYXRpemFkb3MuCgoyLiBBIGNvbmNvcmTDom5jaWEgY29tIGVzdGEgbGljZW7Dp2EgdGVtIGNvbW8gY29uc2VxdcOqbmNpYSBhIHRyYW5zZmVyw6puY2lhLCBhIHTDrXR1bG8gbsOjby1leGNsdXNpdm8gZSBuw6NvLW9uZXJvc28sIGlzZW50YSBkbyBwYWdhbWVudG8gZGUgcm95YWx0aWVzIG91IHF1YWxxdWVyIG91dHJhIGNvbnRyYXByZXN0YcOnw6NvLCBwZWN1bmnDoXJpYSBvdSBuw6NvLCDDoCBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBTw6NvIFBhdWxvIChVTklGRVNQKSBkb3MgZGlyZWl0b3MgZGUgYXJtYXplbmFyIGRpZ2l0YWxtZW50ZSwgZGUgcmVwcm9kdXppciBlIGRlIGRpc3RyaWJ1aXIgbmFjaW9uYWwgZSBpbnRlcm5hY2lvbmFsbWVudGUgYSBPYnJhLCBpbmNsdWluZG8tc2UgbyBzZXUgcmVzdW1vL2Fic3RyYWN0LCBwb3IgbWVpb3MgZWxldHLDtG5pY29zIGFvIHDDumJsaWNvIGVtIGdlcmFsLCBlbSByZWdpbWUgZGUgYWNlc3NvIGFiZXJ0by4KCjMuIEEgcHJlc2VudGUgbGljZW7Dp2EgdGFtYsOpbSBhYnJhbmdlLCBub3MgbWVzbW9zIHRlcm1vcyBlc3RhYmVsZWNpZG9zIG5vIGl0ZW0gMiwgc3VwcmEsIHF1YWxxdWVyIGRpcmVpdG8gZGUgY29tdW5pY2HDp8OjbyBhbyBww7pibGljbyBjYWLDrXZlbCBlbSByZWxhw6fDo28gw6AgT2JyYSBvcmEgZGVwb3NpdGFkYSwgaW5jbHVpbmRvLXNlIG9zIHVzb3MgcmVmZXJlbnRlcyDDoCByZXByZXNlbnRhw6fDo28gcMO6YmxpY2EgZS9vdSBleGVjdcOnw6NvIHDDumJsaWNhLCBiZW0gY29tbyBxdWFscXVlciBvdXRyYSBtb2RhbGlkYWRlIGRlIGNvbXVuaWNhw6fDo28gYW8gcMO6YmxpY28gcXVlIGV4aXN0YSBvdSB2ZW5oYSBhIGV4aXN0aXIsIG5vcyB0ZXJtb3MgZG8gYXJ0aWdvIDY4IGUgc2VndWludGVzIGRhIExlaSA5LjYxMC85OCwgbmEgZXh0ZW5zw6NvIHF1ZSBmb3IgYXBsaWPDoXZlbCBhb3Mgc2VydmnDp29zIHByZXN0YWRvcyBhbyBww7pibGljbyBwZWxhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFPDo28gUGF1bG8gKFVOSUZFU1ApLgoKNC4gRXN0YSBsaWNlbsOnYSBhYnJhbmdlLCBhaW5kYSwgbm9zIG1lc21vcyB0ZXJtb3MgZXN0YWJlbGVjaWRvcyBubyBpdGVtIDIsIHN1cHJhLCB0b2RvcyBvcyBkaXJlaXRvcyBjb25leG9zIGRlIGFydGlzdGFzIGludMOpcnByZXRlcyBvdSBleGVjdXRhbnRlcywgcHJvZHV0b3JlcyBmb25vZ3LDoWZpY29zIG91IGVtcHJlc2FzIGRlIHJhZGlvZGlmdXPDo28gcXVlIGV2ZW50dWFsbWVudGUgc2VqYW0gYXBsaWPDoXZlaXMgZW0gcmVsYcOnw6NvIMOgIG9icmEgZGVwb3NpdGFkYSwgZW0gY29uZm9ybWlkYWRlIGNvbSBvIHJlZ2ltZSBmaXhhZG8gbm8gVMOtdHVsbyBWIGRhIExlaSA5LjYxMC85OC4KCjUuIFNlIGEgT2JyYSBkZXBvc2l0YWRhIGZvaSBvdSDDqSBvYmpldG8gZGUgZmluYW5jaWFtZW50byBwb3IgaW5zdGl0dWnDp8O1ZXMgZGUgZm9tZW50byDDoCBwZXNxdWlzYSBvdSBxdWFscXVlciBvdXRyYSBzZW1lbGhhbnRlLCB2b2PDqiBvdSBvIHRpdHVsYXIgYXNzZWd1cmEgcXVlIGN1bXByaXUgdG9kYXMgYXMgb2JyaWdhw6fDtWVzIHF1ZSBsaGUgZm9yYW0gaW1wb3N0YXMgcGVsYSBpbnN0aXR1acOnw6NvIGZpbmFuY2lhZG9yYSBlbSByYXrDo28gZG8gZmluYW5jaWFtZW50bywgZSBxdWUgbsOjbyBlc3TDoSBjb250cmFyaWFuZG8gcXVhbHF1ZXIgZGlzcG9zacOnw6NvIGNvbnRyYXR1YWwgcmVmZXJlbnRlIMOgIHB1YmxpY2HDp8OjbyBkbyBjb250ZcO6ZG8gb3JhIHN1Ym1ldGlkbyBhbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBVTklGRVNQLgogCjYuIEF1dG9yaXphIGEgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZGUgU8OjbyBQYXVsbyBhIGRpc3BvbmliaWxpemFyIGEgb2JyYSBubyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBVTklGRVNQIGRlIGZvcm1hIGdyYXR1aXRhLCBkZSBhY29yZG8gY29tIGEgbGljZW7Dp2EgcMO6YmxpY2EgQ3JlYXRpdmUgQ29tbW9uczogQXRyaWJ1acOnw6NvLVNlbSBEZXJpdmHDp8O1ZXMtU2VtIERlcml2YWRvcyA0LjAgSW50ZXJuYWNpb25hbCAoQ0MgQlktTkMtTkQpLCBwZXJtaXRpbmRvIHNldSBsaXZyZSBhY2Vzc28sIHVzbyBlIGNvbXBhcnRpbGhhbWVudG8sIGRlc2RlIHF1ZSBjaXRhZGEgYSBmb250ZS4gQSBvYnJhIGNvbnRpbnVhIHByb3RlZ2lkYSBwb3IgRGlyZWl0b3MgQXV0b3JhaXMgZS9vdSBwb3Igb3V0cmFzIGxlaXMgYXBsaWPDoXZlaXMuIFF1YWxxdWVyIHVzbyBkYSBvYnJhLCBxdWUgbsOjbyBvIGF1dG9yaXphZG8gc29iIGVzdGEgbGljZW7Dp2Egb3UgcGVsYSBsZWdpc2xhw6fDo28gYXV0b3JhbCwgw6kgcHJvaWJpZG8uICAKCjcuIEF0ZXN0YSBxdWUgYSBPYnJhIHN1Ym1ldGlkYSBuw6NvIGNvbnTDqW0gcXVhbHF1ZXIgaW5mb3JtYcOnw6NvIGNvbmZpZGVuY2lhbCBzdWEgb3UgZGUgdGVyY2Vpcm9zLgoKOC4gQXRlc3RhIHF1ZSBvIHRyYWJhbGhvIHN1Ym1ldGlkbyDDqSBvcmlnaW5hbCBlIGZvaSBlbGFib3JhZG8gcmVzcGVpdGFuZG8gb3MgcHJpbmPDrXBpb3MgZGEgbW9yYWwgZSBkYSDDqXRpY2EgZSBuw6NvIHZpb2xvdSBxdWFscXVlciBkaXJlaXRvIGRlIHByb3ByaWVkYWRlIGludGVsZWN0dWFsLCBzb2IgcGVuYSBkZSByZXNwb25kZXIgY2l2aWwsIGNyaW1pbmFsLCDDqXRpY2EgZSBwcm9maXNzaW9uYWxtZW50ZSBwb3IgbWV1cyBhdG9zOwoKOS4gQXRlc3RhIHF1ZSBhIHZlcnPDo28gZG8gdHJhYmFsaG8gcHJlc2VudGUgbm8gYXJxdWl2byBzdWJtZXRpZG8gw6kgYSB2ZXJzw6NvIGRlZmluaXRpdmEgcXVlIGluY2x1aSBhcyBhbHRlcmHDp8O1ZXMgZGVjb3JyZW50ZXMgZGEgZGVmZXNhLCBzb2xpY2l0YWRhcyBwZWxhIGJhbmNhLCBzZSBob3V2ZSBhbGd1bWEsIG91IHNvbGljaXRhZGFzIHBvciBwYXJ0ZSBkZSBvcmllbnRhw6fDo28gZG9jZW50ZSByZXNwb25zw6F2ZWw7CgoxMC4gQ29uY2VkZSDDoCBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBTw6NvIFBhdWxvIChVTklGRVNQKSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZGUgcmVhbGl6YXIgcXVhaXNxdWVyIGFsdGVyYcOnw7VlcyBuYSBtw61kaWEgb3Ugbm8gZm9ybWF0byBkbyBhcnF1aXZvIHBhcmEgcHJvcMOzc2l0b3MgZGUgcHJlc2VydmHDp8OjbyBkaWdpdGFsLCBkZSBhY2Vzc2liaWxpZGFkZSBlIGRlIG1lbGhvciBpZGVudGlmaWNhw6fDo28gZG8gdHJhYmFsaG8gc3VibWV0aWRvLCBkZXNkZSBxdWUgbsOjbyBzZWphIGFsdGVyYWRvIHNldSBjb250ZcO6ZG8gaW50ZWxlY3R1YWwuCgpBbyBjb25jbHVpciBhcyBldGFwYXMgZG8gcHJvY2Vzc28gZGUgc3VibWlzc8OjbyBkZSBhcnF1aXZvcyBubyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBVTklGRVNQLCBhdGVzdG8gcXVlIGxpIGUgY29uY29yZGVpIGludGVncmFsbWVudGUgY29tIG9zIHRlcm1vcyBhY2ltYSBkZWxpbWl0YWRvcywgc2VtIGZhemVyIHF1YWxxdWVyIHJlc2VydmEgZSBub3ZhbWVudGUgY29uZmlybWFuZG8gcXVlIGN1bXBybyBvcyByZXF1aXNpdG9zIGluZGljYWRvcyBub3MgaXRlbnMgbWVuY2lvbmFkb3MgYW50ZXJpb3JtZW50ZS4KCkhhdmVuZG8gcXVhbHF1ZXIgZGlzY29yZMOibmNpYSBlbSByZWxhw6fDo28gYSBwcmVzZW50ZSBsaWNlbsOnYSBvdSBuw6NvIHNlIHZlcmlmaWNhbmRvIG8gZXhpZ2lkbyBub3MgaXRlbnMgYW50ZXJpb3Jlcywgdm9jw6ogZGV2ZSBpbnRlcnJvbXBlciBpbWVkaWF0YW1lbnRlIG8gcHJvY2Vzc28gZGUgc3VibWlzc8Ojby4gQSBjb250aW51aWRhZGUgZG8gcHJvY2Vzc28gZXF1aXZhbGUgw6AgY29uY29yZMOibmNpYSBlIMOgIGFzc2luYXR1cmEgZGVzdGUgZG9jdW1lbnRvLCBjb20gdG9kYXMgYXMgY29uc2VxdcOqbmNpYXMgbmVsZSBwcmV2aXN0YXMsIHN1amVpdGFuZG8tc2UgbyBzaWduYXTDoXJpbyBhIHNhbsOnw7VlcyBjaXZpcyBlIGNyaW1pbmFpcyBjYXNvIG7Do28gc2VqYSB0aXR1bGFyIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBwYXRyaW1vbmlhaXMgZS9vdSBjb25leG9zIGFwbGljw6F2ZWlzIMOgIE9icmEgZGVwb3NpdGFkYSBkdXJhbnRlIGVzdGUgcHJvY2Vzc28sIG91IGNhc28gbsOjbyB0ZW5oYSBvYnRpZG8gcHLDqXZpYSBlIGV4cHJlc3NhIGF1dG9yaXphw6fDo28gZG8gdGl0dWxhciBwYXJhIG8gZGVww7NzaXRvIGUgdG9kb3Mgb3MgdXNvcyBkYSBPYnJhIGVudm9sdmlkb3MuCgpTZSB0aXZlciBxdWFscXVlciBkw7p2aWRhIHF1YW50byBhb3MgdGVybW9zIGRlIGxpY2VuY2lhbWVudG8gZSBxdWFudG8gYW8gcHJvY2Vzc28gZGUgc3VibWlzc8OjbywgZW50cmUgZW0gY29udGF0byBjb20gYSBiaWJsaW90ZWNhIGRvIHNldSBjYW1wdXMgKGNvbnN1bHRlIGVtOiBodHRwczovL2JpYmxpb3RlY2FzLnVuaWZlc3AuYnIvYmlibGlvdGVjYXMtZGEtcmVkZSkuIAoKU8OjbyBQYXVsbywgV2VkIFNlcCAwMSAxMjoxODozMCBCUlQgMjAyMS4KCg==Repositório InstitucionalPUBhttp://www.repositorio.unifesp.br/oai/requestopendoar:34652023-05-24T04:10:42Repositório Institucional da UNIFESP - Universidade Federal de São Paulo (UNIFESP)false
dc.title.pt_BR.fl_str_mv Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
dc.title.alternative.pt_BR.fl_str_mv Software visualization tool for evaluating API usage in context of software ecosystems
title Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
spellingShingle Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
Avancini, Rodrigo [UNIFESP]
Engenharia de Software
Uso de API
Ecossistemas de Software
Visualização de Software
title_short Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
title_full Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
title_fullStr Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
title_full_unstemmed Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
title_sort Uma ferramenta de visualização de software para avaliação de uso de API no contexto de ecossistemas de software
author Avancini, Rodrigo [UNIFESP]
author_facet Avancini, Rodrigo [UNIFESP]
author_role author
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/0585455104447750
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/5447376166964411
dc.contributor.author.fl_str_mv Avancini, Rodrigo [UNIFESP]
dc.contributor.advisor1.fl_str_mv Silveira, Fábio Fagundes [UNIFESP]
contributor_str_mv Silveira, Fábio Fagundes [UNIFESP]
dc.subject.por.fl_str_mv Engenharia de Software
Uso de API
Ecossistemas de Software
Visualização de Software
topic Engenharia de Software
Uso de API
Ecossistemas de Software
Visualização de Software
description 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.
publishDate 2021
dc.date.accessioned.fl_str_mv 2021-09-02T12:26:17Z
dc.date.available.fl_str_mv 2021-09-02T12:26:17Z
dc.date.issued.fl_str_mv 2021-07-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://repositorio.unifesp.br/handle/11600/61800
url https://repositorio.unifesp.br/handle/11600/61800
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 66 f.
dc.coverage.spatial.pt_BR.fl_str_mv São José dos Campos, SP
dc.publisher.none.fl_str_mv Universidade Federal de São Paulo
publisher.none.fl_str_mv Universidade Federal de São Paulo
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNIFESP
instname:Universidade Federal de São Paulo (UNIFESP)
instacron:UNIFESP
instname_str Universidade Federal de São Paulo (UNIFESP)
instacron_str UNIFESP
institution UNIFESP
reponame_str Repositório Institucional da UNIFESP
collection Repositório Institucional da UNIFESP
bitstream.url.fl_str_mv ${dspace.ui.url}/bitstream/11600/61800/1/RodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf
${dspace.ui.url}/bitstream/11600/61800/2/license.txt
${dspace.ui.url}/bitstream/11600/61800/3/RodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.txt
${dspace.ui.url}/bitstream/11600/61800/5/RodrigoAvancini_DissertacaoMestrado_UNIFESP.pdf.jpg
bitstream.checksum.fl_str_mv f2ef22e205177c4c8f5465464736f966
ffb4d9eba39dd6b1a4c1ba29f72c0dc7
65bb1b881fbcdbe15bcebe4eb62f4290
a51a8925c9174b03224c625a39531354
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UNIFESP - Universidade Federal de São Paulo (UNIFESP)
repository.mail.fl_str_mv
_version_ 1802764239719366656