Patterns for sustaining architectures
Rebecca Wirfs-Brock, Joseph William Yoder · 2012
Unless ongoing attention is paid to architecture, as complex systems evolve to meet new requirements they can become unwieldy to maintain and devolve into poorly architected Big Balls of Mud. This paper presents two patterns for sustaining software architectures in the face of increasing complexity: Paving over the Wagon Trail and Wiping Your Feet at the Door. We will also recast Paving over the Wagon Trail into a third pattern that exacerbates the mud, Paving over the Cowpath, and explain why this is not an anti-pattern, but instead a darker form of well-intentioned tinkering. These patterns help with both mud prevention and sustaining complex, evolving architectures.