Languages

Системное программирование

  • : Function split() is deprecated in /VHST/oit/master.cmc.msu.ru/modules/filter/filter.module on line 1190.
  • : Function split() is deprecated in /VHST/oit/master.cmc.msu.ru/modules/filter/filter.module on line 1190.



Аннотация курсов программы "Программное обеспечение вычислительных сетей"

Аннотация курсов программы

ДНМ05
Технологии программирования. Компонентный подход.

Курс знакомит слушателей с технологическими проблемами разработки крупномасштабных программных систем, отличающими ее от разработки небольших программ, и методами решения этих проблем. Кроме того, рассказывается о современных способах организации разработки таких систем на основе компонентных технологий на примере Web-приложений с использованием технологий J2EE и .NET.
Слушатели курса получат хорошее представление об использовании современных высокотехнологичных методов в разработке сложного промышленных программного обеспечения, а также о практике построения качественных, гибких и масштабируемых систем в условиях жесткой конкурентной борьбы на рынке программного обеспечения.

СДМ01
Комбинаторика

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

СДМ02
Инженерия программного обеспечения

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

СДМ03
Формальная верификация программного обеспечения

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

СДМ04
Анализ и оптимизация программ

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

СДМ05
Конструирование компиляторов

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

− лексический анализ (регулярные множества и выражения, конечные автоматы и алгоритмы их построения, программирование лексического анализа);
− синтаксический анализ (контекстно-свободные грамматики и МП-автоматы, преобразования КС-грамматик, предсказывающий разбор сверху вниз и разбор снизу вверх типа сдвиг-свёртка, LL- и LR-грамматики и анализаторы);
− элементы теории перевода (преобразователи с магазинной памятью, синтаксически управляемый перевод, атрибутные грамматики);
− организация памяти транслятора (таблицы символов) и периода исполнения (магазина);
− промежуточное представление программы (в виде ориентированного графа, линеаризованные представления, виртуальная машина JAVA);
− генерация кода (динамическая организация памяти, трансляция переменных и арифметических и логических выражений, генерация оптимального кода).

Рассматриваются некоторые средства автоматизации процесса разработки трансляторов, такие как LEX, YACC, СУПЕР, методы генерации оптимального кода. На протяжении всего изложения проводится «атрибутная» точка зрения на процесс разработки компилятора.

СДМ06
Тестирование программного обеспечения

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

СДМ07
Компонентные распределенные системы

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

СДМ08
Модельные основы технологии баз данных и их приложений

В основе любой системы управления базами данных лежит некоторая модель данных, а возможности СУБД во многом определяются ее средствами поддержки типов данных. В курсе обсуждается происхождение и актуальность этих понятий. Подробно обсуждаются три наиболее важных модельных подхода к организации СУБД и баз данных: объектно-ориентированная, объектно-реляционная и «истинно» реляционная модели данных. Для каждого из этих подходов рассматриваются их системы типов и базовые языковые возможности.

СДМ09
Информационная безопасность

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