На этом шаге рассмотрим типичные приемы моделирования адаптируемых систем в UML.
Все диаграммы артефактов, показанные до сих пор, использовались для моделирования статических представлений. Их артефакты проводили всю свою жизнь на одном узле. Хотя эта ситуация встречается чаще всего, иногда, особенно при работе со сложными распределенными системами, все же приходится моделировать и динамические представления. Например, можно представить систему, которая реплицирует свои базы данных на несколько узлов, переключаясь на резервный сервер в случае отказа главного. Аналогично при моделировании глобальной распределенной системы, работающей в режиме 24х7 (то есть 7 дней в неделю, 24 часа в сутки), вы, скорее всего, столкнетесь с мобильными агентами – артефактами, которые мигрируют с одного узла на другой для обслуживания некоторой транзакции. Чтобы смоделировать такие динамические представления, вам понадобится использовать комбинацию диаграмм артефактов, объектов и взаимодействия.
Для моделирования адаптируемой системы необходимо:
На рис. 1 представлено моделирование репликации базы данных, уже рассматривавшейся на рис. 1 шага 222.
Рис.1. Моделирование адаптируемых систем
Здесь мы видим два экземпляра артефакта school.db. Оба анонимны и имеют разные помеченные значения местоположения (location). Также присутствует примечание, которое явно указывает, какой экземпляр куда реплицируется.
Если необходимо показать подробности каждой базы данных, их можно изобразить в канонической форме – в виде артефакта со стереотипом database. Хотя на этом рисунке это не показано, можно использовать и диаграмму взаимодействия для моделирования динамики переключения с главной базы данных на резервную.
На следующем шаге рассмотрим понятия диаграммы размещения в UML.