Найти в Дзене

Кому и зачем нужно ТЗ?

В современном быстро меняющемся мире каждый день возникают идеи новых продуктов, создаются стартапы, каждый из которых хочет стать “единорогом”. В мире работают тысячи веб-студий и маркетинговых агентств, которые создают сайты, настраивают рекламные кампании, занимаются продвижением и т.д. Не все, кто занимается проектами, добиваются успеха. Что же отделяет успех и поражение, что мешает добиться успеха? Одна из причин - правильно написанное Техническое Задание (ТЗ). В этой статье я расскажу подробней, как правильно написать ТЗ, чтобы оно не оказалось бесполезным документом, на которое потрачено деньги и время. Итак, что такое ТЗ? Это документ, на основании которого команда разработки реализует проект, и который описывает: ● назначение системы, которую надо разработать; ● перечень функций и алгоритмов, которые должны быть реализованы в рамках проекта; ● требования к интерфейсам; ● требования к интеграциям (включая техническое описание API или любого
Оглавление

В современном быстро меняющемся мире каждый день возникают идеи новых продуктов, создаются стартапы, каждый из которых хочет стать “единорогом”. В мире работают тысячи веб-студий и маркетинговых агентств, которые создают сайты, настраивают рекламные кампании, занимаются продвижением и т.д.

Не все, кто занимается проектами, добиваются успеха. Что же отделяет успех и поражение, что мешает добиться успеха?

Одна из причин - правильно написанное Техническое Задание (ТЗ). В этой статье я расскажу подробней, как правильно написать ТЗ, чтобы оно не оказалось бесполезным документом, на которое потрачено деньги и время.

Итак,

что такое ТЗ?

Это документ, на основании которого команда разработки реализует проект, и который описывает:

● назначение системы, которую надо разработать;

● перечень функций и алгоритмов, которые должны быть реализованы в рамках проекта;

● требования к интерфейсам;

● требования к интеграциям (включая техническое описание API или любого другого формата обмена данными, который предполагается использовать);

● требования к архитектуре системы;

● бизнес-процессы;

● пользовательские сценарии;

● методологию разработки;

● технологический стек (какие технологии будут использованы и почему);

● дополнительные параметры проекта

Как мы видим, ТЗ должен содержать исчерпывающую информацию о назначении системы, функциональности и методах реализации и отвечает на вопросы и содержать следующие разделы:

1. Введение

1. Назначение

2. Область действия

3. Определения, акронимы и сокращения

4. Ссылки

5. Краткий обзор

2. Общее описание

1. Взаимодействие продукта (с другими продуктами и компонентами)

2. Функции продукта (краткое описание)

3. Характеристики пользователя

4. Ограничения

5. Допущения и зависимости

3. Детальные требования (могут быть организованы по разному, н-р, так)

1. Требования к внешним интерфейсам
1. Интерфейсы пользователя

2. Интерфейсы аппаратного обеспечения

3. Интерфейсы программного обеспечения

4. Интерфейсы взаимодействия

2. Функциональные требования

3. Требования к производительности

4. Проектные ограничения (и ссылки на стандарты)

5. Нефункциональные требования (надежность, доступность, безопасность и пр.)

6. Другие требования

4. Приложения

5. Алфавитный указатель

Очевидно, чтобы разработать профессиональное ТЗ нужен опытный специалист - аналитик, но даже наличие такого специалиста не является гарантией успеха проекта. Можно разработать ТЗ самостоятельно без привлечения дорогостоящих специалистов.

На старте работы нужно создать документ, отвечающий на вопрос «Зачем и для кого мы делаем эту систему?»

Чтобы не быть голословным и действительно в проекте решать проблему заказчика перед составлением ТЗ нужно получить от него Бриф.

Бриф может быть произвольной формы, но вопросы в нем должны быть понятными, простыми и направленными на выявление потребности заказчика. Вопросов на которые отвечает заказчик, может быть до 20-30, но не более, иначе это становится большой нагрузкой.

Рекомендации по составлению ТЗ

Ведите историю правок

Для этого в начале документа создаётся таблица со столбцами: дата, описание, автор. В ней записывается история изменений документа, благодаря которой легко понять, на каком этапе возникло то или иное требование, дополнение, противоречие.

Историю правок можно вести и более современным способом с помощью сервиса GitHub. GitHub — крупнейший[7] веб-сервис для хостинга IT-проектов и их совместной разработки.

Веб-сервис основан на системе контроля версий Git и разработан на Ruby on Rails[8] и Erlang компанией GitHub, Inc (ранее Logical Awesome)[9]. Сервис бесплатен для проектов с открытым исходным кодом и (с 2019 года) небольших частных проектов, предоставляя им все возможности.

Как работает Git?

Представим что есть команда разработчиков которые пишут большой проект. Каждый программист работает над своей задачей. После того как один из разработчиков внес изменения в код проекта, другие также должны получить эти изменения. Git решает эту проблему.

Каждый разработчик скачивает свою локальную версию проекта с сервера Git при помощи команды git clone. Разработчики пишут свои изменения в код проекта. Если в результате разработки, программист создает новый файл с исходным кодом, то ему нужно выполнить команду git add. Чтобы поделиться своими изменениями, нужно выполнить команду git commit, которая сохраняет все изменения в локальную версию проекта, и выполнить команду git push, чтобы отправить свои изменения на сервер. Другие разработчики выполняют команду git pull чтобы скачать все изменения с сервера, в свою локальную версию.

Это простой пример работы с проектом в git.

Составляйте список терминов и сокращений

Это правило грамотного подхода к формированию документа. Основной текст предваряется словарём, в котором записаны специальные термины, не являющиеся общеупотребимыми. Особенно уделите внимание тем аббревиатурам и словам, которые применяются только в данном проекте.

Прописывайте каждую деталь

Любой IT-проект — это не только код, но и мощности, на которых он работает. В первую очередь, определите, на каком сервере будет размещён сайт, какие у него параметры: ёмкость, оперативная память и другие.

Позаботьтесь о пользователях. Продумайте, какими браузерами и устройствами они пользуются, какое у них разрешение. Адаптируйте сайт, если речь идёт о нём, под различные технические характеристики устройств.

В этой статье я хотел рассказать про то, как нужно создать техническое задание для вашего проекта, но даже самое лучшее ТЗ не дает гарантии успешности проекта. В проекте самое главное – это идея, команда, стратегия. Только при объединении всех составляющих, вы сможете добиться ошеломляющего успеха.

Желаю Вам и Вашим проектам успехов!