Таблица 2 - Lms Kazntu

advertisement
2
1 Цели и задачи дисциплины
1.1.
Цель преподавания дисциплины
Целью преподавания дисциплины является ознакомление магистрантов
по дисциплине методы и инструменты программной инженерии, программные
инструменты предназначены для обеспечения поддержки процессов
жизненного цикла программного обеспечения. Инструменты позволяют
автоматизировать определенные повторяющиеся действия, уменьшая загрузку
инженеров рутинными операциями и помогая им сконцентрироваться на
творческих, нестандартных аспектах реализации выполняемых процессов.
Задачи изучения дисциплины
В результате изучения дисциплины магистранты должны знать основные
принципы методы и инструменты программной инженерии, обучающийся
должен знать основные и вспомогательные процессы программной инженерии;
преимущества инженерного подхода к созданию программного обеспечения;
основные сложности, возникающие при внедрении такого подхода; историю
создания и развития программной инженерии; связь программной инженерии
с жизненным циклом программных средств; основные источники текущей
информации по управлению ИТ – сервисами.
1.2.
Пререквизиты
Для успешного освоения курса «Методы и инструменты программной
инженерии» необходимо изучение следующих дисциплин: «Компьютерная
математика»,
«Базовое
программирование»,
«Программно-аппаратная
платформа».
1.3.
Постреквизиты
Знания, полученные при изучении дисциплины «Методы и инструменты
программной инженерии», необходимы специалистам должны изучить
компьютерная математика: дискретная математика; математическая логика и
теория алгоритмов; вычислительная математика; теория автоматов и
формальных языков. Базовое программирование: программирование; объектноориентированное программирование; построение и анализ алгоритмов;
алгоритмы и структуры данных; базы данных; компьютерная графика;
криптография и защита информации; web-технологии. Программно-аппаратная
платформа: архитектура компьютера; операционные системы; архитектура
распределенных вычислительных систем; сети и телекоммуникации.
3
2. Контроль оценки знаний
Распределение рейтинговых % по видам контроля
№
Вид
итогового Виды контроля
вариантов контроля
1.
Экзамен
Итоговый контроль
Рубежный контроль
Текущий контроль
%
100
100
100
Для обеспечения систематического и регулярного контроля за учебной
работой Магистрантов течение семестра в КазНТУ применяется рейтинговый
контроль знаний.
В текущий контроль оценки знаний студентов входит выполнение 6
лабораторных работ.
Сроки сдачи текущего контроля определяются календарным графиком
учебного процесса по дисциплине (таблица 1).
Таблица 1
Календарный график сдачи всех видов контроля
по дисциплине «Методы и инструменты программной инженерии»
Недели
1 2
3
4
5
6
7
8
9
1
0
11
12
1
3
14
15
Недельное
количество
контроля
1 1
1
1
1
1
1
1
1 1
1
1
1
1
1
Л
Л
Л
Л
Р
СР
ЛР РК
СР
ЛР
Вид контроля
Р
Р
Р
Р
К
1
3
1
2
6
1
2
4
5
2
Виды контроля: СР - самостоятельная работа, ЛР – лабораторная работа, РКрубежный контроль
Соответствие процентной оценки буквенному
традиционной оценке определяется по шкале (таблица 2).
4
эквиваленту
и
Таблица 2
Оценка знаний магистрантов
Оценка
Отлично
Хорошо
Удовлетворительно
Неудовлетворительно
Буквенный
эквивалент
А
АВ+
В
ВС+
С
СD+
D
F
В процентах %
В баллах
95-100
90-94
85-89
80-84
75-79
70-74
65-69
60-64
55-59
50-54
0-49
4
3,67
3,33
3,0
2,67
2,33
2,0
1,67
1,33
1,0
0
3. Содержание дисциплины
Изучение дисциплины «Методы и инструменты программной
инженерии» предполагает обязательные лекционные (2 кредит) занятия,
лабораторные (1 кредит) занятия, а также самостоятельную работу
Магистрантов (СРМ и СРМП). Такие комплексные занятия обеспечивают
усвоение курса, способствуют приобретению студентами фундаментальных
систематических знаний.
Тематический план дисциплины с указанием наименований тем и
количества академических часов по всем видам занятий (по темам) приведен в
таблице 6.
Таблица 6
Распределение часов по видам занятий
Наименование
Темы
1
1 О предмете изучения. Программная
инженерия.
2 Процесс разработки программного
обеспечения
3 Рабочий продукт, дисциплина
обязательств, проект
5
Количество академических часов
Лекц Практич Лабо
ии
еские/
рато СРМ СР
семинар рные
П
М
ские
2
3
4
5
6
2
-
1
2
6
2
-
1
2
6
2
-
1
2
6
4 Архитектура ПО
5 Управление требованиями
6 Конфигурационное управление
7 Тестирование
8 Диаграммные техники в работе со
знаниями
9 MSF
10 CMMI
11 "Гибкие" (agile) методы разработки
12 Обзор технологии Microsoft Visual
Studio Team System (VSTS)
13 VSTS: управление элементами работ
(WorkItems)
14
VSTS:
конфигурационное
управление
15 VSTS: тестирование
Всего часов
2
2
2
2
-
1
1
1
1
2
2
2
2
6
6
6
6
2
-
1
2
6
2
2
2
-
1
1
1
2
2
2
6
6
6
2
-
1
2
6
2
-
1
2
6
2
-
1
2
6
2
30
-
1
15
2
30
6
90
3.1. Лекционные занятия и их содержание
№
1
1
2
3
4
5
Наименование
Объём,
План и содержание лекций
темы
час
2
3
4
О
предмете
Понятие программной инженерии.
2
изучения.
Основные
определения:
информатика,
Программная
Системотехника,
Бизнес-реинжиниринг.
инженерия.
Программное обеспечение: определение,
свойства.
Процесс
Понятие процесса разработки ПО.
2
разработки
Универсальный процесс. Текущий процесс.
программного
Конкретный процесс. Стандартный процесс.
обеспечения
Совершенствование процесса. Pull/Push
стратегии. Классические модели процесса:
водопадная модель, спиральная модель.
Фазы и виды деятельности.
Рабочий продукт,
Рабочий
продукт.
Дисциплина
2
дисциплина
обязательств.
Проект.
Управление
обязательств,
проектами.
проект
Архитектура ПО
Понятие архитектуры ПО. Точка
2
зрения и характеристики точек зрения.
Множественность
точек
зрения
при
разработке ПО.
Управление
Виды требований: функциональные
2
6
требованиями
6
Конфигурационно
е управление
7
Тестирование
8
Диаграммные
техники в работе
со знаниями
9
MSF
10 CMMI
11 "Гибкие"
(agile)
методы
разработки
требования, нефункциональные требования.
Свойства
требований:
ясность
и
недвусмысленность,
полнота
и
непротиворечивость, необходимый уровень
детализации,
прослеживаемость,
тестируемость
и
проверяемость,
модифицируемость.
Формализация
требований. Цикл работы с требованиями.
Понятие
конфигурационного
управления. Управление версиями. Понятие
"ветки" проекта. Управление сборками.
Средства версионного контроля. Единицы
конфигурационного управления. Понятие
baseline.
Стандартизация качества. Методы
обеспечения
качества
ПО.
Понятие
тестирования. Тестирование черного ящика.
Тестирование белого ящика. Инструменты
тестирования. Критерии тестирования. Виды
тестирования. Работа с ошибками. Средства
контроля ошибок (bugtrackingsystems).
Случаи
использования.
Работа
с
требованиями. Случаи использования в
управлении разработкой. Итеративный цикл
автор/рецензент. Карты памяти.
IT решение. Основные принципы MSF.
Модель команды: основные принципы,
ролевые
кластеры.
Масштабирование
команды
MSF.
Модель
процесса.
Управление компромиссами.
Понятие CMMI. Уровни зрелости процессов
по CMMI. Области усовершенствования.
Общее
описание
"гибких"
методов
разработки ПО. ExtremeProgramming: общее
описание, основные принципы организации
процесса. Scrum: общее описание, роли,
практики.
Состав продукта: обзор, клиентская часть
VSTS, серверная часть VSTS. Правила
инсталляции. Пакет TeamExplorer.
12 Обзор технологии
Microsoft
Visual
Studio
Team
System (VSTS)
13 VSTS: управление Аннотация: Определение,
свойства,
элементами работ жизненный цикл. Реквизиты. Средства
(WorkItems)
использования (на примере элемента работы
7
2
2
2
2
2
2
2
2
14 VSTS:
конфигурационно
е управление
15 VSTS:
тестирование
task). Доступ к элементам работы. Элементы
работы при планировании. Элементы работы
в дальнейшей разработке. Элементы работы
в отчетах.
Система контроля версий. Отслеживание
изменений отдельных файлов. Правила
внесения изменений. Управление ветками.
Сохранение без внесения. Автоматические
сборки.
Система отслеживания ошибок. Создание
описания
ошибки.
Связь
изменений
исходных текстов ПО и ошибок. Система
оповещений. Модульные тесты. Пакеты
тестов. Автоматическое тестирование Webприложений.
Всего часов
2
2
30
3.2 Лабораторные занятия и их содержание
Объём
, час
4
занятия
2
№
Наименование темы
Содержание
1
1
2
3
Целями
данного
является следующее.
Разделить студентов на scrumкоманды, определить и обсудить
Scrum-роли.
Провести начальное знакомство с
модельной
задачей,
которую
предстоит реализовать.
Прояснить открытые вопросы по
модельной задаче с Prodcut Owner.
Создать командный проект на TFS и
добавить в него пользователей.
Знакомство и создание
проекта
1.
2.
3.
4.
2
3
Работа
с
системой
Основной
целью
данного
отслеживания ошибок
занятия
является
знакомство
участников с системой отслеживания
элементов работы.
Работа
с
системой
Основной
целью
данного
контроля версий
занятия является освоение системы
контроля версий Team Foundation
Server и её интеграции с системой
отслеживания задач.
8
2
2
4
5
6
Разработка
тестов
модульных
На данном занятии команды
должны
разработать
набор модульных тестов,
покрывающих
функциональность,
разработанную
на
занятии
предыдущем.
Создание и конфигурация
На
данном
автоматической сборки
этапе команда должна создать в своем
проекте
процедуру
автоматической сборки. При этом
должно быть создано несколько
процедур:
1. Простая процедура, включающая
только сборку.
2. Полная процедура, включающая
тесты и анализ кода.
4
Настройка
процесса
3
шаблона
На
завершающем
этапе,
соответствующем
окончанию
спринта, команды должны провести
ретроспективу своей деятельности и
сформировать список возможных
изменений в процессе и работе с TFS.
Все замечания должны быть занесены
в TFS как соответствующие элементы
работы.
Всего часов
2
15
3.3. Самостоятельная работа Магистрантов
Одной из основных целей кредитной системы обучения является
обеспечение более высокого качественного уровня самостоятельной работы
Магистрантов. Самостоятельная работа Магистрантов, проводимая под
руководством преподавателя (СРМП) составляет треть всей самостоятельной
работы.
Общее количество часов самостоятельной работы Магистрантов по курсу
«Методы и инструменты программной инженерии» составляет 90 часов за
семестр, из них 30 часов отводится под СРМП (ауд.).
Содержание самостоятельной работы магистрантов под руководством
преподавателя (СРМП) и самостоятельной работы магистрантов без
преподавателя (СРМ) отражено в таблице.
9
Планы СРМП и СРМ
№
СРМП
недели
1
2
1
Международный стандарт
определяющий перечень и
содержание процессов
жизненного цикла ПО.
2
Разделы области знаний
"Проектирование ПО"
3
Стандарты в области управления
проектом.
4
5
Архитектура
и
структура
программного обеспечения
Область знаний SWEBOK
9
Характеристика областей знаний
SWEBOK
Тестирование
программных
продуктов.
Итеративный
цикл
автор/рецензент
Основные принципы MSF
10
11
CMMI
Язык разметки
12
13
Основные понятия языка shell
Интегратор объектных запросов.
14
Перечень диаграмм языка
моделирования UML.
Приведите структуру описания
спецификации интерфейса в
языке IDL.
6
7
8
15
10
СРМ
3
Базовые понятия области
знаний "Тестирование ПО".
Процесс управления качеством
жизненного цикла
Как
строить
профиль
жизненного
цикла
программного обеспечения
Концепции сценариев для сбора
требований
Инструменты работы с
требованиями (Software
Requirements Tools)
Редакторы (Software
Requirements Tools)
Разработка
технологического
процесса тестирования
Случаи
использования
в
управлении разработкой
Модель процесса. Управление
компромиссами
Модель – CMMI-DEV
Преимущества и недостатки
предметно-ориентированного
визуального языка
ОС UNIX и POSIX
Методы интеграции объектов
языка JAVA.
Особенности описания
объектов в системе CORBA.
Управления проектом и
рисками в системе MSF.
4. Список литературы
1 Липаев В.В. Системное проектирование сложных программных средств
для информационных систем. Изд. второе переработанное и дополненное. –
М.: СИНТЕГ. – 2002.
2 Соммервилл И. Инженерия программного обеспечения. Пер. с англ. –
М.: Вильямс. – 2002.
3 Леффингуэлл Д., Уидриг Д. Принципы работы с требованиями к
программному обеспечению. Унифицированный подход. Пер. с англ. – М.:
Вильямс. – 2002.
4 Вигерс К.И. Разработка требований к программному обеспечению. Пер.
с англ. – М.: Русская редакция. – 2004.
5 Гецци К.,
Джазайери М., Мандриоли Д. Основы инженерии
программного обеспечения. Пер. с англ. – СПб. БХВ-Петербург. 2005.
11
Содержание
1. Цели и задачи дисциплины……………………………………………………...3
2. Система оценки знаний………………………………………………………….3
3. Содержание дисциплины………………………………………………………..6
4. Список литературы……………………………………………………………...13
12
Download