banner banner banner
Байки для оруженосца
Байки для оруженосца
Оценить:
Рейтинг: 0

Полная версия:

Байки для оруженосца

скачать книгу бесплатно


Байка для оруженосца 3. Пятница тринадцатое или прикладное неестествознание в старый новый год

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

Легкой походкой на кухню влетела Королева.

CC. Ваше Величество, вы светитесь, как будто вы Ваша Светлость. Нет, даже как Ваше Сиятельство.

Q. О, да, мой вечно исчезающий друг. На этой неделе мне удалось прибить две дюжины вампиров!

CC. Отличный результат! На прикладе вашего плюсомета скоро не останется места для новых отметок.

A. Какие вампиры?

CC. Вампиры, молодой человек – это такие создания, которые пьют кровь или жизненные силы.

A. Спасибо, кэп. Но все-таки?

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

A. А второе?

Q. Как?! Ты прослушал?! Ты прослушал «Второе правило»?! Тогда слушай внимательно еще раз и не говори, что не слышал. Молодежь попробует вести эти карточки в вики, трекстудии или в праймовере. Это само по себе не плохо. Но только настоящие, посвященные шаманы знают, что отпугивающим эффектом обладает лишь бумажная карточка, которая лежит в папке Сумера в тумбочке Галант с наклеенным цветным стикером резолюции.

A. Почему «Сумера»?!

H. Потому что коза – Зойка. В этом деле мелочей не бывает – раздалось с углового стола.

Королева неодобрительно покосилась в угол

Q. – Потому что править нужно сидя лицом к югу. – и продолжила -

Подобный амулет начального уровня неплохо отгоняет бесполезные проекты-вампиры.

A. Вы сказали бесполезные? А что бывают вредные?

Q. Сколько угодно.

A. Против них этот амулет действует?

Q. Нет. Против вредных проектов нужно более сильное колдунство. Кроме того, есть еще проекты-зомби. Их также сложно отпугнуть этим амулетом.

A. Мадам, а не могли бы вы показать пример карточки?

Q. Нет. – Отрезала королева. – Все запасы амулетов были израсходованы в ходе похода против нежити. -Подумав, королева добавила – И нечисти.

На самом деле Королеве отчаянно хотелось чаю, а этот несносный мальчишка никак от нее не отставал.

CC. К счастью у меня завалялась парочка. – Чеширский кот с видом фокусника достал шляпу, отданную ему Шляпников в обмен на услугу. – Вуаля! – и он вручил оруженосцу листок формата A4.

Мартовский Заяц и Шляпник вскочили и в панике забегали по кухне.

H&MH. Карточка! Карточка! Караул, карточка!

Q. Фигляры, – неодобрительно бросила королева. Впрочем, строгость была напускная. Королева прекрасно знала силу этого тандема. Эта парочка аналитик-программист давала фору команде из двух десятков человек. Хотя получать лулзы от их закидонов умели далеко не все. Королева умела. За что ее особенно ценило руководство. Ходили слухи, что руководитель департамента разработки бросил пить после того, как королева забрала этот тандем к себе. И отменил еженедельные отчеты. Чем поверг всю организацию в ступор. Ну, отчеты ладно, с кем не бывает. Но бросить пить!

Армигер начал внимательно рассматривать листок, а Чеширский кот в это время комментировал.

CC. Оформление делается шрифтами Verdana или Tahoma, 12-ым кеглем. В исключительных случаях для проектов с высоким коэффициентом полезности допускается 11-й кегль.

A. Но здесь же катастрофически мало места! Почему бы не расширить на две-три страницы?

CC. Если карточка проекта будет оформлена на двух страницах, то она немедленно отправится в корзину.

A. А почему здесь нет больших проектов?

CC. Большому проекту – большую торпеду. A3.

MH. Убил. – немедленно откликнулся Безумный Мартовский Заяц.

A. А если полезность будет на границе, то значит можно считать не целое число, а 0.1, 1.5

CC. Не стоит.

A. Почему?

Q. Ты соврал в резюме, что учился в институте? – спросила королева ледяным тоном.

A. Э-э-э…

CC. Королева намекает, что еще на первом курсе вашего института студенты изучают правила расчета погрешностей. Не использовать эти знания на практике довольно глупо. Не находишь?

