3
_____ - добавлено Пример 1 * 1..1 * 1..1 * * Граф а N am e С трока N am e Таблица Nam e Я чейка V alue Предметная область просто совокупность таблиц, каждая из которых имеет свой состав строк и граф, на пересечении которых могут/должны находиться ячейки со значениями. Ячейка класс-ассоциация потому что не может быть несколько ячеек на сочетание графы и строки. 1. Есть ограничение, что "Ячейка" может быть образована, если "Графа" и "Строка" из одной "Таблицы". Как можно выразить это ограничение на диаграмме (кроме комментария на естественном языке или в виде OCL-выражения)? 2. Есть ограничение, что для каждого сочетания "Графы" и "Строки" одной "Таблицы" обязательно должна быть ячейка. Как можно выразить это ограничение на диаграмме (кроме комментария на естественном языке или в виде OCL-выражения)? 3. Ситуация 1 и 2 встречается во многих местах диаграммы для других четверок классов. Как можно обозначить это? Пример 2 C lass_1 Nam e C lass_2 Nam e

вопросы

  • Upload
    sef2009

  • View
    381

  • Download
    2

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: вопросы

_____ - добавлено

1Пример

*

1..1

*

1..1

*

*

Графа

Name

Строка

Name

Таблица

Name

Ячейка

Value

Предметная область просто совокупность таблиц, каждая из которых имеет свой состав строк и граф, на пересечении которых могут/должны находиться ячейки со значениями. Ячейка класс-ассоциация потому что не может быть несколько ячеек на сочетание графы и строки.

1. Есть ограничение, что "Ячейка" может быть образована, если "Графа" и "Строка" из одной "Таблицы". Как можно выразить это ограничение на диаграмме (кроме комментария на естественном языке или в виде OCL-выражения)?

2. Есть ограничение, что для каждого сочетания "Графы" и "Строки" одной "Таблицы" обязательно должна быть ячейка. Как можно выразить это ограничение на диаграмме (кроме комментария на естественном языке или в виде OCL-выражения)?

3. Ситуация 1 и 2 встречается во многих местах диаграммы для других четверок классов. Как можно обозначить это?

2ПримерClass_1

Name

Class_2

Name

Если несколько классов имеют совпадающие свойства (атрибуты и ассоциации), то можно определить родительский класс, с которым связать эти свойства.

Page 2: вопросы

Class_1 Class_2

Class_3

Name

А что можно сделать, если эти классы уже связаны между собой отношением обобщения?

Class_1

Name

Class_2

Name

(т.е. когда в Class_1 атрибут Name должен быть представлен 2 раза: как собственный и как унаследованный от Class_2). Если определить родительский класс, с которым связать эти свойства, то в Class_1 они вставятся только один раз, так как свойства наследуются один раз, а не столько, сколькими путями происходит наследование.

3Пример

1..1

*

Class_1

{abstract} Class_2

{abstract}

Class_3 Class_4 Class_5 Class_6

Class_2 будет Class_5, если связанный с Class_2 Class_1 будет Class_3. Class_2 будет Class_6, если связанный с Class_2 Class_1 будет Class_4. Как это выразить графически?

Пример 4

Page 3: вопросы

1..1

0..*

<</>>

1..1

0..*

Позиция справочника

{abstract}

КодНаименование

Справочник

Наименование

Некорневая позиция

<</>> означает производную ассоциацию

Имеются справочники. Справочник состоит из позиций. Позиции одного справочника образуют иерархию типа «дерево» (с одним корнем). Корневая позиция (не подчиняющаяся никакой другой позиции) на один справочник одна. На основании этих справочников строятся спецсправочники. Спецсправочник строится из одного справочника как подмножество его позиций. Построение спецсправочника из справочника осуществляется одним из способов:весь справочник, ветка справочника, задаваемое прямым перечислением подмножество и др.. Состав способов может расширяться, но в результате каждого способа позиции спецсправочника тоже являются иерархией. Как графически обозначить это, может быть через классификатор (понятие UML) типа интерфейс (интересует не обозначение перечисленных и неперечисленных способов построения спецсправочника, а обозначение того, что все способы приводят к результату с совпадающими свойствами)?

ПросьбаПривести пример из общеизвестной предметной области (лучше не связанной с IT) использования классификатора типа интерфейс в диаграмме классов.