Abstract
In the evolving landscape of software engineering, managing the uncertainties that impact architectural decisions is paramount for ensuring the resilience and adaptability of software systems. This paper focuses on documenting, as patterns, the foundational practices employed by a technique named ArchHypo, which uses hypothesis engineering to manage uncertainties in software architecture and enhance decision-making processes. By exploring three diverse projects that implement the ArchHypo technique, we delineate a set of patterns that systematically address the complexities of uncertainty. These patterns provide a more systematic structured framework for software architects and developers, enabling them to make uncertainties explicit and manageable, thus facilitating the identification of opportune moments for architectural commitments. The delineated patterns contribute to a structured and informed decision-making process and offer an approach to managing uncertainties tailored to agile development’s dynamic landscape.