Разработка базы данных ER-методом для заданной области

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    121,86 Кб
  • Опубликовано:
    2015-05-09
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка базы данных ER-методом для заданной области

Министерство образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

Тюменский государственный нефтегазовый университет

Институт геологии и нефтегазодобычи

Кафедра автоматизации и вычислительной техники




Пояснительная записка к курсовой работе

по дисциплине «Базы данных»

на тему

Разработка базы данных ER-методом для заданной области



Выполнили студенты группы ИВТ(б)-10

Васильева Д.В., Карабекова Э.Б.

Руководитель: Пономарёва Н.П.





Тюмень, 2013 г.

Содержание

Введение

. Описание предметной области

. Описание постановки задачи

.1 Характеристики комплекса задач

.2 Выходная информация

.3 Входная информация

3. Проектирование БД

3.1 Проектирование БД методом «Сущность-связь»

.2 Проектирование БД с помощью CASE-средств

.2.1 IDEF 1X

.2.2 Построение логической модели

3.2.3 Построение физической модели

.3 Тестирование информационной модели с помощью CASE-средств

. Создание БД в СУБД

Заключение

Список источников

Приложение А

Приложение Б


Введение

 

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

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

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

1. Общее описание предметной области


В ходе разработки данного проекта необходимо проанализировать как работает система «Стол заказов». Проект должен включать в себя базу данных и приложение, которые друг с другом связаны.

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

В процессе приема заказа ответственное лицо (менеджер) регистрирует клиента. Данные сохраняются и используются для поиска необходимых клиенту товаров.

Клиент, оплативший заказ, включается в историю покупателей данного Стола заказов.

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

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

Итогам проектирования должно быть приложение. Приложение должно иметь дружественный интуитивно понятный интерфейс. Вышеперечисленные действия легко подвергаются автоматизации и создание базы данных (регистрация заказов, данные о клиенте, ведение статистики заказов и прочие). Данная система в соответствии с проведенным ранее анализом легко подвергается автоматизации. В качестве языка программирования выбрала SQL.

2. Описание постановки задачи

.1 Характеристики комплекса задач

Автоматизированная система предназначена для оптимизации процесса приема и оформления заказов. Данная система дает возможность получить клиентам (покупателям) полную информацию о товаре, стоимости, наличии.

Целями создания системы является:

а) автоматизация подбора и оформления заказов в магазине;

б) быстрый доступ к нужной информации;

в) интуитивно понятный интерфейс программы;

Для достижения целей в системе автоматизируются следующие функции:

а) ввод и корректировка сведений о товарах, имеющихся в ассортименте;

б) хранение и быстрое извлечение информации о товарах;

в) формирование отчетов о заказах и клиентах.

2.2    Выходная информация

а) данные заказа (Приложение А);

б) информация о клиенте (Приложение Б)

Таблица 1

Данные заказа

Идентификатор


Форма представления

Таблица

Вид представления

Документ MS Word, в соответствии с типовой формой определенной нормативными актами предприятия (см. Приложение А).

Состав атрибутов

Дата_заказа; ФИО_ответственного_лица; Заказанный_товар; Категория; Наименование; Стоимость; Дополнительная_информация;

Периодичность выдачи

По требованию

Получатель

Пользователь

Назначение

Таблица, содержащая все необходимые данные заказа

Информация о клиенте

Идентификатор


Форма представления

Таблица

Вид представления

Документ MS Word, в соответствии с типовой формой определенной нормативными актами предприятия (см. Приложение Б).

Состав атрибутов

ФИО_клиента; Адрес; Телефон; Дата; Приобретенный_товар; Количество; Единица_измерения

Периодичность выдачи

По требованию

Получатель

Пользователь

Назначение

Таблица, содержащая всю необходимую информацию о клиенте


2.3 Входная информация

В качестве исходных данных система использует следующие документы:

а) ответственное лицо;

б) товар;

в) клиент.

Таблица 1

Ответственное лицо

Идентификатор


Форма представления

Таблица

Вид представления

Текстовые данные

Состав атрибутов

ИНН, ФИО;

