UML.Диаграмма последовательности.

Применяется для рассмотрения взаимодействия элементов во времени. Имеет ряд элементов.

UML.Диаграмма последовательности. - student2.ru

Линия жизни объекта (objectlifeline) изображается пунктирной вертикальной линией, ассоциированной с единственным объектом на диаграмме последовательности. Линия жизни служит для обозначения периода времени, в течение которого объект существует в системе и, следовательно, может потенциально участвовать во всех ее взаимодействиях (телефонный разговор, заказ в ресторане – временные объекты должны уничтожаться).

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

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

· UML.Диаграмма последовательности. - student2.ru Асинхронное – инициируется актером в произвольный момент времени.

· UML.Диаграмма последовательности. - student2.ru Вызов процедуры (ждет обратный ответ)

· UML.Диаграмма последовательности. - student2.ru Ответ на процедуру

· UML.Диаграмма последовательности. - student2.ru Сообщение поток(несет информацию, но не требует ответа).

Стереотипы сообщений

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

  • "call" (вызвать) - сообщение, требующее вызова операции или процедуры принимающего объекта. Если сообщение с этим стереотипом рефлексивное, то оно инициирует локальный вызов операции у самого пославшего это сообщение объекта;
  • "return" (возвратить) - сообщение, возвращающее значение выполненной операции или процедуры вызвавшему ее объекту. Значение результата может инициировать ветвление потока управления;
  • "create" (создать) - сообщение, требующее создания другого объекта для выполнения определенных действий. Созданный объект может получить фокус управления, а может и не получить его;
  • "destroy" (уничтожить) - сообщение с явным требованием уничтожить соответствующий объект. Посылается в том случае, когда необходимо прекратить нежелательные действия со стороны существующего в системе объекта, либо когда объект больше не нужен и должен освободить задействованные им системные ресурсы;
  • "send" (послать) - обозначает посылку другому объекту некоторого сигнала, который асинхронно инициируется одним объектом и принимается (перехватывается) другим. Отличие сигнала от сообщения заключается в том, что сигнал должен быть явно описан в том классе, объект которого инициирует его передачу.

UML.Диаграмма последовательности. - student2.ru

В [] скобках – сторожевое условие

В {} скобках – ограничение

В () скобках – ответ на процедуру (только в операциях).

{время_приема_сообщениявремя_отправки< 1 сек}

Недостатки диаграммы последовательности:

1.загроможденность

2.сложность определения взаимосвязей между объектами.

  1. Сопоставление и взаимосвязь структурного и объектно-ориентированного подходов.

Основной недостаток структурного подхода:

Процессы и данные существуют отдельно друг от друга, причем проектирование видется от процесса к данным.

Достоинства объектно-ориентированного подхода:

  1. Объектно-ориентированные системы более открыты и легче поддаются внесению изменений, что дает возможность системе развиваться постепенно и не приводит к полной ее переработки даже в случае существенных изменений исходных требований.
  2. Объектная декомпозиция дает возможность создавать программные системы меньшего размера путем использования общих механизмов.
  3. Объектная декомпозиция уменьшает риск создания сложных систем программного обеспечения, т.к. она предполагает эволюционный путь развития системы на базе относительно небольших подсистем.
  4. Объектная модель более естественна, т.к. ориентирована на человеческое восприятие мира.
  5. Позволяет использовать выразительные возможности объектно-ориентированных языков программирования.

Недостатки объектно-ориентированного подхода:

1. высокие начальные затраты (отдача наступает после 2 проекта)

2. некоторое снижение производительности функционирования программного обеспечения.

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

Наши рекомендации