После того как вы покажете набросок концепции исполнителю, самое время будет вступить с ним в диалог. Если вам встретился профессионал, то он станет тактично задавать наводящие вопросы по существу проекта. Скорее всего, их будет много, и вам придется проявить терпение. У вас есть шанс, что называется, еще на берегу понять сильные и слабые стороны своего замысла. Обмениваясь мыслями с подлинным мастером веб-разработки, вы на ранней стадии можете исправить свой замысел и усовершенствовать бизнес-идею, на которой зиждется проект. Следовательно, вам нужна конструктивная дискуссия, а не одностороннее перечисление того, чего вы хотите или что умеет исполнитель.
Вставим небольшую ремарку к теме человеческого фактора: поскольку телепатическая функциональность по досадному недоразумению пока не прошита в мозгу каждого индивидуума на Земле, недопонимания в любой коммуникации неизбежны. Поэтому, когда вам кажется, что слова вашего собеседника могут быть истолкованы двояко, или вы даже не догадываетесь, о чем он говорит («Раз сервер у вас в Воронеже, а торговать вы собираетесь на всю Россию, вам надо будет прикрутить CDN. Ну и архитектуру спроектировать надежную»), не стесняйтесь переспрашивать и добиваться точных, прозрачных формулировок.
Со своей позиции попробуйте понять, какие стороны своего бизнеса вы, возможно, описали недостаточно подробно или не описали вообще. Изнутри любой отрасли, профессии, культуры многие явления и факты кажутся очевидными, хотя для человека извне они подчас оказываются откровением.
Постепенно от общего переходите к частному. Обязательно спросите потенциального исполнителя: «Какими программными средствами вы планируете пользоваться, чтобы реализовать проект?» Хотя звучит эта фраза, как в анекдоте: «Рядовой Кузнецов, повторите, что вы сказали, после того как ваш сослуживец уронил бочку с солидолом вам на ногу?» – «Товарищ майор, я ответил, не нарушая устава: “Иванов, ввиду своей близорукости вы нанесли мне физический ущерб, прошу не усугублять его”». В реальности общение будет примерно таким:
– А на чем вы думаете написать мой сайт? Что предпочтительно?
– На PHP 5.5 в связке с MySQL. Сервер – nginx.
– Почему именно nginx? Мне советовали Apache.
– Нельзя сказать, какой сервер объективно лучше. Каждый имеет свои достоинства. У нашей студии семь сайтов, похожих на ваш, были сделаны на nginx, так что схема прекрасно отработана. Мы гарантируем, что от nginx вашему проекту будет только польза.
– Ладно. Есть ли какие-то особые требования к хостингу?
– А у вас сейчас есть хостинг? Или будете покупать его исходя из наших рекомендаций?
И так далее. Однако в самом документе предпочтительно использовать нейтральный стиль с официальными, но необязательно канцелярскими формулировками. Возьмите за правило: техническое задание не тайна за семью печатями, поэтому оно должно быть понятно без устных пояснений и дополнительных консультаций тому, кто откроет его впервые.
В конце каждой онлайн– или офлайн-встречи фиксируйте, чья очередь вносить изменения в концепцию (а далее в ТЗ), и оговаривайте сроки правок.
Итак, по итогам первых согласований черновик легким движением руки и напряженной работой мозга превращается в концепцию, которая вскоре сформируется в полновесное техзадание. Концепцию можно сегментировать, например, следующим образом:
• предназначение и задачи сайта;
• роли заказчика и исполнителя;
• структура сайта;
• содержание;
• краткий список сервисов и возможностей.
«Ну что за бюрократия “роли заказчика и исполнителя”!» – поморщится читатель, нетерпимый к канцелярскому языку. Тем не менее сколь скучно название раздела, столь важен он сам. К сожалению, случается, что если круг обязанностей исполнителя подробно не оговорен, то заказчик после месяца сотрудничества понимает, что создание дизайна в задачу разработчика не входит (обратное было бы странно). Или наоборот, не имея четкой договоренности относительно своих обязанностей, исполнитель ограничивается кодингом, а за верстку сайта и не думает браться.