Структурные сущности (Structural things) представляют собой символы статических частей объектной модели, соответствующие концептуальным или физическим элементам системы.
Класс (Class) – это описание совокупности объектов с общими атрибутами, операциями, отношениями и семантикой (рис. 4.1).
При этом атрибут – это именованное свойство всех экземпляров данного класса. Он имеет тип, обычно указываемый в классе, и значение, которое указывается в экземпляре класса. Операция – это описание поведения всех экземпляров данного класса, или функция, которую могут выполнять его экземпляры, или услуга, которую могут запросить у этих экземпляров.
Экземпляр (Instance) – конкретная реализация абстракции (класса, прецедента, компонента и т.д.) или объект, графически представляемый как класс с подчеркнутым именем (рис. 4.1), после которого может следовать двоеточие (:) и имя класса, от которого производится данный объект. Методы объекта представляют собой реализации соответствующих операций класса и, как правило, не указываются.
|
|
Активный класс (Active class) – класс, объекты которого могут инициировать управляющее воздействие, и вовлечены в один или несколько процессов или потоков. Изображается также как класс, но толстыми линиями.
Признак видимости может принимать одно из трех значений:
- + – открытый (public) – может использовать любой класс или объект;
- # – защищенный (protected) – может использовать любой потомок класса;
- - – закрытый (private) – может использовать только данный класс.
Интерфейс (Interface) – совокупность операций, которые определяют набор услуг, предоставляемых классом или компонентом, т.е. описание видимого извне поведения элемента (рис. 4.2). Определяет спецификации операций (сигнатуры), но не их реализацию и присоединяется к реализующему его классу или компоненту.
Кооперация (Collaboration) – представляет взаимодействия элементов, которые, работая совместно, производят некоторый кооперативный эффект, не сводящийся к простой сумме слагаемых (рис. 4.2).
Прецедент / Вариант использования (Use case) – описание последовательности выполняемых системой действий, в результате которых образуется наблюдаемый результат, значимый для какого-нибудь определенного актора (рис. 4.2).
Компонент (Component) – физически заменяемая часть системы, соответствующая некоторому набору интерфейсов и обеспечивающая их реализацию (рис. 4.3). Как правило, это физическая упаковка логических элементов (файлы), таких как классы, интерфейсы и кооперации.
Узел (Node) –элемент реальной (физической) системы, существующей во время функционирования программного комплекса и представляющий собой вычислительные ресурсы (объем памяти, скорость обработки)(рис. 4.3).
|
|