#uml #use-case
#uml #пример использования
Вопрос:
У меня есть варианты использования, в которых пользователь может просматривать статистику. Статистика должна генерироваться автоматически каждые 10 секунд.
Каков наилучший способ моделирования зависимости между view statistic
и generate statistic
? Таким образом, пользователь может изменить интервал или что-то еще в генерации статистики.
Или я должен удалить generate statistic
из диаграммы вариантов использования?
___UPDATE
И что произойдет, когда у меня будет еще один вариант использования для управления генерацией статистики? Будет ли обводка между generate statistic
и control statistic
генерацией или нет?
Ответ №1:
Статистика a, сгенерированная другим субъектом (скажем Scheduler
). Так что это должно быть действующим лицом для этого варианта использования.
Если что-то еще управляет созданием статистики, вы можете перейти к обобщению:
Комментарии:
1. Это тот же подход, что и использование временного актера или?
2. Время — это мера (как сказал Эйнштейн, это то, что вы можете прочитать на своих часах). Однако вы можете назвать это таймером 😉
Ответ №2:
НЕ удаляйте генерировать статистику. Это важная часть функциональности, отдельный вариант использования, и его удаление приведет к путанице с фактической функциональностью. Поскольку @thomaskilian уже предоставил ответ о том, как обрабатывать сгенерированную статистику, я не буду повторять это здесь. Вторая важная информация — несмотря на то, что все упомянутые варианты использования (просмотр статистики, генерация статистики и контроль статистики) связаны со статистикой как таковой, в качестве поведения они являются отдельными и НЕ связаны. Таким образом, на диаграммах нет взаимосвязи. Конечно, генерация статистики зависит от текущих объектов, связанных с генерацией статистики, в то время как статистика управления изменяет эти объекты. Аналогично Generate statistics генерирует объект типа Statistics, а просмотр статистики дает возможность просматривать эти объекты, но эти отношения находятся только на уровне данных. Поведение (варианты использования) не взаимодействуют напрямую.