Каскадная и спиральная модели жизненного цикла
Моделью жизненного цикла информационной системы будем называть некоторую структуру, определяющую последовательность осуществления процессов, действий и задач, выполняемых на протяжении жизненного цикла информационной системы, а также взаимосвязь между этими процессами, действиями и задачами.
Наибольшее распространение имеют каскадная и спиральная модели.Каскадная модель применяется во всех сферах человеческой деятельности, описана в нормативной, технической, экономической и методической литературе. Каскадная модель подразумевает последовательную организацию работ: вся работа разбивается на этапы: переход с этапа на этап происходит только после того, как завершены все работы предыдущего этапа. Каждый этап завершается выпуском полного комплекта документации, достаточной для того, чтобы другая команда разработчиков могла продолжить работу над новым этапом с «нуля». Вне зависимости от предметной области можно выделить ряд устойчивых этапов разработки, практически не зависящих от предметной области (рис. 3.2).
Рис. 3.2. Каскадная модель разработки
На этапе анализа производится изучение требований заказчика, исследуются проблемы и четко формулируются задачи, которые должны быть решены. Результатом этих работ является техническое задание, которое согласуется со всеми заинтересованными сторонами.
На этапе проектирования разрабатываются проектные решения, удовлетворяющие всем требованиям, сформулированным в техническом задании. Результатом этих работ является комплект проектной документации, содержащий все данные, необходимые для реализации проекта.
На этапе разработки создается программное обеспечение в соответствии с проектной документацией. Методы, используемые для реализации, принципиального значения не имеют. Результатом этих работ является готовый программный продукт.
На этапе тестирования производится проверка полученного программного обеспечения на предмет соответствия требованиям, заявленным в техническом задании. Опытная эксплуатация позволяет выявить скрытые дефекты и недоработки, проявляющиеся при реальной эксплуатации любой системы.
На этапе сдачи необходимо убедить заказчика, что его требования удовлетворены в полном объеме.
Каскадная модель имеет ряд существенных достоинств:
1. На каждом этапе имеется полный комплект документации, отвечающий критериям полноты и согласованности.
2. Работы выполняются в логической последовательности, что позволяет планировать сроки завершения.
3. Хорошо зарекомендовала себя при создании инженернотехнических и некоторого класса информационных систем (реального времени, расчетные системы).
При разработке информационных систем других типов проявляются недостатки каскадной модели:
1. Задержка получения результатов возникает из-за последовательности выполнения работ. Только на конечном этапе можно выяснить, удовлетворяет ли информационная система требованиям пользователя или нет. Искажения могут вноситься как анали- тиками-проектировщиками, так и программистами из-за незнания в совершенстве предметной области.
2. Ошибки и недоработки, возникшие на этом этапе, проявляются, как правило, на следующем, что приводит к необходимости возврата на предыдущие стадии.
3. Сложность параллельного ведения работ, даже если разработку подсистем можно вести параллельно. Это связано с необходимостью постоянного согласования различных частей проекта.
4. Информационная перенасыщенность возникает вследствие сильной зависимости между различными группами разработчиков. Внесение изменений в проект или в его часть требует оповещения всех разработчиков.
Реальный процесс разработки по каскадной модели представлен на (рис. 3.3).
Рис. 3.3. Реальный процесс разработки по каскадной модели
Спиральная модель предполагает итерационный процесс разработки информационной системы; при этом возрастает значение начальных этапов жизненного цикла, таких как анализ и проектирование.
На этих этапах проверяется и обосновывается реализуемость технических решений путем создания прототипов. Каждая итерация представляет собой законченный цикл разработки, приводящий к выпуску внутренней или внешней версии изделия, которое совершенствуется от итерации к итерации (рис. 3.4).Каждый виток спирали соответствует созданию фрагмента или версии программного продукта, переход на следующий этап можно осуществить, не дожидаясь полного завершения, т.к. недоделки можно устранить на следующей итерации. Главная задача итерации — создать готовый продукт как можно быстрее, для его демонстрации заказчику.
Итерационный подход имеет следующие преимущества:
1) упрощает внесение изменений и дополнений при изменении требований заказчика;
2) отдельные элементы интегрируются в систему постепенно практически на каждом этапе;
уменьшается риск и обеспечивается большая гибкость в управлении проектом;
процесс устранения ошибок или недочетов упрощается, т.к. выполняется непрерывно на каждом этапе (итерации).
Рис. 3.4. Спиральная модель жизненного цикла информационной системы
Существенный недостаток такой модели — невозможность точного определения момента окончания итерации. Стремление к совершенству порождает непрерывность итераций. Здесь требуется помнить, что лучшее — враг хорошего.
Итерационные модели практически не имеют смысла в технической и промышленной сферах (трудно представить плотину, здание, возведение которых производится таким образом).
Контрольные вопросы
1. Приведите классификацию информационных систем как проектов.
2. Перечислите фазы развития информационной системы.
3. Что включает концептуальная фаза развития информационной системы?
4. Что включает фаза технического предложения?
5. Что включает фаза проектирования?
6. Что включает фаза изготовления?
7. Что включает фаза ввода системы в эксплуатацию?
8. Какими стандартами регламентируется жизненный цикл информационной системы?
9. Из каких групп процессов состоит жизненный цикл информационной системы?
10. Перечислите основные процессы жизненного цикла информационной системы.
11. Какие процессы жизненного цикла информационной системы относятся к вспомогательным?
12. Дайте определение верификации и проверки.
13. Поясните каскадную модель жизненного цикла информационной системы.
14. Поясните спиральную модель жизненного цикла информационной системы.
4.