Agile Unified Process

Гибкий унифицированный процесс (AUP, англ. Agile Unified Process) - упрощенная версия унифицированного процесса Unified Process (UP), разработанная Скоттом Эмблером (англ. Scott Ambler) [1]. Данная методология разработки программного обеспечения соединяет в себе элементы гибких методологий и унифицированного процесса. В частности, AUP предполагает разработку через тестирование (TDD), применение гибкого моделирования (англ. Agile modeling) и рефакторинга баз данных, гибкое управление изменениями.

Утверждается, что в 2011 году около одного процента проектов, выполняемых по гибким методологиям, использовали процесс AUP[2]. Наследником AUP является подход дисциплинированной гибкой разработки (англ. Disciplined Agile Delivery), который разрабатывается с 2012 года.

Дисциплины AUP

править

В отличие от RUP, AUP содержит всего семь дисциплин:

  1. Моделирование. Выработка понимания прикладной области проекта, устройства бизнеса организации, а также выработка приемлемых решений прикладных проблем, которые требуется разрешить в рамках проекта.
  2. Реализация. Трансформация моделей в исполнимый код, его тестирование с использованием модульных тестов.
  3. Тестирование. Объективная оценка качества продукта. Поиск дефектов, проверка корректности спроектированной системы, а также её соответствия требованиям.
  4. Развертывание. Планирование процедуры развертывания системы, а также исполнение плана развертывания.
  5. Управление конфигурациями. Разграничение доступа к артефактам проекта. Контроль всех изменений и версий артефактов проекта.
  6. Управление проектом. Направление действий всех участников проекта. Управление рисками, руководство персоналом, координация заинтересованных лиц и внешних систем с целью поставки продукта с соблюдением временных и бюджетных ограничений.
  7. Организация среды. Обеспечение доступности для членов команды проекта всех необходимых ресурсов, инструкций, стандартов, документов, аппаратных и программных инструментов.

Философия AUP

править

Гибкий унифицированный процесс базируется на следующих принципах (Ambler, Scott The Agile Unified Process (AUP). Ambysoft. Дата обращения: 21 декабря 2015.):

  1. Члены команды сами знают свою работу. Люди не любят погружаться в изучение детальной документации. Вместо этого они предпочитают краткие инструкции и интерактивное обучение. AUP содержит короткое высокоуровневое описание процесса, ознакомления с которым достаточно для работы. Кроме того, имеется детальное описание процесса.
  2. Простота. Все аспекты процесса описываются сжато.
  3. Гибкость. AUP соответствует принципам и ценностям гибкой методологии и Agile Alliance.
  4. Фокус на высокоуровневой деятельности. Процесс описывает деятельность в рамках проекта на высоком уровне абстракции. Автор не пытается подробно описать все мелкие детали.
  5. Независимость от конкретных инструментов. AUP работает вместе с любым набором инструментов, который привычен команде.
  6. AUP может быть адаптирован для ваших личных нужд.

Типы итераций

править

Гибкий унифицированный процесс предполагает два типа итераций. Вклад итерации развития (development release iteration) осуществляется в демонстрационную часть кодовой базы, а также заключается в улучшении качества продукта. В ходе производственной итерации (production release iteration) вносится вклад в основную кодовую базу проекта. Наличие типов итераций отличает AUP от RUP.

См. также

править

Литература

править
  1. Waters, John K (2008-02-28). "Agile lands role in games and business software". The Register. Архивировано 1 октября 2009. Дата обращения: 3 августа 2009.
  2. State of Agile Development Survey Results, 2011. VersionOne. Дата обращения: 8 января 2019. Архивировано 17 июля 2015 года.

Ссылки

править