Шаг 209.
Унифицированный язык моделирования UML.
Организация коопераций

    На этом шаге рассмотрим организацию коопераций.

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

    Во-первых, это связь между кооперацией и тем, что она реализует. Кооперация может реализовывать либо классификатор, либо операцию. Это означает, что кооперация описывает структурную или поведенческую реализацию соответствующего классификатора или операции. Например, вариант использования, который именует набор сценариев, выполняемых системой, может быть реализован в виде кооперации. Этот вариант использования вместе с его действующими лицами и окружающими вариантами использования представляет контекст кооперации. Аналогично кооперацией может быть реализована и операция (которая именует реализацию некоторой системной услуги). В таком случае контекст формирует данная операция вместе со своими параметрами и возможным возвращаемым значением. Такая связь между вариантом использования или операцией и реализующей кооперацией моделируется с помощью связи реализации.

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

    Во-вторых, существуют связи между самими кооперациями. Одни из них могут уточнять описания других; это может быть смоделировано в виде связи уточнения. Подобные связи между кооперациями обычно отражают связи уточнения между вариантами использования, которые они представляют.

    Оба вида связей иллюстрирует рис. 1.


Рис.1. Организация коопераций

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

    На следующем шаге рассмотрим типичные приемы моделирования ролей в UML.




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