- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Ивановский государственный энергетический университет имени в.И. Ленина».
- •Иваново 2014
- •Оглавление
- •Предисловие
- •Введение
- •1.Предмет программной инженерии
- •1.1.Определение и свойства программного обеспечения
- •1.2.Проблемы разработки программного обеспечения
- •1.3.Процессы производства программного обеспечения
- •1.4.Понятие программного проекта
- •1.5. Стандартизация в области производства по
- •1.6.Определение программной инженерии и ее место в системе информационных технологий
- •2.Жизненный цикл программных продуктов
- •2.1.Понятие жизненного цикла
- •2.2.Процессы жизненного цикла программного обеспечения
- •2.3.Модели жизненного цикла
- •3.Виды деятельности в программной инженерии
- •3.1.Управление требованиями
- •3.1.1.Проблема
- •3.1.2.Цикл работы с требованиями
- •3.1.3.Виды и свойства требований
- •3.1.4.Варианты формализации требований
- •3.2.Проектирование программного обеспечения
- •3.2.1.Понятие
- •3.2.2.Принципы
- •3.2.3.Шаблоны
- •3.2.4.Моделирование по
- •3.2.5.Методологии
- •3.2.6.Оценка качества
- •3.3.Конструирование программного обеспечения
- •3.3.1.Определение
- •3.3.2.Связь с другими процессами
- •3.3.3.Принципы
- •3.3.4.Модели и методы
- •3.3.5.Языки конструирования
- •3.4.Конфигурационное управление
- •3.4.1.Проблемы управления активами программного проекта
- •3.4.2.Единицы конфигурационного управления
- •3.4.3.Управление версиями
- •3.4.4.Управление сборками
- •3.4.5.Понятие baseline
- •3.5.Тестирование программного обеспечения
- •3.5.1.Основные определения
- •3.5.2.Уровни тестирования (Test Levels)
- •3.5.3.Виды тестирования
- •3.5.4.Метрики
- •3.6.Сопровождение программного обеспечения
- •Эволюция программного обеспечения (Evolution of Software)
- •4.Методология объектно-ориентированного анализа и проектирования
- •4.1.Основные понятия
- •4.1.1.Объекты и классы
- •4.1.2.Принципы ооп
- •4.1.3.Разработка объектно-ориентированных программ
- •4.2.Язык uml
- •4.2.1.Что дает uml
- •4.2.2.Структура языка uml
- •4.2.3.Uml диаграммы
- •4.2.4.Программы поддержки языка uml
- •4.3.Вопросы для самоконтроля
- •5.Технологии разработки программного обеспечения
- •5.1.Тяжеловесные и облегченные технологии
- •5.2.Технология rup
- •5.3.Гибкие технологии
- •5.4.Технология msf
- •5.4.1. Управление рисками в msf for Agile Software Development1
- •5.4.2.Основные сведения о рисках
- •5.4.3.Планирование управления рисками
- •5.4.4.Процесс управления рисками
- •5.4.5.Управление рисками как составная часть жизненного цикла проекта
- •5.4.6.Учебный пример. Выделение рисков
- •5.5.Модель процессов msf for Agile Software Development2
- •5.5.1.Принципы модели процессов
- •5.5.2.Управление компромиссами
- •5.5.3.Схема процесса разработки
- •5.6.1. Подготовка проекта
- •5.6.2. Планирование проекта
- •5.6.3. Планирование спринта
- •5.6.4. Выполнение спринта
- •5.6.5. Отслеживание проекта
- •5.7.1. Каково назначение модели cmmi?
- •5.7.2. Как лучше использовать модель cmmi?
- •5.7.3. Элементы модели cmmi
- •Заключение Литература
- •153003, Г. Иваново, ул. Рабфаковская, 34.
5.6.3. Планирование спринта
После разработки списка невыполненных работ и создания плана выпуска команда может приступить к работе в спринтах.Спринт начинается с собрания, посвященного планированию спринта, на котором команда определяет набор описаний функциональности пользователей, предназначенных для выполнения.Этот набор вместе со вспомогательными задачами составляет список невыполненных работ спринта.Дополнительные сведения см. в разделе Сравнение отставания продукта и отставания спринта.
После начала спринта описания функциональности пользователей из его списка невыполненных работ не изменяются.Поэтому, чтобы гарантировать выполнение командой поставленных обязательств, план должен быть достаточно подробным.
Дополнительные сведения см. в разделе Собрание по планированию спринта.
Выбор описаний функциональности пользователей
Описания функциональности пользователей, которые являются кандидатами для реализации в спринте, выбираются командой.Команда определяет описания функциональности с наивысшим приоритетом, количество баллов которых не превышает ее оценочную производительность.Предположим, например, что описания функциональности пользователей с наивысшим приоритетом имеют 8, 3, 7, 6 и 2 балла.Если производительность команды составляет 25 баллов описаний, она может включить в список невыполненных работ спринта первые четыре описания функциональности.
Дополнительные сведения см. в разделе Книга "Отставание итераций".
Определение задач
Команда оценивает каждое описание функциональности пользователя, чтобы определить задачи, которые необходимо выполнить для реализации этого описания.Команда разбивает описания функциональности пользователей на отдельные задачи, которые позволяют полнее понять эти описания и принять обоснованные обязательства относительно их реализации в спринте.
Команды, обладающие большим опытом в реализации процессов Scrum, смогут определить обязательства без разбиения описаний функциональности на задачи.
Оценка задач
После определения задач команда оценивает продолжительность выполнения каждой задачи (в часах).Для оценки задач команды часто используют метод планирования с использованием покера.Этот метод позволяет удержать команды от попыток сделать более точную оценку, чем это требуется.
Принятие обязательств по реализации описаний функциональности пользователей
Чтобы убедиться в наличии достаточного количества рабочих часов для выполнения всех задач, команда использует книгу "Невыполненная работа по итерации".Если для спринта запланировано больше работ, чем может выполнить команда, необходимо удалить часть описаний функциональности пользователей с наименьшим приоритетом, чтобы запланированные работы соответствовали производительности команды, определенной для спринта.Более мелкие описания функциональности с низким приоритетом могут быть заменены на более крупные описания функциональности, которые невозможно реализовать в течение одного спринта.
Команда принимает обязательства реализовать те описания функциональности пользователей, которые она считает возможным выполнить.При принятии этих обязательств команда предполагает, что владелец продукта не будет пытаться включить в спринт дополнительную работу или изменить приоритеты реализуемых описаний функциональности пользователей.
