Migration from Legacy to Reactive Applications in OutSystems

Detalhes bibliográficos
Autor(a) principal: Romão, Diogo Manuel Gonçalves
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10362/130408
Resumo: A legacy system is an information system that significantly resists evolution. Through a migration, these systems can be moved to a more modernized environment without having to be redeveloped. OutSystems is a software company with a platform to develop and maintain applications using abstraction to increase productivity. In October 2019, OutSystems launched a new paradigm to allow developers to build reactive web applications. Because of this, the applications implemented in the old web paradigm turned into legacy systems. The OutSystems’ approach to this problem was a manual migration. However, it discards a considerable part of the effort previously made on the legacy system. A well-founded case study took place and allowed us to classify the UI as the most prioritized feature, but coincidently, the major bottleneck in migrations. So, this project had the following objectives: (1) The design and implementation of an automatic migration approach capable of converting UI elements to accelerate the manual migration; (2) The integration of the developed tool in the OutSystems platform. To transform the OutSystems paradigm’s elements, model-driven transformation rules must be set to receive the source UI elements and produce the target equivalent implementation in the new paradigm (each according to their model). However, the trans formations may not be straightforward, and a set of elements may need to be migrated to a different implementation due to Reactive Web’s best practices. Via the creation and search of UI patterns, it is possible to make special transformations for such scenarios. As a result, a migration approach was developed, allowing for the migration of UI (and other) elements. To complement this objective, the developed tool was integrated into the OutSystems platform with an easy to use interaction. Performance and usability tests proved the necessity and impact the final result had on the migration problem. This dissertation’s objectives were fully met and even exceeded, accelerating the man ual migration by providing an automatic UI conversion. This provided a quality increase in the existing process and results, giving OutSystems and its users the possibility of evolving their applications with considerable less effort and investment.
id RCAP_f524ce123e83154a572842352885a3f2
oai_identifier_str oai:run.unl.pt:10362/130408
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 Migration from Legacy to Reactive Applications in OutSystemsLegacy SystemsMigrationModel-Driven EngineeringModel TransformationsPattern SearchUIDomínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaA legacy system is an information system that significantly resists evolution. Through a migration, these systems can be moved to a more modernized environment without having to be redeveloped. OutSystems is a software company with a platform to develop and maintain applications using abstraction to increase productivity. In October 2019, OutSystems launched a new paradigm to allow developers to build reactive web applications. Because of this, the applications implemented in the old web paradigm turned into legacy systems. The OutSystems’ approach to this problem was a manual migration. However, it discards a considerable part of the effort previously made on the legacy system. A well-founded case study took place and allowed us to classify the UI as the most prioritized feature, but coincidently, the major bottleneck in migrations. So, this project had the following objectives: (1) The design and implementation of an automatic migration approach capable of converting UI elements to accelerate the manual migration; (2) The integration of the developed tool in the OutSystems platform. To transform the OutSystems paradigm’s elements, model-driven transformation rules must be set to receive the source UI elements and produce the target equivalent implementation in the new paradigm (each according to their model). However, the trans formations may not be straightforward, and a set of elements may need to be migrated to a different implementation due to Reactive Web’s best practices. Via the creation and search of UI patterns, it is possible to make special transformations for such scenarios. As a result, a migration approach was developed, allowing for the migration of UI (and other) elements. To complement this objective, the developed tool was integrated into the OutSystems platform with an easy to use interaction. Performance and usability tests proved the necessity and impact the final result had on the migration problem. This dissertation’s objectives were fully met and even exceeded, accelerating the man ual migration by providing an automatic UI conversion. This provided a quality increase in the existing process and results, giving OutSystems and its users the possibility of evolving their applications with considerable less effort and investment.Um sistema legado é um sistema de informação que resiste à evolução. Através de uma migração, estes sistemas podem ser movidos para um ambiente modernizado sem necessitar de re-implementação. A OutSystems é uma empresa de software com uma plataforma para desenvolver e manter aplicações usando abstracção para aumentar a produtividade. Em Outubro de 2019, a OutSystems lançou um novo paradigma para desenvolver aplicações reactive web. Assim, as aplicações implementadas no antigo paradigma web tornaram-se sistemas legados. A abordagem da OutSystems ao problema foi uma migração manual, no entanto, esta abordagem desconsidera uma parte significativa do investimento feito no sistema legado. Uma análise permitiu classificar a UI como a característica mais priorizada, mas também como o maior obstáculo em migrações. Assim, este projecto tem como objectivos: (1) O desenho e implementação de uma migração automática capaz de converter os elementos de UI para acelerar a migração manual; (2) A integração da ferramenta desenvolvida na plataforma da OutSystems. Para transformar os elementos dos paradigmas OutSystems, transformações de modelos têm de ser definidas para receber os elementos UI e produzir a implementação equivalente no novo paradigma (de acordo com o seu modelo). No entanto, as transformações podem não ser lineares, e um conjunto de elementos pode necessitar de uma migração para uma implementação diferente devido ao Reactive Web. Com a definição e procura de padrões de UI, é possível fazer transformações especiais para esses cenários. Como resultado, a migração foi desenvolvida, permitindo a conversão de elementos de UI (e não só). Para complementar, a ferramenta desenvolvida foi integrada na plataforma da OutSystems com uma interacção de fácil uso. Testes de desempenho e usabilidade provaram a necessidade e impacto da ferramenta no contexto da migração manual. Os objectivos desta dissertação foram completados na totalidade, acelerando a migração manual com a automação da migração de UI. Isto traz um aumento da qualidade no processo existente e nos seus resultados, dando à OutSystems e aos seus utilizadores a possibilidade de evoluírem as suas aplicações com um esforço e investimento menores.Goulão, MiguelXavier, CarlosRUNRomão, Diogo Manuel Gonçalves2022-01-07T12:19:48Z2021-022021-02-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10362/130408enginfo:eu-repo/semantics/openAccessreponame: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:RCAAP2024-03-11T05:09:06Zoai:run.unl.pt:10362/130408Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T03:46:46.942876Repositó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 Migration from Legacy to Reactive Applications in OutSystems
title Migration from Legacy to Reactive Applications in OutSystems
spellingShingle Migration from Legacy to Reactive Applications in OutSystems
Romão, Diogo Manuel Gonçalves
Legacy Systems
Migration
Model-Driven Engineering
Model Transformations
Pattern Search
UI
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Migration from Legacy to Reactive Applications in OutSystems
title_full Migration from Legacy to Reactive Applications in OutSystems
title_fullStr Migration from Legacy to Reactive Applications in OutSystems
title_full_unstemmed Migration from Legacy to Reactive Applications in OutSystems
title_sort Migration from Legacy to Reactive Applications in OutSystems
author Romão, Diogo Manuel Gonçalves
author_facet Romão, Diogo Manuel Gonçalves
author_role author
dc.contributor.none.fl_str_mv Goulão, Miguel
Xavier, Carlos
RUN
dc.contributor.author.fl_str_mv Romão, Diogo Manuel Gonçalves
dc.subject.por.fl_str_mv Legacy Systems
Migration
Model-Driven Engineering
Model Transformations
Pattern Search
UI
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic Legacy Systems
Migration
Model-Driven Engineering
Model Transformations
Pattern Search
UI
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description A legacy system is an information system that significantly resists evolution. Through a migration, these systems can be moved to a more modernized environment without having to be redeveloped. OutSystems is a software company with a platform to develop and maintain applications using abstraction to increase productivity. In October 2019, OutSystems launched a new paradigm to allow developers to build reactive web applications. Because of this, the applications implemented in the old web paradigm turned into legacy systems. The OutSystems’ approach to this problem was a manual migration. However, it discards a considerable part of the effort previously made on the legacy system. A well-founded case study took place and allowed us to classify the UI as the most prioritized feature, but coincidently, the major bottleneck in migrations. So, this project had the following objectives: (1) The design and implementation of an automatic migration approach capable of converting UI elements to accelerate the manual migration; (2) The integration of the developed tool in the OutSystems platform. To transform the OutSystems paradigm’s elements, model-driven transformation rules must be set to receive the source UI elements and produce the target equivalent implementation in the new paradigm (each according to their model). However, the trans formations may not be straightforward, and a set of elements may need to be migrated to a different implementation due to Reactive Web’s best practices. Via the creation and search of UI patterns, it is possible to make special transformations for such scenarios. As a result, a migration approach was developed, allowing for the migration of UI (and other) elements. To complement this objective, the developed tool was integrated into the OutSystems platform with an easy to use interaction. Performance and usability tests proved the necessity and impact the final result had on the migration problem. This dissertation’s objectives were fully met and even exceeded, accelerating the man ual migration by providing an automatic UI conversion. This provided a quality increase in the existing process and results, giving OutSystems and its users the possibility of evolving their applications with considerable less effort and investment.
publishDate 2021
dc.date.none.fl_str_mv 2021-02
2021-02-01T00:00:00Z
2022-01-07T12:19:48Z
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/10362/130408
url http://hdl.handle.net/10362/130408
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
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_ 1799138070914662400