UML - это сокращение от Unified Modeling Language. Это не язык программирования, как HTML или Java; вместо этого, это визуальный язык, который обычно используется для моделирования различных диаграмм. UML - это набор символов и определений, используемых для описания и визуализации различных связей в программной системе.
Поведенческие и структурные диаграммы - это два основных типа UML-диаграмм. Поведенческая диаграмма показывает изменяющиеся особенности системы. Некоторые примеры такой диаграммы включают диаграммы последовательности, коммуникации и активности. В то время как структурная диаграмма показывает неизменные отношения, такие как объектные, компонентные и классовые диаграммы.
Эта статья конкретно фокусируется на UML диаграмме коммуникации, её основных целях, главных преимуществах и о том, как её можно создать.
В этой статье
Часть 1. UML диаграмма коммуникации: что это такое?
Прежде чем углубиться в подробности UML диаграмме коммуникации (также известной как UML диаграмма сотрудничества), давайте сначала поймем, что такое диаграмма коммуникации.
Диаграмма коммуникации визуализирует обзор всех сообщений, которыми обмениваются актеры и объекты в рамках функции, процесса или системы. Это вид поведенческой диаграммы, который включает диаграммы взаимодействия и последовательности.
Давайте разберемся с функциональностью UML диаграммы коммуникации для банкомата.
- Пользователь сначала отправляет определенное сообщение в банкомат, вставляя дебетовую/кредитную карту и вводя PIN-код.
- Затем банкомат отправляет сообщение в банк с запросом информации о пользователе.
- И последнее, но не менее важное: банк одобряет транзакцию, и пользователь получает свои деньги на руки. Все это происходит в течение нескольких минут.
В UML диаграмме коммуникации все сообщения указаны четко с их приоритетом и направлением. Стрелки и прямые линии используются для соединения всех объектов, представленных прямоугольниками. Пример диаграммы коммуникации интернет-книжного магазина показан на изображении ниже.
Часть 2. Какие символы и элементы содержит UML диаграмма коммуникации?
Теперь, когда вы знакомы с диаграммой, пришло время изучить символы и элементы, которые она содержит, чтобы лучше понять архитектуру диаграммы.
Символы
Стрелки, линии, прямоугольники и числа - это четыре разных символа, используемых в этой диаграмме. Давайте рассмотрим их все немного подробнее.
i) Стрелки
Эти символы используются для отображения потока сообщений, полученных или отправленных на протяжении всего процесса в диаграмме.
ii) Линии
Прямые линии соединяют различные прямоугольники для отображения отношений между двумя или более объектами.
iii) Прямоугольники
У них простая цель с простой формой. Объекты обозначаются прямоугольниками в системе. Каждый прямоугольник помечен именем объекта.
iv) Числа
Они указывают, сколько сообщений необходимо для завершения определенного процесса. Кроме того, они показывают порядок следования сообщений.
Элементы
Объекты, связи, сообщения, активности и фреймы - разные элементы UML диаграммы сотрудничества. Давайте рассмотрим каждый элемент по отдельности.
i) Объекты
Диаграмма коммуникации состоит из двух типов объектов: поставщик и клиент. Объекты-поставщики получают сообщения и предоставляют процесс или метод. С другой стороны, объект-клиент запрашивает методы поставщика путем отправки сообщений.
ii) Связи
Связи между различными объектами представлены линиями на диаграмме. Они показывают, какие объекты связаны друг с другом. Кроме того, они помогают понять отправку и получение сообщений между различными объектами. Когда объект отправляет сообщение самому себе, это обозначается петлей на диаграмме.
iii) Сообщения
Поток сообщений представлен стрелками. Все сообщения пронумерованы последовательно. Эти последовательные номера помогают читателям понять, какое сообщение читать первым. Множественные числа и десятичные точки используются для обозначения сообщений, присоединенных к родительскому сообщению. Два типа сообщений включают синхронные и асинхронные.
Когда объект-клиент отправляет сообщение и ждет ответа поставщика, это называется синхронным сообщением и обозначается сплошной линией с заполненным наконечником стрелки. Тогда как, когда объект-клиент не ждет ответа поставщика после отправки сообщения, это называется асинхронным сообщением. Оно обозначается пунктирной линией и полым наконечником стрелки.
iv) Активность
Это действия, которые происходят для завершения определенного процесса. Вы можете представить активность овалом или другими фигурами на UML диаграмме коммуникации.
v) Фреймы
Пространство, содержащее диаграмму, обычно называется фреймом. Название диаграммы написано в верхнем левом углу фрейма.
Пожалуйста, помните, что это не все элементы или символы, используемые в UML диаграмме сотрудничества. В разных диаграммах можно найти больше. Так что не смущайтесь, когда увидите новые символы в подобной диаграмме.
Часть 3. Какова основная цель UML диаграммы сотрудничества?
Основная цель этой диаграммы - отобразить все сообщения, которыми обмениваются объекты, чтобы позволить системе делать то, что требует вариант использования. Когда дело доходит до визуализации последовательности сообщений между актерами и объектами, UML диаграмма сотрудничества играет решающую роль.
Создание этой диаграммы помогает программистам и разработчикам экономить энергию и время. Кроме того, она помогает им избежать ошибок в начале работы. Более того, UML диаграммы коммуникации протягивают руку помощи в будущих редизайнах, обновлениях и изменениях.
Часть 4. Когда использовать эту диаграмму?
Ну, эта диаграмма обычно нужна при разработке системы, чтобы понять все потребности и как правильно её построить. Диаграммирование взаимодействий и сообщений четко определяет функцию варианта использования.
Проще говоря, вы можете использовать UML диаграмму коммуникации для наблюдения за последовательностью, в которой информация или сообщения отправляются и принимаются. Эти диаграммы прекрасно моделируют порядок и поток сообщений, обеспечивая лучшее понимание.
Часть 5. 4 главных преимущества диаграммы коммуникации
Когда дело доходит до разработки эффективной архитектуры системы или эффективного диаграммирования системы, UML диаграмма сотрудничества играет решающую роль. Давайте рассмотрим главные преимущества, которые она предлагает.
i) Простая интерпретация
Эта диаграмма проясняет роль всех актеров и объектов в системе. Формы и обозначения показывают отношения обмена сообщениями между различными частями конкретной системы.
ii) Визуализирует сложные системы
Она использует четкие обозначения для визуализации сложных логических цепочек, которые содержат различные объекты. Полная UML диаграмма представляет комплексный обзор системы таким образом, что никаких дополнительных объяснений не требуется.
iii) Последовательно отображает информацию
Как уже говорилось ранее, UML диаграммы известны тем, что отображают поток и последовательность сообщений, которыми обмениваются различные объекты в системе. Например, какие сообщения зависят от других и в каком порядке они следуют.
iv) Помогает в будущих итерациях
Планирование будущих сценариев и функций становится очень простым с UML диаграммами сотрудничества. Они делают прототипирование и визуализацию систем интуитивно понятными и простыми.
Часть 6. Как создать UML диаграмму коммуникации?
Прежде чем начать создавать эту диаграмму, не забудьте убедиться, что у вас есть правильные строительные блоки. При создании с нуля убедитесь, что вы следуете всем рекомендациям UML. Мы перечислили 5 простых шагов ниже, чтобы создать UML диаграмму сотрудничества за несколько минут.
Шаг 1: Определите функции для моделирования
Решите, какие функции необходимы для моделирования полной системы, такие как объекты, актеры и сообщения. Чем больше сообщений и действий вы визуализируете, тем сложнее станет диаграмма.
Шаг 2: Добавьте фигуры и формы
Используйте прямоугольные формы для отображения различных объектов в системе и назовите их все. Размещайте все формы с единым пространством между ними. Используйте фигурки-палочки для обозначения актеров.
Шаг 3: Используйте стрелки для визуализации сообщений
Теперь соедините стрелками объекты, которые связаны линиями. Каждое сообщение представлено одной стрелкой. Направление наконечника стрелки определяет, какой объект отправляет сообщение, а какой его получает. Убедитесь, что вы используете одинаковый стиль для стрелок по всей диаграмме коммуникации.
Не обязательно размещать прямые стрелки, вы можете изгибать их по мере необходимости. Кроме того, убедитесь, что вы создаете достаточное расстояние между линиями. Становится трудно читать, если линии находятся слишком близко друг к другу.
Шаг 4: Пометьте стрелки
Добавьте порядковый номер и идентификатор сообщения на каждую стрелку, чтобы обозначить порядок сообщения и о чем сообщение. Чтобы эффективно маркировать и нумеровать сообщения, следуйте лучшим практикам UML. Учитывайте стандартные размеры и шрифты в отрасли.
Шаг 5: Завершите и поделитесь диаграммой
Отрегулируйте и организуйте все символы и элементы аккуратно, чтобы было легко понять поток сообщений. Используйте разные цвета для различения последовательностей сообщений и типов объектов.
Как только вы закончите, проконсультируйтесь с заинтересованными сторонами и попросите их просмотреть и завершить созданную вами диаграмму. Затем поделитесь окончательной диаграммой с коллегами, членами команды или другими людьми, с которыми вы хотите.
Ваша диаграмма коммуникации будет выглядеть как показано ниже. Однако разные предметы могут иметь разные диаграммы.

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