4567. Чем принципиально отличается диаграмма коммуникации (Communication Diagram) от диаграммы последовательности (Sequence Diagram), если обе моделируют взаимодействие объектов?
Anonymous Quiz
38%
Диаграмма коммуникации не показывает порядок сообщений во времени
16%
Диаграмма коммуникации не может отображать создание или уничтожение объектов
22%
Диаграмма коммуникации не может отображать условную логику (операторы alt, opt)
25%
Диаграмма коммуникации фокусируется на жизненных циклах объектов, а не на обмене сообщениями
👩🏫Объяснение:
Обе диаграммы — последовательности (Sequence) и коммуникации (Communication) — являются разновидностями диаграмм взаимодействия (Interaction Diagram). Их ключевое различие — в акцентах:
Диаграмма последовательности делает упор на временной порядок сообщений. Сообщения располагаются строго сверху вниз, что наглядно показывает последовательность вызовов. Здесь легко увидеть, что случилось раньше, а что позже.
Диаграмма коммуникации делает упор на структурные связи между объектами (ролями) и обмен сообщениями по этим связям. Порядок сообщений указывается с помощью порядковых номеров (например, 1, 1.1, 2, 2.1). Это дает лучшее понимание о структурной организации, но визуальное восприятие временной последовательности здесь слабее.
Остальные варианты неверны: обе диаграммы могут отображать создание/уничтожение объектов, фокус — на взаимодействии, а не жизненных циклах, и условную логику можно показать в обеих.
Диаграмма последовательности делает упор на временной порядок сообщений. Сообщения располагаются строго сверху вниз, что наглядно показывает последовательность вызовов. Здесь легко увидеть, что случилось раньше, а что позже.
Диаграмма коммуникации делает упор на структурные связи между объектами (ролями) и обмен сообщениями по этим связям. Порядок сообщений указывается с помощью порядковых номеров (например, 1, 1.1, 2, 2.1). Это дает лучшее понимание о структурной организации, но визуальное восприятие временной последовательности здесь слабее.
Остальные варианты неверны: обе диаграммы могут отображать создание/уничтожение объектов, фокус — на взаимодействии, а не жизненных циклах, и условную логику можно показать в обеих.
4568. В каком из следующих сценариев использование диаграммы объектов (Object Diagram) будет НАИБОЛЕЕ полезным?
Anonymous Quiz
34%
Для демонстрации общего логического дизайна системы и всех возможных классов.
14%
Для описания того, какие пакеты исходного кода зависят друг от друга.
25%
Для моделирования пошагового бизнес-процесса с ветвлениями и параллельными потоками.
28%
Для документирования конкретного снимка системы в определенный момент времени.
👩🏫Объяснение:
Диаграмма объектов — это конкретная, «живая» иллюстрация диаграммы классов в определенный момент времени. Если диаграмма классов — это схема (чертеж), то диаграмма объектов — это фотография готового механизма в работе.
Она показывает конкретные объекты (экземпляры классов) с их текущими значениями атрибутов и фактическими связями между ними в памяти.
Это чрезвычайно полезно для:
Тестирования и отладки сложных структур данных.
Объяснения конкретного сценария использования системы (как выглядят данные при оформленном заказе №123).
Валидации диаграммы классов на реальных примерах.
Вариант A — задача для диаграммы классов, вариант C — для диаграммы деятельности, вариант D — для диаграммы компонентов или пакетов.
Она показывает конкретные объекты (экземпляры классов) с их текущими значениями атрибутов и фактическими связями между ними в памяти.
Это чрезвычайно полезно для:
Тестирования и отладки сложных структур данных.
Объяснения конкретного сценария использования системы (как выглядят данные при оформленном заказе №123).
Валидации диаграммы классов на реальных примерах.
Вариант A — задача для диаграммы классов, вариант C — для диаграммы деятельности, вариант D — для диаграммы компонентов или пакетов.
4569. На диаграмме вариантов использования (Use Case Diagram) отношение <<extend>> означает, что...
Anonymous Quiz
13%
Базовый вариант использования всегда включает в себя расширяющий.
14%
Расширяющий вариант использования является обязательной частью базового.
65%
Расширяющий вариант использования может добавлять поведение к базовому при выполнении.
8%
Базовый вариант использования наследует поведение расширяющего.
👩🏫Объяснение:
Отношение <<extend>> указывает, что поведение расширяющего (extending) варианта использования может быть добавлено к поведению базового (base) варианта использования, но только при определённых условиях (extension point). Это отношение описывает опциональное поведение, которое активируется только в некоторых сценариях выполнения базового варианта. Например, базовый вариант «Оформить заказ» может быть расширен вариантом «Применить промокод» при наличии у пользователя промокода.
4570. Что обозначает ромб на конце линии ассоциации в диаграмме классов (Class Diagram)?
Anonymous Quiz
3%
Кардинальность связи (количество объектов).
70%
Отношение «часть-целое» (агрегацию или композицию).
16%
Направление вызова метода.
10%
Стереотип отношения между классами.
🤔2
👩🏫Объяснение:
Ромб на конце ассоциации указывает на отношение агрегации (незакрашенный ромб) или композиции (закрашенный ромб). Ромб всегда располагается со стороны целого (контейнера), который содержит части.
Агрегация (незакрашенный ромб): Слабое отношение владения. Часть может существовать независимо от целого (например, «Профессор» и «Кафедра»).
Композиция (закрашенный ромб): Сильное отношение владения, подразумевающее совпадающие жизненные циклы (например, «Заказ» и «ПозицияЗаказа»).
Направление вызова показывается стрелкой, стереотип — текстом в << >>, а кардинальность — числами на концах линии.
Агрегация (незакрашенный ромб): Слабое отношение владения. Часть может существовать независимо от целого (например, «Профессор» и «Кафедра»).
Композиция (закрашенный ромб): Сильное отношение владения, подразумевающее совпадающие жизненные циклы (например, «Заказ» и «ПозицияЗаказа»).
Направление вызова показывается стрелкой, стереотип — текстом в << >>, а кардинальность — числами на концах линии.
4571. Какой элемент диаграммы деятельности (Activity Diagram) используется для ветвления потока управления на основе условия?
Anonymous Quiz
58%
Узел решения (Decision Node).
28%
Разделитель (Fork Node).
11%
Начальный узел (Initial Node).
3%
Узел слияния (Merge Node).
👩🏫Объяснение:
Узел решения (Decision Node, изображается ромбом с одним входящим и несколькими исходящими потоками) используется для ветвления потока управления в зависимости от условий охраны (guard conditions), которые записываются в квадратных скобках на исходящих потоках (например, [сумма > 1000], [иначе]). Это аналог оператора if-else или switch-case.
Начальный узел — точка начала активности.
Разделитель (Fork) — для создания параллельных потоков.
Узел слияния (Merge) — для объединения нескольких альтернативных потоков обратно в один (а не для слияния параллельных).
Начальный узел — точка начала активности.
Разделитель (Fork) — для создания параллельных потоков.
Узел слияния (Merge) — для объединения нескольких альтернативных потоков обратно в один (а не для слияния параллельных).
4572. а диаграмме последовательности (Sequence Diagram) что представляет собой прямоугольник, активирующийся на линии жизни объекта?
Anonymous Quiz
12%
Время существования объекта.
80%
Период, в течение которого объект выполняет операцию (прямо или через вызовы другим объектам).
5%
Состояние объекта в данный момент времени.
3%
Создание нового экземпляра объекта.
👩🏫Объяснение:
Этот прямоугольник называется полоса активации (activation bar) или фокус управления (focus of control). Он показывает период, когда объект активен, то есть выполняет какую-либо обработку. Его начало обычно совпадает с получением сообщения (вызовом метода), а конец — с возвратом управления (возвратом из метода). Чем длиннее полоса, тем дольше объект занят выполнением операции. Она также может включать вложенные вызовы другим объектам, которые отображаются как новые полосы активации на линиях жизни этих объектов.
4573. Как в диаграмме классов (Class Diagram) обозначается абстрактный класс?
Anonymous Quiz
18%
Его имя записывается курсивом.
6%
Его имя записывается в двойных кавычках.
48%
К нему добавляется стереотип <<abstract>>.
28%
Он изображается пунктирной прямоугольной рамкой.
👩🏫Объяснение:
Согласно нотации UML, абстрактный класс (класс, который не может иметь непосредственных экземпляров и содержит хотя бы один абстрактный метод) обозначается написанием его имени курсивом. Это стандартное графическое соглашение. Дополнительно (но не обязательно) можно использовать стереотип <<abstract>> над именем класса. Абстрактные методы внутри такого класса также записываются курсивом. Этот визуальный сигнал помогает быстро выделить абстрактные элементы на диаграмме.