Диаграмма последовательности сообщений - Message sequence chart

На схеме показаны три объекта. При запуске телефон отключается. Пользователь пытается установить соединение. На коммутатор отправляется запрос на соединение и запускается таймер. Альтернатива имеет дело с двумя возможными ответами: 1 - таймер отключается, потому что коммутатор не ответил, и телефон возвращается в отключенное состояние. 2 - коммутатор разрешает соединение, и вызов устанавливается.

А диаграмма последовательности сообщений (или же МСК) является диаграмма взаимодействия от SDL семья стандартизирована Международный союз электросвязи.

Целью рекомендации MSC (Message Sequence Chart) является обеспечение языка трассировки для спецификации и описания коммуникационного поведения компонентов системы и их среды посредством обмена сообщениями. Поскольку в MSC коммуникативное поведение представлено очень интуитивно и прозрачно, особенно в графическом представлении, язык MSC легко воспринимается, используется и интерпретируется. В сочетании с другими языками он может использоваться для поддержки методологий для спецификации системы, проектирования, моделирования, тестирования и документации.

История

Первая версия стандарта MSC была выпущена 12 марта 1993 года.

В версии 1996 года добавлены ссылки, порядок и встраивание концепции выражений и представил HMSC[1] (ЧАСвысокий уровень Mэссе Sравнодушие Charts), которые являются способом экспрессии последовательности МСК.

Версия MSC 2000[2] добавили объектную ориентацию, улучшили использование данных и времени в диаграммах и добавили концепцию удаленных вызовов методов.[3]

Последняя версия была опубликована в феврале 2011 года.

Символы в MSC

Существующие символы:

  • Голова, линия жизни и конец MSC: вертикальная линия с прямоугольником вверху и прямоугольником или крестом внизу.
  • Создание экземпляра: горизонтальная пунктирная стрелка к вновь созданному экземпляру.
    Создание динамического процесса в MSC
  • Обмен сообщениями: горизонтальная стрелка.
  • Поток управления: горизонтальная стрелка с префиксом «вызов», пунктирная стрелка для символа ответа, символы метода и приостановки между ними.
    Операция вызова в MSC
  • Таймеры: запуск, отмена, тайм-аут.
  • Временной интервал: относительный и абсолютный с пунктирной вертикальной стрелкой.
    Ограничение по времени в MSC
  • Условия: обычно используется для представления состояния основного конечного автомата.
  • Действие: коробка.
  • Встроенные выражения: альтернативная композиция, последовательная композиция, исключение, необязательная область, параллельная композиция, итерация (цикл).
  • Ссылка: ссылка на другой MSC.
    Ссылка MSC в MSC
  • Концепция данных: пользователь может использовать любую концепцию данных, если привязка не определена, концепция данных по умолчанию - это та из SDL как определено в рекомендации Z.121.
  • Coregion: двойная пунктирная линия экземпляра для описания неупорядоченных событий.

Расширения символов

  • SDL-RT представил:
    • представление экземпляра семафора.
      Расширение семафоров SDL-RT для MSC
    • символ сохранения для сохранения сообщений.

Сравнение с UML

UML 2.0 Схема последовательности сильно вдохновлен ITU-T MSC. Тем не менее, по историческим причинам основные принципы по умолчанию сильно отличаются:

  • Линии жизни
  • В MSC вертикальные линии представляют собой автономные исполнительные объекты. Обычно они представляют собой конечные автоматы, выполняющиеся параллельно. Конечные автоматы не обязательно должны находиться на одном компьютере.
  • На диаграмме последовательности вертикальная линия обычно представляет собой объект. Объект может быть активным (в собственном потоке выполнения) или пассивным (в контексте выполнения активного объекта).
  • Стрелки
  • В MSC стрелка обычно представляет собой асинхронное сообщение, отправляемое от одного объекта к другому. Как только сообщение отправлено, отправляющий объект возобновляет свое выполнение.
  • На диаграмме последовательности стрелка обычно понимается как вызов операции над классом. Следовательно, он синхронный, и вызывающий объект зависает, пока операция не вернется.

Было сказано, что MSC рассматривался в качестве кандидата на диаграммы взаимодействия в UML.[4]

Однако сторонники MSC, такие как Ericsson думаю, что MSC лучше, чем UML 2.0 для моделирования больших или сложных систем.[5]

Графики последовательностей в реальном времени

Дэвид Харел предположил, что у MSC есть такие недостатки, как:

  • MSC предлагает слабую частичный заказ семантика, из-за которой невозможно уловить некоторые поведенческие требования,
  • Связь между требованиями MSC и исполняемой спецификацией не ясна,

и предложила Live Sequence Charts (LSC) как расширение стандарта MSC.[6][7][8]

Смотрите также

  • PSC Диаграмма последовательности свойств, способ описания свойств в MSC[9] или диаграмму последовательности.
  • SDL Язык спецификации и описания, язык ITU-T, связанный с MSC.
  • Диаграммы взаимодействия в UML.

Рекомендации

  1. ^ «ВГМК». sdl-forum.org. Получено 2009-09-19.
  2. ^ Øystein Haugen. «МСК 2000» (PDF). Ericsson. Архивировано из оригинал (PDF) на 2011-06-07. Получено 2009-09-19.
  3. ^ «Что нового в MSC 2000 по сравнению с MSC 96». sdl-forum.org. Получено 2009-09-19.
  4. ^ Эккарт Рудольф; Йенс Грабовски; Питер Граубманн (1999). «На пути к гармонизации диаграмм последовательностей UML и MSC». Геттингенский университет. Получено 2014-08-25.
  5. ^ Ойстейн Хауген (июнь 2000 г.). «UML 2.0 против SDL / MSC - Заявление о позиции Эрикссон» (PDF). Ericsson. Получено 2009-09-19.
  6. ^ Дэвид Харел (2003-04-08). «Диаграммы последовательности сообщений» (PDF). Архивировано из оригинал (PDF) на 2006-08-26. Получено 2009-09-20.
  7. ^ Дэвид Харел (2005-02-22). «LSC: Вдыхая жизнь в диаграммы последовательности сообщений». Формальные методы в системном дизайне. 19: 45–80. Дои:10.1023 / А: 1011227529550.
  8. ^ Дэвид Харел (2002). «Множественные экземпляры и символьные переменные в исполняемых диаграммах последовательности». Уведомления ACM SIGPLAN. 37 (11): 83. CiteSeerX  10.1.1.20.5984. Дои:10.1145/583854.582429.
  9. ^ Эммануэль Годен; Эрик Брунель (2013). SDL 2013: проектирование надежности на основе моделей. Конспект лекций по информатике. 7916. Springer. С. 19–35. Дои:10.1007/978-3-642-38911-5_2. ISBN  978-3-642-38910-8.

внешняя ссылка