Контакты:

Сведения об авторе: 

Ганичев Александр Александрович, ассистент кафедры Информационная безопасность, a.ganichev@mospolytech.ru

Сведения о дисциплине:

Название: Архитектура и дизайн программного обеспечения
Направление подготовки: 09.03.01 Информатика и вычислительная техника
Образовательная программа: Программирование электронных устройств и систем
Трудоемкость: 2 ЗЕТ
Когда: 2 курс (2 семестр)
Форма контроля: Диф. зачет

Курс предназначен для изучения принципов построения, работы, проектирования и применения архитектур программного обеспечения. Содержит подробное описание подходов к формализации требований и принципов проектирования, обзора архитектурных стилей и паттернов, методик документирования и тестирования архитектуры. Рассматриваются варианты организации многослойных и микросервисных систем, способы повышения масштабируемости и обеспечения безопасности. Практическая часть курса направлена на получение навыков проектирования архитектуры программных систем и самостоятельного анализа существующих решений. Курс предназначен для бакалавров, слушателей программ ДПО технических направлений подготовки, связанных с разработкой и сопровождением программных продуктов.

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

  • получение знаний о различных архитектурных стилях, принципах построения программных систем и способах документирования архитектуры;
  • ознакомление с методами оценки и повышения качества архитектуры, включая тестирование, масштабирование и обеспечение безопасности.

Задачи изучения курса:

  • изучить основные архитектурные стили (монолит, многослойная архитектура, микросервисы и пр.) и паттерны проектирования (SOLID, DRY, KISS);
  • освоить практику выделения и проектирования компонентов, применение принципов CCP, CRP, ADP;
  • получить навыки документирования архитектуры (UML-диаграммы, C4-модель) и формализации требований;
  • изучить подходы к тестированию и обеспечению качества, включая анализ рисков, выбор уровней тестирования и принципы TDD;
  • познакомиться со способами масштабирования и обеспечения безопасности в распределённых системах.

Разделы включают в себя следующие обучающие материалы:

  • Видеоматериалы
  • Лекционный материал
  • Практические работы
  • Лабораторные работы