Найти тему

Как послать заказчика в UML

Работая аналитиком я периодически сталкиваюсь с людьми, для которых хорошо написанное техническое задание – это просто набор несвязанных предложений. А, чтобы разобраться в хитросплетении технологий, интерфейсов, потоков, очередей и много чего другого, надо напрягать извилины. Но, как писал в своей книге Максим Дорофеев: “Думать больно или, как минимум, не очень приятно”.

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

Так, например, в моей семье родился мем: «Объяснить на тазиках».

На заре наших отношений с будущей женой я объяснял ей принцип работы многоядерных процессоров и их возможность обрабатывать множество данных одновременно. Но встретил непонимание в её глазах. Тогда я выкрутился следующим образом:

«Смотри, у нас с тобой есть большая ванна. Требуется постирать свои вещи: мне – чёрные носки, а тебе – белую блузку. И нужно сделать это одновременно, чтобы потом пойти смотреть кино, уютно завернувшись в пледик. Но, если мы будем стирать одновременно в одной ванной, ничего хорошего из этого не выйдет. Мои носки будут постираны, а вот твою блузку, вероятно, после этого придётся выкинуть.

Чтобы решить проблему, берём два тазика и ставим в общую ванну. Потом постираем свои вещи, каждый в своём тазике. При этом не будем мешать друг другу, тем самым «распараллелив» процесс. И, даже, если что-то выплеснется из тазика, это не окажется на полу.

Вот так и многоядерный процессор может одновременно на одном ядре производить рендеринг странички web-сайта, на втором ядре – декодировать mp3 файлик с любимой песней, на третьем – принимать и отправлять сообщения в любимом мессенджере и т.д.»

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

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

UML (анг. "Unified Modeling Language") расшифровывается как унифицированный язык моделирования. Вследствии непрекращающегося усложнения создаваемых программных продуктов потребовалась разработка единого метода представления возможностей программных продуктов в виде схем, рисунков, диаграмм и т.п.

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

И мы знаем к чему это приводит....

-2

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