Как грамотно составить техническое задание на разработку?
Недавно редакция The MASCC выпустила серию статьей, посвящённых разработке мобильных приложений, систем автоматизации, их выбору и внедрению. Сегодня мы поговорим о еще одной важной вещи, которая в иерархии действий находится между тезисами "мы решили заказать разработку ПО" и "мы ищем компанию-разработчика". Речь идет о составлении технического задания - о наличии которого вас спросит менеджер компании-разработчика вторым или третьим вопросом.
Что такое "Техническое задание"?
Техническое задание (далее - ТЗ) - грамотное и точное объяснение задачи и собственных ожиданий от продукта, которое должно совпадать с задачами бизнеса. ТЗ необходимо не только в сфере разработки - это понятие применяется и в дизайне, и в копирайтинге, и много где еще. Разница в том, что для создания ТЗ для продукта разработки требуется гораздо больше информации, как технической, так и маркетинговой. В разных ИТ-компаниях могут быть свои требования к критериям ТЗ - все зависит от сложности разработки продукта и сферы применения будущего ПО. Мы перечислим основные пункты ТЗ, которые необходимы разработчикам большинству ИТ-компаний и труженикам The MASCC в частности для начала оценки будущего продукта, его стоимости и расчета необходимых ресурсов.
Первое: описать сферу бизнеса, в которой будет функционировать разрабатываемое ПО
На этой стадии не нужно техническое образование - оно нам понадобится позже. Сначала нужно описать свою компанию, ее структуру, целевую аудиторию и "ее боль" - трудности, с которыми сталкиваются ваши клиенты. Также в этой части можно описать ожидания от продукта - то, как он будет помогать вашей целевой аудитории решать проблемы, возникающие во время взаимодействия с вашим бизнесом. То есть здесь мы описываем, какие действия совершает пользователь, как ему отвечает сервис, какой результат у этого взаимодействия.
Допустим:
- мы хотим создать корзину, куда клиент сможет складывать свои товары;
- если пользователь выйдет из системы, то при повторном входе его товары в корзине будут сохраняться.
Сюда же можно добавить перечень референсов - существующих примеров, на который разработчик должен/не должен ровняться при создании продукта.
Второе: функциональные требования
ТЗ также должно передать функциональные требования к будущему продукту, то есть описать, какие функции будут доступны пользователю при работе с ПО: куда пользователь может пойти, что сделать и какой результат его ждёт. На основе этого описания группа дизайнеров, если это требуется, делают примеры экранов, которые соответствуют возможностям продукта. Этот этап должен полностью основываться на анализе своего бизнеса и на проблемах, которые были выявлены.
Третье: техническая часть
Вот здесь понадобится техническое образование. На этом этапе нужно дать как можно больше информации о том, из чего делать вы хотите сделать ваш продукт. Язык программирования, платформа (Windows/Linux/iOS/Android), фреймворки и вспомогательные инструменты - от этого ваш продукт будет зависеть на 75%. Зачастую у заказчика нет возможности составить тех. часть. В некоторых (и в The MASCC, конечно же) можно заказать разработку технического задания. С этим техническим заданием заказчик сможет обращаться и в другие ИТ-компании.
Итог. Как составить ТЗ:
- Понять и выразить в тексте бизнес-требования к проекту. Подробно описать, какие задачи бизнеса будет решать проект.
- Составить пользовательский сценарий – маршрут, по которому будет следовать пользователь, взаимодействуя с ПО.
- Изложить видение по структуре проекта. Развернуто составлять описание компании для разработчика: допустим, не просто «раздел о нас», а структура страницы, контент, нужна ли форма обратной связи, какие поля должны в ней быть.
- Собрать референсы – примеры похожих продуктов, которые нравятся, и примеры продуктов, которые категорически не нравятся.
- Зафиксировать используемые в проекте технологии. Здесь, скорее всего, придется прибегнуть к помощи технических специалистов.
Редакция IT-компании The MASCC - чешско-российского разработчика систем автоматизации (BPM/CRM) и мобильных приложений