Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Каноническая форма ИЛМ предназначена для формализованного перехода к логической структуре БД. ИЛМ ПО представлена в канонической форме при выполнении следующих условий.
1. Все ИО описываются отношениями, находящимися, как минимум, в 3НФ.
2. Между ИО отсутствуют отношения типа “Многие-ко-многим”.
3. ИО расположены по уровням иерархии в соответствии с отношениями типа “Один-ко-многим”.
Иерархическое расположение ИО означает, что из двух ИО, например А и В, связанных отношением типа 1:М, на верхнем уровне иерархии будет ИО, находящийся на стороне “один” (А), а на нижнем – со стороны “много” (В). Оно обеспечивает проверку правильности структур данных: позволяет обнаружить циклы или контуры в структуре данных, повышает наглядность структуры ИЛМ ПО.
Рис.4.7 б. Преобразование много-многозначного отношения
двух ИО в одно-многозначные
Существуют два различных способа упорядочения ИО по уровням иерархии: неформализованный и формализованный. В первом случае, когда количество ИО в ИЛМ мало и длина цепочек, составляющих последовательность ИО, связанных отношениями типа “один-ко-многим”, невелика, можно расположить ИО по уровням иерархии, не прибегая к формальному методу.
Формализованный подход основан на использовании матрицы смежности – квадратной матрицы, количество строк (и столбцов) которой равно количеству ИО. Значения элементов матрицы Xij = 1 (i – номер строки, j – номер столбца) определяются по формулам:
Xij = 1, если ИОi: ИОj = 1: М;
Xij = 0, если ИОi: ИОj ¹ 1: М.
Подсчитываются суммы элементов по столбцам. Равенство суммы нулю означает, что ИО столбца выносится на текущий
иерархический уровень. Для получения следующего уровня иерархии удаляются строки и столбцы матрицы, соответствующие выделенным ИО. Этот процесс продолжается до тех пор, пока в итоговой строке получатся только нулевые суммы.
Пример
Отношения: ИО1: ИО4 = 1: M; ИО2: ИО4 = 1: M; ИО3: ИО6 = 1: M; ИО4: ИО5 = 1: М; ИО3: ИО6 = 1: М.
ИО1 | ИО2 | ИО3 | ИО4 | ИО5 | ИО6 | |
ИО1 | ||||||
ИО2 | ||||||
ИО3 | ||||||
ИО4 | ||||||
ИО5 | ||||||
ИО6 | ||||||
Сумма по столбцу |
Рис. 4.8. Исходная матрица смежности
В примере (рис. 4.8) суммы по столбцам ИО1, ИО2 и ИО3 равны нулю, они выносятся на текущий (первый) уровень иерархии.
Для получения следующего уровня иерархии удаляются строки и столбцы, соответствующие выделенным ИО (в примере это ИО1, ИО2 и ИО3), и повторно вычисляются итоговые суммы по столбцам (рис.4.9).
ИО4 | ИО5 | ИО6 | |
ИО4 | |||
ИО5 | |||
ИО6 | |||
Сумма по столбцу |
Рис. 4.9. Промежуточная матрица смежности
В данной матрице равны нулю суммы по столбцам ИО4 и ИО6, и поэтому они выносятся на второй уровень иерархии. После вычеркивания строк и столбцов, соответствующих ИО ИО4 и ИО6, получилась матрица смежности, состоящая из одной ячейки с нулевым значением, соответствующая ИО ИО5, который и выносится на последний, третий уровень иерархии.
Подробно информационный анализ изложен в учебных изданиях кафедры информатики СПбГУЭФ. Имеются электронные версии этих пособий, хранящиеся на сервере ЦИТ СПбГУЭФ в папке Common\МЕТОДИЧЕСКИЕ МАТЕРИАЛЫ. В этих учебных пособиях имеются ссылки на другую литературу, в т.ч. на монографии по информационному анализу.
В результате получилась каноническая форма ИЛМ (рис.10).
| |||||
1-й уровень
2-й уровень
3-й уровень
Рис.4.10. Каноническая форма ИЛМ
4.3.2. Пример разработки ИЛМ задачи “Учет движения готовой
продукции на складах”
В ПО, к которой относится задача оценки текущего запаса готовой продукции на складах, рассматриваются процессы сдачи готовой продукции на склад и отгрузка готовой продукции заказчикам в соответствии с договорами. При решении данной задачи выполняются следующие функции: учет сдачи готовой продукции цехами на склады; учет отгрузки готовой продукции со складов; анализ текущего запаса готовой продукции на складах.
Рассматриваемая задача требует, во-первых, автоматизированного учета поступающей продукции на склад, который должен осуществляться на основе данных из документов “Цеховая накладная” (ЦН). Во-вторых, для решения этой задачи необходимо осуществлять автоматизированный учет отгрузки продукции предприятия заказчикам, который должен осуществляться на основе документов “Товарно-транспортная накладная” (ТТН). По мере поступления ЦН и ТТН на обработку эти данные должны вводиться, накапливаться и храниться в базе данных (БД) в течение регламентированного периода.
На основе хранимых данных о сдаче продукции и ее отгрузке заказчикам должен производиться по запросу пользователя автоматизированный расчет суммарного расхода и прихода готовой продукции на склад за истекший период. Затем выполняется расчет текущих остатков продукции на складе и их сравнение с нормативным запасом. Результаты решения задачи должны быть представлены в виде отчета “Оценка текущего запаса готовой продукции на складах”, схема которого представлена в таблице 4.6.
Таблица 4.6
Оценка текущего запаса готовой продукции на складах
Дата публикования: 2014-11-04; Прочитано: 860 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!