Разработка процессов синхронизации моделей и принципов проверки их корректности
11
стояний моделей задано отношение консистентности. Начальными
данными для процесса являются исходное и модифицированное в не-
который момент времени состояние каждой модели, причем в исход-
ном состоянии модели являются консистентными. Процесс синхро-
низации представляет собой совокупность последовательных процес-
сов трансформации модели
B
в модель
A
(
btrans
), обновления модели
А
(
merge
), а также трансформации обновленной модели
А
в модель
B
(
ftrans
) (рис. 4).
a
b
x
y
a
merge
btrans
ftrans
b
x
A
B
Исходное
состояние
Измененное
состояние
Синхронизованное
состояние
Промежуточное
состояние
Рис. 4.
Синхронизация моделей
А
и
В
путем двунаправленных
трансформаций
В данном примере, в отличие от предыдущего, состояния процес-
са синхронизации ассоциированы с состояниями моделей, а не со
стадиями процессов обработки моделей, поэтому выражения для
смены состояния имеют другой вид (листинг 2).
Листинг 2
Синхронизация моделей, основанная на двунаправленных
трансформациях моделей, реализованная на языке SWI PROLOG
% отношение консистентности моделей
r(a, x).
r(x, a).
r(a, y).
r(y, a).
r(b, x).
r(x, b).
r([X],[Y]) :- r(X,Y).