Армигер смутился.

A. А вот здесь ошибка. Коэффициент полезности должен вычисляться, как одно делить на другое. А здесь минус…

Q. Я уже сказала: «Головы с плеч»? – глядя в пространство спросила королева.

H&MH. Нет, моя госпожа – синхронно ответили Шляпник и Заяц и также синхронно втянули головы в плечи изображая крайний испуг.

CC. Ну же, мон шер – Чеширский Кот был сама любезность, – вы же учили математику.

A. Да – смущенно признался Армигер – Матан, Теорвер, ТФКП, …

CC. Вздор – прервал его Кот, – здесь вполне хватит школьной программы.

Армигер застыл посредине комнаты. По его лицу было понятно, что он напряженно думает.

MH. Чу! Слышу! У него скрипят шестеренки!

H. Их необходимо срочно смазать.

Со зверским выражениям лица шляпник выхватил нож и подхватил масленку. Мартовский заяц протянул ему кусок батона. В два движения шляпник нанес масло на бутерброд, а заяц навалил сверху красной икры. Вдвоем они подбежали к оруженосцу, вручили бутерброд и кружку краснодарского чая и потащили к себе за стол.

MH. Королева сегодня сурова.

H. Что ты, королева – добрая душа. Я помню, три дня назад тут поймали японского шпиона…

Дружный хохот наполнил кухню. Новый год в команде начинался нормально.

Байка для оруженосца 4. Основной продукт процесса тестирования программного обеспечения

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

– Опять тестирование, опять релиз на две недели позже, – Мартовский Заяц был как всегда нетерпелив.

– Но как же без тестирования? – удивился Армигер.

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

– Так мы проводим тестирование не для того, чтобы выявить дефекты, а для того, чтобы получить информацию о качестве. – И оруженосец с чувством процитировал: – Тестирование программного обеспечения – процесс исследования программного обеспечения (ПО) с целью получения информации о качестве продукта.

– Ты имеешь в ввиду статью в википедии. Да там ошибок больше, чем изюминок в праздничном кексе! – подключилась Королева – Кстати, в википедии могли бы и указать автора сего дивного заблуждения.

– Но это же кто-то из экспертов!

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

– Как это ни печально, но люди, пишущие техническую литературу о разработке ПО, очень редко используют научный метод мышления. Они порой много говорят о вещах, совершенно необходимых нашей индустрии; и это всегда, как можно в том убедиться, весьма наивно и, по всей видимости, ошибочно. [1]

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

Теперь возьмем утверждение, что основным артефакт процесса тестирования является информация о качестве. Первый шаг, который должен сделать человек, мыслящий рационально, – это преобразовать утверждение в гипотезу. Гипотеза: «основным артефакт процесса тестирования является информация о качестве».

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

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

Далее мы переходим к экспериментам. Наблюдение, размышление и эксперимент – вот что составляет так называемый научный метод. [2]

В одном королевстве жила-была фирма, поставлявшая решения в сфере финансовых транзакций. Однажды фирма решила выпустить новый продукт – «пластиковую дуальную смарткарту». Надо сказать, что ошибки в продуктах для финансовых транзакций обходятся довольно дорого. Достаточно вспомнить ошибку с авизо.

Логично, что крупные финансовые структуры подходят к проверке качества достаточно серьезно. Для того чтобы выйти на рынок, необходимо пройти довольно серьезную проверку сертифицирующего центра. Для первичной проверки карты необходимо всего лишь заплатить двадцать тысяч. Не рублей.

После этого можно один раз скормить карту терминалу. А терминал выдает бинарный ответ «Карта подходит для дальнейших проверок» или «Карта не удовлетворяет требованиям». Отличная, точная информация о качестве.

С первого раза пройти проверку не получилось. Со второго тоже. С третьего тоже. Через несколько лет у руководства компании зародилось подозрение, что что-то здесь не так, и нужно что-то делать. Был выстроен процесс тестирования, и всего через год карта прошла первое испытание.

Несмотря на наличие информации о качестве, проект невозможно было завершить успешно. Несмотря на наличие информации о качестве, пришлось создать процесс тестирования. Таким образом, изначальная гипотеза не прошла экспериментальную проверку.

