Фундаментальная информатика и информационные технологии

Бакалавриат   |   02.03.02
Профиль: «Информатика и компьютерные науки»

Информатика является сравнительно молодой наукой, однако уже включает в себя разделы, которые считаются фундаментальными и которые должен знать каждый специалист в области компьютерных наук. В рамках этого направления изучаются теоретические основы информатики и программирования, пристальное внимание уделяется математическим дисциплинам наряду с развитием практических навыков программирования. .

Узнать о том, какие документы необходимо подать и в какие сроки проводится набор можно в разделе Поступить на факультет.

Чему вас будут учить

Фокус образовательной программы сосредоточен на фундаментальных основах информатики и программирования. Программа первого курса содержит цикл классических математических дисциплин, включающих ключевые для ИТ-специалиста разделы, такие как дискретная математика, математический анализ, алгебра и геометрия.

На первом курсе изучаются несколько дисциплин, позволяющих наработать практические навыки программирования:

  • Основы программирования.

    В процессе изучения дисциплины происходит ознакомление студентов с понятием алгоритма, способами и средствами их представления, классификацией и эволюцией языков программирования, и современными тенденциями их развития, а также детальное изучение одного из языков высокого уровня (язык C).

  • Объектно-ориентированное программирование.

    Студенты изучают основные этапы, методы, средства и стандарты разработки программного обеспечения, детальное изучение одного из объектно-ориентированных языков программирования (Java), обучение студентов разработке кроссплатформенных приложений.

Отличительная особенность этой программы в наличии дисциплин, углубленно изучающих фундаментальные основы современной информатики:

  • Математическая логика и теория алгоритмов.

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

  • Алгоритмы и анализ сложности.

    Целью дисциплины является изучение общих основ разработки и анализа алгоритмов, включая асимптотический анализ верхней, нижней и средней оценок сложности алгоритмов; сравнение наилучших, средних и наихудших оценок, эмпирические измерения эффективности алгоритмов; проведение оценок накладных расходов по времени и памяти; рекуррентные соотношения и анализ рекурсивных алгоритмов, анализ алгоритмов динамического программирования; изучение NP класса сложности задач.

  • Теория автоматов и формальных языков.

    Данный курс вырабатывает у студентов навыки использования аппарата теории формальных языков, теории автоматов, что является фундаментальной основой многих современных информационных технологий.

  • Теория вычислительных процессов и структур.

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

  • Теория конечных графов и ее приложения.

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

Этот фундамент подкрепляется циклом дисциплин, связанных с развитием практических навыков, необходимых успешному ИТ-специалисту:

  • Программирование на .NET Framework.

    В рамках освоения дисциплины происходит ознакомление студентов с архитектурой среды .NET Framework, идеологией создания приложений для данной среды исполнения, языком С# как одним из основных языков программирования в среде .NET Framework, библиотекой классов Common Language Runtime, а также изучение средств создания, отладки и развертывание .NET-приложений.

  • Основы веб-программирования.

    Целью освоения дисциплины является подготовка специалистов, которые могут спроектировать web-приложение (фронтэнд и бэкэнд). В рамках дисциплины рассматриваются задачи верстки, включая адаптивную верстку, и построения веб-серверов с использованием стека Apache-MySQL-PHP, современных CMS, а также ASP.NET.

  • Основы тестирования программного обеспечения.

    Цель дисциплины состоит в изучении базовой теории, умении ориентироваться в базовых концепциях и терминах, и овладении техник тест-дизайна: разработки способов создания тестовых сценариев и тестовых данных.

  • Введение в информационный поиск.

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

  • Программирование ASP.NET.
  • Основы мобильной разработки.

Часть преподаваемых дисциплин является дисциплинами по выбору, что позволяет обучающемуся сформировать собственную образовательную траекторию.

Вы также можете ознакомиться с полной версией учебного плана 2020 года приема.

Ваша будущая профессия

