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

×


Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - [прилетело НЛО и...]

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 »
211
Так как вопрос решён, то можно донудеть до конца, не влияя на решение.

I. Связь агрегации или композиции показывает, что:
1) для связанных классов характерно, что экземпляры одного класса на довольно длительные сроки соединяются с экземплярами второго класса;
2) соединённые экземпляры неравноправны, экземпляры того класса, возле которого ромб, главнее;
3) при композиции есть дополнительные ограничения:
3а) экземпляры подчинённого класса не могут быть соединены одновременно с более чем одним экземпляром главного класса;
3б) при удалении экземпляра главного класса удаляются экземпляры подчинённого класса, соединённые с ним в этот момент.

II. Стрелка на любой ассоциации (а композиция и ассоциация -- это подвиды ассоциации) явно указывает на возможность навигации вдоль соединений между экземплярами связанных классов в обозначенную сторону. Если навигация возможна, то, идя от экземпляра класса на другом конце, можно эффективно придти ко всем связанным с ним экземплярам класса на конце, куда указывает стрелка. Для простоты "эффективно придти" читают как "есть ссылки", но это не совсем по стандарту. Отсутствие стрелки на другом конце можно прочесть разными способами. Например: а) что мы явно не обозначаем, есть ли навигация в другую сторону; б) что навигации в другую сторону нет; в) что навигация в другую сторону не указана, т. к. её можно определить по тому, кто владеет концом ассоциации.
Наличие навигации, вообще говоря, не означает, что доступны составляющие связанного класса. Видимость (visibility) составляющих (как и самого класса) определяет будут доступны части соединённых экземпляров или нет. Но это всё буквоедство. Если не копать глубоко, то указанное прочтение может быть использовано.

III. 0..3 -- это не просто 0..3, а {unordered, unique} 0..3. Это значит, что соединённые с каким-либо экземпляром класса Наблюдение экземпляры класса Видимость составляют коллекцию со следующими свойствами:
1) в коллекцию входят от 0 до 3-х элементов;
2) элементы коллекции не упорядочены (ни для одного из них нельзя указать предшествующий ему и/или следующий за ним);
3) элементы коллекции не повторяются (каждый входит в коллекцию однократно).
Замечание о глубоком копании, сделанное выше, справедливо и здесь.

212
Если есть другие примеры - дайте, пожалуйста, ссылки.
По-моему, их нет. Одна попытка изобразить прерывающим ребром досрочный выход из цикла скорректирована в пользу стандарта.

213
Может мы слегка запутались.
Авторы стандарта, в частности Бок (мама дорогая, сколько лет тому назад) смотрят на прерываемые регионы с использованием метафоры обработки исключительных ситуаций. Вероятно, Вы используете другую метафору. Это ни плохо, ни хорошо. Я пока толкую, исходя из общей с авторами стандарта метафоры.

Можно вводить собственные термины, такие как "по смыслу прерывающее ребро". Но это оправдано, к. м. к., тогда, когда стандартная терминология неудобна или не применима.

214
Диаграмма во вложении эквивалентна диаграмме слайдов?
Угу.

215
Роли равны - ЛЮБОЙ из двух может прервать другого.
Как по мне, в любой из двух реализаций придётся указать прерывающего и прерываемого. Симметрии в решениях не вижу. Язык не даёт подходящего средства.

А какая разница "молнией" или "прямой" выходить из региона - в обоих случаях всё, что связано с регионом прерывается.
ДД -- не мой конёк.
В стандарте сказано, что "молния" прерывает, а обычное ребро -- нет. Т. е. не всякое ребро через границу прерывающее. Также там есть Figure 15.73.
Есть подозрение, что на Ваши последние варианты надо добавить "руну Соул".

