В настоящее время о гибких технологиях выполнения проектов Agile/Scrum говорят все чаще. В этой статье я напишу про свое видение плюсов и минусов применения Scrum при выполнении проектов с позиции заказчика.
Agile, Scrum, Kanban – эти слова уже успели примелькаться всем, кто имеет какое-либо отношение к разработке продуктов, бизнес-процессам, организации труда. Многие считают, что за этими технологиями будущее. Но, что интересно, немногие могут объяснить различия между этими понятиями, например, ответить на вопрос о Scrum и Agile: разница существует и в чем она заключается?».
Итак, сперва определимся с методологическим аппаратом:
Agile – класс гибких методологий разработки; набор ценностей и базовых принципов в области разработки ПО, основная суть которых сводится к взаимодействию самоорганизующихся кросс-функциональных команд. В суть Agile заложены адаптивное планирование, эволюционная разработка, максимально быстрый выпуск новых версий продукта, постоянная доработка и быстрый ответ на возникающие сложности. На сегодняшний день Agile уже давно вышел за рамки разработки программного обеспечения, а его различные дочерние методологии используются в различных сферах управления. Подробнее о Agile можете прочитать здесь.
Ведение IT-проектов. Что учитывать заказчикам при внедрении новых инструментов?
Scrum – одна из методологий в рамках Agile. В основе данной методологии лежат «спринты» – короткие жестко фиксированные по времени итерации, в рамках которых как исполнитель так и заказчик выполняются определенный набор задач. Подробнее о Scrum, разнице Scrum и Agile читайте здесь.
Kanban – система, которая предусматривает организацию разработки/труда/производства/снабжения в соответствии с принципом Just In Time (или точно в срок). В основе Kanban лежит производственная и снабженческая система Toyota, которая во второй половине XX века чуть было не уничтожила весь американский автопром. Подробнее о Kanban читайте здесь.
Основными ценностями в концепции Scrum объявлены коммуникация и готовность к изменениям, а не жесткое следование первоначальному плану. Когда же Scrum может принести только пользу, а когда — вред?
Чтобы разобраться, рассмотрим сначала традиционную «жесткую» технологию, основанную на так называемом «договоре подряда» (гл. 37 ГК РФ).
Жесткая подрядная технология
Суть подряда, определенная в ГК, очень проста. Заказчик заказывает и четко определяет в спецификации к договору, что именно он хочет получить. В договоре четко фиксируется стоимость и срок. Заказчик передает исполнителю материалы, пригодные для обработки.
Исполнитель проверяет материалы, и если они непригодны, то немедленно сообщает об этом Заказчику и останавливает работы. Заказчик обязан оказывать Исполнителю содействие в процессе работ. Если Исполнитель не уложился в срок, или предоставил настолько некачественный результат, что можно предположить недостижение результата как такового – Заказчик имеет право расторгнуть договор и потребовать возврат аванса в полном размере. Если же результат достигнут, то Заказчик принимает работы, подписывает акт выполненных работ, оплачивает работу.
Выявление требований к программному обеспечению. Диаграмма вариантов использования (use-case).
При выполнении проектов по внедрению ERP-систем обычно заключаются именно такие договоры. В договоре определяются фиксированный бюджет и срок на каждый этап работ, сама задача (непосредственно в договоре или отдельно в ТЗ), обязанности Заказчика на каждом этапе, однозначные критерии результата. Изменения в требованиях в процессе работ либо не допускаются вовсе, либо дополнительный объем работ оплачивается дополнительно по отдельному соглашению.
Подчеркнем ключевое положение этой модели взаимодействия: в результате оценки Исполнителем поставленной изначально задачи в договоре устанавливается жесткий срок и стоимость этапа. Поэтому изменение задачи в процессе выполнения работ не допускается. Это правило действует, например, и при ремонте квартиры, и при внедрении ERP-систем.
Если используется итерационный подход, то после окончания этапа работ становятся ясными задачи следующего этапа, а значит, следующие объемы работ. Соответственно, в дополнительном соглашении фиксируется срок и стоимость на следующий этап. Бывает еще интереснее — при внедрении ERP-систем Исполнитель (зачастую чтобы выиграть тендер) фиксирует бюджет на весь проект целиком, иногда на 1-2 года вперед.
Наивные Заказчики принимают бюджет, полагая, что и сроки, и бюджеты будут соблюдаться. При этом, согласно договору, этапы работ в любом случае закрываются актами и оплачиваются отдельно, чуть ли не помесячно. Не исключено, что через несколько месяцев выяснится, что бюджет необходимо увеличить в 2-3 раза (мол, требования к системе изменились, а «мы об этом не договаривались, в ТЗ этого нет!»). Не хотите — до свидания. Но такие неприятные ситуации — тема для другой статьи.
Основной недостаток жесткой технологии — существенные ограничения гибкости в требованиях и решениях, в условиях выполнения работ, ограничения гибкости участия Заказчика в процессе выполнения этапа. Такая гибкость в ходе выполнения работ крайне важна, так как в начале каждого этапа детальные, исчерпывающие, точные требования и организационные условия сформулировать затруднительно – высока степень неопределенности системы. Интеграторы-исполнители часто говорят: «Клиент сам не знает, чего хочет»… Совсем тупиковые ситуации возникают, когда клиент – который не знает, чего хочет – требует сделать систему «под ключ».
Но это не Заказчик виноват… это всего-навсего специфика таких проектов.
Поскольку сроки и бюджеты определяются в начале каждого этапа, любые корректировки требований к системе со стороны Заказчика, а также любые изменения условий в процессе выполнения работ на этапе (например, объем участия и содействия со стороны Заказчика) могут создать дополнительную трудоемкость для Исполнителя, что потребует пересмотра бюджета и сроков. Но пересмотр бюджетов и сроков — потенциально конфликтная ситуация!
Итак, Заказчик заинтересован в возможности изменения требований в процессе выполнения работ, но подрядная технология не дает ему этого делать, вызывая конфликт с Исполнителем.
Для повышения гибкости — в бюджет и сроки закладываются риски. Кроме того, опытные Исполнители предусматривают и прописывают процедуру «Управления изменениями», согласно которой в конечном итоге все изменения первоначальных требований проходят через процедуры инициирования и оценки.
Стоимость рисков Исполнителя, отраженных в бюджете проекта, в подобных работах может достигать более 50% от стоимости этапа. Другими словами, Исполнитель продает заказчику не только результат работ, но и свои риски. Если риски не реализуются, стоимость работ для Заказчика оказывается завышенной относительно реальной трудоемкости этих работ, а Исполнитель получает дополнительную прибыль. Бывает и наоборот — реализовываются незапланированные риски сверх бюджета, в результате чего Исполнитель оказывается в убытке.
Таким образом, подрядная технология ограничивает гибкость Заказчика в изменении требований, условий работы и степени своего участия, когда работы уже начаты, и «корабль отошел от берега». Необходима процедура управления изменениями… но нет гарантии, что эта процедура сможет предусмотреть все ситуации.
Большие издержки стороны несут на формулировке всех условий работ и требований к результату при начале этапа, а также на формализации правил управления изменениями. И это при том, что условия и требования могут быстро терять актуальность в процессе выполнения этапа! В результате часть разработанного и оплаченного функционала может оказаться невостребованной в процессе эксплуатации системы – нередкая ситуация при подрядном способе.
Почему же Заказчики, как правило, требуют, чтобы внедрение сложных систем выполнялось по договорам подряда? Ответ прост:
- Другие способы разделения ответственности для Заказчика менее комфортны. В договоре Заказчик заказывает, а Исполнитель – исполняет, эта логика порождает разделение ответственности сторон за проект, удобное для Заказчика.
- Другие (не подрядные) технологии требуют большей ответственности со стороны заказчика.
Почему Исполнители охотно соглашаются на подряд?
- Чтобы обеспечить гибкость в требованиях, Исполнители закладывают в фиксированную стоимость проекта риски. Если риски не реализуются, Заказчик переплачивает.
- Требования к результату согласуются «на берегу», а значит, Заказчик опять лишается гибкости, а Исполнитель получает возможность не делать нужный Заказчику функционал, ссылаясь на то, что «в ТЗ этого нет». Так работать спокойнее: зафиксировал требования и “вперед”…
Гибкость требований в процессе выполнения работ
По причине высокой неопределенности системы в начале проекта и невозможности предусмотреть все, заказчики стремятся менять требования в процессе выполнения работ. Появляются новые идеи, происходят изменения на предприятии, выясняется, что вместо интеграции со старой системой лучше доработать новую систему и т. д.
Гибкость требований жизненно необходима для достижения результата, действительно нужного предприятию.
Но гибкость требований и подряд – антагонизмы!
Гибкая технология (Scrum)
Смысл концепции Scrum в том, что каждый этап работ разбивают на короткие итерации фиксированной длительности (от 1-й недели до месяца). В начале каждой итерации определяют задачи сторон — Заказчика и Исполнителя — только на данную итерацию. В процессе итерации (в терминологии Scrum – «Спринт») изменения в задачах Сторон, требованиях и условиях выполнения работ не допускаются. По завершении итерации Стороны анализируют результаты и ставят задачи на следующую итерацию; и при этом уже допускается изменять условия выполнения работ.
Очень важно плотное и непрерывное взаимодействие Исполнителя и Заказчика. Как можно больше общаться, быть одной командой — вот ключевой момент данного подхода!
Такие работы удобнее выполнять по договору оказания услуг (ГК РФ, глава 39), а не по подрядному договору. Преимущество гибкой технологии:
- За счет того, что итерации намного короче, чем весь этап работ, достигается гораздо большая гибкость в принятии решений и управлении изменениями в ходе работ. Между итерациями Заказчик не ограничен в принятии организационных решений, изменении рамок проекта и так далее. Очевидно, что стороны движутся к результату более коротким путем, чем при подряде, поскольку могут непрерывно вносить изменения в проект.
- Исключаются конфликтные ситуации по причине изменений, так как в центр такой технологии поставлена возможность изменения. Если при подряде изменение — это неприятное отклонение, требующее разборок и выяснения, кто кому должен, то в Scrum изменения — это суть и составляющая процесса.
- Тарификация итераций тоже может быть гибкой – либо оплата производится по фактической трудоемкости (согласно почасовой ставке работы сотрудника); либо стоимость итерации фиксируется в начале итерации, исходя из прогноза ее трудоемкости. В результате, Заказчик оплачивает только фактическую трудоемкость и не переплачивает за риски.
Прогноз стоимости каждой итерации выполняется достаточно просто по почасовому тарифу (если известно количество сотрудников Исполнителя, планируемых на итерацию с полной загрузкой).
Таким образом, при использовании гибких технологий бюджет проекта на определенный период строится на основании прогноза трудоемкости и количества привлекаемых сотрудников Исполнителя.
Как правило, при использовании гибких технологий стоимость проекта не превышает его стоимости при использовании жестких технологий, поскольку конечная стоимость напрямую зависит от суммарной трудоемкости. Трудоемкость гибкой технологии может оказаться даже меньше за счет того, что не разрабатывается невостребованный функционал, а значит, меньше будет и стоимость проекта в целом.
Однако технологии Scrum присущи свои недостатки. Один из них — риск несистемного подхода. Определение всех требований к системе до начала работ позволяет продумать систему в целом еще до ее реализации. В ходе реализации части системы учитываются свойства всей системы, все требования к ней, а не только к одному из ее сегментов. В этом и заключается системный подход.
При несистемном подходе высока вероятность, что вместо системы получится набор несвязанных элементов – совсем как в древней восточной сказке, в которой мудрецы за хвостом, хоботом и ногами не увидели слона:
Поэтому если есть возможность тщательно продумать функционал и требования до начала реализации, ей надо воспользоваться. Разумеется, если есть вся необходимая информация. Это идеальный случай, и такое бывает редко, поэтому наилучшим вариантом в таких ситуациях является Scrum, позволяющий формировать требования к системе в процессе ее реализации и эксплуатации. Если же изменения не предвидятся, то Scrum — не лучший выбор.
Например, при разработке типовых решений (не под конкретного заказчика с его неочевидными «хотелками») систему лучше продумывать сразу в полном объеме, целостно. Поскольку внешнего непредсказуемого заказчика нет – в данном случае заказчиком, по сути, является сама команда разработчиков – требования к системе известны изначально. Конечно, если разработчики знают, за что берутся.
Итак, управление изменениями при гибкой технологии Scrum происходит наиболее эффективно. Следует учесть, что в проектах с высокой степенью неопределенности системы в начале работ управление изменениями является ключевым фактором, влияющим как на конечный результат, так и на оптимизацию бюджета. В том числе значительно снижаются риски разработки ненужного функционала, либо функционала, не соответствующего потребностям бизнеса.
Договор подрядный, а работаем по Scrum
Преимущества Scrum все чаще можно наблюдать, когда реализуется один из классических проектных рисков – “сваливание” проекта в Scrum по факту, хотя по договору работа выполняется по подряду – с жесткими сроками и стоимостью. Такое “сваливание” очень выгодно активному Заказчику, т.к. позволяет достичь желаемого результата, отталкиваясь каждый раз от фактического результата промежуточного этапа работ. Заказчику гораздо проще понять, что он хочет получить на самом деле, если он отталкивается от того, что уже сделано.
Такая ситуация характерна не только для ИТ-проектов. При ремонте квартиры, строительстве дома, и любом проекте, когда сложно четко формализовать окончательный результат, Заказчик может начать контролировать непрерывно каждый мелкий этап и вносить корректировки в изначальную постановку задачи.
Это приводит Исполнителя в замешательство, т.к. сроки и трудоемкость работы неконтролируемо растут, а бюджет проекта не меняется. Исполнитель начинает думать, что «Заказчик не знает, что хочет», это потенциально конфликтная ситуация. На самом деле, Заказчик и не может знать, что хочет — это вполне нормально. Что он хочет, он начинает понимать только после того как увидит, что получается по факту — только после очередной итерации работ. Это Scrum.
На ИТ проекте “сваливание” проявляется следующим образом.
Как правило это происходит на этапе реализации (кодирования). Как только Заказчик просит показывать промежуточные результаты, и начинает их принимать, не дожидаясь предъявления всего объема работ на испытания, ждите переход по факту в Scrum.
Приемка Заказчиком уже первой итерации работ скорее всего повлечет за собой частичный пересмотр Заказчиком всего технического задания, а это уже Sсrum. Разумеется, для конечного результата и удовлетворения Заказчика это благо. А пересмотр ТЗ — это изменение трудоемкости, обычно в большую сторону. И если не заключить дополнительное соглашение на увеличение стоимости, то ущемляются интересы Исполнителя. А это конфликтная ситуация.
Возникает вопрос – не проще ли изначально договориться работать по Scrum? Ведь справедливая оплата работ должна соответствовать фактической трудоемкости, которая при “сваливании” в Scrum не поддается точному расчету!
Что же получается? Заказчик может отрицать Scrum при заключении договора, но потом фактически заставить Исполнителя работать по Scrum. В рамках фиксированного срока и бюджета. И не забываем, что просрочка срока сдачи работ (из-за постоянного внесения Заказчиком мелких корректировок в задачу) грозит Исполнителю серьезной ответственностью, т.к. Исполнитель отвечает за срок сдачи работ.
Неисполнение срока дает право Заказчику предъявлять обоснованные претензии. Более того, Заказчик может упрекать Исполнителя в недостаточном профессионализме, т.к. Заказчик склонен часто свои корректировки в постановку Задачи расценивать как свои требования исправить недостатки…
Источник: itrp.ru
Какая из методологий не предусматривает выявления бизнес-целей Заказчика?
Какая методология внедрения ИС предусматривает оптимизацию бизнес-процессов в конце проекта внедрения?
Каковы положительные результаты использования методологии внедрения ИС для заказчика проекта?
В какой методологии начальным этапом проекта является исследование деятельности заказчика?
Какие специалисты заказчика проходят обучение на этапе анализа в соответствии с методологией On Target ?
Кто осуществляет мониторинг окружения проекта с целью выявления изменений, способных повлиять на выполнение работ?
Факторы, которые для целей планирования считаются верными, реальными или определенными без привлечения доказательств – это:
Какой ролевой кластер MSF осуществляет выявление и анализ бизнес-требований к ИС?
Как называется процесс разработки методов и процедур, способствующих повышению благоприятных возможностей и снижению угроз для достижения целей проекта?
В какой методологии оптимизация бизнес-процессов отнесена на этап развития системы?
Выполнение каких работ предусматривается методологией AIM в рамках процесса «Отображение бизнес-требований»?
Источник: bazaintuit.ru
Современные методы и подходы к управлению проектами
Проектный менеджмент позволяет вести целенаправленную и организационную деятельность, направленную на получение успешного результата самым эффективным способом. Поэтому сегодня в рамках статьи рассмотрим основные подходы к управлению проектами.
Методология была разработана в компании Motorola, и с 1986 по 2001 годы она позволила сэкономить корпорации 16 миллиардов долларов. Техника позволяет улучшать процессы и качество продукции за счет снижения дефектов и ошибок на производстве.
Суть методологии:
Имеет сходства с такими методиками, как LEAN и Kanban. Однако обладает большей структурированностью, к ней добавлено дополнительное планирование для ресурсосбережения, улучшения свойств, меньшего числа брака и недочетов. Финальной целью проекта является полное удовлетворение потребностей клиента качеством готового продукта, которое достигается детальным анализом всех параметров, ликвидацией ошибок и проблем, безостановочным процессом совершенствования всех граней и сторон проекта.
Для достижения подобного результата используется процесс из пяти шагов (DMEDI): определение (define) -> измерение (measure) -> исследование (explore) -> разработка (develop) -> контроль (control).
Кроме того, методика проектного управления строится на шести принципах, от которых зависит эффективность бизнес-процессов компании. В их числе проявление интереса к клиенту, управление на основе проверенной информации, ориентация на производственные процессы, проактивное и опережающее управление, открытость к сотрудничеству и прозрачность производства для клиентов компании, постоянное совершенствование качества продукции.
Плюсы:
- универсальность методологии;
- ориентация на конечный финансовый результат;
- объединение всех средств, инструментов в общую систему.
Минусы:
- повышенные требования к качеству продукции;
- высокая стоимость обучения;
- реализация возможна только в компаниях с сильной директивной культурой.
В каких случаях применяется:
Идеально вписывается в работу крупных компаний, занимающихся промышленностью.
8. Critical Path Method (Метод критического пути)
Гибкая методология проектного управления, основанная программистом Кентом Беком на инструментах других технологий и описанная в пособии «Extreme Programming Explained». Она помогает достичь в проектах программистов результатов желаемого качества без истощения людских ресурсов. Упор в методе делается на гибкость планирования и человеческий фактор.
Суть методологии:
Сущность технологии строится на четырех основных процессах программирования: кодирование, тестирование, дизайн и слушание. Обладает собственными ценностями, такими как простота, активная коммуникация и обратная связь, решительность и уважение к клиенту.
Позволяет смело менять программные продукты и поднимает их качество. Идеально подходит для не слишком конкретных и сложных проектов. Подразумевает использование различных практик, в числе которых многократные релизы версий, пользовательские тесты, совместное владение кодом, метафора системы, устойчивый темп, сдвоенное программирование и другие.
Преимущества:
- быстрое внесение комплекса изменений в ходе проектной деятельности;
- высокое качество выполненной работы;
- снижение рисков, связанных с теоретической разработкой;
- снижение корпоративных затрат.
Недостатки:
- успех конечного продукта зависит от вовлеченности клиента в сетевой проект;
- невозможность рассчитать срок выполнения задания;
- высокая стоимость истории разработки и проектной деятельности.
В каких случаях применяется:
Используется исключительности в IT-области. При этом наибольшую эффективность метод представляет на длительных и запутанных проектах, в которых имеется множество неопределенных и непредсказуемых факторов.
ЛидерТаск — приложение для управления проектами
Невозможно представить успешную деятельность современного предприятия, занимающегося какими-либо проектами, без специального онлайн-трекера. Программа существенно экономит рабочее время сотрудников, помогает осуществлять контроль над сроками, выполнять поручения, задачи и достигать целей.
Одним из самых продуктивных приложений отечественного рынка является сервис ЛидерТаск, который содержит в себе все нужные функции для организационной работы команды. Внутри программы разработана целая система по ведению проектной деятельности, постановке задач и обсуждению актуальных вопросов.
Визуализация осуществляется с помощью канбан-досок, а автоматизация рабочего процесса происходит за счет разбивки задач и подзадач по категориям. В онлайн-сервисе есть возможность вести сразу несколько проектов: индивидуальных и совместных. Также все ключевые проекты можно передавать, экспортировать, сортировать, находить в поиске, перемещать и следить за прогрессом.
Руководитель обладает доступом к мониторингу результативности членов коллектива. Он имеет возможность отслеживать продуктивность каждого конкретного исполнителя по всем поставленным задачам за определенный период на специальном графике.
Тарифы сервиса:
- для начинающих — бесплатный (0 рублей);
- для профессионалов — премиум (от 217 рублей за пользователя);
- для команд — бизнес (от 331 рубля за пользователя).
Сервис предлагает особые условия для НКО, образовательных и научных учреждений. Все платные тарифы имеют бесплатный тестовый период до 7 суток (по согласованию с разработчиком).
Универсальной методологии проектного управления не существует, ее следует выбирать в индивидуальном порядке под каждый отдельный проект. Все хороши по-своему. При выборе того или иного подхода ориентируйтесь на отрасль, направление работы, цели, масштабы проекта, сроки выполнения и сложность задач.
Имейте в виду, что некоторые методы подходят для ускорения и эволюции деятельности, тогда как другие рассчитаны на ее основательность, исключение рисков и неполадок. А за быстрое внедрение данных техник отвечает удобное онлайн-приложение ЛидерТаск. Поэтому не забывайте пользоваться им по мере необходимости, и успешных вам проектов!
Пройдите тест и получите гарантированный бонус!
Поздравляем, вы прошли тест!
Вы на начальном пути к эффективному управлению, но чтобы стать Гуру на 100%. Вам предстоит идти дальше, учиться и нарабатывать навык. Мы дарим вам книгу «Секреты управления временем» и верим, что в ближайшее время вы постигнете азы эффективного управления.
Источник: www.leadertask.ru