Специальность «Фундаментальная информатика и информационные технологии» гарантирует трудоустройство в сферах, где активно используются IT-технологии. При получении диплома специалиста вы становитесь программистом широкого профиля со знаниями языков программирования, технологий автоматизации IT систем, обладая навыками разработки и сопровождения соответствующих информационных сервисов и продуктов.

Программисты широкого профиля – инженеры, web-разработчики, администраторы, профессионалы глобальных компьютерных сетей – востребованы всегда и везде. В процессе обучения вы можете заниматься подработкой, которая поможет в становлении на будущем рабочем месте:

Примеры выпускных работ

В.Г. Агаджанова. Моделирование и анализ свойств протоколов распространения данных в распределенных системах с использованием раскрашенных сетей Петри

Объектом исследования являются раскрашенные сети Петри и протокол Gossip.

Цель работы – построить модель протокола Gossip с использованием инструментального средства моделирования CPN Tools и проанализировать его работу на примере нескольких топологий коммутируемых сетей.

В процессе работы создавались модификации модели, позволяющие анализировать модель по многим параметрам.

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

Н.П. Баранов. Выделение контуров на изображениях в ОС Android

В данной работе рассматриваются три алгоритма для выделения контуров в изображении.

Цель работы – разработка приложения для операционной системы Android, которое позволяет выделить контуры в изображении тремя алгоритмами с последующим сохранением полученного результата.

В рамках работы данное приложение было разработано и протестировано на ряде устройств.

К.В. Лагутина. Разработка метода выделения ключевых слов для информационной системы электронного туризма Open Karelia

Актуальной задачей в рамках разработки информационных систем является автоматизация создания структуры имеющихся текстовых документов в виде связного графа. Наличие связей между туристическими объектами, удовлетворяющих описанным характеристикам, используется для более качественного и полноценного предоставления информации пользователю.

Разработан метод автоматического выделения ключевых слов для сайтов и информационных систем из сферы туризма, при этом тексты связываются друг с другом через общие ключевые слова, тем самым формируя граф, достаточно связный для удобной навигации по сайту/системе. Метод представляет собой комбинацию известного алгоритма выделения ключевых слов с процедурой постобработки при помощи тезауруса. Разработанный метод сейчас находится на этапе внедрения в туристическую информационную систему проекта Open Karelia.

Н.Г. Нуриева. Автоматический поиск контрпримеров для гипотез о периодической структуре полулинейных множеств

Основной целью работы является написание программы визуализации двумерных полулинейных множеств, согласно выдвинутым гипотезам. Основными задачами работы – изучить построение одномерных линейных множеств, а также двумерных полулинейных, выбрать и изучить язык программирования и вспомогательные элементы, написать программу визуализации.

В ходе работы были изучены одномерные линейные множества, двумерные полулинейные множества и их примеры. Практическим результатом работы является программа, написанная на языке программирования Java, визуализирующая двумерное множество достижимости.

С.В. Моржов. Анализ и разработка программного средства управления межсетевым экраном для контроллера программно-конфигурируемой сети

Целью данного проекта является создание ПО в виде сетевого приложения для ПКС контроллера Floodlight, не допускающего появление различных коллизий в правилах межсетевого экрана и списка контроля доступа.

В ходе работы был изучен способ борьбы с коллизиями, возникающими между правилами политик безопасности, предложенный Эль-Шаером. На его основе был построен алгоритм для недопущения возникновения коллизий в правилах межсетевого экрана и списке контроля доступа ПКС контроллера Floodlight. На основе полученного алгоритма было реализовано сетевое приложение. Эффективность и корректность работы данного приложения была доказана экспериментально в ходе модульного тестрования ядра, а так же системного тестирования сетевого приложения.

