Лекция 4 Жизненный цикл программного обеспечения информационных систем УЧЕБНЫЕ ВОПРОСЫ: УЧЕБНЫЕ ВОПРОСЫ: 1. информационных систем 1. Модели жизненного цикла информационных систем 2. Стандарты, регламентирующие жизненный цикл информационных систем 1 1
2 2 Жизненный цикл ИС можно представить как ряд событий, происходящих с системой в процессе ее создания и использования. Модель жизненного цикла отражает различные состояния системы, начиная с момента возникновения необходимости в данной ИС и заканчивая моментом ее полного выхода из употребления. Модель жизненного цикла - структура, содержащая процессы, действия и задачи, которые осуществляются в ходе разработки, функционирования и сопровождения программного продукта в течение всей жизни системы, от определения требований до завершения ее использования. В-1 информационных систем В-1 Модели жизненного цикла информационных систем
3 3 Модели жизненного цикла: Каскадная модель предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Поэтапная модель с промежуточным контролем. Разработка ИС ведется итерациями с циклами обратной связи между этапами. Межэтапные корректировки позволяют учитывать реально существующее взаимовлияние результатов разработки на различных этапах; время жизни каждого из этапов растягивается на весь период разработки. Спиральная модель На каждом витке спирали выполняется создание очередной версии продукта, уточняются требования проекта, определяется его качество и планируются работы следующего витка. Особое внимание уделяется начальным этапам разработки - анализу и проектированию, где реализуемость тех или иных технических решений проверяется и обосновывается посредством создания прототипов (макетирования).
Каскадная модель жизненного цикла 4 4
Поэтапная модель с промежуточным контролем 5 5
Спиральная модель жизненного цикла 6 6
7 7 На практике наибольшее распространение получили две основные модели жизненного цикла: каскадная модель (характерна для периода гг.); спиральная модель (характерна для периода после 1986.г.).
8 8 Основные причины, по которым каскадная модель сохраняет свою популярность, следующие: Привычка - многие ИТ-специалисты получали образование в то время, когда изучалась только каскадная модель, поэтому она используется ими и в наши дни. Иллюзия снижения рисков участников проекта (заказчика и исполнителя).Каскадная модель предполагает разработку законченных продуктов на каждом этапе: технического задания, технического проекта, программного продукта и пользовательской документации. Разработанная документация позволяет не только определить требования к продукту следующего этапа, но и определить обязанности сторон, объем работ и сроки, при этом окончательная оценка сроков и стоимости проекта производится на начальных этапах, после завершения обследования. Проблемы внедрения при использовании итерационной модели. В некоторых областях спиральная модель не может применяться, поскольку невозможно использование/тестирование продукта, обладающего неполной функциональностью (например, военные разработки, атомная энергетика и т.д.).
ГОСТ распространяется на автоматизированные системы и устанавливает стадии и этапы их создания. Кроме того, в стандарте содержится описание содержания работ на каждом этапе. Стадии и этапы работы, закрепленные в стандарте, в большей степени соответствуют каскадной модели жизненного цикла. ISO/IEC 12207: стандарт на процессы и организацию жизненного цикла. Распространяется на все виды заказного ПО. Стандарт не содержит описания фаз, стадий и этапов. Custom Development Method (методика Oracle) по разработке прикладных информационных систем - технологический материал, детализированный до уровня заготовок проектных документов, рассчитанных на использование в проектах с применением Oracle. Применяется CDM для классической модели ЖЦ (предусмотрены все работы/задачи и этапы), а также для технологий "быстрой разработки" (Fast Track) или "облегченного подхода", рекомендуемых в случае малых проектов. 9 9 В-2 Стандарты, регламентирующие жизненный цикл информационных систем
Rational Unified Process (RUP) предлагает итеративную модель разработки, включающую четыре фазы: начало, исследование, построение и внедрение. Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей на базе UML. Microsoft Solution Framework (MSF) сходна с RUP, так же включает четыре фазы: анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектно-ориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес- приложений. Extreme Programming (XP). Экстремальное программирование (самая новая среди рассматриваемых методологий) сформировалось в 1996 году. В основе методологии командная работа, эффективная коммуникация между заказчиком и исполнителем в течение всего проекта по разработке ИС, а разработка ведется с использованием последовательно дорабатываемых прототипов. 10
В соответствии с базовым международным стандартом ISO/IEC все процессы ЖЦ ПО делятся на три группы: Основные процессы: – приобретение; – поставка; – разработка; – эксплуатация; – сопровождение. 11
Вспомогательные процессы: – документирование; – управление конфигурацией; – обеспечение качества; – разрешение проблем; – аудит; – аттестация; – совместная оценка; – верификация. 12
Организационные процессы: – создание инфраструктуры; – управление; – обучение; – усовершенствование. 13
14 Договорные процессы: приобретение (внутренние решения или решения внешнего поставщика); поставка (внутренние решения или решения внешнего поставщика). Процессы предприятия: управление окружающей средой предприятия; инвестиционное управление; управление ЖЦ ИС; управление ресурсами; управление качеством. Проектные процессы: планирование проекта; оценка проекта; контроль проекта; управление рисками; управление конфигурацией; управление информационными потоками; принятие решений. Согласно стандарту ISO/IEC серии в структуру ЖЦ включают следующие группы процессов:
Технические процессы: – определение требований; – анализ требований; – разработка архитектуры; – внедрение; – интеграция; – верификация; – переход; – аттестация; – эксплуатация; – сопровождение; – утилизация. Специальные процессы: – определение и установка взаимосвязей исходя из задач и целей. 15
Стадии создания системы, предусмотренные в стандарте ISO/IEC