Export Ready — 

AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience

Bibliographic Details
Main Author: José Pedro Abreu Silva
Publication Date: 2024
Format: Master thesis
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: https://hdl.handle.net/10216/161041
Summary: Modern systems, from real-time Sports analyses to Smart houses, have contributed to the growth of the demand for responsive and scalable architectures. The adoption of Event-Driven architectures (EDA) is currently the most used solution to fulfill these demands. Unlike traditional request-response models like REST APIs, these architectures revolve around various events' propagation, detection, and response, from sensor inputs to user interactions. Among all the paradigms in this scenario, the publish/subscribe paradigm is one of the most used and consists of an asynchronous exchange of messages based on a category or topic. This exchange is done using an event bus or a broker. Although these kinds of architectures fulfill most of the needs of modern systems, there are a lot of challenges associated with them. The more severe are related to the complexity of handling the messages and ensuring their overall consistency. In most systems, a message is composed by the event header in a specification like CloudEvents and the event data and is serialized using Avro or JSON format. The field's novelty also makes the number of tools to interact with these architectures low, making the overall design and development harder. This dissertation researches different ways of describing events and explores the development of developer-friendly helper tools to design and visualize these asynchronous and distributed architectures. Their key functionalities include bootstrapping a specification file compliant with the AsyncAPI specification from an easy and intuitive Graphical User Interface (GUI) and the ability to visualize the whole architecture from imported specification files. To evaluate these tools, experiments will be conducted with subjects with different backgrounds of expertise. As organizations increasingly embrace event-driven paradigms, this tool not only contributes to the growing body of knowledge in this field but also offers a more straightforward solution for architects to create responsive and robust systems with more efficiency while having a better experience.
id RCAP_e0aaa96fbbae61ad4fd4bad106006e2c
oai_identifier_str oai:repositorio-aberto.up.pt:10216/161041
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling AsyncAPI-First Design for Event-Driven Architectures: Improve Developer ExperienceOutras ciências da engenharia e tecnologiasOther engineering and technologiesModern systems, from real-time Sports analyses to Smart houses, have contributed to the growth of the demand for responsive and scalable architectures. The adoption of Event-Driven architectures (EDA) is currently the most used solution to fulfill these demands. Unlike traditional request-response models like REST APIs, these architectures revolve around various events' propagation, detection, and response, from sensor inputs to user interactions. Among all the paradigms in this scenario, the publish/subscribe paradigm is one of the most used and consists of an asynchronous exchange of messages based on a category or topic. This exchange is done using an event bus or a broker. Although these kinds of architectures fulfill most of the needs of modern systems, there are a lot of challenges associated with them. The more severe are related to the complexity of handling the messages and ensuring their overall consistency. In most systems, a message is composed by the event header in a specification like CloudEvents and the event data and is serialized using Avro or JSON format. The field's novelty also makes the number of tools to interact with these architectures low, making the overall design and development harder. This dissertation researches different ways of describing events and explores the development of developer-friendly helper tools to design and visualize these asynchronous and distributed architectures. Their key functionalities include bootstrapping a specification file compliant with the AsyncAPI specification from an easy and intuitive Graphical User Interface (GUI) and the ability to visualize the whole architecture from imported specification files. To evaluate these tools, experiments will be conducted with subjects with different backgrounds of expertise. As organizations increasingly embrace event-driven paradigms, this tool not only contributes to the growing body of knowledge in this field but also offers a more straightforward solution for architects to create responsive and robust systems with more efficiency while having a better experience.2024-07-172024-07-17T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/10216/161041TID:203859197engJosé Pedro Abreu Silvainfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2025-02-27T17:42:23Zoai:repositorio-aberto.up.pt:10216/161041Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T22:23:57.199897Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
title AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
spellingShingle AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
José Pedro Abreu Silva
Outras ciências da engenharia e tecnologias
Other engineering and technologies
title_short AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
title_full AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
title_fullStr AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
title_full_unstemmed AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
title_sort AsyncAPI-First Design for Event-Driven Architectures: Improve Developer Experience
author José Pedro Abreu Silva
author_facet José Pedro Abreu Silva
author_role author
dc.contributor.author.fl_str_mv José Pedro Abreu Silva
dc.subject.por.fl_str_mv Outras ciências da engenharia e tecnologias
Other engineering and technologies
topic Outras ciências da engenharia e tecnologias
Other engineering and technologies
description Modern systems, from real-time Sports analyses to Smart houses, have contributed to the growth of the demand for responsive and scalable architectures. The adoption of Event-Driven architectures (EDA) is currently the most used solution to fulfill these demands. Unlike traditional request-response models like REST APIs, these architectures revolve around various events' propagation, detection, and response, from sensor inputs to user interactions. Among all the paradigms in this scenario, the publish/subscribe paradigm is one of the most used and consists of an asynchronous exchange of messages based on a category or topic. This exchange is done using an event bus or a broker. Although these kinds of architectures fulfill most of the needs of modern systems, there are a lot of challenges associated with them. The more severe are related to the complexity of handling the messages and ensuring their overall consistency. In most systems, a message is composed by the event header in a specification like CloudEvents and the event data and is serialized using Avro or JSON format. The field's novelty also makes the number of tools to interact with these architectures low, making the overall design and development harder. This dissertation researches different ways of describing events and explores the development of developer-friendly helper tools to design and visualize these asynchronous and distributed architectures. Their key functionalities include bootstrapping a specification file compliant with the AsyncAPI specification from an easy and intuitive Graphical User Interface (GUI) and the ability to visualize the whole architecture from imported specification files. To evaluate these tools, experiments will be conducted with subjects with different backgrounds of expertise. As organizations increasingly embrace event-driven paradigms, this tool not only contributes to the growing body of knowledge in this field but also offers a more straightforward solution for architects to create responsive and robust systems with more efficiency while having a better experience.
publishDate 2024
dc.date.none.fl_str_mv 2024-07-17
2024-07-17T00:00:00Z
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 https://hdl.handle.net/10216/161041
TID:203859197
url https://hdl.handle.net/10216/161041
identifier_str_mv TID:203859197
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órios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833599674324353024