Бакалавриат
2024/2025
Дизайн систем
Статус:
Курс по выбору (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Где читается:
Факультет компьютерных наук
Когда читается:
4-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Мавлютов Максим Константинович
Язык:
русский
Кредиты:
5
Программа дисциплины
Аннотация
Курс по системному проектированию предназначен для того, чтобы студенты могли узнать, как правильно проектировать и разрабатывать информационные системы. Этот курс поможет овладеть навыками, необходимыми для создания эффективной, надежной и функциональной системы. Кроме того, курс помогает студентам понять, какие технологии и инструменты необходимо использовать для создания такой системы. Это крайне важно для будущих специалистов в области информационных технологий, которые должны быть в курсе последних тенденций и новых технологий, чтобы создавать продукты, соответствующие потребностям пользователей.
Цель освоения дисциплины
- Умение разрабатывать общую концепцию системы и понимание ее взаимодействия с внешними системами.
- Умение проектировать и оптимизировать структуру системы с использованием современных инструментов и технологий.
- Умение создавать и анализировать модели системы для оценки ее производительности и эффективности.
Планируемые результаты обучения
- Умение оценивать риски и разрабатывать стратегии управления рисками в системах.
- Умение работать в команде и координировать работу с другими специалистами для достижения общих целей.
- Умение документировать процессы и результаты проектов для обеспечения их последующего сопровождения и совершенствования.
Содержание учебной дисциплины
- Основы проектирования и систем дизайн.
- Docker. Инфраструктурные паттерны.
- Функциональная декомпозиция.
- Взаимодействие сервисов.Rest. GraphQL. gRPC.
- Событийная модель. Kafka.
- Хранилища. Модели хранения данных.
- Надежность и отказоустойчивость. Деструктивное тестирование.
- Масштабирование. Балансировка. Api gateway, BFF.
- Безопасность.
- Наблюдаемость и сопровождение.
- Аналитика данных. ETL.
- Фронтенд. Мобильные архитектуры.
- Практический семинар 1.
- Практический семинар 2.
Элементы контроля
- Домашнее задание
- bonus_mfs = f(семинар по MFS)
- bonus_relmath = f(семинар по "Математика надежности")
Промежуточная аттестация
- 2024/2025 2nd modulefinal_score = 0.4 * hw_1 + 0.4 * hw_2 + bonus_mfs + bonus_relmath
Список литературы
Рекомендуемая основная литература
- Kleppmann, M. (2017). Designing Data-Intensive Applications : The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1487643
- Titus Winters, Tom Manshreck, & Hyrum Wright. (2020). Software Engineering at Google : Lessons Learned From Programming Over Time. O’Reilly Media.
Рекомендуемая дополнительная литература
- Marko Luksa. (2017). Kubernetes in Action. Manning Publications.