RM-ODP и требования к открытым распределённым системам
RM-ODP (Reference Model for Open Distributed Processing) — это международный стандарт.
Он был разработан в 1990-е годы организациями ISO и ITU для моделирования открытых распределённых информационных систем.
Что означает «распределённая система»
Распределённая система — это система, в которой
- обработка выполняется множеством взаимодействующих компонентов,
- нет единого центра управления,
- взаимодействие происходит через сообщения или интерфейсы.
Главный признак — децентрализованность обработки и управления.
Что означает «открытая система»
Такие системы:
Открыты (open) — обеспечивают как переносимость
(возможность выполнения компонентов на разных обрабатывающих узлах без изменения),
так и взаимодействие
(имеющие смысл взаимодействия между компонентами, возможно находящимися в разных системах).
Интегрированы (integrated) — объединяют различные системы и ресурсы в единое целое без дорогостоящих ad-hoc решений.
Это может включать системы с различными архитектурами и ресурсы с различной производительностью.
Интеграция помогает справляться с гетерогенностью.
Гибки (flexible) — способны как эволюционировать, так и учитывать существование и продолжение работы унаследованных систем (legacy systems).
Открытая распределённая система должна быть способна реагировать на изменения во время работы — например, динамически реконфигурироваться при изменении обстоятельств.
Гибкость помогает справляться с мобильностью.
Что такое решения ad-hoc
В науке и инженерии ad-hoc решение — это
специально придуманное решение для конкретной проблемы,
которое не является частью общей системы или теории.
То есть это:
- частное
- временное
- неуниверсальное решение.
В разных контекстах ad hoc можно перевести на русский язык так:
специальный
для данного случая
частный
временный
ситуативный
Иногда даже говорят:
«костыль» — но это уже разговорное слово.
Почему RM-ODP использует это слово
Стандарт хочет сказать:
если нет общей архитектуры, системы приходится соединять
ad hoc, то есть:
- каждый раз придумывать отдельные решения
- писать уникальные интерфейсы
- делать ручные интеграции.
Это дорого и нестабильно.
Поэтому нужна общая архитектура.
Что требует RM-ODP от системы
Система должна быть:
- open
- integrated
- flexible
Причём open раскрывается через:
- portability
- interworking
А integrated и flexible добавляют ещё два важных измерения:
- объединение разнородного;
- способность к изменению и реконфигурации.
Если перенести это на сознание, получится, что хорошая когнитивная модель мира должна быть:
- открытой;
- интегрированной;
- гибкой;
- при этом не держаться на ad hoc-костылях.