Байка-20. IT шашлыки, или приорити против северити.

В летний теплый денек выбрались на шашлыки. Чтобы было не скучно, устраивали конкурсы. Понятно, что центральный конкурс – конкурс шашлыков. Дюжина поваров и три дюжины зрителей. Условия конкурса были зверскими. Старт давался в 12:30. В это время можно было первый раз подойти к своей площадке. А в 13:55 нужно было снять готовый шашлык. Никто не имел права помогать повару в готовке. Разве что мангал и стол установить. На конкурс шашлыков каждый повар приносил пятилитровую кастрюлю собственноручно замаринованного мяса. Допускались: свинина, говядина, оленина, медвежатина, индейка, гусь, курица. Т.е. звери и птицы. Но не рыба и не ракообразные. Дюжина поваров, три дюжины участников, неторопливые рассказы баек, погожий день – что еще надо для отличного отдыха?

Заяц и Шляпник, ловя завистливые взгляды остальных поваров, быстро установили на своих площадках стационарные мангалы на высоких ножках, сваренные из четырехмиллиметрового железа. А между ними поставили общий разделочный стол. Шляпник вывалил в мангал кучу древесного угля, а Заяц разложил в мангале поленья.

Напевая

… Время все расставит по местам,
всех вождей - по весу и по росту.
Старые погосты залатав,
мы построим новые по ГОСТу.

Заяц критически осмотрел конструкцию из поленьев и плюхнулся на скамейку.
- Тоже к нашему столу? – спросил Шляпник, приближающуюся к ним компанию.
- Да, вот нашел Время и решил присоединиться к вам. – ответил ухмыляясь Чеширский.

Время, Кот, Синичка, Королева и Оруженосец чинно расселись за столом. Чеширский поставил в центр огромный чайник, а Синичка вывалила на тарелку пирожки.
- С капустой! – воскликнул Заяц, надкусив пирожок. – И явно от бабушки Фреш.
- Угу. Сегодня первое место в конкурсах «чая» и «к чаю» можно считать определившимися. – И Шляпник перевел разговор на производственную тему. – Прикиньте, что сделали эти наши субподрядчики. Они попросили нас заполнить анкету о «проделанной ими работе».
- Э… Ну вроде нормальная процедура, направленная на улучшения качества обслуживания. –Промолвил Оруженосец.
- Не-а. Это грязная манипуляция, в стиле китайских концлагерей.
- Описанная Чалдини в книге «Психология влияния».
- Если мне не изменяет память, - добавил Кот, - глава «Обязательство и последовательность».
- Мы решили немного копнуть для очистки совести. Спрашиваем – а вам зачем? Отвечают. Честно отвечают, что от этого премия их зависит. Спрашиваем дальше. А начальство в курсе ваших просьб поднять вам премию? В курсе. Начальство говорит, что если удалось наладить контакт с заказчиком, то проект успешен.

- Н-да, - протянул Время – Тут они и спалились. Цель анкеты не в том, чтобы улучшить качество обслуживания. Анкету можно вообще не читать. Смысл в том, чтобы заказчик ее написал. Именно за это премию проектной команде и дают. Не за хорошо выполненный проект, а за то, чтобы заказчик написал положительную рецензию.
- А для проектной команды у них это используется как KPI. А все, что можно использовать как KPI не проходит «быстрые проверки управленческих решений» и должно быть предано анафеме, - добавила Королева.
- Но рецензию то вы написали? – поинтересовалась Синичка.
- А то. Втроем писали. Заяц, Чеширский и я. Влепили им по единице по всем пунктам, порекомендовали ознакомиться с рекомендациями по оформлению проектной документации. В частности ГОСТ-ами второй серии. Ну, например, ГОСТ 2.105. Спросили, знакомы ли они с «перекрестными ссылками» и правилами подписи таблиц и рисунков. И что использование процессорного времени в люниксе считается немного по другому, чем в винде.
- Потом Шляпник познакомил их с теорией систем, - перебил Шляпника Заяц, - и указал, что ограничение производительности системы не может быть одновременно в четырех местах: процессор, память, сеть и дисковая подсистема. А в одном, только одном. Т.е. весь их отчет стоит дешевле, чем бумага, на которой он напечатан.
- А Чеширский спросил, почему у них есть сертификат CMMI четвертого уровня, но при этом проектная команда пишет проектные документы отвратительного качества. Ведь шаблоны проектной документации и правила их использования внедряются при переходе на второй уровень.
- Да купленный у них сертификат, купленный, – констатировала Королева.
- Но самую большую подляну кинул Заяц. Он робко поинтересовался, имеет ли смысл публиковать отчет в корпоративном блоге на хабре.

