Составляем техзадание для программиста. Как правильно?
Часто бывает, что уже готовый сайт необходимо как-то доработать: добавить калькулятор для расчета стоимости онлайн, «прикрутить» парсер или анализатор статистики. Не обязательно речь должна идти о стандартных блоках. Это может быть и уникальный сервис, помогающий в выборе, расчете или сравнении. В любом случае, готовые решения здесь не подойдут, и понадобится помощь программиста.
Основные пункты в ТЗ
Для разовых работ нет смысла нанимать сотрудника в штат. Достаточно найти хорошего профи на фрилансе. Расскажем, как правильно составить объявления о поиске, и какие нюансы прописать в ТЗ. В объявлении желательно сразу обрисовать задачу. Это поможет ощутимо сузить круг поиска. Однако одним предложением не обойтись, поэтому выбранному исполнителю потребуется предоставить ТЗ.
В техзадании может быть любое количество пунктов, но самыми главными и обязательными остаются такие шесть:
- Сроки (дедлайн) и ситуации, в которых можно их перенести.
- Способ оплаты: аванс или постоплата, на карту или иным способом, частями – все это должно быть указано.
- Штрафные санкции и возможные правки, их количество.
- Подробное описание вашего видения результата, критерии оценки качества.
- Необходимая для работы техническая информация.
- Порядок проведения тестирования.
Как описать желаемый результат
Важно точно составить описание, чтобы при принятии работы не возникало разногласий с исполнителем. Поэтому любой сервис должен быть описан «со всех сторон» - от критериев визуального оформления до всех возможных способов взаимодействия с ним пользователя. Исполнитель должен четко понимать задачи и цели будущих нововведений.
Если необходима возможность комментирования, сохранения результатов, если планируется ограничение на объем работ – все это должно быть четко прописано. Чем подробнее вы сможете описать нужный результат, тем быстрее пройдет процесс запуска новой «фишки».
Техническая информация и стандарты
Важно предоставить программисту всю необходимую техническую информацию, которая нужна для работы, но не сверх того. Если речь идет о сайте на одной из стандартных платформ, достаточно указать название движка и используемые плагины.
Если сайт самописный, и вы опасаетесь за его безопасность, то можно дать программисту только название языка. В этом случае готовую программу нужно будет добавлять самостоятельно, и не факт, что установка пройдет гладко.
Если вы решили, что специалист сам должен добавить новый сервис, то понадобится указать сведения о базе данных, используемых файлах, языке, библиотеках и функциях. Если имеются конфликты с определенными функциями или переменными, это тоже нужно уточнить.
В обязательном порядке стоит упомянуть о стандартах работы с кодом. Если вы часто обращаетесь за помощью к сторонним специалистам, то понадобится разработать что-то по типу редакционной политики, только для программистов. Она же пригодится и в том случае, если над проектом одновременно работает несколько человек. В противном случае есть риск, что изменения чужого кода станут весьма затруднительными.
Даже самые простые коды можно по-разному оформить и реализовать. Очень желательно, чтобы в нем прописывались комментарии, и тогда любой программист может сориентироваться в обозначениях переменных и внести нужные изменения. Программы, приведенные к общему, стандартизированному виду, гораздо легче изменять, дополнять, улучшать.
Если один программист работает над вашими задачами чаще других, то именно его можно попросить о составлении «редполитики».
Не забывайте, что техзадание должно быть предельно точным: программист по «ту сторону экрана» не догадается, что вы имели в виду. Кроме того, желательно полностью представлять результат до начала работ. Это существенно ускоряет работы и сокращает количество изменений в процессе. И еще одно – когда новая программа будет устанавливаться, проверьте ее на наличии ее «дыр», оставленных нарочно или случайно. Только после проверки можно проводить тестирование и открывать полный доступ к изменениям.