В чем различие и сходство между диаграммами классов и объектов? 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

В чем различие и сходство между диаграммами классов и объектов?



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

Графическое отображение содержания класса приведено на рис. 3.3.1.

Рис. 3.3.1. Отображение содержания класса.

 

В качестве семантического элемента класс обладает набором свойств:

- имя - должно быть у каждого класса, оно отличает его от других классов, представлено в виде текстовой константы;

- атрибут – именованное свойство класса, включающее описание множества значений, которые могут принимать экземпляры этого свойства;

- операция – реализация услуги, которую можно запросить у лю­бого объекта класса для воздействия на поведение.

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

- класс является четко очерченной абстракцией некоторого поня­тия из словаря предметной области и области решения;

- класс содержит небольшой, точно определенный набор обязан­ностей и выполняет каждую из них;

- класс поддерживает четкое разделение спецификаций абстрак­ции и ее реализации;

- класс понятен и прост, но в тоже время допускает расширение и адаптацию к новым задачам.

Диаграммы объектов ( Object Diagram) позволяют моделировать экземпляры сущно­стей, которые содержатся в диаграммах классов. Таким образом, диаграммы объектов выражают статическую составляющую взаимодействия и состоят из сотрудничающих объектов, однако сообщения на них не показаны. Диаграмма объектов отражает состояние системы (показывает множество объектов и отношений между ними) в фиксированный момент времени. Задачей диаграммы объектов является представление статического снимка системы с точки зрения проектирования и привлечение внима­ния к конкретным экземплярам класса. Диаграммы объектов также могут использоваться для представления струк­туры данных.

Диаграмма объектов характеризуется следующими свойствами:

- акцентирует внимание на одном аспекте статического вида системы с точки зрения проектирования или процессов;

- представляет лишь один из кадров динамического сценария, показанного на диаграмме взаимодействия;

- содержит только существенные для понимания данного аспекта элементы;

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

- не настолько лаконична, чтобы ввести читателя в заблуждение относительно важной семантики.

Основные элементы диаграммы объектов, так же как и диаграммы классов - класс и интерфейс (объекты и связи). Основные отношения на диаграмме объектов:

- отношение зависимости (dependency relationship);

- отношение ассоциации (association relationship);

- отношение обобщения (generalization relationship).

Моделирование объектной структуры осуществляется в следующем порядке:

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

- для каждого механизма осуществляется идентификация классов, интерфейсов и других элементов, участвующих в кооперации, а также отно­шений между ними;

- рассматривается один из сценариев использования работы меха­низма и изображение всех объектов, участвующих в сценарии;

- отображаются состояния и значения атрибутов выделенных объ­ектов, если это необходимо для понимания сценария;

- отображаются связи между объектами, представляющие экзем­пляры существующих ассоциаций.

Графическое отображение примера моделирования диаграммы объектов приведено на рис. 3.5.2.

Рис. 3.5.2. Графическое отображение примера моделирования

диаграммы объектов в UML.

 

13. Какие основные элементы используются для построения диа­грамм классов?

В качестве семантического элемента класс обладает набором свойств:

- имя - должно быть у каждого класса, оно отличает его от других классов, представлено в виде текстовой константы;

- атрибут – именованное свойство класса, включающее описание множества значений, которые могут принимать экземпляры этого свойства;

- операция – реализация услуги, которую можно запросить у лю­бого объекта класса для воздействия на поведение.

14. Какое значение при разработке информационной системы име­ет описание отношений ассоциации?

Ассоциацией (Association) называется структурные взаимоотношения между объектами, показывающее, что объекты одной сущности связаны с объектами другой. Так, класс «Библиотека» может быть связан ассоциацией "один ко многим" с классом «Книга», показывая, что все экземпляры второго принадлежат одному экземпляру первого. Если имеется объект класса «Книга», можно всегда найти содержащую его «Библиотеку», а зная «Библиотеку», в ней можно осуществить навигацию ко всем «Книгам». Допустимой является ассоциация объек­тов одного класса между собой. Ассоциация может иметь соб­ственное имя. Графически ассоциация изображается в виде сплошной линии, связывающей класс сам с собой или с другими классами. Данное отношение обозначается сплошной линией с дополнительными специальными символами, которые характеризуют отдельные свойства конкретной ассоциации. В качестве дополнительных специальных символов могут использоваться имя ассоциации, а также имена и кратность классов-ролей ассоциации. Имя ассоциации является необязательным элементом ее обозначения. Если оно задано, то записывается с заглавной (большой) буквы рядом с линией соответствующей ассоциации. Отношения ассоциации используют в том случае, когда требуется показать структурные отношения. Пример графического отображения ассоциации на диаграммах UML представ­лен на рис. 3.3.2. и на рис. 3.3.8.;

