Унифицированный язык визуального моделирования UML

Автор работы: Пользователь скрыл имя, 28 Февраля 2012 в 19:43, лекция

Краткое описание

Унифицированный язык визуального моделирования UML.
Вопросы:
1. Понятие UML
2. Предметы UML
3. Отношения UML
4. Диаграммы UML
5. Механизмы расширения UML

Содержимое работы - 1 файл

Лекция № 2.docx

— 531.21 Кб (Скачать файл)

Лекция № 2

Унифицированный язык визуального  моделирования UML.

Вопросы:

  1. Понятие UML
  2. Предметы UML
  3. Отношения UML
  4. Диаграммы UML
  5. Механизмы расширения UML

Вопрос 1

UML – язык для определения, визуализации, конструирования и документирования артефактов программных систем, а так же для моделирования экономических процессов и других не программных систем.

Артефакт – искусственный интеллект, объект, документ.

UML обладает следующими основными  характеристиками:

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

Пользователем UML предоставлены следующие  возможности:

  • Строить модели на основе средств ядра без использования механизмов расширения для большинства типовых приложений
  • Добавлять при необходимости новые элементы и условные обозначения

Словарь UML образуют 3 разновидности  строительных блоков это предметы, отношения и диаграммы.  Предметы – это абстракции (основные элементы в модели), отношения связывают предметы, а диаграммы группируют коллекции предметов.

Вопрос 2

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

Структурные предметы  -  это существительные в UML моделях статические части.

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

Интерфейс – набор операций, определяющих услуги класса или компонента.

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

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

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

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

Компонент – это физическая и заменяемая часть системы, которая соответствует набору интерфейсов и обеспечивает реализацию этого набора.

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

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

Предметы поведения – это динамические части, глаголы модели, поведение объектов во времени.

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

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

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

Группирующие предметы – это организационные части, ящики по которым может быть разложена модель.

Пакет - это общий механизм для распределения элементов по группам. Пакет – это чисто концептуальное понятие и существует только в период разработки.

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

Поясняющие предметы - это разъясняющие части модели

Примечание - это символ для отображения ограничений и замечаний к элементу.

Вопрос 3

Зависимость – семантическое отношение между 2-мя предметами, в котором изменение в одном предмете (независимом) может влиять на семантику другого предмета (зависимого).

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

Обобщение – это отношение специализации/обобщение, в котором объекты специализированного элемента (потомка) могут заменять объекты обобщенного элемента (предка).

Реализация – это семантическое отношение между классификаторами, где один классификатор определяет контракт, который другой классификатор обязуется выполнить.  Классификаторами могут быть классы, интерфейсы,  компоненты, элементы USE CASE и кооперации. Изображается как нечто среднее между обобщением и зависимостью.

Вопрос 4

Диаграмма классов – показывает набор классов, интерфейсов, сотрудничеств и их отношений. Эти диаграммы обеспечивают статическое представление системы.

Диаграмма объектов – показывает набор объектов и их отношения. Это статический «моментальный снимок» с экземпляров предметов, которые находятся в диаграммах классов.

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

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

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

Эти две диаграммы изоморфны (одну диаграммы можно трансформировать в другую).

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

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

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

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

Вопрос 5

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

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

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

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

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


Информация о работе Унифицированный язык визуального моделирования UML