Форум Сообщества Аналитиков

Общий раздел => Теория моделирования и нотации => UML SysML и пр. => Тема начата: Decline от 06 Февраля 2008, 12:28:26

Название: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Decline от 06 Февраля 2008, 12:28:26
Здравствуйте.
Насколько я знаю, при моделировании систем различные типы диаграмм оказываются тесно связанными друг с другом(UC-диаграммы состояний, диаграммы классов с диаграммами последовательности и.т.д).
Меня интересует связь между диаграммами последовательности(ДП) и диаграммами состояний(ДС). Используется ли такая при моделировании?
В простейшем случае она может выглядеть так:
для некоторых состояний в ДС инициирующее событие перехода состояния в другое состояние совпадает с некоторым сообщением, которое получает объект(моделируемый вышеописанной ДС) на ДП. И обратно, в некоторых состояниях входной эффект состояния совпадает с некоторым сообщением посылаемым объектом.Если непонятно, могу описать более подробно.
Вопрос возник в связи с научной работой.
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: bas от 06 Февраля 2008, 12:38:35
Это зависит уже от реализации конкретного инструмента. В спеке никаких ограничений по этому поводу нет.
Но такой реализации нигде я не видел. Вот, например, что нашли ребята в ЕА: http://www.uml2.ru/forum/index.php?topic=579.msg7178#msg7178

З.Ы. Хорошо бы нарисовать и прикрепить ДС и ДП и показать на примере здесь, чтобы всем было однозначно ясно
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Decline от 06 Февраля 2008, 13:07:35
К сожалению прямо сейчас не могу нарисовать, но если описать словами:
Пусть на ДП объект X посылает объекту Y сообщение mes()
Тогда для некоторого состояния в ДС Y есть переход по событию mes(). Кроме того в ДС X есть состояние с входным эффектом mes() (/entry mes() ).

Постараюсь вечером прикрепить диаграммы.
Вобще для чего это нужно - мне пришла в голову мысль, а что если связать ДС и ДП так, чтобы на ДП описывался внешний протокол обмена сообщениями, а на ДС соответствующих объектов -  логика(концепция, шаги) их обработки. Далее такую систему можно использовать для верификации программных свойств, путем сведения к некоторым мат.моделям.
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Decline от 06 Февраля 2008, 13:43:27
Таким образом на-практике эта связь не используется, да?
Как вы считаете насколько она логична и естественна?
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: bas от 06 Февраля 2008, 14:52:39
Вобще для чего это нужно - мне пришла в голову мысль, а что если связать ДС и ДП так, чтобы на ДП описывался внешний протокол обмена сообщениями, а на ДС соответствующих объектов -  логика(концепция, шаги) их обработки. Далее такую систему можно использовать для верификации программных свойств, путем сведения к некоторым мат.моделям.
Не совсем вас понимаю, как потом можно это будет использовать для мат. моделирования. Ведь ДС описывает больше переходы внутри одной ф-ции или объекта, а ДП описывает взаимодействие с внешними объектами\системами. Ну есть у вас входное состояние и что? Как оно поможет вам на ДС, где будет описано именно действия внутри объекта?
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Gevorg от 06 Февраля 2008, 15:43:58
Таким образом на-практике эта связь не используется, да?
Как вы считаете насколько она логична и естественна?
используется, используется!

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

- Набор состояний, как правило, удаётся получить от заказчика напрямую.

Остаётся увязать всё это в диаграммы состояний.

Сбор соответствия Communication message - State-Chart signal приходится пока делать вручную и
независимо отображать результат в ЭА диаграммах.


Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Decline от 06 Февраля 2008, 15:58:35
Не совсем вас понимаю, как потом можно это будет использовать для мат. моделирования. Ведь ДС описывает больше переходы внутри одной ф-ции или объекта, а ДП описывает взаимодействие с внешними объектами\системами. Ну есть у вас входное состояние и что? Как оно поможет вам на ДС, где будет описано именно действия внутри объекта?
Да, именно. Объект получил сообщение/вызов метода (getmes()), для выполнения метода объект вызывает внутренние подметоды(или например в зависимости от состояния может обработать запрос различными путями) - это и описывается в ДС. Когда он обработал запрос он переходит в состояние входным действием которого будет ответ на запрос (return result).

Эта система очень похожа на сети Петри высокого уровня, собственно их я и предполагаю использовать для мат.моделирования и верификации.
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Decline от 06 Февраля 2008, 15:59:54
используется, используется!

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

- Набор состояний, как правило, удаётся получить от заказчика напрямую.

Остаётся увязать всё это в диаграммы состояний.

Сбор соответствия Communication message - State-Chart signal приходится пока делать вручную и
независимо отображать результат в ЭА диаграммах.
Спасибо!
Ибо мне показалось что идея не совсем бредовая, поэтому хотелось уточнить )
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: Денис Иванов от 24 Июля 2008, 00:10:34
Меня интересует связь между диаграммами последовательности(ДП) и диаграммами состояний(ДС). Используется ли такая при моделировании?

На диаграмме последовательности можно показывать как объект меняет свое состояние.
Название: Re: Связь между диаграмми последовательности и диаграммами состояний
Отправлено: [прилетело НЛО и...] от 26 Января 2022, 18:44:38
Связь есть, и она проходит через головы тех, кто строит модель. ДП определяет некоторые трассы, а ДС --, образно говоря, карту, по которой эти трассы проходят и правила передвижения.
Приводимый пример не точен в этой части:
Цитировать
Пусть на ДП объект X посылает объекту Y сообщение mes(). ... в ДС X есть состояние с входным эффектом mes() (/entry mes() ).
Первое, отправка сообщения Y.mess() может быть в любом эффекте, не обязательно в эффекте входного действия.
Второе, ДП может моделировать трассу, на которой X и Y не взаимодействуют или взаимодействуют так, что вызов Y.mess() не происходит.
Третье. Y может игнорить отправляемые ему вызовы Y.mess(). Значит, неточно и это:
Цитировать
...для некоторого состояния в ДС Y есть переход по событию mes().