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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Новосибирский национальный исследовательский государственный университет» Факультет информационных технологий УТВЕРЖДАЮ _______________________ “_____”__________________20__ г.Аннотации учебных дисциплин Наименование магистерской программыИнформационно-измерительные системы Направление подготовки 230100 Информатика и вычислительная техника Квалификация (степень) выпускника Магистр Новосибирск 2011 Аннотация учебной программы дисциплины”Интеллектуальные системы”Цель дисциплины: подготовка магистров к созданию и применению интеллектуальных автоматизированных информационных систем.Для достижения поставленной цели выделяются задачи курса: Построение моделей представления знаний. Проектирование и разработка экспертных систем. Разработка моделей предметных областей. Дисциплина входит в базовую часть общенаучного цикла образовательной программы магистра. Изучение данной дисциплины базируется на базовых знаниях поступающего в магистратуру. Изучение дисциплины направлено на формирование следующих профессиональных компетенций: ПК-1, ПК-3, ПК-5, ПК-6, ПК-23. В результате изучения дисциплины студент должен:Знать: модель представления знаний; подходы и технику решения задач искусственного интеллекта; информационные модели знаний; методы представления знаний; методы инженерии знаний; модели методы формализации, автоформализации и представления знаний; теорию и технологии приобретения знаний, принципы приобретения знаний; математические модели представления знаний, методы работы со знаниями; виды систем поддержки принятия решений; основные понятия, связанные с концепцией системы, основанной на знаниях (интеллектуальная система, база знаний, механизм интерпретации знаний, подсистема объяснения, подсистема приобретения знаний, дедуктивный вывод, прямой и обратный вывод, индуктивный вывод и т. д.); основные понятия, связанные с нейросетевым подходом к построению интеллектуальных информационных систем (искусственный нейрон, синаптические связи, веса синаптических связей, искусственная нейронная сеть — ИНС, обучение ИНС и т. д.); основные понятия и методы мягких вычислений и нечеткого моделирования; основные понятия и методы семантического представления и излечения информации в сети Интернет, методы разработки и применения онтологий различных предметных областей.Уметь: разрабатывать модели предметных областей; разрабатывать методы исследования предметных областей; выполнять сравнительный анализ разработанных методов; применять методы представления и обработки знаний для решения научных и прикладных задач.Владеть навыками: применения способов формализации интеллектуальных задач; применения способов работы с базами данных и базами знаний; применения инструментальных средств и технологий работы со знаниями; работы с инструментами и методами формального описания проектных решений; использования базовых принципов и методологий построения информационных систем (ERP, EAM, MRP, CRM,PLM, САПР, АСУ, АОС и т. д.) как систем, основанных на знаниях.Иметь представление: об основных моделях формализации знаний: логических, продукционных, фреймовых, семантических сетях, а также о методах представления и извлечения знаний; об известных методах и алгоритмах логического вывода на знаниях продукционного типа, стратегии управления ими, а также представлять себе возможные направления их развития.Основные разделы и темы курса:Раздел 1. Введение в область ИИ Область ИИ. Этапы развития и основные направления ИИ.Раздел 2. Экспертные системы Понятие экспертной системы. Структура ЭС. Классификации ЭС. Коллектив разработчиков ЭС. Подходы к созданию ЭС. Методы извлечения знаний. Машина вывода ЭС. Представление неопределенности знаний в ЭС. Компонента объяснения ЭС. Гибридные ЭС.Раздел 3. Системы поддержки принятия решений Представление процесса принятия решений. Эволюция информационных систем. Определение систем поддержки принятия решений. Разработка систем поддержки принятия решений. Мягкие вычисления. Нечеткое моделирование. Искусственные нейронные сети. Генетические алгоритмы и эволюционное программирование. Гибридные системы.Раздел 4. Инженерия знаний Методы извлечения и представления знаний. Онтологии предметных областей. Разработка и применение онтологий. Семантический Веб. Семантические методы представления, поиска и извлечения информации в Интернете. Введение в предмет визуализации в научных вычислениях.Аннотация учебной программы дисциплины”Методы оптимизации”Цель дисциплины: изучение базовых математических моделей и освоение численных методов решения классических экстремальных задач, а также знакомство с современными направлениями развития методов оптимизации. В целом материал курса ориентирован на умение правильно классифицировать конкретную прикладную задачу, выбирать наиболее подходящий метод решения и реализовывать его в виде алгоритма и программы.Для достижения поставленной цели выделяются задачи курса: Дать студентам представление об областях применения математического программирования и, в частности, линейного, выпуклого и нелинейного программирования. Помочь им в изучении симплекс – метода, двойственного симплекс – метода, метода возможных направлений, метода Ньютона, градиентных методов, методов штрафов, метода отсечении Гомори, методов нулевого порядка, метода ветвей и границ, декомпозиции Бендерса, метода Келли. Научить правильно классифицировать конкретную прикладную задачу, выбирать наиболее подходящий метод её решения и реализовывать его в виде алгоритма и программы. Дисциплина входит в базовую часть общенаучного цикла образовательной программы магистра. Изучение данной дисциплины базируется на базовых знаниях поступающего в магистратуру. Изучение дисциплины направлено на формирование следующих общекультурных компетенций ОК-1, ОК-2, ОК-4 и профессиональных компетенций ПК-1, ПК-5, ПК-6. В результате изучения дисциплины студент должен:Знать: элементы теории сложности для анализа задач математического программирования: линейного, выпуклого, квадратичного и двухуровневого программирования; основы теории многогранных множеств; базовые понятия, основные определения теории экстремальных задач и численные методы решения; современные подходы к решению задач линейного и выпуклого программирования.Уметь: правильно классифицировать прикладную задачу в терминах математического программирования; выбирать подходящий метод решения задачи и анализировать скорость его сходимости; профессионально работать с готовыми коммерческими программными продуктами для решения задач линейного и выпуклого программирования.Владеть навыками: классическими методами решения задач математического программирования: методом Ньютона, градиентными методами, методом штрафов, симплекс-методом, методом ветвей и границ; методами синтеза алгоритмов решения новых классов задач.Основные разделы и темы курса: Элементы алгоритмической теории экстремальных задач. Классификация задач математического программирования. Необходимые и достаточные условия оптимальности. Элементы лагранжевой теории двойственности. Линейное программирование. Численные методы. Выпуклое программирование. Численные методы. Нелинейное программирование. Численные методы. Целочисленное линейное программирование. Численные методы.Аннотация учебной программы дисциплины«Системотехника и программирование»Дисциплина «Системотехника и программирование» имеет своей целью: освоение студентом методов и средств проведения современных научно-исследовательских работ и приемов представления полученных результатов научному сообществу (отчуждение научных результатов).Для достижения поставленной цели выделяются задачи курса: изучить основные направления научно-исследовательских работ; рассмотреть современные тенденции в организации научных исследований в области создания новых образцов информационно-измерительных систем; ознакомить студента с типовыми проблемами, которые возникают при построении и сопровождении информационно-измерительных систем, и способами их решения; освоить базовые принципы и виды представления научных результатов. Изучение дисциплины «Системотехника и программирование» базируется на дисциплинах: «Иностранный язык», «Технология разработки программного обеспечения», «Современные проблемы информатики и вычислительной техники». Изучение дисциплины направлено на формирование следующих общекультурных и профессиональных компетенций: ОК-1, ОК-2, ОК-3, ОК-4, ОК-5, ОК-6, ОК-7, ОК-8, ОК-9, ОК-10 ПК-1, ПК-2, ПК-4, ПК-5, ПК-6, ПК-7, ПК-14. В результате освоения дисциплины студент должен:Знать: основные методы организации проектирования информационно-измерительных систем основные квалификационные признаки научных работ возможные виды новизны и практической ценности научно-исследовательских работУметь: отражать актуальность проводимой научно-исследовательской работы формулировать требования к разрабатываемой системе предлагать и обосновывать проектные решения по созданию информационно-измерительных систем выявлять научную новизну и практическую ценность проводимой работы отчуждать результаты своего труда через публикации четко и уверенно излагать содержание выполненных исследований, аргументировано отвечать на вопросы и вести научную дискуссию Владеть: методами критического анализа проблемысовременными средствами реализации программно-аппаратных комплексовспособами структуризации научных результатовОсновные разделы курса:Квалификационные признаки научно-исследовательской работыОсновные этапы проектирования программно-аппаратных комплексовЖизненный цикл системСтандартизация и нормативная базаПредставления полученных результатов и научные публикацииПрезентация результатов научно-исследовательской работыГрупповые занятия и самостоятельная работа направлены на формирование практических навыков проектирования сложных программно-аппаратных комплексов и проведения научных исследований.Аннотация учебной программы дисциплины «^ Встраиваемые системы» Дисциплина «Встраиваемые системы» имеет своей целью обучение базовым знаниям по построению и использованию современных встраиваемых систем на базе 32-разрядных микропроцессоров. Для достижения поставленной цели выделяются задачи курса: Дать представление о встраиваемых системах. Познакомить с аппаратными особенностями встраиваемых платформ. Провести сравнительный обзор операционных систем, используемых во встраиваемых системах. Провести обзор программных средств, используемых для разработки и отладки программного обеспечения встраиваемых систем. Приобрести практические навыки для построения программных компонентов встраиваемых систем. Приобрести практические навыки отладки программного обеспечения встраиваемой системы. Для изучения дисциплины «Встраиваемые системы» студент должен в объеме компетенций бакалавра владеть иностранным языком, уметь программировать на одном из процедурных или объектно-ориентированных языков, иметь представление о современной цифровой схемотехнике и компьютерных архитектурах, а также иметь базовые знания по операционным системам и сетевым технологиям. Изучение дисциплины направлено на формирование следующих общекультурных и профессиональных компетенций:ОК-1, ОК-2, ОК-7ПК-1, ПК-3, ПК-4, ПК-5, ПК-15.В результате изучения дисциплины студент должен:Знать: Основные компоненты встраиваемой системы. Отличия платформ Android, Linux и Windows CE. Основные способы загрузки встраиваемой системы. Как программировать флэш-память на демонстрационной плате. Как построить ядро ОС. Как добавить дополнительные программы в образ встраиваемой системы. Как использовать JTAG-отладчик.Уметь: Управлять встраиваемой системой через последовательный порт. Обновить программное обеспечение, используемое на демонстрационной плате. Настроить сетевую файловую систему для загрузки демонстрационной платы по сети. Скомпилировать пользовательское приложение для использования во встраиваемой системе. Отлаживать работу пользовательских приложений.Владеть: Принципами проектирования и разработки встраиваемых систем. Принципами отладки программного обеспечения, используемого во встраиваемых системах.Основные разделы курса: Что такое встраиваемая система. Основные компоненты встраиваемой системы. Обзор встраиваемых операционных систем. Системы реального времени. Особенности встраиваемых систем на базе Windows CE. Отличие от версий Windows для настольных компьютеров. Особенности встраиваемых систем на базе Linux. Отличия «встраиваемых» Linux-систем и систем на базе Android от Desktop-версий. Программные и аппаратные средства для программирования флэш-памяти. Построение ядра встраиваемой операционной системы. Программное обеспечение для построения и развертывания образа встраиваемой системы. Процесс первоначальной загрузки. Файловые системы, используемые для хранения данных во флэш-памяти. RAM-диск. Загрузка по сети. Использование USB и SD-карт для хранения корневой файловой системы. Разработка пользовательских приложений для встраиваемых систем. Отладка встраиваемой системы с использованием PC. Возможности JTAG-отладчика для отладки загрузчика и работы ядра ОС на ранних этапах загрузки. Аннотация учебной программы дисциплины «^ Основы тестирования и отладки программных продуктов» Дисциплина Основы тестирования и отладки программных продуктов» имеет своей целью обучение базовым знаниям по организации и проведению тестирования программного обеспечения на различных стадиях его разработки. Для достижения поставленной цели выделяются задачи курса: Ознакомить с понятием процесса «тестирование», его целями и местом в процессе разработки программных продуктов; Изучить задачи тестирования и основные методы решения этих задач; Приобрести навыки, необходимые для проведения тестирования программных продуктов; Ознакомить с видами методик применяемых на этапах планирования и выполнения тестирования; Приобрести практические навыки разработки планов тестирования, контрольных листов и отчётов; Приобрести навыки тестирования программных систем и определения необходимого объёма тестирования; Приобрести навыки в идентификации и описании дефектов; Применение полученных знаний на практике. Для изучения дисциплины «Основы тестирования и отладки программных продуктов» студент должен в объеме компетенций бакалавра владеть иностранным языком, уметь программировать на объектно-ориентированных языках, иметь представление о построении программных систем и объектно-ориентированном дизайне, а также уметь пользоваться базами данных и владеть сетевыми технологиями программирования. Изучение дисциплины направлено на формирование следующих общекультурных и профессиональных компетенций:ОК-1, ОК-2, ОК-6, ОК-7ПК-1, ПК-3, ПК-4, ПК-6, ПК-7, ПК-16. В результате изучения дисциплины студент должен:Знать: современные методы тестирования программных продуктов; методики планирования тестирования; особенности применения тестирования на различных стадиях разработки программных продуктов; современные технологии, применяемые для автоматизации тестирования.Уметь: разрабатывать план проведения тестирования программных продуктов; проектировать тестовые сценарии; организовать проведение автоматического тестирования программных продуктов; создавать отчетные документы о результатах тестирования.Владеть: современными технологиями, применяемыми для автоматизации тестирования.Основные разделы курса:Контроль качества при разработке программных продуктов. Основные понятия. Цели и задачи тестирования. Виды и фазы тестирования.Контроль качества на различных стадиях разработки программных продуктов. Планирование проведения тестирования. Проектирование тестовых сценариев. Критерии выбора тестов. Оценка покрытия тестами. Технологии тестирования настольных приложений. Основные проблемы, возникающие при тестировании.Технологии тестирования web-приложений. Основные особенности web-приложений. Методики имитирования действий пользователя в браузере. Основные проблемы тестирования приложения через сеть.Оценка производительности программного обеспечения. Использование системных ресурсов. Время отклика приложения. Факторы, влияющие на результаты оценки производительности.Технологии проведения автоматизированного тестирования. Виды автоматического тестирования. Использование технологий виртуализации. Автоматизация запуска и генерации отчетов. Иерархия и зависимости между тестовыми сценариями. Аннотация учебной программы дисциплины”Английский язык”Цель дисциплины – развитие у обучаемых общеязыковых и профессионально-ориентированных лингвокоммуникативных навыков, а также умений и навыков письменного перевыражения иностранного текста на русском языке в виде полноценного письменного перевода или устного резюме заданного объема.^ Задачами дисциплины являются: совершенствование навыков и умений чтения, говорения, письма и перевода, аудирования; овладение лексическим запасом, обеспечивающим эффективную иноязычную коммуникацию в рамках профессиональной деятельности, ознакомление с основами культуры делового общения и ведения профессиональной документации на иностранном языкеДанная дисциплина относится к циклу общенаучных дисциплин (вариативная часть, дисциплины по выбору студента) образовательной магистерской программы. Изучение данной дисциплины базируется на базовых знаниях поступающего в магистратуру. Изучение дисциплины направлено на формирование общекультурных компетенций ОК-1, ОК-3. В результате освоения дисциплины студент должен:Знать: лексический минимум в объеме 4000 учебных лексических единиц общего и терминологического характера (с учетом магистерского «списка» Masters’ Word List); основные грамматические явления, характерные для профессиональной устной и письменной речи; основные правила письменного перевода текстов научного и делового стиля на основе приемов перевыражения; правила речевого бытового и профессионального этикета.Уметь: выразить свою точку зрения по актуальному вопросу, приводя необходимые пояснения и аргументы на иностранном языке; объяснить на иностранном языке суть проблемы и указать противоположной стороне в ходе дискуссии на преимущества и недостатки той или иной позиции; участвовать в диалоге на профессиональные темы с носителями изучаемого языка, не создавая препятствий языкового характера; сделать сообщение по теме научного исследования на иностранном языке; составить реферат и аннотацию научной статьи по специальности на иностранном языке; составить резюме, заполнить документы на грант, написать план и обоснование исследовательского проекта на иностранном языке; понимать на слух сообщения на профессиональные темы; читать литературу по специальности на иностранном языке с целью общего понимания текста либо с целью извлечения необходимой информации; переводить литературу по специальности на иностранном языке, показывая полное и точное понимание профессиональной проблемы.Владеть: основными правилами написания (составления) связного текста; навыками использования разного стиля (обиходно-литературный, официально-деловой и научный) в письменной и устной формах.Основные разделы и темы курса: Чтение и перевод английской научно-технической литературы. Элементы синтаксического и текстового анализа (в рамках разграничения и опознания разностилевых компонентов, обозначенных выше): • основные структуры простого предложения; • базовая структура сложносочиненного предложения; • основные структуры сложноподчиненного предложения; • конструкции с неличными формами глагола (причастие I; причастие II; причастные обороты, герундий; герундиальные обороты; инфинитив; инфинитивные обороты); • модальные глаголы и их эквиваленты, • употребление основных пунктуационных знаков в английском предложении (запятая, точка с запятой, двоеточие, дефис, тире, скобки). Чтение и обсуждение английской научно – технической литературы. Работа с текстами и упражнениями по тексту, взятыми из учебников, или разработанных преподавателями на базе материалов из дополнительных аутентичных источников, ведение диалогов и участие в дискуссиях на темы по специальности Деловой английский. Основы деловой переписки; составление резюме и CV; ключевые черты эффективной презентации/научного доклада; практика составления презентаций. Реферирование английской научно-технической литературы Изучение правил составления аннотации, конспекта, резюме и краткого содержания научных статей, а также развитие умения анализировать информацию.^ Аннотация учебной программы дисциплины «Философия» Целью курса является ознакомление с основными проблемами и концепциями современной философии науки, философии языка и социальной философии. Курс лекций расчитан на магистрантов, обучающихся по негуманитарной специальности. Курс разделен на два семестра. В первом семестре основное внимание уделено современным философским подходам к анализу научной теории, применению философии для критики текста, пояснению базовых понятий и методов новейшей философии. Во втором семестре внимание сосредоточено на проблемах социальной философии и политической теории. Для достижения поставленной цели выделяются задачи курса:Провести анализ основных проблем современной философии науки, философии языка и социальной философии. Показать взаимозависимость проблематики различных областей философии. Продемонстрировать различные подходы к решению философских проблем. Сформулировать базовые философские понятия, используемые для анализа научной теории и текста. Дать студентам представление о применении философских идей в современном обществе, зависимости между общественно-политическими отношениями и их отражением в социально-философских воззрениях. Научить самостоятельно анализировать сложный профессиональный текст при помощи средств современной философии. Дать представления о многообразии современных философских подходов к исследованию естественных и искусственных языков. Дать базовые гумманитарные сведения о современных социально-философских и политологических воззрениях. Показать роль философии в формировании общественно-политических структур.Дисциплина входит в вариативную часть общенаучного цикла основной образовательной программы магистратуры по направлению подготовки 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА». Изучение данной дисциплины базируется на дисциплинах: «История», «Когнитивная психология», «Экономика», «Методология ИТ исследования», «Философия» (для бакалавров). Изучение дисциплины направлено на формирование следующих общекультурных и профессиональных компетенций: ОК-1, ОК-2, ОК-6; ОК-7; ОК-8 ПК-6, ПК-8 В результате изучения дисциплины студент должен:Знать – основные подходы современной философии науки и философии языка; – основные проблемы современной философии и методы их решения; – роль философии в развитии научной теории, производственной и общественной практики, формировании общественных отношений; – содержание современных концепций в области философии науки и техники, философии языка, философии информатики, социальной философии и политической теории;Уметь – применять современные философские концепции для анализа сложных текстов; – анализировать значение понятий, составлять понятийный аппарат предметной области, устанавливать смысловые и структурные связи между терминами, применяемыми в различных областях профессиональной деятельности;Владеть – базовыми представлениями в области философии науки, философии языка, социальной философии; – философскими методами анализа текста^ Основные разделы курса: Современная философия: основные разделы философии, направления философских исследований, области применения философии, взаимосвязь философии с научной теорией и практической деятельностью. Предмет и метод философии науки. Основные этапы развития философии науки. Философия науки в рамках позитивистского подхода. Возникновение позитивизма в XIX в, четыри этапа развития позитивизма. Классический позитивизм. Эмпириокритицизм. Неопозитивизм (логический позитивизм) – проблема демаркации научной теории, определение понятий «истины» и «доказательства» в науке, анализ структуры научной теории и терминологического аппарата. Соотношение эмпирического и теоретического знания в философии позитивизма. Кризис неопозитивизма. Критический рационализм, постпозитивизм. Историко-научный подход в философии. Философия науки в рамках марксистского подхода. Особенности марксисткой философии. Воззрения на стуктуру научного знания и роль науки в жизни общества в философии марксизма. Роль онтологии в философии науки (сопоставление позитивистской и марксистской точек зрения). Научная онтология диалектического материализма. Современное состояние материалистической диалектики. Лингвистические исследования в философии. Основные вопросы философии языка. Развитие философии языка в конце XIX – начале ХХ вв. Лингвистический поворот. Логический атомизм. Философские концепции Л. Витгенштейна – «ранний» и «поздний» Витгенштейн. Аналитическая философия. Философия искусственных языков. Влияние идей Витгенштейна на появление языков программирования. Философия естественного языка, ее применение в современных информационных технологиях. Философия языка в СССР. Концепция Выгодского-Лурия, ее значение для философии языка. Философия сознания – сопоставление советских и западных концепций. Применение психолингвистических знаний в современной философии, науке, ИТ-индустрии. Современная философия языка. Лингвистические деревья Н. Хомского, генеративная грамматика и разработка языков высокого уровня в программировании. Философия языка в современном Китае. Специфика логографических языков с точки зрения философского анализа текстов. Социальная философия: определение базовых понятий, роль социальной философии в жизни общества, основные направления современной социальной философии. Сопоставление естественнонаучного и гуманитарного знания. Структура общества и ее отражение в философской теории. Политико-иделогические концепции ХХ в, их современное состояние. Философия истории, социальная этика, философия права. Современное общество с точки зрения социальной философии. Социально-политические теории XIX-XX вв. Кризис классических социально-философских идей в конце ХХ в. Вызовы современного общества и их осмысление философами. Современные философские дискуссии по общественно-политическим проблемам. Семинарские занятия включают обсуждение философских текстов, предварительно прочитанных студентами в ходе самостоятельной подготовки. Аннотация учебной программы дисциплины”Вычислительные системы”Целью дисциплины является знакомство с современными формальными методами разработки программных систем.^ Задачи дисциплины: разъяснение положительных и отрицательных сторон применения формальных методов при разработке программных систем; обзор и сравнительный анализ различных формальных языков и нотаций; анализ способности формальных методов обеспечить качество создаваемых программных систем. Дисциплина входит в базовую часть профессионального цикла образовательной магистерской программы. Изучение данной дисциплины базируется на базовых знаниях поступающего в магистратуру. Изучение дисциплины направлено на формирование общекультурных компетенций: ОК-1, ОК-2, ОК-4, ОК-7; и профессиональных компетенций: ПК-1, ПК-4, ПК-5, ПК-6. В результате освоения дисциплины студент должен:Знать: ключевые преимущества и ограничения, связанные с применением современных методов распределенных вычислений в технологическом процессе.Уметь: оценивать целесообразность применения конкретных методов при разработке конкретных систем.Основные разделы и темы курса:Введение. Глобальная интеграция ресурсов – основная задача автоматизации на современном этапе. Примеры глобальных распределённых приложений. Современные принципы разработки распределённых систем.^ Математические основы инженерии распределённых систем. Формализация коммуникационного времени. Шаблоны проектирования. Компонентное проектирование. Языки описания архитектуры (Architecture Description Languages, ADL).^ Моделирование и верификация физического уровня распределённой системы. Оценка производительности систем. Модели вычислений. Статистические методы анализа потоков данных.Инженерия данных в распределённых системах. Классификация систем, управляемых данными. Метаданные и стандарт Dublin Core. Инициатива Semantic Web. Языки RDF и OWL.Организация совместной работы ресурсов. Шаблоны проектирования рабочих процессов. Языки управления рабочими процессами (Workflow Management Languages, WfML). Технология Web Service Orchestration, язык BPEL4WS.Инженерия систем реального времени. Распределённые системы реального времени, SCADA-системы. Синхронный (synchronous) подход к моделированию систем реального времени. Языки Lustre и Esterel.Концепция программного агента. Требования к агентам. Мультиагентные системы (multiagent systems), языки взаимодействия агентов. Автономные вычисления (autonomic computing).Веб-интерфейс распределённых приложений. Интеграция доступа к гетерогенным информационным ресурсам. Архитектура портала. Технологические платформы создания порталов. Технологии Grid. Основные требования к Grid-системам. Три стадии развития Grid-технологий: интеграция аппаратных ресурсов, интеграция служб, адаптивная интеграция.Архитектура Grid-систем. Формальный подход к проектированию Grid-систем. Открытая архитектура Grid-служб (Open Grid Service Architecture, OGSA).Основные компоненты интеграционного слоя Grid-систем. Платформа Globus Toolkit. Средства управления ресурсами и данными в Grid-среде. Grid-порталы. Обзор технологических платформ Grid-систем.^ Технологический процесс разработки глобальных распределенных систем. Принципы моделирования системы. Многомерная декомпозиция. Реализация путем интеграции гетерогенных компонентов.Аннотация учебной программы дисциплины”Технология разработки программных систем”Цель дисциплины – ознакомление с современными языками программирования, их классификацией и областями их применения; освоение различных методов абстрагирования, обеспечения модульности и других аспектов проектирования программных систем; повышение профессиональной эрудиции.Дисциплина входит в базовую часть профессионального цикла образовательной программы магистра. Изучение данной дисциплины базируется на базовых знаниях поступающего в магистратуру. Изучение дисциплины направлено на формирование общекультурной компетенции ОК-10 и профессиональных компетенций: ПК-11, ПК-12, ПК-14. В результате изучения дисциплины студент должен:Знать: классификацию современных языков программирования по назначению, модели исполнения, парадигмам; методы абстрагирования и обеспечения модульности, используемых в языках различных классов, преимущества и недостатки этих методов, а также их взаимную совместимость; методы проектирования программных систем с применением различных парадигм.Уметь: самостоятельно осваивать современные языки программирования различных классов; оценивать возможности языков и систем программирования, и их применимость к решению поставленных задач; комбинировать различные языки и системы программирования, а также методы проектирования с целью оптимального решения поставленных задач; расширять существующие языки дополнительными механизмами абстрагирования.Владеть навыками применения ряда современных функциональных, динамических и аспектно-ориентированных языков, а также соответствующими им методами проектирования.Основные разделы и темы курса:Раздел 1. Современные динамические языки Общая классификация языков по назначению и модели исполнения. Общие свойства динамических языков (динамическая типизация, модель трансляции и исполнения). Язык Ruby: основные конструкции языка, коллекции. Функциональный стиль программирования в Ruby: блоки и замыкания. Итераторы. Особенности объектной модели Ruby: унифицированность объектного представления, модули и примеси, инкапсуляция. Динамическое изменение классов, элементы Meta-Object Protocol (MOP) в Ruby. JRuby и взаимодействие с Java, Java Scripting API. Регулярные выражения.Раздел 2. Современные функциональные языки Классификация языков по парадигмам программирования. Функциональное программирование (ФП). Неподвижное состояние объекта как ключевое отличие ФП от ООП. Чистые функции, функции высших порядков. Функции, как объекты первого класса. Лексические контексты, анонимные функции, замыкания. Основные семейства функциональных языков. Историческая связь динамических и функциональных языков. Общие характеристики семейства языков Lisp: единое представление кода и данных, S-выражения, модель трансляции и исполнения, REPL. Язык Clojure, как современный представитель семейства Lisp: основные структуры языка. Функциональные возможности Clojure: коллекции, отложенные вычисления, бесконечные структуры данных. Абстрагирование данных с помощью функциональных примитивов (пары, числа Черча). Моделирование времени с помощью потоков. Преимущества и недостатки ФП в сравнении с ООП. Императивные возможности Clojure. Software Transactional Memory. Многопоточность. Ссылки, атомы, агенты, виды транзакций. Взаимодействие с Java.Раздел 3. Элементы метапрограммирования, аспектно-ориентированное программирование Управляемая кодогенерация. Макросы в Lisp (на примере Clojure). Модель исполнения макросов. Макросы, как способ расширения языка. Понятие о проблемно-специфичных языках (DSL) и языках сценариев. Методы генерации DSL. Символьные вычисления. Динамические объектные мо