КУРСОВОЙ ПРОЕКТ
Тема: «Разработка многопользовательской информационной системы для автоматизации работы книжного интернет-магазина»
Введение
Каждый год в сфере автоматизации отдельных областей деятельности человека происходят значительные изменения, которые в свою очередь ведут к изменениям в сознании людей. Почувствовав, что использование автоматизированных средств во много раз облегчает работу и при этом только улучшает её качество, достаточно трудно отказаться от приобретения и внедрения компьютера.
Системы автоматизации торговой деятельности в последние годы медленно, но верно занимают своё место и в этой сфере деятельности людей. Автоматизация учета имеющихся и отпущенных товаров, расчетов и создание отчетов во много раз повышают эффективность и качество работы, значительно облегчают труд работников.
С распространением сети Интернет возникли «электронные магазины» торгующие самыми различными товарами. По сравнению с обычными магазинами они имеют множество преимуществ, которые способствуют росту доходов в этой сфере торговли.
Целью данного курсового проекта является реализация информационной системы «Книжный Интернет-магазин» в архитектуре «клиент-сервер». Данная программа обладает всеми необходимыми компонентами для выполнения любых задач связанных с поиском и обработкой информации, удобным графическим интерфейсом, средствами для форматированного вывода информации на печать.
Постановка задачи1.1 Анализ предметной области
Моделируемая информационная система призвана упростить работу ведения книжного интернет-магазина.
В задачи администратора магазина входит предоставление клиентам магазина информации о предлагаемых книгах, прием заказов клиентов, расчеты с поставщиками книг.
Обоснование актуальности решаемой задачи
Как уже отмечалось во введении, сегодня в торговой деятельности широко применяются различные средства автоматизации – от обычных баз данных до радио-идентификационных меток. Хотя в нашей стране подобная практика пока не очень распространена, но определенный прогресс все же заметен – некоторые фирмы занимающиеся разработкой программного обеспечения создают и продукты для автоматизации процессов в сфере торговли, которые находят признание не только в нашей стране, но и за ее пределами.
Использование Интернета в торговой деятельности также достаточно перспективное направление, так как позволяет за счет экономии средств (нет необходимости в торговых помещениях, количество персонала минимально необходимое и т.д.) существенно повысить уровень доходов. К тому же подобный вид торговли весьма удобен и для покупателей, хотя реализация отдельных товаров затруднена, например, парфюмерии.
Индивидуальное задание
Задачей решаемой в данной курсовой работе является разработка многопользовательской информационной системы для автоматизации работы книжного интернет-магазина.
В разрабатываемой информационной системе должны быть реализованы функции необходимые для обеспечения работы интернет-магазина.
2. Проектирование логической модели системы
2.1 Функциональная модель
Для проведения анализа и функционального проектирования информационной системы используется CASE – средство Bpwin. Bpwin поддерживает три методологии: IDEF0, DFD и IDEF3, позволяющие анализировать организационную систему.
Информационная система функционирует следующим образом.
Все данные хранятся на внешнем носителе (диске). При необходимости работы с данными, пользователь запускает программу, адаптированную программистом для ввода и обработки данных в конкретной предметной области. Эта программа предоставляет пользователю интерфейс для работы с БД и возможности манипулирования данными.
Оператор может осуществлять ввод и корректировку данных в отношениях посредством основной и подчиненных форм, таблиц. При закрытии таблицы или запроса, результаты сохраняются на диск. Обработка данных производится:
в формах – для вывода наглядной информации для пользователя; после закрытия формы результаты преобразования не сохраняются;
в запросах – по данным пользователя отбирается и преобразуется в нужный вид интересующая его информация, выводится в табличном виде на экран; после закрытия запроса его результаты обычно не сохраняются, за исключением запросов на обновление.
Вывод данных на экран осуществляется посредством вызова соответствующих таблиц, запросов, форм, отчетов или страниц доступа. Таблицы соответствуют физическим данным, которые хранятся на диске. Результаты запросов также можно сохранять в отдельных таблицах. Результаты отчетов выводят на принтер.
2.1.1 Контекстная диаграмма и детализация процессов
Первая диаграмма в иерархии диаграмм IDEF0 изображает функционирование в целом. Такие диаграммы называются контекстными. В контекст входит описание цели моделирования, области (описания того, что будет рассматриваться как компонент системы, а что как внешнее воздействие) и точки зрения (позиции, с которой будет строиться модель).
После того как контекст описан, проводится построение следующих диаграмм в иерархии. Каждая последующая диаграмма является более подробным описанием (декомпозицией) одной из работ на вышестоящей диаграмме.
Контекстная диаграмма представляет собой схему управления интренет-магазином. Управляющим воздействием являются нормативные акты и приказы; входные данные – данные для запросов и отчетов, они вводятся пользователем. Результатом функционирования являются различные отчеты.
2.1.2 Миниспецификация процессов
При добавлении нового заказа запросом на обновление увеличивается увеличивается кредиторская задолженность магазина перед поставщиком. На основании данных о заказах за текущий месяц и данных о кредиторской задолженности формируется отчет об денежном обороте и задолженности магазина магазина в разрезе поставщиков.
На основании данных о заказах при помощи запроса на выборку формируется отчет представляющий собой рейтинг продажи книг, в котором указывается наименование книги и количество реализованных книг. Данный отчет позволяет определить книги, запас которых необходимо иметь для более быстрого выполнения заказов.
На основании данных о заказах также формируется отчет по продажам в разрезе представленных разделов. В отчет, при помощи запроса, выбираются данных о реализованных книгах с указанием принадлежности к конкретному разделу, а в отчете отражается перечень разделов с указанием количества проданных книг и суммы реализации. Данный отчет позволяет определить наиболее востребованный раздел, чтобы в будущем уделить ему больше внимания.
2.2. Информационная модель
2.2.1 Идентификация сущностей и связей. Исходная ER-диаграмма
Для отображения информационной модели рассматриваемого процесса были использованы следующие сущности:
Каталог книг
Разделы
Виды доставки
Поставщики
Заказы
Для однозначного определении записей в каждом из отношений выделен первичный ключ (простой или составной).
Внешние ключи для отношений БД:
в отношении Заказы - это ключ Код_книги;
в отношении Разделы – Название_Раздела.
На логическом уровне проектирования в моделируемой базе данных присутствуют связи типа один ко многим.
2.2.2 Уточнение типов данных для атрибутов. Реализация ссылочной целостности
В таблице 1 приведены данные обо всех атрибутах отношений и их типах.
Таблица 1 – Сведения об атрибутах отношений
КаталогКниг |
||
Имя атрибута | Тип (размер) | Обязательное поле |
Код |
Счетчик | да |
Название | Текстовый(80) | да |
Автор | Текстовый (50) | да |
Раздел | Текстовый (15) | да |
ГодИзадания | Числовой | нет |
Объем | Числовой | нет |
Переплет | Текстовый (10) | нет |
Издательство | Текстовый (10) | нет |
Цена | Денежный | да |
Аннотация | Поле МЕМО | нет |
Поставщик | Текстовый | да |
Обложка | Гипперссылка | нет |
Поставщики |
||
КодПоставщика | Счетчик | да |
Название | Текстовый (50) | да |
Имя атрибута | Тип (размер) | Обязательное поле |
РасчетныйСчет | Текстовый (13) | да |
ЗадолженностьМагазина | Денежный | да |
Разделы |
||
КодРаздела | Счетчик | да |
НазваниеРаздела | Текстовый (10) | да |
ВидыДоставки |
||
КодТипаДоставки | Счетчик | да |
ВидДоставки | Текстовый (30) | да |
СуммаДопСбора | Денежный | да |
Продажи |
||
НомерРеализации | Счетчик | да |
КодКниги | Числовой | да |
ФИО | Текстовый (60) | да |
Адрес | Текстовый (60) | да |
ВидДоставки | Текстовый (30) | да |
Стоимость | Денежный | да |
Месяц | Числовой | да |
Год | Числовой | да |
3. Реализация системы
3.1 Описание работоспособного программного обеспечения
Моделируемое программное обеспечение предполагает работу с двумя клиентами – клиентом и администратором, которые пользуются одними данными, но выполняют различные виды работ с этими данными. Поэтому для администратора было создано приложение, а для клиента страница доступа.
Работа с базой данных начинается с автоматического открытия главной кнопочной формы «Книжный интернет-магазин». На форме находятся следующие управляющие элементы – кнопки и их подписи, разделенные на три группы «Каталог книг», «Заказы» и «Поставщики». При нажатии на кнопку с помощью мыши раскрывается форма или выполняется некоторый запрос. Для облегчения работы каждая кнопка снабжена всплывающей подсказкой. Для выхода из базы данных предусмотрена кнопка «Выход».
Главная кнопочная форма клиентского приложения «iShop» представлена на следующем рисунке 1.
Рисунок 1 - Главная форма клиентского приложения «iShop»
В разделе «Каталог книг» для ввода информации служат кнопки «Редактирование» и «Разделы», которые открывают формы «Каталог книг» и «Тематические разделы», соответственно. Для ввода данных о новых заказах служит кнопка «Новый заказ», размещенная в разделе «Заказы», эта форма представлена на рисунке 2.
Рисунок 2 – Форма «Продажи»
Для ввода данных о книгах используется форма «КаталогКниг», которая представлена на рисунке 3.
Рисунок 3 – Форма «Каталог книг»
Для клиентов была создана страница доступа к данным. С помощью этой страницы клиенты могут просматривать каталог доступных книг, отсортированный по разделам. Для оформления заказа клиенту необходимо нажать на кнопку «Оформить заказ» и в появившейся форме ввести необходимые данные, которые затем будут отправлены на адрес электронной почты магазина и обработаны оператором.
3.2 SQL-определения запросов
На базе описанных выше таблиц для обработки данных и для нахождения некоторой информации были построены следующие запросы.
Для расчета суммы заказа был построен запрос на обновление, который на языке SQL имеет следующий вид:
UPDATE КаталогКниг
INNER JOIN (ВидыДоставки INNER JOIN Продажи ON ВидыДоставки.ВидДоставки = Продажи.ВидДоставки) ON КаталогКниг.Код = Продажи.КодКниги SET Продажи.Стоимость = [Цена]*1.2+[СуммаДопСбора]
WHERE ((([Продажи]![Стоимость])=0));
Для расчета возросшей задолженности перед поставщиком заказанной книги был построен запрос на обновление, который на языке SQL имеет следующий вид:
UPDATE Поставщики
INNER JOIN (КаталогКниг INNER JOIN Продажи ON КаталогКниг.Код = Продажи.КодКниги) ON Поставщики.Название = КаталогКниг.Поставщик SET Поставщики.ЗадолженностьМагазина = Поставщики!ЗадолженностьМагазина+[Цена]
WHERE (((Продажи.Стоимость)=0));
Для определения наиболее покупаемых в текущем месяце книг был построен запрос, который на языке SQL имеет следующий вид:
SELECT DISTINCTROW Продажи.КодКниги, КаталогКниг.Название, Count(*) AS [Количество реализаций]
FROM КаталогКниг INNER JOIN Продажи ON КаталогКниг.Код = Продажи.КодКниги
WHERE (([Продажи]![Год]=Year(Now())))
GROUP BY Продажи.КодКниги, КаталогКниг.Название, КаталогКниг.Код, Продажи.Месяц
HAVING (([Продажи]![Месяц]=Month(Now())));
Для определения оборота с поставщиками и суммы задолженности перед ними был построен запрос следующего вида:
SELECT DISTINCTROW [Оборот с поставщиками].Название, Sum([Оборот с поставщиками].[Sum-Цена]) AS [Sum-Sum-Цена], Поставщики.ЗадолженностьМагазина
FROM [Оборот с поставщиками] INNER JOIN Поставщики ON [Оборот с поставщиками].Название = Поставщики.Название
GROUP BY [Оборот с поставщиками].Название, Поставщики.ЗадолженностьМагазина;
Для определения суммы выручки, затрат и прибыли за выбранный месяц был построен запрос с параметрами, который на языке SQL имеет следующий вид:
PARAMETERS [Дата] DateTime;
SELECT DISTINCTROW Продажи.КодКниги, Sum(Продажи.Стоимость) AS [Sum-Стоимость], Sum(КаталогКниг.Цена) AS [Sum-Цена], [Продажи]![Стоимость]-[КаталогКниг]![Цена] AS Прибыль
FROM КаталогКниг INNER JOIN Продажи ON КаталогКниг.Код = Продажи.КодКниги
WHERE ((([Продажи]![Месяц])=Month([Дата])) AND (([Продажи]![Год])=Year([Дата])))
GROUP BY Продажи.КодКниги, [Продажи]![Стоимость]-[КаталогКниг]![Цена];
4. Исследование операционных характеристик ИСС
4.1 Описание базы данных контрольного примера
Для проведения испытаний созданной ИСС разработан контрольный пример, позволяющий проверить работоспособность и отказоустойчивость последней.
База данных контрольного примера содержит в себе следующие данные, позволяющие протестировать работу всех запросов.
4.2 Анализ результатов тестирования ИСС
Набор действий оператора и результаты работы ИСС приведены в таблице.
№ | Действия оператора | Ответ ИСС |
1 |
Ввод данных о книге с помощью формы «КаталогКниг»: Название: Использование Microsoft FrontPage 2002. Специальное издание Автор: Д. Джоунз Раздел: MSO Издательство: Вильямс Год издания: 2002 Объем: 848 Переплет: мягкий Размещение обложки: mso\mso33_big.jpg Поставщик: «Петро» Цена: 22 700 р. Аннотация: Эта книга посвящена изучению средств и возможностей приложения FrontPage 2002 для разработки Web-страниц и Web-узлов в Internet. FrontPage 2002 - это чрезвычайно мощное многофункциональное приложение с очень простым и понятным интерфейсом. Книга написана целым коллективом соавторов. Идея состояла в том, чтобы по каждому вопросу информация исходила действительно от профессионала. С помощью данной книги вы научитесь использованию средств FrontPage 2002 для создания и разработки собственных Web- узлов, затрачивая на это минимум усилий, но с максимальной эффективностью; управлению, настройке и поддержания узлов на Web-серверах для обеспечения их регулярного обновления и удобства работы пользователей; использованию для редактирования Web-страниц других приложений Microsoft Office XP; созданию динамических эффектов с использованием средств DHTML и сценариев. Книга рассчитана на пользователей с различным уровнем подготовки. |
Записано. |
2 | Запрос на нахождение всех реализованных книг за 04.2004 с указанием количества. | Выведена на экран таблица, содержащая сведения о 4-х наименованиях реализованных книг |
3 | Запрос на определение выручки, затрат и прибыли за 03.2004, с указанием общего количества реализованных книг. |
Получены результаты: Выручка - 134 288,00 р.; Затраты - 85 240,00 р.; Прибыль - 49 048,00 р.; Количество реализованных книг – 5 шт. |
4 |
Добавление нового раздела Название: Python |
Запись добавлена |
5 | Удаление раздела С\С++ | Из таблицы Разделы была удалена запись, из таблицы КаталогКниг удалены все книги относившееся к разделу С\С++ |
6 | Запрос на определение оборота с поставщиками за текущий месяц и задолженности магазина за поставку книг | На экран выведены данные об объемах поставок книг по каждому из поставщиков и задолженность магазина перед каждым из них |
7 |
Добавление нового заказа КодКниги: 12 ФИО: Jonh Smith Адрес: 64412, USA, Colorado, Hapwill, Pushkin St, 12/3 Тип доставки: Страны дальнего зарубежья |
В таблицу «Продажи» добавлена новая запись, задолженность перед поставщиком «Торвлад» увеличилась на 14 830 р. и достигла 100 240,00 р. |
В результате проведенного тестирования разработанная ИСС показала себя как вполне надежная программа, выполняющая все заявленные в описании задачи.
Заключение
Разработанное программное обеспечение позволяет упростить работу по сопровождению интернет-магазина. Данная программа обладает всеми необходимыми компонентами для выполнения любых задач связанных с поиском и обработкой информации, удобным графическим интерфейсом, средствами для форматированного вывода информации на печать
Данное программное обеспечение разработано в архитектуре «клиент-сервер» на языке SQL.
Возможно дальнейшее совершенствование созданного программного обеспечения.
Список использованных источников
С. Баркер. «Профессиональное программирование в среде Access 2002» – М.: Издательский дом «Вильямс», 2002. – 956 с.
Бекаревич Ю.Б., Пушкина Н.В. Самоучитель Microsoft Access 2002. – СПб.: БХВ-Петербугр, 2002.
Вейскас Дж. «Эффективная работа с Access 2002» – СПб.: Питер, 2002. – 563 с.