Атрибуты
Домен
Определение. Домен (domain) - это набор прикладных правил контроля допустимости значений, ограничения, налагаемые форматами, и другие свойства, общие для группы атрибутов. Например,
· перечень значений;
· диапазон значений;
· перечень или диапазон значений с ограничительными условиями;
· любая комбинация вышеперечисленных пунктов.
Определения доменов целесообразно вводить для широко и многократно используемых атрибутов таких, например, как адресная строка, почтовый код, оценка успеваемости, оклад (может быть ограничен диапазоном возможных значений).
Представление. Домен представляется в виде отдельного описания правил и ограничений, а также указания атрибутов, которые принадлежат этому домену.
Производные атрибуты (derived attribute). Содержательно производные атрибуты - это такие атрибуты, значения которым никогда не присваиваются пользователями или какими-либо другими механизмами. Их значения всегда выводятся (вычисляются) в тот момент, когда возникает потребность.
|
|
Например, можно было бы добавить к сущности БИЛЕТ производного атрибута с наименованием "фактически уплаченная стоимость" и значениями, определяемыми выражением "полная стоимость - предоставленная скидка".
С понятием производного атрибута связано несколько сложностей, в которых необходимо четко разобраться прежде, чем использовать это понятие в проектировании баз данных.
Очевидно, что при всяком изменении значения одного из атрибутов, с помощью которых определяется наш производный атрибут, его значение также будет изменяться. В зависимости от того, как спроектирована база данных, это новое значение может вычисляться либо всякий раз, когда оно требуется, либо всякий раз, когда происходит его фактическое изменение.
Осознание этой проектной дилеммы и достижение в этом отношении четкого взаимопонимания между аналитиками и проектировщиками позволит широко использовать это мощное понятие - производные атрибуты - для моделирования предметных областей.
Информационное моделирование связано, главным образом, с такими понятиями как сущность, атрибут, связь и домен, а также тому, как эти понятия могли бы использоваться при проектирования баз данных. Существует, однако, еще несколько понятий, которые являются существенными при проектировании прикладных систем. К этим понятиям относятся:
- потоки данных (data flow);
- хранилище данных (data storage);
- прикладные задачи (business functions);
- события (events);