Шаг 104.
Унифицированный язык моделирования UML.
Моделирование статических и динамических типов в UML

    На этом шаге рассмотрим типичные приемы моделирования статических и динамических типов в UML.

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

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

    Чтобы смоделировать динамический тип, необходимо:

    На рис. 1 показано, какие роли исполняют экземпляры класса Person (Человек) в системе управления персоналом.


Рис.1. Моделирование динамических типов

    По диаграмме видно, что экземпляры класса Person могут быть одного из следующих типов: Candidate (Кандидат), Employee (Работник) или Retiree (Пенсионер).

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

    Изображая интерфейс в UML, учитывайте следующее:

    На следующем шаге рассмотрим один из способов организации элементов модели в UML - пакеты.




Предыдущий шаг Содержание Следующий шаг