Не уверен, правильно ли вы понимаете это слово

В последние годы Scrum распространился по всему миру, зачастую под знаком Agile (гибкости). Теперь это уже способ работы не только технологических компаний и производителей ПО, но и многих крупных компаний почти во всех сферах. И он становится все популярнее. Компании, которые специализируются на банковском деле, автомобилях, медицинском оборудовании, биотехнологиях, страховании, здравоохранении и других областях, приняли agile как способ идти в ногу со временем. Такие ведущие компании, как Bosch, Coca-Cola, USAA, Schlumberger, Fidelity и Lockheed Martin, обратились к Scrum, чтобы доставлять ценность и качество с необходимой в нынешнем мире высокой скоростью.

Многое в этом методе обусловлено цифровыми трансформациями. Суть в том, что сошедшее на нет разделение между IT и бизнесом — к лучшему. Сейчас каждая компания технологическая, программное обеспечение поглотило мир. В вашей машине больше строк кода, чем в Windows. Да даже моя новая стиральная машина хочет знать пароль от Wi-Fi.

Теперь компании, зачастую с подачи CEO, который посмотрел TED Talk [Серия образовательных видео в формате коротких выступлений со сцены. Здесь и далее — прим. науч. ред., если не указано иное.] или услышал о преимуществах Agile от товарищей либо консалтинговой компании, решают, что «после нас хоть потоп» и гибкими стать нужно.

И на этом моменте, думаю, пора дать определение термину Agile («гибкость») и тому, как с ним соотносится Scrum. Scrum появился в 1993 году, и был формализован его двумя соавторами — Джеффом Сазерлендом и Кеном Швабером — в 1995 году. В середине 1990-х в новостных группах Usenet [Usenet (англ. User + Network, букв. сеть пользователей) — компьютерная сеть, используемая для общения и публикации файлов.] и на конференциях многие пытались придумать пути разработки программного обеспечения, которые обеспечили бы меньшую частоту провалов.

В 2001 году семнадцать таких людей на пару дней собрались вместе на горнолыжном курорте в городе Сноуберд. Мой отец Джефф Сазерленд был там, как и Кен Швабер, и еще один ранний адепт Scrum Майк Бидл, и четырнадцать человек с разным прошлым и разными методологиями. Однако все они признавали, что пытались решать одни и те же проблемы. Пути их были схожи, но не одинаковы.

В первый день, как мне рассказали некоторые из присутствовавших там, они спорили. В основном о том, как же назвать подход, что они нащупали, но которому еще не дали имя. К концу дня Майк Бидл предложил слово agile. Все согласились с тем, что оно лучше других предложенных, вроде lightweight («легковесность»). Так они решили назвать подход гибким. А потом начали обсуждать, что же именно это будет означать.

На следующий день они снова спорили. Хорошо, они нашли гибкость, но что же это значит? Как ее описать? Девятеро из тех, кто был в комнате, решили выйти покурить, восемь остались внутри. Один из них, Мартин Фаулер, подошел к доске и сказал что-то вроде: «Не правда ли, будет жаль, если мы так ни к чему и не придем за эти два дня?» И примерно за пятнадцать минут восемь человек, что остались в комнате, пришли к следующему.

...

Мы постоянно открываем для себя более совершенные методы разработки ПО, занимаясь разработкой непосредственно и помогая в этом другим. Благодаря проделанной работе мы смогли осознать следующее.

Люди и взаимодействия важнее процессов и инструментов.

Работающий продукт важнее исчерпывающей документации.

Сотрудничество с заказчиком важнее согласования условий контракта.

Готовность к изменениям важнее следования первоначальному плану.

Иначе говоря, не отрицая важности того, что справа, мы все-таки больше ценим то, что слева.

Пятнадцатью минутами позже, когда остальные вернулись в комнату, один из них, Уорд Каннингем, изобретатель Wiki, помимо прочего сказал: «Это невероятно!» И они не изменили ни слова в этих формулировках.

Таков Agile. Это утверждение ценностей. Остаток дня они придумывали двенадцать принципов Agile, например «Простота — искусство минимизации лишней работы — крайне необходима» и «Над проектом должны работать мотивированные профессионалы. Чтобы получить результат, создайте условия, обеспечьте поддержку и полностью доверьтесь им» и «Постоянное внимание к техническому совершенству и качеству проектирования повышает гибкость проекта». Это прекрасно, но в принципах нет описания того, как следовать им. Нет фреймворка, методологии. Только четыре ценности и несколько принципов, согласующихся со здравым смыслом.

Но они изменили мир. Участники того мероприятия выложили свой Agile-манифест на сайте agilemanifesto.org и разъехались по домам для того, чтобы нести тяжкое бремя следования ему. Тогда они еще не знали, что подход распространится далеко за пределы мира программного обеспечения.

