
Модели жизненного цикла программ, модели процесса разработки программных продуктов
Жизненный цикл ПО - период времени, который начинается с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации.
Процессы ЖЦ ПО (стандарт ISO): разработка, эксплуатация, сопровождение, поставка, приобретение. Вспомогательные процессы цикла: документирование, управление конфигурацией, обеспечение качества, верификация и аттестация, совместная оценка, аудит, разрешение проблем. Организационные процессы ЖЦ: инфраструктура, управление и усовершенствование, обучение.
Модель жизненного цикла - структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении ЖЦ. Модель ЖЦ зависит от специфики, масштаба и сложности проекта и специфики условий, в которых система создается и функционирует.
Модель ЖЦ ПО включает: 1. Стадии 2. Результаты выполнения работ на каждой стадии
3. Ключевые события - точки завершения работ и принятия решений.
К
аскадная
модель ЖЦ ПО: анализ > проектирование
> кодирование > интеграция > внедрение
> эксплуатация и сопровождение.
Принцип каскадного подхода: переход на след. стадию осуществляется таким образом после того, как б/т полностью завершена работа на текущ. стадии, и возвратов на пройденные стадии не предусматривается.
Преимущества:1.на каждой стадии формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;2.выполняемые в логичной последовательности стадии работ облегчают планирование сроков завершения всех работ и соотв-щих затрат;
Недостатки каскадного подхода:
1.позднее обнаружение проблем;
2.выход из календарного графика, запаздывание с получением результатов;
3.высокий риск создания системы.
С
пиральная
модель ЖЦ ПО:
Основные особенности спиральной модели:
1. идентификация и анализ риска на каждой итерации;
2. назначение приоритетов пользовательским требованиям;
3. оценка результатов по завершении каждой итерации и планирование следующей итерации;
4. завершение проекта при нецелесообразности его продолжения.
Достоинства:
1. ускорение разработки;
2. участие заказчика в процессе разработки;
3. снижение риска.
Проблемы:
1. планирование (определение количества и длительности итераций);
2. управление процессом разработки;3.напряженный режим работы.
Технол-я Microsoft Solutions Framework (MSF):
Особенности:
н
ачальная
разработка концепции, выбор возможностей
и определение их приоритетов на основе
запросов польз-лей пошаговое наращивание
функциональных возможностей продукта
много небольших команд разработчиков
(3 - 8 человек), параллельно работающих
над продуктом частая синхронизация
изменений полная сборка очередного
релиза к концу дня с помощью средств
управления конфигурацией
немедленная фиксация дефектов в каждом релизе и их устранение непрерывное тестирование в процессе разработки всестороннее внутреннее и внешнее тестирование (бета-тестирование)3 или 4 контрольные точки стабилизации продукта в течение цикла разработки
Рез-тат – создание продукта для массового рынка с последующим совершенствованием и поставкой новых версий
R
ational
подход:
1. Начальная стадия (Inception)
2. Уточнение (Elaboration)
3. Конструирование (Construction)
4. Ввод в действие (Transition)
Спиральная модель
При использовании этой модели ПО создается в несколько итераций (витков спирали) методом прототипирования.
Прототип — действующий компонент ПО, реализующий отдельные функции и внешние интерфейсы. Каждая итерация соответствует созданию фрагмента или версии ПО, на ней уточняются цели и характеристики проекта, оценивается качество полученных результатов и планируются работы следующей итерации.
На каждой итерации оцениваются:
риск превышения сроков и стоимости проекта;
необходимость выполнения еще одной итерации;
степень полноты и точности понимания требований к системе;
целесообразность прекращения проекта.
Один из примеров реализации спиральной модели — RAD (англ. Rapid Application Development, метод быстрой разработки приложений).
Стадия - часть процесса создания ПО, установленная нормативными документами, ограниченная определенными временными рамками и заканчивающаяся выпуском конкретного продукта (моделей ПО, программных компонентов, документации), определяемого заданными для данной стадии требованиями
Процесс создания ПО - совокупность упорядоченных во времени, взаимосвязанных и объединенных в стадии работ, выполнение которых необходимо и достаточно для создания ПО, соответствующего заданным требованиям