Диаграммы — лучший друг архитектора решений, но, как известно, их сложно начать

На прошлой неделе я провел эксперимент.

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

В конце недели у меня было нарисовано семь делений. Семь диаграмм мне нужно было нарисовать после пяти дней работы.

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

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

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

Давайте поговорим о некоторых советах, которые помогут начать вашу карьеру в построении диаграмм.

Имейте четко определенное сообщение

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

Все отличные диаграммы рассказывают историю.

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

Если инструктор сказал: «Это рулевое колесо; это коробка передач, а это педали газа и тормоза», вы бы так и не научились водить. Вы бы попытались выяснить это самостоятельно, потому что вождение — это гораздо больше, чем просто знание деталей автомобиля.

Но так как инструктор объяснил, как части соединяются вместе и как вы взаимодействуете с ними, вы уловили основное сообщение. Сообщение инструктора было о том, как безопасно и правильно управлять автомобилем. Это обеспечивает контекст и более глубокий смысл, чем просто маркировка частей автомобиля.

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

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

Начать высокий уровень

Когда ваш инструктор по вождению впервые сел с вами в машину, он не объяснил, что каждая кнопка, циферблат и ручка делают в машине. Это было бы ошеломляюще, и вы бы ничего не сохранили.

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

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

Кто является целевой аудиторией этой диаграммы? Вы предлагаете свою идею кому-то, кто совершенно не знаком с доменом? Начните с диаграммы системного контекста модели C4.

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

Дайте достаточно информации там, где она не является подавляющей. Знание вашей аудитории — отличное место для начала при выборе типа диаграммы для построения.

Не всегда нужно начинать сначала.

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

Два лучше, чем один

Вы когда-нибудь смотрели рекламные ролики по телевидению, в которых говорится: «Подождите, это еще не все»? Вы хотите быть похожим на этого парня, когда дело доходит до построения архитектурных диаграмм.

Ваша первая диаграмма закладывает основу. Это создает контекст и общее понимание с вами и вашей аудиторией.

Следующая диаграмма предназначена для ответа на ожидаемые вопросы. Когда вы представляете свою диаграмму кому-то, вы, скорее всего, получите несколько вопросов, начинающихся со слов «как это будет…». Эта вторая (или третья) диаграмма предназначена для визуальной ссылки на эти вопросы.

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

Сопутствующие диаграммы делают ваше сообщение более эффективным и понятным.

Как только ваша аудитория поймет вашу идею, они начнут задавать вопросы. Следующие диаграммы помогут ответить на конкретные вопросы (а также показать, что вы выполнили домашнее задание).

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

Ставьте сообщение выше красоты

Диаграммы не обязательно должны быть красивыми; они должны передать вашу историю. Я работал со многими людьми, которые отказались от построения диаграмм, потому что «они были недостаточно красивыми».

Просто начните с коробки.

Расскажите свою историю. О чем вы говорите в первую очередь? Положить в коробку.

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

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

Заключение

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

  1. Какое сообщение вы пытаетесь передать?
  2. Насколько ваша аудитория знакома с вашим сообщением?
  3. Где вы можете предоставить дополнительную информацию, чтобы ответить на дополнительные вопросы?

Если вы используете такие инструменты, как draw.io или miro, вы можете быстро начать работу с их отформатированными шаблонами. Начните с основы и адаптируйте ее к своим потребностям. Помните, что это не должно быть красиво, чтобы быть эффективным. Сосредоточьте свои усилия на том, чтобы поместить туда важные точки данных.

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

Удачного кодирования!