Взаимосвязь между процессами
Процессы ЖЦ ПО, регламентируемые стандартом ISO/IEC 12207, могут использоваться различными организациями в конкретных проектах самым различным образом. Тем не менее, стандарт предлагает некоторый базовый набор взаимосвязей между процессами с различных точек зрения (или в различных аспектах), который показан на рис. 2.1. Такими аспектами являются:
· договорной аспект;
· аспект управления;
· аспект эксплуатации;
· инженерный аспект;
· аспект поддержки.
Рис. 2.1. Связи между процессами ЖЦ ПО
Модели и стадии ЖЦ ПО
Под моделью ЖЦ понимается структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении ЖЦ.
Стандарт ISO/IEC 12207 не предлагает конкретную модель ЖЦ и методы разработки ПО. Его положения являются общими для любых моделей ЖЦ, методов и технологий разработки ПО.
Модель ЖЦ представляет собой совокупность упорядоченных во времени, взаимосвязанных и объединенных в стадии работ.
В состав ЖЦ ПО обычно включаются следующие стадии:
1. Формирование требований к ПО.
2. Проектирование.
3. Реализация.
4. Тестирование.
5. Ввод в действие.
6. Эксплуатация и сопровождение.
7. 7 Снятие с эксплуатации.
На каждой стадии могут выполняться несколько процессов, определенных в стандарте ISO/IEC 12207, и, наоборот, один и тот же процесс может выполняться на различных стадиях.
К настоящему времени наибольшее распространение получили каскадная (1970 - 1985 гг.) и спиральная (1986 - 1990 гг.) модель ЖЦ ПО.
Принципиальной особенностью каскадной модели ЖЦ (рис. 2.2) является то что переход на следующую стадию осуществляется только после того как будет полностью завершена работа на текущей стадии, и возвратов на пройденные стадии не предусматривается. Каждая стадия закан-чив1ется погнием некоторых результатов, которые служат в качестве игхмных данных для следующей стадии.
Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Рис. 2.2. Каскадная схема разработки ПО
Преимущества применения каскадного способа заключаются в следующем:
· на каждой стадии формируется законченный набор проектной документации;
· удобно планировать сроки завершения всех работ и соответствующие затраты.
Каскадный подход хорошо зарекомендовал себя при построении ИС, для которых в самом начале разработки можно достаточно точно и полно сформулировать все требования.
Недостатком каскадной схемы является то, что реальный процесс создания ПО никогда полностью не укладывался в такую жесткую схему. Данный процесс, как правило, носит итерационный характер, т.е. результаты очередной стадии часто вызывают изменения в проектных решениях, выработанных на более ранних стадиях. В результате реальный процесс создания ПО принимает иной вид (рис. 2.3). Это приводит к запаздыванию получения результатов. В результате риск создания системы, не удовлетворяющей изменившимся потребностям пользователей, повышается.
Обычно на начальной стадии проекта полностью и точно сформулировать все требования к будущей системе не удается. Это объясняется двумя причинами:
· пользователи не в состоянии сразу изложить все свои требования и не могут предвидеть, как они изменятся в ходе разработки;
· за время разработки могут произойти изменения во внешней среде, которые повлияют на требования к системе.
Рис. 2.3. Реальный процесс разработки ПО
Для преодоления перечисленных проблем в середине 80-х гг. была предложена спиральная модель ЖЦ (рис. 2.4). Ее принципиальной особенностью является то, что ПО создается не сразу, как в случае каскадного подхода, а по частям, с использованием метода прототипирования. Под прототипом понимается действующий программный компонент, реализующий отдельные функции и внешние интерфейсы разрабатываемого ПО. Создание прототипов осуществляется в несколько итераций, или витков спирали. Каждая итерация соответствует созданию версии ПО, на ней уточняются цели и характеристики проекта, оценивается качество полученных результатов, и планируются работы следующей итерации.
Спиральная модель избавляет пользователей и разработчиков ПО от необходимости полного и точного формулирования требований к системе на начальной стадии, поскольку они уточняются на каждой итерации.
Спиральная модель не исключает использования каскадного подхода на завершающих стадиях проекта в тех случаях, когда требования к системе оказываются полностью определенными
Основная проблема спирального цикла - определение момента перехода на следующую стадию.
Рис. 2.4. Спиральная модель ЖЦ ПО
Вопросы
1. Понятие ЖЦ.
2. Группы процессов ЖЦ ПО согласно стандарту ISO/IEC 12207:1995.
3. Состав группы основных процессов ЖЦ ПО согласно стандарту ISO/IEC 12207:1995.
4. Состав группы вспомогательных процессов ЖЦ ПО согласно стандарту ISO/IEC 12207:1995.
5. Состав группы организационных процессов ЖЦ ПО согласно стандарту ISO/IEC 12207:1995.
6. Взаимосвязи между процессами ЖЦ.
7. Понятие модели ЖЦ.
8. Стадии ЖЦ.
9. Понятие каскадной модели ЖЦ.
10. Преимущества и недостатки каскадной модели ЖЦ.
11. Понятие спиральной модели ЖЦ.
12. Понятие прототипа.
13. Преимущества и недостатки спиральной модели ЖЦ.