DSDM

Метод разработки динамических систем (Dynamic Systems Development Method, DSDM) - это главным образом методика разработки программного обеспечения, основанная на концепции быстрой разработки приложений (Rapid Application Development, RAD). В 2007 году DSDM стал основным подходом к управлению проектом и разработки приложений. DSDM - это итеративный и инкрементный подход, который придаёт особое значение продолжительному участию в процессе пользователя/потребителя.

Цель метода - сдать готовый проект вовремя и уложится в бюджет, но в то же время регулируя изменения требований к проекту во время его разработки. DSDM входит в семейство гибкой методологии разработки программного обеспечения, а также разработок не входящих в сферу инормационных технологий.

Самая последняя версия DSDM называется DSDM Atern. Название Atern - это сокращение от Arctic Tern (пер. Полярная крачка). Полярная крачка - птица, которая может путешествовать на большие расстояния. Она символизирует множество аспектов метода, например определение приоритета или кооперирование, которые являются естественным способом ведения рабочего процесса.

Предыдущая версия DSDM (выпущенная в мае 2003 года), которая всё ещё действует и широко используется, - это DSDM 4.2, являющаяся немного расширенной версией DSDM 4. Расширенная версия содержит руководство по тому, как использовать DSDM совместно с Экстремальным программированием (Extreme Programming).

DSDM Atern

В 2007 году команда, созданная Консорциумом DSDM, исследовала суть метода и решила, что основные механизмы и структура написаны хорошо, но терминология и внимание метода были полностью сфокусированы на области информационных технологий. Поэтому они должны быть усовершенствованы, чтобы отвечать нуждам проектов в новом тысячелетии (часть метода была неизменна с 1995 года). Новая версия была выпущена 24 апреля 2007 года в Cafe Royale в Лондоне.

DSDM версии 4.2

Как расширение концепции быстрой разработки приложений, DSDM фокусируется на проектах информационных систем, характеризующихся сжатыми сроками и бюджетами.В DSDM присутствуют указания на типичные ошибки проектов информационных систем, таких как превышение бюджета, опаздование со сроками сдачи (исполнения), недостаточное вовлечение пользователей и топ-менеджеров в работу над проектом. DSDM состоит из:

  • трёх стадий: предпроектная, стадия жизненного цикла проекта и постпроектная стадия
  • стадия жизни проекта состоит из 5 этапов: исследование реализуемости, исследование экономической целесообразности, создание функциональной модели, проектирование и разработка, этап реализации

При некоторых условиях существует возможность включения в DSDM частей других методик, таких как Rational Unified Process (RUP), Экстремальное программирование, PRINCE2. Другой гибкий метод похожий на DSDM по процессу и концепции - Scrum.

Метод DSDM был разработан в Великобритании в 1990-х Консорциумом DSDM. Консорциум DSDM - это ассоциация разработчиков и экспертов в области программного обеспечения, созданная с целью "совместной разработки и продвижения независимого фреймворка RAD" комбинированием лучшего практического опыта участников ассоциации. Консорциумом DSDM - это некоммерческая организация независимых разработчиков, которые владеют и управляют фреймворком DSDM. Первая версия фреймворка была завершена в январе 1995 года и опубликована в феврале 1995 года. В июле 2006 года была представлена открытая версия DSDM 4.2, которая стала доступна частным лицам для просмотра и использования. Тем не менее, все, кто распространяет DSDM должны быть членами этого некоммерческого консорциума.

DSDM и Консорциум DSDM - ранние дни

В начале 1990-х в индустрии информационных технологий стал распространятся новый термин - быстрая разработка приложений (Rapid Application Development, RAD). Пользовательские интерфейсы прикладных программ эволюционировали от старых зелёных экранов до графических интерфейсов пользователя, которые используются и сейчас. На рынок начали выходить новые инструменты для создания приложений, например PowerBuilder. Они позволили разработчикам проще делится своими планируемыми разработками с покупателями - появилось прототипирование и началось разрушение классических, последовательностных (водопадных) методов разработки.

Тем не менее, новое движение RAD было очень неструктурированным: не существовало согласованного описания этого метода и у многих организаций были созданы собственные описания и подходы к нему. Множество крупных корпораций были заинтересованы в перспективах, предоставляемых методом, но они также были обеспокоены тем, чтобы не понизился уровень качества их продукции в конечном результате.

