Domain decomposition methods nowadays provide powerful tools for constructing efficient parallel solvers for large scale systems of algebraic equations arising from the discretization of
partial differential equations. The classical alternating Schwarz method and the classical
substructuring technique have led to advanced overlapping and non-overlapping domain
decomposition solvers (preconditioners) which can be analyzed from a unified point of view now called Schwarz theory. This survey article starts with a brief historical overview, provides the basic
results of the Schwarz theory, shortly looks at some overlapping domain decompostion methods (preconditioners), and discusses more extensively different non-overlapping domain decompostion
techniques.