Программа обучает студентов основным принципам и методам создания программного обеспечения. В ходе обучения студенты изучают концепции и архитектуру программных систем, основные языки программирования и инструменты разработки.
Студенты получают знания и навыки в области анализа требований, проектирования программных систем, разработки и тестирования программного кода. Они изучают методы управления проектами разработки программного обеспечения, а также основы тестирования и обеспечения качества программного продукта.
Студенты также знакомятся с современными подходами к разработке программного обеспечения, включая гибкие методологии разработки (например, Scrum или Agile), разработку мобильных приложений, веб-разработку, облачные технологии и анализ данных.
В процессе обучения студенты имеют возможность практической работы над реальными проектами, что позволяет им применить полученные знания на практике и развить свои навыки в различных областях разработки программного обеспечения.
В целом, программа бакалавриата по технологиям разработки программного обеспечения предоставляет студентам фундаментальные знания и практические навыки, необходимые для успешной карьеры в сфере разработки программного обеспечения и информационных технологий.
Программа включает в себя изучение теоретических принципов и приобретение практических навыков разработки программного обеспечения и реализации процессов создания и эксплуатации информационных систем и технологий, предназначенных для решения широкого класса задач: от глубокой автоматизации прикладных и бизнес-процессов, до разработки мобильных и web-приложений и создания электронных технологий поддержки принятия решений в условиях неопределенности.
Для этого изучаются языки (C, C++, C#, Java, JavaScript) и технологии программирования, в том числе технологии разработки web-приложений, приобретаются умения проектирования распределенных систем хранения и аналитики данных, формируются навыки администрирования серверных операционных систем (как семейства GNU/Linux, так и семейства Windows Server). Значительное внимание уделяется вопросам автоматизации и управления процессами разработки: технологиям сборки и развертывания программного обеспечения, автоматизации тестирования, управлению программными проектами. Лекции, практики и лабораторные работы в большинстве дисциплин ведут специалисты из компаний.
Профессиональные дисциплины:
- Иностранный язык
- Безопасность жизнедеятельности
- Правоведение
- Экономическая культура
- Информатика
- Линейная алгебра и аналитическая геометрия
- Математический анализ
- Теория вероятностей и математическая статистика
- Дискретная математика
- Введение в профессиональную деятельность
- Моделирование систем
- Теория информации, данные, знания
- Архитектура информационных систем
- Методы и средства проектирования информационных систем и технологий
- Управление данными
- Операционные системы
- Методы искусственного интеллекта
- Алгоритмы и структуры данных
- Управление информационно-технологическими проектами
- Сетевые технологии
- Инфокоммуникационные системы и сети
- Технологии программирования
- Основы антикоррупционной деятельности
- Экономическое обоснование проектных решений.
Вариативная часть:
- Информационная безопасность программных систем
- Технологии кроссплатформенного программирования
- Моделирование систем
- Методы и средства разработки компонент программного обеспечения
- Анализ сложности алгоритмов
- Безопасность прикладных информационных технологий и систем
- Модели управления доступом и информационными потоками в компьютерных системах
- Принципы, технологии и средства организации данных компонентов и программного обеспечения
- Методы и алгоритмы поиска и оценки программных решений
- Методы и алгоритмы аутентификации компонент программных систем
- Веб-программирование
- Методы и средства взаимодействия компонент программного обеспечения
- Средства защиты от несанкционированного доступа
- Методы обеспечения целостности информации
- Методы и средства моделирования и проектирования программного обеспечения
- Алгоритмы компонентов поточно-параллельной обработки и преобразования данных
- Алгоритмы компонентов цифровой обработки данных
- Математические модели и методы безопасного функционирования компонент программного обеспечения
- Технологии обеспечения информационной безопасности
- Организационно-правовое обеспечение защиты информации
- Проектирование архитектуры программного обеспечения
- Основы системы лицензирования и сертификации в области защиты информации.
Дисциплины по выбору:
- Анализ компьютерных инцидентов
- Методы и средства оценки соответствия программного обеспечения требованиям безопасности
- Инструментальные средства анализа программного обеспечения на уязвимости
- Анализ программного кода на наличие вредоносных объектов.