Een (software) architectuur kan als volgt gedefinieerd worden :

  • De fundamentele organisatie van een (software) systeem, belichaamd door zijn Componenten, hun relaties met elkaar en met hun omgeving en de principes die het beheer van het ontwerp en de evoluties kenmerken : volgens ANSI/IEEE 1471-2000.
  • "Alle architectuur is ontwerp, maar niet alle ontwerp is architectuur". Architectuur vertegenwoordigt de belangrijkste ontwerpbeslissingen die samen een systeem vormen. "Belangrijk" wordt uitgedrukt in de "kost van verandering" : volgens Grady Booch (2006) "On Design".
  • De verzameling van structuren die nodig zijn om over het systeem te redeneren, bestaande uit (software) elementen met hun relaties en eigenschappen : volgens "Documenting Software Architectures (2e), Clements et. al. (2010)".
  • Software Architectuur zijn de beslissingen die zowel belangrijk als moeilijk te maken zijn : volgens Martin Fowler.