Смекни!
smekni.com

Разработка СУБД "Кондитерские фабрики" (стр. 1 из 3)

1 ПОСТАНОВКА ЗАДАЧИ

1.1 Формулировка задачи

Задачей данного курсового проекта является разработка базы данных «Кондитерские фабрики Украины», которая будет предоставлять информацию о фабриках, выпускаемой продукции, поставках, магазинах.

1.2 Исходные данные

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

1.3 Результат

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

1.4 Требования к ПП

Полученная база данных «Кондитерские фабрики Украины» должна:

-обеспечивать хранение и предоставление по требованию данных;

-обеспечивать возможность добавления, изменение и удаления данных;

-обеспечивать возможность обработки данных: поиска, подбора данных по запросам, систематизацию информации и фильтрацию данных по определенному условию;

-иметь удобный пользовательский интерфейс, реализующий различные уровни доступа, рассчитанные на различные категории пользователей;

-содержать необходимые запросы, формы и отчеты для обработки хранимой информации;

-обеспечивать защиту данных от несанкционированного доступа;

контролировать целостность, непротиворечивость, сохранность и достоверность информации;

-предусматривать архивацию и восстановление данных.


2 ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

2.1 Предметная область «Кондитерские фабрики»

Почти в каждом городе Украины существует либо кондитерская фабрика, либо филиал этой фабрики. Фабрика имеет название, которое уникально. Имеет также дату введения в строй, т. е. дату открытия фабрики. В зависимости от владельца, фабрики разделяются по типу: открытое акционерное общество (ОАО), закрытое акционерное общество (ЗАО), госпредприятие (ГП), частный предприниматель (ЧП).

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

Чтобы точно фиксировать поставки продуктов магазин (потребитель) имеет № накладной (уникален), количество поступившего товара, цену за единицу товара, дату поставки, ФИО директора.

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

2.2 Схема объект – отношение

Изучив свою предметную область, я выделил такие объекты:

«Фабрика» имеет свойства – названии фабрики, дате введения в строй;

«Тип предприятия» имеет свойства – название типов предприятий;

«Город» имеет свойства – название городов;

«Продукция» имеет свойства – тип продукции (карамель, ирис, шоколад и т. п.), название изделия;

«Магазин» имеет свойства –№ магазина, названии магазина, ФИО директора;

Для данной предметной области ниже изобразим на рисунке 2.1схему объект – отношение


Рисунок 2.1 – Схема объект-отношение

Объекты «Тип» - «Фабрика» и «Тип» - «Потребитель» связаны отношением 1: ∞, так как многие фабрики и потребители (магазины) могут иметь один тип. Объекты «Город» - «Фабрика» имеют отношение 1: ∞, так как несколько фабрик могут находиться в одном городе. Объекты «Фабрика» - «Продукция» имеют отношение ∞: ∞, так как многие фабрики могут выпускать разную продукцию. Объекты «Продукция» - «Потребитель» имеют тип связи ∞: ∞, так как многая продукция может поставляться в разные магазины.

2.3 Обоснование выбора модели данных

БД может быть основана на одной модели или на совокупности нескольких моделей. Любую модель данных можно рассматривать как объект, который характеризуется своими свойствами (параметрами), и над ней, как над объектом, можно производить какие-либо действия.

Любая модель должна обеспечивать такие операции над БД:

- поиск указанного элемента базы;

- переход от одних данных к другим;

- движение по записям;

Существуют три основных типа моделей данных – реляционная, иерархическая и сетевая.

Иерархическая модель БД представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному и образующих перевернутое дерево. Данная модель характеризуется такими параметрами, как уровни, узлы, связи. Принцип работы модели таков, что несколько узлов более низкого уровня соединяются при помощи связи с одним узлом более высокого уровня.

Узел – информационная модель элемента, находящегося на данном уровне иерархии.

Свойства иерархической модели данных:

- несколько узлов низшего уровня связано только с одним узлом высшего уровня;

- иерархическое дерево имеет только одну вершину (корень), не подчиненную никакой другой вершине;

- каждый узел имеет свое имя (идентификатор);

- существует только один путь от корневой записи к более частной записи данных.

Фабрика

Продукция


Потребитель

Рисунок 2.3.1 – Иерархическая модель данных

Достоинством ИМД в общем является эффективное использование памяти, малое время обращения к данным. Но для данной БД малое время обращения к информации можно наблюдать только для верхних уровней, а не для нижних из-за глубины дерева. Недостатком этой модели является высокая избыточность. Одна запись БД – это совокупность деревьев. Через эту структуру нельзя построить отношение многие ко многим. Очевидна громоздкость обрабатываемой информации, сложность в понимании для конечного пользователя. ИМД не имеет механизма поддержки целостности данных.

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

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

Основной структурой в сетевых моделях данных является «сеть». При таком представлении существует несколько входов в сеть – неоднозначность доступа к данным.

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


Рисунок 2.3.2 – Сетевая модель данных

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

К достоинствам СМД относят:

- возможность создания произвольных связей (например растения произрастают на закрепительном участке и закрепительный участок имеет растения);

- эффективную реализацию с точки зрения затрат времени и памяти.

Недостатки такие:

- сложность и жесткость схемы;

- сложность в установлении и проверке целостности данных.

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

«Реляционный» (от латинского relatio – отношение) указывает, прежде всего, на то, что такая модель хранения данных построена на взаимоотношении составляющих ее частей.

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

Реляционная модель данных имеет следующие свойства:

- каждый элемент таблицы – один элемент данных;

- каждое поле имеет уникальное имя;

- все поля в таблице являются однородными, т.е. имеют один тип;

- одинаковые записи в таблице отсутствуют;