Бакалавриат
2023/2024![Цель освоения дисциплины](/f/src/global/i/edu/objectives.svg)
![Планируемые результаты обучения](/f/src/global/i/edu/results.svg)
![Содержание учебной дисциплины](/f/src/global/i/edu/sections.svg)
![Элементы контроля](/f/src/global/i/edu/controls.svg)
![Промежуточная аттестация](/f/src/global/i/edu/intermediate_certification.svg)
![Список литературы](/f/src/global/i/edu/library.svg)
Дизайн систем
Статус:
Курс по выбору (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Где читается:
Факультет компьютерных наук
Когда читается:
4-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Жигалко Илья Олегович,
Карпов Егор Алексеевич
Язык:
русский
Кредиты:
5
Контактные часы:
56
Программа дисциплины
Аннотация
Курс по системному проектированию предназначен для того, чтобы студенты могли узнать, как правильно проектировать и разрабатывать информационные системы. Этот курс поможет овладеть навыками, необходимыми для создания эффективной, надежной и функциональной системы. Кроме того, курс помогает студентам понять, какие технологии и инструменты необходимо использовать для создания такой системы. Это крайне важно для будущих специалистов в области информационных технологий, которые должны быть в курсе последних тенденций и новых технологий, чтобы создавать продукты, соответствующие потребностям пользователей.
Цель освоения дисциплины
- Умение разрабатывать общую концепцию системы и понимание ее взаимодействия с внешними системами.
- Умение проектировать и оптимизировать структуру системы с использованием современных инструментов и технологий.
- Умение создавать и анализировать модели системы для оценки ее производительности и эффективности.
Планируемые результаты обучения
- Умение оценивать риски и разрабатывать стратегии управления рисками в системах.
- Умение работать в команде и координировать работу с другими специалистами для достижения общих целей.
- Умение документировать процессы и результаты проектов для обеспечения их последующего сопровождения и совершенствования.
Содержание учебной дисциплины
- Основы проектирования и систем дизайн.
- Docker. Инфраструктурные паттерны.
- Функциональная декомпозиция.
- Взаимодействие сервисов.Rest. GraphQL. gRPC.
- Событийная модель. Kafka.
- Хранилища. Модели хранения данных.
- Надежность и отказоустойчивость. Деструктивное тестирование.
- Масштабирование. Балансировка. Api gateway, BFF.
- Безопасность.
- Наблюдаемость и сопровождение.
- Аналитика данных. ETL.
- Фронтенд. Мобильные архитектуры.
- Практический семинар 1.
- Практический семинар 2.
Элементы контроля
- Домашнее задание 1Выдается после 2-ого занятия. Необходимо знание докера.
- Домашнее задание 2
- Домашнее задание 3
- Домашнее задание 4
- Домашнее задание 5
- ЭкзаменЭкзамен проводится в устной форме, возможно проведение в аудитории или на платформе Zoom. Студент получает кейс по проектированию. Во время подготовки можно использовать любые печатные материалы, но запрещается использовать электронные средства коммуникации. После ответа студенту могут быть заданы дополнительные вопросы по программе курса, а также предложены задачи на понимание теоретического материала. Такие задачи не требуют проведения обширных вычислений.
Промежуточная аттестация
- 2023/2024 учебный год 2 модульИтог = min(Округл (0.2 * ДЗ1 + 0.3 * ДЗ2 + 0.5 * ДЗ3 + 0.6 * ДЗ4 + 0.3 * ДЗ5 + 0.3 * Э), 10) где ДЗ — баллы за все домашние задания, Э — оценка за экзамен, округление арифметическое
Список литературы
Рекомендуемая основная литература
- 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.