Е.Е. Сурикова. Разработка алгоритма структурирования сетей потоков работ на основе минимизации числа ИЛИ-слияний
Исследована проблема автоматической оптимизации потоков работ с целью повышения уровня обратимости процесса. В частности, изучены возможности автоматического структурирования сети на основе минимизации числа промежуточных ИЛИ-слияний, то есть уменьшения количества промежуточных (не финальных) позиций, имеющих более одной входной дуги. Показано, что не от всех ИЛИ-слияний можно избавиться без повреждения языка сети.
Разработан эффективный алгоритм, позволяющий выполнить максимально возможное структурирование. Представлено формализованное описание этого алгоритма, проведены оценки его применимости и вычислительной сложности.
Прикладная значимость алгоритма состоит в том, что уменьшение количества ИЛИ-слияний в схеме процесса позволит при возникновении сбоя сделать <<откат>>, а также отследить ответственность исполнителей.
А.Д. Туманова. Разработка алгоритмов автоматического поиска лексических и грамматических аспектов анализа ритма
Цель работы - разработка алгоритмов автоматического поиска лексических и грамматических аспектов анализа ритма.
В процессе работы были разработаны алгоритмы поиска анафор, эпифор, симплок, анадиплосисов, простых повторов, многосоюзий и апосиопезиов для объемных литературных прозаических текстов на английском и русском языках.
В работе проведено исследование существующих алгоритмов для анализа ритмики текста, выявлены их достоинства и недостатки. Предложен новый подход к автоматическому анализу ритмики текста.
Е.А. Мельникова. Разработка стратегий для игры <<Рыцари>>
Цель работы – разработка, сравнение и выявление лучших чистых и смешанных стратегий для игры <<Рыцари>>.
В процессе работы был произведен анализ родственных задач. В результате были реализованы чистые и смешанные стратегии для игры <<Рыцари>>, выявлены их сильные и слабые стороны. Для каждой разработанной стратегии был проведен сравнительный анализ на основании статистики вычислительных экспериментов.
Практическим результатом является программная реализация игры <<Рыцари>>, с возможностью игр в форматах: <<человек-человек>>, <<человек-компьютер>>, <<компьютер-человек>>, <<компьютер-компьютер>>. Для игрока-компьютера имеется возможность выбора стратегии, которую он будет применять в ходе игры.
И.А. Краснов. Многопротокольная коммутация пакетов на основе меток (MPLS): практическая реализация граничного маршрутизатора (LER) в Линукс
Объектом исследования является технология многопротокольной коммутации пакетов на основе меток и граничный маршрутизатор сети LER.
Цель работы - разработка алгоритма конфигурации граничного маршрутизатора сети и его реализация в скрипте на языке bash.
В процессе работы проводилось изучение технологии MPLS, исследования примеров реализации протокола, разработка алгоритма конфигурации граничного маршрутизатора.
В результате исследования были реализованы скрипты на языке bash для конфигурации граничных маршрутизаторов на базе ОС Linux.
Степень внедрения - скрипты могут быть использованы для администрирования сетей MPLS, созданные тестовые среды можно использовать для обучения основам протокола MPLS.
Е.С. Ратников. Программный инструмент для автоматического анализа ритмики текста
В настоящее время количество задач в области компьютерной лингвистики возрастает. Этому способствует бурное развитие сети Интернет и огромное количество текстов на естественном языке.
Автор в своей работе предлагает программное приложение для анализа русской и английской литературной прозы. Программное приложение позволит находить в тексте лексические и грамматические аспекты, а также определяет их общее количество в тексте и позволяет отображать результаты работы на экране. Программа позволит эксперту - лингвисту быстро найти необходимые аспекты и сосредоточиться на аналитической части исследования.
В.С. Пуханов. Разработка программы создания и просмотра документов с интерактивными фрагментами кода на языке C#
Целью работы является разработка программы, позволяющей создавать и просматривать документы со вставками кода на языке C#, которые можно запускать прямо во время чтения документа, и видеть результат их выполнения.
В процессе работы была разработана архитектура программы и описан предполагаемый сеанс работы пользователя-читателя и пользователя-автора с ней.
В результате работы была разработана и отлажена программа, позволяющая авторам создавать документы с помощью встроенного текстового редактора и дополнять их интерактивными вставками кода. Читатель имеет возможность просматривать текст документа, запускать фрагменты кода и видеть результат их выполнения на экране.

Другие программы бакалавриата





Образовательная программа имеет государственную аккредитацию