Software architectures are specified by models.
- To architect is to model.
- To model is to describe.
- To describe is to draw.
Software architectures can be defined by:
- ADL (Architecture Description Language)—it defines an architecture formally.
- Architecture View Model—it represents the functional and non-functional requirements of software
- UML (Unified Modeling Language)—it is an object-oriented framework used in software modelling and
- Archi—it is an open-source modelling tool for an enterprise architecture.