Нормализация данных представляет собой процедуру, обеспечива

ПРИЛОЖЕНИЕ A НОРМАЛИЗАЦИЯ ДАННЫХ
Цель
----
Нормализация данных представляет собой процедуру, обеспечива-
ющую соответствие информационной модели некоторым стандартам. Для
данных и моделей взаимосвязей между сущностями это означает мини-
мизацию дублирования, обеспечение гибкости, необходимой для под-
держки различных функциональных требований, и создание условий
для адекватного отображения модели на разнообразные проекты БД.
Моделирование сущностей
-----------------------
В МВМС уже заложено стремление к созданию сущностей, нормали-
зованных естественным образом. Процесс нормализации, идущий
параллельно с проектированием, включает в себя:
* Выявление существенных объектов, информация о которых под-
лежит выяснению или запоминанию. Эти сущности должны взаим-
но исключать друг друга и изображаться на схеме в виде бло-
ка с именем сущности, записываемым в единственном числе и
заглавными буквами.
* Добавление связей, представляющих поименованные отношения
между сущностями. Эти связи изображаются в виде линии между
двумя блоками; каждый конец линии имеет степень мощности
(разветвление или "воронья лапка" означает "много", одинар-
ная линия означает "один") и степень обязательности (пунк-
тирный участок означает необязательность, сплошная линия -
обязательность).
* Для каждой сущности составляется перечень сведений (атрибу-
тов), которые нужно знать о ней. Наименования этих атрибу-
тов записываются в блоке сущности строчными буквами.
* Наконец, мы должны установить, каким образом каждое вхожде-
ние сущности можно уникально идентифицировать. Для этого
используется некоторая комбинация атрибутов и/или связей.
Атрибут, являющийся составной частью уникального идентифи-
катора, имеет метку #. Если связь входит в уникальный иден-
тификатор, она перечеркивается.
Точное следование этой процедуре автоматически приводит к
созданию нормализованной модели, однако результат еще зависит и
от глубины понимания аналитиком того, что представляют собой в
действительности атрибут, связь и сущность.
Нормализация
------------
Для проверки того, что модель взаимосвязей между сущностями,
все сущности которой определены уникально, является полностью
нормализованной и таким образом укладывается в правила Третьей
формы нормализации, выполним следующие тесты.
Предварительное действие
Убедитесь в том, что все сущности имеют уникальные идентифи-
каторы в виде комбинации атрибутов и/или связей.
Первая форма нормализации
Удалите повторяющиеся атрибуты или группы атрибутов.
Если атрибут имеет в каждый момент времени более одного зна-
чения или имеются еще атрибуты с тем же наименованием, мы задаем
новую сущность, описываемую этим атрибутом. Уникальный идентифи-
катор для новой сущности включает в себя один из атрибутов, пере-
шедших к ней, и связь ("многие к одному") с первоначальной сущ-
ностью.
Пусть нам нужно убрать, например, группы атрибутов для членов
экипажа с номерами 1,2,3. Это приведет к созданию новой сущности
ЧЛЕН ЭКИПАЖА, имеющей атрибуты "имя" и "роль" и связь типа "мно-
гие к одному" с исходной сущностью РЕЙС. (См. путь 1NF на схеме.)
Первая форма нормализации, таким образом, представляет собой
механизм обнаружения пропущенных сущностей и связей.
Вторая форма нормализации
Удалите атрибуты, зависящие только от части уникального иден-
тификатора.
Если сущность имеет уникальный идентификатор, состоящий из
нескольких атрибутов и/или связей, и если значение какого-нибудь
атрибута (не входящего в него) зависит только от какой-то части
идентификатора (но не от всего идентификатора целиком), тогда
этот атрибут и эта часть (от которой он зависит) должны составить
основу новой сущности. Новая сущность идентифицируется перешедшим
к ней фрагментом уникального идентификатора исходной сущности и
имеет связь с ней типа "один ко многим".
Так, например, значение атрибута "номер рейса" не зависит от
даты и времени вылета. Мы получим сущность АВИАМАРШРУТ с фиксиро-
ванным номером рейса, которому соответствуют один или несколько
РЕЙСОВ, совершенных за период времени. (См. путь 2NF на схеме.)
Вторая форма нормализации так же, как и первая, позволяет на-
ходить пропущенные сущности и связи.
Рисунок A-1
Первая и вторая формы нормализации
-----------------------------------------------------------------¬
¦ -------------------------¬ ¦
¦ ¦ РЕЙС ¦ ¦
¦ ¦ # * дата ¦ ¦
¦ ¦ # * время ¦ ¦
¦ ¦ # * номер рейса ¦ ¦
¦ ¦ * название авиалинии ¦ ¦
¦ ¦ * название аэропорта ¦ ¦
¦ ¦ o тип самолета ¦ ¦
¦ ¦ o количество мест ¦ ¦
¦ ¦ o имя члена экипажа 1¦ ¦
¦ ¦ o роль члена 1 ¦ ¦
¦ ¦ o имя члена экипажа 2¦ ¦
¦ ¦ o роль члена 2 ¦ ¦
¦ ¦ o имя члена экипажа 3¦ ¦
¦ ¦ o роль члена 3 ¦ ¦
¦ L------------------------- ¦
¦ ¦ ¦
¦ удаление ¦ ¦
¦ повторяющихся ¦ 1NF ¦
¦ атрибутов ¦ ¦
¦ ¦ ¦
¦ v ¦
¦ -------------¬ -------------------------¬ ¦
¦ ¦ ЧЛЕН ¦ ¦ РЕЙС ¦ ¦
¦ ¦ ЭКИПАЖА ¦на ¦ # * дата ¦ ¦
¦ ¦ * имя ¦Ё>-------- - - - + # * время ¦ ¦
¦ ¦ * роль ¦ оснаща-¦ # * номер рейса ¦ ¦
¦ ¦ ¦ ется ¦ * название авиалинии ¦ ¦
¦ ¦ ¦ ¦ * название аэропорта ¦ ¦
¦ L------------- ¦ o тип самолета ¦ ¦
¦ ¦ o количество мест ¦ ¦
¦ ¦ o имя члена экипажа 1¦ ¦
¦ ¦ o роль члена 1 ¦ ¦
¦ ¦ o имя члена экипажа 2¦ ¦
¦ ¦ o роль члена 2 ¦ ¦
¦ ¦ o имя члена экипажа 3¦ ¦
¦ ¦ o роль члена 3 ¦ ¦
¦ L------------------------- ¦
¦ ¦ ¦
¦ удаление атрибутов, ¦ 2NF ¦
¦ зависящих только от ¦ ¦
¦ какой-то части уни- ¦ ¦
¦ кального идентифика- v ¦
¦ тора ¦
L-----------------------------------------------------------------
Третья форма нормализации
Удалите атрибуты, значения которых зависят от атрибутов, не
входящих в уникальный идентификатор.
Если значение принадлежащего сущности атрибута зависит от
другого атрибута, не входящего в уникальный идентификатор, эти
атрибуты должны составить основу для новой сущности, которая бу-
дет связана с исходной сущностью отношением типа "один ко мно-
гим". Уникальным идентификатором для новой сущности будет атри-
бут, определяющий значение другого атрибута.
Так, например, название авиалинии, тип самолета и количество
мест в самолете не зависят от номера рейса, выполняемого по АВИА-
МАРШРУТУ. Присвоение авиалинии названия - прерогатива скорее ее
президента, а не тех, кто занимается планированием маршрутов и
рейсов. (См. путь 3NF на схеме.)
Третья форма нормализации завершает поиск пропущенных сущнос-
тей и связей.
Интуитивная нормализация
------------------------
Если вы посмотрите на получившуюся модель внимательно, вы об-
наружите то, что хороший аналитик бы уже обнаружил, а именно, что
вами выделены сущности для действительно важных понятий типа СА-
МОЛЕТА, АВИАЛИНИИ, ЛИЧНОСТИ и т.п. Аналитик бы уже понял, что
название авиалинии может быть только атрибутом авиалинии. Если
название авиалинии появляется еще где-то в другом месте, то это
только потому, что таким образом, видимо, оказалось удобно реали-
зовать связь какого-то объекта с авиалинией; например, название
авиалинии может появиться в расписании маршрутов.
Если "роль" члена экипажа на самом деле является "типом роли"
с небольшим набором заранее определенных значений (например, ко-
мандир), с помощью третьей формы нормализации она будет выделена
в новую сущность с именем ТИП ЧЛЕНА ЭКИПАЖА.
Также обратите внимание на то, что в окончательной модели по-
явилась новая сущность ЛИЧНОСТЬ, описывающая роль личности в эки-
паже, назначаемом на РЕЙС. Это нам в дальнейшем пригодится (с
точки зрения гибкости), когда между ЛИЧНОСТЬЮ и РЕЙСОМ мы будем
добавлять роль ПАССАЖИР, позволяющую членам экипажа быть пассажи-
рами на других рейсах. Модель все еще неточна, поскольку мы не
в состоянии уникально определить ЛИЧНОСТЬ, и в ней наблюдается
явный недостаток атрибутов, сущностей и связей; тем не менее, мы
значительно продвинулись в понимании проблемы.
Рисунок A-2
Третья форма нормализации
-----------------------------------------------------------------¬
¦ -------------¬ --------------¬ ¦
¦ ¦ЧЛЕН ЭКИПАЖА¦на ¦ РЕЙС ¦ ¦
¦ ¦ * имя ¦Ё>----- - -+ # * дата ¦ ¦
¦ ¦ * роль ¦ осна-¦ # * время ¦ ¦
¦ L------------- щает-L-------------- ¦
¦ ся \¦/ по ¦
¦ ¦ ¦
¦ планирует-¦ ¦
¦ ся как ¦
¦ ------------+------------¬ ¦
¦ ¦ АВИАМАРШРУТ ¦ ¦
¦ ¦ # * номер рейса ¦ ¦
¦ ¦ * название авиалинии ¦ ¦
¦ ¦ * название аэропорта ¦ ¦
¦ ¦ o тип самолета ¦ ¦
¦ ¦ o количество мест ¦ ¦
¦ L------------------------- ¦
¦ ¦ ¦
¦ удаление атри- ¦ ¦
¦ бутов, значения ¦ ¦
¦ которых зависят ¦ 3NF ¦
¦ от атрибутов, ¦ ¦
¦ не входящих в ¦ ¦
¦ уникальный иден-¦ ¦
¦ тификатор v ¦
¦ ¦
¦ --------------¬ ¦
¦ --------------¬ ¦ РЕЙС ¦ ¦
¦ ¦ НАЗНАЧЕНИЕ ¦на ¦ # * дата ¦ ¦
¦ ¦ В ЭКИПАЖ ¦Ё>+---- - + # * время ¦ ¦
¦ ¦ * роль ¦ обес-L-------------- ¦
¦ L-------------- печивает- \¦/ по ¦
¦ \¦/для ся персо- + ¦
¦ + налом че- ¦ ----------¬ ¦
¦ использу- ¦ рез ¦ ¦ТИП САМО-¦ ¦
¦ ется через плани- ¦ЛЕТА ¦ ¦
¦ -------+------¬ ¦руется рабо-¦# * код ¦ ¦
¦ ¦ ЛИЧНОСТЬ ¦ как тает ¦ * коли-¦ ¦
¦ ¦ * имя ¦ -------+------¬ на ¦ чест-¦ ¦
¦ L-------------- ¦ АВИАМАРШРУТ ¦Ё>--- - + во мест¦ ¦
¦ ¦ # * номер ¦обслу- L---------- ¦
¦ ¦ рейса ¦жива- ¦
¦ ¦ ¦ется ----------¬ ¦
¦ ¦ ¦Ё>--- - +АВИАЛИНИЯ¦ ¦
¦ L-------------- кури-¦# * наз- ¦ ¦
¦ \¦/ из рует ¦ вание¦ ¦
¦ ¦ L---------- ¦
¦ исходный ¦ ¦
¦ пункт ¦
¦ -------+------¬ ¦
¦ ¦ АЭРОПОРТ ¦ ¦
¦ ¦ * название ¦ ¦
¦ L-------------- ¦
L-----------------------------------------------------------------
Терминология
------------
Также интересно отметить, что в окончательном виде номер рей-
са следует переименовать в "номер маршрута". Проблема терминоло-
гии является обычной для большинства сфер деятельности - в воз-
душных перевозках слово "рейс" используется для обозначения и
"маршрута", зачастую в одном и том же предложении. Такова жизнь !
Математические определения
--------------------------
Для тех, кто интересуется, дадим точные определения из книги
К.Дж.Дейта "Введение в системы баз данных" (том 1, 4-я редакция,
1986, Addison-Wesley Publishing Co.,Inc., Reading, Massachusets).
Терминология
Используемая здесь терминология имеет отношение скорее к чис-
то реляционной теории, чем к МВМС, но общие принципы сохраняют
свое действие.
Общее определение
"Отношение R находится в третьей форме нормализации (3NF)
тогда и только тогда, когда каждый элемент отношения R включает в
себя значение первичного ключа, идентифицирующее некоторую сущ-
ность, одно или в сочетании со значениями взаимно независимых ат-
рибутов, некоторым образом описывающих эту сущность".
1NF
"Отношение R находится в первой форме нормализации (1NF) тог-
да и только тогда, когда все имеющиеся домены содержат только
элементарные значения".
2NF
"Отношение R находится во второй форме нормализации (2NF)
тогда и только тогда, когда оно находится в 1NF и значение каждо-
го неключевого атрибута полностью определяется значением первич-
ного ключа".
3NF
"Отношение R находится в третьей форме нормализации (3NF)
тогда и только тогда, когда оно находится в 2NF и значение каждо-
го неключевого атрибута нетранзитивно определяется значением пер-
вичного ключа".
Бойс/Кодд (Boyce/Codd)
"Отношение R находится в форме нормализации по Бойс/Кодду
(BCNF) тогда и только тогда, когда каждая детерминанта является
возможным ключом".
4NF
"Отношение R находится в четвертой форме нормализации (4NF)
тогда и только тогда, когда где бы ни существовала многозначная
зависимость (MVD) в R, например A ->-> B, ей бы тут же соответс-
твовала и функциональная зависимость атрибутов R от A. Другими
словами, все зависимости (функциональные или многозначные) в R
имеют форму K -> X (т.е. функциональная зависимость от возможного
ключа K к некоторому атрибуту X). Эквивалентно: R находится в
4NF, если оно находится в BCNF и все многозначные зависимости в R
фактически присутствуют в функциональных зависимостях (FD)".
5NF
"Отношение R находится в пятой форме нормализации (5NF) тогда
и только тогда, когда каждая объединенная зависимость в R являет-
ся следствием наличия возможных ключей в R".
Все эти определения подразумевают, что каждый элемент можно
уникально идентифицировать значениями набора атрибутов, образую-
щих первичный ключ.
Моделирование взаимосвязей после 3NF
------------------------------------
Аналогичные принципы действуют в моделях прикладного уровня;
чтобы проверить их выполнение, ответьте на вопросы:
"Действительно ли вы идентифицировали каждую отдельную сущ-
ность ?"
"Является ли каждая связь действительно существенной или же в
ней возникает потребность только в ходе выполнения функции ?"
"Не может ли атрибут быть на самом деле связью или чем-нибудь
еще ?"
"Не представляет ли атрибут самостоятельную ценность - с чьей
-нибудь точки зрения ? (в этом случае из него лучше сделать
сущность)"
"Не отражают ли сущности с похожим набором атрибутов и/или
связей фактически различные восприятия или состояния одного
и того же объекта ?"
Денормализация данных
---------------------
Денормализация данных - это процедура, обратная нормализации
и направленная чисто на повышение пропускной способности произ-
водственных систем, особенно при их компьютеризации. Денормализа-
ция имеет отношение только к проекту.
Коммерческую модель не следует компрометировать.
Классические примеры денормализации подразумевают контролиру-
емое дублирование информации. Так, например, для увеличения про-
пускной способности системы заказа авиабилетов имело бы смысл
включать сведения об общем количестве мест в информацию по каждо-
му рейсу, хотя это и увеличит объем используемого пространства и
заставит при каждом изменении числа мест дублировать новое значе-
ние заново во все записи о рейсах.
В качестве второго примера денормализации назовем хранение
повторяющейся группы данных по каждому рейсу, описывающей место -
его номер и наличие (незанятость). Такую форму денормализации
следует использовать только в том случае, если данными пользуется
только одна или две функции. В данном случае такими функциями мо-
гут быть выделение мест и запрашивание текущего состояния.
Денормализация в формах неавтоматизированных процедур - более
частое явление; это видно из того, что большинство бумажных форм
содержат значительные объемы родственных данных. Всем нам извест-
ны проблемы, возникающие при изменении тех или иных данных, когда
приходится пересчитывать целый набор форм.
^ ПРИЛОЖЕНИЕ B ДОПУСТИМЫЕ ВИДЫ СВЯЗЕЙ
Информация об общепринятых способах описания степени мощности
и обязательности связей может оказаться вам полезной.
Многие к одному
---------------
Рисунок B-1
Обязательность на одном конце с необязательностью на другом
--------------¬ --------------¬
¦ A ¦Ё>------ - - - + B ¦
L-------------- L--------------
Это наиболее часто встречающаяся форма связи. Она предполага-
ет, что каждое и любое вхождение сущности A может существовать
только в контексте одного (и только одного) вхождения сущности B.
С другой стороны, вхождения B могут существовать как в связи с
вхождениями A, так и без оной.
Рисунок B-2
Необязательность на обоих концах
--------------¬ --------------¬
¦ A ¦Ё>- - - - - - -+ B ¦
L-------------- L--------------
Применяется редко. Как A, так и B могут существовать без свя-
зи между ними.
Рисунок B-3
Обязательность на обоих концах
--------------¬ --------------¬
¦ A ¦Ё>-------------+ B ¦
L-------------- L--------------
Достаточно сильная конструкция, предполагающая, что вхождение
сущности B не может быть создано без одновременного создания по
меньшей мере одного связанного с ним вхождения сущности A. В на-
шем примере БИЛЕТ становится таковым только тогда, когда он со-
держит по меньшей мере один КУПОН; до тех пор это только клочок
бумаги.
Рисунок B-4
Необязательность на одном конце с обязательностью на другом
--------------¬ --------------¬
¦ A ¦Ё>- - - -------+ B ¦
L-------------- L--------------
Редко используемая конструкция. Вероятнее всего имеет место,
когда B представляет собой некоторое придуманное понятие, всегда
включающее в себя точный набор вхождений A. При этом вхождения A
могут уже существовать сами по себе. (При ближайшем рассмотрении
эти связи зачастую оказываются связями типа "многие ко многим" -
используйте для их проверки обратный синтаксис.)
Один к одному
-------------
Рисунок B-5
Обязательность на одном конце с необязательностью на другом
--------------¬ --------------¬
¦ A +-------- - - - + B ¦
L-------------- L--------------
Используется редко.
Рисунок B-6
Необязательность на обоих концах
--------------¬ --------------¬
¦ A + - - - - - - - + B ¦
L-------------- L--------------
Используется редко.
Рисунок B-7
Обязательность на обоих концах
--------------¬ --------------¬
¦ A +---------------+ B ¦
L-------------- L--------------
Крайне редко (почти всегда ошибочно).
При ближайшем рассмотрении связи типа "один к одному" почти
всегда оказывается, что A и B представляют собой в действитель-
ности разные подмножества одного и того же предмета или разные
точки зрения на него, просто имеющие отличные имена и по-разному
описанные связи и атрибуты. Некоторые из аналитиков используют
связи типа "один к одному" для включения в модель пересекающихся
или ортогональных подтипов. (См. Главу 7.)
Многие ко многим
----------------
Рисунок B-8
Необязательность на обоих концах
--------------¬ --------------¬
¦ A ¦Ё>- - - - - -<Ё¦ B ¦
L-------------- L--------------
Такая конструкция часто имеет место в начале этапа анализа и
означает связь, либо понятую не до конца и требующую дополнитель-
ного разрешения, либо отражающую простое коллективное отношение -
двунаправленный список.
Рисунок B-9
Обязательность на одном конце с необязательностью на другом
--------------¬ --------------¬
¦ A ¦Ё>----- - - -<Ё¦ B ¦
L-------------- L--------------
Применяется редко. Такие связи всегда подлежат дальнейшей де-
тализации.
Рисунок B-10
Обязательность на обоих концах
--------------¬ --------------¬
¦ A ¦Ё>-----------<Ё¦ B ¦
L-------------- L--------------
В принципе невозможна. Такая связь означала бы, что ни одно
из вхождений A не может существовать без B и наоборот. На деле
каждая подобная конструкция всегда оказывается ошибочной.
Рекурсивные связи
-----------------
Многие к одному
Рисунок B-11
Обязательность на одном конце с необязательностью на другом
--------------¬ В принципе невозможна.
¦ A ¦Ё>--¬ Бесконечный цикл, не имеющий вер-
L------T------- ¦ шины.
¦
L - - - - - -
Рисунок B-12
Обязательность на обоих концах
--------------¬ В принципе невозможна.
¦ A ¦Ё>--¬
L------T------- ¦
¦ ¦
L------------
Рисунок B-13
Необязательность на одном конце с обязательностью на другом
--------------¬ В принципе невозможна.
¦ A ¦Ё>- ¬
L------T-------
¦ ¦
L------- - --
Рисунок B-14
Необязательность на обоих концах
--------------¬ Довольно часто (см. ниже).
¦ A ¦Ё>- ¬
L------T------- ¦
L - - - - - -
Иногда называется "необязательное свиное ухо". Отражает нали-
чие простой иерархии с любым числом уровней (организационная ие-
рархия, классификация продуктов, структура рынка и т.п.).
Один к одному
Рисунок B-15
Обязательность на одном конце с необязательностью на другом
--------------¬ В принципе невозможна.
¦ A +----¬
L------T------- ¦
¦
L - - - - - -
Рисунок B-16
Обязательность на обоих концах
--------------¬ В принципе невозможна.
¦ A +----¬
L------T------- ¦
¦ ¦
L------------
Рисунок B-17
Необязательность на обоих концах
--------------¬
¦ A +- - ¬
L------T------- ¦
L - - - - - -
Редко, но имеет место. Отражает связи альтернативного типа.
Многие ко многим
Рисунок B-18
Необязательность на обоих концах
--------------¬
¦ A ¦Ё>- ¬
L--------------
\¦/ ¦
L - - - - - -
Имеет место на ранних этапах. Часто отражает структуру "пе-
речня материалов" (взаимная вложенность компонент).
Пример:
Каждая КОМПОНЕНТА может состоять из одной и более (других)
КОМПОНЕНТ и каждая КОМПОНЕНТА может использоваться в одной и
более (других) КОМПОНЕНТАХ.
Рисунок B-19
Обязательность на одном конце с необязательностью на другом
--------------¬ В принципе невозможна.
¦ A ¦Ё>--¬
L-------------- ¦
\¦/ ¦
¦
L - - - - ---
Рисунок B-20
Обязательность на обоих концах
--------------¬ В принципе невозможна.
¦ A ¦Ё>--¬
L-------------- ¦
\¦/ ¦
¦ ¦
L------------
^ ПРИЛОЖЕНИЕ C ДЕТАЛИЗИРОВАННЫЕ ОПИСАНИЯ СУЩНОСТИ,
СВЯЗИ, ДОМЕНА И АТРИБУТА
В данном приложении рассматриваются формы детализированного
описания сущности, связи, домена и атрибута. Эти формы могут за-
полняться вручную, на бумаге, но для записи информации рекоменду-
ется использовать систему CASE.
Формы именуются:
C6 Определение сущности (с перечислением атрибутов,
связей, уникальных идентифика-
торов и основных объемов)
C7 Объемные характеристики
сущностей (общие объемы)
C8 Объемные характеристики
сущностей (распределенные требования)
C3 Определение домена
C9 Полное определение атрибута.
Все эти формы взяты из книги "CASE*Method Tasks and
Deliverables" (Приложение C) и могут быть размножены для исполь-
зования при работе с CASE-методом.
Код 52
ORACLE (R) --------------------- ОПРЕДЕЛЕНИЕ СУЩНОСТИ ----------¬
¦ Система управления реляционной ¦
¦ базой данных ¦
¦ ¦
¦ Имя ¦
¦ (множественная форма) КУПОН(ы)......... Супертип............ ¦
¦ Синонимы ................. Начальный объем ...... ¦
¦ ................. Средний объем....... Вероятный ¦
¦ ................. максимум ..... ¦
¦ ................. Темп роста ......... % в год ¦
+----------------------------------------------------------------+
¦ Описание: имеет значение составной части билета, оформляемой на¦
¦ конкретный рейс через процедуру выписки посадочного талона. ¦
¦ ¦
+----------------------------------------------------------------+
¦ Атрибуты ¦
¦ Наименование Не- Домен Формат Макс. Заме- См. Уни-¦
¦ обяза- длина чания пол- каль¦
¦ тель- ное ный ¦
¦ ность опи- ид. ¦
¦ сание ¦
+-----------------T---T--------T-------T-------T------T-----T-T--+
¦ класс ¦ N ¦ класс ¦ ¦ ¦ ¦ ¦ ¦
¦ статус ¦ ¦ ¦ ¦ ¦ ¦ v ¦ ¦ ¦
¦ индикатор под- ¦ ¦ ¦ ¦ ¦Булево¦ ¦ ¦
¦ тверждения ¦ N ¦ ¦ char ¦ 1 ¦знач-е¦ ¦ ¦ ¦
¦ комментарии ¦ Y ¦ ¦ char ¦ 40 ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-----------------+---+--------+-------+-------+------+-----+-+--+
¦ Связи: Каждое вхождение данной сущности ¦
¦ должно/¦связующая¦одну и только одну/¦имя ¦кас- ¦дуга¦ ¦
¦ может ¦фраза ¦одну и более ¦сущности¦кад- ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ное ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦уда- ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ление¦ ¦ ¦
+--------+---------+-------------------+--------+-----+----+--T--+
¦ должно ¦входить в¦один и только один ¦билет ¦ x ¦ ¦v v ¦
¦ должно ¦оформ- ¦один и только один ¦рейс ¦ ¦ 1 ¦v ¦ ¦
¦ ¦ляться на¦ ¦ ¦ ¦ ¦ ¦
¦ должно ¦быть от- ¦один и только один ¦авиа- ¦ ¦ 1 ¦ ¦v ¦
¦ ¦крытым на¦ ¦маршрут ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------+---------+-------------------+--------+-----+----+--+--+
¦ Замечания: ¦
¦ ¦
¦ Полное описание атрибута должно быть введено для всех допусти- ¦
¦ мых значений атрибута, имеющего "галочку" в столбце "См. полное¦
¦ описание". ¦
¦ ¦
¦ ¦
¦ Подробности на следующем листе ¦
L-----------------------------------------------------------------
Форма Группа Проект Аналитик Дата Лист 1
C6 Пользователь Действие Проверил Дата Всего 3
Код 52
ORACLE (R) -------------------- ОБЪЕМНЫЕ ХАРАКТЕРИСТИКИ СУЩНОСТИ¬
¦ Система управления реляционной (общие объемы) ¦
¦ базой данных ¦
¦ ¦
¦ Имя сущности КУПОН.......................... ¦
+----------------------------------------------------------------+
¦ ¦
¦ (См. распределенные требования) ¦
¦ ¦
¦ Детализированные объемные характеристики (некоторых сущностей) ¦
¦ ¦
¦ --------------------T-------------------+
¦ ¦ Объем или % роста ¦ Примечания ¦
¦ +----------T--------+-------------------+
¦ Текущие объемы ¦ --------¦ ¦
¦ ----------+----------+--------+-------------------+
¦ За: Период 1 ¦ ¦ ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ Период 2 ¦ ¦ ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ Период 3 ¦ ¦ ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ Период 4 ¦ ¦ ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ Период 5 ¦ ¦ ¦ ¦
¦ L---------+----------+--------+-------------------+
¦ ¦
¦ Архивирование ¦
¦ -----------T--------T-------------------+
¦ ¦ Число ¦ Период ¦ Причина ¦
¦ ----------+----------+--------+-------------------+
¦ ¦Сохранять¦ ¦ ¦ ¦
¦ ¦после ¦ ¦ ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ ¦Удалять ¦ ¦ ¦ ¦
¦ ¦после ¦ ¦ ¦ ¦
¦ L---------+----------+--------+-------------------+
¦ NB. Обеспечьте включение в модель функций сохранения и удале-¦
¦ ния сущностей с соответствующими условиями их выполнения.¦
¦ ¦
¦ Обеспечение целостности ¦
+-------------T--------------------------------------------------+
¦ Условие ¦ Правило ¦
+-------------+--------------------------------------------------+
¦ При создании¦ Купоны могут оформляться только на рейсы, имеющие¦
¦ купона или ¦ в качестве даты отправления вчерашнее число, се- ¦
¦ его оформле-¦ годняшнее число или любое последующее. Вчерашнее ¦
¦ нии на рейс ¦ число допускается для отложенных рейсов. ¦
¦ ¦ ¦
¦ ¦ ¦
¦ ¦ ¦
L-------------+---------------------------------------------------
Форма Группа Проект Аналитик Дата Лист 2
C7 Пользователь Действие Проверил Дата Всего 3
Код 52
ORACLE (R) -------------------- ОБЪЕМНЫЕ ХАРАКТЕРИСТИКИ СУЩНОСТИ¬
¦ Система управления реляционной (Распределенные требования) ¦
¦ базой данных ¦
¦ ¦
¦ Имя сущности КУПОН.......................... ¦
+----------------------------------------------------------------+
¦ ФУНКЦИОНАЛЬНЫЙ БЛОК Из имеющихся Новый ¦
¦ ¦
¦ Обозначение BU-1........ Начальный объем..... ........ ¦
¦ Наименование Atlantia Средний объем....... Вероятный ¦
¦ максимум....... ¦
¦ Темп роста ......... % в год ¦
¦ ¦
¦ Детализированные объемные характеристики (некоторых сущностей) ¦
¦ ¦
¦ --------------------T-------------------+
¦ ¦ Объем или % роста ¦ Примечания ¦
¦ +----------T--------+-------------------+
¦ Текущие объемы ¦ 250.000 --------¦ ¦
¦ ----------+----------+--------+-------------------+
¦ За: Период 1 ¦ 1989 ¦ 10 % ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ Период 2 ¦ 1990 ¦ 30 % ¦ Планируемое появ- ¦
¦ +---------+----------+--------+-------------------+
¦ Период 3 ¦ 1991 ¦ 20 % ¦ ление новых авиа- ¦
¦ +---------+----------+--------+-------------------+
¦ Период 4 ¦ ¦ ¦ маршрутов. ¦
¦ +---------+----------+--------+-------------------+
¦ Период 5 ¦ ¦ ¦ ¦
¦ L---------+----------+--------+-------------------+
¦ ¦
¦ Архивирование ¦
¦ -----------T--------T-------------------+
¦ ¦ Число ¦ Период ¦ Причина ¦
¦ ----------+----------+--------+-------------------+
¦ ¦Сохранять¦ ¦ ¦ ¦
¦ ¦после ¦ 3 ¦месяцев ¦ ¦
¦ +---------+----------+--------+-------------------+
¦ ¦Удалять ¦ ¦ ¦ ¦
¦ ¦после ¦ 9 ¦месяцев ¦ ¦
¦ L---------+----------+--------+-------------------+
¦ NB. Обеспечьте включение в модель функций сохранения и удале-¦
¦ ния сущностей с соответствующими условиями их выполнения.¦
¦ ¦
¦ Обеспечение целостности ¦
+-------------T--------------------------------------------------+
¦ Условие ¦ Правило ¦
+-------------+--------------------------------------------------+
¦ ¦ ¦
¦ ¦ ¦
¦ ¦ ¦
¦ ¦ ¦
¦ ¦ ¦
L-------------+---------------------------------------------------
Форма Группа Проект Аналитик Дата Лист 3
C8 Пользователь Действие Проверил Дата Всего 3
Определение сущности
--------------------
Полное определение сущности подразумевает указание парамет-
ров, перечисленных в стандартных формах C6 и C7 и требуемых для
работы в среде CASE. Если подразделения организации разбросаны
географически, требования распределенной обработки должны быть
зафиксированы в форме C8 (дополняющей форму C6).
В форме "Определение сущности" для каждого атрибута вы можете
указать наименование, обязательность, домен, формат, замечания и
принадлежность к уникальному идентификатору. Для большинства ат-
рибутов этого достаточно. Для более детального описания атрибутов
используется форма C9 (где приводятся те же сведения, но с допол-
нительными подробностями).
Параметры сущности
-------------T--------------T------------T-----------------------¬
¦ ¦Этап стратегии¦Этап анализа¦ Правила ¦
+------------+--------------+------------+-----------------------+
¦ Имя ¦ О ¦ О ¦Уникально в контексте. ¦
¦ ¦ ¦ ¦Имеет вид существитель-¦
¦ ¦ ¦ ¦ного ед.числа. Согласо-¦
¦ ¦ ¦ ¦вывается с пользовате- ¦
¦ ¦ ¦ ¦лями. Не допускает ино-¦
¦ ¦ ¦ ¦го толкования. ¦
+------------+--------------+------------+-----------------------+
¦ Множествен-¦ О ¦ О ¦Уникально в контексте. ¦
¦ ная форма ¦ ¦ ¦Согласованный формат ¦
¦ ¦ ¦ ¦для предложений,исполь-¦
¦ ¦ ¦ ¦зующих множеств. форму.¦
+------------+--------------+------------+-----------------------+
¦ Синоним(ы) ¦ Н ¦ Н ¦Альтернативные названия¦
¦ ¦ ¦ ¦для одной и той же вещи¦
+------------+--------------+------------+-----------------------+
¦ Пример(ы) ¦ Н ¦ Н ¦Даются в замечаниях, ¦
¦ ¦ ¦ ¦облегчают понимание ¦
¦ ¦ ¦ ¦предмета. ¦
+------------+--------------+------------+-----------------------+
¦ Описание ¦ Н ¦ О ¦Сжатое,точное,согласо- ¦
¦ ¦ ¦ ¦ванное с пользователем ¦
¦ ¦ ¦ ¦определение сущности, ¦
¦ ¦ ¦ ¦начинающееся с фразы ¦
¦ ¦ ¦ ¦"Имеет значение..." ¦
+------------+--------------+------------+-----------------------+
¦ Замечания ¦ Н ¦ Н ¦Дополнительная информа-¦
¦ ¦ ¦ ¦ция о сущности, адресо-¦
¦ ¦ ¦ ¦ванная к другим анали- ¦
¦ ¦ ¦ ¦тикам и проектировщикам¦
+------------+--------------+------------+-----------------------+
¦ Код ¦ Н ¦ Н ¦Уникальный код, необхо-¦
¦ ¦ ¦ ¦димость в котором опре-¦
¦ ¦ ¦ ¦деляется инсталляцией. ¦
+------------+--------------+------------+-----------------------+
¦ Супертип ¦ О ¦ О ¦Допускается только одно¦
¦ ¦ ¦ ¦значение. ¦
+------------+--------------+------------+-----------------------+
¦ Обозначения: О - обязательный параметр ¦
¦ Н - необязательный параметр ¦
L-----------------------------------------------------------------
Взаимоотношения сущности с другими элементами
-------------T--------------T------------T-----------------------¬
¦ ¦Этап стратегии¦Этап анализа¦ Правила ¦
+------------+--------------+------------+-----------------------+
¦ Атрибут ¦ Н ¦ О ¦На этапе стратегии - ¦
¦ ¦ ¦ ¦один или два. К концу ¦
¦ ¦ ¦ ¦этапа анализа по мень- ¦
¦ ¦ ¦ ¦шей мере два на сущ- ¦
¦ ¦ ¦ ¦ность. ¦
+------------+--------------+------------+-----------------------+
¦ Функция ¦ Н ¦ О ¦На этапе стратегии тре-¦
¦ ¦ ¦ ¦буется двойная провер- ¦
¦ ¦ ¦ ¦ка. К концу этапа ана- ¦
¦ ¦ ¦ ¦лиза на каждую сущность¦
¦ ¦ ¦ ¦должна быть минимум од-¦
¦ ¦ ¦ ¦на функция по ее созда-¦
¦ ¦ ¦ ¦нию, коррекции, удале- ¦
¦ ¦ ¦ ¦нию и пр. Обычно отра- ¦
¦ ¦ ¦ ¦жается в форме опреде- ¦
¦ ¦ ¦ ¦ления функций. ¦
+------------+--------------+------------+-----------------------+
¦ Связь ¦ О ¦ О ¦Подробности о связях со¦
¦ ¦ ¦ ¦всеми прочими сущностя-¦
¦ ¦ ¦ ¦ми. Каждая сущность ¦
¦ ¦ ¦ ¦должна иметь связь с ¦
¦ ¦ ¦ ¦минимум еще одной сущ- ¦
¦ ¦ ¦ ¦ностью. (См. описание ¦
¦ ¦ ¦ ¦связей ниже.) ¦
+------------+--------------+------------+-----------------------+
¦ Функцио- ¦ Н ¦ Н ¦Для распределенных ор- ¦
¦ нальный ¦ ¦ ¦ганизаций могут ока- ¦
¦ блок ¦ ¦ ¦заться важными объемные¦
¦ (распреде- ¦ ¦ ¦характеристики исполь- ¦
¦ ленная об- ¦ ¦ ¦зования каждой сущности¦
¦ работка) ¦ ¦ ¦в функциональном блоке/¦
¦ ¦ ¦ ¦отделе. См. стандартную¦
¦ ¦ ¦ ¦форму C8. ¦
L------------+--------------+------------+------------------------
С помощью словаря (энциклопедического или терминологического)
эту информацию можно быстро проверить и сформировать по ней отчет
для согласования с пользователем.
Обеспечение целостности
-------------T--------------T------------T-----------------------¬
¦ Правила ¦ Н ¦ Н ¦В некоторых случаях ¦
¦ ¦ ¦ ¦имеют решающее значе- ¦
¦ ¦ ¦ ¦ние, если отражают су- ¦
¦ ¦ ¦ ¦щественные (а не слу- ¦
¦ ¦ ¦ ¦чайные) для предмета ¦
¦ ¦ ¦ ¦правила. Указываются в ¦
¦ ¦ ¦ ¦форме C7 или C8. ¦
+------------+--------------+------------+-----------------------+
¦ Обозначения: О - обязательный параметр ¦
¦ Н - необязательный параметр ¦
L-----------------------------------------------------------------
Объемные характеристики
-------------T--------------T------------T-----------------------¬
¦ ¦Этап стратегии¦Этап анализа¦ Правила ¦
+------------+--------------+------------+-----------------------+
¦ Объемы ¦ Н ¦ О ¦Может быть просто одно ¦
¦ ¦ ¦ ¦значение (например, 200¦
¦ ¦ ¦ ¦самолетов), тогда ука- ¦
¦ ¦ ¦ ¦жите начальный, сред- ¦
¦ ¦ ¦ ¦ний и максимальный объ-¦
¦ ¦ ¦ ¦емы и темп роста, ис- ¦
¦ ¦ ¦ ¦пользуя форму C6. Если ¦
¦ ¦ ¦ ¦нужно указать диапазо- ¦
¦ ¦ ¦ ¦ны, темпы роста по пе- ¦
¦ ¦ ¦ ¦риодам и распределение ¦
¦ ¦ ¦ ¦внутри организации, ис-¦
¦ ¦ ¦ ¦пользуйте форму C7. ¦
¦ ¦ ¦ ¦Объемы подтипов должны ¦
¦ ¦ ¦ ¦примерно совпадать с ¦
¦ ¦ ¦ ¦объемами супертипов. ¦
+------------+--------------+------------+-----------------------+
¦ Архивирова-¦ Н ¦ Н ¦Страхует от краха сис- ¦
¦ ние ¦ ¦ ¦темы. Указывается в ¦
¦ ¦ ¦ ¦формах C7 или C8 для ¦
¦ ¦ ¦ ¦всех объемных сущностей¦
+------------+--------------+------------+-----------------------+
¦ Обозначения: О - обязательный параметр ¦
¦ Н - необязательный параметр ¦
L-----------------------------------------------------------------
Определение связи
-----------------
Полное определение связи подразумевает указание для каждого
из ее концов следующих параметров (см. форму C6):
Параметры связи
-------------T--------------T------------T-----------------------¬
¦ ¦Этап стратегии¦Этап анализа¦ Правила ¦
+------------+--------------+------------+-----------------------+
¦ Степень ¦ О ¦ О ¦Уточнение типа связи. ¦
+------------+--------------+------------+-----------------------+
¦ Описание ¦ О ¦ О ¦Связующая фраза, следу-¦
¦ связи на ее¦ ¦ ¦ющая за фразой "должно/¦
¦ конце ¦ ¦ ¦может". ¦
+------------+--------------+------------+-----------------------+
¦ Обязатель- ¦ О ¦ О ¦Обязательная или необя-¦
¦ ность ¦ ¦ ¦зательная связь. ¦
+------------+--------------+------------+-----------------------+
¦ Замечания ¦ Н ¦ Н ¦Для особых случаев. ¦
+------------+--------------+------------+-----------------------+
¦ Минимальная¦ Н ¦ Н ¦Может указываться в за-¦
¦ степень ¦ ¦ ¦мечаниях. ¦
+------------+--------------+------------+-----------------------+
¦ Средняя ¦ Н ¦ Н ¦Может указываться в за-¦
¦ степень ¦ ¦ ¦мечаниях. ¦
+------------+--------------+------------+-----------------------+
¦ Максималь- ¦ Н ¦ Н ¦Может указываться в за-¦
¦ ная степень¦ ¦ ¦мечаниях. ¦
L------------+--------------+------------+------------------------
Признак каскадного удаления
-------------T--------------T------------T-----------------------¬
¦ Признак ¦ Н ¦ Н ¦ X = Каскадное удаление¦
¦ каскадного ¦ ¦ ¦ в случае удаления ¦
¦ удаления ¦ ¦ ¦ родителя. ¦
¦ ¦ ¦ ¦ C = Родитель не удаля-¦
¦ ¦ ¦ ¦ ется, пока сущест-¦
¦ ¦ ¦ ¦ вует хоть один по-¦
¦ ¦ ¦ ¦ томок. ¦
¦ ¦ ¦ ¦ N = Родитель и потомок¦
¦ ¦ ¦ ¦ могут удаляться ¦
¦ ¦ ¦ ¦ отдельно друг от ¦
¦ ¦ ¦ ¦ друга. ¦
+------------+--------------+------------+-----------------------+
¦ Обозначения: О - обязательный параметр ¦
¦ Н - необязательный параметр ¦
L-----------------------------------------------------------------
Взаимоотношения с другими элементами
-------------T--------------T------------T-----------------------¬
¦ ¦Этап стратегии¦Этап анализа¦ Правила ¦
+------------+--------------+------------+-----------------------+
¦ Сущность ¦ О ¦ О ¦Каждый конец связи дол-¦
¦ ¦ ¦ ¦жен иметь отношение к ¦
¦ ¦ ¦ ¦сущности. ¦
+------------+--------------+------------+-----------------------+
¦ Функция ¦ Н ¦ Н ¦Иногда функция имеет ¦
¦ ¦ ¦ ¦явную ссылку на связь ¦
¦ ¦ ¦ ¦(через установление или¦
¦ ¦ ¦ ¦разрыв последней). ¦
+------------+--------------+------------+-----------------------+
¦ Дуга ¦ Н ¦ Н ¦Каждый конец связи мо- ¦
¦ ¦ ¦ ¦жет покрываться одной и¦
¦ ¦ ¦ ¦только одной дугой, имя¦
¦ ¦ ¦ ¦или номер которой ука- ¦
¦ ¦ ¦ ¦зывается в столбце "Ду-¦
¦ ¦ ¦ ¦га". ¦
L------------+--------------+------------+------------------------
Уникальный идентификатор
В форме "Определение сущности" два столбца отведены для запи-
си альтернативных уникальных идентификаторов. Каждый идентифика-
тор представляет собой комбинацию атрибутов и/или концов связей,
помечаемых "галочкой" в соответствующем столбце. К концу этапа
анализа уникальный идентификатор должен быть у каждой сущности.
-------------T--------------T------------T-----------------------¬
¦ ¦Этап стратегии¦Этап анализа¦ Правила ¦
+------------+--------------+------------+-----------------------+
¦ Уникальный ¦ Н ¦ Н ¦Каждый конец связи мо- ¦
¦ идентифика-¦ ¦ ¦жет быть компонентой ¦
¦ тор ¦ ¦ ¦одного или нескольких ¦
¦ ¦ ¦ ¦уникальных идентифика- ¦
¦ ¦ ¦ ¦торов. ¦
+------------+--------------+------------+-----------------------+
¦ Обозначения: О - обязательный параметр ¦
¦ Н - необязательный параметр ¦
L-----------------------------------------------------------------
Наиболее употребительные описания связей
До тех пор, пока вы не наберетесь собственного опыта, вы мо-
жете сэкономить время, используя предлагаемые ниже примеры описа-
ния связей:
Пары описаний связи
о (about) предмет (subject of)
в отношении к (applicable to) контекст для (context for *)
в (at) место для (location of)
основано на (based on) основа для (basis for)
получено от (bought in from) поставщик (supplier of)
основание для классификации имеет (of)
(classification for)
покрывается (covered by) для (for)
определяется (defined by) частично определяет
(part definition of)
описание (description of) характеризуется (for)
для (for) отражается на (shown on)
для работы под (for work under) основание для (authority for)
инициализируется (initiated by) инициатор (initiator of)
кандидат на (nominee for) объект притязаний (subject of)
упоминается на (notified on) место упоминания
(notification point for)
управляется (operated by) приводит в действие
(operator for)
принадлежит (owned by) владелец (owner of *)
составная часть (part of) состоит из (composed of)

tema-topograficheskie-znaki-uprazhnenie-najdi-na-karte.html
tema-toponimika-sela-arzgir.html
tema-torgovaya-deyatelnost-ekonomika-torgovih-predpriyatij.html
tema-torgovie-tovarishestva-v-prave-zarubezhnih-stran-ponyatie-i-istochniki-torgovogo-prava-zarubezhnih-stran.html
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат
Реферат