Но запомните: если кто-то заявляет о своей гибкости, очень важно уточнить, что именно он под этим понимает. Scrum — самый популярный гибкий фреймворк, около 70 % agile-команд используют его, но он ни в коем случае не единственный. Именно поэтому, зная только то, что компания условно гибкая, вы не сможете составить полной картины.

Закон Мура, применимый к людям

Если вы никогда раньше не слышали о Scrum либо имеете поверхностное представление о нем и пока не уверены в том, поможет ли он вашему бизнесу, я немного расскажу вам о том, как появился Scrum и зачем он нужен.

С конца 1980-х жители Кремниевой долины размышляли о том, как закон Мура повлияет на технологический прогресс. Поскольку создаваемые устройства могли делать всё в большем количестве, проекты по разработке программного обеспечения становились всё сложнее и, к сожалению, чаще терпели неудачи, оборачиваясь всё большими потерями времени, энергии, продуктивности и мечтаний.

Для примера возьмем проект TAURUS Лондонской фондовой биржи, появившийся примерно в то время. TAURUS — акроним от Transfer and Automated Registration of Uncertified Stock (передача и автоматическая регистрация бездокументарных акций). Проблема заключалась в том, что система урегулирования при конвертации валюты использовала ПО под названием Talisman. Урегулирование — на самом деле красивое словечко для обозначения «того, за что ты заплатил». После того как вы купили на фондовой бирже ценные бумаги, их доставка в ваш портфель могла занять две-три недели и включала переправку настоящих бумажных акционерных сертификатов из одной точки в другую. Система расчетов, покупки и продажи долей называлась Seaq. Она была электронной, но не совместимой с Talisman, которая обгоняла ее на несколько лет.

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

Однако он по-прежнему оставался невероятным. Он интегрировал бы семнадцать разных систем. Восхитительно! Согласно статье Хамиша Макрая, опубликованной в журнале Independent 12 марта 1993 года, проблема была трехсторонней. В первую очередь, попытка создать с нуля огромную систему программного обеспечения и запустить ее, как Вселенную большим взрывом, невероятно рискованна, не допускает даже малейших ошибок или просчетов. Любая досадная мелочь будет иметь катастрофические последствия. Правда, такой подход часто встречался в те времена и существует до сих пор. Компании невероятно рискуют, ставя на то, что масштабная система сразу сможет все исправить. По данным Standish Group, около 40 % проектов, работающих по этому принципу, провальны [standishgroup.com/sample_research_files/CHAOSReport2015-Final.pdf.]. Половина из них затягивает сроки, половина превышает бюджет и не обеспечивает то, для чего была предназначена изначально. В случае с TAURUS расклад тоже оказался не в пользу системы, которая должна была полностью заменить систему урегулирования платежей в одном из мировых финансовых центров.

Второй аспект проблемы, согласно Макраю: хотя иметь систему важно, но если есть хорошая система, которая работает, и идеальная, которая не работает, то выбирать нужно первую. Не позволяйте лучшему стать врагом хорошего. В проекте TAURUS, как и почти в любом другом проекте, неконтролируемое расширение масштаба стало удавкой на шее. «Правда, здорово было бы, если бы новая система делала не только то, что мы уже продумали и о чем нас попросили, но и вот это? А если бы она еще варила идеальный эспрессо, пока люди ждут завершения сделки? Еще лучше ведь», и т. д. В итоге проект, который вначале был прост и хорошо определен, становится машиной Голдберга [Машина Руба Голдберга, или машина Робинсона — Голдберга (от фамилий американского карикатуриста Руба Голдберга и Уильяма Робинсона), — заумная машина, устройство, выполняющее некое простое действие крайне сложным путем, по длинной цепочке взаимодействий. В ироничном смысле — любая избыточно сложная система. Прим. ред.], решающей все проблемы всех людей. При этом, естественно, неспособной выполнять простейшие задачи, поставленные изначально.

Я постоянно наблюдаю это в компаниях на примере одной корпоративной системы: SAP [SAP (от System Analysis and Program Development) — немецкая компания-производитель программного обеспечения для организаций.]. SAP — лидер рынка в сфере систем планирования ресурсов предприятия (Enterprise Resource Planning, ERP). Системы ERP нацелены на выполнение всех задач. Это гигантские базы данных, которые отслеживают ресурсы — например, денежные средства, необработанные материалы, производственные мощности — и соотносят их с платежными ведомостями, счетами на оплату, заказами и т. д. Они затрагивают каждый аспект деятельности компании: закупки, продажи, человеческие ресурсы, бухгалтерию, производство, буквально все, — и интегрируют это в цифровой формат. На самом деле такие системы неплохо работают, если вы используете их в стандартных конфигурациях.