
Комментарии 2
Постановкой задачи должен заниматься член команды разработки, отвечающий за общее решение – системный архитектор, главный инженер проекта или владелец продукта.
А если ты один программист на предприятии? Тогда, вообще всё «просто». Тебя берут на работу с одним-единственным пожеланием: «Солидной фирме – несолидно пользоваться услугами районного вычислительного центра. Вот тебе деньги, покупай любую программу, но учет должен быть внутренним».
Дело было лет двадцать назад. Купил все, что было тогда на рынке. Но! То, что программы могли, нам было не нужно, а что нужно – не могли! И что делать? «Взялся за гуж, не говори, что не дюж!».
Деваться было не куда, пришлось ваять программу учета самому в режиме «нон-стоп» (по 12 часов в день, без выходных и праздников). Через несколько месяцев, прототип уже работал. Это был расчет зарплаты на производственном предприятии.
Потом была эпопея, как забрать данные предприятия из районного вычислительного центра. Отдали почти «добровольно». Затем, как эти данные (из FoxPro) «впердолить» в «1С77». Естественно, без описания и документации. Но, справился!
Потом надо было решить проблему с производительностью движка БД «семерки». Для этого использовал ее как DDE-сервер, а Visual FoxPro – как DDE-клиент. Производительность, запросов к БД 1С77 возросла в 15(!) раз.
Потом еще пару лет, в режиме реального времени, добавлял разного рода отчеты, формы, обработки, внешние компоненты и т.д. и т.п. Законодательство менялось каждый год, поэтому, это тоже скучать не давало.
Тем не менее, все получилось! Потом делал конфигурацию «Учет ресурсов» и даже внедрил. Но, пришла новая главбухша и перевнедрила ее на типовую «ПУБ». Эта конфа была менее удобной, на мой взгляд, но, хозяин – барин, для нее было важнее то, что она знала эту программу, а мою не знала.
Вот так и работал. Сам себе и постановщик задач и «архитектор», и разработчик, и тестировщик, и внедренец, и консультант, и ментор, и все такое прочее. И все, естественно, за одну зарплату. Начальство все устраивало, меня тоже.
Сейчас, вот, делаю пет-проект – обучающую систему. Тоже все сам. Даже не представляю как архитектор, допустим, мог бы сформулировать свою концепцию модульного программирования на С++ / WTL для этой задачи. Как показывает опыт, даже «умные» книжки по архитектуре ПО, здесь не слишком помогают. При этом первую версию этой программы я написал без архитектуры, но чуть мозги себе не сломал. Поэтому, для реализации ее второй версии решил этой самой архитектурой проекта озадачиться. Удивительно, но и здесь приходится изобретать велосипед, из-за недостатка хороших вариантов.
Поэтому, для идеальной ситуации ваша концепция подходит, а для реальной жизни – не всегда.
О, да, знакомо! Сам себе и аналитик (бизнес+системный), и архитектор, и дизайнер интерфейса, и программист, и сисадмин, и техпис, и менеджер проекта, и разработчик программы обучения пользователей, и техподдержка, и ведущий тренинга по пользованию продуктом (особенно, когда люди компьютера избегать стараются, ибо боятся - это я про ранние 90-е и работников тогдашней старой гвардии 50+), и... В общем, "и жнец, и швец, и в дуду игрец".
Зато какая закалка! Какой опыт!
Спасибо за развёрнутый комментарий!
Техническое задание – что это и для кого