Рис. 3.3.8. Пример графического отображения ассоциации

и кратности на диаграммах UML.

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

15. Какие типы отношений применяются на диаграммах в объектно-­ориентируемом моделировании.

В языке UML предусмотрены следующие типы отношений, показы­вающие связи между сущностями, представленными в системе:

- зависимость (Dependency) - семантическое отношение между двумя сущно­стями, при которой изменение одной из сущностей, независи­мой, может повлиять на семантику второй сущности, зависи­мой. Отношение показывает зависимость одного класса от определений в другом классе, например, когда один класс используется как параметр в описании методов другого класса, при генерации кода не вносит изменений в описание класса. Графическое обозначение отношения зависимости отображено на рис. 3.2.8.;

 

- обобщение (Generalization)- отношение, при котором объект специализиро­ванного элемента может быть подставлен и использован вме­сто объекта обобщенного элемента. Это связь наследования между классами, соответствует понятию наследования классов в объектно-ориентированном описании. Это отношение между предком и потомком, и стрелка всегда указывает на предка. Если вспомнить, что потомки наследуют (используют) свойства предка, то вполне логично утверждение о том, что стрелки в UML всегда направлены в сторону того, от кого что-то требуют, чьими сервисами пользуются. Графическое обозначение отношения обобщения отображено на рис. 3.2.12.;

 

- ассоциация (Association) - структурное отношение, описывающее совокуп­ность связей, представленных соединениями между объектами модели. Это семантическая связь между классами, которая показывает передачу сообщений между классами. При генерации кода в определение класса добавляется переменная класса, на который направлена ассоциация. Ассоциация на диаграммах отображается в виде отрезков линий обычно без стрелок. Наличие такой линии указывает на необходимость организации физического канала для обмена информацией между соответствующими узлами. Однако в некоторых случаях, таких как, например, навигация по ассоциации, стрелка устанавливается. Графическое обозначение отношения ассоциация отображено на рис. 3.2.9.;

 

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

 

- композиция(Composition) является разновидностью ассоциации, которая представляет очень тесное объединение. Это означает, что композиция формирует взаимодействия типа "часть-целое", но эти взаимодействия настолько сильные, что части не могут существовать сами по себе. Они существуют только внутри целого, и при уничтожении целого уничтожаются и части. В UML композиции отображаются в виде линии с закрашенным ромбом на стороне целого, соединяющей взаимодействующие классы. Графическое обозначение отношения композиция отображено на рис. 3.2.11.

 

 

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

- между интерфейсами и реализующими их классами или компонентами;

- между прецедентами и реализующими их кооперациями.

Графическое обозначение отношения реализации отображено на рис. 3.2.13.;

 

 

16. Какие виды диаграмм применяются для моделирования архи­тектуры системы?

UML предусматривает использование диаграмм компонентов и диаграмм развертывания для решения задачи описания архитектуры системы. Получение описания архитектуры информационной системы с использованием этих двух видов диаграмм дает основание для выбора оптимальной по производительности кон­фигурации оборудования и позволяет:

- получить представление об основных программных компонентах решения и их взаимосвязи;

-спланировать структуру вычислительной системы

 

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

Основными графическими элементами диаграммы компонентов являются: компоненты

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

Диаграмма развертывания (Deployment diagram) - предназначена для визуализации элементов и компонентов программы, существующих лишь на этапе ее исполнения (runtime). При этом представляются только компоненты-экземпляры программы, являющиеся исполняемыми файлами или динамическими библиотеками. Те компоненты, которые не используются на этапе исполнения, на диаграмме развертывания не показываются. Так, компоненты с исходными текстами программ могут присутствовать только на диаграмме компонентов. На диаграмме развертывания они не указываются.

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

 



Поделиться:


Последнее изменение этой страницы: 2016-08-26; просмотров: 560; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.175.113 (0.017 с.)