Оруженосец и Синичка синхронно поперхнулись чаем.
- Да не будем мы публиковать, не будем. Но аванс им придется вернуть. Т.к. результат работы полностью отрицательный.
- Нулевой?
- Нет, отрицательный. Мы же свое время тратили на них.
- Запомните, - подвел итог Чеширский, - если после проекта, или тренинга, или семинара, вас просят ответить «понравилось / не понравилось» - вами пытаются манипулировать.

- Слушайте, а чего вы сидите? Вон остальные у мангалов суетятся, уголь разжигают, мясо нанизывают.
- Потому что преждевременный старт проекта приносит фирме больше вреда, чем запоздалый, - ответила Королева. – Проект считают с конца. Шашлык из свинины должен готовиться восемнадцать с половиной минут.
- Ну, не с такой точностью, - поморщился Шляпник, - но в целом верно. Как говорилось в старом советском фильме ЕМНИЛ, «Мальчик со шпагой», «Держать шпагу нужно как птицу. Возьмешь сильно – задушишь. Возьмешь слабо – улетит.» Готовка шашлыка очень похожа на проект. Дашь мало времени – будет подгоревшим, а в середине не сготовится. Дашь много времени – получишь сухое мясо. Снимешь поздно – оставишь зрителей голодными. Снимешь рано – остынет. Так что пока сидим, чаи гоняем.

- Мне казалось, что на шашлыках приняты другие напитки? – робко поинтересовалась Синичка.
- Кому как. По мне, так зеленый чай перед приемом тяжелой пищи очень даже хорошо.
- Или белый.
- Или красный.
- Или желтый.
- Или масала.
- А это что? – Недоуменно спросила Синичка, наливая густую, белую с желтизной жидкость из чайника.
- Один из вариантов калмыцкого чая, с кучей редких ингредиентов, - улыбнулся Чешикский. – Отличная штука, когда до основного блюда еще полтора часа.
- Ну и задачку ты им задал, - протянул Шляпник, отхлебнув чая и перевел стрелки разговора в деловое русло, - Армигер, а чего тебя не было видно в последние дни?

- Приоритеты для задач расставлял.
- Забудь ты это поганое слово, приоритет, - ввернул Заяц.
- А чего так? – удивился Оруженосец.
- Начнем с прошлого времени, - начал рассказ Время. - Была такая фирма, Rational. Сотрудники этой фирмы сделали чертовски много для развития науки разработки программного обеспечения. И многие их наработки до сих пор в разы круче всевозможных скрамов, канбанов и прочих эджайлов. В частности, они выпустили один из лучших или до сих пор лучший трекер ClearQuest. И там, в настройках по умолчанию было два фасета: «Важность и срочность». Сейчас их путают, а иногда просто оставляют один – «приоритет» или, другое название – «срочность». Использование только «срочности» приводит к тому, что задачу нужно делать «вчера, вчера, позавчера». Это плохое управление. Есть квадрант Эйзенхауэра. Сочетающий важность и срочность. Идея о том, что основное внимание руководителя должно быть сосредоточено на важных, но не срочных задачах довольно любопытна. Но от срочности лучше бы отказаться. Большое количество срочных задач в разработке программного обеспечения, как правило, плохо.
- Угу, - проворчал Заяц, - Была у меня как-то работа… - Заяц поднял глаза к небу. – Там, если говорили: «Да через недельку доработку можно сделать»,- то нужно было начинать делать после завершения очередной задачи, а если говорили: «Срочно, срочно», - то делать вообще было не нужно. Через час отменяли задачу. Важность важнее срочности. А разницу между ними прекрасно описал Александр Лобач много лет назад: http://alexlobach.ru/2009/07/severity-priority.html

