OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web

Detalhes bibliográficos
Autor(a) principal: Carbonell, João Batista Pedroso
Data de Publicação: 2019
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UNIPAMPA
Texto Completo: http://dspace.unipampa.edu.br:8080/jspui/handle/riu/4226
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.
id UNIP_f0174fb8d7757d3658ce088adddeed24
oai_identifier_str oai:repositorio.unipampa.edu.br:riu/4226
network_acronym_str UNIP
network_name_str Repositório Institucional da UNIPAMPA
repository_id_str
spelling Rodrigues, Élder de MacedoSilveira, Maicon Bernardino daCarbonell, João Batista Pedroso2019-08-07T12:56:17Z2019-08-07T12:56:17Z2019-06-28CARBONELL, 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.http://dspace.unipampa.edu.br:8080/jspui/handle/riu/4226Testar 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.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.porUniversidade Federal do PampaUNIPAMPABrasilCampus AlegreteCNPQ::CIENCIAS EXATAS E DA TERRAEngenharia de softwareDesenvolvimento de softwareTeste de desempenhoSoftware engineeringSoftware developmentPerformance testOpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas webinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UNIPAMPAinstname:Universidade Federal do Pampa (UNIPAMPA)instacron:UNIPAMPAORIGINALJoão Batista pedroso Cabonell - 2019.pdfJoão Batista pedroso Cabonell - 2019.pdfapplication/pdf5779751https://repositorio.unipampa.edu.br/jspui/bitstream/riu/4226/1/Jo%c3%a3o%20Batista%20pedroso%20Cabonell%20-%202019.pdf894be9ed8172d5391296c365d82c6ad5MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81866https://repositorio.unipampa.edu.br/jspui/bitstream/riu/4226/2/license.txt43cd690d6a359e86c1fe3d5b7cba0c9bMD52TEXTJoão Batista pedroso Cabonell - 2019.pdf.txtJoão Batista pedroso Cabonell - 2019.pdf.txtExtracted texttext/plain176264https://repositorio.unipampa.edu.br/jspui/bitstream/riu/4226/3/Jo%c3%a3o%20Batista%20pedroso%20Cabonell%20-%202019.pdf.txt3cbca22ed618c80bfc7d973f99200853MD53riu/42262019-08-08 03:01:13.6oai:repositorio.unipampa.edu.br:riu/4226TElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEKCkNvbSBhIGFwcmVzZW50YcOnw6NvIGRlc3RhIGxpY2Vuw6dhLCB2b2PDqiAobyBhdXRvciAoZXMpIG91IG8gdGl0dWxhciBkb3MgZGlyZWl0b3MgZGUgYXV0b3IpIGNvbmNlZGUgYW8gUmVwb3NpdMOzcmlvIApJbnN0aXR1Y2lvbmFsIG8gZGlyZWl0byBuw6NvLWV4Y2x1c2l2byBkZSByZXByb2R1emlyLCAgdHJhZHV6aXIgKGNvbmZvcm1lIGRlZmluaWRvIGFiYWl4byksIGUvb3UgZGlzdHJpYnVpciBhIApzdWEgcHVibGljYcOnw6NvIChpbmNsdWluZG8gbyByZXN1bW8pIHBvciB0b2RvIG8gbXVuZG8gbm8gZm9ybWF0byBpbXByZXNzbyBlIGVsZXRyw7RuaWNvIGUgZW0gcXVhbHF1ZXIgbWVpbywgaW5jbHVpbmRvIG9zIApmb3JtYXRvcyDDoXVkaW8gb3UgdsOtZGVvLgoKVm9jw6ogY29uY29yZGEgcXVlIG8gRGVwb3NpdGEgcG9kZSwgc2VtIGFsdGVyYXIgbyBjb250ZcO6ZG8sIHRyYW5zcG9yIGEgc3VhIHB1YmxpY2HDp8OjbyBwYXJhIHF1YWxxdWVyIG1laW8gb3UgZm9ybWF0byAKcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBvIERlcG9zaXRhIHBvZGUgbWFudGVyIG1haXMgZGUgdW1hIGPDs3BpYSBkZSBzdWEgcHVibGljYcOnw6NvIHBhcmEgZmlucyBkZSBzZWd1cmFuw6dhLCBiYWNrLXVwIAplIHByZXNlcnZhw6fDo28uCgpWb2PDqiBkZWNsYXJhIHF1ZSBhIHN1YSBwdWJsaWNhw6fDo28gw6kgb3JpZ2luYWwgZSBxdWUgdm9jw6ogdGVtIG8gcG9kZXIgZGUgY29uY2VkZXIgb3MgZGlyZWl0b3MgY29udGlkb3MgbmVzdGEgbGljZW7Dp2EuIApWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRhIHN1YSBwdWJsaWNhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IGNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgCmRlIG5pbmd1w6ltLgoKQ2FzbyBhIHN1YSBwdWJsaWNhw6fDo28gY29udGVuaGEgbWF0ZXJpYWwgcXVlIHZvY8OqIG7Do28gcG9zc3VpIGEgdGl0dWxhcmlkYWRlIGRvcyBkaXJlaXRvcyBhdXRvcmFpcywgdm9jw6ogZGVjbGFyYSBxdWUgCm9idGV2ZSBhIHBlcm1pc3PDo28gaXJyZXN0cml0YSBkbyBkZXRlbnRvciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgcGFyYSBjb25jZWRlciBhbyBEZXBvc2l0YSBvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgCm5lc3RhIGxpY2Vuw6dhLCBlIHF1ZSBlc3NlIG1hdGVyaWFsIGRlIHByb3ByaWVkYWRlIGRlIHRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIGlkZW50aWZpY2FkbyBlIHJlY29uaGVjaWRvIG5vIHRleHRvIApvdSBubyBjb250ZcO6ZG8gZGEgcHVibGljYcOnw6NvIG9yYSBkZXBvc2l0YWRhLgoKQ0FTTyBBIFBVQkxJQ0HDh8ODTyBPUkEgREVQT1NJVEFEQSBURU5IQSBTSURPIFJFU1VMVEFETyBERSBVTSBQQVRST0PDjU5JTyBPVSBBUE9JTyBERSBVTUEgQUfDik5DSUEgREUgRk9NRU5UTyBPVSBPVVRSTyAKT1JHQU5JU01PLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyBUQU1Cw4lNIEFTIERFTUFJUyBPQlJJR0HDh8OVRVMgCkVYSUdJREFTIFBPUiBDT05UUkFUTyBPVSBBQ09SRE8uCgpPIERlcG9zaXRhIHNlIGNvbXByb21ldGUgYSBpZGVudGlmaWNhciBjbGFyYW1lbnRlIG8gc2V1IG5vbWUgKHMpIG91IG8ocykgbm9tZShzKSBkbyhzKSBkZXRlbnRvcihlcykgZG9zIGRpcmVpdG9zIAphdXRvcmFpcyBkYSBwdWJsaWNhw6fDo28sIGUgbsOjbyBmYXLDoSBxdWFscXVlciBhbHRlcmHDp8OjbywgYWzDqW0gZGFxdWVsYXMgY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbsOnYS4KRepositório InstitucionalPUBhttp://dspace.unipampa.edu.br:8080/oai/requestsisbi@unipampa.edu.bropendoar:2019-08-08T06:01:13Repositório Institucional da UNIPAMPA - Universidade Federal do Pampa (UNIPAMPA)false
dc.title.pt_BR.fl_str_mv OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
title OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
spellingShingle OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
Carbonell, João Batista Pedroso
CNPQ::CIENCIAS EXATAS E DA TERRA
Engenharia de software
Desenvolvimento de software
Teste de desempenho
Software engineering
Software development
Performance test
title_short OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
title_full OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
title_fullStr OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
title_full_unstemmed OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
title_sort OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
author Carbonell, João Batista Pedroso
author_facet Carbonell, João Batista Pedroso
author_role author
dc.contributor.advisor1.fl_str_mv Rodrigues, Élder de Macedo
dc.contributor.advisor-co1.fl_str_mv Silveira, Maicon Bernardino da
dc.contributor.author.fl_str_mv Carbonell, João Batista Pedroso
contributor_str_mv Rodrigues, Élder de Macedo
Silveira, Maicon Bernardino da
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA
topic CNPQ::CIENCIAS EXATAS E DA TERRA
Engenharia de software
Desenvolvimento de software
Teste de desempenho
Software engineering
Software development
Performance test
dc.subject.por.fl_str_mv Engenharia de software
Desenvolvimento de software
Teste de desempenho
Software engineering
Software development
Performance test
description 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.
publishDate 2019
dc.date.accessioned.fl_str_mv 2019-08-07T12:56:17Z
dc.date.available.fl_str_mv 2019-08-07T12:56:17Z
dc.date.issued.fl_str_mv 2019-06-28
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv 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.
dc.identifier.uri.fl_str_mv http://dspace.unipampa.edu.br:8080/jspui/handle/riu/4226
identifier_str_mv 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.
url http://dspace.unipampa.edu.br:8080/jspui/handle/riu/4226
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.publisher.none.fl_str_mv Universidade Federal do Pampa
dc.publisher.initials.fl_str_mv UNIPAMPA
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Campus Alegrete
publisher.none.fl_str_mv Universidade Federal do Pampa
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNIPAMPA
instname:Universidade Federal do Pampa (UNIPAMPA)
instacron:UNIPAMPA
instname_str Universidade Federal do Pampa (UNIPAMPA)
instacron_str UNIPAMPA
institution UNIPAMPA
reponame_str Repositório Institucional da UNIPAMPA
collection Repositório Institucional da UNIPAMPA
bitstream.url.fl_str_mv https://repositorio.unipampa.edu.br/jspui/bitstream/riu/4226/1/Jo%c3%a3o%20Batista%20pedroso%20Cabonell%20-%202019.pdf
https://repositorio.unipampa.edu.br/jspui/bitstream/riu/4226/2/license.txt
https://repositorio.unipampa.edu.br/jspui/bitstream/riu/4226/3/Jo%c3%a3o%20Batista%20pedroso%20Cabonell%20-%202019.pdf.txt
bitstream.checksum.fl_str_mv 894be9ed8172d5391296c365d82c6ad5
43cd690d6a359e86c1fe3d5b7cba0c9b
3cbca22ed618c80bfc7d973f99200853
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UNIPAMPA - Universidade Federal do Pampa (UNIPAMPA)
repository.mail.fl_str_mv sisbi@unipampa.edu.br
_version_ 1801849056219103232