Координация работы сетевых служб. Координация композитных служб. Продолжение
Дайджест

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

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

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

Преимущества абстрактных процессов в том, что они облегчают понимание того, как надо ограничить композицию и как определить композиционную схему, реализующую протокол. Абстрактные процессы превосходят другие реализации примерно так же как продвижение картинками имеет преимущество над ссылочным продвижением. Расширение абстрактного протокола необходимыми деталями приведет к композиционной схеме. На практике сетевые службы должны поддерживать несколько протоколов одновременно и вести сразу несколько разговоров.

Простого решения для этого не существует, поскольку различные протоколы не зависят друг от друга и только реализация может установить зависимости разговоров. Некоторые современные языки (ВPEL, еbXМL) могут описывать и внешнее поведение (абстрактные процессы) и внутреннюю реализацию (выполняемые процессы).