Citation: Rocha, F.G.; Misra, S.;
Soares, M.S. Guidelines for Future
Agile Methodologies and
Architecture Reconciliation for
Software-Intensive Systems.
Electronics 2023, 12, 1582. https://
doi.org/10.3390/electronics12071582
Academic Editor: Claus Pahl
Received: 14 February 2023
Revised: 14 March 2023
Accepted: 15 March 2023
Published: 28 March 2023
Copyright: © 2023 by the authors.
Licensee MDPI, Basel, Switzerland.
This article is an open access article
distributed under the terms and
conditions of the Creative Commons
Attribution (CC BY) license (https://
creativecommons.org/licenses/by/
4.0/).
electronics
Article
Guidelines for Future Agile Methodologies and Architecture
Reconciliation for Software-Intensive Systems
Fábio Gomes Rocha
1
, Sanjay Misra
2
and Michel S. Soares
1,
*
1
Department of Computing, Federal University of Sergipe, São Cristóvão 49100000, Brazil
2
Institute for Energy Technology, 1777 Halden, Norway
* Correspondence: michel@dcomp.ufs.br
Abstract: Background: Several methodologies have been proposed since the first days of software
development, from what is now named traditional/heavy methodologies, and later their counterpart,
the agile methodologies. The whole idea behind agile methodologies is to produce software at a
faster pace than what was considered with plan-based methodologies, which had a greater focus on
documenting all tasks and activities before starting the proper software development. Problem: One
issue here is that strict agilists are often against fully documenting the software architecture in the
first phases of a software process development. However, architectural documentation cannot be ne-
glected, given the well-known importance of software architecture to the success of a software project.
Proposed Solution: In this article, we describe the past and current situation of agile methodologies
and their relation to architecture description, as well as guidelines for future Agile Methodologies
and Architecture Reconciliation. Method: We propose a literature review to understand how agile
methodologies and architecture reconciliation can help in providing trends towards the success of a
software project and supporting software development at a faster pace. This work was grounded
in General Systems Theory as we describe the past, present, and future trends for rapid systems
development through the integration of organizations, stakeholders, processes, and systems for
software development. Summary of results: As extensively discussed in the literature, we found
that there is a false dichotomy between agility and software architecture, and then we describe
guidelines for future trends in agile methodologies and reconciliation of architecture to document
agile architectures with both architectural decisions and agile processes for any system, as well as
future trends to support organizations, stakeholders, processes, and systems.
Keywords: software architecture; agile development; software process
1. Introduction
Software development has been recognised by many researchers and practitioners as a
challenge for society in the past decades [1–3]. Software is used for controlling infrastructures
such as water, waste, and electricity distribution, as well as means of transport, telecommu-
nications, industry, entertainment, and so on, in such a way that software makes our daily
life easier and safer. However, there are also difficulties and concerns related to activities of
software development and evolution, such as balancing the necessary effort for activities of
Requirements Engineering and designing the Software Architecture.
Barry Boehm [4] shows his software experiences through the stages of the evolution
of Software Engineering practices in the 20th and 21st centuries, also, the strategies used
to evaluate and adapt software changes. Boehm used the philosopher Hegel’s hypothesis
divided into three stages: thesis (things happen the way they do), antithesis (the thesis fails
in some aspects, but there is a better explanation), and synthesis (rejection of the original
thesis with the antithesis, but there is a similar improved one). In this way, he pointed out
the evolution of Software Engineering from the 1950s to 2006, as well as a few topics for the
next decades.
Electronics 2023, 12, 1582. https://doi.org/10.3390/electronics12071582 https://www.mdpi.com/journal/electronics