Форум Сообщества Аналитиков

Общий раздел => Для всех => Тема начата: dashafromrussia от 21 Мая 2018, 01:11:23

Название: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: dashafromrussia от 21 Мая 2018, 01:11:23
Здравствуйте!

Разрабатываю USE CASE диаграмму для учебного проекта. Есть сомнения в ее правильности, в связи с этим два вопроса:
1. Легально ли делать связь "include" к прецеденту, который уже является "инклудом" для другого прецедента? (см. рисунок).
2. Можно ли связывать актора, допустим, с одним прецедентом "include", при этом не связывая с основным? (Красная стрелка)

Спасибо!
(http://)
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: dashafromrussia от 21 Мая 2018, 02:05:55
Осознала, что стрелки не в ту сторону. Но вопрос открытый..
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 21 Мая 2018, 10:03:38
Это должно умереть. Это не диаграмма вариантов использования.

В лучшем случае - это можно назвать диаграммой иерархии функций.
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: dashafromrussia от 21 Мая 2018, 15:52:38
Это должно умереть. Это не диаграмма вариантов использования.

В лучшем случае - это можно назвать диаграммой иерархии функций.

Да, хорошо, этот вариант умирает.
Но если убрать лишний промежуточный "прецедент", то  есть ли у этого шанс на жизнь?
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 21 Мая 2018, 20:13:25
Да, хорошо, этот вариант умирает.
Но если убрать лишний промежуточный "прецедент", то  есть ли у этого шанс на жизнь?


А что изменилось?

Вы разрабатываете систему предназначенную для управления отоплением, вся система это делает. В чем смысл делать инклюды?
Начните с того, что
1. уберите управление отоплением к чертям
2. нарисуйте оставшееся без инклюдов, посмотрим дальше
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: [прилетело НЛО и...] от 25 Мая 2018, 15:49:06
Разрабатываю USE CASE диаграмму для учебного проекта. Есть сомнения в ее правильности, в связи с этим два вопроса:
Без текстовых описаний ВИ и условий Вашего учебного проекта затруднительно оценить правильность в плане содержания. Остаётся оценивать соблюдение правил стандарта UML.

1. Легально ли делать связь "include" к прецеденту, который уже является "инклудом" для другого прецедента?
Да.

2. Можно ли связывать актора, допустим, с одним прецедентом "include", при этом не связывая с основным?
Можно. Если направлением связи Вы показываете является ли действующее лицо основным, то стрелки идут обычно от включаемых ВИ ко второстепенным ДЛ. Иначе может оказаться, что у включаемого ВИ два основных ДЛ: 1) непосредственно связанной с ним + 2) основное ДЛ включающего ВИ.

Содержательная "правильность" инклудов вытекает из описаний сценариев ВИ. Но Вы их не приводите (у Вас их нет). Значит учебное упражнение в этой части бессмысленно. 
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 25 Мая 2018, 20:25:18

1. Легально ли делать связь "include" к прецеденту, который уже является "инклудом" для другого прецедента? (см. рисунок).
Да.

Можете ли привести внятный пример, подтверждающий обоснованность этого утверждения?
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: [прилетело НЛО и...] от 26 Мая 2018, 20:10:32
Пример нарисовали Рамбо и Блаха в своей книге:
(http://images.slideplayer.com/25/7732786/slides/slide_55.jpg)
Ещё раз обращаю внимание, ответ дан в смысле соблюдения/нарушения стандарта UML.
Можно вместо стандарта рассматривать правила каких-либо методик, стилей рисования диаграмм и проч. Можно восклицать: "Что в голове у автора диаграммы!" -- как это кое-где кое у кого принято. Можно всё.
P. S. Авторы стандарта придумали операцию allIncludedUseCases(), которая собирает все включённые (непосредственно или косвенно) UC для заданного UC. Если бы косвенное включение не допускалось бы стандартом, то учитывать бы его не стали и OCL-body для операции было бы проще.
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 28 Мая 2018, 23:33:09
Пример нарисовали Рамбо и Блаха в своей книге:
А что-нибудь кроме этого?
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 30 Мая 2018, 11:49:41
Вот наверное правильная не противоречащая стандарту диаграмма
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: [прилетело НЛО и...] от 30 Мая 2018, 21:17:15
А что-нибудь кроме этого?
Пример с сайта Kirill'a Fakhroutdinov'a:
(https://www.uml-diagrams.org/examples/use-case-example-online-shopping-checkout.png)

При обсуждении правил языка мне сподручнее ссылаться на стандарт и на примеры от известных авторов.
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 01 Июня 2018, 09:39:09
Пример с сайта Kirill'a Fakhroutdinov'a:
(https://www.uml-diagrams.org/examples/use-case-example-online-shopping-checkout.png)

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

ОК пример прекрасен, но что он дает, чего не даст например простое описание, к чему такая сложная структуризация? В чем ее сила, в какой момент она возникает. Каковы правила такой структуризации?

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

Отбросив воду:
Каковы правила структуризации диаграммы вариантов использования? Могли бы Вы их представить?
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: [прилетело НЛО и...] от 02 Июня 2018, 09:01:14
Диаграмма является продолжением примера (https://www.uml-diagrams.org/examples/online-shopping-use-case-diagram-example.html), в котором в начале приводится (составляется) диаграмма т. н. "top level UC", а затем вводятся UC уровня пониже. Пример иллюстрирует примитивы языка. Он сродни учебным текстам из учебника английского языка.
Можно в N-ный раз зайти на круг разговоров о том, что язык не является технологией, что на практике отдельные средства языка могут оказаться уместны или не уместны.
В правилах языка может что-то нравиться, что-то не нравиться. Мне, например, не нравится многое накрученное понапрасну вокруг include'ов. Как иллюстрация ещё одна страничка (https://www.uml-diagrams.org/use-case-include.html) с того же сайта. Увязывание abstract с incomplete, concrete с complete видится мне лишним. Как и заклинание о якобы безусловном включении.
Название: Re: Пожалуйста, оцените правильность USE CASE диаграммы
Отправлено: Galogen от 05 Июня 2018, 21:45:30
Диаграмма является продолжением примера (https://www.uml-diagrams.org/examples/online-shopping-use-case-diagram-example.html), в котором в начале приводится (составляется) диаграмма т. н. "top level UC", а затем вводятся UC уровня пониже. Пример иллюстрирует примитивы языка. Он сродни учебным текстам из учебника английского языка.
Можно в N-ный раз зайти на круг разговоров о том, что язык не является технологией, что на практике отдельные средства языка могут оказаться уместны или не уместны.
В правилах языка может что-то нравиться, что-то не нравиться. Мне, например, не нравится многое накрученное понапрасну вокруг include'ов. Как иллюстрация ещё одна страничка (https://www.uml-diagrams.org/use-case-include.html) с того же сайта. Увязывание abstract с incomplete, concrete с complete видится мне лишним. Как и заклинание о якобы безусловном включении.

Да, примеры выглядят интересно. Смотрю раздел use case значительно обновился. Спасибо за просвещение.