ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.11.2023
Просмотров: 54
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
1.2.Жизненный цикл программных средств
Базовым стандартом в области жизненного цикла программных средств и
| | | | | | | | | ||||||||||||
систем | является | международный стандартISO/IEC | 12207: | 1995 [1]. В | ||||||||||||||||
Республике Беларусь действует аутентичный стандартСТБ ИСО/МЭК 12207- | ||||||||||||||||||||
2003 – | Информационная | технология – Процессы | жизненного | цикла | ||||||||||||||||
программных средств [8]. | | стандартомСТБ | ИСО/МЭК 12207-2003 | | ||||||||||||||||
В | соответствии | со | под | |||||||||||||||||
жизненным | циклом (ЖЦ) | программного | средства | или | системы |
подразумевается совокупность процессов, работ и задач, включающая в себя разработку, эксплуатацию и сопровождение ПС или системы, охватывающая их жизнь от формулирования концепции до прекращения использования.
В соответствии с данным стандартом жизненный цикл программных средств состоит из процессов. Каждый процесс ЖЦ разделен на наборработ. Каждая работа разделена на набор задач.
Процессы ЖЦ ПС делятся на следующие группы:
·основные;
·вспомогательные;
·организационные.
Косновным процессам ЖЦ
относятся следующие процессы:
·заказ;
·поставка;
·разработка;
·эксплуатация;
·сопровождение.
Процесс разработки состоит из работ и , выполняемыхзадач разработчиком, и включает работы по анализу требований, проектированию, программированию, сборке, тестированию, вводу в действие и приемке ПС. Процесс разработки содержит тринадцать работ:
1)подготовка процесса разработки;
2)анализ требований к системе;
3)проектирование системной архитектуры;
4)анализ требований к программным средствам;
5)проектирование программной архитектуры;
6)техническое проектирование программных средств;
7)программирование и тестирование программных средств;
8)сборка программных средств;
7
9)квалификационные испытания программных средств;
10)сборка системы;
11)квалификационные испытания системы;
12)ввод в действие программных средств;
13)обеспечение приемки программных средств.
В процессе разработки программного средства различаютдва вида работ: системные и программные. Системные работы начинают и завершают процесс разработки. К данным работам относятся следующие:
2)анализ требований к системе;
3)проектирование системной архитектуры;
10)сборка системы;
11)квалификационные испытания системы.
| | | | | | | | | | | ||||||||
В | работе 2 разрабатываются системные | требования. В | работе 3 | |||||||||||||||
выполняется разработка архитектурного(эскизного) | проекта | системы, | в | |||||||||||||||
котором | осуществляется | разделение | системы | на | технические | , средства | ||||||||||||
программные средства и ручные операции. | | | | | | | | |||||||||||
Работы процесса разработки с4 (анализ требований к программным | ||||||||||||||||||
средствам) по 9 (квалификационные | испытания | программных | средств) | |||||||||||||||
представляют | собой программные | работы. | Они | | выполняются | | над |
выделенными из системы программными средствами.
После разработки ПС в работе10 их интегрируют с техническими средствами системы и ручными операциями. Системные работы завершаются квалификационными испытаниями системы (работа 11).
Таким образом, системные работы являются расширением набора программных работ.
Квспомогательным процессам ЖЦ относятся следующие процессы:
·документирование;
·управление конфигурацией;
·обеспечение качества;
·верификация;
·аттестация;
·совместный анализ;
·аудит;
·решение проблем.
Вспомогательные процессы входят в состав других процессов обеспечивают успешную реализацию и качество выполнения программного проекта.
Корганизационным процессам ЖЦ относятся следующие процессы:
·управление;
·создание инфраструктуры;
·усовершенствование;
·обучение.
Организационные процессы применяются в организации для создания
8
структуры, охватывающей процессы ЖЦ и соответствующий персонал.
С понятием жизненного цикла программного средства или системы тесно связано понятие модели жизненного цикла.
Модель жизненного цикла – это совокупность процессов, работ и задач ЖЦ, отражающая их взаимосвязь и последовательность выполнения.
Очевидно, что существует взаимная связь между моделью жизненного цикла, выбранной при реализации процесса разработки ПС, и используемыми технологиями разработки ПС.
ЖИЗНЕННЫЙ ЦИКЛ ПРОГРАММНЫХ СРЕДСТВ 2 • Информационная система (ИС) – основной компонент автоматизированных систем управления. • Проектирование информационных систем (ИС) – процесс создания и сопровождения систем в виде жизненного цикла (ЖЦ) информационной системы. • Жизненный цикл ИС – некоторая последовательность стадий и выполняемых на них процессов. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 3 Для каждого этапа ЖЦ определяются: • состав и последовательность выполняемых работ, • получаемые результаты, • методы и средства, необходимые для выполнения работ, • роли и ответственность участников и т.д. • Такое формальное описание ЖЦ ИС позволяет спланировать и организовать процесс коллективной разработки и обеспечить управление этим процессом. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 4 • Жизненный цикл ИС можно представить как ряд событий, происходящих с системой в процессе ее создания и использования. • Модель жизненного цикла отражает различные состояния системы, начиная с момента возникновения необходимости в данной ИС и заканчивая моментом ее полного выхода из употребления. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 5 • Модель жизненного цикла – структура, содержащая процессы, действия и задачи, которые осуществляются в ходе • разработки, • функционирования, • сопровождения программного продукта в течение всей жизни системы, от определения требований до завершения ее использования. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 6 В настоящее время известны и используются три модели жизненного цикла: • каскадная модель; • поэтапная модель с промежуточным контролем; • спиральная модель. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 7 Каскадная модель (рис. 1) – предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. • Переход на следующий этап означает полное завершение работ на предыдущем этапе. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 8 Рис. 1. Каскадная модель ЖЦ ИС 8. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ Разработка требований Проектирование Реализация Тестирование Ввод в действие 9 • Поэтапная модель с промежуточным контролем (рис.2) – разработка ИС ведется итерациями с циклами обратной связи между этапами. • Межэтапные корректировки позволяют учитывать реально существующее взаимовлияние результатов разработки на различных этапах. • Время жизни каждого из этапов растягивается на весь период разработки. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 10 • Рис. 2. Поэтапная модель с промежуточным контролем ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ Разработка требований Проектирование Реализация Тестирование Ввод в действие 11 • Спиральная модель (рис. 3) – на каждом витке спирали: • выполняется создание очередной версии продукта, • уточняются требования проекта, • определяется его качество, • планируются работы следующего витка. • Особое внимание уделяется начальным этапам разработки – анализу и проектированию, где реализуемость тех или иных технических решений проверяется и обосновывается посредством создания прототипов (макетирования). ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 12 • Рис. 3. Спиральная модель ЖЦ ИС ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ Проектирование Тестирование Реализация Версия 1 Версия 2 Версия 3 Разработка требований Ввод в действие прототипов системы 13 • На практике наибольшее распространение получили две основные модели жизненного цикла: • - каскадная модель (характерна для периода 1970-1985 гг.); • - спиральная модель (характерна для периода после 1986 г.). ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 14 В ранних проектах достаточно простых ИС
каждое приложение представляло собой единый, функционально и информационно независимый блок. • Для разработки такого типа приложений эффективным оказался каскадный способ. • Каждый этап завершался после полного выполнения и документального оформления всех предусмотренных работ. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 15 Преимущества применения каскадного подхода: • - на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности; • - выполняемые в логической последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты. • Каскадный подход хорошо зарекомендовал себя при построении относительно простых ИС, когда в самом начале разработки можно достаточно точно и полно сформулировать все требования к системе. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 16 • Основной недостаток каскадного подхода – реальный процесс создания системы никогда полностью не укладывается в такую жесткую схему, постоянно возникает потребность в возврате к предыдущим этапам и уточнении или пересмотре ранее принятых решений. • В результате реальный процесс создания ИС оказывается соответствующим поэтапной модели с промежуточным контролем. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 17 • Однако и эта схема (поэтапная модель с промежуточным контролем) не позволяет оперативно учитывать возникающие изменения и уточнения требований к системе. • Согласование результатов разработки с пользователями производится только в точках, планируемых после завершения каждого этапа работ, а общие требования к ИС зафиксированы в виде технического задания на все время ее создания. • Таким образом, пользователи получают систему, не удовлетворяющую их реальным потребностям. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 18 • Каскадная модель предполагает разработку законченных продуктов на каждом этапе: • технического задания, • технического проекта, • программного продукта • пользовательской документации. Разработанная документация позволяет не только определить требования к продукту следующего этапа, но и определить обязанности сторон, объем работ и сроки, при этом окончательная оценка сроков и стоимости проекта производится на начальных этапах, после завершения обследования. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 19 • Если требования к ИС меняются в ходе реализации проекта, а качество документов оказывается невысоким (требования неполны и/или противоречивы), то в действительности использование каскадной модели создает лишь иллюзию
определенности и на деле увеличивает риски, уменьшая лишь ответственность участников проекта. • При формальном подходе менеджер проекта реализует только те требования, которые содержатся в спецификации, опирается на документ, а не на реальные потребности пользователя. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 20 • Спиральная модель ЖЦ была предложена для преодоления перечисленных проблем. • На этапах анализа и проектирования реализуемость технических решений и степень удовлетворения потребностей заказчика проверяется путем создания прототипов. • Каждый виток спирали соответствует созданию работоспособного фрагмента или версии системы. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 21 На каждом витке спирали: • уточняются требования, цели и характеристики проекта, • определяется качество разработки, • планируются работы следующего витка спирали. • Таким образом, углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который удовлетворяет действительным требованиям заказчика и доводится до реализации. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 22 • Итеративная разработка объективно отражает существующий спиральный цикл создания сложных систем. • Она позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем этапе. • Кроме того, решается главная задача – как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 23 • Основная проблема спирального цикла – определение момента перехода на следующий этап. • Для решения этой проблемы – вводятся временные ограничения на каждый из этапов жизненного цикла, и переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. • Планирование производится на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 24 • В некоторых областях спиральная модель не может применяться, т.к. невозможно использование/тестирование продукта, обладающего неполной функциональностью (например, военные разработки, атомная энергетика и т.д.). • Поэтапное итерационное внедрение информационной системы для бизнеса возможно, но сопряжено с организационными сложностями (перенос данных, интеграция систем, изменение бизнес-процессов, учетной политики, обучение пользователей). ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 25 • Трудозатраты при поэтапном итерационном внедрении оказываются значительно выше, а управление проектом требует настоящего искусства. • Предвидя указанные сложности, заказчики выбирают каскадную модель, чтобы "внедрять систему один раз". ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 26 • Каждая из стадий создания системы предусматривает выполнение определенного объема работ, которые представляются в виде процессов ЖЦ. • Процесс – совокупность взаимосвязанных действий, преобразующих входные данные в выходные. • Описание каждого процесса включает в себя перечень - решаемых задач, - исходных данных, - результатов. ЖИЗНЕННЫЙ ЦИКЛ ИНФОРМАЦИОННЫХ СИСТЕМ 27 •