Выбрать главу

Наличие в системе того или иного класса еще не определяет ее тип, значение также имеют:

• количество сущностей одного типа (подклассов) и связи между ними;

• количество экземпляров каждой сущности;

• связи между сущностями различного типа, их наличие и характер;

• характер описания (совокупность и количество атрибутов) каждой сущности.

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

Чтобы получить типичные модели и унифицированную методику определения типа системы, мы будем составлять матрицы классов. Такая матрица может быть составлена для каждой конкретной системы, класса систем или исторических информационных систем в целом.

Названия столбцов и строк матрицы – типовые классы объектов системы. Также могут быть занесены иные классы (основные для конкретной системы, но не перечисленные среди типовых).

В матрице на пересечении двух разных классов указывается тип связи между ними:

• 0: связь отсутствует (на уровне модели, на функциональном или ином уровне) или отсутствует один из классов;

• 1–1: связь «один к одному»;

• 1 – ∞: связь «один ко многим», т. е. каждый экземпляр первого класса (строка) потенциально связан с несколькими экземплярами второго класса (столбец);

• ∞ – 1: связь «многие к одному», т. е. каждый экземпляр второго класса потенциально связан с несколькими экземплярами первого класса;

• ∞ – ∞: связь «многие ко многим».

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

• 0: класс отсутствует;

• 1: класс присутствует и нет подклассов;

• если в системе есть подклассы данного класса, то элемент заполняется по аналогии с пересечением двух разных классов.

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

Описанная методика позволяет дифференцировать обычные ресурсы, состоящие из нескольких не связанных на уровне модели, как правило, статичных страниц, от историко-ориентированных информационных систем. Матрица статичного ресурса будет представлена единицами на главной диагонали и нулями в остальных ячейках.

Анализ матрицы позволяет определить центральную сущность системы – ту, которая имеет в соответствующей строке и столбце наибольшее количество связей «один ко многим» и «многие ко многим».

Рассмотрим примеры заполнения матрицы классов для систем различных типов (незаполненные элементы могут принимать любые значения).

Пример: фактографическая система, в которой к каждому событию привязаны источники, публикации, персоналии, организации и события имеют подсобытия (табл. 2.1).

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

Фактографическую систему можно изобразить в виде обобщенной диаграммы (рис. 2.2). Здесь событийная часть представлена несколькими сущностями, связанными между собой (это могут быть вложенные события, цепочки событий и т. п.).

Модель фактографической системы может также содержать прочие типичные или специфические сущности.

Таблица 2.1. Пример матрицы классов для фактографической системы

Рис. 2.2. Модель фактографической системы

Пример: просопографическая система (табл. 2.2).

Таблица 2.2. Пример матрицы классов для просопографической системы

ER-диаграмма просопографической системы в обобщенном виде представлена на рис. 2.3. Здесь центральной сущностью является персона. Другие типичные или специфические сущности могут присутствовать в модели историко-ориентированной информационной системы и соотноситься с персоной различными связями (на рисунке все связи имеют тип «многие ко многим»).