Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Черняховская Л.Р. Презентация.ppt
Скачиваний:
88
Добавлен:
02.05.2014
Размер:
1.86 Mб
Скачать

Отношения между классами (пиктограммы)

Ассоциация

OR

Постоянное, структурное отношение, “has a”

Непрерывная линия со стрелкой (в случае направленности ассоциации)

Зависимость

Временное отношение, “uses a”

Пунктирная линия со стрелкой

Обобщение

Наследование, “is a”

Непрерывная линия со стрелкой (треугольной)

Использование

Пунктирная линия со стрелкой (треугольной)

52

Идентификация и представление сообщений

Когда мы говорим: объект A связан отношением с объектом B, мы должны ответить на следующие вопросы:

Каков тип отношения?

Какие роли в отношении играют объекты A и B ?

Как определить мощность отношений (multiplicity) ?

Могут ли несколько объектов, принадлежащих одному классу, взаимодействовать друг с другом?

На языке UML мы можем представить отношения так, чтобы ответить на поставленные вопросы.

53

Отношения

Имена отношений Агрегация в основном не именуется, так как она читается с

использованием слов «имеет» или «содержит».

Ассоциация может быть именована. Обычно мы используем имя отношения, указывающее его значение, например «учить» (см. рис.).

Имена ролей: Имя роли в ассоциации обозначается на конце линии в ассоциации между классами.

Association Name

Role

Name

 

54

Отношения

Индикатор мощности отношения (multiplicity indicator) :

Мощность отношений (multiplicity) указывается для классов и определяет допустимое количество объектов,

участвующих в отношении с каждой стороны. Часто

используемые значения мощности:

 

 

1

Exactly one

0..*

Zero or more

1..*

One or more

0..1

Zero or one

Рекурсивное отношение (reflexive relationships) : Объекты,

принадлежащие к одному классу, могут взаимодействовать друг с другом.

Multiplicity Indicator

Reflexive

Relationship

55

Наследование или обобщение

Наследование или обобщение определяет отношение между классами, когда структура и/или поведение одного класса распространяется на другой (или другие) классы. Подклассы наследуют атрибуты и операции от одного или более суперклассов.

56

Разработка диаграмм классов (пример)

57

Диаграммы

Ш. Для описания динамики используются

диаграммы поведения (behavior diagrams), которые подразделяются на:

диаграммы состояний (statechart diagrams),

диаграммы активностей (activity diagrams) и

диаграммы взаимодействия (interaction diagrams), состоящие из:

диаграмм последовательности (sequence diagrams)

диаграмм взаимодействий (collaboration diagrams)

58

Диаграмма последовательности действий (sequence diagram)

Диаграмма последовательности действий отображает взаимодействие объектов, упорядоченное по времени. На ней показаны объекты и классы, используемые в сценарии, и последовательность сообщений, которыми обмениваются объекты, для выполнения сценария.

59

Диаграммы взаимодействия объектов (Sequence and Collaboration Diagrams)

На диаграмме последовательности взаимодействие изображается в виде двухмерной схемы (в формате графа). По вертикали проходит временная ось, где течение времени происходит сверху вниз. По горизонтали указываются роли классификатора, которые представляют отдельные объекты взаимодействия.

60

Диаграмма последовательности

Объект

:WatchUser

:SimpleWatch

:LCDDisplay

:Time

 

 

 

 

pressButton1()

blinkHours()

 

 

 

 

pressButton1()

blinkMinutes()

 

 

 

 

pressButton2()

 

incrementMinutes()

 

 

 

 

 

 

refresh()

 

pressButtons1And2()

 

commitNewTime()

 

 

 

 

 

 

 

stopBlinking()

 

Сообщение

Активация

Диаграмма последовательности действий отображает взаимодействие объектов, упорядоченное по времени.

61