Автор работы: Пользователь скрыл имя, 03 Февраля 2014 в 16:10, курсовая работа
На начальном этапе проектирования информационной системы, исходя из вышеназванных целей, были поставлены следующие задачи:
1) Разработать четкую систему учета поставок, покупок и продаж товаров;
2) Разработать систему анализа результатов;
3) Разработать удобный пользовательский интерфейс.
В разработке ИС мы отталкивались именно от этих целей и задач.
ВВЕДЕНИЕ 3
1 Описание предметной области 5
2 Проектирование информационной системы 7
3 Организация базы данных 11
3.1 Создание информационной модели 11
3.2. Определение сущностей 12
3.3 Логическая модель 13
3.4 Нормализация отношений 15
3.5 Физическая модель 17
4 Разработка программного продукта 21
4.1 Описание интерфейса 21
4.2 Обработка данных 25
4.3 Описание выходной информации 33
Заключение 36
Библиографический список используемой литературы: 37
Процесс проектирования базы данных с использованием метода нормальных форм заключается в последовательном переводе отношений из первой нормальной формы в нормальные формы более высокого порядка по определённым правилам. Каждая следующая нормальная форма ограничивает определённый тип функциональных зависимостей, устраняет соответствующие аномалии при выполнении операций над отношениями базы данных и сохраняет свойства предшествующих нормальных форм.
Рисунок 3 – Схема данных
Из предложенной выше схемы данных видно, что:
Нормализация отношений (таблиц) — одна из основополагающих частей теории реляционных баз данных. Нормализация имеет своей целью избавиться от избыточности в отношениях и модифицировать их структуру таким образом, чтобы процесс работы с ними не был обременён различными посторонними сложностями. При игнорировании такого подхода эффективность проектирования стремительно снижается, что вкупе с прочими подобными вольностями может привести к критическим последствиям.
Нормальная
форма — свойство отношения в
реляционной модели данных, характеризующее
его с точки зрения избыточности,
которая потенциально может привести
к логически ошибочным
Выделяют несколько типов нормальных форм:
Отношение находится в первой нормальной форме (1НФ) тогда и только тогда, когда в любом допустимом значении отношения каждый его кортеж содержит только одно значение для каждого из атрибутов.
Название таблицы |
Ключевое поле |
Инструменты
|
Код Тип Название Цена Описание Рисунок |
Отношение находится во второй нормальной форме (2НФ), если оно находится в первой нормальной форме, и при этом любой его атрибут, не входящий в состав потенциального ключа, функционально полно зависит от каждого потенциального ключа.
В данном случае выполняются ограничения 1НФ, и каждый не ключевой атрибут функционально полно зависит от составного первичного ключа.
Отношение находится в 3NF тогда и только тогда, когда выполняются следующие условия:
На основании этого, мы выявили, что база удовлетворяет требованиям 3НФ и это – окончательный результат нормализации.
Физическая модель базы данных определяет способ размещения данных в среде хранения и способ доступа к этим данным, которые поддерживаются на физическом уровне.
Для представления информации используется несколько форм. Табличная форма представления информации является наиболее распространенной и понятной. Кроме того, такие семантические более сложные формы, как деревья и сети, путем введения некоторой избыточности могут быть сведены к табличным. При этом данные также будут представлены в форме двумерных таблиц. Такой реляционный подход, в основе которого лежит принцип разделения данных и связей, обеспечивает с одной стороны независимость данных, а с другой – более простые способы реализации хранения и обновления. Ниже представлены таблицы базы данных «Магазин музыкальных инструментов «Музыка ветра».
Таблицы в конструкторе:
Рисунок 4 – Таблица «Инструменты»
Рисунок 5 – Таблица «Поставщики»
Рисунок 6 – Таблица «Поставка»
Рисунок 7 – Таблица «Продажа»
Таблицы в редакторе таблиц:
Рисунок 8 – Таблица «Инструменты»
Рисунок 9 – Таблица «Поставщики»
Рисунок 10 – Таблица «Поставка»
Рисунок 11 – Таблица «Продажа»
4 Разработка программного продукта
Рисунок 12 – Главная кнопочная форма
Начинается работа с программой с главной кнопочной формы, на которой расположены кнопки для открытия и просмотра форм, а также выхода из приложения. Как видите, интерфейс радует глаз великолепным расположением кнопок и довольно изящным логотипом, а фон главной формы способен удовлетворить эстетические потребности любого гурмана.
Рисунок 13 – Форма «Инструменты
Форма «Инструменты» содержит информацию обо всех инструментах: код, название, тип, цену, описание и рисунок. Присутствуют кнопка выполнения макроса «Наличие», который отвечает за отображение списка товаров на текущую дату, а также кнопки навигации, добавления, поиска и удаления записей; кнопка выхода.
Рисунок 14 – Форма «Поставка»
Форма «Поставка» содержит информацию о поступивших товарах: код накладной, дата поступления, код поставщика, его наименование, код инструмента, название инструмента, количество и сумма поставки. На этой форме есть четыре кнопки, отвечающие за просмотр отчетов: «Поставки за январь», «Поставки за февраль», «Поставки за март» и «Незаказанные товары», объединенные в один блок для удобства и красоты. Присутствуют кнопки навигации, добавления, поиска и удаления записей; кнопка выхода.
Рисунок 15 – Форма «Поставщики»
Форма «Поставщики» содержит информацию о поставщиках: код, название, директор фирмы-поставщика, адрес, телефон, сайт. Имеются кнопки навигации, добавления, поиска и удаления записей; кнопка выхода.
Рисунок 16 – Форма «Продажа»
Форма «Продажа» содержит информацию обо всех проданных товарах: код продажи, дата продажи, код инструмента, его название, количество, первоначальная цена и стоимость продажи. Поле «Стоимость» является вычисляемым. Формула для вычисления:
=([Количество]*[Инструменты_
Также на форме расположены кнопки вывода отчетов: «Продажи за январь», «Продажи за февраль», «Продажи за март», «Топ продаж» и «Не продавались», объединенные в один блок. Имеются кнопки навигации, добавления, поиска и удаления записей; кнопка выхода.
Очевидно, что одной из главных задач информационных систем является обработка информации, и чем быстрее, надежнее и точнее – тем лучше. С помощью языка SQL есть возможность составить запросы, как раз таки и являющиеся обработчиком информации. В данной курсовой работе имеется ряд запросов, которые и будут рассмотрены ниже.
Рисунок 17 – запрос «Поставки в январе» в конструкторе запросов
Данный запрос выполняет довольно важную функцию: показывает количество заказанного магазином товара за месяц. Что немаловажно, он отображает и общую сумму, которая является вычисляемой по формуле. Ниже приведен SQL вид запроса:
SELECT
Поставка.Дата, Инструменты.Название,
Поставка.Количество,
[Количество]*[Инструменты]![
FROM Инструменты INNER JOIN Поставка ON Инструменты.Код = Поставка.[Код инструмента]
WHERE (((Поставка.Дата) Like "*.01.2012"));
Результат запроса можно представить в виде диаграммы, сводной таблицы и таблицы обычной. Мы выберем последний вариант:
Рисунок 18 – результат выполнения запроса «Поставки в январе»
В ИС «Музыкальный магазин «Музыка ветра» есть два аналогичных запроса, выводящих результат поставок за февраль и март, поэтому мы не будем их рассматривать и перейдем к остальным запросам.
Рисунок 19 – запрос «Незаказанные товары» в конструкторе запросов
Как можно догадаться из названия, этот запрос выводит информацию о тех товарах, которые ни разу не были заказаны в течение всего времени.
Ниже приведен SQL вид запроса:
SELECT
Инструменты.Код, Инструменты.
FROM Инструменты LEFT JOIN Поставка ON Инструменты.Код = Поставка.[Код инструмента]
WHERE (((Поставка.[Код инструмента]) Is Null));
Рисунок 20 – результат выполнения запроса «Незаказанные товары»
Рисунок 21 – запрос «Продажа за январь» в конструкторе запросов
Следующий запрос рассматривает количество проданного товара за месяц и выводит количество и сумму по каждому инструменту.
Ниже приведен SQL вид запроса:
SELECT
Продажа.Дата, Инструменты.Название, Продажа.Количество,
([Инструменты]![Цена]*[
FROM Инструменты INNER JOIN Продажа ON Инструменты.Код = Продажа.[Код инструмента]
WHERE (((Продажа.Дата) Like "*.01.2012"))
ORDER BY Продажа.Дата;
Рисунок 22 – результат выполнения запроса «Продажи за январь»
Запросы «Продажи за февраль» и «Продажи за март» работают аналогичным образом.
Рисунок 23 – запрос «Топ продаж» в конструкторе запросов
Данный запрос выводит список самых продаваемых товаров за весь период (сюда входит товар, который покупали не менее 4 раз).
Ниже приведен SQL вид запроса:
SELECT
Инструменты.Код, Инструменты.
FROM Инструменты INNER JOIN Продажа ON Инструменты.Код = Продажа.[Код инструмента]
GROUP
BY Инструменты.Код, Инструменты.
HAVING
(((Sum(Продажа.Количество))>=
ORDER BY Sum(Продажа.Количество);
Рисунок 24 – результат выполнения запроса «Топ продаж»
Рисунок 25 – запрос «Непроданные товары» в конструкторе запросов
Информация о работе Информационная система «Музыкальный магазин «Музыка ветра»