Алгоритмические зависимости

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

Следует обратить внимание на то, что производными могут быть не только количественные, но и качественные характеристики. Например, для объекта «СТУДЕНТ» имеется характеристика «ОТЛИЧНИК». Значение этой характеристики определяется по следующему правилу: отличником считается студент, защитивший все курсовые работы/проекты на «от­лично», сдавший все экзамены на «отлично», а также выполнивший в заданный срок все ос­тальные, предусмотренные учебным планом контрольные мероприятия.Рис.14.Граф взаимосвязи показателей

 

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

Интегральные характеристики класса объектов

Как отмечалось выше, в ER-модели отображаются не отдельные экземпляры объектов, а классы объектов. Когда в ER-модели изображено обозначение объекта, то ясно, что речь идет о классе объектов, обладающих описанными свойствами. Поэтому в эти модели в большинстве случаев можно в явном виде не вводить еще и обозначение для класса объектов. Явное изображение класса объектов необходимо только в том случае, если в предметной области для данного класса объектов фиксируются не только характеристики, относящиеся к от­дельным объектам этого класса, но и какие-то интегральные характеристики, относящиеся ко всему классу в целом. Например, если для класса объектов «СОТРУДНИК ПРЕДПРИЯТИЯ» фиксируется не только возраст каждого из сотрудников, но и средний возраст всех сотрудников, то в ER-модели необходимо отразить не только объект «СОТРУДНИК», но и класс объектов «СОТРУДНИКИ». Для отображения класса объектов лучше использовать какое-то специальное обозначение; в нашем случае это прямоугольник, очерченный двойной линией (рис. 2.13).

Рис. 15. Отображение интегральных характеристик класса объектов

Для характеристики каждого класса объектов полезно указать число объектов в классе, а также динамику его изменения. Чаще всего указывается число объектов в классе на начало периода, а также число «прибывающих» и «убывающих» объектов за фиксиро­ванный период. Для того чтобы не перегружать графическое изображение ER-модели, будем эту информацию отображать в отдельных таблицах. Например, если предметной областью является ВУЗ, имеющий стабильный ежегодный набор студентов, то количественная характеристика класса объектов «СТУДЕНТ» может иметь вид, представленный в таблице 2.2. Если число объектов в классе или динамика изменения не являются постоянными, то для соответствующих показателей желательно фиксировать максимальное, минимальное и среднее число объектов в классе.

Таблица 2.2. Описание классов объектов (фрагмент)

 

Код класса объектов Наименование клас­са Определение Код родительского класса Число объек­тов в классе Динамика изменения
+ -
Кадры Все лица, которые либо работают, либо обучаются в институте      
Учащиеся      
Студенты  
Слушатели подго­товительных курсов  
Аспиранты  
Сотрудники      
Преподаватели  
8 Вспомогательный персонал  

Количественные характеристики классов объектов используются не только для оп­ределения объема памяти, занимаемого БД, а также дггя обоснованного принятия решений по организации данных. Знание динамики изменения объектов в классе дает информа­цию, необходимую для принятия решений по организации данных и технологии их обра­ботки. Так, в приведенном выше примере число объектов в классе «СТУДЕНТ» является постоянным (5000), но ежегодно 1/5 часть студентов оканчивает институт и столько же но­вых студентов поступают. Это означает, что ежегодно добавляется 20% от общего объема данных о студентах, и такой же объем данных должен быть перенесен в архивные файлы. Без наличия информации о динамике изменении класса объектов необходимость приня­тия соответствующих решений была бы просто не видна.