Назначение

Таблица, содержащая все необходимые сведения об ответственном лице


Таблица 2

Товар

Идентификатор


Форма представления

Таблица

Вид представления

Текстовые данные

Состав атрибутов

Категория; Наименование; Количество; Стоимость; Дата;

Назначение

Таблица, содержащая все необходимые сведения о товаре


Таблица 3

Клиент

Идентификатор


Форма представления

Таблица

Вид представления

Текстовые данные

Состав атрибутов

ФИО_клиента; Адрес; Телефон; Дата; Количество; Единица_измерения

Назначение

Таблица, содержащая всю необходимую информацию о клиенте



3. Проектирование базы данных

.1 Проектирование базы данных  методом «Сущность-Связь»

Модель «сущность-связь» (англ. “Entity-Relationship model”), или ER-модель, предложенная П. Ченом в 1976 г., является наиболее известным представителем класса семантических (концептуальных, инфологических) моделей предметной области. ER-модель обычно представляется в графической форме, с использованием оригинальной нотации П. Чена, называемой ER-диаграмма, либо с использованием других графических нотаций (Crow's Foot, Information Engineering и др.).

Основные преимущества ER-моделей:

а) наглядность;

б) модели позволяют проектировать базы данных с большим количеством объектов и атрибутов;

в) ER-модели реализованы во многих системах автоматизированного проектирования баз данных (например, ERWin).

Основные элементы ER-моделей:

а) объекты (сущности);

б) атрибуты объектов;

в) связи между объектами.

Сущность - объект предметной области, имеющий атрибуты.

Связь между сущностями характеризуется:

а) типом связи (1:1, 1:N, N:М);

б) классом принадлежности. Класс может быть обязательным и необязательным. Если каждый экземпляр сущности участвует в связи, то класс принадлежности - обязательный, иначе - необязательный.

Судя по предметной области автоматизируемой системы, сущностей в системе будет 4:

а) Ответственное лицо;

б) Заказ;

г) Товар.

Первичные ключи для более удобного использования лучше назначить суррогатные, к примеру: №_Заказа.

Заказ имеет статус (состояние), уже выполнен или находится на оформлении;

Заказ имеет определенный товар (товары), и эти товары могут также принадлежать другим заказам;

Купить (заказать) товар может любой клиент, если нет возрастного ограничения;

За каждым заказом закреплено ответственное лицо.

На основе этих данных можно построить диаграмму ER-типа:

Рисунок 1. Диаграмма ER-типа

Исследование набора отношений на избыточность:

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

Order_Product:

а) Order (Order_No, Client_No, INN, Date_O, Order_status)

б) Product (Product_No, Category, Name_product, Cost, Kolichestvo_products, Date_P)

в) Order_Product (Order_No, Product_No, Kolichestvo_orders, Sold_orders, OrderProduct_No)

Если степень связи 1:N и класс принадлежности N-связной сущности является обязательным, то генерируем два отношения. Ключами отношения будут ключи соответствующей сущности. Кроме того ключ односвязной сущности добавляется в качестве атрибута в отношение выделенное для N-связной сущности.

Responsible_person- Order:

а) Responsible_person (INN, Surname, Name, Patronymic)

б) Order (Order_No, Client_No, INN, Date_O, Order_status)

Client-Order:

а) Client (Client_No, Surname_C, Name_C, Patronymic_C, Adress, Telephone, Date_C, Unit)

б) Order (Order_No, Client_No, INN, Date_O, Order_status)

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

а) Order (Order_No, Client_No, INN, Date_O, Order_status)

б) Product (Product_No, Category, Name_product, Cost, Kolichestvo_products, Date_P)

в) Order_Product (Kolichestvo_orders, Sold_orders, OrderProduct_No, Order_No, Product_No)

г) Responsible_person (INN, Surname, Name, Patronymic)

д) Client (Client_No, Surname_C, Name_C, Patronymic_C, Adress, Telephone, Date_C, Unit)

