2013-08-29 2 views
6

Я хочу создать простой embedded system. Особая вещь в том, что я хочу спроектировать свою архитектуру, используя UML. Среди других диаграмм, которые я использую, у меня есть Sequence Diagram, как показано на рисунке ниже.Как представить прерывание в диаграмме последовательности UML?

enter image description here

То, что я пытаюсь изобразить здесь в том, что последовательность заключена в «LOOP» фрагмента быть снова и снова, пока выполнение не событие.

Блок Interrupt Service Routine (ISR) в крайнем правом углу диаграммы представляет собой блок, который выполняет асинхронно и генерирует ожидаемое событие.

Проблема заключается в том, что, поскольку событие может быть сгенерировано в любое время во время последовательности циклов, только один раз каждый раз, например, каждые 10 мс и отправляться в «Модуль 2», я не знаю, как чтобы представить это.

Если я просто поставил стрелку сообщения, указывающую от блока «ISR» на «Модуль 2», я понимаю, что это означает, что сообщение, содержащее событие, будет отправлено с «ISR» на «Module 2» как часть цикла, каждый раз, когда цикл выполняется, но это не то, что мне нужно. Мне нужно изобразить тот факт, что сообщение от «ISR» до «Module 2» отправляется только каждые X миллисекунд или случайно во времени (в случае аппаратного прерывания).

Любые предложения?

ответ

2

Я не уверен на 100%, но думаю, это невозможно только с диаграммами последовательностей (я продолжу смотреть на него ...). Я бы сохранил эту диаграмму последовательности для моделирования ядра цикла и использовал диаграмму действий для моделирования исключения. Общая идея заключалась бы в моделировании, как показано ниже, по крайней мере CallBehavior, который вызовет вашу последовательность, ExceptionHandler, чтобы поймать ваше исключение и обработать ваше исключение, которое может быть другим поведением или тем, что вы хотите. Надеясь, что это помогает, Modelio Exception

+0

Если вы вынуждены использовать диаграмму последовательности, этот хак имеет смысл для меня. –

3

Схема последовательности предназначена для описания конкретного исполнения. Чтобы описать все возможные действия, вы должны использовать диаграмму конечного автомата.

 Смежные вопросы

  • Нет связанных вопросов^_^