Модель C4 отличается от традиционных методологий разработки тем, что позволяет описать архитектуру программной системы на разных уровнях абстракции без привязки к строгим формальным правилам. 1
Она облегчает совместную работу над созданием архитектуры ПО и доработку архитектуры в контексте команд разработки, работающих с применением гибкой методологии, в которой более формальные методы документирования и предварительное архитектурное проектирование нежелательны. 2
Некоторые особенности модели C4:
- Иерархическая структура. 3 Диаграммы организованы в соответствии с их иерархическим уровнем: диаграммы контекста показывают систему в масштабе её взаимодействия с пользователями и другими системами, диаграммы контейнеров разбивают систему на взаимосвязанные контейнеры, диаграммы компонентов разделяют контейнеры на взаимосвязанные компоненты и отражают связи компонент с другими контейнерами или другими системами, диаграммы кода предоставляют дополнительные сведения о дизайне архитектурных элементов, которые могут быть сопоставлены с программным кодом. 2
- Независимость от нотаций. 3 В отличие от многих других языков моделирования, модель C4 не диктует конкретный набор символов, форм или цветов. 3 Это позволяет командам адаптировать модель под предпочитаемую нотацию. 3
- Независимость от инструментов. 3 Модель не зависит от какого-либо проприетарного программного обеспечения или специализированных инструментов. 3 Её можно реализовать с помощью простых инструментов для рисования или даже на доске. 3