Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TRPO_конспект_3_курс.docx
Скачиваний:
10
Добавлен:
07.11.2018
Размер:
624.34 Кб
Скачать

Унифицированных язык моделирования (uml)

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

Предметы в UML

Существует 4 разновидности предметов:

  1. Структурные предметы

  2. Предметы поведения

  3. Группирующие предметы

  4. Поясняющие предметы

Структурные предметы

1)Класс – описание множества проектов, которые разделяют одинаковые свойства, операции, отношения и семантику. Графически класс отображается в виде прямоугольника и включает следующие секции:

2)Интерфейс – это. Графический интерфейс представляется в виде круга с именем(обычно начинается с “I”). Интерфейс редко показывают самостоятельно, обычно его присоединяют к классу и компоненту, которые реализует класс.

3)Актёр – набор согласованных ролей, которые могут играть пользователи, при взаимодействии с системой. Каждая роль требует от системы определённого поведения

4)Сотрудничество(кооперация) – определяет взаимодействие и является совокупностью ролей или других элементов, которые работают вместе для обеспечения коллективного ведения. Конкретный класс может участвовать в нескольких кооперациях. Графически кооперация представляет собой пунктирный эллипс, в который вписывается имя кооперации.

5)Элемент Use CASE (Прецедент) – это описание последовательности действий, выполняемых системой в интересах отдельного актёра и производящих видимый для актёра результат.

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

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

8)Узел – физический элемент, который существует в период работы системы и представляет собой ресурс, имеющий возможность обработки. В узле размещается набор компонентов, который может перемещаться от узла к узлу. На рисунке узел изображается как куб с именем внутри

Предметы поведения

- это динамические части UML-моделей. Они являются глаголами моделей, представлением поведения во времени и пространстве. Существует две основные разновидности предметов поведения:

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

    1. Сообщения – представляются в виде направленной линии, с именем е операции.

    2. Последовательность действий (поведение, вызываемое сообщениями).

    3. Связью (соединения между сообщениями).

  2. Конечный автомат – это последовательность состояний объекта, во время его существования. Элементами конечного автомата являются:

    1. Переходы (от состояния к состоянию).

    2. События (предметы, вызывающие переходы).

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

3)Группирующие предметы – это организационная часть UML-модели. Предусмотрена одна разновидность – пакет – это общий механизм для распределения элементов по группам. В пакет могут помещаться структурные предметы, предметы поведения и другие группировки объектов. Компонент существует в период выполнения, а пакет в период разработки. Изображается как папка с вкладкой, на которой обозначено его имя (иногда содержание)

4)Поясняющие предметы, это разъясняющие части UML-моделей. Предусмотрена одна разновидность – примечание – это символ для отображения ограничений и замечаний, присоединяемых к элементу или их совокупности. Изображается в виде прямоугольника, с загнутым углом, в который вписывается текстовый или графический комментарий.

UML-диаграммы

UML-диаграммы могу быть либо статического вида, либо динамического.

При рассмотрении статических частей модели используется следующие 4 типа диаграмм:

  1. классов

  2. объектов

  3. компонентов

  4. развёртывания

Для работы с динамическими частями модели используют следующие пять видов диаграмм:

  1. Прецедентов

  2. Последовательности

  3. Кооперации

  4. Состояний

  5. Деятельности

Диаграмма прецедентов

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

Отношения между актёрами и прецедентами показываются с помощью стрелок, которые бывают 4-х видов:

  1. Коммуникации

  2. Включения

  3. Расширения

  4. Обобщения

Моделирование системы можно производить двумя способами:

  1. Для моделирования контекста системы

  2. Для моделирования требований

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

Данный способ состоит из следующих шагов:

  1. Определяются окружающие системы актёров

  2. Организовать похожих актёров с помощью отношения обобщения.

  3. Ввести стереотип для каждого актёра, чтобы облегчить понимание системы.

  4. Поместить актёров на диаграмму прецедентов и определить связь актёров с прецедентами системы.

Моделирование требований к системы. Требования – это особенности объекта, свойства или поведения. Моделирование требований производится по следующим шагам:

  1. Определение актёров системы

  2. Для каждого актёра рассматривается поведение, которое он ожидает или требует от системы.

  3. Проименовывается каждая роль, как прецедент на диаграмме.

  4. Выделить общее поведение в новые прецеденты и расширить основные потоки событий.

  5. Создать диаграмму прецедентов

  6. Дополнить прецеденты примечаниями, описывающие требования систем.

