Submitted by Maike Costa (maiksebas@gmail.com) on 2017-06-29T15:06:59Z
No. of bitstreams: 1
arquivototal.pdf: 2340814 bytes, checksum: bdce9ccd956442015a53d57f06a00741 (MD5) / Made available in DSpace on 2017-06-29T15:06:59Z (GMT). No. of bitstreams: 1
arquivototal.pdf: 2340814 bytes, checksum: bdce9ccd956442015a53d57f06a00741 (MD5)
Previous issue date: 2016-08-23 / Software Engineering is a discipline that encompasses all aspects of the production of a software system, from the early stages of the system specification to maintenance, when the system is already being used. A very interesting area in Software Engineering is software reuse, which impacts positively on reducing time, costs and risks in software development processes. Therefore, it can be stated that software reuse improves not only the software development process, but also the product itself. One of the main approaches for software reuse is service oriented development, which adopts the Service-Oriented Architecture (SOA) paradigm. In SOA, services represent a natural evolution of component-based development, and therefore can be defined as loosely coupled, reusable software components, that encapsulate discrete functionality, can be distributed and remotely accessed through coding. It is important to highlight that while SOA is an architectural paradigm for developing software systems, Web Services represent the most widely existing technology adopted to implement SOA exploring protocols based on Internet standards and on XML. With the growth of the market and the use of web services, the tendency is always increase the number of services available for assembly applications in different contexts, making impractical the task of manually selecting the services required to compose a software system. Consequently, one can state that the effort needed to select the required services tends to increase more and more, creating a problem with a large and complex search space, making it necessary the automation of the selection process based on metaheuristic search techniques. In this context, the proposed work aims to automate the web services selection process using techniques of Search-Based Software Engineering, in which the selection strategy is guided by structural and functional metrics that have the purpose of evaluating the similarity between the specifications and respective implementations of candidate services as well as their dependencies, thus reducing the effort of adaptation and integration of web services developed by different suppliers. / Engenharia de Software é uma disciplina que engloba todos os aspectos da produção de um sistema de software, incluindo desde os estágios iniciais da especificação do sistema até sua manutenção, quando o sistema já está sendo utilizado. Uma área de estudo bastante interessante da Engenharia de Software é o reuso de software, que impacta positivamente na redução do tempo, dos custos e dos riscos provenientes de um processo de desenvolvimento de software. Portanto, é possível afirmar que o reuso de software melhora, não apenas o processo de desenvolvimento de software, mas também o próprio produto. Uma das principais abordagens de reuso de software é o desenvolvimento orientado a serviços, que adota o paradigma da Arquitetura Orientada a Serviços (SOA – Service-Oriented Architecture). No paradigma SOA, serviços representam uma evolução natural do desenvolvimento baseado em componentes, e, portanto, podem ser definidos como componentes de software de baixo acoplamento, reusáveis, que encapsulam funcionalidades discretas, que podem ser distribuídos e acessados remotamente de forma programática. É importante destacar que, enquanto SOA é um paradigma arquitetural para desenvolvimento de sistemas de software, serviços web (web services) representam a tecnologia existente mais amplamente adotada para implementar SOA explorando protocolos baseados em padrões da internet e em XML (eXtensible Markup Language). Com o crescimento do mercado e utilização dos serviços web, a tendência é sempre aumentar o número de serviços disponíveis para montagem de aplicações em diferentes contextos, tornando impraticável a tarefa de selecionar de forma manual os serviços requeridos para compor um sistema de software. Consequentemente, é possível afirmar que o esforço necessário para selecionar os serviços requeridos tende a aumentar cada vez mais, gerando um problema com um grande e complexo espaço de busca, tornando necessária a automatização do processo de seleção baseada em técnicas de busca metaheurística. Neste contexto, o trabalho proposto visa automatizar o processo de seleção de serviços web utilizando técnicas da Engenharia de Software Baseada em Buscas, cuja estratégia de seleção é orientada por métricas funcionais e estruturais, que têm o propósito de avaliar a similaridade entre as especificações e as respectivas implementações dos serviços candidatos, bem como as suas dependências, reduzindo assim o esforço de adaptação e integração de serviços web desenvolvidos por fornecedores distintos.
Identifer | oai:union.ndltd.org:IBICT/oai:tede.biblioteca.ufpb.br:tede/9037 |
Date | 23 August 2016 |
Creators | Lima, Alysson Alves de |
Contributors | Silveira, Gledson Elias da |
Publisher | Universidade Federal da Paraíba, Programa de Pós-Graduação em Informática, UFPB, Brasil, Informática |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Biblioteca Digital de Teses e Dissertações da UFPB, instname:Universidade Federal da Paraíba, instacron:UFPB |
Rights | info:eu-repo/semantics/openAccess |
Relation | 4679641312648529202, 600, 600, 600, 7879657947546587587, 3671711205811204509 |
Page generated in 0.0144 seconds