OpenMLPerf - linguagem específica de domínio gráfica para testes de desempenho em sistemas web
Autor(a) principal: | |
---|---|
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_ |
1813274833543233536 |