Arquiteturas de sistemas são abstrações. Elas capturam informações sobre alguns aspectos do sistema e deixam de fora outros aspectos. Idealmente, os aspectos mais importantes de um sistema serão bem definidos pela arquitetura. As partes que são especificadas podem descrever o estado nominal do sistema e deixar de fora estados incomuns. Isso quer dizer que, até certo ponto, arquiteturas normais não são destinadas a contemplar todas as implementações de um sistema. Por conseguinte, as notações usadas para capturar arquiteturas não têm que ser completamente inequívocas e precisas.
Três conceitos-chaves podem ser usados para caracterizar modelos arquitetônicos:
Apresentaremos a seguir cada um desses conceitos.