Submitted by Caroline Periotto (carol@ufscar.br) on 2016-09-26T20:19:11Z
No. of bitstreams: 1
DissVNE.pdf: 1613517 bytes, checksum: bd44342cd60c7332f4ed2a360b407235 (MD5) / Approved for entry into archive by Marina Freitas (marinapf@ufscar.br) on 2016-09-27T20:14:41Z (GMT) No. of bitstreams: 1
DissVNE.pdf: 1613517 bytes, checksum: bd44342cd60c7332f4ed2a360b407235 (MD5) / Approved for entry into archive by Marina Freitas (marinapf@ufscar.br) on 2016-09-27T20:14:47Z (GMT) No. of bitstreams: 1
DissVNE.pdf: 1613517 bytes, checksum: bd44342cd60c7332f4ed2a360b407235 (MD5) / Made available in DSpace on 2016-09-27T20:14:53Z (GMT). No. of bitstreams: 1
DissVNE.pdf: 1613517 bytes, checksum: bd44342cd60c7332f4ed2a360b407235 (MD5)
Previous issue date: 2016-03-07 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) / The need to improve software systems to adapt to the new technologies is a constant topic of research. As computing evolves, new challenges emerge and new solutions must be created. The increasing use of various types of devices for access to sites and software and the ease that the Internet provides the information access, force researchers to keep great efforts improving already developed applications, or even thinking of ways to facilitate the development of software to run on multiple devices. The general purpose of this master’s research was focused on this problem, distribute software systems initially designed to run on a single computer in order to eliminate many tasks that the developer thoroughly repeat this process. The approach allows developers to use the source code of any application and distribution models, perform the division of its software quickly in order to test different distributions without time cost. Using concepts of MDD (Model-Driven Development), analyzers and code generators, and concepts of microservices, it developed a partitioner that distributes the source code of an application on multiple servers, creating small services for each, making these services exchange information with each other while maintaining the functionality of the application intact. The partitioner gives flexibility to the programmer to choose the arrangement of classes among the services that will be created. Developers can then easily test different ways to distribute the code of the application without the need of having to develop services and communication between the new services. This approach was called late distribution. Experimental studies were performed to ensure the validity of the project. In total, five different tests were conducted in order to verify the creation of services would be performed as defined by the programmer. In all cases the result was satisfactory, allowing distribution of software code used between the designated servers. / A necessidade de melhoria de sistemas de software para adequarem-se às novas tecnologias é tema constante de pesquisas. Conforme a computação evolui, novos desafios surgem, e novas soluções devem ser criadas. A crescente utilização de diversos tipos de aparelhos para acesso a sites e software, além da facilidade que a Internet proporciona ao acesso de informações, força pesquisadores da área a manterem grandes esforços melhorando aplicações já desenvolvidas, ou mesmo pensando em formas de facilitar o desenvolvimento de software de forma a rodar em vários dispositivos. O intuito geral desta pesquisa de mestrado foi com foco nesse problema, de distribuir sistemas de software inicialmente projetados para rodar em um único computador de maneira a eliminar muitas tarefas que o desenvolvedor repetiria exaustivamente nesse processo. A abordagem permite que programadores possam, a partir do código fonte de alguma aplicação e modelos de distribuição, realizar a divisão do seu software de maneira rápida, a fim de testar diversas distribuições sem custo de tempo. Utilizando conceitos de DSDM (Desenvolvimento de Software Dirigido a Modelos), analisadores e geradores de código, e conceitos de microsserviços, foi desenvolvido um particionador que distribui o código fonte de uma aplicação em diversos servidores, criando pequenos serviços para cada, fazendo esses serviços trocarem informações entre si, mantendo as funcionalidades da aplicação intactas. O particionador dá flexibilidade ao programador de escolher a disposição das classes entre os serviços que serão criados. Desenvolvedores podem então, facilmente, testar diversas maneiras de distribuir o código de sua aplicação, sem a necessidade de ter que desenvolver os serviços e a comunicação entre eles. Essa abordagem foi denominada distribuição tardia. Estudos experimentais foram realizados para garantir a validade do projeto. No total, cinco testes diferentes foram conduzidos, a fim de verificar se a criação dos serviços seria realizada como definida pelo programador. Em todos os casos o resultado foi satisfatório, permitindo a distribuição do código do software utilizado entre os servidores designados.
Identifer | oai:union.ndltd.org:IBICT/oai:repositorio.ufscar.br:ufscar/7565 |
Date | 07 March 2016 |
Creators | Esperança, Vinicius Nordi |
Contributors | Lucrédio, Daniel |
Publisher | Universidade Federal de São Carlos, Câmpus São Carlos, Programa de Pós-graduação em Ciência da Computação, UFSCar |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Source | reponame:Repositório Institucional da UFSCAR, instname:Universidade Federal de São Carlos, instacron:UFSCAR |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0017 seconds