Принципы построения диаграмм прецедентов.

  1. Задать имя диаграмме, соответствующее её назначению.

  2. Расположить элементы так, чтобы свести к минимуму число пересечений на диаграмме.

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

  4. Использовать различные примечания и цвет, чтобы привлечь внимание пользователя к важным особенностям диаграммы.

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

<имя_пакета>::<имя_класса>

Атрибуты класса (свойства) – записываются во вторую секции прямоугольника и имеют следующий синтаксис:

<квантор_видимости><имя_атрибута>[кратность]:<тип_атрибута>=<исходное значение>{строка-свойство}

Обязательный элемент в синтаксисе – «имя атрибута». Все остальные элементы могут опускаться.

Квантор видимости:

  1. “+” – область видимости, типа public. Этот атрибут виден или виден из любого класса, в котором определена диаграмма.

  2. ”#” – область видимости, типа protected. Этот атрибут не виден для всех классов, за исключением подклассов, данного класса.

  3. ”-“ – область видимости, типа private. Этот атрибут не виден для всех классов без исключения.

Имя атрибута – это обязательный элемент, который обладает свойством уникальности в пределах данного класса.

Кратность атрибута – характеризует общее количество конкретных атрибутов данного типа.

Тип атрибута – представляет собой выражение, характеризующего тип, к которому может относиться данный атрибут. Имя_сотрудника[1..2]:string

Исходные значения относятся к типу атрибута и служат для задания начального значения. Цвет: Color = (255,0,0)

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

Операции находятся в третьей секции прямоугольника. Совокупность операций характеризует поведение класса.

<квантор_видимости><имя_операции>(список параметров):<выражение_типа_возвращаемого_значения>{строка-свойство}

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

Список параметров – перечень параметров, которыми обладают операции.

выражение_типа_возвращаемого_значения – это значения, которые возвращаются объектам после выполнения операции.

  1. Создать()

  2. +нарисовать (форма:многоугольник=прямоугольник,цвет_заливки:Color(0,0,255))

Отношения между классами

Базовыми отношениями в языке UML являются отношения:

  1. зависимости

  2. ассоциации

  3. обобщения (агрегации)

1)Отношения зависимости – показывает отношение между элементами модели и графически изображается пунктирной линией со стрелкой, направленной от класса-клиента к классу-источнику. В качестве класса-клиента и класса-источника могут выступать целые множества элементов. В этом случае одна линия со стрелкой разделяется на несколько линий в некоторой точке.

2)Отношение ассоциаций – может характеризовать отдельные свойства конкретной ассоциации. Графически изображается сплошной стрелкой с дополнительными специальными символами

2

1

Связывает 2 класса, причём направление треугольника указывают порядок класса

Если на стрелке нет специальных символов, то это означает, что порядок следования классов не определён

n-арная ассоциация – связывает некоторым отношение 3 и более классов

Отношение агрегации изображается сплошной линией, один из концов которой представляет незакрашенный ромб – он рисуется у того класса, который является целым, остальные – его части

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

Рисунок….

Диаграмма состояний включает в себя два специальных состояния:

  1. начальное – графически изображается заштрихованного круга и соответствует состоянию объекта, когда он был создан

  2. Конечное – круг, с чёрной точкой внутри. Соответствует конечному состоянию объекта, когда произведён выходи из состояния.

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

Кроме этого на диаграмме есть следующие типы объектов:

  1. Входное действие – поведение, которое выполняется когда объект переходит в данное состояние. На диаграмме после «entry:»

  2. Действие (деятельность) – поведение, реализуемое объектом пока он находится в данном состоянии. На диаграмме после «do:»

  3. Выходное действие – поведение, когда объект выходит из состояния. На диаграмме после «exit:»

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

  5. Событие – это то, что вызывает переход из одного состояния в другое. Событие «клиент хочет закрыть счёт» вызывает переход из закрытое. Событие всегда изображают над стрелкой или рядом. В примере 6 переходов и 4 события. На диаграмме для отображения событий могут использовать как имя операций, так и обычные выражения. Большинство переходов должны иметь события, т.к. именно они заставляют переход осуществиться

  6. Ограждающее условие – определяет куда может осуществиться . Изображается на диаграмме вдоль линии перехода после имени события и заключается в []. Ограждающие условия помогают пользователю понять, как осуществляется переход. Событие «вклад денег» может произойти только в том случае, если будет положительный баланс. На диаграмме показано 3 ограждающие условия. Диаграмма состояний может создаваться не для каждого класса и если объект класса может находиться в нескольких состояниях, то на диаграмме мы обязаны их показать.

Case-технологии, язык UML (элементы, классификация), диаграммы вариантов использования (в виде контекста, ), диаграмма классов.

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