- •Жизненный цикл программного продукта
- •Немного истории
- •Стандарты и проблемы ЖЦ ПО
- •Стандарт ISO/IEC 12207
- •ISO 12207. Структура ЖЦ ПО
- •Модель ЖЦ ПО
- •Каскадная модель. Принципы
- •Каскадная модель: преимущества и недостатки
- •Каскадная модель: применимость
- •Спиральная модель: принципы
- •Схема работы спиральной модели
- •Спиральная модель. Преимущества и недостатки
- •Спиральная модель: применимость
- •Итерационная модель
- •V-образная модель
- •Инкрементная модель
- •Модель быстрого прототипирования
- •Модели жизненного цикла MSF, RUP, XP
- •Microsoft Solution Framework.
- •Rational Unified Process
- •Extreme Programming.
- •Extreme Programming.
Схема работы спиральной модели
•Разработка вариантов продукта – набор циклов раскручивающейся спирали.
•Каждый цикл – те же стадии, что и в модели каскадного процесса.
•Фазы цикла:
–определение целей, альтернативных вариантов и ограничений;
–оценка вариантов, определение и разрешение рисков;
–разработка продуктов следующего уровня;
–планирование следующей фазы.
Спиральная модель. Преимущества и недостатки
Преимущества:
•Более тщательное проектирование
•Поэтапное уточнение требований
•Участие заказчика в выполнении проекта с использованием прототипов программы.
•Планирование и управление рисками
•Возможность разработки ПО «по частям»
Недостатки – сложность:
•Анализа и оценки рисков при выборе вариантов.
•Поддержания версий продукта
•Оценки точки перехода на следующий цикл
•Бесконечность модели
Спиральная модель: применимость
•Пользователи не уверены в своих потребностях, требования слишком сложны, необходимо прототипирование для анализа и оценки требований
•Достижение успеха не гарантировано и необходима оценка рисков продолжения проекта
•Проект сложный, дорогостоящий и обоснование его финансирования возможно только в процессе его выполнения
•Применение новых технологий
•Выполнение очень больших проектов по частям
Итерационная модель
Определение
требований
Спецификация
требований
Проектирование
Реализация
Тестирование
Эксплуатация и сопровождение
V-образная модель
Требования и |
Производство, |
планирование |
эксплуатация |
Анализ требов. |
Системное |
и спецификаций |
тестирование |
Высокоуровнев. |
Сборка и |
проектирование |
тестирование |
Детальное |
Модульное |
проектирование |
тестирование |
Кодирование
Инкрементная модель
Требования и |
Анализ требований |
|
планирование |
||
Анализ требований |
||
Анализ требований |
||
Инкремент |
|
|
Проектирование |
Разработка тестов |
|
Кодирование |
|
|
Сборка |
|
|
Интеграц. тестир. |
. |
|
. |
||
|
||
|
Выходное тестиров. |
Производство,
эксплуатация
Модель быстрого прототипирования
Утверж
дение
пользо
вателе
м
|
|
|
|
|
|
|
Производная |
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
разработка |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
проекта |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
е |
п |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
р |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
о |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
о |
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
н |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
т |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
в |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
о |
|
|
|
|
|
|
|||
|
|
|
|
|
и |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
т |
|
|
|
|
|
|||
|
|
|
|
т |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
а |
|
|
|
|
|
|
|
|
|
|
|
|
и |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
п |
|
|
|
|
|||
|
|
р |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
о |
|
|
|
|||
|
е |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
р |
|
|
|||
т |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
о |
|
|||
И |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
Быстры |
|
|
|
|
|
е |
|
|
|
ва |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
н |
|
|
|
|
|
|
|
|
|
|
|
й |
|
|
|
|
|
|
|
|
|
|
и |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
анализ |
|
|
|
|
Создани |
|
|||||
Функции |
|
|
|
|
План |
|
|
|
|
|
||||||||||||
|
|
|
|
проект |
|
|
|
|
|
е базы |
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
а |
|
|
|
|
|
данных |
|
||||
|
|
|
|
|
|
|
|
Пользователь |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
ский |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
интерфейс |
|
|
|
|
|
|
|
|
|
Подгонк
а
Эксплуатация и сопровождение
Модели жизненного цикла MSF, RUP, XP
•Промышленные технологии создания программного продукта
•Состав технологии – принципы, методы, процессы и операции, CASE-средства
•Три наиболее известных моделей жизненного цикла:
–Microsoft Solution Framework (решение задач любой сложности коллективом любой численности;
–Rational Unified Process (создание CASE-средств для различных этапов жизненного цикла;
–Extreme Programming (решение относительно небольших задач, малыми коллективами при жестком лимите времени).
Microsoft Solution Framework.
Развертывание |
Схема модели |
Создание общей |
(Deploying) |
Решение |
картины |
|
развернуто |
(Envisioning) |
|
|
Подтверждение готовности проекта к выпуску
Стабилизация
(Stabilizing)
Окончательное утверждение области действия проекта
Утверждение документа общей картины
Планирование
(Panning)
Утверждение
проектных
планов
Разработка
(Developing)
Rational Unified Process
Дисциплины
(процессы)
Бизнес-моделирование Определение требований
Анализ и проектирование
Реализация
Тестирование
Развертывание
Управл. конфигурац. и изменениями Управление проектом Управление средой проекта
Ф а з ы
Начало |
Проработка |
Построение |
Передача |
Inception |
Elaboration |
Construction |
Transition |
Начальн Про 1 Про 2 Пст.1 Пст.2 Пст.3 Пе.1 Пе.2
. |
И т е р а ц и и |
|