About the topic
The architecture of any software is a blueprint about its structure. The blueprint is the end artifact generated based on a series of decisions taken by software architects and decides the overall quality of the resultant software. Software architects, being human, are invariably subject to the influence of cognitive biases during their decision-making. Cognitive biases do not always have a negative impact, but they do result in a systematic deviation from the ideal decision-making process. This results in missing rationality behind decisions leading to designing of sub-par solutions.
This work focuses on identifying and formalizing decision-making process models in the context of software architecture design decisions. Three models were investigated in detail: rational-economic, bounded rational and recognition primed models. The steps in each model were mapped with the OODA Loop (Observe, Orient, Decide and Act) decision cycle. Furthermore, different types of cognitive biases were classified into the phases of the OODA Loop and a catalogue containing detailed information about the biases was produced.