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

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

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

    Механизмы – это автономные кооперации; их контекстом является не какой-то один вариант использования или одна операция, а система в целом. Любой элемент, видимый в некоторой части системы, – кандидат на участие в механизме.

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

    Чтобы смоделировать механизм, необходимо:

  1. Идентифицировать основные механизмы, образующие архитектуру системы. Их выбор диктуется общим архитектурным стилем, который вы решили положить в основу своей реализации, наряду со стилем, наиболее подходящим к предметной области.
  2. Представить каждый механизм в виде кооперации.
  3. Раскрыть структурную и поведенческую составляющие части каждой кооперации, по возможности стараясь находить совместно используемые элементы.
  4. Утвердить механизмы на ранней стадии жизненного цикла разработки (они имеют стратегическое значение), но впоследствии в каждой новой версии развивать их по мере прояснения деталей реализации.

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




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