Как простой фреймворк спасает нас от «пожаров» на проектах

Кто из нас не сталкивался с тем, что одна из сторон проекта упускала из виду небольшую, но важную деталь требований? Конечно, это выяснялось ближе к релизу, и в режиме «нужно вчера» приходилось перепиливать проект в другую сторону. Узнали себя или коллег? Читайте дальше.

Я расскажу, как мы пришли к использованию фреймворка «процессная карта» для разработки интеграций как outsource-команда, и как он помогает предотвращать ситуации с пожарами, которые вспыхивают из-за того, что вы что-то недообсудили, не проговорили, не зафиксировали в требованиях и т.п.

<i>Пример сетки «процессной карты»</i>
Пример сетки «процессной карты»

Где проще всего синхронизировать бизнес и разработку – спецов, которые и говорят в общем-то на разных языках? Как раз решая эту проблему, мы с командой пришли в свое время к фреймворку «процессной карты». Когда-то я узнал о нем от партнера, и уже потом доработал под проекты интеграций. Процессная карта позволяет «разобрать на атомы» весь проект и тщательно пошагово проработать каждый его сценарий и с бизнесом, и с командой разработки. Все смотрят в один и тот же документ – таблицу, находятся в одном информационном поле и полностью понимают контекст, описывающий, как одно взаимосвязано с другим. Например, не нужно заставлять бизнес разбираться с каждой строчкой входящего json, но, бизнес должен понимать, где мы будем использовать константы, из-за того, что у нас нет определенных данных, т.к. они не приходят от клиента.

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

6 пунктов сетки «процессной карты»

Сетка «процессной карты» для разработки интеграций состоит из шести пунктов: сценарий, акторы, описание, описание интеграции, отклонения, комментарии и вопросы. Разберу подробнее каждый из них. Уверен, что этот фреймворк можно использовать не только при разработке интеграций, но и на этапе проработки других проектов, тогда вместо «Описания интеграции» будет другая колонка.

  1. Сценарий – название процесса в двух словах. Например: «регистрация нового пользователя». Колонку можно и не включать в карту, если она описывает всего один процесс.
  2. Акторы – действующие лица процесса, это могут быть и люди, и системы. Количество акторов равно количеству и ролям действующих субъектов в процессе. Аналогия в BPMN – дорожки.
  3. Описание – в этой колонке размещаем информацию для бизнеса. Даем описание каждого шага процесса и его деталей, плюс перечисляем, что на нем происходит, со всеми техническими нюансами, но расписанными языком бизнеса.
  4. Описание интеграции – здесь вписываем методы, которые используются для интеграции и ожидаемый ответ, как минимум статус-код ответа.
  5. Отклонения – в этой колонке разбираем отклонения от процесса и потенциальные ошибки. Вносим информацию о любом неожидаемом поведении, которое может возникнуть при выполнении любого из шагов (здесь же описываем, как обрабатывается ошибка как на техническом уровне, так и на бизнесовом).
  6. Комментарии и вопросы – сюда вписываем все, что требует урегулирования и обсуждения. Как только вопрос закрыт – переносим информацию из этого пункта в другую колонку. В итоге, когда вы завершите работу над процессной картой, у вашей команды и у партнера не останется открытых вопросов и можно будет двигаться дальше к разработке.

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

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

Когда выгодно разместить приложение на B2B-маркетплейсе и как это организовать

Как мы настроили кастомные интеграции для бэкофиса

Как мы разработали программу лояльности на Telegram-боте

99
4 комментария

Хороший пример, удобнее для разработки полнотой полей. Поделитесь шаблоном?

1

Антон, спасибо! Мы шаблон сейчас как раз немного допиливаем в Miro. Отправлю в ЛС как только будет готово!

1

Спасибо! интересный подход. Можете привести пример - что вписывать в "Отклонение"?

1

Например, у вас интеграция со службой доставки.

У курьера ломается машина и он не может доехать до точки в срок. Для бизнеса вы должны вписать:
Что происходит с доставкой, например, перенос, отмена и тп.

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