В марте 2026 года в Средиземном море обнаружили подводное кладбище античных судов – десятки кораблей, погибших с IV века до н.э. до позднего Средневековья. Причина не в штормах или пиратах, а в опасном участке, который систематически топил проходящие суда. Для IT-архитектора эта история – идеальная метафора технического долга: неисправленные архитектурные антипаттерны годами накапливаются, пока система не «тонет» в инцидентах. Как выявить такие «опасные участки» в своей архитектуре ещё на стадии проектирования? Ответ – в анализе исторических данных сбоев и применении современных инструментов observability. В этой статье мы покажем, как превратить эту новость в сильную дипломную работу по направлению «Программная инженерия» или «Архитектура ПО».
| Тема ВКР | Актуальность (отсылка к статье) | Цель | Задачи (3–4) | Структура глав |
|---|---|---|---|---|
| 1. Разработка системы мониторинга архитектурных аномалий на основе исторических данных инцидентов | Как море «коллекционировало» суда 20 веков, так и в IT копятся необнаруженные антипаттерны. Система раннего выявления аномалий снижает риски. | Спроектировать сервис, который анализирует логи и метрики прошлых инцидентов и выдаёт предупреждения о потенциально опасных участках архитектуры. |
|
Гл.1 – анализ архитектурных антипаттернов и методов observability; Гл.2 – проектирование пайплайна; Гл.3 – тестирование, экономика внедрения. |
| 2. Проектирование отказоустойчивой микросервисной архитектуры с использованием паттернов Circuit Breaker и Bulkhead | «Опасный участок» – аналог узкого места, которое валит всю систему. Паттерны изоляции отказов предотвращают каскадные сбои. | Разработать архитектуру, гарантирующую 99.9% доступности при типовых отказах, и валидировать её с помощью исторических сценариев сбоев. |
|
Гл.1 – теория отказоустойчивости и метрики (RTO, RPO); Гл.2 – архитектурное решение; Гл.3 – тестирование, RAS-оценка. |
| 3. Метрики технического долга и их влияние на надёжность ПО: анализ и инструментарий | Как подводное кладбище возникает из-за повторяющихся ошибок маршрута, так технический долг накапливается при игнорировании рефакторинга. Нужны количественные метрики. | Разработать методику оценки технического долга на основе исторических данных о сбоях и времени на исправление. |
|
Гл.1 – обзор метрик и стандартов ISO 25010; Гл.2 – проектирование модели; Гл.3 – апробация на реальных проектах, оценка экономии. |
В этой главе вы показываете, что понимаете предметную область. Возьмите метафору «кладбища» как обоснование необходимости проактивного обнаружения аномалий. Сравните инструменты observability:
| Инструмент | Тип данных | Поддержка исторического анализа | Совместимость с OpenTelemetry | Лицензия |
|---|---|---|---|---|
| Prometheus + Thanos | Метрики | Да (long-term storage) | Да (через OTLP) | Apache 2.0 |
| ELK (Elasticsearch, Logstash, Kibana) | Логи | Да (индексы с retention) | С помощью Filebeat / Logstash | Elastic License |
| Jaeger / Tempo | Трейсы | Ограниченно (sample-based) | Да (Jaeger native) | Apache 2.0 |
| OpenTelemetry Collector | Метрики + трейсы + логи | Да (как конвейер) | — базовый | Apache 2.0 |
В тексте работы укажите, что выбор пал на OpenTelemetry и Prometheus именно из-за возможности собирать исторические данные для поиска «опасных участков» — аналогично тому, как археологи нашли кладбище по многолетним записям.
Здесь нужно нарисовать архитектуру вашего решения. Например, для темы №1 (система детекции аномалий) можно предложить пайплайн:
Источники (логи, метрики) → OpenTelemetry Collector → Kafka → Stream Processor (анализ антипаттернов) → Alertmanager + Dashboard
Не забудьте добавить интеграцию с CI/CD-пайплайном: каждый новый релиз прогоняется через quality gate, который проверяет «историческую безопасность» архитектуры. В качестве референса используйте подход Gated Deployments в Kubernetes. Оформите схему в UML (диаграмма компонентов) – это обязательное требование любой ВКР.
Спроектированную архитектуру нужно проверить. Используйте метрики из ISO/IEC 25010: надёжность (reliability), производительность (efficiency). В главе «Тестирование» выполните:
Все результаты заносите в таблицы – это повышает практическую ценность диплома.
1. Подмена терминов без обоснования. Например, пишут «обеспечим отказоустойчивость с помощью Kubernetes», но не поясняют, какой именно паттерн (ReplicaSet, StatefulSet, AntiAffinity) и почему. Как избежать: каждый термин сопровождайте ссылкой на стандарт (ISO 25010) или на антипаттерн из каталога.
2. Отсутствие метрик эффективности. Дипломная работа должна содержать численные результаты. Если вы проектируете систему мониторинга – укажите, на сколько процентов снизилось время детекции инцидента. Как избежать: запланируйте в главе 3 сравнительный эксперимент.
3. Игнорирование ГОСТ 34.602-89 при оформлении ТЗ. Многие вузы требуют, чтобы раздел «Техническое задание» был выполнен по этому стандарту. В шапке работы обязательно приведите структуру ТЗ (цель, требования, стадии). Как избежать: скачайте шаблон ТЗ и заполните его под свою тему.
Если выбрать тему #2 (отказоустойчивая архитектура), вы можете ограничиться написанием Terraform-манифестов и конфигурации Kubernetes + простой сервис на Go. При условии 4-6 часов в неделю — вполне реально за 4 месяца. Для сложных тем (анализ логов) можно взять готовые датасеты (например, из Google Cloud Logging).
Большинство вузов по направлению «Программная инженерия» требуют код (прототип). Даже если вы проектируете архитектуру, нужно показать, что она работоспособна – хотя бы простой REST-сервис с health endpoint и скрипт развёртывания. Без кода работу могут не допустить к защите.
Минимум: диаграмма компонентов (component diagram) и диаграмма развёртывания (deployment diagram). Используйте PlantUML – он генерирует PNG прямо в тексте. В пояснительной записке эти диаграммы оформляются по ГОСТ 2.105-95 (рамка, основная надпись).
Во-первых, можно использовать открытые датасеты: Kaggle (например, «Server Logs Dataset»). Во-вторых, сгенерировать синтетические данные с помощью Faker или специальных библиотек (например, `mimesis` для логов). В-третьих, если вы работаете в компании – обезличенные данные из продакшена (с разрешения).
Хотите сэкономить до 120 часов на дипломе? Запишитесь на бесплатную консультацию – мы поможем с любой темой: от анализа антипаттернов до внедрения Kubernetes. Даже если вы ещё не выбрали тему – наши архитекторы подскажут, что актуально в 2026 году. Просто напишите нам в чат – и получите готовый план работы уже завтра.
Источник: Найдено подводное кладбище античных судов. Море коллекционировало их 20 веков — и не собиралось останавливаться (опубликовано 2026-03-15)
```