- Ну так вот. – продолжил Время. – Есть множество отвратительных способов управления задачами. Среди них: кто громче крикнет, кто больший зануда и кто получает наибольшую зарплату. Эффект эксперимента Милгрема привел к тому, что часто на совещаниях военных, первым высказывается младший по званию.
- Есть плохие методы. Срочность, или приоритет – плохой способ.
- А хорошие?
- Например, порядок исполнения. Очень хороший способ. Есть и другие. Разберем важность. Разберем на примере ошибок, пропущенных в прод. Пусть за время тестирования релиза тестировщики нашли 85 дефектов, а после выпуска в промышленную експлуатацию пользователи нашли еще 15 дефектов. Всего найдено 100 дефектов. Насколько плохой софт выпустили?
- 15% в проде это многовато, - сказал Оруженосец,- имело смысл задержать релиз на пару дней. Пожертвовать показателем time2market (срок вывода продукта на рынок) в пользу бездефектности.
- Верно. Бездефектность и time2market находятся в состоянии равновесия по Парето.
- Это которые 20 на 80? - Спросила Синичка.
- Не, не, не, - замахал руками Время, - не путай распределение Парето и равновесие Парето. Равновесие – это ситуация, когда ты не можешь улучшить одну характеристику, не ухудшив другую. Вернемся к теме. Вот две ситуации. Два проекта.

1.PNG

- И там, и там в прод пропущено 15% ошибок.
- Но ситуация кардинально различается, вставила реплику Королева. – Вопрос в том, насколько кардинально.
- Проект «А» - хорошее качество, проект «B» -плохое, - потер лоб Оруженосец.
- А насколько одно хуже другого? В этом то и есть вопрос.
У Зайца заиграл брегет.
- Ша. Пауза.- Заяц и Шляпник синхронно встали. Заяц зажег спичку и поднес к заранее сложенным дровам, а хитрый Шляпник просто включил строительный фен и положил его в угли. После чего приятели вернулись за стол.
- Существует несколько способов ранжирования. Разберем на примере конкурса шашлыков, проходящего сейчас. Двенадцать поваров. Худший получает ноль очков, следующий единичку, и потом очки идут по ряду Фибоначчи. Итого, оценки: 0, 1, 1, 2, 3, 5, 8,13, 21, 34, 55, 89. Максимум – 89. Точно так же можно привести соответствие «важности» дефекта или фичи. Например: 1, 2, 3, 5. И картина «несколько» меняется.

2.PNG
- Семь процентов и двадцать пять процентов – это две большие разницы.
- А вот отставание по времени подачи шашлыков измеряется по функции Тагути. Одна минута отставания – один штрафной балл. Две минуты – четыре штрафных балла. И далее квадратичная последовательность. Максимум разрешено опоздать на 7 минут, а это 49 баллов штрафа. В случае с дефектами получается еще одна картинка:

3.PNG
- А вот это уже похоже на правду, - протянул Оруженосец. – Разница между результатами проектов по бездефектности более чем в семь раз. И первый я бы выпустил, а второй зарезал.
- Но есть еще варианты. Есть квадрант «Важность / неопределенность». По нему можно определять порядок реализации фич и исправления дефектов. А можно оценивать чай на наших шашлыках. В случае с фичами: сначала делаем важные с высокой неопределенностью, затем важные с низкой неопределенностью. И, если время осталось, или Время разрешил, то далее делаем маловажные фичи с высокой определенностью. А потом с малой определенностью. Этот подход Влад Балин хорошо описал. У нас так ранжируется конкурс чая. «Хороший / обычный» и «Высокая / низкая сложность приготовления».
- А в баллах?
- А в баллах идет по степенной функции. Низшая оценка «Просто и обычно» - число «е», округленное до целого. Итого – 3. Далее «е» в степени два. Итого -7.Высшую оценку, естественно, получит Чеширский -55. За самый сложный и самый лучший чай.
- И что лучше использовать в проектах?

- А нет лучшего. Каждому проекту – свое. Закончил Время.
А Заяц и Шляпник пошли готовить шашлыки.

Оставьте комментарий

Вы должны войти, чтобы оставить свой комментарий.