Брутально и бессердечно о программировании и проектировании
ГлавнаяФорумАртПаттерныТест-драйвЗаметкиВопрос-ответКнигорецензииСправочная

Lava flow

На википедии антипаттерн «Lava flow» находится в разделе «Programming anti-patterns», но я считаю, что ему все же место в разделе «Management anti-patterns». По крайней мере как это бывает в России.
Предположим что у вас есть какая-то подсистема. Эта подсистема досталась вам в наследство от прошлого владельца. Она вроде как работает, но при этом имеет совершенно уродливую реализацию, затрудняющую ее дальнейшее сопровождение и развитие, и является самым настоящим музеем антипаттернов. Для того чтобы привести эту систему в порядок (что чаще всего означает «переписать заново»), придется потратить немало сил и времени. Многие руководители боятся пойти на такой рискованный шаг, продолжая двигаться по пути наименьшего сопротивления. Мол, «работает, и ладно». Подобный отказ от приведения системы в порядок и является антипаттерном «Lava flow».
Я особенно трепетно отношусь к этому антипаттерну. Когда я сталкиваюсь с ним в реальной жизни, я всегда жалею о том, что не родился штандартенфюрером «СС» или древнекитайским пыточником. «Lava flow» особенно часто встречается в коде, у которого сменилось не одно поколение хозяев.
Предлагаю вашему вниманию мини-пьесу, написанную лично мной, которая так и называется: «Lava flow».
Г е н е р а л ь н ы й (в отдел кадров). Уволить этих бездарей! Найдите мне нормальных специалистов!

…спустя три недели новые специалисты сидят на рабочих местах и изучают проект.

J u n i o r  d e v e l o p e r (про себя). Как тут все сложно… Жизни не хватит чтобы понять как все это работает… Меня наверно уволят…

S e n i o r  d e v e l o p e r (громко и недовольно). Кто учил этих мудаков программировать?!! Нет, ну вы посмотрите что они тут пишут!

Г л а в н ы й  а р х и т е к т о р (задумчиво). Если бы это была лошадь, я бы посоветовал ее пристрелить…

T e a m   l e a d e r (нервно). Спокойно, мужики. Заказчик хочет чтобы мы просто кое-что тут дописали. Оставим все как есть, просто доделаем то, что требуется.

P r o j e c t  m a n a g e r (обращаясь к разработчикам). Проект конечно тяжелый, но мы ведь справимся! Тем более мы будем вести разработку по самой лучшей методологии! Нам поможет XP! Scrum! TDD! (нужное подчеркнуть).

Г л а в н ы й  а р х и т е к т о р (поймав project manager-а в курилке). Ты ведь понимаешь, что проект уже бьется в предсмертных конвульсиях. Его нужно полностью переписать.

P r o j e c t  m a n a g e r (Главному архитектору). Да все я понимаю, только кто мне это позволит? Знаешь сколько уже потрачено бабла на этот проект? Попробуй объяснить генеральному, что нужно все переделать, я посмотрю насколько быстро ты отыщешь живописное местечко под названием «нах#й».

P r o j e c t  m a n a g e r (Оставшись один в курилке, глядя в окно). Вот начнем мы писать проект заново. И облажаемся. Я же во всем виноват буду, с меня же шкуру спустят. Ну его нафиг. А так, если сроки и завалим, то я всегда смогу свалить все на то, что проект уже был полным говном, когда достался нам.

…спустя пол года.

Г е н е р а л ь н ы й (в отдел кадров). Уволить этих бездарей! Найдите мне нормальных специалистов!

Оглавление
Статистика
© 2007—2009 Inside C++ Коммерческие услугиКонтактная информация

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