Виды профессиональной деятельности, к которым готовятся выпускники, освоившие программу бакалавриата:
научно-исследовательская;
Программа бакалавриата ориентирована на научно-исследовательский вид профессиональной деятельности как основной и является программой академического бакалавриата.
Профессиональные задачи, которые должны быть готовы решать выпускники
Бакалавр по направлению подготовки 02.03.02 Фундаментальная информатика и информационные технологии (профиль) «Открытые информационные технологии» должен решать следующие профессиональные задачи в соответствии с видами профессиональной деятельности:
научно-исследовательская деятельность:
- изучение новых научных результатов, научной литературы и научно-исследовательских проектов в соответствии с профилем объекта будущей профессиональной деятельности;
- исследование и разработка моделей, алгоритмов, методов, программных решений, инструментальных средств по тематике проводимых научно-исследовательских проектов;
- разработка научно-технических отчетов и пояснительных записок;
- разработка научных обзоров, составление рефератов и библиографии по тематике проводимых исследований;
- участие в работе научных семинаров, научно-технических конференций;
- подготовка публикаций в научно-технических тематических журналах.
Программа государственного экзамена
Цель проведения государственного экзамена
Государственный экзамен по направлению подготовки 02.03.02 Фундаментальная информатика и информационные технологии является составной частью государственной итоговой аттестации. Его цель: проверить уровень профессиональной подготовленности будущих бакалавров по всем основным разделам математики, информатики, программирования.
Характер государственного экзамена
Государственный экзамен по направлению подготовки 02.03.02 Фундаментальная информатика и информационные технологии носит комплексный, интегративный и системный характер.
Комплексность государственного экзамена проявляется в том, что в его содержании сочетаются научные и эмпирические знания в области математики, кибернетики, программирования, теории информатики, теории сложных процессов и структур, технологии проектирования программного обеспечения, что порождает системность этого вида профессиональной аттестации выпускника вуза.
Интегративность выражается объединением в единое целое всего спектра дисциплин профессиональной подготовки базовой и вариативной частей учебного плана.
Интегративность, комплексность и системность государственного экзамена по направлению подготовки определяет требования к его содержанию и процедуре проведения. Экзамен призван выявить не только качество усвоения студентами научных знаний, но и степень сформированности их математической и информационной культуры, алгоритмического мышления и основ профессиональных умений. Экзамен позволяет оценить уровень упорядоченности и системности различных компонентов знаний выпускника-бакалавра по направлению подготовки 02.03.02 Фундаментальная информатика и информационные технологии, влияющий на становление индивидуального стиля дальнейшей профессиональной деятельности.
Содержание программы государственного экзамена
Государственный экзамен по направлению подготовки 02.03.02 Фундаментальная информатика и информационные технологии является составной частью государственной итоговой аттестации и носит интегративный и системный характер. Его цель: проверить уровень профессиональной подготовленности будущих бакалавров информационных технологий по всем основным разделам фундаментальной информатики и информационных технологий.
Структуры и алгоритмы компьютерной обработки данных. Способы представления структур данных. Массивы. Списки. Множества. Стеки и очереди. Деревья. Ориентированные, упорядоченные и бинарные деревья. Представление деревьев в памяти компьютера. Операции над деревьями. Алгоритмы компьютерной обработки данных. Рекурсивные алгоритмы. Перебор с возвратом. Метод ветвей и границ. Динамическое программирование. Сортировка и поиск в массивах. Хэширование. Использование деревьев в задачах поиска. Обработка текстов. Графы. Понятие графа. Представление графов в компьютере. Алгоритм Прима-Краскала. Алгоритм Дейкстры. Методы поиска на графах. Сжатие данных.
Теория вычислительных процессов и структур. Понятие машины Тьюринга. Тезис Черча. Класс NP языков. NP–полнота. Понятие недетерминированного конечного автомата (НКА). Понятие детерминированного конечного автомата (ДКА). Алгоритм построения эквивалентного ДКА для произвольного НКА. Сравнение временной сложности и объема памяти для реализаций ДКА и НКА. Регулярные операции над языками и регулярные выражения. Теорема Клини. Понятие грамматики и грамматического вывода. Язык, распознаваемый данной грамматикой. Восходящий и нисходящий разбор. Дерево разбора. Устранение левой рекурсии и левая факторизация грамматики при нисходящем разборе. Понятие LL(n)-грамматик и их практическая значимость.
Операционные системы и оболочки. Архитектура фон Неймана, ее основные принципы. Механизм прерываний. Потоки управления. Синхронизация потоков. Проблема критических участков. Анализ подходов к решению проблемы. Алгоритм Деккера. Аппаратная и программная поддержка взаимоисключений. Понятие виртуальной памяти. Управление виртуальной памятью: стратегии размещения, подкачек, вытеснения. Проблемы синхронизации в распределенных системах. Логические часы. Алгоритм Лампорта. Физические часы. Алгоритм Беркли. Взаимное исключение в распределенных системах. Алгоритмы: централизованный, распределенный, маркерного кольца. Основные требования к безопасности операционных систем. Внутренние и внешние атаки и их классификация.
Программирование Основные этапы компьютерного решения задач. Структура программы на языке С. Основные и производные типы. Структуры данных. Операторы. Присваивание. Ветвление. Переключатели. Цикл. Функции. Массивы и переменные с индексами. Упорядочение в одномерных массивах. Ввод-вывод символьных данных. Указатели. Указатели при вызове функций. Указатели на функции. Перегрузка функций. Структурный тип. Способы конструирования программ. Модульные программы. Директивы препроцессора. Критерии качества программы. Постановка задачи и спецификация программы. Ввод-вывод в языке С. Файл. Основы доказательства правильности программ. Обработка исключений. Понятие об объектно-ориентированном программировании и проектировании. Объекты и классы. Наследование и агрегирование. Программирование в системах компьютерной математики. Символьные и численные вычисления.
Архитектура вычислительных систем и компьютерных сетей. Способы ускорения традиционных архитектур. Конвейеры команд. Кэш-память. Разновидности организации кэш-памяти. Предсказание переходов и прочие методы оптимизации исполнения кода. Гиперпотоковые процессоры. Классификация Флинна. Архитектуры SIMD, MIMD, VLIW, EPIC. Гиперкуб, узловая, матричная архитектуры. Системы с разделяемой памятью. Согласование кэшей. Модели памяти и согласованность памяти. Основные топологии локальных вычислительных сетей, их сравнение. Протоколы Ethernet, Fast Ethernet, Gigabit Ethernet. Сравнительный анализ модели OSI и модели Internet
Базы данных и СУБД. Реляционная модель данных: определение, основные операции реляционной алгебры, эквивалентность языков запросов. Теория нормализации. Определение транзакций и их роль в поддержке согласованности и защите от отказов. Критерии согласованности ACID. Модели управления транзакциями: планировщики и протоколы.
Системы искусственного интеллекта и рекурсивно-логическое программирование. Проблемная область искусственного интеллекта. Искусственный интеллект и теория поиска вывода. Модели представления знаний. Методы получения знаний. Интеллектуальные технологии. Искусственный интеллект и экспертные системы. Факты, правила, формализованный вывод в языках логического программирования. Рекурсивное определение правил. Синтаксис и семантика Prolog-программ. Унификация и конкретизация переменных. Управление работой механизма возврата. Использование отсечения. Ловушки отсечения.
Функциональное программирование. Чистые функции. Функциональность (прозрачность по ссылкам). Метод структурной индукции. Энергичные и ленивые вычисления. Синтаксис и семантика лямбда-исчисления. Связывание переменных и подстановка. Правила преобразования. Редукция. Основы языка Haskell.
Компьютерное моделирование. Понятие «модель». Моделирование как метод познания. Натурные и абстрактные модели. Виды моделирования в естественных и технических науках. Компьютерная модель. Информационные модели. Математические модели. Геометрическое моделирование и компьютерная графика. Численный эксперимент. Его взаимосвязи с натурным экспериментом и теорией. Достоверность численной модели. Анализ и интерпретация модели.
Информационные системы. Информационные модели данных: фактографические, реляционные, иерархические, сетевые. Последовательность создания информационной модели. Взаимосвязи в модели. Типы моделей данных. Проектирование баз данных. Определение взаимосвязи между элементами баз данных. Первичные и альтернативные ключи атрибутов данных. Приведение модели к требуемому уровню нормальной формы. Администрирование баз данных. Методы хранения и доступа к данным. Объектно-ориентированное программирование в среде баз данных.