Projeto e implementação de um gerador automático de serviços web a partir de diagramas de classes
Dedico esse trabalho a minha família e amigos. AGRADECIMENTOS Eu agradeço ao apoio de toda minha família e amigos, em especial a minha mãe Marli Attie Schettini, a meu pai Domenico Schettini, a meu irmão Lucas Schettini e a meus amigos e colegas de mestrado: Karen, Thiago, Daniel e Iohan. Além de agradecimento muito especial a minha querida orientadora Prof. Dr. Rosana Teresinha Vaccare Braga, pela paciência e dedicação no desenvolvimento desse trabalho. "O homen é do tamanho do seu sonho"
... do seu sonho" (Fernando Pessoa) Palavras-chave: Serviços, Reúso, Unified Modeling Language, Geradores de Código, Model-Driven Development e Service Oriented Architecture. ABSTRACT SCHETTINI FILHO, D.. Projeto e implementação de um gerador automático de serviços web a partir de diagramas de classes. 2016. 185 f. Dissertação (Mestrado em Ciências -Ciências de Computação e Matemática Computacional) -Instituto de Ciências Matemáticas e de Computação (ICMC/USP), São Carlos -SP. The software development industry is constantly evolving and looking for challenges, such as: new technologies, programming languages and strategies to increase developers productivity. During the course of time, this required evolution has been concretized, especially with the emergency of concepts such as Service Oriented Architecture (SOA) and Model-Driven Development (MDD). In this context, software reuse gains importance, for example through the use of services that ease the interoperability of different systems. Software development environments, in special reuse environments, could be adapted to the SOA architecture to ease the availability of services to other environments, thus promoting its integration and possibility of reuse. After a literature review about integrated reuse environments that use services to allow resources sharing, it has been observed that there are only a few works in this direction. At the same time, it was observed that for system integration through services it is required to create an access layer for the system entities that share information. The manual implementation of these services is repetitive and error prone, especially for programmers who are not familiar with SOA. On the other hand, UML (Unified Modeling Language) class diagrams are widely known by developers and are at a level of abstraction that is sufficiently detailed to allow the derivation of access services to their classes. Thus, to meet a growing demand for systems that need to provide services to enable its integration with other systems, this master's dissertation aims to promote the automated generation of service code through transformations from model to text, where the input model is a class diagram derived from UML, and the generated services cover the basic CRUD operations. The resulting generator has been validated through two proofs of concepts and was adequate to meet the stated objectives, as the developer works with a model in a high abstraction level, and does not need to know the details related with the service implementation.