This document provides an outline for an architect to document a software system. It includes sections for describing the functional overview, quality attributes, constraints, principles, software architecture, external interfaces, code structure, vision, risks, data model, infrastructure, deployment, operations and support, and decisions made. The goal is to model all possible failures and reasons for failure in order to understand how to avoid and fix issues when they occur. Details are only included if they can help reason about potential failures.
Related topics: