Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Бэклог. Что и когда делать






Первое, что полагается делать, когда приступаешь к проекту по методике Scrum, — создать список требований к функцио­нальности продукта; список должен быть упорядочен по сте­пени важности задач, подлежащих реализации. Традиционно такой список называется «бэклог»[331]. Иногда он содержит сотни заданий, иногда — всего несколько задач, о которых нужно ду­мать в первую очередь. Само собой, требуется иметь четкое пред­ставление, что вы хотите получить в конце своего проекта. За­дание может быть любым: программное обеспечение; свадебная церемония; услуга, новая вакцина, перекрашенный дом. Жела­тельно без промедления — едва только сложится концепция замысла — детально продумать все, что потребуется для нормаль­ного хода работ. [332]

Недавно я консультировал компанию, которая выпускает си­стемы автоматизации зданий. Отопление, вентиляция, электри­чество, водоснабжение, кондиционирование — в общем, «все в одном». Один из их новых продуктов представлял собой про­граммное обеспечение для домашней автоматизации, управляю­щей важнейшими системами в жилом помещении: открыванием входной двери; включением осветительных приборов; расхо­дами на отопление и многим другим — причем все осуществля­ется с мобильного устройства. Перед началом проекта разработ­чики, собравшись за одним столом, составили большой список: переключатели, контроллеры, интерфейсы, сенсоры, протоколы коммуникаций и прочее в таком же духе — то есть в нем были перечислены детали, которые понадобятся для нормально функ­ционирующей системы. Не ее принципы, не этапы рабочего про­цесса, а именно пожелания пользователя. Например, следующее пожелание: «Мне как хозяину надо видеть, кто звонит в дверь, чтобы открывать только тем, кого я хочу впустить в свой дом». Были записаны сценарии об открывании ворот гаража, включе­нии систем отопления и вентиляции, контроле над состоянием электросети. Разработчики продолжали писать до тех пор, пока не зафиксировали все функции системы. Список оказался длин­ный — в несколько сотен пунктов. Система обещала быть боль­шой, сложной и весьма привлекательной для пользователей.

Смысл составления бэклога представляет создание макси­мально полного перечисления требований, предъявляемых к функциям продукта. На самом деле никто и не собирается выполнять подряд каждый пункт, но такой документ, содержащий все, что в принципе могло бы быть включено в концепцию про­екта, всегда должен находиться под рукой. Некоторые требова­ния отбираются в первую очередь.

Основной момент, нас интересующий, — принцип расстановки акцентов. Для этого нужно выяснить, какие пункты списка:

— имеют самое большое значение для хода работ над проектом;

— важнее всего для заказчика или будущего потребителя;

— принесут максимальный доход;

— проще всего осуществить.[333]

Следует сразу уяснить простую вещь: в списке полно зада­ний, до которых у вас никогда не дойдут руки, но вам требуется выбрать те, что принесут наибольшую пользу при наимень­шем риске. Поскольку Scrum придерживается поступательной модели разработки и поставки — на языке программистов эта модель называется инкрементальной, — надо начать с такого набора возможностей продукта, который немедленно прине­сет доход; тем самым вы снизите риски, связанные с проек­том. Потому сначала советую отбирать основные функцио­нальности.

Хотите оказать быструю услугу заказчику? Тогда берите требование с наивысшим приоритетом, выполняйте его — и, полностью сделав, демонстрируйте клиенту. Это мо­жет быть лишь небольшая часть крупного проекта, но ее нужно исполнить до готовности, чтобы не было стыдно показать всем заинтересованным лицам. Перекрашивая дом, начните в пер­вую очередь с обновления гостиной и доведите работу до конца (вплоть до того, что уберете оттуда грязные тряпки и банки с краской) — это будет часть вашего проекта, выполненная целиком.

В первой главе я уже говорил о непреложном правиле, не раз подтвержденном на практике: 80 процентов успеха и ценно­сти продукта заложены в 20 процентах его функциональных возможностей. На минутку задумайтесь. Что бы вы ни приоб­рели, основная ценность товара или услуги, то есть самое не­обходимое, содержится в пятой части того, что было сделано. Этот универсальный принцип, естественно, касается и любой проектной разработки программного обеспечения. Вернемся к нашей компании, выпускающей системы автоматизации зданий. Разработчики, составив перечень требований, предъ­являемых к функциям продукта, принялись внимательно его перечитывать, причем они прекрасно понимали — действи­тельно понимали, — что из всего огромного списка потреби­тель заинтересуется лишь 20 процентами предложений.[334] Се­крет мастерства методики Scrum заключается в том, что с ее помощью вы докопаетесь до истины и определите эти 20 про­центов. При традиционном подходе к производству исполни­тели работают вслепую, не зная, в каких глубинах проекта закопаны таинственные 20 процентов. Однако они сразу на­ходятся, когда готовый продукт становится собственностью потребителя. Из чего мы делаем вывод: целых 80 процентов усилий работников совершаются впустую. Мое отношение к потерям вам хорошо известно.[335]

Вы никогда не думали о таком беспроигрышном варианте, как выпускать новую продукцию в пять раз быстрее своих кон­курентов, при этом впятеро повысив ее рыночную ценность? А вот разработчики из компании по автоматизации — они за­думались. И опять сели за свой бесконечный список, но на сей раз не для того, чтобы его перечитывать, а чтобы решить ряд вопросов. Им предстояло разобраться, за какой участок работы они возьмутся завтра, установить, какие функции системы нуж­нее всего для потребителя, и понять, как повысить эффектив­ность системы и вывести ее на рынок быстрее всех. По утверж­дению Скотта Максвелла, сложность не в том, чтобы решить, чего ты хочешь достичь, — намного труднее понять, что ты мо­жешь выполнить. Это относится к любому виду деятельности, независимо от того, строите ли вы дом или собираете автомо­биль, пишете ли книгу или производите компьютерную игру, боретесь ли с преступностью или убираете мусор. Попытайтесь установить, как принести наибольшую пользу в кратчайший срок с наименьшими усилиями, — и немедленно принимай­тесь за дело. Затем, с каждым следующим этапом, продолжайте наращивать ценность проекта. Таким образом, довольно бы­стро — быстрее, чем могли подумать, приступая к работе, — вы создадите продукт, который можно будет представить за­казчику или выпустить на рынок. Иными словами, вы довольно скоро достигнете реального результата. Только и нужно, что правильно определить приоритеты.

Как это сделать? Рассказываю. Для начала вам понадобится человек, который сможет определить концепцию проекта, сфор­мулировать требования заказчика и установить необходимые пользователю основные функциональности продукта. В скрам-команде человека с такими обязанностями мы называем вла­дельцем продукта. [336]

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал