Challenges to Architecture Decision-Making in Agile Development Environments
The goal of this master thesis is to explore challenges of architecture decision-making in agile environments and trying to find out what causes issues regarding agile architecture - the latter being a set of values and practices supporting the effective evolution of the design and system architecture, concurrent with the implementation of new business functionality. Although the topic has been existent for some time, there are still tensions between software architecture and agility that are not well understood by agile practitioners and researchers alike. While there are many active promoters of agile architecture design, there can be found equally many non-believers who state that agility and architecture cannot work together. To find answers to the research questions stated in this thesis, two research methodologies have been used: a literature survey and a case study. The literature survey covers related work on agility in software architecture and the challenges that come with it. The survey includes difficulties that have been observed regarding the use of agile development methods when building the architecture. In addition, recommended practices are discussed for applying agile processes associated with sound architectural principles. The second part of the thesis is a case study within a software startup company, Stagnation Lab, and the SMIT (Ministry of the Interior IT and Development Centre). In Stagnation Lab, two projects were analyzed. The main architects behind the design of each project were interviewed to look deeper into potential challenges when applying agile practices in architecture development. Similarly, at SMIT, the main architect responsible for the design of a monitoring information system for the Rescue and Fire Department was interviewed.
Graduation Thesis language
Graduation Thesis type
Master - Software Engineering
Dietmar Pfahl; Andrés Silva