- •1. Назначение uml.
- •2. Модель и ее элементы - сущности.
- •3. Модель и ее элементы- отношения.
- •4. Модели и их представления - использования, поведения и структуры.
- •5. Общие свойства моделей.
- •6. Механизмы расширения - стереотипы, помеченные значения, ограничения.
- •7.Канонические диаграммы.
- •8. Иерархия диаграмм в uml 2.
- •9. Диаграммы использования.
- •10. Реализация вариантов использования.
- •11. Моделирование структуры на uml.
- •12. Диаграмма классов. Классы.
- •13. Диаграмма классов. Сущности.
- •14. Диаграммы классов. Отношения.
- •3. Агрегация.
- •15.Диаграмма классов. Интерфейсы и абстрактные классы.
- •16. Компоненты и интерфейсы.
- •17.Диаграммы реализации.
- •18. Моделирование поведения на uml.
- •19. Диаграмма состояний.
- •Переход
- •Сложные переходы
- •Переходы между параллельными состояниями
- •20. Диаграмма деятельности.
- •21. Диаграммы последовательности.
- •Фокус управления
- •Сообщения
- •Ветвление потока управления
- •Стереотипы сообщений
- •Комментарии или примечания
- •22. Диаграммы коммуникации.
- •23. Модели параллелизма.
- •24.Специальные диаграммы - диаграмма объектов, диаграмма внутренней структуры.
- •25. Специальные диаграммы - обзорная диаграмма взаимодействия, диаграмм синхронизации.
- •26. Паттерны проектирования и каркасы на uml.
- •Каркасы
- •27.Управление моделями.
- •28. Диаграмма пакетов.
- •1. Пакет Основные элементы.
- •2. Пакет Элементы поведения.
4. Модели и их представления - использования, поведения и структуры.
В языке UML нет четких границ между различными концепциями и конструкциями, но для удобства мы делим их на несколько представлений. Представление модели -- это просто подмножество конструкций, которое представляет один из аспектов моделируемой системы. Разделение моделей на представления делалось в некотором роде произвольно, но, как мы надеемся, обоснованно и наглядно. Концепции каждого из представлений моделей проиллюстрированы одной или двумя диаграммами. Можно сказать, что представление - это средство логического структурирования модели.
1. Представление использования. Призвано отвечать на вопрос, что делает система полезного. Определяющим признаком для отнесения элементов модели к представлению использования является явное сосредоточение внимания на наличии у системы внешних границ, то есть выделение внешних действующих лиц, взаимодействующих с системой, и внутренних вариантов использования, описывающих различные сценарии такого взаимодействия. Единственным выразительным средством представления использования оказываются диаграммы использования.
2. Представление структуры. Призвано отвечать на вопрос: из чего состоит система. Определяющим признаком для отнесения элементов модели к представлению структуры является явное выделение структурных элементов - составных частей системы - и описания взаимосвязей между ними. Принципиальным являет чисто статический характер описания, то есть отсутствие понятия времени в любой форме, в частности, в форме последовательности событий/ действий. Представление структуры описывается, прежде всего, и главным образом диаграммами классов, а также компонентов, размещения, внутренней структуры, в редких случаях, диаграммами объектов.
3 Представление поведения. Отвечает на вопрос: как работает система? Признак явное использование понятия времени, в частности, в форме описания последовательности событий/действий, т.е. в форме алгоритма. Представление поведения описывается диаграммами автомата и деятельности, а также обзорной диаграммой взаимодействия, диаграммами коммуникации и последовательностей. В редких случаях можно воспользоваться дигр. синхронизации.
5. Общие свойства моделей.
Модель должна быть семантически согласованна с другими моделями, которые с нею связаны.
Должна соответствовать следующим правилам, позволяющим корректно и однозначно определять:
имена, кот. можно давать сущностям, отношениям и диаграммам;
область действия ( контекст, в котором имя имеет некоторое значение);
видимость (имена видны и могут использоваться другими элементами);
целостность (как элементы должны правильно и согласованно соотноситься друг с другом);
выполнение ( что значит выполнить и имитировать некоторую динамическую модель).
6. Механизмы расширения - стереотипы, помеченные значения, ограничения.
UML - это стандартный язык для разработки проектов программного обеспечения, но он не может охватить все нюансы различных предметных областей. Одной из принципиальных особенностей UML является его универсальность, достигаемая за счет использования контролируемых механизмом расширения. Они включают в себя: стереотипы, помеченные значения, ограничения.
1. Стереотипы позволяют расширять словарь UML для создания новых элементов моделирования, получаемых из существующих, но имеющих определенные свойства, которые подходят для конкретной проблемы предметной области или для другого специализированного использования. Графически отображается , как имя, заключенное в << >> и расположенного над именем другого элемента. В дополнение она может быть обозначена доп. иконкой. Начиная с версии 2.0 независимое именованное значение считается атрибутом стереотипа. Каждый стереотип имеет от нуля и более определений меток, и все стереотипные элементы UML имеют соответствующее число именованных значений. Например,
actor |
Класс (class) |
Определяет связанное множество ролей, которые играет пользователь прецедента при взаимодействии с ним |
access |
Зависимость (dependency) |
Сообщает, что открытое содержание целевого пакета доступно в пространстве имен исходного пакета |
association |
Концевая точка связи (link end) |
Указывает, что соответствующий объект видим ассоциацией |
become |
Сообщение (message) |
Целевой объект совпадает с исходным, но в более поздний момент времени. При этом, возможно, у него будут другие значения, состояния или роли |
2. Помеченные значения (Tagged value) расширяет свойства строительных блоков UML, позволяя включать новую информацию в спецификацию элемента.
В большинстве случаев помеченное значение изображается посредством размещения метки и значения под именем элемента, к которому оно присоединено. При этом все сочетание заключается в фигурные скобки, например {location = client}. Если значение метки представляет собой длинный текст, то помеченное значение можно поместить в дополнительный раздел классификатора.
Помеченное значение |
Символы, к которым оно применимо |
Назначение |
documentation |
Все элементы |
Содержит комментарий, описание или пояснение к тому элементу, к которому присоединено |
location |
Большинство элементов |
Определяет узел или компонент, которому принадлежит элемент |
persistence |
Класс (class), ассоциация (association) атрибут (attribute) |
Определяет, сохраняется ли состояние , экземпляра после завершения создавшего его процесса. Состояния бывают устойчивыми (сохраняющими значение) или временными (не сохраняющими значение) |
semantics |
Класс (class), операция (operation) |
Описывает назначение класса или операции |
3. Ограничения. Приведенные ниже ограничения определены как стандартные элементы UML. Для каждого помеченного значения в таблице указывается имя, символ UML, к которому оно применимо, и назначение.
В большинстве случаев ограничение размещается рядом с элементом и заключается в фигурные скобки, например {complete}. Можно изображать ограничение и по-другому - помещая в примечание, соединенное с элементом зависимостью.
Ограничение |
Символ, к которому оно применимо |
Назначение (о чем говорит данное ограничение) |
complete |
Обобщение (generalization) |
В модели специфицированы все потомки в данном обобщении (хотя некоторые могут быть скрыты на диаграммах), и дополнительных потомков определять не разрешается |
destroyed |
Экземпляр (instance), связь (link) |
Экземпляр или связь уничтожаются до завершения выполнения объемлющего взаимодействия |
disjoint |
Обобщение (generalization) |
Объекты данного родителя могут иметь не более одного заданного потомка в качестве типа |
implicit |
Ассоциация (association) |
Отношение является не явно выраженным, а концептуальным |
incomplete |
Обобщение (generalization) |
Специфицированы не все потомки в обобщении (учитывая и скрытых). Разрешается определять дополнительных потомков |
new |
Экземпляр (instance), связь (link) |
Экземпляр или связь создаются в процессе выполнения объемлющего взаимодействия |
or |
Ассоциация (association) |
Из множества ассоциаций ровно одна является явно выраженной для каждого ассоциированного объекта |
overlapping |
Обобщение (generalization) |
Объекты данного родителя могут иметь более одного заданного потомка в качестве типа |
transient |
Экземпляр (instance), связь (link) |
Экземпляр или связь создаются в процессе выполнения объемлющего взаимодействия, но уничтожаются до его завершения |
Совместно эти три механизма расширения языка позволяют модифицировать UML в соответствии с потребностями вашего проекта. Кроме того, они дают возможность адаптировать UML к новым технологиям разработки программного обеспечения, например к вероятному появлению более мощных языков распределенного программирования. С помощью механизмов расширения можно создавать новые строительные блоки, модифицировать существующие и даже изменять их семантику.