An architectural model (in software) contains several diagrams representing static properties or dynamic (behavioral) properties of the software under design. The diagrams represent different viewpoints of the system at the appropriate scope of analysis. The diagrams are created by using available standards in which the primary aim is to illustrate a specific set of tradeoffs inherent in the structure and design of a system or ecosystem. Software architects utilize architectural models to facilitate communication and obtain peer feedback.
Some key elements in a software architectural model include: