Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uml Book (Rus).doc
Скачиваний:
15
Добавлен:
11.08.2019
Размер:
58.74 Mб
Скачать

Механизм

В хорошо структурированной объектно-ориентированной системе всегда при­сутствует целый спектр стандартных образцов (паттернов). На одном конце этого

спектра вы обнаружите идиомы, представляющие устойчивые конструкции языка реализации, а на другом - архитектурные образцы и каркасы (см. главу 28), образу­ющие систему в целом и задающие определенный стиль. В середине же спектра располагаются механизмы (см. ту же главу), описывающие распространенные образцы проектирования, посредством которых элементы системы взаимодействуют между собой. Механизмы в UML представляются с помощью коопераций. Механизмы (Mechanisms) - это автономные кооперации; их контекстом является не какой-то один прецедент или операция, но система в целом. Любой элемент, видимый в некоторой части системы, является кандидатом на участие в механизме. Такого рода механизмы представляют архитектурно значимые проектные решения, и относиться к ним надо серьезно. Обычно механизмы предлагает системный архитектор, и с каждой новой версией они эволюционируют. В конце концов вы обнаруживаете, что система стала простой (поскольку в механизмах материализованы типичные взаимодействия), легко воспринимаемой (так как к пониманию системы можно подойти со стороны ее механизмов) и гибкой (настраивая каждый механизм, вы настраиваете систему в целом). Моделирование механизмов осуществляется следующим образом:

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

2. Представьте каждый механизм в виде кооперации.

3. Раскройте структурную и поведенческую составляющие каждой кооперации. Всюду, где можно, попытайтесь отыскать совместно используемые элементы.

4. Утвердить эти механизмы следует на ранних стадиях жизненного цикла раз­работки (они имеют стратегически важное значение), но развивать их нуж­но в каждой новой версии, по мере более тесного знакомства с деталями реа­лизации.

Советы

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

  • включает структурную и поведенческую составляющие;

  • представляет собой четкую абстракцию некоторого взаимодействия в системе

  • редко является полностью независимой - обычно перекрывается со струк­турными элементами других коопераций;

  • проста и легка для понимания.

Изображая кооперацию в UML, пользуйтесь следующими правилами:

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

  • организуйте кооперации в соответствии с представляемыми ими классифи­каторами или операциями либо помещайте в пакеты, ассоциированные с сис­темой в целом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]