
- •2.1. Понятие жизненного цикла и модели жизненного цикла
- •2.2. Каскадная модель жц
- •2.3. Поэтапная модель с промежуточным контролем
- •2.4. Спиральная модель жц
- •2.5. Процессы жц по
- •2.6. Rapid Application Development (rad)
- •2.7. Extreme Programming (xp)
- •2.8. Rational Unified Process (rup)
- •Структура жизненного цикла проекта
- •2.9. Microsoft Solution Framework (msf)
- •Модель процесса
- •Создание общей картины приложения
- •Планирование
- •Разработка
- •Стабилизация
- •Развертывание
- •2.10. Custom Development Method (методика Oracle)
- •Классический подход
Планирование
На этапе планирования команда решает, что нужно разработать, и формирует планы реализации продукта. Готовится функциональная спецификация, создается проект решения, детализируются планы работы, выполняется оценка стоимости и сроков получения результатов.
На этом этапе проводится анализ требований, которые делятся на бизнес-требования, пользовательские, функциональные и системные требования. После сбора и анализа требований команды разрабатывается проект решения, определяются профили пользователей, после чего формируются сценарии применения решения, выполняемые пользователями одного типа, а затем определяются варианты использования системы.
Этап состоит из трех стадий: концептуальное, логическое и физическое проектирование. На стадии концептуального проектирования задача рассматривается с точки зрения пользовательских и бизнес-требований и заканчивается определением набора сценариев использования системы. При логическом проектировании задача рассматривается с точки зрения проектной команды, решение представляется в виде набора сервисов. И уже на стадии физического проектирования задача рассматривается с точки зрения программистов, уточняются используемые технологии и программные интерфейсы.
В ходе данного этапа решаются такие задачи: разработка проекта и архитектуры решения; создание функциональной спецификации; разработка планов проекта; разработка календарного графика; создание среды разработки, тестирования и пилотной эксплуатации; закрытие этапа.
Контрольные точки этапа планирования связаны с достижением следующих результатов: функциональная спецификация; план управления рисками; определение среды разработки и тестирования; генеральный план и календарный график проекта. Результаты данного этапа служат для принятия компромиссных решений в дальнейшем.
Разработка
На этапе разработки создается решение, в том числе пишется и документируется код. В начале этого этапа команда проверяет выполнение всех задач, характерных для предыдущих этапов, а затем приступает к решению следующих задач: создание прототипа приложения; разработка программных компонентов приложения; создание решения (последовательность ежедневных или более частых сборок приложения); закрытие разработки (реализация всех функций, поставка кода и документации). Результаты этапа предполагают следующие элементы: исходный текст кода и исполняемые файлы; сценарии установки и конфигурации для развертывания; окончательная функциональная спецификация; элементы поддержки решения; спецификации и сценарии тестирования.
Основная контрольная точка этапа - "Окончательное утверждение области действия проекта". В этот момент все функции продукта готовы и прошли тестирование в рамках своего модуля. После этого продукт готов к внешнему тестированию и стабилизации. Кроме того, заказчики, пользователи, сотрудники службы поддержки и сопровождения, а также ключевые участники проекта могут предварительно оценить продукт и указать все недостатки, которые нужно устранить до его поставки.
Стабилизация
Данный этап - подготовка к выпуску окончательной версии продукта, доводка его до заданного уровня качества. Здесь выполняется комплекс работ по тестированию (обнаружение и устранение дефектов), а также проверяется сценарий развертывания продукта и проводится пилотная эксплуатация.
Тестирование подразумевает следующие основные виды работ: тестирование компонентов; тестирование баз данных; тестирование инфраструктуры; тестирование защиты; тестирование интеграции; анализ удобства работы с продуктом; нагрузочное тестирование (включая анализ ресурсоемкости и производительности); регрессивное тестирование; ведение отчетности по тестированию.
Когда решение становится достаточно устойчивым, проводится его пилотная эксплуатация в тестовой среде с привлечением пользователей и применением реальных сценариев работы.
Один из главных показателей этапа стабилизации - число обнаруженных ошибок. Сходимость этой величины в сторону устойчивого уменьшения - признак того, что близится завершение работ над продуктом. Важнейшая промежуточная контрольная точка - появление версии, в которой усилиями самой проектной команды не обнаружено ни одной ошибки. Далее следуют выпуски кандидат-релизов продукта для их исследования в условиях пилотной эксплуатации. Завершающая контрольная точка - подтверждение готовности продукта к выпуску и полноценному развертыванию в промышленной среде.