Программирование
»Притча
Первоначально было ТЗ — ТЗ несложное, понятное, рутинное. И было оно на паре десятков страниц с графическими набросками и схемами. И было оно реализовано Умельцем. И была дана ему ассоциация с Плотом. И поплыл Плот, и плав его было легкий и уверенный.
Но увидел Заказчик, что Плот маловат, что не все на него поместится, и что не исполняет он всех прихотей его. И было дополнение к ТЗ, и было оно на десятке страниц. И была реализация дополнения. И появилась на Плоте небольшая палуба в виде доски объявлений, рассылки и галереи фотографий, составляемой плавающими на сем Плоту. И была дана ассоциация ему Ладья.
Но возжелал Заказчик нарастить дополнительную палубу. Дополнительные типы статей, теги и комментарии плавающих к статьям этим. А еще рейтинги обозреваемых товаров, каталог ссылок и прочие премудрости. И была палуба, и Ладья продолжила плаванье. И имя этой Ладья было дано Парусник.
И увидел Заказчик, что Парусник это хорошо, но не всегда дует ветер, не всегда можно достичь желаемого места назначения. Ведь картинки к статьям это хорошо, но несколько видео-флешек и несколько картинок будет еще лучше. И была задача интегрировать flash-проигрыватель, который показывал бы сие. И появился у Парусника мотор, и был наречен сей Парусник Яхтой.
Но желающих плавать на Яхте стало больше. И было желание добавить еще одну палубу. И была она нестандартная, особенная. И не подходили функционал к этой палубе, написанный для Плота, но исполняющие желания даже для тех, кто уже застал его Яхтой.
И было много работы по работе с этой палубой. Не всякой дерево подходило. Но была надстроена эта палуба. И поплыла Яхта с новыми силами, но имя ей было дано Корабль. Но очень мало суждено ему было проплавать, нося гордое имя Корабль.
Задумки Заказчика коварны, ресурсы и место на собственном море безграничны и нелимитированы. И возжелал он персональные блоги. Дабы каждый плывущий мог поведать мысли свои. И была работа, и был результат. И имя Кораблю было дано. И нарекли его Круизным Лайнером.
И в очередной раз понравился результат заказчику, и остался он доволен. И Лайнер в плавь пустился. Лишь Умельцу страшно стало. Пропал сон его некогда крепкий, и терзают мысли его томные. Конец ли это? Ведь серце Заказника беспощадное и жесткое. Остались ли еще какие-то неудовлетворенные похоти плотские?
И опасения Умельца не были напрасными…
Мораль сей басни такова: оговаривайте окончательный вариант проекта сразу же. Дайте понять заказчику, что прикрутить потом "некой штучки" не всегда очень просто. Ведь проект же разрабатывался с учетом конкретных исходных данных: алгоритм работы, структура БД и прочее. Ведь, порой, чтобы прикрутить очередной "мынтус", приходится переписывать большой кусок работы, разрушать то, что уже прекрасно работает. Бывает, что усилия по подгонке существующего больше, нежели усилия, потраченные на сам прибамбас.
Правду говоришь. Точно правду. В конце-концов такие проекты обычно разваливаются на части, как титаник. Да и работать над ними не так уж и просто...
Потому нужно точно оговаривать цели проекта с Заказчиком и предлагать наиболее эффективные пути их реализации, а не надеется на то, что этот Заказчик сам догадается, что ему нужно.
Так никто же не застрахоан от того, что Заказчик может поменять свое видение. Никто не застрахован от того, что ему не захочеться что-то добавить, скажем, через полгода. Тут как ни крути, хоть оговаривай, хоть нет - а вероятность латания дыр всегда высока