Pull to refresh

Если бы программисты делали блины (по кошерным методологиям)

Reading time3 min
Views73K

Waterfall


Заказчик сообщает, что хочет блинов. Компания выделяет проджект менеджера, который говорит: «Говно вопрос! Наша компания специализируется по производству блинов! Мы сделаем вам офигенских блинов за две тысячи человеко-часов!»

Далее начинается аналитическая фаза. Бизнес-аналитик берет эксперта, и они денно и нощно заседают в офисе заказчика, потребляют халявный кофе и пончики, а также тщательно записывают бизнес-требования вплоть до толщины блинной корочки с точностью до микрона. Документы записываются на фирменных бланках компании, после чего заверяются подписью директора компании-заказчика, директора компании-исполнителя, стороннего консультанта по блинному производству, а также печатью Папы Римского. После окончания аналитической фазы на проект остается 1000 часов.

Далее начинается фаза архитектуры. Для такой задачи выделяют ведущего архитектора, который детально расписывает архитектурное решение по постройке блинной фабрики на 2000 гектар. В состав фабрики должны войти: цех просеивания муки; цех выращивания кур; цех сбора и сортировки яиц; цех отжима подсолнечного масла; цех замеса теста; система управления кулинарными рецептами; цех выпекания; система контроля толщины корочки (мы же помним про бизнес-требования). При этом, печи в цехе выпекания должны работать на холодном термоядерном синтезе, а продукция между цехами должна перемещаться по универсальному конвейеру-шине, который должен гарантировать доставку продуктов потребителю в нужном порядке. После окончания архитектурной фазы на проект остается 100 часов.

Далее проект передается в разработку. Разработчики приезжают на площадку, выделенную для строительства фабрики, и обнаруживают там болото. Тимлид заводит баг на архитектора со словами: «Если строить фабрику на болоте, она утонет к хренам». Через неделю архитектор возвращает баг с комментарием: «Так осушите болото!» Тимлид сообщает проджект менеджеру, что осушение займет десять тысяч часов. ПМ отвечает, что это слишком много, и надо строить прямо в болоте. Возможно, в следующем релизе у задачи появится второй этап, и мы придумаем специальный насос, который высосет болото из-под фабрики и закачает туда цемент. А пока укомплектуем фабрику эксплуатационным инструментом в виде сотни домкратов. К этому моменту на проект осталось 0 часов.

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

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

Тестировщики удивляются, и заводят 500 багов на разработку, т. к. никто не отразил в документации ни одного компромисса, который был принят во время строительства. Ситуация осложняется тем, что регрессионная модель требует проверки базового функционала: возможности горения дров в присутствии кислорода; невозможности горения дров в отсутствии кислорода; возможности человека войти в дверь фабрики и т. д. Когда проект просрочен на 2000 часов, тестирование только начинает проверять температуру поверхности сковородки. Все бегают, кричат и паникуют, ПМ решает сдавать задачу с незавершенным тестированием.

На приемке заказчику в качестве бонуса дают разогретых блинов из привокзальной рыгаловки и договариваются принимать задачу с ограничениями. Даже с ограничениями заказчик находит проблему: после зажарки блин невозможно отделить от unibody-алюминиевой сковордки, запатентованной у Apple. Приемка откладывается, а разработчики бегут исправлять критичный баг. В результате, запатентованную сковородку заменяют на обычную Tefal за 150 р. из Ашана. Из первоначальной архитектуры остается только универсальный конвейер-шина, на котором так и не смогли обеспечить гарантию очередности продуктов. После 5000 часов, потраченных на задачу, заказчик, скрепя сердце, принимает фабрику и согласует второй этап задачи в следующем релизе. Изрядно поседевший ПМ говорит: «Говно вопрос! ...»

Далее начинается аналитическая фаза.

[ Продолжение следует ]
Tags:
Hubs:
+61
Comments41

Articles