Как составить техническое задание для разработки мобильного приложения

Бизнес

Как составить техническое задание для разработки мобильного приложения

Разработка приложения начинается с подготовки технического задания. ТЗ даёт понимание, каким должно быть приложение и какие бизнес-задачи оно решает — это помогает команде превратить идею в полноценный цифровой продукт. Рассказываем на примерах, как правильно составить техническое задание и кто отвечает за его подготовку.

Что такое техническое задание (ТЗ)

Техническое задание — документ, в котором подробно описаны требования к проекту: как должно работать приложение и какие данные нужно забирать из внешних систем. Эта информация позволяет избежать многих ошибок при разработке и упрощает тестирование.

Техническое задание помогает команде разработать то, что нужно заказчику. Чем подробнее и точнее будет составлен этот документ, тем выше вероятность, что результат совпадёт с ожиданиями.

Почему необходимо составлять ТЗ на разработку приложения

Техническое задание в равной степени нужно и заказчику, и команде-разработчику. Его составляют на старте проекта и используют на протяжении всего периода разработки. ТЗ позволяет:

  • Зафиксировать требования к разработке. В ТЗ требования к приложению описывают как можно конкретнее. Это помогает заказчику и разработчикам одинаково понимать, как должна работать каждая функция. Например, формулировка «приложение должно давать возможность регистрации» звучит расплывчато. Вместо этого стоит указать, что пользователь может зарегистрироваться через e-mail, номер телефона или аккаунт в социальной сети.

  • Упростить контроль над проектом. ТЗ служит своеобразной дорожной картой для всех участников разработки. С её помощью руководитель может поэтапно контролировать выполнение плана и своевременно принимать меры, если происходят какие-либо отклонения. К примеру, в ТЗ стоит задача по интеграции с внешней CRM-системой, для которой изначально заложен бюджет в 300 часов разработки. Если команда начинает тратить на эту задачу больше времени, менеджер может вовремя пересмотреть процесс, чтобы не выйти за рамки бюджета.

  • Защитить права сторон. ТЗ — не просто список пожеланий, это юридический документ, который является частью договора. Если заказчик захочет добавить новую функцию в приложение без увеличения бюджета или сроков — исполнитель может отказать и сослаться на ТЗ, где зафиксированы дедлайны и объем работ. А в случае, если исполнитель затягивает с выполнением задач — заказчик вправе потребовать компенсацию за несоблюдение сроков.

  • Оценить ресурсы и сроки. ТЗ помогает сформировать представление о сложности проекта, рассчитать бюджет, спланировать работу и её продолжительность.

ТЗ также полезно при масштабировании команды или изменении её состава — из него новые участники могут быстро узнать важные детали проекта. Это сократит время на объяснения и погружение в задачи — вся информация будет описана в одном документе.

Кто должен делать техническое задание

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

Без бизнес-аналитика не обходится ни одна крупная студия мобильной разработки. Поэтому обычно такой специалист уже есть в команде исполнителя. По сути, он выполняет сразу две роли. Во-первых, выступает доверенным лицом заказчика, которое описывает, каким должен получиться продукт. А, во-вторых, является частью команды, «переводит» запросы бизнеса на технический язык и тем самым помогает претворять замысел в реальность.

При составлении ТЗ к аналитику могут подключаться технические специалисты. Например, разработчики могут давать рекомендации и уточнения по реалистичности поставленных задач. Или предлагать какие-то технологии, потому что они позволят реализовать функциональность быстрее и дешевле. А QA-инженеры могут помочь выявить требования к тестированию и контролю качества.

Из чего состоит ТЗ — структура технического задания

У ТЗ на разработку приложения есть зарубежные стандарты качества и отечественные ГОСТы. Однако пользуются ими редко. ТЗ по ГОСТу обычно требуются при работе с госсектором и компаниями, которые с ним сотрудничают. В остальных случаях каждая команда самостоятельно определяет формат и структуру документа. Например, технические задания, которые мы готовим в MobileUp, включают:

  • описание логики и навигации приложения;

  • описание экранов и логики на них, например, цветное кодирование;

  • правила обработки ошибок;

  • ссылки на макеты в Figma;

  • методы API и особенности работы с ними;

  • описание сущностей системы;

  • описание алгоритмов и механик внутри приложения.

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

Введение

Этот раздел помогает получить общее представление о продукте: какие бизнес-задачи будет решать приложение и чем оно будет полезно для пользователей.

Во введении указывают:

1. Общую информацию о проекте. Это помогает погрузиться в бизнес заказчика и понять особенности продукта. Например, приложение Flawery — это цветочный маркетплейс. Он собирает предложения магазинов на территории РФ и даёт возможность пользователю заказать доставку в любой из городов.

2. Цели и задачи, которые будет решать приложение. Целями могут стать автоматизация заказов, увеличение продаж. Задачами — познакомить пользователей с ассортиментом цветочных магазинов, оформить заказ.

3. Целевую аудиторию или ЦА продукта. Эта информация нужна, чтобы лучше продумать сценарии использования приложения, учесть потребности и поведение пользователей. Например, в ходе работы над Flawery мы поняли, что люди покупают цветы очень по-разному. Казалось бы, цель у всех одна — зайти в приложение и заказать букет. Но кто-то подходит к выбору более педантично и выставляет все фильтры, а кто-то приобретает акционные предложения. Кто-то оформляет доставку, а кто-то смотрит варианты из ближайших магазинов для самовывоза.

