Параллельные переходы

Не знаете в какой раздел поместить свою тему? Кладите сюда

Параллельные переходы

Сообщение Aleksey.Miklin » 21 фев 2012, 18:07

Добрый день!
У меня вопрос про очерёдность событий в картах состояний. (Я занимаюсь реализацией UML State Machine).
Рассмотрим для примера композитное состояние с двумя параллельными регионами:
ParallelTransitions.png
ParallelTransitions.png (18.45 ) Просмотров: 3649


- Наступает момент, когда выполняется x>0 (можно было взять любое другое событие).
Вопросы:

1. Окажется ли первый регион в состоянии S13?
- с одной стороны, сигнал посылается, когда целевое состояние, в котором обрабатывается сигнал, еще не достигнуто, но с другой стороны, если обрабатывать сигнал на следующем такте, то всё в порядке.

2. Окажется ли второй регион в состоянии S22?
- по идее, событие x>0 должно параллельно обрабатываться в обоих регионах. А сигнал - только на следующем такте, когда уже покинем обрабатывающее его состояние.

3. А может быть здесь проявится неопределённое поведение?

4. Где можно подробнее почитать про подобные нюансы?

Буду признателен за ответ.
Aleksey.Miklin
 
Сообщений: 1
Зарегистрирован: 21 фев 2012, 17:17

Re: Параллельные переходы

Сообщение Denis.Ivanov » 21 фев 2012, 19:38

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

Что касается самой модели и возможных разночтений в ее интерпретации, то тут все должно быть ясно - надо создавать такие модели, которые были бы однозначно интерпретируемы.
Denis.Ivanov
Администратор
 
Сообщений: 223
Зарегистрирован: 07 май 2009, 23:16


Вернуться в Все остальноe

cron