Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2009-08-22

Хотели как лучше?

Размышления вслух, о том, как хорошие (вроде бы) задумки превращаются в фарс.

Что такое ТЗ (техническое задание)? Для заказчика это способ обьяснить разработчику, что от него ждут. Какой должна быть система разрабатываемая. А для разработчика это способ отчитаться перед заказчиком. Через ТЗ они находят общий язык. Разработчик смотрит в ТЗ и видит, что, допустим, программа должна выдавать документы на печать в таком-то формате. Значит, надо делать модуль печати, форматировать документ для выдачи и прочее. При сдаче заказчику будет демонстрировать - вот, смотрите, в ТЗ написано - выводить на печать, выводит? Да. ОК.
Заказчику нужно печатать бумажки для отчетности? Он пишет в ТЗ - бла, бла, печатать.
Все довольны. Все хорошо. Казалось бы.

А вот нынче я пишу (не в первый раз) ТЗ, даже не само ТЗ а блоки "требований" к системе. Я - разработчик, я пишу требования к системе, прототип которой у меня уже крутится в виртмашине. Я сижу и описываю в форме ТЗ то, что система уже делает. Чтобы потом по этому ТЗ сдать эту систему заказчику. Смотрите, мол, видите, в ТЗ написано - печать. Печатает? Да. ОК.

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

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

Вот, сижу, пишу сам себе ТЗ на систему, которая уже есть. Маразм.
А какая хорошая была идея? Да? ТЗ, проект, общий язык заказчика и разработчика?

Вот какого, (вырезано цензурой) всякие регуляторы лезут не в свое дело? Надо проверять? Проверяйте, вот договор, вот сумма, вот сайт. Что, недостаточно разве? Туалетной бумаги не хватает? Паразиты.

Комментариев нет:

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

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)