{"id":14276,"url":"\/distributions\/14276\/click?bit=1&hash=721b78297d313f451e61a17537482715c74771bae8c8ce438ed30c5ac3bb4196","title":"\u0418\u043d\u0432\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0432\u0430\u0440 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0443 \u0431\u0435\u0437 \u0431\u0438\u0440\u0436\u0438","buttonText":"","imageUuid":""}

Технические задания и IT-системы: разбираемся, как ожидания мэтчить с реальностью

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

Что такое графическое техническое задание?

Вспомните схему по сборке мебели из ИКЕА: простые рисунки и понятный порядок действий. А теперь представьте, что весь процесс сборки описывается исключительно текстом. Как быстро вы соберёте свой книжный стеллаж «Билли» по такой инструкции?

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

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

В текстовых ТЗ сложно заметить все детали.

На одном из наших самых длительных проектов, мы начинали с того, что описывали полноценные ТЗ текстом. Затем был этап согласования, который мог затягиваться на неделю. Далее команда приступала к разработке, после которой очень часто заказчик возвращался с фразой «ой, а у нас тут правочки».

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

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

Методом проб и ошибок, мы в Аспирити пришли к новому способу фиксации требований, назвали его «графическое техническое задание».

Графическое ТЗ — это подход к разработке требований. При составлении графического ТЗ мы тесно взаимодействуем с бизнесом заказчика для строительства фундамента будущего продукта. Это позволяет не ломать привычные паттерны, а наоборот упростить работу.

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

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

Мы используем этот способ, чтобы отобразить смысл всех компонентов, а не их вид. Оно расширяет юзкейсы до подробного скетча с последовательностью действий пользователя и результатом этих действий. Чтобы с первого взгляда было понятно, что на экране вообще происходит.

При использовании графического ТЗ кипы текста превращаются в блок-схемы. Они наглядные и понятные.

Пример из нашего недавнего проекта, где мы разработали приложения для водителей машин-погрузчиков на производстве:

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

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

На графическом ТЗ понятно, что и в какой момент происходит, какие и откуда данные подтягиваются.

При составлении мы выяснили важные подробности:

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

Чем графическое техзадание отличается от варфрейма и прототипа?

Вайрфрейм показывает, что где и как будет расположено в интерфейсе. Это скелет дизайна, который позже будет заполнен UI элементами.

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

Главная идея графического ТЗ — понять, всю ли функциональность учли на этапе сбора требований до того, как приступать к разработке.

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

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

Зачем нужно графическое ТЗ?

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

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

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

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

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

С подробными примерами и другим способом создать понятное ТЗ можно ознакомиться в статье:

Создаём понятное техническое задание: опыт Аспирити

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

А обсудить, как написать ТЗ так, чтобы ожидания не расходились с реальностью, можно в комментариях 🙂

0
26 комментариев
Написать комментарий...
Вениамин Мустафин

крутой подход!
Мы тоже во fuse8 отказались от плоского ТЗ в пользу более удобных и понятных инструментов. На некоторых проектах интерфейсные решения накидываем в гугл таблицах :)

Два вопроса:
1. Сколько времени занимает в среднем разработка графического ТЗ для проектов со сроком разработки от 6-ти месяцев?
2. Нет ли проблем с клиентами, когда при обсуждении графического ТЗ они начинают обсуждать его не как ТЗ, а как UX-прототипы? ) Если есть, то как работаете с этим.

Ответить
Развернуть ветку
Лёша из Аспирити

2. Ой жиза. Классическая проблема, когда UX прототип начинают обсуждать как итоговый UI и просят поправить скругление на кнопке. :D Важно вовремя и грамотно объяснять заказчику какой уровень детализации обсуждаем и зачем, тогда проблем не должно быть.

Ответить
Развернуть ветку
Вениамин Мустафин

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

Ответить
Развернуть ветку
Лёша из Аспирити

