Skip to main content

Методология разработки - Joint Application Development (JAD)

Совместная разработка приложений, или Joint Application Development (JAD) – это процесс, первоначально разработанный для разработки компьютерных систем. JAD-процесс объединяет представителей бизнес среды (пользователей) и специалистов ИТ (Информационных Технологий) в узкоспециализированных семинарах (in a highly focused workshop). Одно из преимуществ JAD - резкое сокращение времени, необходимого для завершения проекта. JAD также улучшает качество конечного продукта, сосредоточив внимание на начальной части жизненного цикла разработки, что снижает вероятность возникновения ошибок, исправление которых дорого обходится в будущем.

JAD процесс обеспечивает для разработки компьютерных систем то, что Генри Форд сделал для автомобильного производства (метод организации механизмов, материалов, и рабочей силы таким образом, что машину можно собрать гораздо быстрее и дешевле, чем когда-либо ранее - линия по сборке). Цели в области разработки систем заключается в том, чтобы определить, что пользователям действительно нужно, а затем создать систему или процесс, который обеспечит это. Традиционные методы имеют ряд встроенных замедляющих факторов, которые тем сильнее, чем больше людей вовлечено в проект.

Ниже приведено описание процесса традиционное проектирование систем из книги "Joint Application Development" (авторы Jane Wood и Denise Silver)1. Возможно, это окажется Вам знакомо.

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

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

Когда, наконец, все согласны, увы, руководитель выясняет, что следовало бы проконсультироваться с еще некоторыми людьми, потому что им требуется нечто совершенно другое.В конце концов, никто не хочет "подвести черту" под спецификациями.

В некоторых случаях, "подведение черты" происходит легко. Но когда система поставлена, она зачастую имеет мало общего с тем, что действительно необходимо пользователям:

"A user sign off is a powerless piece of paper"2 when matched against the fury of top management.

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

JAD сосредоточен вокруг конструктивных рабочих совещаний. Все собираются вместе в комнате для обсуждений. Каждый слышит, что говорит остальная часть группы. Нет задержек между вопросами и ответами, нет "занятых телефонов" или ожидания ответа на записку. Joint Application Development устраняет многие проблемы традиционных встреч. Встречи не считаются продуктивной формой работы. JAD превращает встречи в совещания. Они не так часты, более конструктивны и продуктивны. Повестка дня обеспечивает конструктивизм, помощник направляет процесс, наглядные пособия уточняют обсуждаемые понятия, и активность группы, с постоянной обратной связью, стимулирует творческий потенциал.

JAD совещания:

  1. Очень сфокусированы, сосредоточены
  2. Проходят в специальном предназначенном окружении
  3. Быстро управляют основными требованиями
  4. В JAD совещаниях, как правило, участвуют:
    • Координатор (Facilitator) - способствует дискуссии и соблюдению правил
    • Конечные пользователи (End users) – (3-5 человек), присутствуют на всех совещаниях
    • Разработчики (Developers) – (2 или 3), для ясности вопроса
    • Tie Breaker – Senior manager. Breaks end user ties, usually doesn’t attend
    • Наблюдатели (Observers) – (2 или 3), не участвуют в обсуждении
    • Эксперты предметной области (Subject Matter Experts) – ограниченное число для понимания бизнеса и технологий
       

 

Литература:

1 Wood, J. and D. Silver, Joint Application Development, 2nd ed., New York : Wiley, 1995.

2 Wetherbe, James C., "Executive Information Requirements: Getting It Right", MIS Quarterly, March 1991, p. 51.