Свойство вызова диаграммы последовательности UML

StackOverflow https://stackoverflow.com/questions/532423

Вопрос

В моем приложении у меня есть класс Document и класс DocumentFact.Класс DocumentFact содержит методы, которые будут получать несколько документов из базы данных.Эти документы хранятся в datatable или наборе данных.Оба (datatable, dataset) являются закрытыми членами класса documentfact.К ним можно получить доступ через свойства.

Теперь мой вопрос заключается в следующем:на диаграмме последовательности разрешено ли вызывать такое свойство, как это:

Actor      Web interface    DocumentFact          Database
  |          |                 |                      |
  |input     |                 |                      |
  |------->  |  GetDocuments   |                      |
  |          |---------------->|                      |
  |          |                 | ExecuteSelectQuery() |
  |          |                 | -------------------->|
  |          |                 |                      |
  |          |                 |      Bool            |
  |          |                 | <--------------------|
  |          |                 |                      |
  |          |                 |   GetDataSet()       |
  |          |                 | -------------------->|
  |          |                 |                      |
  |          |                 |    DataSet           |
  |          |                 |<---------------------|
  |          |                 |                      |

Где GetDataSet - это свойство.Правильно ли это?И если это не так, то каков правильный способ сделать это?

Примечание: Это всего лишь часть моей диаграммы последовательности, остальное не имеет отношения к делу.

Это было полезно?

Решение

Одна важная вещь, которую следует помнить, - это то, что UML не является формальной нотацией, поэтому вы можете делать все, что считаете нужным.Если что-то непонятно (или вам приходится слишком много думать о том, как это представить), вам, вероятно, следует добавить примечание.

Одной из вещей, которые я нашел очень полезными в диаграммах последовательности, было пронумеровать сообщения (или группы сообщений) и запустить диалоговое окно (отформатированное в виде нумерованного списка), объясняющее, что происходит (...и почему вы делаете это именно так).Вы должны помнить, что диаграмма не стоит сама по себе, а должна быть интегрирована в больший объем документации, таким образом, то, как конкретно представлять свойство, на самом деле не имеет большого значения.Просто выберите представление и объясните, что GetDataSet - это свойство Database (или что-то еще :).

Другие советы

Я столкнулся с аналогичной проблемой при документировании своего дизайна.Я только что добавил текст "property" под вызовом метода (Под стрелкой).(Я не нашел "правильного" UML-способа сделать это.) Хотя это не стандартный UML, насколько я знаю, это действительно донесло суть.Конечно, у вас это может плохо получиться, и в этом случае вам будет лучше использовать стандартный UML.

Вы можете показать свойство с помощью stereotype.Например, если DataSet является свойством, и вы вызываете средство получения, используете <<get>> стереотип.Так что это выглядело бы как

     DataSet <<get>>
--------------------->

Я не уверен, есть ли это в спецификации UML.Но это в соответствии с предложением Скотта Эмблера в его превосходном Элементы стиля UML 2.0.

Он также рекомендует сохранить стереотипы после названия.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top