xGen: Plataforma de geração de código

Detalhes bibliográficos
Autor(a) principal: Sousa, Pedro Emanuel Oliveira Teixeira de
Data de Publicação: 2019
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10316/88079
Resumo: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
id RCAP_b46877d684c63ecf93c74fc1c193be6d
oai_identifier_str oai:estudogeral.uc.pt:10316/88079
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling xGen: Plataforma de geração de códigoxGen: Code generation platformGeração de documentosIndústria dos produtos de cosméticaSistemas de informaçãoDesenvolvimento webGeração de códigoCode generationDocument assemblyCosmetic products industryInformation systemsWeb developmentDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e TecnologiaO trabalho realizado neste estágio insere-se em dois projetos. O xGen, que resulta do trabalho desenvolvido pelo Laboratório de Informática e Sistemas do Instituto Pedro Nunes para aplicação interna, e o VirtualLab, resultante do trabalho realizado pelo laboratório para a empresa Pharmilab.O projeto VirtualLab tem como objetivo desenvolver uma plataforma web que integra o processo de trabalho atual da Pharmilab para a produção de relatórios de segurança de produtos cosméticos. A Pharmilab passou a conseguir gerir toda a informação acerca dos produtos que analisa através da plataforma e utilizá-la para gerar esses mesmos relatórios, automatizando parte do seu processo que até então era manual.O projeto xGen visa o desenvolvimento de uma plataforma web que tem o propósito de otimizar o processo de desenvolvimento de software do laboratório recorrendo a geração de código. Acredita-se que esta mudança de paradigma levará rapidamente a uma forte redução do tempo despendido pelos programadores na produção de código repetitivo, ainda que distinto, e ao incremento da qualidade global do software produzido, quer por via de uma maior padronização dos componentes desenvolvidos, quer pelo facto de permitir os programadores terem mais tempo disponível para os processos de engenharia. O laboratório passou a ter uma ferramenta interna de trabalho que permite que os programadores desenhem os sistemas a desenvolver através de uma aplicação web e com um clique de rato obtenham um conjunto de código compilável de um software pronto para demonstração e que serve de fundação para a fase de implementação. A ferramenta deve ter também a capacidade de gerar um conjunto de documentação base do software gerado, de modo a otimizar também esta componente do processo de desenvolvimento.Antes de dar início à implementação das plataformas procedeu-se ao estudo do estado da arte, confirmando-se o carácter inovador de ambas as plataformas e onde se identificaram as tecnologias a usar para o desenvolvimento da componente de geração de documentos e da geração de código.A partir deste conhecimento, o estagiário propôs uma solução arquitetural para cada uma das plataformas, tendo sido definidos: padrão arquitetural, componentes do sistema, as interações que correm entre si, modelos de dados dos sistemas e tecnologias a utilizar.Finalmente, procedeu-se à implementação de ambas as soluções, estando a plataforma VirtualLab já em plena utilização e a xGen em processo de adoção em alguns projetos piloto. De referir que, no âmbito deste estágio, o desenvolvimento da plataforma xGen não poderia ser feito com o mesmo nível de qualidade sem a utilização de outros projetos que lhe servem de referência. Foi com este objetivo em mente que se decidiu a inclusão do projeto VirtualLab no âmbito do estágio, pelo facto de prestar um forte contributo na identificação dos padrões a utilizar no xGen e também na reutilização de conhecimento para a componente de geração de documentação. Paralelamente o estagiário acompanhou o desenvolvimento de outros projetos a decorrer no laboratório para a identificação das várias características comuns entre si.Aquando o término do estágio, o estagiário cumpriu com todos os objetivos a que se propôs, podendo já observar-se as vantagens da plataforma VirtualLab no processo do cliente, através da redução até 80% do tempo consumido na produção de relatórios e da xGen, onde rapidamente é possível criar um conjunto de ficheiros base que diminuem o tempo inicial de execução dos projetos. Paralelamente a este documento, foi também produzido um conjunto de outros documentos anexos que especificam os detalhes da implementação dos projetos.This internship is part of two projects. xGen, which is the result of the work performed by the Laboratory for Informatics and Systems of Instituto Pedro Nunes for internal use, and VirtualLab, which results from the laboratory work performed for the company Pharmilab.The VirtualLab project aims to develop a web platform that integrates the already existent Pharmilab’s process of producing safety assessment reports about cosmetic products. Pharmilab is now able to manage all the information about the products that they analyze through the platform and they can use it to generate the respective documents, automating part of their process that was manual until then.The xGen project aims to develop a web platform that has the purpose of optimizing the software development process within the laboratory recurring to code generation. It is believed that this paradigm shift will quickly lead to a significant reduction in the time spent by programmers producing repetitive, but distinct, code and it will lead to the increased overall quality of the software produced, with greater assurance of standardization of the implemented components and allowing programmers to have more time available for engineering processes. The laboratory now has an internal working tool that allows programmers to design systems through a web application that, through a simple mouse click, empowers them to obtain a set of compiled code ready for demonstration, which serves as the foundation for the development implementation phase. This tool must also be able to generate a set of base documentation about the generated software, with the additional goal of optimizing this stage of the development process.Prior to the platforms’ implementation, the state of the art was studied, confirming the innovative characteristic of both platforms and concluding which technologies were to be used for the development of the document generation and code generation components.From this knowledge, the intern proposed an architectural solution for each platform, specifying the: architectural pattern, system components and interactions that happen between them, data models of the systems and technologies to use.Finally, both solutions were implemented, with the VirtualLab platform being already in full use and xGen being adopted in some pilot projects. Under this internship, the development of the xGen platform couldn’t be done with the same quality level without studying other reference projects. It is with this objective in mind that it was decided to include the VirtualLab project in the scope of the internship, due to the strong contribution it provided in identifying the standards to be used in xGen and also in reusing the acquired knowledge for the documentation generation component. At the same time, the intern accompanied the development of other projects under development in the laboratory to identify several common characteristics among themselves.Along with the completion of the internship, the intern satisfied all the objectives, being already possible to observe the advantages of the VirtualLab platform in the client processes, which reduces up to 80% of the time consumed in the production of reports, and of the xGen, where it is possible to quickly create a set of base files that decrease the initial execution time of the projects. Along with this document, a set of documents was also produced that specifies some particularities the projects.2019-09-23info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10316/88079http://hdl.handle.net/10316/88079TID:202307255pormetadata only accessinfo:eu-repo/semantics/openAccessSousa, Pedro Emanuel Oliveira Teixeira dereponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2021-06-14T11:28:04Zoai:estudogeral.uc.pt:10316/88079Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:08:52.149323Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv xGen: Plataforma de geração de código
xGen: Code generation platform
title xGen: Plataforma de geração de código
spellingShingle xGen: Plataforma de geração de código
Sousa, Pedro Emanuel Oliveira Teixeira de
Geração de documentos
Indústria dos produtos de cosmética
Sistemas de informação
Desenvolvimento web
Geração de código
Code generation
Document assembly
Cosmetic products industry
Information systems
Web development
title_short xGen: Plataforma de geração de código
title_full xGen: Plataforma de geração de código
title_fullStr xGen: Plataforma de geração de código
title_full_unstemmed xGen: Plataforma de geração de código
title_sort xGen: Plataforma de geração de código
author Sousa, Pedro Emanuel Oliveira Teixeira de
author_facet Sousa, Pedro Emanuel Oliveira Teixeira de
author_role author
dc.contributor.author.fl_str_mv Sousa, Pedro Emanuel Oliveira Teixeira de
dc.subject.por.fl_str_mv Geração de documentos
Indústria dos produtos de cosmética
Sistemas de informação
Desenvolvimento web
Geração de código
Code generation
Document assembly
Cosmetic products industry
Information systems
Web development
topic Geração de documentos
Indústria dos produtos de cosmética
Sistemas de informação
Desenvolvimento web
Geração de código
Code generation
Document assembly
Cosmetic products industry
Information systems
Web development
description Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
publishDate 2019
dc.date.none.fl_str_mv 2019-09-23
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10316/88079
http://hdl.handle.net/10316/88079
TID:202307255
url http://hdl.handle.net/10316/88079
identifier_str_mv TID:202307255
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv metadata only access
info:eu-repo/semantics/openAccess
rights_invalid_str_mv metadata only access
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799133981692657664