В предыдущей статье, которую я написал , мы в общем взглянули на управление проектами и обсудили некоторые из его подводных камней, которых следует избегать. В рамках этого я упомянул, что вы должны, насколько это возможно, использовать Agile-методологию, в частности Scrum, для управления разработкой. Я хотел бы продолжить это с взгляда на Scrum и на то, как мы можем использовать это, чтобы приручить наши проекты.
Я знаю все и другой способ мышления
—
Большинство руководителей проектов считают, что они несут ответственность за предварительное ожидание всего и составление полной дорожной карты того, что должно быть сделано, когда это будет выполнено, и сколько это будет стоить до начала проекта.
И если это утверждение не соответствует действительности, то, безусловно, так оно и есть: большинство руководителей считают, что руководители проектов несут ответственность за предварительное ожидание всего и составление полной дорожной карты…
И поэтому, из-за своих собственных убеждений или убеждений других, большинство руководителей проектов делают все возможное, чтобы полностью уточнить все до начала. Но что происходит, когда все идет не по плану? Ну, очевидно, виноват руководитель проекта. Он не ожидал всего. Она не думала об этом достаточно. Они виноваты. Эй, кто-нибудь, возьми веревку. Где, черт возьми, ведро дегтя, которое мы имели вчера?
Конечно, если мы посмотрим на это с небольшой долей реальности, мы знаем, что невозможно знать все, что произойдет с проектом, тем более что будущее каждого проекта — движущаяся цель.
Ошибочное представление о том, что мы можем предвидеть все, если серьезно задуматься, является результатом движения начала 20-го века по количественной оценке всей деловой активности как шагов в повторяющейся работе, которая, в свою очередь, подпитывалась математической верой 18-го и 19-го века, что все было детерминированным , Я не могу вспомнить, кто это сказал (и Бог знает, что я пытался найти это), но «дай мне начальные условия, и я буду предсказывать все будущие действия» или что-то в этом роде.
Правда в том, что мы не можем предсказать будущее и не можем предвидеть все. Так зачем пытаться?
В то же время, используя ту же логику, цель управления проектами на самом деле состоит не в том, чтобы «сделать» что-то заранее, а в том, чтобы достигнуть какой-то заранее поставленной цели. Да, делать вещи вовремя и в рамках бюджета — это хорошо, но это не единственное. Как высшее руководство может торговать успешным проектом (тот, который делает все, что вы хотите, чтобы он делал, и который будет полезен для всех), который на месяц просрочен для того, что вовремя, но только частично того, что было действительно нужно?
Проекты не могут быть реалистично изложены детерминистическим образом, когда все известно заранее, и дело в том, чтобы держать людей в тонусе. Жизнь просто не такая. Программные проекты — скользкие существа, склонные к изменению формы и размера, и есть только один способ справиться с ними — подходить к ним итеративно. Сделайте версию и посмотрите, как она выглядит. Затем уточните и посмотрите, как это выглядит. Мы продолжаем это делать, пока все не скажут: «Да, детка, это то, о чем я говорю».
И Scrum вписывается в это Как?
Agile — это метод управления проектами, который не предполагает, что мы знаем все с самого начала. Он не рассматривает программные проекты, такие как строительство шоссе или моста, а скорее как нечто, где могут происходить неопределенные вещи. Если в Agile есть центральная тема, то она такова: обратите внимание на сегодняшний день, на то, что вы делаете, и на то, что вы не делали. Береги копейки, а доллары сами о себе позаботятся.
Scrum — это методика проведения Agile-разработки. Кажется, что все думают о Scrum как о встрече, но это больше, чем это. Скрам устанавливает структуру, предоставляет протокол связи (ежедневное собрание Скрам) и определяет способ измерения и просмотра прогресса (график сгорания).
Scrum имеет свой собственный словарный запас, отличный от других методологий управления проектами. Проекты называются «Пользовательские истории». Конкретные задачи в пользовательской истории называются «историческими точками». Итерация называется «Спринт». Руководителем проекта является «ScrumMaster». Владелец проекта называется «Владелец проекта» (хорошо, так что не все по-другому).
Самая известная часть стиля жизни Scrum — это встреча Scrum — короткая ежедневная встреча, посвященная тому, что находится прямо перед вами.
Люди, которые понимают Scrum, скажут, что это ничем не отличается от встречи по проекту типа водопада, но я не согласен. Примите участие в любом совещании по управлению проектами, посвященном водопаду, и почти все время будет посвящено обсуждению того, что может или не может произойти в будущем, или тому, кто несет ответственность за выполнение конкретной задачи, которая внезапно возникла. Он сосредоточен на конце пути и вещах, которые никто не предвидел. И эти встречи буквально истощают команду проекта; никакая работа не выполняется до встречи, потому что все боятся ее, и очень мало делается после того, как все устали.
В центре внимания Scrum сейчас, прямо сейчас. Что мы сделали за последние 24 часа? Что мы будем делать в следующие 24 часа? Какие у тебя проблемы? Как вы думаете, сколько времени займет текущее задание?
Как Scrum
Скрам не сложный, но и не тривиальный. Эта статья не предназначена для того, чтобы стать учебником по «Скраму», а для того, чтобы заинтересовать вас углубиться в нее. Для получения дополнительной информации я рекомендую начать с отличного 10-минутного видео на сайте Axosoft. Там есть и другие ссылки, по которым вы можете следовать, и Axosoft предлагает отличную информацию о том, как Scrum. Но вкратце, вот несколько моментов, с которых можно начать:
Проводите меньшие встречи
По своей природе традиционное проектное совещание охватывает широкий круг тем, многие из которых ориентированы на будущее, о которых говорят каждую неделю и представляют проблемы, которые либо никогда не материализуются, либо проявляются в другой форме. С таким большим количеством вовлеченных людей оказывается много переменных, много разных мнений о том, что должно быть сделано, и много поднимаемых тем, которые лишь косвенно касаются рассматриваемых проблем.
И так и должно быть. Это вонючее совещание по управлению проектами. Приглашаются все, кто заинтересован в проекте, поэтому они не могут давать показания против вас во время судебного разбирательства (что никто не перечислил им). По самой своей природе, он широкий и не сфокусированный.
Ежедневные встречи Scrum, с другой стороны, ограничивают количество присутствующих людей теми, кто выполняет активные задачи, и владельцем проекта. Они должны быть короткими — не более 15 минут — и оставаться четко сфокусированными.
Ограничить область и сроки
Мы говорим только о важных вещах на встрече Scrum: о том, что происходит сейчас, что повлияет на завтра. Но не ограничивают ли сроки и объем вопросов закрывающие глаза на будущее?
Нет, потому что будущее за Scrum — следующая итерация. Мы не ждем, пока пройдет месяц до внедрения, до начала пользовательского тестирования, чтобы люди могли получить в свои руки вещи. Наш горизонт — завершение итерации, и единственное, что имеет значение, это то, насколько хорошо мы использовали последние 24 часа для достижения этой цели.
Каждая встреча Scrum должна быть сосредоточена на реальных достижениях; когда мы будем готовы отдать что-то в руки пользователей, с которыми они могут работать — не думать, а реально использовать?
Ищите обратную связь
Мы часто рассматриваем тестирование пользователей как нечто, что находится за пределами проекта. Но в Scrum результаты тестирования запланированы как достижимые цели. Когда тестирование завершено, оно передает информацию команде проекта.
Но что, если тесты ничего не передают команде? Что если люди просто лунатируют через все это? Ну, Scrum не позволяет этому случиться.
Скрам вынуждает тесты приложить надлежащие усилия, чтобы вместо того, чтобы рассматривать потенциальные проблемы как какое-то будущее событие, эти проблемы становятся частью следующей итерации, выводя их на передний план намного раньше, чем традиционное управление проектами.
Постоянно переделывать оставшееся время
В традиционном управлении проектами мы заранее решаем, сколько времени потребуется, чтобы что-то сделать. Но в лучшем случае это проблематично, и некоторые члены команды стараются изо всех сил скрывать любые доказательства того, что оценка неверна. Конечным результатом является то, что мы подошли к моменту, когда задача должна быть выполнена, и это не так, и не было никакого предупреждения.
Скрам просит членов команды ежедневно пересматривать время, оставшееся для выполнения задачи. Иногда это может быть удручающе, но сохраняет реальность и помогает всем увидеть, когда ситуация начинает отставать от графика.
Вывод
Какой проект может быть у вас, когда беспокоиться о том, что может случиться или не случиться в будущем, важнее, чем смотреть на то, что происходит сейчас?
Конечно, есть определенные люди, которые не могут делать Scrum. Или, другими словами, есть определенные люди, которые не будут заниматься Scrum. Они не хотят долгих встреч (или, может быть, они хотят, я никогда не уверен), но они не могут отпустить беспокойство о будущем, которое они не могут контролировать. Ты один из них?
Scrum поддерживает убеждение, что лучший способ контролировать будущее — убедиться, что с сегодняшним днем все в порядке (за ним следуют завтра, день после этого и т. Д.). Но некоторые люди просто не могут копать это. И если они пытаются сделать Scrum, они просто облажаются; они называют это Scrum, но это действительно традиционное управление проектами.
Для тех, кто может его использовать (тех, кто готов его использовать), Scrum — это инструмент, который помогает нам сосредоточиться на единственной вещи в этом мире, на которую мы можем повлиять — сегодня. И если все наши сегодняшние дни будут соответствовать друг другу, велики шансы на то, что наше будущее тоже будет в порядке.
Изображение через Fotolia