1. По длительности. Где-то х1,5 к обычному текстовому описанию с таблицами.

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

Ответить
Развернуть ветку
Bo.G

поздравляю. вы открыли для себя блок-схемы.

Ответить
Развернуть ветку
Alla Gromova

да и не только для себя

Ответить
Развернуть ветку
Лёша из Аспирити

Ну тут согласен))
Но блок-схемы блок-схемам — рознь.

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

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

Ответить
Развернуть ветку
Aleksandr Krais

Графическое тз бомба чессно говоря)

Сидеть в текстах разбираться как что должно работать - это ад

Ответить
Развернуть ветку
Антон Поспелов

Спасибо за информацию. А в чём вы рисуете графическое ТЗ?

Ответить
Развернуть ветку
Лёша из Аспирити

Это фреймы в Figma или можно в FigJam, в зависимости от того, кто делает и какой уровень детализации нужен. (кому как удобнее)

Вообще, всё целесообразно в одном месте держать: в одном Figma-файле на разных страницах будут ТЗ, UX прототип и финальный дизайн.

Ответить
Развернуть ветку
Eugenia Ivanova

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

Ответить
Развернуть ветку
Дмитрий Соломенников

А я думал это давно стандарт. Я с самого начала так и писал ТЗ. Описание функционала плюс CJM плюс графика интерфейса

Ответить
Развернуть ветку
Лёша из Аспирити

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

Всё ещё часто бывает, что аналитик что-то писал там 2-3 месяца, а потом это где-то в confluence лежит никем никогда не открытое, потому что на этапе дизайна какие-то совершенно новые вводные идут :)

Ответить
Развернуть ветку
Иван Митин

Неплохой подход

Ответить
Развернуть ветку
Vadim Zhivotovsky

Навскидку.
1. Есть такая аксиома - ни одна графическая модель не может полностью отобразить содержание. Поэтому что вы сделали? Да, забухали кучу текста в картинку и на голубом глазу назвали это "графическое ТЗ"

2. Наверное, вы не понимаете, что такое ТЗ. На чёрной картинке у вас не ТЗ, а изучение предметной области, выявление требований

3. Ну и тут уже выше сказали, вы изобрели монструозный велосипед. Есть исчерпывающие наборы нотаций, красиво и грамотно решающие ваши вопросы

4. Выбранный стиль подачи материала не каждому зайдёт. Восторженный пафос в форме "мы красавчики" (нет, см. выше) и рекламы своей компании (вызывает отталкивание)

Ответить
Развернуть ветку
Александр А.

3. Велосипед едет, насколько понимаю :)

Если бы существовали исчерпывающие наборы нотаций, красиво и грамотно ... я бы видел примеры, как бизнес охотно читает.

А он, бизнес, только тоскливо смотрит на них.

Ответить
Развернуть ветку
Алексей Прасковьин
Есть исчерпывающие наборы нотаций, красиво и грамотно решающие ваши вопросы

Угу. Есть. Вот как научите бизнес-заказчиков их читать, возвращайтесь, обсудим

Ответить
Развернуть ветку
Vadim Zhivotovsky

Ещё раз: "красиво и грамотно". Если заказчик не может читать ваши доки, значит, ваш вопрос решён неграмотно

Ответить
Развернуть ветку
Лёша из Аспирити

Статья об этом и есть: как базовые нотации подать клиенту так, чтобы ему было проще их читать.

Смысл в том, что на стороне заказчика есть люди, которые шарят, а есть те, кто не шарят, но они будут будущими пользователями. Их не нужно учить читать нотации, им нужно показать так, чтобы было удобно.

Ответить
Развернуть ветку
Лёша из Аспирити

Спасибо за комментарии по существу.

1. Тут комментировать не буду. В целом по-разному можно интерпретировать. Как не назови, главное, чтобы помогало в решении реальных задач.

Ответить
Развернуть ветку
Лёша из Аспирити

