Предметы UML

Унифицированный язык моделирования UML (Unified Modeling Language)

Унифицированный язык моделирования UML (Unified Modeling Language) – это язык для определения, представления, проектирования и документирования программных систем, организационно-экономических систем, технических систем и других систем различной природы. UML содержит стандартный набор диаграмм и нотаций самых разнообразных видов.

UML является наследником методов объектно-ориентированного анализа и проектирования, появившихся в конце 1980-х и начале 1990-х годов. Создание UML началось в конце 1994 г., с объединения методов Booch и OMT (Object Modeling Technique) под эгидой компании Rational Software. К концу 1995 г. Гради Буч и Джеймс Рамбо создали первую спецификацию Unified Method, версия 0.8. Тогда же в 1995 г. к ним присоединился создатель метода OOSE (Object-Oriented Software Engineering) Ивар Якобсон. UML является унификацией методов Буча, Рамбо и Якобсона а также суммой передового опыта по разработке ПО(рис. 2.3.).

Разработка UML преследовала следующие цели:

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

● предусмотреть механизмы расширения и специализации языка;

● обеспечить независимость языка от языков программирования и процессов разработки;

● интегрировать накопленный практический опыт.

UML широко используется в индустрии ПО. Практически все мировые производители CASE-средств поддерживают UML в своих продуктах. В 2004 году Object Management Group приняла UML версии 2.0. Ранее в 1997 году OMG приняла стандарт UML 1.1.

Рисунок 2.3. Создатели языка UML

2.7. Базис языка визуального моделированияСловарь UML образуют три разновидности строительных блоков (рис. 2.4):

● предметы,

● отношения,

● диаграммы.

Предметы— это абстракции, которые являются основными элементами в модели, отношения связывают эти предметы, диаграммы группируют коллекции предметов.

 

Рисунок 2.4. Словарь UML

В UML имеются четыре разновидности предметов:

● структурные предметы;

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

● группирующие предметы;

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

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

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

 

Рисунок 2. 5. Изображение класса в RSA (Rational Software Architector)

 

Интерфейс — набор операций, которые определяют услуги класса или компонента. Интерфейс описывает поведение элемента, видимое извне. Интерфейс может представлять полные услуги класса или часть таких услуг. Интерфейс определяет набор спецификаций операций (их описание), а не набор реализаций операций. Имя интерфейса обычно начинается с буквы «I». Интерфейс редко показывают самостоятельно. Обычно его присоединяют к классу или компоненту, который реализует интерфейс (рис.2.6).

Рисунок 2.6. Изображение интерфейса в RSA

Актер — набор согласованных ролей, которые могут играть пользователи при взаимодействии с системой (ее элементами Use Case) (рис.2.7). Каждая роль требует от системы определенного поведения.

Рисунок 2.7 Изображение актера в RSA


 

 

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

 

Рисунок 2.8 Изображение прецедента в RSA

.

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

Рисунок 2. 9. Изображение компонента в RSA

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

 

Рисунок 2.10. Изображение узла в RSA

 

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

● взаимодействие;

● конечный автомат.

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

● сообщения,

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

● связи (соединения между объектами).

Рисунок 2.11. Изображение сообщения в RSA

 

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

● состояния,

● переходы (от состояния к состоянию),

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

● действия (реакции на переход).

 

Рисунок 2.12 Изображение состояния в RSA

Группирующие предметы — организационные части UML-моделей. Это ящики, по которым может быть разложена модель. Предусмотрена одна разновидность группирующего предмета — пакет(рис.2.13). В пакет могут помещаться структурные предметы, предметы поведения и даже другие группировки предметов. В отличие от компонента (который существует в период выполнения), пакет — чисто логическое понятие. Это означает, что пакет существует только в период разработки.

 

 

Рисунок 2.13. Изображение пакета в RSA

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

Рисунок 2.14. Изображение примечания в RSA