Рисунок 1. Графическое представление обоснования.
НЕМОНОТОННЫЕ МЕТОДЫ
При изменении спецификации системы новая система может быть спроектирована с нуля. Очевидно, что в случае большой и сложной системы это нецелесообразно. Однако если можно определить все части системы, на которые повлияет изменение, то задача перепроектирования ограничивается этими частями и становится соответственно более простой. Одним из методов, позволяющих сделать это, является "Система поддержания истины" Дойла (Doyle, 1979).
Нижеследующее краткое и неформальное описание призвано показать основную идею системы поддержания истины и соответствует Пратту (1994). Система поддержания истинности состоит из набора убеждений и набора обоснований. Убеждения связаны между собой обоснованиями для представления зависимостей между ними. Обоснование формально записывается как:
< rl Erm ISl ESn -> b >
Это можно сформулировать так: если убеждения rl - rm принимаются как истинные и нет причин принимать S1 - Sn, то следует принять b. Графически это можно представить так, как показано на рис. I. Список rl - rm называется входящим списком, а Sl - Sn - исходящим списком. При таком представлении зависимости между набором обоснованных убеждений можно представить в виде графа, как показано в работе Пратта (1994, рис. 6.2.) После создания такой системы добавление нового обоснования может повлиять на валидность других обоснований, т.е. от ранее принятых убеждений придется отказаться. Пратт (1994) представляет и иллюстрирует работу алгоритмов, позволяющих в свете новой информации определить, какие новые убеждения влекут за собой и от каких старых убеждений следует отказаться.
Таким образом, если спецификацию системы представить в таком виде, то можно проследить последствия изменений и определить те элементы, которые необходимо будет модифицировать. Однако остается определить, какие именно изменения необходимо внести.
УПРАВЛЕНИЕ СЕТЬЮ КАК РЕДИЗАЙН
Для иллюстрации этих идей рассмотрим сеть, представленную графом на рис. 2а. Узлы графа представляют собой станции сети, а линии - коммуникационные каналы. Сообщение отправляется путем маркировки его адресом назначения и пересылки по каналу связи на промежуточную станцию, где оно хранится до тех пор, пока не будет передано таким же образом, пока не достигнет пункта назначения. При получении сообщения станция проверяет адрес назначения, принимая адресованные ей сообщения или используя таблицу маршрутизации.
Рисунок 2. (a) Сеть, (b) Кратчайшие пути из узла I, (c) Таблица маршрутизации для узла I.
определить станцию, на которую должно быть направлено сообщение. На рис. 2b показано, как таблица маршрутизации рис. 2c может быть получена для сети рис. 2a.
Таблицы маршрутизации могут использоваться для решения некоторых задач управления сетью. Например, производительность сети может быть повышена за счет маршрутизации сообщений по наименее загруженным маршрутам, которые могут не совпадать с кратчайшими. Неисправности можно избежать, маршрутизируя сообщения вокруг области, где она возникла. Добавления в сеть могут быть учтены путем расширения таблиц маршрутизации для их включения.
Теперь рассмотрим задачу адаптации сети рис. 2а к добавлению дополнительной станции, подключенной, как показано на рис. 3а. Таблицы маршрутизации должны быть расширены путем добавления дополнительной строки для нового узла 6, но, возможно, потребуется внести и другие изменения, поскольку введение дополнительных связей в сеть вполне может привести к появлению еще более коротких путей между некоторыми парами станций. Таблицы маршрутизации для новой сети, конечно, могут быть переработаны с нуля, но лучше, если в них будут внесены только необходимые изменения. Вывод дерева для новой сети, как на рис. 3б, и сравнение его с деревом рис. 2б для предыдущей сети показывает, что путь к узлу 4 короче, и существующая таблица маршрутизации может быть изменена, чтобы получить новую таблицу рис. 3в.
Проблема перепроектирования таблиц маршрутизации может быть представлена в виде системы поддержания истины. При обосновании веры в правильность таблицы маршрутизации убеждения входящих в список состоят в том, что в таблице записаны кратчайшие маршруты к существующим узлам, а убеждения выходящих из списка - в том, что в ней записаны кратчайшие маршруты к узлам, которые еще предстоит добавить. Однако такая система будет выявлять только необходимые изменения. Описанный выше метод, содержащий в себе идею системы поддержания истинности, хотя и в несколько ограниченном виде.