216
Введение буфера загромождает модель, как мне кажется, и заставляет действие1 порождать объектный токен.
Прерываемый регион не согласуется с "равнозначностью". Один из двух прерывает другого. Роли не равны.
Прерываемый регион, из которого нет "молнии", сомнителен по стилю. Стандарт в своих ocl-ях зачем-то допускает прерываемые регионы без "молний" и "молнии" без прерываемых регионов. На моей планете не могут взять в толк -- зачем.

217
Стилистически вложение3 лучше ложится на исходный текст. Вложение4 лучше бы легло на текст "если время истечёт раньше наступления События - Действие3, иначе - Действие2".
Стилистически вложение5 не годится, т. к. "ничегонеделательная" деятельность -- костыль "модельера", который (костыль, не "модельер") не должен торчать явно из модели.
По стандарту, скорее всего, все 3 варианта прочекаются.
P. S. К делу не относится, но задачка от авторов "UML3" (см. слайды 50-51) сомнительная какая-то. Как видится с моей планеты.

218
Диаграмма является продолжением примера, в котором в начале приводится (составляется) диаграмма т. н. "top level UC", а затем вводятся UC уровня пониже. Пример иллюстрирует примитивы языка. Он сродни учебным текстам из учебника английского языка.
Можно в N-ный раз зайти на круг разговоров о том, что язык не является технологией, что на практике отдельные средства языка могут оказаться уместны или не уместны.
В правилах языка может что-то нравиться, что-то не нравиться. Мне, например, не нравится многое накрученное понапрасну вокруг include'ов. Как иллюстрация ещё одна страничка с того же сайта. Увязывание abstract с incomplete, concrete с complete видится мне лишним. Как и заклинание о якобы безусловном включении.

219
А что-нибудь кроме этого?
Пример с сайта Kirill'a Fakhroutdinov'a:


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

220
Главное научиться ловить попутный тахионный поток. Остальное -- дело техники.

221
Пример нарисовали Рамбо и Блаха в своей книге:

Ещё раз обращаю внимание, ответ дан в смысле соблюдения/нарушения стандарта UML.
Можно вместо стандарта рассматривать правила каких-либо методик, стилей рисования диаграмм и проч. Можно восклицать: "Что в голове у автора диаграммы!" -- как это кое-где кое у кого принято. Можно всё.
P. S. Авторы стандарта придумали операцию allIncludedUseCases(), которая собирает все включённые (непосредственно или косвенно) UC для заданного UC. Если бы косвенное включение не допускалось бы стандартом, то учитывать бы его не стали и OCL-body для операции было бы проще.

222
Разрабатываю USE CASE диаграмму для учебного проекта. Есть сомнения в ее правильности, в связи с этим два вопроса:
Без текстовых описаний ВИ и условий Вашего учебного проекта затруднительно оценить правильность в плане содержания. Остаётся оценивать соблюдение правил стандарта UML.

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

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

Содержательная "правильность" инклудов вытекает из описаний сценариев ВИ. Но Вы их не приводите (у Вас их нет). Значит учебное упражнение в этой части бессмысленно. 

223
До моей планеты добивает YouTube, но с задержкой. Космические расстояния дают о себе знать.
https://youtu.be/wy9pEIX7paQ
Гради Буч  к юбилею UML 1.1.

224
Примеры / Re: Помощь в задании.
« : 25 Мая 2018, 15:31:36 »
Зачем в течения дня одному и тому же читателю выдавать один и тот же экземпляр и фиксировать это?
Ксеранул, сдал, понял, что недоксерил, вернулся, взял снова, доксерил, сдал...
)
Впрочем это все рассуждения бессмысленные, мы с вами ясных требований не знаем.
Поддерживаю.

225
Примеры / Re: Помощь в задании.
« : 19 Мая 2018, 14:26:43 »
Если в читальный зал, то не достаточно.
А кто когда был в библиотеке [по своей воле]? Я -- лет 18ть назад, перед защитой диссера в марсианском универе.
От условий задачи несёт книжной пылью учебника. 

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 »