Классический подход к управлению проектами (методы PMBoK) основываются на предположении о неизменности требований, низких рисках и жестких сроках. Эти методы хорошо работают в проектах с натуральным измерителем (строительство, например). Такие методологии будем называть жесткими.
Управление программными проектами – особый вид управления проектами, отличающийся от других проектов отсутствием натуральных измерителей, высокой степенью изменчивости требований и значительной субъективностью критериев приемки, вплоть до «нравится» - «не нравится». Для управления программными проектами более приемлем подход, основанный на предположении о критичности качества, при этом требования к сроку и ресурсам достаточно гибкие. Под качеством, в общем смысле, понимается полнота удовлетворения потребностей, как известных, так и не известных заранее. Отсюда, будем эти методологии называть гибкими.
Известно много гибких методологий по управлению программными проектами, либо частью программных проектов. Например, SCRUM – методология управления программными проектами, активно применяющаяся при разработке информационных систем и может использоваться в работе команд поддержки программного обеспечения. XP (eXtreme Programming – Экстремальное программирование) – набор инженерных практик, имеющих короткий цикл обратной связи, обеспечивающий непрерывность разработки, понимание, разделяемое всеми и социальную защищенность программистов (40-часовая рабочая неделя). Программный Канбан – одна из новых разновидностей управления разработкой для организаций и фрилансеров, работающих с большим количеством заказов. Lean – методология разработки программного обеспечения, основанная на концепции бережливого производства, применяемая часто совместно с Канбан. RMS (Requirement Management System – Система управления требованиями) – система управления распределенными программными проектами, вобравшая в себя лучшие практики различных гибких методологий, адаптированная, первоначально, к управлению распределенными программными проектами на платформе «1С:Предприятие».
Основные идеи, заложенные в основу гибких методик:
- Люди и взаимодействие важнее процессов и инструментов
- Работающий продукт важнее исчерпывающей документации
- Сотрудничество с заказчиком важнее согласования условий контракта
- Готовность к изменениям важнее следования первоначальному плану
Для жестких методик ограничения по срокам, в частности, возникают как институт, который призван снизить риски заказчика. Но на практике получается наоборот, жесткие давящие сроки приводят к деструктивной позиции обеих сторон: исполнитель запрещает заказчику менять требования, даже если для этого имеется реальная бизнес-необходимость, а заказчик жестко требует исполнения сроков порой в ущерб качеству, ведь масштаб проекта также фиксируется. Как правило, жесткие ограничения формулируются из-за отсутствия достаточного доверия не только к исполнителю, но и внутри команды заказчика.
При этом гибкие методики подвергаются критике, в результате которой сформировалось несколько мифов, в частности, гибкие методики годятся только для маленьких проектов, якобы отсутствие точного плана работ ведет к необходимости долгого согласования.
Считается, что проект, реализованный с использованием гибких методик, получается дороже традиционного, отчасти из-за низкой дисциплины. Однако многолетний опыт эксплуатации Системы управления требованиями говорит об обратном. Прежде всего, без достаточной дисциплины вряд ли стали бы возможными реализация достаточно крупных проектов в ожидаемые сроки и за приемлемую плату. Проанализируем график:
По вертикали – объем работы (в часах), на горизонтальной оси количество месяцев. Серая часть графика показывает, что выделение ресурсов гибкое, при увеличении количества требований увеличивается объем решенных задач. Красная область – прямая экономия ресурсов.
За счет чего, все-таки, в RMS удается реализация достаточно крупных проектов? С одной стороны – да, адаптированы лучшие гибкие методики, но с другой стороны есть серьезное отличие. В то время, когда в большинстве гибких методик личная беседа считается самым эффективным методом взаимодействия и обмена информацией, в RMS самым эффективным методом является, по праву, конструктивное письменное общение (КПО) – дисциплина формулировок, над которой приходится работать ежедневно.
Представители заказчика и исполнителя являются полноправными пользователями единой системы в соответствии с заданными полномочиями.
Что же такое конструктивное письменное общение? Во-первых, это умение читать, во-вторых, правильно понимать, в-третьих, навыки понятного письма.
К методам КПО следует отнести формализацию и стандартизацию обращений, «ролевые игры», отказ от лишнего текста и формулировки в виде «вопрос-наживка». Обратите внимание на приведенные примеры:
1) формализация
2) Управляющее воздействие
3) избавление от «воды»:
В RMS организован входной отбор специалистов: проверяется наличие навыков конструктивного письменного общения, при отсутствии которых дистанционная работа с управляемым качеством противопоказана. С 2005 года из более чем 3500 кандидатов было отобрано около 35 человек (~1%). Среди заказчиков, к сожалению, достаточно сложно организовать подобный отбор, поэтому с заказчиками ведется ежедневное обучение через личный пример - «делай, как я». Поощряются все положительные изменения в формулировках. Эффект ошеломительный – многие пользователи заказчиков достаточно быстро понимают разницу, наблюдая, насколько сокращается время реакции и сроки решения при обращении, сформулированном согласно нескольким простым правилам КПО.
*******
Статья написана на основе доклада, прочитанного на Конференции IE 2013 Revolution (7-8 ноября 2013 года). Также она опубликована в журнале Инфостарта № 3
Приглашаем вас на новую конференцию INFOSTART EVENT 2019 INCEPTION.