- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Ивановский государственный энергетический университет имени в.И. Ленина».
- •Иваново 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.4.5.Управление рисками как составная часть жизненного цикла проекта
Процесс управления рисками в MSF тесно интегрирован с общим жизненным циклом проекта. Оценка рисков может быть начата даже на этапе выработки концепций, поскольку в этот момент проектная группа и заинтересованные стороны начинают формировать видение проекта, его границ и рамок. По результатам анализа и планирования рисков необходимые планы по предотвращению и смягчению последствий должны быть сразу включены в календарный график проекта и его сводный план.
В ходе выполнения проекта команда постоянно проводит мониторинг рисков, осуществляет необходимые корректирующие действия в соответствии с расписанием и планом проекта, и при наступлении связанных с триггерами рисков событий.
Действия по выявлению и анализу новых рисков могут проводиться по достижении вех (milestones) проекта (подробнее о вехах далее в этой лекции). Также в этот момент можно резюмировать извлеченные уроки.
По ходу проекта тип рисков, которым уделяется внимание, также должен изменяться. На ранних этапах доминируют риски связанные с бизнесом, рамками проекта, требованиями к конечному продукту и проектированием этого продукта. С течением времени начинают играть важную роль технологические риски, связанные с реализацией проекта. Затем внимание переходит к рискам поддержки и сопровождения. Для организации деятельности по выявлению рисков в моменты основных фазовых переходов полезно использовать контрольные перечни (checklists) и классификации рисков.
5.4.6.Учебный пример. Выделение рисков
Вернемся к учебному примеру “Система бронирования билетов для авиакомпании”.
Выделим некоторые возможные риски.
|
Наименование риска |
Комментарий |
1 |
Не успеем сдать проект во время |
Из-за неправильной организации работ затратим больше времени, чем заявлено в контракте |
2 |
Не хватит квалификации персонала |
При создании продукта используется новая технология (JNL), персонал с ней не работал и может не разобраться |
3 |
Один из членов команды заболеет |
Команда не многочисленна и отсутствие одного из членов команды ведет задержке в работах |
4 |
Заказчик изменит требования |
В данный момент требования согласованы с заказчиком и утверждены, но в процессе работы заказчик может захотеть добавить в решение новую функциональность |
5 |
Авария на подстанции, отключение электричества |
Потеряем время, пока авария будет устраняться. |
6 |
Отключат доступ к Интернету |
Ухудшится возможность быстрого получения необходимых сведений, пропадет электронная почта и другие средства коммуникации |
7 |
Заказчик вовремя не оплатит счета |
Задержка в покупке необходимого оборудования |
8 |
Из-за необнаруженной вовремя ошибки система нанесет урон заказчику |
На время устранения ошибки пассажиры не смогут заказывать билеты через систему. Потребуется “ручная” работа персонала. Компания потеряет возможных клиентов и часть прибыли. |
9 |
На стороне заказчика нет заявленной в требованиях аппаратуры |
Не сможем адекватно развернуть систему |
10 |
Не сможем подобрать необходимые кадры |
Придется совмещать роли |
Мы выделили не так уж и много рисков, однако можно заметить, что они происходят из самых разных областей и связаны с людьми (риск №3), с процессами (риски №1, №8, №10), с технологиями (риск №2), с внешними условиями (риски №5, №6), с заказчиком (риски №4, №7, №9). Помимо представленных риски могут иметь и другие источники.
Далее MSF рекомендует для каждого риска представить формулировку – выражение на естественном языке причинно-следственной связи между реально существующим фактором проекта и потенциально возможным, еще не случившимся событием или ситуацией. Первая часть формулировки риска называется условием (condition) и содержит описание существующего фактора или особенности проекта, которые, по мнению проектной группы, могут сделать результат проекта убыточным либо же сократить получаемую от проекта прибыль. Вторая часть формулировки риска называется (по)следствием (consequence). Она описывает ту нежелательную ситуацию, которой следует избежать.
В качестве примера представим формулировки некоторых выявленных выше рисков.
Первопричина |
Условие |
Последствие |
Приносимый ущерб |
Нехватка кадров |
Один из членов команды заболеет |
Функции заболевшего придется передать другому |
Потери времени |
Форс-мажор |
Авария на подстанции, отключение электричества |
Потеряем время, пока авария будет устраняться |
После устранения аварии придется увеличить нагрузку, чтобы наверстать потери времени |
Организация работы |
Не сможем подобрать необходимые кадры |
Участникам придется совмещать роли |
Дополнительные трудозатраты, снижение качества продукта, увеличение времени разработки решения |
