• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
2026/2027

Проектирование программных систем

Статус: Маго-лего
Когда читается: 2 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 3
Контактные часы: 24

Программа дисциплины

Аннотация

Курс учит принимать и обосновывать архитектурные решения при проектировании программных систем, в том числе систем с ML-компонентом. Вместо конкретных инструментов реализации, с которыми студенты ещё не знакомы, курс фокусируется на логике выбора: как собирать требования заказчика, когда система вообще нуждается в ML, когда выбирать монолит, а когда микросервисы, когда использовать API LLM, а когда разворачивать модель локально, когда предпочесть open source, а когда SaaS, и что реально означает вывод системы в продакшн. Практика курса построена на разборе реальных и вымышленных кейсов, а итоговым результатом становится design document на собственный проект студента, который защищается в финале в формате питч-собеса по System Design.
Цель освоения дисциплины

Цель освоения дисциплины

  • Курс формирует умение принимать и обосновывать архитектурные решения при проектировании программных систем с ML-компонентом — от выбора архитектурного стиля и технологий до решения, нужен ли ML вообще.
  • Итоговая цель — умение самостоятельно составить технический документ с описанием архитектуры системы.
Планируемые результаты обучения

Планируемые результаты обучения

  • Студент проектирует архитектуру системы на основе требований заказчика, обосновывает технологические решения (build vs buy, LLM API vs self-hosting, использование AI-агентов) и оценивает нагрузку и потоки данных. По итогам курса он составляет технический документ с описанием архитектуры и защищает его.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Система, архитектура, ML как компонент системы
  • Сбор требований и качественные характеристики системы
  • Архитектурные стили и приёмы
  • Делать самим или брать готовое, нужен ли ML вообще
  • Готовые нейросетевые сервисы (LLM) или собственное развёртывание
  • AI-агенты в работе разработчика
  • Настройка агента под свой проект
  • Данные в архитектуре
  • Нагрузка и связь между сервисами
  • Документ с описанием архитектуры и метрики успеха
  • Жизнь ML-компонента после запуска
  • Защита проектов
Элементы контроля

Элементы контроля

  • неблокирующий Design document
    Студент оформляет техническую документацию на собственный (реальный или придуманный) проект: постановка задачи, требования, архитектурное решение и его обоснование, данные, метрики, план эксплуатации. Документ можно собирать по частям после каждого занятия или подготовить целиком к сроку сдачи. Сдаётся до занятия 12 (защиты).
  • неблокирующий Активность на занятиях (текущий контроль)
    Учитывается участие в разборе кейсов на занятиях. Итоговый показатель — доля занятий, на которых студент проявил активное участие (от 0 до 1). Фиксируется по ходу курса.
  • неблокирующий Защита проекта
    На занятии 12 или в период сессии. Питч-собес по System Design. Два формата на выбор: (1) демонстрационное собеседование на занятии 12 — доступно первым N студентам, успевшим сдать design document раньше установленного срока, им автоматически засчитывается максимальная оценка за экзамен; (2) отдельный экзамен в период сессии, по желанию, для тех, кто хочет поднять итоговую оценку. При отсутствии сдачи экзамена в любом из форматов Э = 0.
Промежуточная аттестация

Промежуточная аттестация

  • 2026/2027 2nd module
    Итог = min(7 × ДЗ + 3 × Э + 2 × А; 10), где ДЗ — оценка за design document, Э — оценка за экзамен-защиту (0, если студент не сдавал ни в одном из форматов), А — доля занятий, на которых студент проявил активное участие (от 0 до 1).
Список литературы

Список литературы

Рекомендуемая основная литература

  • Назаров С.В. - Архитектура и проектирование программных систем - 978-5-16-011753-9 - НИЦ ИНФРА-М - 2023 - https://znanium.ru/catalog/document?id=416011 - 416011 - ZNANIUM
  • Проектирование программных систем - Коксеген А. Е. - Казахский агротехнический исследовательский университет имени С.Сейфуллина - - - 2022 - русский - https://e.lanbook.com/book/233960 - ЛАНЬ - 233960

Рекомендуемая дополнительная литература

  • Проектирование программных систем - Туманова М. Б., Михайлова Е. К., Муравьева Е. А. - МИРЭА - Российский технологический университет - 978-5-7339-2050-4 - 2023 - русский - https://e.lanbook.com/book/398273 - ЛАНЬ - 398273

Авторы

  • Комарова Ксения Степановна