The set of structures and models needed to understand or describe the software system, including the software elements, the relations between them and the properties of both elements and relations.