Программное решение для учета продовольственных товаров на складе организации
Концептуальное и логическое проектирование базы данных. Осуществление программной реализации приложения. Разработка руководства программиста и пользователя. Этапы процесса проектирования базы данных кампании. Структура программы, ее содержание и состав.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 18.12.2019 |
Размер файла | 1,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
Введение
1. Проектирование базы данных
1.1 Анализ существующего программного обеспечения
1.2 Концептуальное проектирование базы данных
1.3 Логическое проектирование базы данных
1.4 Выбор целевой СУБД
1.5 Физическое проектирование базы данных
2. Разработка программного продукта
2.1 Структура программного продукта
2.2 Реализация бизнес-правил
2.3 Руководство программиста
2.4 Краткое руководство пользователя
2.5 Тестирование программного продукта
Заключение
Список использованных источников
Приложения
Введение
Актуальность. В настоящее время, как малые, так и крупные предприятия, используя информационные технологии, стремится автоматизировать рабочий процесс и использовать необходимые ресурсы в электронном виде. В эту группу также входят и небольшие торговые точки, у которых имеется небольшая территория, оборудованная под склад.
Функционирование российских малых предприятий в рыночных условиях предполагает разработку и внедрение экономического механизма, обеспечивающего рост эффективности на всех уровнях управления и направлениях деятельности. Одним из основных элементов такого механизма является разработки приложения для учета продовольственных товаров.
Распространенной автоматизированной информационной системой складского учета "1С.Склад". Вышеупомянутая система обеспечивает автоматизацию работы кладовщиков и продавцов, но данную систему нерационально применять на малых предприятиях, т.к. на данных предприятиях хранятся небольшие запасы продовольствий, а также персонал не имеет навыков для работы в программе "1С".
В связи с этим, для малых предприятий необходим продукт, который будет прост в установке и использовании, имеет несложный интерфейс и обеспечивает автоматизацию процесса учета запасов продовольствий. В этом заключается актуальность работы.
Цель и задачи. Целью курсовой работы является реализовать программное решение для учета продовольственных товаров на складе организации.
Для достижения поставленной цели необходимо выполнить следующие задачи:
- выполнить концептуальное проектирование базы данных;
- выполнить логическое проектирование базы данных;
- выбрать целевую систему управления базами данных (СУБД);
- осуществить программную реализацию приложения;
- разработать руководство программиста;
- разработать руководство пользователя;
- провести тестирование разработанного программного обеспечения.
Структура работы. Курсовая работа состоит из введения, двух глав, заключения и списка использованных источников, в котором приведены наименования. Материал изложен на 41 страницах и содержит 24 рисунка и 7 таблиц.
В первой главе курсовой работы приводятся этапы процесса проектирования базы данных. Первым этапом проектирования является концептуальное проектирование базы данных, в котором приведены описания сущностей и концептуальная модель. Следующим этапом является логическое проектирование базы данных. На данном этапе описаны связи между сущностями и построена логическая модель. Финальным этапом проектирования базы данных является физическое проектирование базы данных. Этот этап ориентирован на то, как данные будут храниться в базе данных под управлением конкретной системой управления базами данных.
Также в данную главу входит анализ существующих аналогов разрабатываемого программного обеспечения создания и обработки заявок, и выбор системы управления базами данных для управления базой данных.
Во второй главе отражена структура программы, ее содержание и состав. Кроме этого, представлено руководство программиста, которое отражает технические аспекты ПО и руководство пользователя, помогающее в освоении программы. Также в данной главе приведены результаты тестирования разработанного программного обеспечения.
1. Проектирование базы данных
Основным элементом в работе предприятия, занятого продажей продовольственных товаров является мониторинг запасов товара на складе. Чтобы иметь представление, как это должно быть реализовано, нужно проанализировать существующее ПО, это позволит определить важные аспекты в обработке заявок и избежать недостатков.
Для того чтобы хранить информацию о количестве товара на складе, необходимо использовать БД. Создание БД предполагает выполнение следующих этапов: программный пользователь приложение
- концептуальное проектирование БД;
- логическое проектирование БД;
- выбор СУБД;
- физическое проектирование БД.
1.1 Анализ существующего программного обеспечения
Учет количества товаров на складе, на малых предприятиях, как правило осуществляется вручную, либо с использованием бесплатного ПО, сильно ограниченного в функционале, такого как "Склад и торговля", "Товар-Деньги-Товар", "Движение товара". Рассмотрим подробнее каждое решение.
Программное решение "Склад и торговля".
Программа предназначена для учета движения товаров на складах магазинов разного вида направленности. Данное приложение позволяет автоматизировать весь процесс прихода товара при наличии электронных версий входных накладных. Для этого специально разработан модуль "Автоматизированный ввод накладных", что позволяет в разы ускорить процесс ввода товара и сократить время его запуска в продажу, таким образом, уменьшая издержки обращения.
В программе предусмотрен модуль печати ценников и отчетов. Вид ценников разработан по редактируемым шаблонам и может быть настроен пользователем самостоятельно. Для создания шаблонов печати реализован специальный "Дизайнер шаблонов".
Выходные формы документов и отчетов могут быть экспортированы MS Excel, что упрощает дальнейшее их использование и анализ. Отдельно выделен режим рабочего места кассира для создания быстрых продаж. Интерфейс кассира разработан с учетом необходимости быстрого выполнения операций продажи со считыванием штрих кода [1].
В целом, программа достаточно универсальна, может одинаково удобно использоваться при торговле как единичным товаром, так и мерным. Данное приложение хорошо себя зарекомендовало в магазинах бытовой техники, книжных магазинах, магазинах сантехники и магазинах строительных материалов. Интерфейс вышеописанного ПО представлен на рисунке 1.1.
Рисунок 1.1. - Интерфейс программы "Склад и торговля"
Программное решение "Товар-Деньги-Товар".
Представляет собой торгово-складскую программу для осуществления комплексного контроля над деятельностью оптовых, розничных, оптово-розничных и других торгующих предприятий - от небольшого магазина до супермаркета. Программа позволяет проводить и оформлять все виды торговых и складских операций, вести соответствующую документацию и формировать разнообразные отчеты.
Основные возможности программы:
- Создание любой структуры фирмы с любым количеством складов, магазинов и торговых точек.
- Учет товара, приходящего разными партиями, сохраняя его себестоимость и индивидуальные особенности.
- Автоматический расчет себестоимости товара с учетом всех затрат.
- Быстрая и удобная установка розничных, оптовых, дополнительных цен, используя любые денежные единицы.
- Возможность работы с несколькими уровнями единиц измерения для каждого товара. При этом общее количество введенных единиц измерения может быть неограниченным, например: вагон, контейнер, ящик, упаковка, пачка, килограмм, грамм.
- Торговля оптом и в розницу.
- Работа с комплектами.
- Учет партнеров: поставщиков и покупателей. Контроль расчетов с клиентами, оплаты, учет долгов и должников.
- Ведение всей необходимой первичной документации: платежные поручения, счета, счета-фактуры, товарные чеки, накладные на продажу товара, накладные на перенос товара со склада на склад, накладные на списание товара, накладные на возврат с продажи и возврат поставщику.
- Формирование аналитических отчетов: о поступлении товара на склад, реализации товара с автоматическим подсчетом прибыли за любой период, остатках товара на складах фирмы, долгах и должниках.
- Возможность подключения к кассовому аппарату, система штрих-кодирования.
- Имеется клиент-серверная версия программы.
- Невысокие требования к аппаратному обеспечению компьютера для установки и работы программы.
- Система многоступенчатой защиты информации.
- Легкость освоения пользователем.
Ограничение в демонстрационной версии стоит только на время использования программы. Блокировка работы произойдет, когда разница между датой первого документа и последующего достигнет трех месяцев. Единоразовая стоимость полной версии программы составляет для одного рабочего места составляет 3894 руб [2]. Интерфейс вышеописанного ПО представлен на рисунке 1.2.
Рисунок 1.2. - Интерфейс программы "Товар-Деньги-Товар"
Программное решение "Движение товара".
Программа ориентирована для организации складского учета и оптово-розничной торговли со следующими функциями:
- приход, расход, перемещение и списание товара;
- работа с прайс-листами;
- печать ценников;
- заказы на закупку и заказы покупателей;
- отслеживание оплат, начисление зарплаты сотрудникам;
- сетевой и многопользовательский режимы, гибкая настройка прав доступа.
Интерфейс программы унифицирован и гибко настраивается. Структура БД также гибко настраивается на любую предметную область. Сортировка, фильтрация, поиск по любому полю таблицы, правила цветовыделения, напоминания, экспорт и импорт данных, генерация офисных документов по шаблонам с данными из БД, гибкая настройка дерева данных, сетевой и многопользовательский режимы, поддержка репликации и режима офлайн, триггеры, групповое обновление, возможность работы как прямо в таблицах, так и в отдельной форме, которая гибко настраивается, определение ниспадающих списков, вычисляемых значений, импорт файлов из файловой системы и е-mail [3]. Интерфейс ПО "Движение товара" представлен на рисунке 1.3.
Рисунок 1.3. - Интерфейс программы "Движение товара"
Проанализировав три программах продукта, используемых для учета продовольственных товаров, можно обобщить результаты в таблице 1.1.
Таблица 1.1 - Сравнительный анализ программных решений
ПО |
Наличие сервера |
Тип СУБД |
Необходимость установки на АРМ пользователя |
Возможность построения графиков, диаграмм и отчетов |
Стоимость лицензии |
|
"Склад и торговля" |
Нет |
Встроенная |
Необходима установка |
Нет |
Бесплатно |
|
"Товар-Деньги-Товар" |
Да |
Встроенная |
Необходима установка |
Да |
3894 руб. |
|
"Движение товара" |
Нет |
Встроенная |
Необходима установка |
Нет |
Бесплатно |
На основе сравнительной таблицы 1.1, можно увидеть, что все три решения требуют установки на конечный компьютер, не имеют возможности интеграции со сторонними СУБД. ПО "Товар-Деньги-Товар" имеет два преимущества перед своими оппонентами, такие как возможность клиент-серверного развертывания и функция построения отчетов, графиков и диаграмм. Однако, лицензия данной программы на одно рабочее место составляет 3894 рубля. Не каждый предприниматель имеет возможность обеспечить все необходимые рабочие места данной программой, поэтому внедряемый программный продукт должен распространяться бесплатно. В связи с этим, ни одно из рассмотренных программных решений не подходит для реализации в малом предприятии.
1.2 Концептуальное проектирование базы данных
При концептуальном проектировании описываются сущности и связи между ними. Данное представление отражено в таблицах. В таблице 1.2 содержится информация о сущностях и их типах.
Чтобы сущности были связаны между собой, созданы связи, соединяющие их друг с другом. В таблице 1.3 описаны типы связей между сущностями.
На основании таблицы 1.2 построена ER-модель, на которой представлены описанные сущности, типы связей и кардинальность (Рисунок 1.4).
Таблица 1.2 - Сведения о типах сущностей проектируемой БД
№ |
Имя сущности |
Описание |
Тип |
|
1 |
Филиал организации |
Содержится информация о филиале |
сильный |
|
2 |
Тип товара |
Содержится список типов товаров |
сильный |
|
3 |
Сведения о товаре |
Содержится список характеристик товара |
слабый |
|
4 |
Сведения о поставщике |
Содержится список сведений о поставщике |
сильный |
|
5 |
Сведения о производителе |
Содержится список сведений о производителе |
сильный |
|
6 |
Сотрудники |
Содержится список сведений о сотрудниках |
слабый |
|
7 |
Сделка |
Содержится список сведений о продаже товара |
слабый |
|
8 |
Склад |
Содержится информация о остатках продовольствий на складе филиала |
сильный |
|
9 |
Состав сделки |
Содержится список проданных товаров |
сильный |
Таблица 1.3 - Сведения о типах связей проектируемой БД
№ |
Тип сущности |
Тип связи |
Тип сущности |
Кардинальность |
|
1 |
Филиал организации |
учитывает |
Сотрудники |
M:N |
|
2 |
Склад |
числится за |
Филиал организации |
M:N |
|
3 |
Сведения о товаре |
учитывает |
Тип товара |
M:1 |
|
4 |
Склад |
учитывает |
Сведения о товаре |
M:N |
|
5 |
Сведения о товаре |
учитывает |
Сведения о поставщике |
M:N |
|
6 |
Сведения о товаре |
учитывает |
Сведения о производителе |
М:1 |
|
7 |
Сделка |
учитывает |
Сотрудники |
M:1 |
|
8 |
Сделка |
учитывает |
Филиал организации |
N:M |
|
9 |
Состав сделки |
числится в |
Сделка |
N:M |
|
10 |
Состав сделки |
учитывает |
Сведения о товаре |
M:1 |
Рисунок 1.4 - ER-диаграмма проектируемой БД
1.3 Логическое проектирование базы данных
После этапа концептуального проектирования следует логическое проектирование.
Логическое проектирование базы данных - это процесс создания модели используемой на предприятии информации на основе выбранной модели организации данных, но без учета типа целевой СУБД и других физических аспектов реализации. Цель данного этапа состоит в создании логической модели данных для исследуемой части предприятия. Концептуальная модель данных, созданная на предыдущем этапе, уточняется и преобразуется в логическую модель данных. Логическая модель данных учитывает особенности выбранной модели организации данных в целевой СУБД (например, реляционная модель).
На данном этапе описываются атрибуты сущностей, псевдонимы атрибутов, домены атрибуты.
Описание всех сущностей проектируемой БД представлено в таблице 1.4.Таблица 1.4 - Атрибуты и домены атрибутов проектируемой БД
№ |
Сущность |
Атрибут сущности |
Псевдоним атрибута |
Домен атрибута |
|
1 |
Branch (Филиал) |
ID Филиала |
ID_F |
Числовой |
|
Адрес |
City |
Текстовый |
|||
Телефон |
Phone |
Текстовый |
|||
Управляющий |
ID staffr |
Числовой |
|||
2 |
Type (Тип товара) |
Номер вида товара |
IDType |
Числовой |
|
Наименование типа товара |
Name_Product |
Текстовый |
|||
3 |
Product (Сведения о товаре) |
ID Товара |
IDproduct |
Числовой |
|
Номер вида товара |
IDType |
Числовой |
|||
Наименование товара |
Name |
Текстовый |
|||
ИНН организации- поставщика |
IDprovider |
Числовой |
|||
ИНН организации - производителя |
IDmanufacturer |
Числовой |
|||
Срок годности |
Term |
Дата/Время |
|||
Цена |
Prise |
Числовой |
|||
4 |
Provider (Сведения о поставщике) |
ИНН |
IDprovider |
Числовой |
|
Наименование организации |
Name |
Текстовый |
|||
Юр. Адрес |
Address |
Текстовый |
|||
5 |
Manufacturer (Сведения о производителе) |
ИНН |
IDmanufacturer |
Числовой |
|
Наименование организации |
Name |
Текстовый |
|||
Юр. Адрес |
Address |
Текстовый |
|||
6 |
Staff (Сотрудники) |
ID Сотрудника |
ID staff |
Числовой |
|
ID Филиала |
ID_F |
Числовой |
|||
ФИО сотрудника |
FIO |
Текстовый |
|||
7 |
Deal (Сделка) |
Номер сделки |
ID Deal |
Числовой |
|
ID Филиала |
ID_F |
Числовой |
|||
ID Сотрудника |
ID staff |
Числовой |
|||
Дата и время сделки |
Date |
Дата/Время |
|||
8 |
Storage (Склад) |
ID Склада |
ID Storage |
Числовой |
|
ID Филиала |
ID_F |
Числовой |
|||
Адрес склада |
AddressS |
Текстовый |
|||
ID Товара |
IDproduct |
Числовой |
|||
Количество |
Amount |
Числовой |
|||
9 |
Deal_sost (Состав сделки) |
ID Состава сделки |
ID_deal_sost |
Числовой |
|
Номер сделки |
ID Deal |
Числовой |
|||
ID Товара |
IDproduct |
Числовой |
|||
Количество |
Amount |
Числовой |
Для графического представления структуры базы данных, с учетом выше указанного описания сущностей, служит логическая модель. Логическая модель показывает, что хранится в БД.
На рисунке 1.5 представлена логическая модель проектируемой БД.
Рисунок 1.5 - Логическая модель проектируемой БД
1.4 Выбор целевой СУБД
Информация, хранящаяся в БД, может быть разной. Для обеспечения доступа к информации используется СУБД.
Несмотря на то, что все СУБД имеют одно и то же назначение, сам процесс работы может различаться. Помимо этого, функции и возможности каждой СУБД могут отличаться.
Существует большое количество популярных СУБД, которые помогают решить большой круг задач, некоторые из них являются платными, а другие бесплатными. Далее сделан обзор трех СУБД PostgreSQL 12; MySQL 5.5; Microsoft SQL Server 2019.
Начнется обзор с СУБД PostgreSQL 12. Данная СУБД является профессиональной. Она свободно распространяется и соответствует стандартам SQL. PosgreSQL 12 имеет кроссплатформенность, то есть может быть установлена на разные операционные системы (ОС).
От других СУБД PostgreSQL отличается поддержкой востребованного объектно-ориентированного и реляционного подхода к БД. Также легко расширяется за счет использования собственных процедур, которые называются хранимыми процедурами. С их помощью можно упростить использование постоянно повторяющихся операций [5].
К достоинствам PostgreSQL 12 можно отнести:
- предоставляется в свободном доступе;
- большое количество справочных материалов в сети;
- наличие дополнений, которые позволяют получить больший набор функций;
- наличие расширений;
- объектность - СУБД PostgreSQL является не только реляционной, но также и объектно-ориентированной с поддержкой соответствующих стандартов.
Недостатки:
- производительность, даже при таких простых операциях как чтение, PostgreSQL может значительно замедлить сервер и быть медленнее своих конкурентов, таких как MySQL;
- отсутствует четко сформулированная документация;
- для неподготовленного пользователя, настройка СУБД может оказаться непростой [5].
Далее следует СУБД MySQL 5.5. MySQL является самой распространенной полноценной серверной СУБД. Имеет большой функционал, свободно распространяется, успешно работает с большим количеством готового ПО. Обучение использованию MySQL довольно простое, так как в сети Интернет находится множество информации по данной СУБД [6].
Также благодаря своей популярности MySQL накопило огромное количество разных плагинов и расширений, которые помогают упростить работу с системой.
Так как данная СУБД является серверной, приложения для доступа к данным работают со службами MySQL.
Основными достоинствами MySQL являются:
- простота в работе, СУБД легко установить, а с помощью дополнительного приложения можно упростить работу с БД;
- поддержка большого функционала SQL;
- безопасность, имеется достаточно большое количество функций обеспечивающих безопасность, которые поддерживаются стандартно;
- масштабируемость, MySQL легко работает с большими объемами данных и легко масштабируется;
- скорость работы, упрощение некоторых стандартов SQL значительно увеличивает производительность;
- имеет объемную документацию.
К недостаткам относятся ограничения функционала бесплатной версии и платная поддержка в бесплатной версии [4].
Еще одной из популярных СУБД является Microsoft SQL Server 2019. Уникальной особенностью является временная поддержка данных, которая позволяет отслеживать изменения данных с течением времени. Кроме того, имеет место быть функция динамической маскировки данных, которая предоставляет к просмотру конфиденциальные данные только авторизованным пользователям [7].
В Microsoft SQL Server также есть достоинства:
- СУБД проста в работе;
- быстрота работы и стабильность;
- возможность регулировки и отслеживания производительности;
- взаимодействие с другими программами Microsoft;
- масштабируемость.
Среди недостатков можно выделить то, что бесплатные версии только личного/некоммерческого использования, а также нехватку технических ресурсов даже при тщательной настройке.
После тщательного обзора всех трех СУБД, необходимо собрать все вышеперечисленное и объединить в одну свободную таблицу (таблица 1.5). Это поможет провести сравнение систем и выбрать одну для физического проектирования и дальнейшей реализации.
В результате сравнения трех выбранных СУБД выбрана СУБД MySQL 5.5. Во-первых, MySQL отличается большей производительностью от PostgreSQL. Во-вторых, Microsoft SQL Server хоть и хорошо проработана, но она платная и цены на использование достаточно велики. В-третьих, MySQL является чем-то средним между СУБД полностью поддерживаемые стандарты SQL и СУБД, которые упрощают стандарты как можно больше. Она сочетает в себе лучшее от обеих систем и найти ответ на интересующий вопрос не составит труда.
Таблица 1.5 - Сравнительная таблица СУБД
Показатель |
PostgreSQL 12 |
MySQL 5.5 |
Microsoft SQL Server 2019 |
|
Поддерживаемая ОС |
Linux, Windows, MacOS |
Linux, Windows, MacOS |
Linux, Windows |
|
Тип лицензии |
Свободная |
GNU GPL и коммерческая |
Коммерческая |
|
Максимальный размер БД |
Неограничен |
Неограничен |
524 PB |
|
Максимальный размер таблицы |
32 TB |
64 TB |
Пространство сервера |
|
Максимальный размер записи |
1.6 TB |
65 535 B |
Пространство сервера |
|
Поддерживаемые языки программирования |
Java, PHP, Python, Ruby, R, Scheme, Perl |
C, C#,C++, Delphi, JavaScript, PHP, Python, Ruby, Perl, Ada |
C, C#,C++, Delphi, JavaScript, PHP, Python, Ruby, Visual Basic |
|
Модель данных |
Клиент-серверная |
Клиент-серверная |
Клиент-серверная |
В результате общего анализа в качестве СУБД для разработки программного продукта была выбрана СУБД MySQL 5.5, так как у нее содержится меньше всего недостатков, а главное - она является бесплатной и содержит необходимый функционал для разработки базы данных курсовой работы.
1.5 Физическое проектирование базы данных
Последним этапом в проектирование БД является физическое проектирование. Физическое проектирование представляет собой описание реализации БД на вторичных запоминающих устройствах. Описание полей таблиц БД представлено в таблице 1.6.
Таблица 1.6 - Описание полей таблиц БД
Наименование поля |
Содержание поля |
Тип поля |
Ра-р поля |
Значение по умол. |
Условие на значение |
Ключ или индекс |
|
Branch (Филиал) |
|||||||
ID_F |
ID Филиала |
INT |
11 |
NOT NULL |
ПК, Индекс |
||
City |
Адрес |
VARCHAR |
50 |
||||
Phone |
Телефон |
VARCHAR |
50 |
||||
ID staff |
Управляющий |
INT |
50 |
NOT NULL |
Индекс |
||
Type (Тип товара) |
|||||||
IDType |
Номер вида товара |
INT (Авто) |
11 |
NOT NULL |
ПК, Индекс |
||
Name_Product |
Наименование типа товара |
VARCHAR |
50 |
NOT NULL |
|||
Product (Сведения о товаре) |
|||||||
IDproduct |
ID Товара |
INT (Авто) |
11 |
NOT NULL |
ПК, Индекс |
||
IDType |
Номер вида товара |
INT |
11 |
NOT NULL |
Индекс |
||
Name |
Наименование товара |
VARCHAR |
20 |
NOT NULL |
|||
IDprovider |
ИНН организации- поставщика |
INT |
11 |
NOT NULL |
Индекс |
||
ID manufacturer |
ИНН организации - производителя |
INT |
11 |
NOT NULL |
Индекс |
||
Term |
Срок годности |
DATETIME |
55 |
NOT NULL |
|||
Prise |
Цена |
INT |
11 |
NOT NULL |
Наименование поля |
Содержание поля |
Тип поля |
Ра-р поля |
Значение по умол. |
Условие на значение |
Ключ или индекс |
|
Provider (Сведения о поставщике) |
|||||||
IDprovider |
ИНН |
INT |
11 |
NOT NULL |
ПК, Индекс |
||
Name |
Наименование организации |
VARCHAR |
50 |
||||
Address |
Юр. Адрес |
VARCHAR |
50 |
||||
Manufacturer (Сведения о производителе) |
|||||||
ID manufacturer |
ИНН |
INT, (Авто) |
11 |
NOT NULL |
ПК, Индекс |
||
Name |
Наименование организации |
VARCHAR |
50 |
NOT NULL |
|||
Address |
Юр. Адрес |
VARCHAR |
50 |
||||
Staff (Сотрудники) |
|||||||
ID staff |
ID Сотрудника |
INT |
11 |
NOT NULL |
ПК, Индекс |
||
ID_F |
ID Филиала |
INT |
11 |
NOT NULL |
Индекс |
||
FIO |
ФИО сотрудника |
VARCHAR |
50 |
NOT NULL |
|||
Deal (Cделкa) |
|||||||
ID Deal |
Номер сделки |
INT, (Авто) |
11 |
NOT NULL |
ПК, Индекс |
||
ID_F |
ID Филиала |
INT |
50 |
NOT NULL |
Индекс |
||
IDproduct |
ID Товара |
INT |
50 |
NOT NULL |
Индекс |
||
ID staff |
ID сотрудника |
INT |
50 |
NOT NULL |
Индекс |
||
Amount |
Кол-во ед. товара |
INT |
11 |
NOT NULL |
|||
Date |
Дата и время сделки |
DATE |
NOT NULL |
||||
Storage (Склад) |
|||||||
ID Storage |
ID Склада |
INT |
11 |
NOT NULL |
ПК, Индекс |
||
ID_F |
ID Филиала |
INT |
30 |
NOT NULL |
Индекс |
||
AddressS |
Адрес склада |
VARCHAR |
50 |
NOT NULL |
|||
IDproduct |
ID Товара |
INT |
11 |
NOT NULL |
Индекс |
||
Amount |
Количество |
INT |
30 |
NOT NULL |
|||
Deal_Sost (Состав сделки) |
|||||||
ID_deal_sost |
ID Состава сделки |
INT |
11 |
NOT NULL |
ПК, Индекс |
||
ID Deal |
Номер сделки |
INT |
11 |
NOT NULL |
Индекс |
||
IDproduct |
ID Товара |
INT |
11 |
NOT NULL |
Индекс |
||
Amount |
Кол-во ед. товара |
INT |
11 |
NOT NULL |
Завершением физического проектирования является физическая модель. Физическая модель - это логическая модель, только содержащая конкретные детали, необходимые СУБД для создания БД. Физическая модель представлена на рисунке 1.6.
Рисунок 1.6 - Физическая модель проектируемой БД
2. Разработка программного продукта
Под разработкой программного продукта понимается проектирование, написание, тестирование и поддержка компьютерных программ с целью решения задач для множества пользователей. Исходя из данного определения, выполнены все необходимые действия, результаты которых изложены в данном разделе.
2.1 Структура программного продукта
Внешний вид и логическая структура программного продукта представляет собой классический оконный интерфейс. Интерфейс программы имеет два различных представления.
Структура программного продукта позволяет пользователю перемещаться с формы на форму без затруднений, на каждой форме имеются подписи, для чего данная форма предназначена. Кнопки для навигации в программе располагаются отдельно на формах и имеют подписи. Схема структуры разработанного приложения представлена на рисунке 2.1.
Рисунок 2.1 - Схема структуры программы
2.2 Реализация бизнес-правил
Под бизнес-правилами понимаются условия того, что данные соответствуют выбранной предметной области. Например, есть условие с переменной, и бизнес-правило может изменить ее значение в ходе выполнения программы. Бизнес-правила являются непроцедурными и могут изменяться независимо от приложения. Они определяют исход процесса в зависимости от контекста.
Диаграмма бизнес-правил, разработанного программного продукта представлена на рисунке 2.2.
Рисунок 2.2 - Диаграмма бизнес-правил
Запрос на выборку списка организаций поставщиков представлен в листинге 2.1
Листинг 2.1 - Запрос на выборку "получение списка организаций-поставщиков"
SELECT
product.IDProduct,
product.Name,
provider.Name,
product.Prise
FROM product
INNER JOIN provider
ON product.IDprovider = provider.IDProveder
Для отображения формы "Остаточное количество продуктов" используется SQL запрос из листинга 2.2
Листинг 2.2 - Остаточное количество продуктов на складах филиалов
SELECT
branch.ID_F,
branch.City,
product.IDProduct,
product.Name,
storage.Amount
FROM product
INNER JOIN provider
ON product.IDprovider = provider.IDProveder
INNER JOIN storage
ON storage.Dproduct = product.IDProduct
INNER JOIN branch
ON storage.ID_F = branch.ID_F
2.3 Руководство программиста
Успешное функционирование системы учета продовольственных товаров зависит от двух условий: используемые технические средства и ПО. При соблюдении данных условий программа работает корректно, быстро, без системных ошибок.
Требования к техническим средствам. Для работы программы создания и обработки заявок необходим сервер с конфигурацией не ниже следующей: процессор семейства Intel Core 2 Duo E8400; оперативная память с объемом 2 Гб; свободное дисковое пространство в размере 80 Гбайт.
Требования к ПО, необходимому для функционирования системы учета продовольствий на складе представлены в таблице 2.1.
Таблица 2.1 - Требования к ПО
Наименование ПО |
Версия |
|
MySQL Server |
5.5 |
|
MySQL Connector/ODBC |
8.0 |
|
Microsoft Windows |
8 и выше |
БД создана в графическом клиенте dbForge Studio for MySQL 8.1.45. В качестве средства разработки приложения и его компиляции использована среда разработки Embarcadero RAD Studio 10.3 Rio.
К характеристикам программы можно отнести время запуска и объем файлов программы. Время запуска программы составляет не более 10 секунд, объем файлов программы, до ввода в эксплуатацию равен 58,4 Мбайт.
Входными данными для программы являются БД и данные, введенные пользователем при работе с программой. Выходными данными являются данные, извлеченные из БД. Для сохранения целостности БД и корректной работы программы необходимо заполнять все обязательные поля. При игнорировании обязательных полей программа предупредит пользователя информационным сообщением и не сохранит введенные данные.
2.4 Краткое руководство пользователя
Для начала работы пользователю необходимо запустить приложение, после чего появится главное меню, представленное на рисунке 2.1. Форма авторизации в разрабатываемом приложении не предусмотрена.
Рисунок 2.1 - Главное меню
Пользователю следует определиться и выбрать соответствующую кнопку для перехода в одну из следующих форм: "Сотрудники", "Склад", "Сделка" или "Товар". В случае если пользователь хочет закончить работу с программой - ему потребуется нажать кнопку "Выход", после чего программа выведет диалоговое окно о подтверждении.
Диалоговое окно о подтверждении представлено на рисунке 2.2.
Рисунок. 2.2 - Подтверждение выхода из программы
Для ввода и редактирования сведений о сотрудниках пользователю необходимо нажать на кнопку "Сотрудники", в главном меню (рисунок 2.1), после чего на экране появится окно с возможностью ввода и редактирования сведений о сотрудниках предприятия. Также предусмотрен поиск записи, по ключевым словам, и печать отчета о сотрудниках (поиск записи, по ключевым словам, возможно осуществить на каждой форме). Для печати отчета о сотрудниках определенного филиала, необходимо нажать левой кнопкой мыши на запись с нужным филиалом и далее на кнопку "Печать отчета". Пример отчета представлен в приложении В. Окно "Сотрудники" представлено на рисунке 2.3.
Рисунок 2.3 - Сведения о сотрудниках
Если пользователю требуется ввести или изменить данные о наличии товаров, то ему необходимо нажать на кнопку "Склад" в главном меню. При нажатии на данную кнопку, откроется окно ввода данных о наличие товара на складах. Для печати отчета об остатках товара на складах, необходимо нажать на кнопку "Печать отчета". Пример отчета об остатках на складах представлен в приложении В. Окно ввода данных о товаре представлено на рисунке 2.4.
Рисунок 2.4 - Ввод и редактирование сведений о наличии товара
Для того чтобы внести или изменить данные о товарах, пользователю необходимо нажать на кнопку "Товары" в главном меню. При нажатии на данную кнопку, откроется форма с возможностью ввода актуальной информации о товаре (рисунок 2.5). Для печати прайса на товары, пользователю следует нажать на кнопку "Печать отчета". Для просмотра графика изменения цен на продукты необходимо левой кнопкой мыши нажать на нужный продукт и далее на кнопку "Показать график". Пример прайса на продовольствия и графика изменения цен на товар представлены в приложении В.
Рисунок 2.5 - Ввод и редактирование сведений о продовольствиях на складах
Для того чтобы внести или просмотреть данные о сделках, пользователю необходимо нажать на кнопку "Сделка" в главном меню. При нажатии на данную кнопку, откроется форма с содержанием, представленным на рисунке 2.6. Для печати отчета о сделках, необходимо нажать левой кнопкой мыши на запись с нужным филиалом и далее на кнопку "Печать отчета". Для просмотра статистики продаж товара (представленной в графике), необходимо выбрать запись с интересующим товаром и нажать на кнопку "Показать график" Пример отчета о сделках заданного филиала и графика продаж определенного товара представлен в приложении В.
Рисунок. 2.6 - Сведения о сделках
Для того чтобы удалить сделку пользователю необходимо нажать левой кнопкой мыши на нужную запись и далее на кнопку "Удалить". Откроется окно подтверждения действия, представленной на рисунке 2.7.
Рисунок. 2.7 - Подтверждение удаления записи
Для добавления сделки пользователь должен нажать на кнопку "Добавить", откроется форма с полями сведений о сделке, представленная на рисунке 2.8. Дата сделки фиксируется автоматически, исходя из даты, установленной на компьютере пользователя. После заполнения полей со сведениями о сделке, необходимо ее сохранить, нажав кнопку "Сохранить".
Рисунок. 2.8 - Добавление сделки
При необходимости редактировать сделку пользователю следует выбрать запись и нажать на кнопку "Редактировать", откроется окно, представленное на рисунке 2.9. После редактирования необходимо сохранить запись, нажав на кнопку "Сохранить".
Рисунок. 2.9 - Редактирование сделки
Для импорта данных о приходе товара необходимого товара по определенному критерию пользователю следует нажать на кнопку "Инструменты", в главном меню, далее "Импорт прихода из файла" (Файл должен быть формата MS Excel). Содержание открывшегося окна представлено на рисунке 2.10
Рисунок 2.10 - Импорт данных о приходе товара
2.5 Тестирование программного продукта
Тестирование программного продукта необходимо для проверки правильной работы функций, компонентов и всей программы в целом, до ее введения в эксплуатацию. Сам программист не сможет протестировать программу так, как это сделает реальный пользователь. В связи с этим на тестировании присутствовал обычный пользователь, имеющий базовые навыки в работе с офисными программами. По результатам тестирования: интерфейс программы интуитивен и достаточно понятен; структура программы логична и не путает пользователя; вся информация доступная пользователю является полной.
Программный продукт запускался на разных платформах, по несколько раз и с разными условиями вводимых значений. Полученные выходные данные являются верными. При тестировании реализованных бизнес-правил не было выявлено каких-либо ошибок. Кроме этого, проведено тестирование на обработку некорректных действий и вводимых данных. Все обработчики ошибок, которые предусмотрены в программе, срабатывают безошибочно и информируют пользователя, если он пытается нарушить логику программы.
Для каждого из компонента приложения проведено тестирование, все компоненты работают корректно, без сбоев и ошибок. Результаты тестирования представлены в таблице 2.2.
Таблица 2.2 - Результаты тестирования программы для учета квалификаций сотрудников
№ |
Цель испытания |
Объект |
Результат |
|
1 |
Проверить работу уникальных индексов |
Индексированные поля таблиц |
Создание записей с повторяющимися значениями в уникальных полях невозможно |
|
2 |
Проверить связи родительских и дочерних таблиц |
Ограничения полей таблиц |
Целостность таблиц не нарушена |
|
3 |
Проверить правильность выводимых данных в виде таблиц |
Компонент DBGrid |
Выводимые данные верны |
|
4 |
Проверить правильность результатов запросов |
Компонент ADOQuery |
Все компоненты активируются и отображают верные данные |
|
5 |
Проверить работу фильтров |
Свойство Filtered компонента ADOQuery |
Данные фильтруются в соответствии с заданными условиями |
|
6 |
Проверить правильность данных в отчетах |
Компонент frxReport |
Выводимые данные соответствуют данным в БД |
|
7 |
Проверить правильность данных в графиках |
Компонент DBChart |
Показатели на графиках соответствуют данным в БД |
Таким образом, по результатам тестирования видно, что все компоненты работают правильно, функции и обработчики отрабатывают верно, внешний вид программы удовлетворяет предполагаемого пользователя. Следовательно, программа для учета продовольствий на складе работает корректно.
Заключение
В результате выполнения курсовой работы разработана автоматизированная система учета продовольственных товаров.
В ходе курсовой работы был выполнен анализ основных аспектов в создании и обработки записей, а также выделены основные направления и тенденции в данной области. Осуществлен обзор программ для учета продовольственных товаров. Для обзора были выбраны наиболее популярная программы - "Склад и торговля", "Товар-Деньги-Товар", "Движение товара". Также выполнено концептуальное проектирование БД, сформирована таблица, описывающая сущности, а также построена ER-диаграмма. Построена логическая модель базы данных, выбрана целевая СУБД - MySQL 5.5. Выполнено физическое проектирование базы данных в системе управления базами данных, в ходе которого реализовано 9 таблиц.
Разработана структура программного продукта, выделены и реализованы бизнес-правила, составляющие основу программы, Конечный программный продукт содержит 10 форм, которые имеют простой и интуитивно понятный графический интерфейс, а также обеспечивают быстрый процесс пользования: добавление, редактирование данных, поиск по различным полям, фильтрацию по таблицам. Помимо этого, в программе реализованы 4 отчета и 2 графика, которые отражают данные об остатках товара на складах, о сотрудниках предприятия, о ценах на товары и данные о сделках (продажах). В процессе проектирования архитектуры программного продукта были выделены и реализованы на практике основные и специфичные функции. Написаны руководства программиста и пользователя, произведено тестирование программного продукта.
В результате проделанной работы получены практические знания по разработке приложения с использованием программы RAD Studio 10.3 Rio.
Список использованных источников
1. Официальный сайт "Склад и торговля" [Электронный ресурс]. Режим доступа: http://www.prostoysoft.ru/ProductsCount.htm (дата обращения: 15.05.2019).
2. Официальный сайт "Товар-Деньги-Товар" [Электронный ресурс]. Режим доступа: https://www.pvision.ru/tdt (дата обращения: 11.05.2019).
3. Официальный сайт "Движение товара" [Электронный ресурс]. Режим доступа: http://ivk.narod.ru/ (дата обращения: 11.05.2019).
4. Блог администратора. Администрирование MySQL [Электронный ресурс]. Режим доступа: https://interface31.ru/tech_it/2016/02/osnovy-administrirovaniya-mysql-pri-pomoschi-komandnoy-stroki.html (дата обращения: 26.05.2019).
5. Официальный сайт PostgreSQL [Электронный ресурс]. Режим доступа: https://www.postgresql.org/ (дата обращения: 20.05.2019).
6. Официальный сайт MySQL [Электронный ресурс]. Режим доступа: https://www.mysql.com/ (дата обращения: 20.05.2019).
7. Официальный сайт Microsoft SQL Server [Электронный ресурс]. Режим доступа: https://www.microsoft.com/ru-ru/sql-server/sql-server-2017-editions (дата обращения: 20.05.2019).
Блог программиста. Программирование и алгоритмы. Основы UML - диаграммы использования (user-case) [Электронный ресурс]. Режим доступа: https://pro-prof.com/archives/2594 (дата обращения: 26.05.2019).
Приложение А.
Техническое задание на разработку программного продукта
Введение
В настоящее время бумажный документооборот сводится к программной составляющей, в том числе и различные виды учета на предприятии. Необходим программный продукт для учета продовольственных товаров на складах малых предприятий. К тому же, программа должна быть мобильной и гибкой, чтобы подходить к разным предприятиям. В связи с этим разработка автоматизированной системы учета продовольственных товаров является актуальной.
Основание для разработки
Разработка программного продукта ведется на основании учебного плана СибГУ им. М.Ф. Решетнева.
Назначение разработки
Разрабатываемый программный продукт предназначен для ведения учета продовольственных товаров предприятия сотрудниками с разными уровнями компьютерной грамотности.
Требования к программе
Функциональные требования
Программа должна:
- обеспечить пользователю возможность ввода и редактирования сведений о товаре на складах;
- осуществлять редактирование и удаление информации о сотрудниках;
- позволять пользователю выполнять формирование отчетов об остатках товара на складе.
Помимо этого, для соответствия указанному назначению, состав выполняемых функций должен включать следующее:
- ввод и редактирование данных о товаре;
- ввод и редактирование данных об остатках товара на складе;
- ввод и редактирование данных о сделках;
- ввод и редактирование данных о сотрудниках;
Создаваемые отчеты в программе должны предоставлять следующую информацию:
- остатки продовольствий на складе;
- список сотрудников определенного филиала;
- цены на товары;
- список сделок за период времени;
Требования к надежности
В программе должен быть обеспечен контроль над вводом данных в текстовые поля. Возникновение каких-либо внутренних ошибок не должно приводить к утере данных. Программа должна иметь механизм обработки ошибок при вводе пользователем некорректных данных и сообщать, что нужно сделать для правильного функционирования программы.
Условия эксплуатации
Приложение рассчитано на эксплуатацию пользователями, с различными уровнями компьютерной грамотности.
Требования к составу и параметрам технических средств
- процессор по характеристикам не ниже Intel Core 2 Duo E8400;
- оперативная память - минимум 2 Гб;
- свободное дисковое пространство - минимум 80 Гбайт.
Требования к информационной и программной совместимости:
- операционная система Windows 7/8/10;
- система управления базами данных MySQL 5.5 (сервер);
- драйвер для связи приложения с базой данных MySQL Connector/ODBC 8.0 (сервер).
Стадии и этапы разработки
- Анализ процессов и проблем, связанных с учетом продовольствий на малых предприятиях.
- Обзор программного обеспечения для учета продовольственных товаров.
- Концептуальное проектирование базы данных.
- Логическое проектирование базы данных.
- Выбор целевой СУБД.
- Физическое проектирование базы данн...
Подобные документы
Составление схемы концептуальной модели данных. Разработка структуры реляционной базы данных и интерфейса пользователя. Особенности главных этапов проектирования базы данных. Способы реализации запросов и отчетов. Специфика руководства пользователя.
курсовая работа [186,9 K], добавлен 18.12.2010Концептуальное и инфологическое проектирование базы данных в системе управления базами данных Microsoft Access. Физическое проектирование базы данных "Магазин спорттоваров". Тестирование и отладка базы данных, составление руководства пользователя.
курсовая работа [6,7 M], добавлен 22.11.2022Анализ предметной области. Обзор программ-аналогов. Рассмотрение средств решения поставленной задачи. Проектирование структуры программы и базовых алгоритмов. Изучение руководства программиста и пользователя. Проектирование структуры базы данных.
курсовая работа [1,0 M], добавлен 14.11.2017Разработка базы данных, позволяющей определять месторасположение на полке и код товаров в магазинных складах, количество и качество товаров. Концепция баз данных. Модели данных, описание данных проектирования. Разработка программного приложения.
курсовая работа [1,1 M], добавлен 13.06.2014Роль оптовой торговли в рыночной экономике. Сортовой и партионный способы учета товаров. Организация бухгалтерского учета и документооборота на предприятии. Разработка базы данных для автоматизации учета переоценки стоимости товаров на оптовом складе.
дипломная работа [2,8 M], добавлен 15.01.2012Авторизация с каталогами проектирования базы данных магазина. Задачи базы данных: учет всех товаров, поиск и выдача данных о клиентах, адрес, телефоны, цена и наличие товара. Этапы проектирования базы данных. Схема данных, создание запросов и их формы.
реферат [1,6 M], добавлен 22.10.2009Инфологическая и даталогическая модели предметной области. Проектирование функциональной структуры приложения, защиты базы данных. Алгоритмы решения задачи и их реализация. Разработка инструкций для сопровождающего программиста и для пользователя.
курсовая работа [2,5 M], добавлен 20.11.2013Реализация приложения "Книжный магазин" средствами систем управления базами данных. Проектирование структуры базы данных, определение сущности и атрибутов. Логическое проектирование базы данных и реализация базы данных в СУБД Microsoft Office Access.
курсовая работа [7,8 M], добавлен 13.02.2023Опыт создания автоматизированных информационных систем. Разработка автоматизированной информационной системы для строительного предприятия ООО "СТК Дело". Этапы проектирования базы данных для учета хранения строительных материалов на складе предприятия.
курсовая работа [1,7 M], добавлен 15.03.2015Необходимая документация при учете готовой продукции на складе ООО "Перекрёсток". Проектирование базы данных на основе нормализации. Схема данных и связи между таблицами в проектируемой базе данных. Обеспечение безопасности и целостности базы данных.
дипломная работа [2,9 M], добавлен 15.01.2012Изучение процесса автоматизации системы управления складом и отчетами. Проектирование схемы отпуска товара со склада с помощью методологий структурного анализа. Выбор инструментальных средств. Разработка алгоритмов, базы данных и руководства пользователя.
дипломная работа [1,8 M], добавлен 09.11.2016Этапы проектирования базы данных. Инфологическое проектирование. Определение требований к операционной обстановке. Выбор СУБД и других программных средств. Логическое и физическое проектирование реляционной базы данных. Технология доступа к информации.
курсовая работа [2,3 M], добавлен 06.10.2016Регистрация и вход в Oracle Application Express, структура и взаимосвязь элементов базы данных. Создание запросов, основы для приложения, отчетов, диаграммы, главной страницы. Формирование руководства пользователя и листинг разработанной программы.
курсовая работа [2,8 M], добавлен 18.11.2013Проектирование приложения для базы данных "Оптовый склад" средней сложности с типовым пользовательским интерфейсом. Изучение особенностей ведения учета поставщиков, покупателей, продаж, движения товара на складе. Выборка, удаление таблиц из базы данных.
курсовая работа [424,1 K], добавлен 03.11.2014Создание базы данных, хранящей и обрабатывающей информацию о работе мебельного магазина. Описание предметной области, инфологическое, логическое и физическое проектирование. Разработка руководства пользователя. Назначение связей, нормализация отношений.
курсовая работа [2,7 M], добавлен 02.12.2012Проектирование и реализация базы данных для обеспечения автоматизированного учета результатов футбольного турнира. Осуществление логического, а также физического проектирования базы данных. Описание запросов на выборку и манипуляцию данными на языке SQL.
курсовая работа [1,9 M], добавлен 17.06.2012Типы данных, использованные при создании базы данных. Структура программы, используемые переменные, выражения и указатели. Концептуальное (инфологическое), логическое (даталогическое) и физическое проектирование. Тестирование программы и описание полей.
курсовая работа [398,4 K], добавлен 16.07.2012Разработка приложения, позволяющего автоматизировать документооборот предприятия по списанию основных средств. Мероприятия по защите и обеспечению целостности базы данных. Разработка клиентского приложения. Запросы к базе данных, руководство пользователя.
курсовая работа [700,0 K], добавлен 14.01.2015Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных.
курсовая работа [2,1 M], добавлен 08.06.2012Цель инфологического моделирования предметной области. Источники данных, базы данных и система управления, разработка модели. Принципы проектирования базы данных, концептуальная, логическая, материальная разработка. Типы сущностей, атрибутов и связей.
курсовая работа [188,6 K], добавлен 15.07.2012