4. Краткое перечисление основных функций, как должна работать система. Например, поиск и выбор фильтров, онлайн-оплата, доставка. Отсюда можно понять, нужна ли интеграция с CRM и другими системами.

5. Состав команды разработки. Здесь перечисляют специалистов, которые будут привлечены к работе. Это помогает заказчику понять, как формируется стоимость проекта, поскольку она складывается из рабочего времени всей команды. Обычно разработке участвуют UX/UI-дизайнеры, frontend- и backend-разработчики, QA-инженеры и менеджер проекта.

Такой перечень информации помогает заказчику сформулировать ожидания от продукта и оценить ресурсы на его реализацию. А исполнителю — понять приоритетные задачи и выстроить план работ.

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

Функциональные требования описывают, как приложение должно работать. Они описывают взаимодействие пользователей с интерфейсом и шаги, которые те должны предпринять для достижения определённой цели. Помогают разработчикам и команде понимать, что именно нужно реализовать, и служат основой для тестирования и валидации готового продукта. Функциональные требования бывают:

  • Коммерческими. Они ориентированы на бизнес-цели компании. Например, приложение доставки цветов должно предлагать пользователям персонализированные букеты на основе предыдущих покупок — это поможет увеличить продажи.

  • Пользовательскими. Эти требования описывают, какие функции нужно создать для пользователей, чтобы достичь бизнес-целей. Например, создать раздел рекомендаций цветочных букетов, основанный на предыдущих покупках.

  • Системными. Описывают техническую реализацию: логику системы, структуру данных и другие решения. К примеру, для персональных рекомендаций цветочных букетов нужно добавить новые поля в базу данных. Там будет храниться история покупок каждого пользователя. Затем нужно разработать алгоритм рекомендаций букетов, который будет анализировать эти данные и генерировать персонализированные предложения.

Технические требования

Технические требования описывают качественные характеристики цифрового продукта: удобство, производительность, безопасность, а также технологические и эксплуатационные ограничения. Они включают технологический стек — технологии, языки программирования, фреймворки и платформы, которые будут использоваться для разработки.

UX/UI-требования

UX/UI-требования описывают, как должен выглядеть интерфейс приложения (UI) и каким образом пользователи будут с ним взаимодействовать (UX). В этом разделе фиксируют всё, что связано с удобством, пользовательским опытом и внешним видом продукта.

Чёткие UX/UI-требования облегчают тестирование и оценку готового продукта. Когда в ТЗ указано, что оформление заказа в приложении должно занимать не более трёх шагов, тестировщикам проще проверить, насколько приложение отвечает этим критериям.

Что касается внешнего вида мобильного приложения, компании могут предоставить свой брендбук с конкретными визуальными требованиями вроде цветовой гаммы, шрифтов. Всё это команда будет учитывать при создании макетов интерфейса. Также заказчик может поделиться конкретными референсами и примерами понравившихся интерфейсных элементов.

Тестовые сценарии

Тестовый сценарий — это инструкция, по которой тестировщик последовательно проверяет работоспособность приложения. Специалист оценивает, соответствует ли реальный результат ожидаемому. Например, корректно ли добавляется товар в корзину или приходит ли пользователю уведомление о доставке.

Если при проверке тестировщик находит в приложении ошибки — он передаёт их разработчикам для исправления. После этого снова тестирует продукт. В результате получается стабильно работающее приложение, готовое к релизу.

Шаблоны и примеры технических заданий

Ключевая характеристика ТЗ — однозначность формулировок. Нужна конкретика в деталях: названиях шрифтов, кодов цвета, размеров элементов. Чем точнее заданы требования, тем ближе к ним будет готовый результат.

Стандартные шаблоны

Как мы упоминали ранее, каждая команда самостоятельно определяет формат и структуру ТЗ. Однако за основу нередко берут шаблон, описанный в книге «Разработка требований к программному обеспечению» Карла Вигерса и Джой Битти. Он помогает не упустить важные аспекты в работе.

Разбор ошибок

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

Отсутствие пользовательских сценариев. Для разработки приложения недостаточно описать его структуру, технические характеристики и внешний вид интерфейса. Нужно выстроить логику взаимодействия пользователя и приложения: какую кнопку нажимает пользователь — какой ответ выводит приложение — результат. Для этого используют пользовательские сценарии.

Неизмеримые требования. ТЗ должно содержать чёткие требования к техническим параметрам, версиям операционных систем и устройств, на которых должно работать приложение. Это сфокусирует усилия команды на разработку только важных компонентов и сэкономит ресурсы заказчика.

Заключение

Без чётких требований ТЗ для разработки мобильных приложений получить хороший результат будет проблематично. Чтобы избежать потери времени и постоянных доработок, перед разработкой нужно сформулировать все требования к приложению. ТЗ можно написать самостоятельно, но лучше доверить это команде, которая будет заниматься разработкой приложения. Если у вас есть вопрос или задача — оставьте заявку и мы оперативно свяжемся с вами.

01

Сотрудничество

Контакты

0

Мы всегда рады сотрудничеству и новым проектам.

Опишите задачу, и мы с вами свяжемся.
Или напишите в Телеграм.

Давайте знакомиться!

ВыбратьОткуда вы о нас узнали
  • Рейтинги
  • Рекомендации
  • Конференции
  • Публикации
  • Соцсети
  • Другое

Нажимая «Отправить», вы даете согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности

Ваша заявка успешно отправлена

Мы все изучим и скоро выйдем на связь