Свойства атрибутов на схемах классов UML
Сигнатура атрибута
Сигнатура атрибута — это строка, которая представляет атрибут в классе или интерфейсе на схеме классов UML. Сигнатура имеет следующую форму:
+ AttributeName : TypeName [*]
+ обозначает общую видимость. Допустимые значения: - (закрытый), # (защищенный), ~ (пакет).
AttributeName подчеркивается, если атрибут статический.
: TypeName опускается, если атрибут не имеет типа.
[*] определяет кратность. Опускается, если кратность равна 1.
Свойства
В следующей таблице описываются свойства атрибута в классе или интерфейсе на схеме классов UML.
Чтобы просмотреть свойства атрибута, щелкните атрибут в классе или интерфейсе на схеме правой кнопкой мыши и выберите параметр Свойства. Свойства отображаются в окне "Свойства".
Свойство | default | Описание |
Значение по умолчанию | (пусто) | Значение атрибута, если создается экземпляр классификатора. |
Является доступным только для чтения | False | Если значение true, значение атрибута нельзя изменить. |
Является статическим | False | Если значение true, одно значение этого атрибута используется всеми экземплярами этого типа. Если значение true, имя атрибута на схеме подчеркивается. |
name | (новое имя) | Должно быть уникальным в классификаторе-владельце. |
Type | (нет) | Примитивный тип данных, например Integer, или тип, определенный в модели. Если в этом свойстве ввести имя нового типа, он будет добавлен в раздел Незаданные типы обозревателя моделей UML. |
Видимость | public | Допустимыми значениями и символами, которые отображаются в сигнатуре, являются следующие: + Открытый — видимый глобально - Закрытый — невидимый за пределами типа-владельца. # Защищенный — видимый типам, производным от владельца. ~ Пакет — видимый другим типам в том же пакете. |
Рабочие элементы | 0 связанных | Число связанных рабочих элементов. Только для чтения. Дополнительные сведения см. в разделе Связывание элементов модели и рабочих элементов. |
Является листом | False | Если значение true, то разрешение переопределения этого атрибута в производных типах не предусмотрено. |
Является производным | False | Если значение true, этот атрибут вычисляется из других атрибутов. Например, диагональ вычисляется из ширины и высоты. Сведения нужно записывать в поле Описание или прикрепленное примечание. |
Описание | (пусто) | Для общих примечаний или определения ограничений для значений атрибута. |
Кратность | 1 — этот атрибут имеет одно значение заданного типа. 0.. 1 — этот атрибут может иметь значение null. * — значение этого атрибута представляет собой коллекцию значений. 1.. * — значение этого атрибута представляет собой коллекцию, которая содержит хотя бы одно значение. n .. m — значение этого атрибута представляет собой коллекцию, которая содержит от n до mзначений. | |
Является упорядоченным | False | Если значение true, коллекция формирует последовательный список. При этом значение параметра Кратность должно быть больше 1. |
Является уникальным | False | Если значение true, в коллекции нет повторяющихся значений. При этом значение параметра Кратность должно быть больше 1. |
На схеме классов UML можно добавлять операции в классы и интерфейсы. Операция — это метод или функция, которую может выполнять экземпляр класса или интерфейса.
Сигнатура операции
Сигнатура операции — это строка текста, которая представляет операцию в классе или интерфейсе на схеме классов UML. Представление имеет следующую форму:
+ имя_операции (параметр1 : тип1 [*], ...) : возвращаемый_тип [*]
Знак "+" обозначает общую видимость. Другие допустимые значения
: - (закрытый),
# (защищенный),
~ (пакет).
OperationName подчеркнуто, если значение свойства Является статическим — true, или выделено курсивом, если значение свойстваЯвляется абстрактным — true.
: ReturnType не указывается, если возвращаемый тип не определен.
[*] обозначает кратность параметра или возвращаемого типа.Не указывается, если кратность равна 1.
Таблица свойств операции на диаграмме классов
Свойство | default | Описание |
name | (новое имя) | Должно быть уникальным во вмещающем типе. |
Параметры | (нет) | Список, имеющий форму имя:тип,имя:тип, …. Щелкните […], чтобы редактировать список. Типы могут быть типами-примитивами или типами, определенными в модели. Если в этом свойстве ввести имя нового типа, он будет добавлен в раздел Неуказанные типы обозревателя моделей UML. |
Возвращаемый тип | (нет) | (нет), тип-примитив или тип, определенный в модели. Если в этом свойстве ввести имя нового типа, он будет добавлен в раздел Неуказанные типы обозревателя моделей UML. |
Постусловия | (нет) | Необязательное условие, задающее отношение между состоянием системы до и после выполнения операции. |
Предусловия | (нет) | Необязательное условие, указывающее допущения о состоянии системы перед началом выполнения операции. |
Основные условия | (нет) | Необязательное ограничение значений, возвращаемых операцией. |
Видимость | public | Допустимыми значениями и символами, которые отображаются в сигнатуре, являются следующие: + Открытый — видимый глобально; – Закрытый — не видимый за пределами типа-владельца; # Защищенный — видимый типам, производным от владельца; ~ Пакет — видимый другим типам в том же пакете. |
Подпись | +Имя() | Обобщает видимость, имя, параметры и возвращаемый тип этой операции. Эти свойства можно изменить, отредактировав сигнатуру на схеме или каждое свойство по отдельности. |
Рабочие элементы | 0 связанных | Число связанных рабочих элементов. Только для чтения. Дополнительные сведения см. в разделе Связывание элементов модели и рабочих элементов. |
Параллельность | Sequential | Последовательный — операция разработана или будет разработана без элемента управления параллелизмом. Параллельный вызов этой операции может привести к сбоям. Защищенный — операция автоматически блокируется до завершения других ее экземпляров. Параллельный — операция разработана так, что несколько ее вызовов могут выполняться одновременно. |
Является статическим | False | Если значение true, операция используется всеми экземплярами этого типа. Если значение true, имя операции на схеме подчеркивается. |
Является абстрактным | False | Если значение true, с этой операцией код не связан. Следовательно класс-владелец является абстрактным. |
Является листом | False | Эта операция не предназначена разработчиком для переопределения в производных классах. |
Является запросом | False | Если значение true, состояние системы после этой операции изменяется незначительно. Следовательно, ее можно использовать для проверки состояния системы, например, при проведении теста. |
Кратность | 1 — одно значение заданного типа. 0..1 — может иметь значение null. * — коллекция значений заданного типа. 1..* — коллекция, которая содержит хотя бы одно значение. n .. m — коллекция, содержащая от n до m значений. | |
Является упорядоченным | False | Если значение true, коллекция образует последовательный список. При этом значение свойства Кратность должно быть больше 1. |
Является уникальным | False | Если значение true, в коллекции нет повторяющихся значений. При этом значение свойства Кратностьдолжно быть больше 1. |