Applying Behavior Driven Development Practices and Tools to Low-Code Technology

Detalhes bibliográficos
Autor(a) principal: Pulido, Nuno Miguel André
Data de Publicação: 2019
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/92297
Resumo: One of the main reasons software projects fail is the lack of communication between stakeholders. Low Code Platforms have been recently growing in the software development market. These allow creating state-of-the-art applications with facilitated design and integration, in a rapid development fashion and as such, avoiding communication errors among stakeholders is indispensable to avoid regressions. Behavior-Driven Development (BDD) is a practice that focuses on developing value-based software, promoting communication by bringing business people into development. The BDDFramework is an open-source testing automation framework within the Out- Systems environment. It allows describing test scenarios using the Gherkin syntax but it is not focused on enabling the BDD process. Our main challenge is: - How can we apply the BDD process in Low Code and support it from a technological point of view, considering the particularities of Low Code environments and having as case study the OutSystems platform? Is the BDDFramework prepared for this? We interviewed some people in the domain to understand their development and testing challenges and their experience with the BDDFramework. With the information gathered and after studying other existing BDD process supporting tools for other languages, we built a prototype that uses the existing BDDFramework and automates it, allowing scenarios to be described in text files, which helps the introduction of business people in the process. The prototype generates all the test structure automatically, reusing equal steps while detecting parameters in the Gherkin descriptions. We performed some real user testing to validate our prototype and we found that our solution was faster, easier, with better usability and we obtained more correct tests than with the previous approach - the BDDFramework alone. Testing in Low Code is still an area with a lot to explore and errors have a huge impact when development is very accelerated, so as communication errors tend to decrease we can start building software even faster and this is what BDD proposes to solve. With this prototype we have been able to demonstrate that it is possible to build a framework that will allow us to enable this process by taking advantage of the OutSystems language particularities to potentiate the BDD practice technologically, while setting a test standard for the OutSystems language.
id RCAP_b5daa8614351d838b91a05361cfb7385
oai_identifier_str oai:run.unl.pt:10362/92297
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 Applying Behavior Driven Development Practices and Tools to Low-Code TechnologyLow Code DevelopmentBehavior-Driven DevelopmentOutSystemsGherkin ScenariosAutomation FrameworksDomínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaOne of the main reasons software projects fail is the lack of communication between stakeholders. Low Code Platforms have been recently growing in the software development market. These allow creating state-of-the-art applications with facilitated design and integration, in a rapid development fashion and as such, avoiding communication errors among stakeholders is indispensable to avoid regressions. Behavior-Driven Development (BDD) is a practice that focuses on developing value-based software, promoting communication by bringing business people into development. The BDDFramework is an open-source testing automation framework within the Out- Systems environment. It allows describing test scenarios using the Gherkin syntax but it is not focused on enabling the BDD process. Our main challenge is: - How can we apply the BDD process in Low Code and support it from a technological point of view, considering the particularities of Low Code environments and having as case study the OutSystems platform? Is the BDDFramework prepared for this? We interviewed some people in the domain to understand their development and testing challenges and their experience with the BDDFramework. With the information gathered and after studying other existing BDD process supporting tools for other languages, we built a prototype that uses the existing BDDFramework and automates it, allowing scenarios to be described in text files, which helps the introduction of business people in the process. The prototype generates all the test structure automatically, reusing equal steps while detecting parameters in the Gherkin descriptions. We performed some real user testing to validate our prototype and we found that our solution was faster, easier, with better usability and we obtained more correct tests than with the previous approach - the BDDFramework alone. Testing in Low Code is still an area with a lot to explore and errors have a huge impact when development is very accelerated, so as communication errors tend to decrease we can start building software even faster and this is what BDD proposes to solve. With this prototype we have been able to demonstrate that it is possible to build a framework that will allow us to enable this process by taking advantage of the OutSystems language particularities to potentiate the BDD practice technologically, while setting a test standard for the OutSystems language.Goulão, MiguelProença, JoãoRUNPulido, Nuno Miguel André2020-02-06T14:56:08Z2019-1020192019-10-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10362/92297enginfo: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-11T04:41:08Zoai:run.unl.pt:10362/92297Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T03:37:30.446176Repositó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 Applying Behavior Driven Development Practices and Tools to Low-Code Technology
title Applying Behavior Driven Development Practices and Tools to Low-Code Technology
spellingShingle Applying Behavior Driven Development Practices and Tools to Low-Code Technology
Pulido, Nuno Miguel André
Low Code Development
Behavior-Driven Development
OutSystems
Gherkin Scenarios
Automation Frameworks
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Applying Behavior Driven Development Practices and Tools to Low-Code Technology
title_full Applying Behavior Driven Development Practices and Tools to Low-Code Technology
title_fullStr Applying Behavior Driven Development Practices and Tools to Low-Code Technology
title_full_unstemmed Applying Behavior Driven Development Practices and Tools to Low-Code Technology
title_sort Applying Behavior Driven Development Practices and Tools to Low-Code Technology
author Pulido, Nuno Miguel André
author_facet Pulido, Nuno Miguel André
author_role author
dc.contributor.none.fl_str_mv Goulão, Miguel
Proença, João
RUN
dc.contributor.author.fl_str_mv Pulido, Nuno Miguel André
dc.subject.por.fl_str_mv Low Code Development
Behavior-Driven Development
OutSystems
Gherkin Scenarios
Automation Frameworks
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic Low Code Development
Behavior-Driven Development
OutSystems
Gherkin Scenarios
Automation Frameworks
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description One of the main reasons software projects fail is the lack of communication between stakeholders. Low Code Platforms have been recently growing in the software development market. These allow creating state-of-the-art applications with facilitated design and integration, in a rapid development fashion and as such, avoiding communication errors among stakeholders is indispensable to avoid regressions. Behavior-Driven Development (BDD) is a practice that focuses on developing value-based software, promoting communication by bringing business people into development. The BDDFramework is an open-source testing automation framework within the Out- Systems environment. It allows describing test scenarios using the Gherkin syntax but it is not focused on enabling the BDD process. Our main challenge is: - How can we apply the BDD process in Low Code and support it from a technological point of view, considering the particularities of Low Code environments and having as case study the OutSystems platform? Is the BDDFramework prepared for this? We interviewed some people in the domain to understand their development and testing challenges and their experience with the BDDFramework. With the information gathered and after studying other existing BDD process supporting tools for other languages, we built a prototype that uses the existing BDDFramework and automates it, allowing scenarios to be described in text files, which helps the introduction of business people in the process. The prototype generates all the test structure automatically, reusing equal steps while detecting parameters in the Gherkin descriptions. We performed some real user testing to validate our prototype and we found that our solution was faster, easier, with better usability and we obtained more correct tests than with the previous approach - the BDDFramework alone. Testing in Low Code is still an area with a lot to explore and errors have a huge impact when development is very accelerated, so as communication errors tend to decrease we can start building software even faster and this is what BDD proposes to solve. With this prototype we have been able to demonstrate that it is possible to build a framework that will allow us to enable this process by taking advantage of the OutSystems language particularities to potentiate the BDD practice technologically, while setting a test standard for the OutSystems language.
publishDate 2019
dc.date.none.fl_str_mv 2019-10
2019
2019-10-01T00:00:00Z
2020-02-06T14:56:08Z
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/92297
url http://hdl.handle.net/10362/92297
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_ 1799137991855177728