Overview of CALM Core Concepts
mainCALM (Architecture as Code) allows you to define and manage software architecture through a structured model. The system is built upon several key abstractions that allow you to represent complex systems as code:
- Nodes: The primary building blocks of your architecture.
- Relationships: The connections and interactions between nodes.
- Interfaces: The specific interaction points exposed by nodes.
- Controls: Domain-specific constraints applied to your architecture.
- Standards: Organizational requirements that extend CALM components.
- Timelines: Mechanisms to track architectural evolution through significant moments.
- Decorators: Supplementary information (e.g., deployments, security context, business metadata) attached to architecture elements.
- Metadata: Additional information used to enrich architecture models.
- Widgets: Reusable template components used to generate Markdown documentation from architecture models.