2014-11-08 6 views
3

У меня вопрос, как я могу нарисовать блок try catch в диаграмме последовательностей в UML? Можно ли сделать попытку как обычный случай и улов как альтернативный случай или нет?Seq Diagram Рисунок try catch catch в UML

Я использую Visio для рисования диаграмм последовательности UML.

ответ

4

Диаграмма последовательности UML не может визуализировать исключения. Есть "обходные пути", однако, пожалуйста, обращайтесь:

+0

@ Lisa Если исключения и альтернативы важны для вашей модели, вы можете использовать обозначение «прерывистый край» диаграммы активности UML вместе с диаграммой последовательности UML, например, в [обзорной диаграмме взаимодействия UML] (http: //www.uml- diagrams.org/interaction-overview-diagrams.html) или в вашем настроенном «миксе», как указано в http://www.uml-diagrams.org/uml-25-diagrams.html «_ .. Спецификация UML не исключает смешивание различных видов диаграмм .._ " – xmojmr

0

Там нет стандартного способа моделирования обработки исключений в диаграмме последовательности. Вот как я справиться с этим:

enter image description here

На приведенной выше схеме генерируется с помощью веб-Sequence свободный (открытый исходный код) расширение хром. Вы можете получить его отсюда: https://chrome.google.com/webstore/detail/web-sequence/kcpganeflmhffnlofpdmcjklmdpbbmef или с официального сайта: https://www.zenuml.com. Чтобы проверить это, вы можете просто вставить следующий код в редактор кода вышеупомянутого плагина или на сайт.

JobTask.Run() { 
    try() { 
    Action.Execute() { 
     InternalException.throw() 
    } 
    } 
    InternalException.Catch() { 
    Logger.Error() 
    HighLevelException.throw() 
    } 
} 

Он демонстрирует, что у нас есть блок try. Внутри этого блока мы выполняем Action.Execute(), в котором может быть выбрано InternalException. Затем мы улавливаем его, регистрируем ошибку и реконструируем HighLevelException, что является довольно типичной стратегией обработки исключений.

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

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