Use este identificador para citar ou linkar para este item: https://repositorio.unipampa.edu.br/jspui/handle/riu/4226
Tipo: Trabalho de Conclusão de Curso
Título: OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
Autor(es): Carbonell, João Batista Pedroso
Primeiro Orientador: Rodrigues, Élder de Macedo
Coorientador: Silveira, Maicon Bernardino da
Resumo: Testar o desempenho de um sistema é uma importante atividade realizada durante o processo de desenvolvimento de software, assim como, durante a sua evolução e na manutenibilidade das infraestruturas que o cercam. Atualmente, grande parte dos projetos de testes de desempenho consistem em testar um sistema que já foi implementado. Isto torna difícil prever quais problemas precisam ser corrigidos durante o desenvolvimento, tais como carga suportada e gargalos rede. Por estes motivos é recomendável investigar mecanismos e métodos para realizar a modelagem e especificar as informações do sistema, antes e durante o processo de desenvolvimento. Uma das soluções encontradas na literatura é a utilização de modelos que representem aspectos imutáveis do domínio do sistema, como características da infraestrutura ou de comportamentos dos usuários. Utilizar modelos para abstração, definição e modelagem de aspectos de um domínio vem sendo uma das abordagens mais utilizada atualmente para resolver problemas de sistemas em contextos específicos, o qual vem ao encontro com um dos princípios da Engenharia Dirigida por Modelos (MDE - Model Driven Engineering), que é utilizar modelos em todas as etapas do ciclo de vida do software. Uma das formas de especificar e modelar um domínio é a utilização de Linguagens Específicas de Domínio (Domain-Specific Language - DSL). DSLs são pequenas linguagens, com expressividade limitada a um determinado domínio. Diferentemente de linguagens convencionas de propósito geral, como Python e JAVA, DSLs não podem ser utilizadas para programar sistemas para qualquer domínio, sendo restritas apenas ao seu propósito inicial. Este trabalho apresenta a implementação de um DSL gráfica, baseada na DSL Canopus, para a modelagem de testes de desempenho para sistemas web. Na implementação original da Canopus foram utilizadas tecnologias de licença comercial, o que restringiu a sua adoção, distribuição e evolução. Assim, propomos uma nova versão, chamada OpenMLPerf, que será distribuída de forma aberta para uso, melhorias e evolução. Para dar suporte na seleção das ferramentas de suporte ao desenvolvimento de DSL utilizada neste trabalho foi realizado um Mapeamento Sistemático da Literatura, onde foram encontradas 53 ferramentas, que apoiam alguma etapa do processo de desenvolvimento de DSL. Ao final, foram escolhidos os frameworks Ecore, do Eclipse Modeling Framework (EMF) e Sirius para a implementação do metamodelo e linguagem de modelagem. Para avaliar a DSL proposta foi conduzida uma avaliação empírica com a intenção de verificar o esforço dedicado pelo usuário para realizar a modelagem de um cenário de teste de desempenho utilizando a abordagem com a DSL Canopus em comparação com um perfil UML para teste de desempenho. Os resultados apresentam evidências de que ao realizar a modelagem com ambas as abordagens, houve um proximidade nos esforços dos participantes, entretanto, a abordagem com a OpenMLPerf foi prejudicada por problemas de desempenho relacionados a plataforma Eclipse.
Abstract: Test a system performance is one of the most important tasks in software development process and evolution. Most of the performance tests currently applied consist on testing an implemented system, which make difficult to predict problems, such as load capacities and bottlenecks. Thus, it is recommended to find mechanisms for modeling and specifing the system information before the implementation. A possible solution is the use of models which represent unchangeable aspects from the system domain, such as infrastructure features or users behavior. Use models to abstract, define and model aspects from a domain, nowadays become the most commonly used approaches to solve a problem in a specific context which meets with one of Model-Driven Engineering (MDE) principles, which are to use models in all software cycle-life. One way to specify and model a domain is using Domain-Specific Languages (DSL). DSL are small languages, with limited expressiveness to a determined domain. Different from general purpose languages, such as python and JAVA, DSL are not used to implement systems for any domain, being restricted just to their initial purpose. In this work, we propose the reimplementation of a graphical DSL, named as Canopus, to model performance tests for web systems. In Canopus implementation has used comercial licenses technologies, this restricted its distribution and evolution. Thus, is proposed a new version of this DSL, named OpenMLPerf, will be released in open source license allowing the use, improvement and evolution. To select of DSL support development tool, we performed a Systematic Mapping Study, where we found fifty-three (53) DSL supporting tools. We choose Ecore, from Eclipse Modeling Framework (EMF), and Sirius framework to implement the language metamodel and modeling language. An empirical evaluation was performed to verify the effort required by the user to model a performance test scenario using the OpenMLPerf approach in comparison a UML profile for performance test. The results present evidences a very close effort by the participants who model using both approachs, however, OpenMLPerf approach was affected by performance issues related to Eclipse platform.
Palavras-chave: Engenharia de software
Desenvolvimento de software
Teste de desempenho
Software engineering
Software development
Performance test
CNPq: CNPQ::CIENCIAS EXATAS E DA TERRA
Idioma: por
País: Brasil
Editor: Universidade Federal do Pampa
Sigla da Instituição: UNIPAMPA
Campus: Campus Alegrete
Citação: CARBONELL, João Batista Pedroso. OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web. Orientador: Élder de Macedo Rodrigues. 2019. 109 p. Trabalho de Conclusão de Curso (Bacharel em Engenharia de Software) - Universidade Federal do Pampa, Curso de Engenharia de Software, Alegrete, 2019.
Tipo de Acesso: Acesso Aberto
URI: http://dspace.unipampa.edu.br:8080/jspui/handle/riu/4226
Data do documento: 28-Jun-2019
Aparece nas coleções:Engenharia de Software

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
João Batista pedroso Cabonell - 2019.pdf5.64 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.