Litcius/Paper detail

Drift and Erosion in Software Architecture

Erik Whiting, Sharon Andrews

202018 citationsDOI

Abstract

Disciplined practice of software architecture, and the broader encompassing discipline of software design, is fundamental to a project's success in every stage of the software life cycle. Choosing and implementing an appropriate architecture maximizes team velocity by structuring a project to meet business needs and adhere to quality standards. One enemy of good architecture is architecture drift, where software systems implement an architecture that is not specified. Even worse, architecture erosion threatens projects in the form of design decisions that violate prescriptive architecture as well as quality attributes. In this paper, we will discuss the importance of a reliable architecture, the symptoms of architecture drift and erosion, and some of the existing tools and methods used to combat them.

Topics & Concepts

Reference architectureSoftware architectureSoftware architecture descriptionComputer scienceArchitectureArchitecture tradeoff analysis methodEnterprise architecture frameworkResource-oriented architectureSoftware engineeringSolution architectureSpace-based architectureApplications architectureView modelSoftwareSystems engineeringSoftware developmentEngineeringSoftware designOperating systemGeographyArchaeologySoftware Engineering ResearchAdvanced Software Engineering MethodologiesSoftware Reliability and Analysis Research
Drift and Erosion in Software Architecture | Litcius