Звоните! 
 (926)274-88-54 
 Бесплатная доставка. 
 Бесплатная сборка. 
Ассортимент тканей

График работы:
Ежедневно. С 8-00 до 20-00.
Почта: soft_hous@mail.ru
Читальный зал -->  Диаграммы параллельных состояний 

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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

следовательности. При этом предполагается, что каждый блок текста располагается на одной горизонтальной линии с соответствующим сообщением на диаграмме. Это упрощает понимание диаграмм, хотя и требует некоторой дополнительной работы. Я использую этот прием для тех документов, которые собираюсь хранить.

Диаграммы кооперации

Еще одним видом диаграммы взаимодействия является диаграмма кооперации.

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

1: приготовиться!)

: Заказ

- Объект

Сообщение

Номер в последователъности

2*[дпя всех строк заказа]: приготовиться!)

3: естьЗапас := проверка!) 4: [естьЗапас]: удалить!)

5: нуженПовторныйЗаказ := сделатьПовторныйЗаказ!) Самоделегирование

строка Макаллана: Строка Заказа

запас Макаллана: Элемент Запаса

7 [ecnj3anac]: новый

: Элемент Поставки

6 [нуженПовторныйЗаказ]: новый

: Элемент Повторного Заказа

Рис. 5.4. Диаграмма кооперации с простой нумерацией

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



Диаграммы кооперации

Для диаграмм кооперации можно использовать один из нескольких вариантов нумерации. Самый простой из них показан на рис. 5.4. Другой вариант десятичной нумерации представлен на рис. 5.5.

: Окно Ввода Заказа

1: приготовиться!)

: Заказ

1.1 *[дпя всех строк заказа]: приготовиться!)

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

1.1.1: естьЗапас := проверка!) 1.1.2: [естьЗапас]: удалить!)

1.1.2.1: нуженПовторныйЗаказ := сделатьПовторныйЗаказ!)

строка Макаллана; Строка Заказа

запас Макаллана: Элемент Запаса

1.1.3: [естьЗапас]: новый

; Элемент Поставки

1.1.2.2 [нуженПовторныйЗаказ]: новый

: Элемент Повторного Заказа

Рис. 5.5. Диаграмма кооперации с десятичной нумерацией

Раньше разработчики пользовались простой схемой нумерации. В языке UML применяется десятичная схема нумерации, поскольку в этом случае понятно, какая из операций вызывает другую операцию, хотя при этом труднее разглядеть их последовательность в целом.

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

На рис. 5.4 и 5.5 можно увидеть различные формы схем именования объектов в языке UML. Общая форма имеет вид <ИмяОбъекта : Имя-Класса>, где либо имя объекта, либо имя класса могут отсутствовать. При отсутствии имени объекта необходимо оставить двоеточие, чтобы было понятно, что это имя класса, а не объекта. Таким образом, имя строка Макаллана: Строка Заказа означает, что экземпляр класса Строка Заказа называется строка Макаллана (именно такой порядок записи имен мне особенно нравится). Я стараюсь именовать объекты в стиле языка Smalltalk, который я использовал в диаграммах последовательности. (Такая схема находится в соответствии с нотацией языка UML, поскольку некоторыйОбъект вполне подходит для имени некоторого объекта.)



CRC-карточки

В конце 80-х годов одним из крупнейших центров объектной технологии были исследовательские лаборатории фирмы Tektronix в Портленде, штат Орегон. В этих лабораториях была сосредоточена некоторая часть основных пользователей языка Smalltalk, и многие из главных идей объектной технологии родились именно там. Здесь же работали два таких известных программиста и специалиста по языку Smalltalk, как Уорд Каннингхем и Кент Бек. Они и сейчас занимаются методами обучения объектному языку Smalltalk. Результатом этой работы явился достаточно простой метод под названием CRC-карточки (Класс-Ответственность-Кооперация).

В то время как большинство аналитиков использовали для разработки моделей диаграммы, Уорд представлял описание классов на небольших карточках размером 4x6. Причем вместо атрибутов и методов класса он записывал на этих карточках ответственности (responsibilities).

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

Сравнение диаграмм последовательности и диаграмм кооперации

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

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

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



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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57



ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку.



Звоните! Ежедневно!
 (926)274-88-54 
Продажа и изготовление мебели.


Копирование контента сайта запрещено.
Авторские права защищаются адвокатской коллегией г. Москвы
.