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

×


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

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


Сообщения - Vadim

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 »
211
Примеры / Re: внутренняя структура
« : 18 Ноября 2010, 11:25:02 »
Спасибо за
Цитировать
"IBM Rational Software Architect 7.0
мне именно
Цитировать
распространять композицию на подклассы
и требовалось, только хотелось уточнить: инструмент просто разрешает нарисовать какую угодно структуру подкласса или предлагает взять готовые элементы структуры класса (композицию с "колесо") и отбразить их в той или иной нотации (в виде внутренней структуры, беря в качестве [Тип] "Колесо" - имя Класса, в качестве [Имя роли] "колесо" - имя полюса, которое по умолчанию совпадает с именем класса, только первая буква в нижнем регистре)?

Цитировать
Если смотреть на диаграмму как есть, то [Имя роли]: [Тип] это колесо:Колесо т.е. роль одинаковая
Имена - одинаковые, но сам факт размещения в подклассах предполагает отличия (у вас на диаграмме их нет, но это можно сделать, например только от колесо:Колесо внутри "Колодец" сделать ассоциацию с "Гвоздь").

212
Примеры / Re: внутренняя структура
« : 17 Ноября 2010, 15:17:45 »
Цитировать
Как мне отразить, что в колодце Колесо в роли Воротка, а в гончарной установки, роль гончарного круга?
То, что колесо выступает в разных ролях уже отражено, просто эти роли называются не "Вороток" и "Круг", а "колесо колодца" и "колесо гончарной установки".
Добавлю сложности (не с целью затруднить, а с надеждой прояснить): пусть колесо в роли "Вороток" ("колесо колодца") должно описываться количеством ручек (штуки за которые крутят), а колесо в роли "Круг" ("колесо гончарной установки") должно описываться направлением вращения (гончары бывают правши и левши).

Цитировать
НА диаграмме роль колесо:Колесо, одинаково для всех потомков (наследуется от Сооружения).
это есть инструменты такие умные, что понимают распостранение композиции на подклассы, да еще знают про альтернативную нотацию для композиции? Если да, то назовите такие инструменты, пожалуйста.

213
UML SysML и пр. / Re: классы и идентификаторы
« : 16 Сентября 2010, 10:45:27 »
Цитировать
Vadim может имеет в виду следующее:
Имеется некий контейнер для хранения справочников (пополняемый)
Имеется некий контейнер для хранения атрибутов справочника (пополняемый)
Некто создает новый справочник
Некто задает атрибуты справочника из контейнера атрибутов, при этом может добавить новый атрибут (как я понимаю)

Vadim формальным способ пытается отобразить на диаграмме (возможно)
1. запрет создания справочника с таким же именем (т.е. список справочников-объектов - множество)
2. запрет выбора в справочник атрибутов с одинаковыми именами (т.е. список атрибутов в конкретном справочнике - множество)
3. запретить создания нового атрибута с таким же именем (т.е. список атрибутов-объектов - множество)

Отлично! Пропади он пропадом, мой пример, давайте рассматривать этот, он очень даже подходит!
Только сначала уточним:
1.
Цитировать
1. запрет создания справочника с таким же именем (т.е. список справочников-объектов - множество)
следует понимать "список имен справочников-объектов - множество"
2.атрибут в конкретном справочнике имеет имя, которое может отличаться от имени атрибута из контейнера атрибутов, который для него выбран - если нет, то из
Цитировать
3. запретить создания нового атрибута с таким же именем
следует
Цитировать
2. запрет выбора в справочник атрибутов с одинаковыми именами
3. для справочника атрибут из контейнера используется не более 1 раза

214
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 17:54:09 »
Цитировать
совокупность значений артируботв тоже должна быть ключом (составным), то имеем альтернативный ключ

вот в том то и вопрос, как указать на диаграмме какой (какие) альтернативные ключи имеются (для какого класса, из чего состоят)!

215
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 16:18:42 »
идентификатор - набор свойств класса, сочетание значений которых у разных экземпляров класса не может быть одинаковым.

216
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 15:11:24 »
Цитировать
Если честно - все равно не понял
Ничего страшного, попробую еще раз.

Про пример:
Необходимо смоделировать структуру информационной базы "Справочники". База должна хранить заранее неизвестный и изменяемый состав справочников. Каждый справочник содержит изменяемый состав позиций.
Цитировать
каждая позиция принадлежит справочнику и имеет код
Цитировать
в рамках справочника позиции имеют разные коды
(2 разные позиции одного и того же справочника - их коды не могут совпадать). Справочники и позиции имеют наименования.

Во вложении сообщения
Цитировать
не тот файл
2 диаграммы.
1 диаграмма не отражает уникальность кода позиции внутри справочника (хотя если ее дополнить ограничением класса "позиция"
Цитировать
forAll(a,b|a<>b implies a.Код <> b.Код)
будет отражать и уникальность кода позиции внутри справочника).
2 диаграмма выражает это ограничение графически.

Про проблемму:
прием, использованный на 2 диаграмме, подходит для случаев, когда в состав идентификатора входит ровно 1 полюс с множественностью 1..1 и один или несколько атрибутов.
Как графически выразить ограничение идентификации в общем случае (любое количество атрибутов и полюсов) и/или в других частных случаях (количество полюсов в идентификаторе 0 или больше 1)? Пример на 0: коды позиций не должны совпадать даже если они из разных справочников. Пример на больше 1: к каждой позиции приписан 1 пользователь, создавший ее; состав пользователей заранее не известен; коды позиций не должны совпадать, только если они принадлежат одному справочнику и к ним приписан один пользователь.

217
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 12:44:17 »
не тот файл

218
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 12:36:32 »
А теперь с иллюстрацией для ровно 1 полюса

219
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 12:33:18 »
Пример во вложении

220
UML SysML и пр. / Re: классы и идентификаторы
« : 15 Сентября 2010, 12:23:04 »
Прием записи на OCL типа forAll(a,b|a<>b implies a.Код <> b.Код) известен. Интерес вызывает более компактная запись.

221
UML SysML и пр. / классы и идентификаторы
« : 15 Сентября 2010, 12:13:28 »
Очень часто возникает необходимость отражения в модели (диаграмме) факта (ограничения), что какая-то совокупность значений свойств (атрибутов и полюсов ассоциаций) класса с множественностью 1..1 (а иногда и не 1..1) различается для различных экземпляров класса. Например: есть справочники и позиции справочников, каждая позиция принадлежит справочнику и имеет код; необходимо отразить факт, что в рамках справочника позиции имеют разные коды, т.е. идентификатор позиции - ключ из полюса (AssociationEnd) справочник и атрибута код.

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


223
Можно пример(ы) тестового задания?

224
Попробую определить изначальную проблемму, к которой пример служит только иллюстрацией.

Далее все разбиения на подклассы (SetGeneralization) считаются полными и непересекающимися {complete, disjoint}.
Достаточно часто встречается ситуация, когда:1) объект класса Б (период) ассоциируется ровно с 1 объектом класса А (тип периода); 2) класс А имеет подклассы (с промежутками и без промежутков); 3) класс Б тоже имеет подклассы, причем взаимно-однозначно соответствующие подклассам А; 4) любой объект класса Б относится к тому подклассу Б, который соответствует подклассу А, к которому относится объект класса А ассоциированный с объектом класса Б.
В модели (и диаграмме) можно, конечно, воспользоваться приемами: ограничения, {subset}, обобщение ассоциаций и др., они описаны в учебниках. Но они маловыразительны и/или запутывают диаграмму, особенно когда их много (а в практических задачах их много).

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 »