Но если, несмотря на очень дешевый способ получения информации о качестве (всего двадцать тысяч евро за один раз), необходимо было создать процесс тестирования, то что же было основным артефактом этого процесса?

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

В комнате повисла пауза.

– Но тогда почему первичное определение встречается чаще остальных? – робко спросил Армигер.

– Мой юный друг, стремящийся к знаниям, попробуй взглянуть на это с точки зрения эффектов «Ошибка приоритизации гипотез» [3] и «Знаний задним числом». И выдели на изучение этих когнитивных искажений хотя бы пару часов – Выдержав паузу, Чеширский Кот подвел итог перерыву: – По коням друзья. Заказчик еще не верит, что качество нашей системы достойно их серверов.

PS. Вместо послесловия. Через несколько дней Армигер обнаружил в почте ссылку на статью об экспертах http://u-96.livejournal.com/2507992.html

[1] Искаженная цитата из второй главы первого тома лекций Фейнмана по физике

[2] Смотри вторую главу из первого тома лекций Фейнмана по физике

[3] Цитата:

Не знаю, как называется эта ошибка – даже не уверен, что у неё есть официальное название, – но, если бы поименовать её довелось мне, я бы назвал её «ошибкой пиритизации гипотез». Как бы подоступнее объяснить? Ну… представьте себе, что у вас миллион коробков, и только в одном из них алмаз. И у вас целый ящик детекторов алмазов, каждый из которых всегда срабатывает в присутствии алмаза, но к тому же срабатывает и на половине пустых коробков. Если использовать двадцать детекторов, то в конце концов останется, в среднем, один истинный и один ложный кандидат. И после этого достаточно использовать один-два последних детектора, чтобы определить настоящее местоположение алмаза. Смысл этой метафоры в том, что, когда перед вами множество гипотез, большая часть времени уходит на поиск самых правдоподобных. А уж выбрать из них одну намного проще. Так что сразу начать рассматривать некую гипотезу, не имея в её пользу никаких свидетельств, значит пропустить основной этап работы. Как если живёшь в городе с миллионом человек, в котором произошло убийство, и детектив говорит: «У нас нет никаких улик, так что давайте рассмотрим вероятность того, что убийца Мортимер Снодграс»

Байка для оруженосца 5. Использование вариантов использования

В ходе идущего проекта случилась очередная пауза. Так часто бывает в начальной фазе. У заказчика не выделили людей, ответственных за взаимодействие, админы не сделали площадки под стенды, отдел снабжения не закупил лицензии на средства разработки, да мало ли существует причин для паузы проекта.

На кухне собралась обычная компания, только Королевы не было. На вопрос об ее отсутствии ответил Чеширский Кот:

– Сейчас она проект толкает. Вообще, у хорошего руководителя проекта основная работа приходится до старта проекта, на старт проекта, перед финишем и после финиша.

– А в середине проекта можно и в отпуск сходить – с завистью заметил Мартовский Заяц.

– Или журналы почитать – добавил Безумный.

– Как Быков в «Стажерах»? – догадался Армигер.

– Как Быков – согласился Чеширский – Быков, он хороший руководитель. Очень хороший. И хорошо, что он термин «менеджер» не слышал. Но довольно, молодой человек, об этом. Если есть время, его нужно использовать. Чем вы сейчас занимаетесь?

– Требованиями. Ревизией и выбором формата, – отрапортовал Армигер.

– Хорошее дело. И как обычно, есть несколько «но». – Чеширский помолчал и спросил: – что вас беспокоит, мой друг? И давайте на сегодня ограничимся одним вопросом. Что сейчас вас беспокоит сильнее всего?

– Юзкейсы – понурился Армигер.

– Если беспокоит – не чеши. Лучше маслом помажь, – порекомендовал Заяц.

– Погоди, – вмешался Чеширский, – не путай его. Давайте я выдвину несколько гипотез – и, после того, как Армигер кивнул, продолжил, – вероятно, вас смущает, что их часто рекомендуют, но редко пишут; что есть юзкейсы, а есть диаграмма юзкейсов, что если есть BPML и IDEF, то зачем нужен текстовый формат?

– И если их так настойчиво рекомендуют, то они должны иметь массу преимуществ.

– Главное преимущество вариантов использования, это то, что они варианты использования, – отрезал Шляпник и демонстративно посмотрел на свою коллекцию часов.