Аннотация учебной программы дисциплины «Интеллектуальные системы»
Вид материала | Документы |
- Аннотация программы учебной дисциплины «Интеллектуальные системы», 915.14kb.
- Аннотация учебной программы дисциплины «Интеллектуальные системы», 781.23kb.
- Аннотация учебной программы дисциплины «Интеллектуальные системы», 759.09kb.
- Аннотация учебной программы дисциплины "Интеллектуальные системы", 575.41kb.
- Аннотация учебной программы дисциплины "Интеллектуальные системы", 493.28kb.
- Рабочая программа учебной дисциплины (модуля) Интеллектуальные системы принятия проектных, 94.67kb.
- Аннотация программы учебной дисциплины наименование дисциплины, 52.96kb.
- Аннотация рабочей программы наименование дисциплины Интеллектуальные информационные, 101.78kb.
- Аннотация примерной программы учебной дисциплины Вычислительные системы, сети и телекоммуникации, 3553.81kb.
- Аннотация программы дисциплины учебного плана и программ учебной и производственных, 24.01kb.
Аннотация учебной программы дисциплины
«Философия»
- Целью курса является ознакомление с основными проблемами и концепциями современной философии науки, философии языка и социальной философии. Курс лекций расчитан на магистрантов, обучающихся по негуманитарной специальности. Курс разделен на два семестра. В первом семестре основное внимание уделено современным философским подходам к анализу научной теории, применению философии для критики текста, пояснению базовых понятий и методов новейшей философии. Во втором семестре внимание сосредоточено на проблемах социальной философии и политической теории.
- Для достижения поставленной цели выделяются задачи курса:
Провести анализ основных проблем современной философии науки, философии языка и социальной философии. Показать взаимозависимость проблематики различных областей философии. Продемонстрировать различные подходы к решению философских проблем. Сформулировать базовые философские понятия, используемые для анализа научной теории и текста. Дать студентам представление о применении философских идей в современном обществе, зависимости между общественно-политическими отношениями и их отражением в социально-философских воззрениях.
Научить самостоятельно анализировать сложный профессиональный текст при помощи средств современной философии. Дать представления о многообразии современных философских подходов к исследованию естественных и искусственных языков. Дать базовые гумманитарные сведения о современных социально-философских и политологических воззрениях. Показать роль философии в формировании общественно-политических структур.
- Дисциплина входит в вариативную часть общенаучного цикла основной образовательной программы магистратуры по направлению подготовки 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА».
Изучение данной дисциплины базируется на дисциплинах: «История», «Когнитивная психология», «Экономика», «Методология ИТ исследования», «Философия» (для бакалавров).
Изучение дисциплины направлено на формирование следующих общекультурных и профессиональных компетенций:
- ОК-1, ОК-2, ОК-6; ОК-7; ОК-8
- ПК-6, ПК-8
В результате изучения дисциплины студент должен:
Знать
- основные подходы современной философии науки и философии языка;
- основные проблемы современной философии и методы их решения;
- роль философии в развитии научной теории, производственной и общественной практики, формировании общественных отношений;
- содержание современных концепций в области философии науки и техники, философии языка, философии информатики, социальной философии и политической теории;
Уметь
- применять современные философские концепции для анализа сложных текстов;
- анализировать значение понятий, составлять понятийный аппарат предметной области, устанавливать смысловые и структурные связи между терминами, применяемыми в различных областях профессиональной деятельности;
Владеть
- базовыми представлениями в области философии науки, философии языка, социальной философии;
- философскими методами анализа текста
Основные разделы курса:
- Современная философия: основные разделы философии, направления философских исследований, области применения философии, взаимосвязь философии с научной теорией и практической деятельностью. Предмет и метод философии науки. Основные этапы развития философии науки.
- Философия науки в рамках позитивистского подхода. Возникновение позитивизма в XIX в, четыри этапа развития позитивизма. Классический позитивизм. Эмпириокритицизм. Неопозитивизм (логический позитивизм) – проблема демаркации научной теории, определение понятий «истины» и «доказательства» в науке, анализ структуры научной теории и терминологического аппарата. Соотношение эмпирического и теоретического знания в философии позитивизма. Кризис неопозитивизма. Критический рационализм, постпозитивизм. Историко-научный подход в философии.
- Философия науки в рамках марксистского подхода. Особенности марксисткой философии. Воззрения на стуктуру научного знания и роль науки в жизни общества в философии марксизма. Роль онтологии в философии науки (сопоставление позитивистской и марксистской точек зрения). Научная онтология диалектического материализма. Современное состояние материалистической диалектики.
- Лингвистические исследования в философии. Основные вопросы философии языка. Развитие философии языка в конце XIX – начале ХХ вв. Лингвистический поворот. Логический атомизм. Философские концепции Л. Витгенштейна – «ранний» и «поздний» Витгенштейн. Аналитическая философия. Философия искусственных языков. Влияние идей Витгенштейна на появление языков программирования. Философия естественного языка, ее применение в современных информационных технологиях.
- Философия языка в СССР. Концепция Выгодского-Лурия, ее значение для философии языка. Философия сознания – сопоставление советских и западных концепций. Применение психолингвистических знаний в современной философии, науке, ИТ-индустрии. Современная философия языка. Лингвистические деревья Н. Хомского, генеративная грамматика и разработка языков высокого уровня в программировании. Философия языка в современном Китае. Специфика логографических языков с точки зрения философского анализа текстов.
- Социальная философия: определение базовых понятий, роль социальной философии в жизни общества, основные направления современной социальной философии. Сопоставление естественнонаучного и гуманитарного знания. Структура общества и ее отражение в философской теории. Политико-иделогические концепции ХХ в, их современное состояние. Философия истории, социальная этика, философия права.
- Современное общество с точки зрения социальной философии. Социально-политические теории XIX-XX вв. Кризис классических социально-философских идей в конце ХХ в. Вызовы современного общества и их осмысление философами. Современные философские дискуссии по общественно-политическим проблемам.
Семинарские занятия включают обсуждение философских текстов, предварительно прочитанных студентами в ходе самостоятельной подготовки.
Аннотация учебной программы дисциплины
«Формальные методы в описании языков и систем программирования»
Целью дисциплины является изучение теории и методов предикатного программирования для задач вычислительной и дискретной математики.
Задачами дисциплины являются освоение студентами методов и практик применения предикатного программирования.
Дисциплина входит в вариативную часть профессионального цикла М2 образовательной магистерской программы «Технология разработки программных систем» направления подготовки магистров 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»
Изучение данной дисциплины требует следующих компетенций студентов:
- знание современных тенденций развития информационных технологий;
- владение культурой мышления, способен к обобщению, анализу, восприятию информации, постановке цели и выбору путей ее достижения;
- знание основ математической логики.
Дисциплины, последующие по учебному плану:
- Научно-методический практикум;
- Итоговая государственная аттестация.
Изучение дисциплины направлено на формирование следующих компетенций:
Общекультурные компетенции (ОК):
- Cпособность к самостоятельному обучению новым методам исследования, к изменению научного и научно-производственного профиля своей профессиональной деятельности (ОК-2);
- Cпособность свободно пользоваться русским и иностранным языками, как средством делового общения (ОК-3);
- Cпособность самостоятельно приобретать с помощью информационных технологий и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности (ОК-6).
Профессиональные компетенции:
- Cпособность применять перспективные методы исследования и решения профессиональных задач на основе знания мировых тенденций развития вычислительной техники и информационных технологий (ПК-1);
- Cпособность применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6);
- Cпособность владеть методами и формализмами для идентификации и описания свойств языков и систем программирования (ПК-12)
В результате освоения дисциплины студент должен:
Знать
- типовые методы предикатного программирования;
- язык спецификаций предикатных программ;
- методы трансформации предикатных программ.
Уметь
- создать формальную спецификацию программы;
- построить предикатную программу для простых задач;
- провести математическое доказательство корректности предикатной программы.
Владеть
- методами описания формальной семантики языков программирования;
- методами спецификации и доказательства корректности программ.
Содержание разделов и тем курса
- Общее понятие программы
- Задача дедуктивной верификации
- Математические основы
- Язык исчисления вычислимых предикатов
- Система правил доказательства корректности программы
- Построение языка предикатного программирования
- Технология предикатного программирования
- Методы доказательства корректности программ
Аннотация учебной программы дисциплины
«Технологии создания информационных систем.
Бизнес моделирование
(SADT, ERWin, BPWin, IDEF0, IDEF1, UML, VB)»
Целью дисциплины является систематизация знаний о возможностях и особенностях применения различных методологий и технологий разработки информационных систем.
Задачами дисциплины являются:
- начальное формирование точки зрения аналитика, способного сделать обоснованный выбор методов и технологий для решения задач разного типа, умеющего определить критерии этого выбора;
- знание методов, средств, инструментов, применяемых на каждом этапе жизненного цикла программного изделия;
- представление о взаимосвязи между показателями качества программы и качества процесса ее разработки, методы обеспечения качества;
- видение проблем построения и применения технологии разработки в разных аспектах – методологическом, управленческом, инструментальном, организационном, стоимостном, внедренческом.
Дисциплина входит в вариативную часть профессионального цикла М2 образовательной магистерской программы «Технология разработки программных систем» направления подготовки магистров 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»
Изучение данной дисциплины требует следующих компетенций студентов:
Уровень «знать»:
- Объектно-ориентированный подход, основные понятия: класс, объект, свойство, метод, событие, основы UML)
- Основные понятия и конструкции языков программирования (процедуры, функции, указатели)
- Основные элементы математической логики
- Базовые модели описания деятельности предприятия
Уровень «уметь»:
- Умение проектировать и реализовывать программы на одном из языков объектно-ориентированного программирования
- Умение составлять и отлаживать программы на языках программирования высокого уровня
- Умение использовать правила логического вывода и логические операции при написании программы
- Умение применять базовые модели к созданию бизнес-моделей
Дисциплины, последующие по учебному плану:
- Технология разработки программного обеспечения
- Научно-методический практикум
- Научно-исследовательская работа
- Итоговая государственная аттестация
Изучение дисциплины направлено на формирование следующих компетенций:
Общекультурные компетенции (ОК):
- Способность к самостоятельному обучению новым методам исследования, к изменению научного и научно-производственного профиля своей профессиональной деятельности (ОК-2);
- Способность свободно пользоваться русским и иностранным языками, как средством делового общения (ОК-3);
- Способность самостоятельно приобретать с помощью информационных технологий и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности (ОК-6)
- Способность к профессиональной эксплуатации современного оборудования и приборов (в соответствии с целями магистерской программы) (ОК-7).
- Способность применять на практике полученные знания и навыки для разработки методик, учебных материалов, научных публикаций и докладов, отчетов, технической документации, презентаций (ОК-9)
Профессиональные компетенции:
- Способность применять перспективные методы исследования и решения профессиональных задач на основе знания мировых тенденций развития вычислительной техники и информационных технологий (ПК-1);
- Способность разрабатывать и реализовывать планы информатизации предприятий и их подразделений на основе Web- и CALS-технологий (ПК-3);
- Способность формировать технические задания и участвовать в разработке аппаратных и/или программных средств вычислительной техники (ПК-4);
- Способность выбирать методы и разрабатывать алгоритмы решения задач управления и проектирования объектов автоматизации (ПК-5);
- Способность применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6);
- Способность оптимально применять методы, инструменты функциональной декомпозиции для описания проектных решений и бизнес требований при разработке программных систем (ПК-11)
В результате освоения дисциплины студент должен:
Знать
- концепции и идеи, на которых основано многообразие современных технологий создания программ
- проблемы, решаемые при организации жизненного цикла программы
- особенности промышленного производства программ.
- характеристики программного изделия как объекта труда
- основные подходы к организации процесса разработки программ
Уметь
- выполнить анализ требований и создание сценариев использования продукта
- проводить переговоры с заказчиком с целью выяснения его первоначальных потребностей и бизнес-задач
- разработать варианты решения выявленных бизнес-задач на основе результатов экспресс-обследования
- разработать концепцию будущей информационной системы заказчика
- провести контроль разработки технической спецификации по полученным требованиям
- разработать и документально оформить проект создаваемой информационной системы
- участвовать в инспекциях программного обеспечения
- провести обучение и консультирование персонала в рамках своей компетенции
Владеть
- типовыми методологиями, технологиями и инструментами, применяемыми для автоматизации процесса разработки программ
- методами обеспечения качества результата труда
- методами обеспечения качества и развития процесса разработки программ.
Содержание разделов и тем курса
Теоретическая часть
Раздел 1 Базовые понятия. Модели ЖЦПО. Основы системологии
1.1.Программная система как объект труда. Типизация программ. Понятие программного продукта. Рост сложности программы в период эксплуатации. Кривая Лемана. Восемь признаков сложности программ как объекта труда (по Фоксу).
1.2.Общая характеристика процесса разработки программ. Девять главных проблем, решаемых при организации программного проекта (по Соммервиллу). Четыре вида подходов к организации процесса. Нисходящее и восходящее проектирование.
1.3.Модели жизненного цикла программного обеспечения (ПО) – традиционная, каскадная, итерационная, матричная, спиральная. Анализ условий и ограничений применения моделей ЖЦПО. Достоинства и недостатки каждого типа моделей.
1.4.Краткий обзор основных понятий системологии. Определение системы. Классификация систем (физико – биологические, социальные, эрготехнические). Базовые категории системного подхода. Общие закономерности свойств, поведения, развития систем любой природы. Иерархичность структуры. Целостность и эмергентность. Целеобусловленность. Коммуникативность. Типы функционирования. Системное время. Управление и самоорганизация в системах.
1.5.Принципы и правила системного подхода при исследовании или построении эрготехнических систем, вытекающие из общих свойств систем – целеобуловленность, относительность, управляемость, симбиозность, оперативность
1.6.Моделирование как главный метод системного обследования.
Виды моделей.
Особенности моделирования эрготехнических систем.
Функциональное моделирование.
Понятия целевой функции, критериев успеха, альтернатив в достижении цели, анализа рисков
1.7.Введение в методологию структурного анализа и проектирования SADT.
Принципы функционального моделирования. Стратегия декомпозиции, описание системы в трех измерениях (структурном, функциональном, техническом). Принцип «черного ящика», описание уровней иерархической структуры.
Описание функционирования системы, типизация моделей – модели вхождения, предметная, причинная и приоритетная.
Виды эрготехнических средств, обеспечивающих функционирование системы.
Раздел 2. Этапы разработки - задачи, работы, методы, ин-
струменты для каждого этапа
2.1.Методы анализа и постановки задачи. Определение требований к программной системе.
Анализ осуществимости проекта.
Метод решения задач по Пойа. Особенности эрготехнических систем, выбор альтернативных решений, критерии эффективности. Прототипирование как инструмент системного обследования. Правила описания требований к программному изделию, категории требований. Спецификация требований, концепция «черного ящика».
Пример спецификации требования надежности ПО (по Маейрсу).
Правила предотвращения ошибок при описании внешнего поведения системы.
Валидация и эволюция требований.
2.2.Методы проектирования ПО. Моделирование архитектуры системы.
Метод Дейкстры. Разработка структуры программной системы. Методологии модульного, структурного и объектно-ориентированого программирования. Методология структурного анализа SADT.
Обзор подходов к доказательному программированию – синтез программ, сборочное и конкретизирующее программирование.
Раздел 3 Качество продукта и процесса
Обеспечение качества ПО.
Модели и стандарты качества – ISO, TQM, CMM, SPICE. Методы предотвращения ошибок в ПО, правила защитного программирования. Статические анализаторы, виды статического контроля программ. Реализация концепции качества в технологии «стерильного цеха» (Cleanroom) Миллза. Оценка надежности и готовности программы. Статистическое тестирование.
Модель использования программы, операционный профиль.
Раздел 4. Применение CASE-систем
Сквозная автоматизация работ в программном проекте.
Обобщенная архитектура и возможности CASE-систем. Сравнительный анализ методологий RUP, RAD, XP. Особенности применения CASE- систем, выбор состава и функций интегрированной среды разработки при конструировании АРМов профессиональных программистов.
Аннотация учебной программы дисциплины
«Верификация и анализ программ»
Цель дисциплины - изучение основ современной методологии верификации программ с позиций ее практического использования в процессе разработки программ; формирование у студентов навыков, позволяющих применять на практике полученные знания в области верификации и анализа программ.
Задачами дисциплины являются: изучение классических методов Флойда и Хоара верификации и анализа программ; обучение современной методологии практического применения этих методов; изучение проблемы автоматизации процесса верификации программ.
Дисциплина входит в вариативную часть профессионального цикла М2 образовательной магистерской программы «Технология разработки программных систем» направления подготовки магистров 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»
Требования к первоначальному уровню подготовки обучающихся для успешного освоения дисциплины:
уровень знать:
- методы объектно-ориентированного проектирования;
уровень уметь:
- реализовать заданную спецификацию (архитектуру) программной системы на языках Java, С++;
уровень владеть:
- навыком проводения объектно-ориентированной декомпозиции задачи в соответствии с заданными требованиями;
Дисциплины, последующие по учебному плану:
- Научно-исследовательская работа
- Итоговая государственная аттестация
В результате освоения дисциплины обучающийся должен:
Знать
- основные классические методы верификации программ
- методы автоматического доказательства условий корректности
Уметь
- применять классические методы верификации программ
Владеть
- методологией верификации и анализа программ в конкретных типовых ситуациях
- методологией автоматизации процесса верификации программ
В результате освоения дисциплины у учащегося формируются следующие компетенции:
Общекультурные компетенции:
- Способен к самостоятельному обучению новым методам исследования, к изменению научного и научно-производственного профиля своей профессиональной деятельности (ОК-2);
- Способен свободно пользоваться русским и иностранным языками, как средством делового общения (ОК-3);
- Способен самостоятельно приобретать с помощью информационных технологий и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности (ОК-6);
Профессиональные компетенции:
- Уметь применять перспективные методы исследования и решения профессиональных задач на основе знания мировых тенденций развития вычислительной техники и информационных технологий (ПК-1);
- Уметь применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6).-
- Уметь применять современные методы и инструменты верификации для оценки корректности и качества программ (ПК-8);
Тематический план курса
1. Базовые понятия. Метод Флойда.
Постановка задач. Надежность программ и систем. Логический язык спецификаций. Понятие корректности программ. Формальная семантика языков программирования.
Метод индуктивных утверждений Флойда доказательства частичной корректности программ.
- Метод Хоара верификации программ.
Частичная корректность программ. Аксиоматическая семантика элементарных конструкций и циклов.
Аксиоматическая семантика операторов над сложными структурами данных: массивами, файлами, указателями.
Аксиоматическая семантика рекурсивных процедур.
3. Методы синтеза инвариантов циклов и ограничивающих функций.
Эвристические методы синтеза инвариантов циклов.
Метод ограничивающих функций для доказательства терминации программ.
4. Автоматизация процесса верификации программ.
Методы автоматического доказательства условий корректности.
Автоматические системы верификации программ.
Аннотация учебной программы дисциплины
« Вычислительные системы»
- Основной целью курса является овладение современными технологиями моделирования, реализации и аттестации крупномасштабных распределённых вычислительные систем.
Для достижения цели выделяются следующие задачи курса:
- представление формального подхода к разработке распределённых систем, основанного на моделировании сценариев обмена данными посредством частично упорядоченных множеств;
- обзор основных аспектов современных крупномасштабных распределённых систем, принципов и примеров их реализации;
- обучение основам программной реализации систем с привлечением технологий Grid.
Дисциплина входит в базовую часть профессионального цикла образовательной программы магистра. Изучение данной дисциплины базируется на следующих курсах: «ЭВМ и периферийные устройства», «Телекоммуникации и сети», «Операционные системы», «Алгебра и геометрия», «Математическая логика», «Дискретная математика»
Изучение дисциплины направлено на формирование следующих общекультурных и профессиональных компетенций: ОК-7, ПК-4.
В результате изучения дисциплины у студента формируются:
- представления о формальных методах моделирования и верификации крупномасштабных распределённых систем;
- знания ключевые принципы и основные технологии разработки крупномасштабных распределённых систем;
- умения вырабатывать, верифицировать и реализовывать оптимальные проектные решения по созданию проблемно-ориентированных крупномасштабных распределённых систем.
Основные разделы курса:
- Постановка задач о глобальной интеграции информационных ресурсов
- Математические основы инженерии распределённых систем
- Анализ эффективности распределённых систем
- Интеграция данных
- Организация совместной работы ресурсов
- Интеграция ресурсов реального времени
- Агентные и автономные системы
- Пользовательский интерфейс распределённых систем
- Защита информации в распределённых системах
- Технологии Grid
- Проектирование Grid-систем
- Реализация Grid-систем
- Комплексирование крупномасштабных распределённых систем
- Технологический процесс разработки крупномасштабных распределённых систем
Аннотация учебной программы дисциплины
«Методы тестирования»
Целью дисциплины является
- формирование у студента правильного понимания задачи тестирования программ;
- систематизация знаний о способах достижения «хорошего» уровня тестированности программ.
Задачами дисциплины являются:
- показать проблемы и важность этапа тестирования программ как одного из этапов ее разработки;
- рассмотреть основные критерии тестирования, остановиться на организации процедуры тестирования и одном из этапов тестирования - тестировании модулей;
- рассмотреть основные подходы (методы, алгоритмы) автоматизации этого важного этапа создания ПО на примерах систем автоматизации построения тестов и систем оценки полноты тестового набора.
Дисциплина входит в вариативную часть профессионального цикла М2 образовательной магистерской программы «Технология разработки программных систем» направления подготовки магистров 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»
Требования к первоначальному уровню подготовки обучающихся для успешного освоения дисциплины:
Уровень «знать»:
- особенности индустриального программирования.
- требования, предъявляемые к современным средствам разработки программных систем.
Уровень «уметь»:
- определить условия и ограничения применимости различных технологий и методов в зависимости от специфики программного проекта.
Дисциплины, последующие по учебному плану:
- Научно-методический практикум;
- Итоговая государственная аттестация.
Изучение дисциплины направлено на формирование следующих компетенций:
Общекультурные компетенции:
- Способность к самостоятельному обучению новым методам исследования, к изменению научного и научно-производственного профиля своей профессиональной деятельности (ОК-2);
- Способность свободно пользоваться русским и иностранным языками, как средством делового общения (ОК-3);
- Способность самостоятельно приобретать с помощью информационных технологий и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности (ОК-6).
Профессиональные компетенции:
- Способность применять перспективные методы исследования и решения профессиональных задач на основе знания мировых тенденций развития вычислительной техники и информационных технологий (ПК-1);
- Способность разрабатывать и реализовывать планы информатизации предприятий и их подразделений на основе Web- и CALS-технологий (ПК-3);
- Способность формировать технические задания и участвовать в разработке аппаратных и/или программных средств вычислительной техники (ПК-4);
- Способность выбирать методы и разрабатывать алгоритмы решения задач управления и проектирования объектов автоматизации (ПК-5);
- Способность применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6);
- Способность эффективно использовать на практике стратегии, методы и технологии тестирования программного обеспечения (ПК-10).
В результате освоения дисциплины студент должен
Знать
- средства автоматизации тестирования;
- формализмы, применяемые для описания критериев тестирования;
- принципы тестирования;
- основные критерии тестирования;
- стратегию тестирования и критерии завершения тестирования;
- основные этапы тестирования.
Уметь
- создать хороший набор тестов для программы как основываясь на ее спецификации так и ее тексте;
- оценить качество набора тестов;
- при необходимости создать систему автоматизации этапов тестирования.
Владеть
- типовыми приемами и методами тестирования программ;
- методами обеспечения качества результата труда.
Содержание разделов и тем курса
Тема 1. Введение.
1.1. Этапы разработки программного обеспечения и этапы жизненного
цикла программы. Временные диаграммы данных этапов. Обоснование
необходимости рассмотрения методов тестирования программ.
1.2. Психология и экономика тестирования программ.
Определения теста, тестирования, удачного теста. Экономика тестирования.
Методология "черного" и "белого" ящика. Невозможность построения
полного теста в каждой из стратегий. Принципы тестирования.
Тема 2. Проектирование тестов (методы или критерии тестирования).
2.1. Критерии "черного" ящика.
Эквивалентное разбиение, граничные значения, функциональные
диаграммы и предположение об ошибке.
2.2. Критерии "белого" ящика.
2.2.1. Критерии потока управления.
Покрытие операторов, покрытие решений или С1, покрытие условий,
покрытие решений и условий, комбинаторное покрытие условий.
2.2.2. Критерии потока данных.
Покрытие всех определений (all-defs), all-p-uses, all-c-uses/some-p-uses,
all-p-uses/some-c-uses, покрытие всех def-use цепочек (all-uses),
all-du-paths, покрытие контекстов используемых переменных (U-context),
all_uses2 ( включает С1). Определение включения одного критерия в другой.
Схема строгого включения для потоковых критериев, ее обоснование.
2.2.3. Критерии для определенных конструкций языка.
Покрытие циклов (all-loops), критерий покрытия отношений, критерий
покрытия рекурсии (all-rec), критерий покрытия вызовов процедур,
критерий покрытия входных параметров и результатов процедур.
2.3. Мутационные критерии.
2.4. Формальное определение наиболее известных критериев.
Демонстрация возможности формализации определения большинства критериев с
помощью множества требуемых элементов и предиката покрытия.
Тема 3.Тестирование модулей.
Проектирование тестов. Способ построения рабочей программы. Монолитное,
пошаговое тестирование. Нисходящее и восходящее тестирование.
Методы тестирования за столом - инспекции, сквозные просмотры и обзоры программ.
Тема 4. Стратегия тестирования.
Стратегия тестирования. Критерии завершения тестирования.
Тема 5. Автоматизации тестирования.
Основные направления автоматизации тестирования. Автоматизация построения тестов, символьное исполнение программ . Построение минимального дугового покрытия УГ и на его основе минимального набора тестов для критерия С1.
Контроль качества набора тестов.
Системы контроля полноты набора тестов для определенных критериев.
Системы Тестор-Фортран, Ритм, TGS, OCT (инструментация исходного кода программ,
язык описания тестовых условий., генератор отчетов, комплексный критерий).
Инструментация объектного кода.
Аннотация учебной программы дисциплины
«Менеджмент проектов на базе MS Project»
Цель дисциплины изучение основ управления проектной деятельностью, методов планирования и реализации проектов на базе стандарта РМВОК.
Задачи дисциплины
- изучение принципов и правил организации проектной деятельности, ее структуризации
- изучение особенностей делегирования ответственности и полномочий, ведения контроля работ и других аспектов управления в парадигме «управления по целям» и ее частном виде – управлении проектами
- изучение функциональных областей проектного менеджмента, методов управления проектами по функциональным областям
- изучение групп и видов процессов управления проектами, жизненного цикла проекта
- освоение методов управления разработкой проекта и методов управления реализацией проекта
Дисциплина входит в вариативную часть цикла М2 образовательной магистерской программы «Технология разработки программных систем» направления подготовки магистров 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»
Изучение данной дисциплины требует следующих компетенций:
- осваивать методики использования программных средств для решения практических задач;
- обосновывать принимаемые проектные решения, осуществлять постановку и выполнять эксперименты по проверке их корректности и эффективности (ПК-6);
Уровень «знать»:
- Основные понятия и конструкции языков программирования
- Основные элементы математической логики
- Базовые модели описания деятельности предприятия
Уровень «уметь»:
- Умение применять базовые модели к созданию бизнес-моделей
- Умение составлять макет бизнес плана проекта
- Умение использовать правила логического вывода и логические операции
Дисциплины, последующие по учебному плану:
- Научно-исследовательская работа
- Итоговая государственная аттестация
Изучение дисциплины направлено на формирование следующих компетенций:
ОК-4 | использует на практике умения и навыки в организации исследовательских и проектных работ, в управлении коллективом ; |
ОК-5 | Способен проявлять инициативу, в том числе в ситуациях риска, брать на себя всю полноту ответственности |
ОК-6 | Способность самостоятельно приобретать и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности |
ОК-7 | способен к профессиональной эксплуатации современного оборудования и приборов (в соответствии с целями магистерской программы) |
ОК-8 | способен использовать методы, инструменты проектного управления для планирования, организации научной и практической деятельности в форме проектов |
ОК-9 | способен применять на практике полученные знания и навыки для разработки методик, учебных материалов, научных публикаций и докладов, отчетов, технической документации, презентаций |
ПК-4 | Способность формировать технические задания и участвовать в разработке аппаратных и/или программных средств вычислительной техники |
ПК-6 | применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов |
ПК-7 | организовывать работу и руководить коллективами разработчиков аппаратных и/или программных средств информационных и автоматизированных систем |
В результате освоения дисциплины студент должен:
Знать
- процедуру создания и планирования задач и назначения им ресурсов;
- средства отслеживания хода проекта и анализа промежуточных результатов;
- средства координирования проектов;
- принципы совместной работы в организации.
Уметь
- настроить параметры проекта;
- создать новый проект, назначить ему ресурсы и затраты, отследить ход выполнения проекта, произвести анализ результатов и подготовить отчет;
- делать обоснованный выбор методов управления с учетом специфики проекта;
- организовать работу в команде и управлять коммуникациями проекта.
- провести обучение и консультирование персонала в рамках своей компетенции
Владеть
- типовыми методологиями, технологиями и инструментами, применяемыми для автоматизации процесса управления проектом;
- методами обеспечения качества результата труда;
- методами обеспечения качества и развития процесса разработки проекта.
Основные разделы курса
а) Теоретические занятия
Основные понятия управления проектами.
Организационные структуры управления проектами
Функциональные области управления проектами.
Процессы управления проектами.
Правила и принципы процессно-ориентированного управления.
Управление разработкой проекта.
Логика действий и последовательность шагов при планировании проектаДокументирование плана проекта.
Управление реализацией проекта.
Основные процессы исполнения, контроля и завершения проекта. административное закрытие.
б) Практические занятия - приобретение навыков управления проектами
Аннотация учебной программы дисциплины
«Интерфейсы программных систем»
Цель дисциплины - познакомить студентов с основными методологиями и технологиями проектирования и оценки пользовательских интерфейсов программных систем
Задачами дисциплины являются: изучение основ процесса взаимодействия пользователя с программной системой; организации процесса проектирования пользовательских интерфейсов программных систем; определение взаимосвязи между показателями качества программы и характеристиками ее интерфейса, методы обеспечения качества.
Данная дисциплина относится к циклу профессиональных дисциплин М2 (вариативная часть) образовательной магистерской программы Технология разработки программных систем направления подготовки магистров 230100 «ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА»
Требования к первоначальному уровню подготовки обучающихся для успешного освоения дисциплины:
Уровень «знать»:
- знаком с современными тенденциями развития информационных технологий
- осознает социальную значимость своей будущей профессии, обладает высокой мотивацией к выполнению профессиональной деятельности
- осознает сущность и значение информации в развитии современного общества; владеет основными методами, способами и средствами получения, хранения, переработки информации
Уровень «уметь»:
- способен анализировать социально значимые проблемы и процессы
Уровень «владеть»
- имеет навыки работы с компьютером как средством управления информацией
- способен работать с информацией в глобальных компьютерных сетях
Дисциплины, последующие по учебному плану:
- Научно-методический практикум
- Научно-исследовательская работа
- Итоговая государственная аттестация
В результате освоения дисциплины студент должен:
Знать
- о месте и роли изучаемой дисциплины среди других наук;
- о концепциях и идеях, на которых основаны современные технологии проектирования интерфейсов программных систем;
- о когнитивных возможностях и ограничениях человека;
- о роли пользователя в процессе разработки и оценки качества программной системы;
Уметь
- проводить сравнительный анализ и обоснование выбора методологии разработки для разных типов программных интерфейсов;
- проводить сравнительный анализ качества и обоснование выбора методологии оценки качества для разных типов программных интерфейсов;
Владеть
- основными методологиями, технологиями и инструментами, применяемыми для автоматизации процесса разработки пользовательских интерфейсов программных систем;
- методологией анализа качества интерфейсов программных систем;
- методологией сравнительного анализа качества интерфейсов программных систем;
В результате освоения дисциплины у учащегося формируются следующие компетенции:
Общекультурные компетенции:
- Способность к самостоятельному обучению новым методам исследования, к изменению научного и научно-производственного профиля своей профессиональной деятельности (ОК-2)
- Способность свободно пользоваться русским и иностранным языками, как средством делового общения (ОК-3)
- Способность самостоятельно приобретать с помощью информационных технологий и использовать в практической деятельности новые знания и умения, в том числе в новых областях знаний, непосредственно не связанных со сферой деятельности (ОК-6)
Профессиональные компетенции:
- Способность применять перспективные методы исследования и решения профессиональных задач на основе знания мировых тенденций развития вычислительной техники и информационных технологий (ПК-1)
- Способность разрабатывать концептуцальные и теоретические модели решаемых научных проблем и прикладных задач (ПК-2)
- выбирать методы и разрабатывать алгоритмы решения задач управления и проектирования объектов автоматизации (ПК-5);
- применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6);
- Применять и создавать технологии разработки интерфейсов программных систем (ПК-9)