Программа «Архитектор ПО. Путь к мастерству в проектировании систем» подробно рассказывает о работе программного архитектора. Начать обучение можно с 5 бесплатных уроков*, а затем перейти к полной версии программы. Курс учит планировать будущее развитие сложных систем с нуля: выбирать инструменты и средства моделирования архитектуры, формат документирования архитектурных решений, выбирать архитектурный стиль под конкретную бизнес-задачу, планировать будущее масштабирование, гибкость. Знакомит с лучшими практиками построения архитектуры программного обеспечения.
Тема 1: Понятия архитектуры: основные термины и определения.
Тема 2: Понятия архитектуры: критерии качества архитектуры.
Тема 3: Роли и виды архитекторов.
Тема 4: Архитектурные стили: монолит.
Тема 5: Архитектурные стили: микросервисы.
Тема 6: Принципы DDD.
Тема 7: Clean Architecture: правила создания архитектур.
Тема 8: Архитектурные стили: событийно-управляемая архитектура.
Тема 9: Архитектурные стили: классический ETL/DWH/BI.
Тема 10: Позиция архитектора в Agile-проекте.
Практика: Проект «Mobile Street Food». Этап работ: предложить разбиение системы на модули/микросервисы. Отобразить связи модулей/микросервисов на компонентной диаграмме.
Итого на курс 24 часа:
Тема 1: Управление заинтересованными сторонами (стейкхолдерами) проекта.
Тема 2: Виды требований и атрибуты качества.
Тема 3: Влияние нефункциональных требований на архитектуру.
Тема 4: Сбор и работа с функциональными требованиями.
Тема 5: Дополнительные виды требований: ограничения.
Тема 6: Управление критериями надёжности (SLA, SLO, SLI).
Тема 7: Работа с архитектурными изменениями.
Практика: Проект «Mobile Street Food». Этап работ: выделить наиболее приоритетные функциональные требования, сформулировать их в виде пользовательских историй. Сформулировать нефункциональные требования к системе в виде сценариев атрибутов качества. Составить требования к качеству системы с точки зрения масштабов и планов развития бизнеса.
Итого на курс 26 часов:
Тема 1: Проектирование от атрибутов качества.
Тема 2: Тактики и паттерны проектирования.
Практика: Проект «Mobile Street Food». Этап работ: ранжировать требования и выбрать тактики для достижения требований каждой из групп. Создать диаграмму/таблицу взаимосвязи требований.
Итого на курс 28 часов:
Тема 1: Задача коммуникации приложений.
Тема 2: Уровни (методы) интеграционных решений.
Тема 3: Шаблоны коммуникации в контексте приложений и микросервисной архитектуры: применение и практические сценарии.
Тема 4: Синхронное взаимодействие и REST: основы, генерация API и управление версиями.
Тема 5: REST API: рекомендации по дизайну, блокировкам, кешированию и версионированию.
Тема 6: OpenAPI Spec: интеграция и API First подход в создании удобных и гибких интерфейсов.
Тема 7: Архитектура сообщений: ключевые паттерны и методы разработки.
Тема 8: AsyncAPI: организация асинхронного взаимодействия.
Тема 9: Технологии асинхронного обмена сообщениями: RabbitMQ, Kafka в сравнении.
Тема 10: Интеграция баз данных и ETL: сильные стороны, метрики и методы оптимизации.
Тема 11: Capture Data Changes: анализ Debezium и его использование в различных сценариях.
Тема 12: Интеграция через файлы: особенности, преимущества и правила наименования.
Тема 13: Использование вспомогательных протоколов и средств интеграции API.
Практика: Этап работ: спроектировать REST API для работы с заказами с точки зрения клиентского приложения. Описать процессы взаимодействия «заказчик-исполнитель», приёма платежей, поддержки. Отобразить процессы на диаграмме потоков данных. Предложить значения для триггеров уведомлений службы поддержки.
Итого на курс 54 часа:
Тема 1: Реляционные и нереляционные базы данных: обзор, особенности и гарантии доступности.
Тема 2: Как выбрать базу данных на основании требований и контекста.
Тема 3: Организация конкурентного доступа: стратегии блокировок, изоляции транзакций и обеспечение согласованности; детали реализации транзакций и блокировок: обзор PostgreSQL, MySQL и их возможностей. CAP-теорема.
Тема 4: Современные тактики производительности реляционной базы данных.
Тема 5: Виды нереляционных баз данных: обзор, гарантии; отличия и детали реализации нереляционных баз данных.
Тема 6: Проектирование моделей данных.
Практика: Проект «Mobile Street Food». Этап работ: спроектировать модель данных системы, нарисовать ER-диаграмму. Выбрать базу данных и обосновать выбор.
Итого на курс 42 часа:
Тема 1: Технологии виртуализации.
Тема 2: Основы построения информационных сетей.
Тема 3: Архитектура Linux.
Тема 4: Основы CI/CD: построение процессов с использованием Jenkins, GitLab, Ansible.
Тема 5: Мониторинг и наблюдаемость системы: паттерны, инструменты и протоколы.
Тема 6: Проектирование облачной архитектуры: провайдеры, возможности, экономика.
Тема 7: Проектирование облачной архитектуры: паттерны.
Тема 8: Разработка 12-факторного приложения.
Тема 9: Контрактные обязательства сервиса: метрики надёжности, SLA, RTO, RPO и паттерны реализации.
Тема 10: Понимание Kubernetes: типы сущностей, Helm, CI/CD и балансировка трафика.
Практика: Проект «Mobile Street Food». Этап работ: выбрать технологии развертывания сквозного примера, нарисовать диаграмму развертывания, расположить программные элементы по элементам инфраструктуры. Описать метрики мониторинга, технические средства обеспечения отказоустойчивости и масштабирования. Выполнить предварительный расчёт оборудования продуктивной среды: CPU, RAM, Disk.
Итого на курс 42 часа:
Тема 1: UML для моделирования и анализа систем.
Тема 2: BPMN для моделирования бизнес-процессов.
Тема 3: Нотация 4+1 для анализа и проектирования архитектуры.
Тема 4: Нотация C4 для наглядного и эффективного проектирования архитектуры.
Тема 5: Изучение подхода ADR для документации архитектурных решений.
Тема 6: Язык ArchiMate.
Практика: Проект «Mobile Street Food». Этап работ: нарисовать BPMN-диаграмму для процесса заказа, оплаты и получения услуги с учётом начисления и списания баллов лояльности. Нарисовать две диаграммы последовательности (UML Sequence Diagram), отображающие работу с заказами.
Итого на курс 32 часа:
Тема 1: Сдавать задачи в срок: принципы личной эффективности.
Тема 2: Как развивать команду и выстраивать коммуникации.
Итого на курс 2 часа.
В ходе обучения вы будете работать над сквозным проектом «Mobile Street Food» под руководством опытного тренера. Проект предоставляет все необходимые материалы и шаблоны решений, которые станут полезными в вашей дальнейшей профессиональной деятельности. Выполняя задачи проекта, вы освоите навыки принятия решений, разработки архитектурных концепций и эффективного представления информации. Благодаря поддержке тренера, вы успешно завершите проект и получите ценные знания для уверенного старта в сфере разработки и инноваций.
Программа "Системный аналитик. Уровень Специалист" подробно расскажет о работе в системном анализе. Данная программа позволит в совершенстве овладеть инструментами моделирования и освоить основные архитектурные практики, и особенности работы с интеграционными требованиями.
Практика: Описание предметной области для E-commerce проекта. Создание концептуальной модели. Бизнес-игра на интервьюирование заказчика и создание модели предметной области. Практика направлена на тренировку применения объектно-ориентированного анализа и системного мышления.
Итого на курс 17 часов: теория — 10 ч., практика — 7 ч.
Практика: Выбор методологии разработки приложения для омниканального интернет-магазина. В ходе практики участники не только выбирают подход, но и анализируют его влияние на бэклог, приоритезируют доработки, используя User Story Map.
Итого на курс 16 часов: теория — 6 ч., практика — 10 ч.
Практика: Выделение функциональных требований на основе контекста и формулирование их в виде user story. Определение критериев приемки user story. Разработка диаграммы вариантов использования (use case) и ее описание по шаблону. Проектирование макета экранной формы для мобильного приложения под соответствующий сценарий.
Итого на курс 39 часов: теория — 15 ч., практика — 24 ч.
Практика: моделирование бизнес-процессов проекта в нотации BPMN. Проектирование деталей решения с использованием диаграмм UML.
Итого на курс 32 часов: теория — 8 ч., практика — 24 ч.
Практика: выбор архитектурных стилей в соответствии с бизнес-целями проекта. Разработка контекстной диаграммы. Разбиение системы на модули\микросервисы и их отображение на компонентной диаграмме.
Итого на курс 34 часов: теория — 14 ч., практика — 20 ч.
Практика: проектирование и документирование модели данных приложения. Разработка ER-диаграммы. Выбор типа БД.
Итого на курс 30 часов: теория — 12 ч., практика — 18 ч.
Практика: проектирование интеграционного решения для приложения. Проектирование REST API. Разработка диаграммы потоков данных.
Итого на курс 42 часов: теория — 20 ч., практика — 22 ч.
Практика: формулирование нефункциональных требований к системе в виде сценариев атрибутов качества: производительность, доступность, надежность, защищенность. Описание сценариев аутентификации с использованием внешнего сервиса. Описание основных ролей и их полномочий.
Итого на курс 22 часов: теория — 10 ч., практика — 12 ч.
Практика: составление детального описания тестового сценария для части проектируемого функционала. Подробная проработка альтернативных сценариев. Разработка BPMN-диаграммы для обработки инцидента аналитика. Выбор настроек для обеспечения контролируемого внедрения в продуктивную среду.
Итого на курс 18 часов: теория — 8 ч., практика — 10 ч.
Разработка омниканального интернет-магазина по продаже продуктов питания для крупной торговой компании, на основе микросервисной архитектуры с учётом интеграции с существующим IT-ландшафтом заказчика.
Практический курс для тех, кто стремится стать экспертом в области интеграционных решений и межсистемного взаимодействия! Вы узнаете, когда необходимо использовать асинхронное взаимодействие, какие принципы лежат в основе проектирования структуры JSON-сообщений, и как убедительно аргументировать выбор интеграции через REST API.