2. "Наверное, вы не понимаете, что такое ТЗ. На чёрной картинке у вас не ТЗ, а изучение предметной области, выявление требований.

Я задам встречный вопрос: а что является одним из продуктов "изучения предметной области и выявления требований", если конечная цель это создание ИТ систем?

Вот вам определение ТЗ:

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

Как это идёт в разрез с тем, о чём говорится в статье?

Ответить
Развернуть ветку
Vadim Zhivotovsky

Если мы про конечную цель, то - удовлетворение бизнес-целей, а не создание ИС. ИС - способ, а не цель. Об этом нельзя забывать.

Продуктом "изучения предметной области и выявления требований" являются выявленные потребности (я там ошибся словом, это важная ошибка), а не ТЗ.
Уже на основании анализа потребностей принимаются решения о способах их удовлетворения. И в ТЗ попадёт далеко не всё.
Опять же, в ТЗ нет места вопросам.

Данное определение ТЗ - очень весёлое, где ещё такие смешные вещи на досуге можно почитать?
Потому что ТЗ не про общение и создание "абстрактного элемента" (извините, тут совсем ржу-немогу), а про конкретное, неожиданно, техническое задание. Которое (если нет ЧТЗ) можно оценить, спланировать по всем ресурсам, протестить и т.п. (можно применять методы проверки требований)
Ну, если хочется формулировками покидаться, что лучше уже в ГОСТ посмотреть, там гораздо точнее и грамотнее.
Поэтому и говорю, что вы не понимаете, что такое ТЗ. Подменяете его другими артефактами

Ответить
Развернуть ветку
Лёша из Аспирити

Есть правильные мысли у вас. Но мы немного про разное говорим. Давайте ещё раскрою контекст:

Есть проект на создание ИС для автоматизации бизнес-процесса.

Есть заказчик, который выкатывает ТЗ, как чувствует и как видит.
Обычно в этом тз нет достаточной информации, чтобы приступить к работе.

Следующий этап доуточнить ТЗ. Здесь можно использовать разные инструменты в т.ч. и нотации. На этом этапе аналитик или проектировщик идёт "в поля". На этом этапе нужно собрать обратную связь от пользователей (они обычно не шарят в этих наших нотациях) и внимательно читать ничего не будут (либо не заметят важных деталей).

Условно: есть менеджер какой-то фирмы, он будет пользователем системы, которую мы разрабатываем. Он мало заинтересован в проекте, у него есть своя работа и обычно ему ок и так работается. С такого тяжело собирать обратную связь.

Для решения этой задачи проектировщик превращает существующую задачу в более понятный вид (это и есть то, что мы называем граф ТЗ) это такой артефакт который мы в первую очередь показываем пользователям и заказчику, и по которому собираем информацию. А то что нам нужно узнать в процессе, выносим сюда же в вопросы.

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

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

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

Ответить
Развернуть ветку
Лёша из Аспирити

Когда писал ответ на коммент, а получилась ещё одна статья 🤪

Ответить
Развернуть ветку
Лёша из Аспирити

3. "Ну и тут уже выше сказали, вы изобрели монструозный велосипед. Есть исчерпывающие наборы нотаций, красиво и грамотно решающие ваши вопросы."

Есть различные нотации, это да. Нотации — это хорошо. Но нотация, это не цель, а инструмент. Его можно менять и настраивать под задачу. Можно всё идеально сделать по стандартам и с использованием самых красивых нотаций и при этом провалить проект.

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

Инструменты под задачу, а не задачи под инструменты. Главное, чтобы проект успешный был.

Если вы знаете набор инструментов, который может оптимальнее работать, то расскажите. Интересно послушать.

Ответить
Развернуть ветку
Лёша из Аспирити

4. По стилю и подаче — на вкус и цвет.

Ответить
Развернуть ветку
23 комментария
Раскрывать всегда