Путеводитель: Обзор OpenUP/Basic
Приведен обзор OpenUP/Basic, его назначение и используемый жизненный цикл.
Основное описание

Введение

OpenUP/Basic предназначен для небольших команд, не распределенных географически. Необходимо, чтобы участники команды имели достаточную возможность ежедневного общения лицом к лицу. К участникам команды относятся заинтересованные лица, разработчики, архитекторы, руководитель проекта и тестеры. Участники команды должны активно общаться между собой, при этом принимая собственные решения относительно того, что и в какой очередности должно быть сделано, и как наилучшим образом удовлетворить потребности заинтересованных лиц. Организация должна предоставлять команде возможность реализовать эти обязательства.

Участники команды интенсивно взаимодействуют друг с другом. Для успешного применения OpenUP/Basic совершенно необходимо, чтобы заинтересованные лица были участниками команды. 

Для обсуждения текущих результатов и состояния дел команда проводит ежедневное "собрание стоя" с участием всех членов. Проблемы на ежедневном собрании не обсуждаются.

OpenUP/Basic сосредоточен на существенном уменьшении риска на ранних стадиях жизненного цикла проекта. Для этого требуется регулярно проводить собрания по пересмотру рисков и строго следовать выбранным стратегиям устранения рисков.

Вся работа записывается, назначается и отслеживается с помощью Списка работ (Work Item List). Участники команды используют этот единый репозиторий для всех задач, которые необходимо записать и отслеживать, включая все запросы на изменения, дефекты и требования заинтересованных лиц.

Для определения и описания требований используются сценарии использования (use cases). Участники команды должны выработать навыки создания хороших сценариев использования. Заинтересованные лица отвечают за инспектирование и подтверждение корректности требований. Сценарии использования разрабатываются совместно.

Наиболее архитектурно значимые требования должны быть идентифицированы и стабилизированы в фазе Проработки (Elaboration), с тем чтобы стало возможным создание надежной архитектуры как ядра системы. Изменение архитектурно значимых требований могут появиться и на более поздних стадиях разработки, но риск этого существенно снижается в фазе Проработки (Elaboration). 

Тестирование выполняется....

OpenUP/Basic не содержит требований к развертыванию, управлению изменениями и к среде разработки (т.е. в OpenUP/Basic отсутствуют, например, описания процедур изменения процесса или установки среды разработки). OpenUP/Basic сфокусирован на команде разработки, и эти вопросы обычно решаются на уровне всей организации. Более широкие области могут охватываться соответствующими расширениями OpenUP.

OpenUP/Basic - это минимальный, полный и расширяемый итеративный процесс разработки программного обеспечения, управляемый четырьмя основными принципами:

  • Нахождение компромисса с целью максимального удовлетворения заинтересованных лиц.
  • Постоянное общение с целью сохранения общности интересов и понимания
  • Постоянное развитие в процессе получения обратной связи и проведения улучшений
  • Концентрация на четко сформулированной архитектуре

Роли выполняют задачи, которые на входе и на выходе имеют артефакты. OpenUP/Basic содержит описания минимального набора ролей, задач и артефактов, участвующих в разработке программного обеспечения:

Цикл разработки программного обеспечения

OpenUP/Basic - это итеративный процесс, распределенный по четырем фазам: Инициация (Inception), Проработка (Elaboration), Конструирование (Construction) и Передача (Transition). Каждая фаза состоит из одной или нескольких итераций, во время которых разрабатываются и выпускаются стабильные работающие версии ПО. Конец каждой итерации представляет собой промежуточную  контрольную точку проекта и означает продвижение к основной контрольной точке, когда достигаются цели фазы в целом.

На следующей диаграмме показан жизненный цикл в соответствии с  OpenUP/Basic.

Figure 1: Diagram of the OpenUP/Basic Lifecycle

Рисунок 1: Жизненный цикл OpenUP/Basic

С чего начать?

Один из принципов OpenUP, "Постоянное развитие в процессе получения обратной связи и проведения улучшений", предполагает использование итеративного и инкрементного подхода.

  • Начните с основных принципов и изучите основные положения OpenUP.
  • Затем оцените ваш существующий процесс и выделите одну или две области, которые вы хотите улучшить.
  • Начните использовать OpenUP/Basic для улучшения выбранных областей.
  • В последующих итерациях или циклах разработки вводите инкрементные улучшения в других областях.
  • Если у вас не хватает опыта в использовании унифицированных процессов или других итеративных процессов, используйте OpenUP/Basic на небольшом пилотном проекте, возможно всего с тремя-четырьмя участниками, работающими в течение двух или трех месяцев.

OpenUP/Basic готов к использованию "как есть", но для большего соответствия вашим потребностям вы можете расширить его или изменить шаблоны рабочих продуктов. Например:

  • Можно потребовать большей или меньшей точности описания в ваших рабочих продуктах.
  • В вашей организации могут использоваться специфические методики управления конфигурацией или соглашения о безопасности, которые нужно включить в процесс разработки.
  • Вы просто хотите поместить в заголовок логотип вашей организации.
  • Вы хотите учесть в  OpenUP/Basic знания и опыт, полученные из ретроспективного анализа.

Для расширения и настройки OpenUP/Basic используйте программу EPF Composer. Дополнительную информацию о EPF composer можно найти на сайте www.eclipse.org/epf.

link to inception phase concept link to elaboration phase concept link to construction phase concept link to transition phase concept link to inception phase iteration delivery process link to inception phase iteration delivery process link to construction phase iteration delivery process link to transition phase iteration delivery process