Технология разработки ПО - лекции, пособие, ЛР / Lectures / 07 - Классические модели ЖЦПО
.pdf
Достоинства классического
жизненного цикла
На каждой стадии формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности
Выполняемые в логичной последовательности стадии работ позволяют планировать сроки завершения всех работ и соответствующие затраты
Простота и понятность
Удобство в применении (поэтапный процесс разработки)
Обеспечивает строгий контроль
Позволяет контролировать качество
Недостатки классического
жизненного цикла
Реальные проекты часто требуют отклонения от стандартной последовательности шагов
Цикл основан на точной формулировке исходных требований к ПО (реально в начале проекта требования заказчика определены лишь частично)
Результаты проекта доступны заказчику только в конце работы
Сложность возврата к предшествующим фазам
Неприменима в случае изменяющихся требований
Очень высокие затраты на документирование
Модель с промежуточным |
контролем (1) |
Системный анализ |
Анализ требований |
Проектирование |
Кодирование |
Тестирование |
Эксплуатация и |
сопровождение |
Модель с промежуточным
контролем (2)
Требования фиксируются в виде технического задания на все время создания ПО.
Согласование получаемых результатов с пользователями производится только в точках, планируемых после завершения каждой стадии (возможна корректировка результатов, если они не затрагивают требования, изложенные в техническом задании).
Пользователи могут внести существенные замечания только после того, как работа над системой будет полностью завершена.
В случае неточного изложения требований или их изменения в течение длительного периода создания ПО пользователи получают систему, не удовлетворяющую их потребностям.
Макетирование
(прототипирование)
Это процесс создания модели требуемого программного продукта.
Основная цель – снять неопределенности в требованиях заказчика.
Модель может принимать одну из трех форм:
бумажный макет или макет на основе ПК (изображает или рисует человеко-машинный диалог);
работающий макет (выполняет некоторую часть требуемых функций);
существующая программа (характеристики которой затем должны быть улучшены).
Макетирование
Ожидание заказчика |
|
Построение/уточненение |
|
макета |
|
|
|
|
|
|
|
Оценка макета заказчиком
Итерации повторяются до тех пор, пока макет не выявит все требования заказчика и, тем самым, не даст возможность разработчику понять, что должно быть сделано.
Макетирование
Достоинство:
обеспечивает определение полных требований к ПО.
Недостатки:
заказчик может принять макет за продукт;
разработчик может принять макет за продукт.
Спиральная модель
автор Барри Боэм
предложена в 1988 г.
классический пример применения эволюционной стратегии конструирования
базируется на лучших свойствах классического жизненного цикла и макетирования, к которым добавляется новый элемент – анализ риска, отсутствующий в этих парадигмах.
Особенность
спиральной модели
прикладное ПО создается не сразу, как в случае каскадного подхода, а по частям с использованием метода
прототипирования
под прототипом понимается действующий программный компонент, реализующий отдельные функции и внешние интерфейсы разрабатываемого ПО
Спиральная
модель
Анализ текущей ситуации, выработка единого понимания контекста среди проектной команды
1.
Принятие решения о переходе на следующую фазу
5. Управление планирование
Контроль и управление изменениями
Анализ
3. Разработка плана
Концептуальное проектирование, физическое проектирование, прототипирование, кодирование, подготовка тестовой спецификации и т.п.
