Технический директор компании ServiceNow Алан Лейнванд поделился с изданием InformationWeek опытом внедрения одной из методологий гибкой разработки (agile software development) под названием «Красная линия».
Установившаяся в облачной индустрии культура отношений слишком зациклена на инновациях и новых функциях. Что характерно, злоупотребляют ею не только разработчики, но и менеджеры по продажам — чтобы удержать текущих и приобрести новых клиентов они сулят им изобилие привлекательных и кажущихся нужными нововведений. Чревато это тем, что вместо продвижения новых продуктов продавцам иногда приходится устранять возникающие проблемы.
От изобретательности сервис-провайдера зависит успех его клиентов, поэтому нельзя умалять важность усовершенствований, но всё же культура изменений ради самих изменений ущербна по своей природе. Если и принимать её, то важно, чтобы новшества были высококачественными. Именно такую стратегию выбрала компания ServiceNow, она именует её «Красной линией». Не исключено, говорит Лейнванд, что такой подход в организации работы станет доминирующим в отрасли.
В его основе лежит методика гибкой разработки, позволяющая клиенту рассчитывать на получение качественного ПО посредством собственного участия в разработке. Во главу угла ставится тщательная проработка деталей и дизайн. Вот как «Красная линия» применяется в ServiceNow.
Найдите свою «Красную линию»
Компания впервые применила эту методику несколько лет назад. Она позволила отыскать баланс, который позволяет качественно поднять уровень существующих сервисов, наполняя его новыми опциями без ущерба для их работоспособности. Применение «Красной линии» помогает контролировать расходы на поддержку и, что более важно, определить степень удовлетворения клиентов новыми функциями.
Контроль за скоростью их внедрения — ещё одна сторона методологии, позволяющая наблюдать за процессом выполнения задач инженерными командами ServiceNow. Заданное для каждой из них определённое количество задач (для улучшения сервисов компании), которые требуется решить на протяжении месяца, делится на общее количество клиентов. Одновременно задачи классифицируются в разрезе каждой команды.
С этого момента «Красная линия» превращается в наглядный индикатор процесса разработки, который отображается в виде доски задач, или диаграммы сгорания задач. Далее всё происходит следующим образом. К примеру, если по техзаданию требовалось разрешить 10 вопросов и у нас имеется 100 клиентов, то красная линия пройдет на отметке 0,1. По мере того, как у заказчика или у вас «созрели» новые, требующие разрешения задачи, — например, их количество выросло до 1 тыс. — красная линия будет на уровне 10.
Основное назначение диаграммы сгорания — отображать фактическую оставшуюся трудоемкость поставленных задач за определенный интервал времени (этот показатель обычно маркируется зеленой линией) и сопоставлять ее с идеальной оставшейся трудоемкостью. Последняя как раз и свидетельствует о ходе выполнения работ. Вертикаль диаграммы показывает объем работ, например, выраженный в часах. По горизонтали отложены календарные дни.
Красная линия всегда прямая и выходит из точки, соответствующей началу и исходному объему работ. Заканчивается по достижению плановой даты работ, когда задач не должно остаться вовсе. Таким образом, это идеальный график выполнения вашей командой задач, показывающий, сколько часов вы должны «сжигать» каждый день, чтобы успеть выполнить все задачи к окончанию сроков сдачи.
График выполнения задач отображается зеленой кривой, демонстрирующей реальную оставшуюся трудоемкость на каждый день. Если кривая расположена под красной линией — это означает, что ваша команда движется с достаточной скоростью и успевает завершить работы к намеченному сроку. Если зеленая кривая располагается над красной, то вам нужно либо повлиять на скорость команды, либо исключить какие-то задачи, поскольку иначе вы не успеете к намеченному сроку. Нужно отметить, что сложность задач в agile-методике «Красная линия» не учитывается — все задания равноценны.
«Красная линия» и DevOps
Руководство компании обычно довольствуется ежемесячными отчётами о ходе выполнения задач, но настоящая ценность «Красной линии» заключается в том, что команды сами могут ежедневно в режиме реального времени мониторить количество задач и принимать соответствующие решения. Более того, это позволяет им оперативно работать с заказчиками, меняя техзадания «на лету». Такая практика существенно снижает появление у заказчика недоработанного продукта — он ведь тоже принимает участие в разработке нового или доработке имеющегося продукта.
И уж совсем очевидно, что использование «Красной линии» экономит время, позволяя выявить в процессе работы не только значительные проблемы, но и, казалось бы, малосущественные детали, которые очень часто оборачиваются большими проблемами. А ведь когда речь заходит о сложных проектах, то иногда возникают повторяющиеся или пересекающиеся для каждой команды вопросы. Как уже говорилось, устранить их поможет чёткая классификация и разделение труда.
Корректировка работы команд
Очень непросто выдержать правильный баланс между нововведениями и работоспособностью вашего продукта, но в любом случае теперь за этим процессом можно наблюдать и корректировать. Если красная линия идёт с наклоном вниз — у команды имеется время на обновление новых услуг или функций; линия пошла вверх — это значит, что появились требующие решения проблемы; линия ровная — это когда команда выдает качественный результат, но и об инновациях не забывает.
Если какая-то из команд на протяжении нескольких кварталов не может выйти из пике, то есть красная линия в указанном промежутке устремляется вверх, ответственные лица могут помочь ей избежать проблем (прежде, чем они не перерастут в большие), перебросив для их решения кадровый резерв. Ключевым здесь является понимание проблем, ведь в одних случаях они не столь серьёзны и могут возникнуть, например, из-за отсутствия точной документации. Её можно относительно просто устранить, покопавшись в архивах
Ситуация усложняется, когда заказчик при установке нового ПО жалуется на проблемы с производительностью — и тогда, возможно, вашей команде потребуется ознакомиться с ситуацией на месте. Важно, что «Красная линия» помогает разобраться с возникающими проблемами, классифицируя их по сложности и времени устранения. Это помогает компании улучшать качество продукции и повышать уровень удовлетворенности клиентов.
«Красная линия» должна стать частью мышления...
Компания, желающая взять на вооружение agile-методику, не должна сторониться разработчиков, возлагая на них ответственность за результат. Всё должно быть ровно наоборот: руководству компании нужно наладить с программистами тесный контакт и вновь и вновь информировать их о важности «Красной линии».
Нужно заметить, что инженеры ServiceNow довольно быстро освоились в методологии быстрой разработки, научившись балансировать между «введением нового и сохранением старого». С момента внедрения «Красной линии» прошло четыре года и команда инженеров выросла с 50 до 700 человек, но это не мешает применять методику. Причём происходит это самым естественным образом: старожилы сами делятся с новичками опытом, в остальном возникший у них энтузиазм подпитывается результатами диаграмм сгорания и командным духом соперничества.
Мы свыклись с мыслью, говорит Лейнванд, что «Красная линия» постепенно стала центром нашей жизни и мерилом принятия важных решений — она позволяет повышать качество продуктов и добавлять в них нужные функции тогда, когда этого требует заказчик. Фактически, это он помогает нам двигаться к успеху, добавил он.
...и общеотраслевым стандартом
Внедрение инноваций в облачном бизнесе опережает требования клиентов. Конечно, на существует некоторое число компаний, действующих острие ИТ, которым это требуется для выживания. Но для подавляющего числа «обычных» компаний из числа СМБ эти инновации избыточны. Им лучше сосредоточиться на тех средствах, которые действительно нужны. И вот здесь на помощь приходит «Красная линия». Понятно, что при запуске стартапа вектор развития направлен на ИТ-прорыв (Uber, Oculus, Palantir, Snapchat...), но как только у компании появится первая клиентура, то ей придётся поразмыслить над тем, как состыковать «режим полета творческой фантазии» с её (клиентуры) потребностями. Действуя с оглядкой на клиентов, нужно будет выстроить полигон для наладки и тестирования существующего продукта наряду с совершенствованием его функционала.
Что касается ServiceNow, то, как говорит Лейнванд, «Красная линия» в корне изменила подход его компании к обслуживанию клиента, вынеся его на первое место. Он считает, что полученный компанией опыт может изменить корпоративную культуру, перенацелив её на клиентов.