FAROL : a lightweight framework for decision-making in software architecture

Detalhes bibliográficos
Ano de defesa: 2023
Autor(a) principal: SILVA, Fagner Fernandes Candido da
Orientador(a): GARCIA, Vinícius Cardoso
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/55286
Resumo: Software development is a multifaceted activity. This makes architectural decision making a challenging matter. In the early stages, professionals often navigate a complex maze of considerations, leaving them on the brink of making critical decisions. These decisions have a high potential to impact the life cycle of the system and may even make it unfeasible. Therefore, how to choose a candidate software architecture proposal without losing critical aspects, respecting the specificity and purpose of the software? A lightweight architectural decision framework (FAROL) is proposed in this work to fill this knowledge gap. The motivation and research problem highlight the complexity of this type of decision, the impact of the lack of structured processes and the need for decision logic. The research questions in this work address these questions and examine practitioners’ reasoning about decisions, influencing factors, documentation practices, and principles considered. The literature review analyzes software architecture concepts and their relationship with decision making. It differentiates architecture and design, explains styles, and patterns, and covers theories of dual cognition. Decision techniques and documentation methods, such as records of architectural decisions, are explored. Nine principles for decision reasoning are described. The methodology surveys Brazilian IT experts to gain insights into current decision practices. The questions address confidence in the process, documentation, challenges, principles, factors that influence decision making. Threats to validity are analyzed. Comparison with existing structures highlights the possibility of customization in the use of the framework. Case studies demonstrate the application of FAROL to select architectures. Limitations include the need for more empirical assessments across contexts and the reliance on practitioner experience. However, FAROL provides a comprehensive methodology to promote informed decisions and continuous improvement. Ultimately, FAROL aims to bring systematic rigor to the ambiguous process of architectural choice. It offers practical guidance anchored in multidisciplinary theories and adapted for real- world projects. By elucidating the complex decision landscape, FAROL allows teams to navigate architectural tradeoffs.