Включите важные правила в панели и настройте их по проектам; они применяются в каждом PR, решения ведутся как нумерованные ADR, а карта зависимостей показывает реальность.
Шесть ситуаций, которые снова и снова возникают в этой роли, и что AppArch делает с каждой из них.
01
Правила есть, но их никто не соблюдает
Архитектурные правила аккуратно записали в вики два года назад. Большинство пришедших с тех пор эту страницу ни разу не открывали.
Что делает AppArch
Правило, включённое в панели, срабатывает в каждом merge request на любом из девяти языков, отмечает нарушение на его собственной строке и объясняет причину, даже когда вы в отпуске.
«Почему мы сделали именно так?» остаётся без ответа
Новичок спрашивает, почему сервис работает с очередью именно так. Человек, принявший это решение, ушёл в прошлом году.
Что делает AppArch
Модуль ADR нумерует каждое решение, ведёт его по жизненному циклу MADR и связывает каждое заменяющее решение с тем, которое оно заменило. Обоснование остаётся в продукте, а не в чьей-то голове.
Архитектурную диаграмму нарисовали к кик-оффу. Через пару месяцев код пошёл своим путём.
Что делает AppArch
Карта зависимостей ArchScan строится по самому коду: циклы, нарушения слоёв и утечки показывают то, что есть, а не то, что задумывалось. Дрейф виден до того, как накопится.
Пять команд, пять трактовок одного и того же правила слоёв и на каждом ревью один и тот же спор, какая из них верна.
Что делает AppArch
Правила задаются один раз для рабочего пространства и меняются для проекта только при реальной причине. Исключение фиксируется один раз, а не обсуждается заново на каждом ревью.
Включите новое правило в кодовой базе десятилетней давности, и бэклог за ночь заполнится тысячами находок. Через неделю команда просит его отключить.
Что делает AppArch
ArchPilot комментирует только строки, которые меняет merge request, поэтому существующий долг остаётся за пределами ревью. Настройка fail-on определяет, с какой серьёзности падает сборка: начните с critical и ужесточайте по мере сокращения долга.
Две записи без транзакции, результат поиска без проверки: код, который выглядит нормально на ревью и падает на первом нестандартном запросе.
Что делает AppArch
SmartScan проходит от каждой точки входа до базы данных и перечисляет, что может сломаться по пути: пустой результат поиска, частичная запись, разрыв контракта. Каждый риск идёт с полным путём, файлом и строкой.
Панель ArchScanЗдоровье архитектуры по всем проектам: проверенные проекты, средняя оценка, открытые проблемы и распределение оценок.Архитектурные решенияНумерованные записи решений со статусом, тегами и проектом, к которому относится каждая.Здоровье кодаГде на самом деле сидит долг: методы высокого риска, файлы с наибольшим числом находок и насколько отстают зависимости.
Мы используем cookie, чтобы улучшить ваш опыт, анализировать трафик и измерять эффективность нашей рекламы. Аналитические и рекламные cookie включаются только с вашего согласия. Политика конфиденциальности