Консорциум DSDM был образован в 1994 году, когда группа людей встретилась на мероприятии, организованном Butler Group в Лондоне. Все, кто пришёл на это мероприятие, работали в крупных организациях, таких как British Airways, American Express, Oracle and Logica (такие компании как Data Sciences и Allied Domecq с тех пор были поглощены другими организациями).

На этом собрании было решено, что Дженнифер Степлтон, тогда представлявшая компанию Logica, разработает архитектуру комлексного, ориентированного на пользователя метода с хорошим контролем качества для итеративной и инкрементной разработки. Итоговая архитектура была спроектирована так, чтобы быть полностью совместимой со стандартом ISO 9000 и PRINCE2. Когда архитектура была готова (через месяц после собрания), Консорциум сформировал группы для её распространения во всех областях разработки программного обеспечения, которые включали в себя: методы и средства управления проектом, контроль качества и тестирование, методы и средства разработки. Контрольная группа, возглавляемая создателем архитектуры и состоящая из глав этих групп, должна была обеспечить понимание метода так, как он первоначально задумывался.

Несмотря на то, что многие члены Консорциума были прямыми конкурентами, они свободно делились тем, как они решают возникающие проблемы. Практика показала, что наилучший результат может быть достигнут только работая как одно целое. Консорциум увеличился - за первый год от нескольких организаций до шестидесяти; описание метода становилось всё более и более полным. Версия 1 была сформирована в декабре 1994 года и опубликована в феврале 1995 года. Результатом стал универсальный метод, охватывающий людей, процессы и инструменты. Он сформировался на основе опыта организаций, различных по роду своей деятельности и размерам.

Метод DSDM

Принципы

Существует 9 принципов, состоящих из 4 основных и 5 начальных точек.

  • Вовлечение пользователя - это основа ведения эффективного проекта, где разработчики делят с пользователями рабочее пространство и поэтому принимаемые решения будут более точными.
  • Команда должна быть уполномочена принимать важные для проекта решения без согласования с начальством.
  • Частая поставка версий результата, с учётом такого правила, что «поставить что-то хорошее раньше - это всегда лучше, чем поставить всё идеально сделанное в конце». Анализ поставок версий с предыдущей итерации учитывается на последующей.
  • Главный критерий как можно более быстрая поставка программного обеспечения, которая удовлетворяет текущим потребностям рынка. Но в то же время поставка продукта, который удовлетворяет потребностям рынка, менее важно, чем решение критических проблем в функционале продукта.
  • Разработка - итеративная и инкрементная. Она основывается на обратной связи с пользователем, чтобы достичь оптимального с экономической точки зрения решения.
  • Любые изменения во время разработки - обратимы.
  • Требования устанавливаются на высоком уровне прежде, чем начнётся проект.
  • Тестирование интегрировано в жизненный цикл разработки.
  • Взаимодействие и сотрудничество между всеми участниками необходимо для его эффективности.

Предпосылки для использования DSDM

Чтобы успешно использовать DSDM, необходимо чтобы был выполнен ряд предпосылок. Во-первых, необходимо организовать взаимодействие между проектной командой, будущими пользователями и высшим руководством. Во-вторых, должна присутствовать возможность разбиения проекта на меньшие части, что позволит использовать итеративный подход.

Два примера проектов, для которых DSDM не очень подходит:

  • проекты, критичные по безопасности - расширенное тестирование и утверждение в таких проектах конфликтуют с целью метода DSDM уложится в сроки и в бюджет.
  • проекты, чья цель произвести компоненты многоразового использования - требования в таких проектах слишком высоки и не укладываются в принцип 80%/20%.

Жизненный цикл проекта

Три стадии DSDM

Фреймворк DSDM состоит из трёх последовательных стадий, которые называются предпроектная стадия, стадия жизненного цикла проекта и постпроектная стадия. Стадия жизненного цикла проекта - самая продуманная и детально разработанная из всех остальных. Она состоит из пяти этапов, которые формируют итеративный, инкрементный подход к разработке информационных систем. Эти три фазы и соответствующие этапы будут более подробно описаны в последующих разделах. Для каждой стадии или этапа будут рассмотрены самые важные функции и будут представлены результаты.

Стадия 1 - Предпроектная 
На этой стадии определяются вероятные проекты, происходит выделение средств и определение проектной команды. Решение задач на этой стадии поможет избежать проблем на более поздних стадиях проекта.