Support for automatic refactoring of business logic

Detalhes bibliográficos
Autor(a) principal: Fernandes, Tiago B.
Data de Publicação: 2017
Outros Autores: Ribeiro, António Nestor, Nunes, David V., Lourenço, Hugo R., Santos, Luiz C.
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/1822/52883
Resumo: Software’s structure profoundly affects its development and maintenance costs. Poor software’s structure may lead to well-known design flaws, such as large modules or long methods. A possible ap- proach to reduce a module’s complexity is the Extract Method refactor- ing technique. This technique allows the decomposition of a large and complex method into smaller and simpler ones, while reducing the orig- inal method’s size and improving its readability and comprehension. The OutSystems platform is a low-code platform that allows the de- velopment of web and mobile applications that rely on a set of visual Domain-Specific Languages (DSLs). Even low-code languages when im- properly used can lead to software that has maintenance issues like long methods. Thus, the purpose of this paper is to present the research and devel- opment done to provide the OutSystems platform with a tool that au- tomatically suggests Extract Method refactoring opportunities. The re- search combines program slicing techniques with code complexity metrics to calculate the best refactoring opportunities that preserve programs’ functionality. The proposed approach was tested on typical OutSystems apps and was shown to be able to reduce the overall applications’ complexity.
id RCAP_4556829d7e55ad94875b38392532bf24
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/52883
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 Support for automatic refactoring of business logicRefactoringProgram SlicingCode Complexity MetricsEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaSoftware’s structure profoundly affects its development and maintenance costs. Poor software’s structure may lead to well-known design flaws, such as large modules or long methods. A possible ap- proach to reduce a module’s complexity is the Extract Method refactor- ing technique. This technique allows the decomposition of a large and complex method into smaller and simpler ones, while reducing the orig- inal method’s size and improving its readability and comprehension. The OutSystems platform is a low-code platform that allows the de- velopment of web and mobile applications that rely on a set of visual Domain-Specific Languages (DSLs). Even low-code languages when im- properly used can lead to software that has maintenance issues like long methods. Thus, the purpose of this paper is to present the research and devel- opment done to provide the OutSystems platform with a tool that au- tomatically suggests Extract Method refactoring opportunities. The re- search combines program slicing techniques with code complexity metrics to calculate the best refactoring opportunities that preserve programs’ functionality. The proposed approach was tested on typical OutSystems apps and was shown to be able to reduce the overall applications’ complexity.info:eu-repo/semantics/publishedVersionPublicações da Universidade de AveiroUniversidade do MinhoFernandes, Tiago B.Ribeiro, António NestorNunes, David V.Lourenço, Hugo R.Santos, Luiz C.2017-102017-10-01T00:00:00Zconference paperinfo:eu-repo/semantics/publishedVersionapplication/pdfhttp://hdl.handle.net/1822/52883engB. Fernandes Tiago, Nestor Ribeiro António, V. Nunes David, R. Lourenço Hugo, C. Santos Luiz, Support for Automatic Refactoring of Business Logic. In INForum 2017 - Atas do Nono Simpósio Nacional de Informática, pp 173-184, Universidade de Aveiro, 2017.978-972-789-522-9info: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-05-11T07:25:43Zoai:repositorium.sdum.uminho.pt:1822/52883Portal AgregadorONGhttps://www.rcaap.pt/oai/openairemluisa.alvim@gmail.comopendoar:71602024-05-11T07:25:43Repositó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 Support for automatic refactoring of business logic
title Support for automatic refactoring of business logic
spellingShingle Support for automatic refactoring of business logic
Fernandes, Tiago B.
Refactoring
Program Slicing
Code Complexity Metrics
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Support for automatic refactoring of business logic
title_full Support for automatic refactoring of business logic
title_fullStr Support for automatic refactoring of business logic
title_full_unstemmed Support for automatic refactoring of business logic
title_sort Support for automatic refactoring of business logic
author Fernandes, Tiago B.
author_facet Fernandes, Tiago B.
Ribeiro, António Nestor
Nunes, David V.
Lourenço, Hugo R.
Santos, Luiz C.
author_role author
author2 Ribeiro, António Nestor
Nunes, David V.
Lourenço, Hugo R.
Santos, Luiz C.
author2_role author
author
author
author
dc.contributor.none.fl_str_mv Universidade do Minho
dc.contributor.author.fl_str_mv Fernandes, Tiago B.
Ribeiro, António Nestor
Nunes, David V.
Lourenço, Hugo R.
Santos, Luiz C.
dc.subject.por.fl_str_mv Refactoring
Program Slicing
Code Complexity Metrics
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic Refactoring
Program Slicing
Code Complexity Metrics
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Software’s structure profoundly affects its development and maintenance costs. Poor software’s structure may lead to well-known design flaws, such as large modules or long methods. A possible ap- proach to reduce a module’s complexity is the Extract Method refactor- ing technique. This technique allows the decomposition of a large and complex method into smaller and simpler ones, while reducing the orig- inal method’s size and improving its readability and comprehension. The OutSystems platform is a low-code platform that allows the de- velopment of web and mobile applications that rely on a set of visual Domain-Specific Languages (DSLs). Even low-code languages when im- properly used can lead to software that has maintenance issues like long methods. Thus, the purpose of this paper is to present the research and devel- opment done to provide the OutSystems platform with a tool that au- tomatically suggests Extract Method refactoring opportunities. The re- search combines program slicing techniques with code complexity metrics to calculate the best refactoring opportunities that preserve programs’ functionality. The proposed approach was tested on typical OutSystems apps and was shown to be able to reduce the overall applications’ complexity.
publishDate 2017
dc.date.none.fl_str_mv 2017-10
2017-10-01T00:00:00Z
dc.type.driver.fl_str_mv conference paper
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1822/52883
url http://hdl.handle.net/1822/52883
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv B. Fernandes Tiago, Nestor Ribeiro António, V. Nunes David, R. Lourenço Hugo, C. Santos Luiz, Support for Automatic Refactoring of Business Logic. In INForum 2017 - Atas do Nono Simpósio Nacional de Informática, pp 173-184, Universidade de Aveiro, 2017.
978-972-789-522-9
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.publisher.none.fl_str_mv Publicações da Universidade de Aveiro
publisher.none.fl_str_mv Publicações da Universidade de Aveiro
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 mluisa.alvim@gmail.com
_version_ 1817545313171275776