Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Autoservice.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
421.38 Кб
Скачать

4. Создание диаграммы сотрудничества

Диаграммы сотрудничества (Collaboration diagram) – второй тип диаграмм взаимодействия. Г. Буч collaboration diagram называет диаграммой объектов [1, 2]. Действительно, эта диаграмма отличается от предыдущей тем, что она не акцентирует внимание на последовательности передачи сообщений, она отражает наличие взаимосвязей вообще, то есть на этой диаграмме отражается наличие сообщений от клиентов к серверам. Так как временная шкала не участвует в демонстрации сообщений, то эта диаграмма получается компактней и как нельзя лучше подходит для того, чтобы окинуть одним взглядом взаимодействие всех объектов.

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

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

Так как диаграммы сотрудничества схожи с диаграммами последовательностей, то согласно созданной выше диаграмме последовательности для варианта использования "Заказ", была создана диаграмма сотрудничества для варианта использования "Заказ" (рисунок 4.1).

Рисунок 4.1 – Диаграмма сотрудничества для варианта использования "Заказ"

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

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

5. Создание диаграммы классов

Диаграммы классов (Class diagram) позволяет создавать логическое представление системы, на основе которого создается исходный код описанных классов [1, 2]. Значки диаграммы позволяют отображать сложную иерархию систем, взаимосвязи классов (Classes) и интерфейсов (Interfaces). Данный тип диаграмм противоположен по содержанию диаграмме Collaboration, на котором отображаются объекты системы. Rational Rose позволяет создавать классы при помощи данного типа диаграмм в различных нотациях:

  • в нотации, предложенной Г. Бучем;

  • в нотации ОМТ;

  • в нотации Unified (унифицированной нотации).

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

Обычно для описания системы создают несколько диаграмм классов.

На одних показывают некоторое подмножество классов и отношения между классами подмножества.

На других отображают то же подмножество, но вместе с атрибутами и операциями классов.

Третьи соответствуют только пакетам классов и отношениям между ними. По умолчанию существует одна диаграмма классов, называемая Главной (Main) и располагающаяся непосредственно под "Логическим представлением" в браузере. На этой диаграмме показывают пакеты классов модели. Внутри каждого пакета также имеется "Главная диаграмма", включающая в себя все классы этого пакета (рисунок 5.1).

Рисунок 5.1 – Главная диаграмма классов

После создания главой диаграммы классов создается диаграмма классов для варианта использования "Заказ" (рисунок 5.2).

Рисунок 5.2 – Диаграмма классов для варианта использования "Заказ"

К классам на диаграмме добавлены стереотипы. Стереотип "entity" указан для класса "Form_Zakaz", стереотип "boundary" для классов "Form_klient" и "Form_Ysluga" , стереотип "control" – для классов "Print_date" и "Work_BD".

Соответствующие классы объединены в пакеты:

  1. "Date" – классы " Form_Zakaz " " Form_klient ", " Form_Ysluga ";

  2. "BD" – класс " Work_BD ";

  3. "Print" – класс " Print_date "

Для каждого пакета создана диаграмма классов. Диаграмма классов для пакета "Date" представлена на рисунке 5.3.

Рисунок 5.3 – Диаграмма классов пакета "Date"

Диаграмма классов для пакета "BD" представлена на рисунке 5.4.

Рисунок 5.4 – Диаграмма классов пакета "BD"

Диаграмма классов для пакета "Print_date" показана на рисунке 5.5.

Рисунок 5.5 – Диаграмма классов пакета "Print_date"

Выводы

  1. Созданы три пакета "Date", "Print_date" и "BD".

  2. Классы, реализующие варианта использования "Заказ", были помещены в указанные пакеты.

  3. Создана главная диаграмма классов и три диаграммы классов для соответствующих пакетов.

  4. Соответствующие классы объединены в пакеты:

  • "Date" – классы"Form_Zakaz "," Form_klient","Form_Ysluga";

  • " BD " – классы " Work_BD ";

  • "Print" – класс "Print_date".

6. Добавление деталей к описаниям операций и определение атрибутов классов. Добавление связей между классами

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

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

Рисунок 6.1 – Диаграмма классов со связями и атрибутами

Выводы

  1. Произведено добавление атрибутов и типов значений.

  2. Созданы связи между классами.

  3. Для каждого класса на диаграмме классов для сценария "Заказ клиента" добавлены описания операций, то есть, указаны типы значений и атрибуты функций.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]