3.2 Проектирование базы данных с помощью CASE-средств

 (англ. Computer-Aided Software Engineering) - набор инструментов и методов программной инженерии для проектирования программного обеспечения, который помогает обеспечить высокое качество программ, отсутствие ошибок и простоту в обслуживании программных продуктов.

Также под CASE понимают совокупность методов и средств проектирования информационных систем с использованием CASE-инструментов. В нашем случае CASE-средством является программа ERwin.

.2.1 Коротко о IDEF1X (Information Modeling) - одна из методологий семейства IDEF. Применяется для построения информационной модели, которая представляет структуру информации, необходимой для поддержки функций производственной системы или среды.

Метод IDEF1, разработанный Т. Рэмей (T. Ramey), также основан на подходе П. Чена и позволяет построить модель данных, эквивалентную реляционной модели в третьей нормальной форме. В настоящее время на основе совершенствования методологии IDEF1 создана ее новая версия - методология IDEF1X. IDEF1X разработана с учетом таких требований, как простота изучения и возможность автоматизации. IDEF1X-диаграммы используются рядом распространённых CASE-средств (в частности, ERwin, Design/IDEF).

автоматизированный информационный база данный

3.2.2 Построение логической модели

Рисунок 2. Логическая модель БД

.2.3 Построение физической модели

Рисунок 3. Физическая модель

3.3 Тестирование информационной модели с помощью CASE-средств

.3.1 Исходный протокол


Необходимо проанализировать найденные ошибки и, по возможности, исправить их. Найдена ошибка: Undefined Alternate Keys, т. е. таблица имеет суррогатный первичный ключ и не имеет альтернативного ключа. Эта ошибка является допустимой.

Создание БД в СУБД

database if exists TABLE_OF_ORDERS;database TABLE_OF_ORDERS;TABLE_OF_ORDERS;TABLE Client

(_No INTEGER NOT NULL,_C VARCHAR(50) NOT NULL,_C VARCHAR(50) NOT NULL,_C VARCHAR(50) NOT NULL,VARCHAR(100) NOT NULL,VARCHAR(50) NOT NULL,_C DATE NOT NULL,VARCHAR(20) NOT NULL

);TABLE ClientPRIMARY KEY (Client_No);TABLE Orders

(_No INTEGER NOT NULL,_O DATE NOT NULL,INTEGER NOT NULL,_No INTEGER NOT NULL,_status VARCHAR(20) NULL

);TABLE OrdersPRIMARY KEY (Order_No);TABLE Order_Product

(_No INTEGER NOT NULL,_No INTEGER NOT NULL,_order DOUBLE NOT NULL,_products INTEGER NULL,_No DOUBLE NOT NULL

);TABLE Order_ProductPRIMARY KEY (OrderProduct _No);TABLE Product

(_No INTEGER NOT NULL,VARCHAR(50) NOT NULL,_product VARCHAR(100) NOT NULL,DOUBLE NOT NULL,_products FLOAT NOT NULL,_P DATE NOT NULL

);TABLE ProductPRIMARY KEY (Product_No);TABLE Responsible_person

(INTEGER NOT NULL,VARCHAR(50) NOT NULL,VARCHAR(50) NOT NULL,VARCHAR(50) NOT NULL

);TABLE Responsible_personPRIMARY KEY (INN);TABLE OrdersFOREIGN KEY R_1 (INN) REFERENCES Responsible_person

(INN);TABLE OrdersFOREIGN KEY R_3 (Client_No) REFERENCES Client (Client_No);TABLE Order_ProductFOREIGN KEY R_2 (Order_No) REFERENCES Orders (Order_No);TABLE Order_ProductFOREIGN KEY R_5 (Product_No) REFERENCES Product

(Product_No);view IF exists BEST_EMPLOYEES_OF_THE_MONTH;

//представление «Лучшие работники месяца»VIEW BEST_EMPLOYEES_OF_THE_MONTHResponsible_person.INN, Responsible_person.Surname, _person.Name, Responsible_person.Patronymic, _Product.Kolichestvo_orderResponsible_personJOIN ((Orders INNER JOIN Order_ProductOrders.Order_No = Order_Product.Order_No)JOIN Product ON Order_Product.Product_No = .Product_No)Responsible_person.INN = Orders.INNBY Order_Product.Kolichestvo_order DESC;view IF exists TOP_10_PRODUCTS; // представление «ТОП-10

