Лекции в виде ответов на вопросы (1037797), страница 2
Текст из файла (страница 2)
О
тношения связывают различные сущности; диаграммы группируют представляющие интерес совокупности сущностей.
1…N



Диаграмма в UML - это графическое представление набора элементов, изображаемое чаще всего в виде связанного графа с вершинами (сущностями) и ребрами (отношениями). Диаграммы рисуют для визуализации системы с разных точек зрения. Диаграмма - в некотором смысле одна из проекций системы. Как правило, за исключением наиболее тривиальных случаев, диаграммы дают свернутое представление элементов, из которых составлена система. Один и тот же элемент может присутствовать во всех диаграммах, или только в нескольких (самый распространенный вариант), или не присутствовать ни в одной (очень редко). Теоретически диаграммы могут содержать любые комбинации сущностей и отношений. На практике, однако, применяется сравнительно небольшое количество типовых комбинаций, соответствующих пяти наиболее употребительным видам, которые составляют архитектуру программной системы.
9. Язык UML. Типы сущностей.
-
структурные;
-
поведенческие;
-
группирующие;
-
аннотационные.
СТРУКТУРНЫЕ.
Структурные сущности - это имена существительные в моделях на языке UML. Как правило, они представляют собой статические части модели, соответствующие концептуальным или физическим элементам системы. Существует несколько разновидностей структурных сущностей.
Класс – описание совокупности объектов с общими атрибутами, отношениями и семантикой. Класс реализует один или несколько интерфейсов. Графически класс изображается в виде прямоугольника, в котором обычно записаны его имя, атрибуты и операции, как показано на рисунке.
Интерфейс – совокупность операций (только их сигнатуры!), которые определяют набор действий (услуг класса). Таким образом, интерфейс описывает видимое извне поведение элемента. Интерфейс может представлять поведение класса или компонента полностью или частично; он определяет только спецификации операций (сигнатуры), но никогда - их реализации. Графически интерфейс изображается в виде круга, под которым пишется его имя, как показано на рисунке. Интерфейс редко существует сам по себе - обычно он присоединяется к реализующему его классу или компоненту.
Кооперация – определяет взаимодействие и является совокупностью других элементов и ролей, которые производят коллективное действие. Кооперация, следовательно, имеет как структурный, так и поведенческий аспект. Один и тот же класс может принимать участие в нескольких кооперациях; таким образом, они являются реализацией образцов поведения, формирующих систему. Графически кооперация изображается в виде эллипса, ограниченного пунктирной линией, в который обычно заключено только имя, как показано на рисунке.
Прецедент – описание последовательности действий системы, приводящих к наблюдаемому результату в интересах определенного актера. Прецедент применяется для структурирования поведенческих сущностей модели. Прецеденты реализуются посредством кооперации. Графически прецедент изображается в виде ограниченного непрерывной линией эллипса, обычно содержащего только его имя, как показано на рисунке.
Актер (действующее лицо) – любая внешняя по отношению к системе сущность.
Активный класс – класс, объекты которого имеют один или несколько процессов инициирующих управляющие воздействия (ограничивается жирной линией).
Компонент – физическая заменяемая часть системы, обеспечивающая реализацию набора интерфейсов. В системе можно встретить различные виды устанавливаемых компонентов, такие как СОМ+ или Java Beans, а также компоненты, являющиеся артефактами процесса разработки, например файлы исходного кода. Компонент, как правило, представляет собой физическую упаковку логических элементов, таких как классы, интерфейсы и кооперации. Графически компонент изображается в виде прямоугольника с вкладками, содержащего обычно только имя, как показано на рисунке. Компонент подобен классу: он описывает совокупность объектов с общими атрибутами, операциями, отношениями и семантикой.
Узел – элемент реальной физической системы, как правило вычислительный ресурс.
Базовые структурные сущности могут иметь разновидности.
ПОВЕДЕНЧЕСКИЕ.
Поведенческие сущности (Behavioral things) являются динамическими составляющими модели UML. Это глаголы языка: они описывают поведение модели во времени и пространстве. Существует всего два основных типа поведенческих сущностей.
Взаимодействие – поведение, связанное с обменом сообщениями между объектами в рамках конкретного контекста для достижения определенной цели. С помощью взаимодействия можно описать как отдельную операцию, так и поведение совокупности объектов. Взаимодействие предполагает ряд других элементов, таких как сообщения, последовательности действий (поведение, инициированное сообщением) и связи (между объектами). Графически сообщения изображаются в виде стрелки, над которой почти всегда пишется имя соответствующей операции, как показано на рисунке.
Автомат – алгоритм поведения, выраженный в последовательности состояний, через которые объект или взаимодействие проходят на протяжении своего жизненного цикла в ответ на различные события, а также реакции на эти события. С помощью автомата можно описать поведение отдельного класса или кооперации классов. С автоматом связан ряд других элементов: состояния, переходы (из одного состояния в другое), события (сущности, инициирующие переходы) и виды действий (реакция на переход). Графически состояние изображается в виде прямоугольника с закругленными углами, содержащего имя и, возможно, подсостояния.
ГРУППИРУЮЩИЕ.
Группирующие сущности являются организующими частями модели UML. Это блоки, на которые можно разложить модель. Есть только одна первичная группирующая сущность, а именно пакет.
Пакет – универсальный механизм организации элементов в группы. В пакет можно поместить структурные и поведенческие сущности, а также другие группирующие сущности.
АННОТАЦИОННЫЕ.
Аннотационные сущности - пояснительные части модели UML. Это комментарии для дополнительного описания, разъяснения или замечания к любому элементу модели. Имеется только один базовый тип аннотационных элементов - примечание (Note). Примечание - это просто символ для изображения комментариев или ограничений, присоединенных к элементу или группе элементов. Графически примечание изображается в виде прямоугольника с загнутым краем, содержащим текстовый или графический комментарий, как показано на рисунке.
Комментарии – пояснительные части моделей.
10. Язык UML. Типы отношений.
В языке UML определены четыре типа отношений:
-
зависимость;
-
ассоциация;
-
обобщение;
-
реализация.
Эти отношения являются основными связующими строительными блоками в UML и применяются для создания корректных моделей.
Зависимость (Dependency) - это семантическое отношение между двумя сущностями, при котором изменение одной из них, независимой, может повлиять на семантику другой, зависимой. Графически зависимость изображается в виде прямой пунктирной линии, часто со стрелкой, которая может содержать метку.
Ассоциация (Association) - структурное отношение, описывающее совокупность связей; связь - это соединение между объектами. Разновидностью ассоциации является агрегирование (Aggregation) - так называют структурное отношение между целым и его частями.
Обобщение (Generalization) - это отношение "специализация/обобщение", при котором объект специализированного элемента (потомок) может быть подставлен вместо объекта обобщенного элемента (родителя или предка). Таким образом, потомок (Child) наследует структуру и поведение своего родителя (Parent). Графически отношение обобщения изображается в виде линии с незакрашенной стрелкой, указывающей на родителя, как показано на рисунке.
Реализация (Realization) - это семантическое отношение между классификаторами, при котором один классификатор определяет "контракт", а другой гарантирует его выполнение. Отношения реализации встречаются в двух случаях: во-первых, между интерфейсами и реализующими их классами или компонентами, а во-вторых, между прецедентами и реализующими их кооперациями.
11. Язык UML. Диаграмма прецедентов (использования). Вид диаграммы. Назначение диаграммы.
Диаграммы прецедентов (диаграммы использования) (User case diagram) - отражает функциональное назначение системы. Является концептуальной моделью системы.
На диаграмме прецедентов представлены прецеденты и актеры (частный случай классов), а также отношения между ними. Диаграммы прецедентов относятся к статическому виду системы с точки зрения прецедентов использования. Они особенно важны при организации и моделировании поведения системы.
ПРИМЕНЕНИЕ ДИАГРАММ ПРЕЦЕДЕНТОВ
-
Моделирование контекста системы. Охватывает внешнее окружение системы, с которым она взаимодействует. Вводит стереотипы их поведения, связи с системой
-
Моделирует требования к системе. Устанавливает внешние связи. Определяет поведение системы. Определяет функциональные требования к системе.
Действующие лица (Актеры) – любая внешняя по отношению к системе сущность, которая взаимодействует с системой
Прецеденты (варианты использования) – определяет последовательность действий системы при взаимодействии с актером.