Лекция 14. Унифицированный процесс разработки программного обеспечения Проектирование АСОИУ. Цели изучения Приобретение знаний о последовательности проектирования крупных АСОИУ, организации управления проектом Проектирование АСОИУ. Содержание Типы жизненных циклов разработки программного обеспечения Унифицированный процесс разработки программного обеспечения Управление рисками в RUP Проектирование АСОИУ. Типы жизненных циклов разработки программного обеспечения Согласно ГОСТ Р ИСО/МЭК 12.207 «Информационная технология. «Процессы жизненного цикла программного обеспечения» процесс разработки программной системы состоит из следующих этапов: Разработка требований к системе; Проектирование системы; Физическое создание системы (программирование); Тестирование системы; Передача системы в опытную эксплуатацию; Сопровождение системы. Но в ГОСТе не оговаривается последовательность выполнения этих этапов. Проектирование АСОИУ. Существует 3 наиболее распространенных типа жизненного цикла программного изделия: Водопадный (каскадный) цикл разработки; Спиральная (итерационная) разработка. Инкрементная (инкрементарная) разработка; Проектирование АСОИУ. Проектирование АСОИУ. Унифицированный процесс разработки программного обеспечения Классы итераций (стадии проекта) ПРОЦЕССЫ РАЗВИТИЕ (ПРОЕКТИРОВАНИЕ) НАЧАЛО КОНСТРУИРОВАНИЕ ПЕРЕХОД 1. Разработка требований 2. Анализ требований 3. Проектирование 4. Реализация 5. Тестирование Начальная итерация Проектирование АСОИУ. И2 И3 И4 И5 И6 И7 И8 И9 И10 ... ИТЕРАЦИИ (ВРЕМЯ) 4 типа итераций, соответствующих стадиям проекта: Начальные итерации – итерации, которые выполняются в самом начале любого проекта. Определение объема работ Необходимый трудовой коллектив Определение предметной области Определение технологий, в рамках которых реализуется проект Развитие – основной объем работ на данной итерации уходить на проектирование и разработку архитектуры системы. Конструирование – итерации, в которых основной объем работ уходит на программирование и отладку (создание кода). Переход – итерации, на которых основной объем работ уходит на опытную эксплуатацию и передачу работы заказчику. Проектирование АСОИУ. на стадии НАЧАЛО: спецификация основных требований к системе начальная модель прецедентов (Use Case) – это 20% от полного (общего) кол-ва прецедентов начальный словарь проекта начальный бизнес-вариант: • содержание бизнеса • критерии успеха, т.е. эффективность разработки и внедрения • анализируется эффективность вложения средств начальная оценка рисков первый проектный план, в котором указан (оцениваются) итерации, этапы. Проектирование АСОИУ. на стадии РАЗВИТИЕ Должна быть расширена модель прецедентов (Use Case) (должно быть готово около 80% Use Case). Должны быть определены требования к Use Case: • объемы памяти • быстродействие • время отклика Должна быть определена программная архитектура. Возможно, создается прототип (макет) системы. Пересматривается список элементов риска. Создается новый уточненный план разработки проекта. Проектирование АСОИУ. Архитектура Представление реализаций (код) Логическое представление (диаграмма классов, Диаграмма взаимодействия) Use Case Представление процессов (диаграмма состояний, диаграмма активности) Проектирование АСОИУ. Представление Размещений (диаграмма размещения в сети) на стадии КОНСТРУИРОВАНИЕ должны бать получены артефакты: программный продукт, готовый для передачи в руки конечным пользователям описание реализаций руководство пользователя. - на стадии ПЕРЕХОДА Передача всего продукта конечным пользователям Проектирование АСОИУ. на стадии ПЕРЕХОДА Передача всего продукта конечным пользователям Доработка по результатам опытной эксплуатации Проектирование АСОИУ. Управление рисками в RUP RUP предусматривает, что на каждой итерации риски уточняются и задача руководителя проектов – минимизировать влияние рисков на конечный продукт. Формула определения риска: R=P∙L, где R – риск (показатель риска), p – вероятность неудовлетворительного результата, L – потери при возникновении события неуспеха. Проектирование АСОИУ. Управление рисками включает в себя следующие действия: Идентификация рисков, т.е. выявление рисков в проекте. Анализ рисков – это анализ вероятностей потерь, связанных с возникновением события\ неуспеха. Ранжирование рисков – это упорядочивание рисков по степени влияния. Планирование управления рисками - планирование действий по уменьшению рисков. Разрешение рисков – исполнение действий направленных на снижение рисков Слежение за рисками. Проектирование АСОИУ. Идентификация рисков Выделяют 3 класса рисков: 1 класс – проектный риск 2 класс – технический риск 3 класс – коммерческий риск Проектирование АСОИУ. Источники проектного риска: неправильное определение бюджета проекта неправильное составление плана проекта неправильное определение человеческих ресурсов, необходимых для выполнения проекта ошибки в оценке сложности проекта, в его размере, в его структуре. неправильная методика общения с заказчиком Проектирование АСОИУ. Источники рисков Источники технического риска: трудности проектирования, решения технических вопросов; принятие неэффективных и устаревших технических решений; использование устаревших технологий проектирования. Источники коммерческого риска: создание продукта, не востребованного на рынке потеря финансирования Проектирование АСОИУ. Пример списка рисков (причин рисков) Дефицит персонала Нереальное расписание плана работ и бюджета. Неправильное определение требований или функций будущей системы. Интенсивный процесс изменений требований. Дефицит поставляемых компонентов. Дефицит научных возможностей. Проектирование АСОИУ. Анализ и ранжирование рисков Потери L Риск R 1) Дефицит 1% процессной памяти 7 тыс.$ 7 2) СУБД, данных 10 тыс.$ 60 Элемент риска Вероятность p потеря 6% 3) … 4) … 5) … 6) … Элементы риска упорядочиваются по степени уменьшения риска. Обычно выделяется порядка 20% рисков, с которыми могут быть связаны 80% потерь. Проектирование АСОИУ. Выводы Изучены : Типы жизненных циклов разработки программного обеспечения Организация унифицированного процесса разработки программного обеспечения Управление рисками при выполнении проектов автоматизации Проектирование АСОИУ. Информационное обеспечение лекции Литература по теме: Технология разработки программного обеспечения. Учебное пособие. 2-е изд./ С.А. Орлов._ СПб,: Питер, 2003. -480с.: ил. Электронный адрес: [email protected] Проектирование АСОИУ. Вопросы 1. 2. 3. Назовите типы жизненных циклов ПО и сделайте из сравнительный краткий сравнительный анализ Поясните график унифицированного процесс разработки ПО Как организуется работа по снижению рисков при разработке ПО Проектирование АСОИУ.