товаров»VIEW TOP_10_PRODUCTSProduct.Name_product, Order_Product.Kolichestvo_orderOrdersJOIN (Product INNER JOIN Order_Product ON .Product_No = Order_Product.Product_No)Orders.Order_No = Order_Product.Order_NoBY Order_Product.Kolichestvo_order DESC10;procedure if exists ordered_products; // получение таблицы

заказанных товаров для отчета «Данные заказа»

delimiter //procedure ordered_products(IN op datetime) // параметр op - дата

заказаProduct.Category, Product.Name_product, .Kolichestvo_products, Order_Product.Sold_products, Product.Cost(Product INNER JOIN Order_ProductProduct.Product_No = Order_Product.Product_No)JOIN OrdersOrder_Product.Order_No = Orders.Order_NoOrders.Date_O=op;//procedure if exists purchased _products; получение таблицы

приобретенных товаров для отчета «Информация о клиенте»

delimiter //procedure purchased_products(IN sname varchar(50), namec (50), pname varchar(50)) // параметры sname, namec, pname -

ФИО клиентаProduct.Category, Product.Name_product, .Kolichestvo_products, Order_Product.Sold_products, Product.CostClient INNER JOIN ((Product INNER JOIN Order_ProductProduct.Product_No = Order_Product.Product_No)JOIN Orders ON Order_Product.Order_No = Orders.Order_No)Client.Client_No = Orders.Client_NoClient.Surname_C=sname And Client.Name_C=namec And .Patronymic_C=pname;//select, insert, update, delete, execute on TABLE_OF_ORDERS.* to @'%' identified by 'manager'; // создание учетной записи

пользователя «Manager» и назначение требуемых прав


Заключение

Цель курсовой работы полностью достигнута. Мною спроектирована база, в соответствии с предметной областью. Разработана автоматизированная информационная система “Стол заказов” для учета регистрации заказов и информации о клиентах, ответственных лицах и товарах. При написании курсовой работы, я как проектировщик, не только достиг первоначальной цели - создания автоматизированной информационной системы, но и улучшил навыки работы в области баз данных и программировании.

1. Ахтырченко К.В., Леонтьев В.В. Распределенные объектные технологии в информационных системах// СУБД №5-6. - Москва, 1997, С. 52-64.

2.      Базы данных: Учебник для высших учебных заведений /Под ред. проф. А.Д. Хомоненко. - Спб.: КОРОНА принт, 2000. -416 с. Стр. 147-161.

.        Гусева Т.И., Башин Ю.Б. Проектирование баз данных в примерах и задачах. - М.: Радио и связь, 1992. - 160 с., ил.

.        Дейт К. Введение в системы баз данных. - К.: Диалектика, 1998.

.        Джеймс Р. Грофф, Пол Н. Вайнберг SQL Полное руководство. - Киев: BHV, Ирина, 2001.

.        Джексон Г. Проектирование реляционных баз данных для использования с микро - ЭВМ. - М.: Мир, 1991.

.        Карпова Т.С. Базы данных: модели, разработка, реализация. - СПб.: Питер, 2001. - 304с.

8. Кузнецов С. “Основы современных баз данных”. Центр Информационных Технологий

9. Ребекка Райордан Основы реляционных баз данных. - М.: Русская редакция, 2001. - 384с.

10.    Хансен Г., Хансен Д. Базы данных: разработка и уравление. - М.: БИНОМ, 1999.

Приложение А

Данные заказа

Дата заказа

ФИО ответственного лица

Заказанный товар:

Категория

Товар

Название

Количество

Единица измерения

Стоимость








Приложение Б

Информация о клиенте

ФИО клиента

Адрес

Телефон

Дата

Приобретенный товар

КатегорияТоварНазваниеКоличествоЕдиница измеренияСтоимость













Похожие работы на - Разработка базы данных ER-методом для заданной области

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!