Научный журнал
Вестник Алтайской академии экономики и права
Print ISSN 1818-4057
Online ISSN 2226-3977
Перечень ВАК

ФОРМИРОВАНИЕ АППАРАТНОГО И ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ РАЗРАБОТКИ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ ПЛАНИРОВАНИЯ ЗАКУПОК ТОРГОВОГО ПРЕДПРИЯТИЯ

Морозова Н.С. 1 Самойлова Т.Д. 1 Агеев А.В. 2
1 Липецкий филиал Финансового университета при Правительстве РФ
2 Орловский филиал Финансового университета при Правительстве РФ
Торговая деятельность является важной составляющей экономики любого государства. От ее правильной организации во многом зависят эффективность функционирования хозяйственного механизма страны и его отдельных отраслей. К проблемам организации бизнеса относится неверно выбранная политика управления запасами, которая является результатом стратегического планирования. Руководству часто приходится предпринимать набор действий и решений, которые ведут к разработке стратегий (политик управления запасами), предназначенных для достижения целей организации. Современные системы, способные решать задачу управлением запасами, либо слишком дорогие для недавно запущенного бизнеса, либо для прогнозирования спроса на будущий период используют очень простые методы, которые не дают высокой точности предсказания. В связи с данными обстоятельствами для решения проблемы управления запасами малого бизнеса было принято решение разработать автоматизированную систему планирования закупок торговых предприятий. В статье представлены результаты исследования планирования закупочной деятельности торгового предприятия. На основе анализа закупочной деятельности торгового предприятия было определено направление ее совершенствования, а именно разработка системы планирования закупок, использующая прогнозные модели спроса для формирования планов закупок. На основании проведенного анализа построена концептуальная и физическая модель данных. Описаны источники информации входных и выходных документов. Сформировано аппаратное и программное обеспечение, позволившее существенно упростить и ускорить процесс планирования закупок, обеспечивая более точные и надежные данные для принятия решений. Результаты внедрения и использования разработанной системы показали ее эффективность и практичность в использовании. Программа позволила существенно упростить и автоматизировать процессы планирования закупок на торговом предприятии, что в свою очередь ускорило процесс принятия решений и повысило качество планирования.
торговая деятельность
планирование закупок
концептуальная модель
физическая модель
фреймворк
автоматизированная система
1. Белан Л.С. Использование автоматизированных информационных систем для развития предпринимательства // Кооперативное предпринимательство: современное состояние и проблемы развития: Материалы Международной научно-практической конференции профессорско-преподавательского состава, практикующих специалистов, молодых учёных и студентов, Липецк, 27 марта 2018 года. Липецк: Липецкий государственный педагогический университет имени П.П. Семенова-Тян-Шанского, 2018. С. 142-148.
2. Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем: учебник. М.: Финансы и статистика, 2019. 350 с.
3. Горбунова А.И., Москвина И.Н. Применение информационных технологий в процессе планирования закупок на предприятии // Инновационное развитие экономики. 2019. Т. 9, № 2. С. 86-92.
4. Дмитриева Е.В. Информационные технологии в управлении закупками на предприятии // Инновации в управлении. 2018. № 4. С. 34-38.
5. Колесников А.С. Использование IT-технологий в управлении закупками на примере торгового предприятия // Инновации и инвестиции. 2020. № 2. С. 89-93.
6. Колесникова О.В. Сравнительный анализ систем управления закупками // Менеджмент в России и за рубежом. 2019. № 5. С. 96-102.
7. Смыслова О.Ю., Нестерова Н.Н. Новые тренды развития России в условиях глобальной трансформации // Научные труды Вольного экономического общества России. 2022. Т. 236, № 4. С. 55-77. DOI: 10.38197/2072-2060-2022-236-4-55-77.
8. Единая электронная торговая площадка (Росэлторг, АО ЕЭТП), национальный оператор электронных торгов. URL: https://www.roseltorg.ru/ (дата обращения: 08.08.2023).
9. Официальный сайт программы «1С» раздел «Планирование запасов». URL: https://v8.1c.ru/erp/tovarnoe-planirovanie/ (дата обращения 08.08.2023).

Введение

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

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

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

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

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

Материалы и методы исследования

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

Результаты исследования и их обсуждение

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

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

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

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

Построение концептуальной и физической модели данных является важным шагом в разработке автоматизированной системы планирования закупок. Она позволяет определить необходимые сущности и связи между ними, а также способы хранения данных в базе данных. Кроме того, правильно построенная модель данных облегчает дальнейшую разработку системы и уменьшает количество ошибок в процессе ее работы [1, 2].

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

Для создания концептуальной модели данных сначала необходимо определить пользователей системы и их внешнее представление данных [3]. Потом данные представления объединяются и формируют концептуальное представление.

Для построения моделей данных на могут быть использованы различные инструменты, например, ER-диаграммы, UML-диаграммы, а также специальные программы для моделирования данных [4].

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

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

Физическая модель данных является конкретной реализацией концептуальной модели в рамках выбранной СУБД. Она описывает способ хранения и организации данных в базе данных, а также связи между таблицами.

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

Основные элементы физической модели данных:

− таблицы. Это основные объекты хранения данных в базе данных. Каждая таблица представляет собой набор записей (строк), которые содержат информацию об объектах или событиях;

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

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

− индексы. Это объекты, которые ускоряют поиск и сортировку данных в таблицах. Они могут быть созданы для одного или нескольких полей таблицы;

− представления. Это объекты, которые позволяют создавать виртуальные таблицы на основе данных из одной или нескольких таблиц. Они могут использоваться для упрощения запросов и обеспечения безопасности доступа к данным.

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

Кроме того, необходимо уделять внимание надежности и безопасности хранения данных [5].

На основе концептуальной модели данных была создана физическая модель данных для торгового предприятия (рис. 2).

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

Физическая модель данных представляет собой конкретную реализацию концептуальной модели, учитывая специфику выбранной СУБД и ее требования к хранению и обработке данных.

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

missing image file

Рис. 1. Концептуальная модель данных Источник: составлено авторами

missing image file

Рис. 2. Физическая модель данных Источник: составлено авторами

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

Для работы системы необходимы компьютеры, которые должны удовлетворять следующим минимальным требованиям:

− процессор с тактовой частотой не менее 2 ГГц;

− оперативная память объемом не менее 4 Гб;

− видеокарта с поддержкой разрешения экрана 1280х1024;

− сетевая карта для подключения к локальной сети;

− жесткий диск HDD объемом 125 Гб.

При разработке системы планирования закупок торгового предприятия была использована операционная система Ubuntu версии 20.04. Выбор пал на семейство Linux из-за следующих преимуществ:

− дистрибутивы семейства Linux являются бесплатными;

− Ubuntu более безопасен по сравнению с другими известными операционными системами;

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

Для развертывания и управления приложениями была использована технология контейнеризации Docker.

При разработке системы планирования закупок торгового предприятия были использованы следующие фреймворки:

− фреймворк Vue.js для создания пользовательского интерфейса;

− фреймворк Symfony для разработки центрального узла программы – Gateway API;

− фреймворк Flask для реализации сервисов системы, основанных на языке программирования Python.

Для реализации базы данных системы была выбрана СУБД PostgreSQL. Postgres – это реляционная система управления базами данных с открытым исходным кодом, которая предлагает расширяемые функции, высокую надежность и поддерживает множество функциональных возможностей.

Для создания пользовательского интерфейса программы планирования закупок для торгового предприятия и центрального компонента системы использовалась среда разработки PhpStorm. Данная IDE идеально подходит для работы с Symfony и Vue.js. Редактор поддерживает рефакторинги и предотвращает ошибки в коде. Среда разработки интегрирована с системой контролей версий git. Также PhpStorm поддерживает удаленное развертывание, Docker, базы данных и т.д.

Для создания сервисов прогнозирования спроса и планирования закупок использовалась среда разработки PySharm. Данная IDE предлагает большой набор инструментов по умолчанию: инструмент запуска тестов, профилировщик Python, терминал, инструменты для работы с базами данных, системы контроля версий и т.д.

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

Центральный компонент системы для торгового предприятия – это программа Gateway API, она обрабатывает запросы, созданные клиентом из пользовательского интерфейса, и генерирует запросы в сервисы прогнозирования спроса и создания планов закупок. Данное приложение было разработано с помощью серверного языка программирования PHP. Данный язык является не единственным для создания динамических web-приложений, но был выбран из-за своих преимуществ, таких как:

− высокая скорость работы;

− простота в освоении на любом уровне;

− может использоваться в изолированной среде;

− имеет большое количество расширений.

Согласно официальной документации Symfony является одним из лучших Фреймворков для PHP.

Для работы с базами данных в программе Gateway API используется Doctrine ORM bundle. Это одна из лучших PHP библиотек для работы с реляционными базами данных, таких как MySQL, PostgreSQL. Данное расширение предоставляет следующий функционал:

− создание класса сущности. Doctrine самостоятельно сгенерирует необходимую структуру сущности. Для этого необходимо ввести команду make: entity и ответить на вопросы;

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

Для создания документации к API была задействована библиотека Nelmio Api Doc Bundle. Данный пакет генерирует документацию в формате второй версии OpenAPI на основании аннотаций к методам CRUD.

Методы CRUD (Create, Read, Update, Delete) являются стандартным набором операций, которые выполняются над данными в системе управления базами данных (СУБД) и других приложениях. Каждый метод соответствует одной из базовых операций, которые можно выполнить над данными:

− create (Создание): Создание новых записей в базе данных. Обычно осуществляется через INSERT в SQL или через форму веб-интерфейса приложения.

− read (Чтение): Чтение данных из базы данных. Обычно осуществляется через SELECT в SQL или через вызов соответствующего метода API.

− update (Обновление): Изменение существующих записей в базе данных. Обычно осуществляется через UPDATE в SQL или через форму веб-интерфейса приложения.

− delete (Удаление): Удаление существующих записей в базе данных. Обычно осуществляется через DELETE в SQL или через форму веб-интерфейса приложения.

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

Для создания фронтенд-приложения Vue Client для торгового предприятия, которое является пользовательским интерфейсом, был использован язык программирования JavaScript и язык для структурирования и представления данных html5.

JavaScript – интерпретируемый объектно-ориентированный язык, который применяется как язык сценариев веб-страниц. Для повышения производительности при разработки данного приложения использовался фреймворк Vue.js. Согласно официальной документации Vue.js – это прогрессивный JS-фреймворк для создания фронтенд приложений.

Для создания адаптивного дизайна интерфейса программы был задействован Bootstrap4. Это бесплатный HTML, CSS, JS фреймворк, позволяющий верстать сайты в несколько раз быстрее, чем на «чистом» CSS и HTML. После загрузки данной библиотеки в проект разработчику становятся доступны следующие элементы:

− мощная система сеток для создания адаптивного макета страниц;

− классы для стилизации элементов;

− готовые компоненты (кнопки, выпадающие списки, формы и т.д.).

Все сервисы разработанной системы для торгового предприятия написаны на языке Python. Это высокоуровневый объектно-ориентированный язык программирования, используемый для написания скриптов. В основном данный язык пользуется популярностью у аналитиков данных, потому что для Python разработано множество библиотек, которые помогают решать задачи, таких как кластеризация, классификация, анализ временных рядов и т.д. [7].

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

− pandas работы с файлами и таблицами;

− numpy для работы с многомерными массивами;

− statsmodels для создания статистических моделей Хольта-Винтерса и ARIMA;

− sklearn для анализа точностей построенных моделей.

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

− функции системы будут разрабатываться на разных языках;

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

Для функционирования системы необходимо следующее программное обеспечение: операционная система Ubuntu; PHP-модуль версии 7.2; менеджер пакетов composer; программа для создания изолированной среды для программ – Docker; средство для развертывания многоконтейнерных приложений – Docker compose.

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

− авторизация и регистрация клиентов;

− создание структуры продаваемой продукции предприятия;

− анализ данных о продажах товаров с помощью временных рядов, отличающийся автоматическим определением параметров временных рядов;

− прогнозирование спроса на продукцию с помощью временных моделей Хольта-Винтерса и ARIMA;

− определение необходимого объема товаров для закупки на основании прогнозируемого спроса;

− создание плана закупок продукцией с целью минимизации издержек предприятия;

− построение отчетов, включающих план закупок продукции и информацию о прогнозируемом спросе на этот товар.

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

Алгоритм функционирования программы представлен на рис. 3.

При реализации системы было разработано API для описания структуры приложения. Документация к API является открытым источником информации и предлагает клиентам список методов с описанием необходимой входной и выходной информацией.

Структура системы представлена в виде множества страниц: главная страница; страница с информацией о проекте; страница панели администрирования; страница документации API системы; страницы документации API сервисов; страница авторизации; страница регистрации; страница личного кабинета пользователя; страница с таблицей категорий; страница с таблицей файлов продаж; страница с таблицей отчетов о прогнозировании спроса; страница с формой создания отчета о прогнозировании спроса; страница просмотра отчета о прогнозировании спроса; страница с таблицей планов закупок; страница с формой создания плана закупок; страница просмотра плана закупок.

Взаимосвязь между страницами представлена на рис. 4.

Неавторизованным пользователям доступны только страницы с 1 по 6. После прохождения процедуры авторизации пользователь получает полный функционал работы с системой, а именно ему становятся доступны все страницы web-приложения.

Только администратор системы может попасть в панель администрирования, но для этого ему необходимо авторизоваться в приложении Gateway API, которое доступно на 81 порту.

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

Так на странице просмотра отчета о прогнозировании спроса указаны ссылки на связанные с ним планы закупок и файлы продаж.

Каждое из четырех приложений было развернуло в изолированной среде – Docker-контейнер. Их взаимосвязь представлена на рис. 5. Для взаимодействия с программами через протокол HTTP необходим веб-сервер, который будет обрабатывать запросы. В данной конфигурации элемент Nginx является веб-сервером для каждого приложения.

missing image file

Рис. 3. Блок-схема алгоритма функционирования системы Источник: составлено авторами

missing image file

Рис. 4. Карта сайта Источник: составлено авторами

Для сервисов, реализованных на языке программирования Python также используется wsgi-сервер Gunicorn. Он выступает в качестве главного процесса приложения и управляет рабочими процессами сервиса. При создании запроса в сервис он сначала будет обработан на веб-сервере Nginx потом передан главному процессу Gunicorn, который перенаправит запрос в свободный рабочий процесс программы.

Для сервера используется виртуальная машина с конфигурацией, описанной выше, с операционной системой Ubuntu. Требования к компьютеру обусловлены операционной системой.

На стороне клиента основное требование – стабильное подключение к интернету и поддержка его системы браузеров последних версий.

На рис. 6 представлена диаграмма развертывания системы.

Для запуска системы планирования закупок для торгового предприятия на стороне сервера необходимо запустить терминал из директории проектов и ввести команду make up.

Клиентская часть запускается из браузера, путем ввода URL адреса приложения.

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

− операционная система из семейства Linux;

− PHP-модуль версии 7.2;

− менеджер пакетов composer;

− программа для создания изолированной среды для программ – Docker;

− средство для развертывания многоконтейнерных приложений – Docker compose.

missing image file

Рис. 5. Диаграмма процессов Источник: составлено авторами

missing image file

Рис. 6. Диаграмма развертывания Источник: составлено авторами

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

Заключение

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

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

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

Результаты внедрения и использования системы в торговом предприятии позволили достичь следующие важные цели: 1) автоматизированная система позволила существенно упростить и ускорить процесс планирования закупок, обеспечивая более точные и надежные данные для принятия решений; 2) система повысила эффективность использования ресурсов предприятия, сократив издержки и минимизировав потери.

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


Библиографическая ссылка

Морозова Н.С., Самойлова Т.Д., Агеев А.В. ФОРМИРОВАНИЕ АППАРАТНОГО И ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ РАЗРАБОТКИ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ ПЛАНИРОВАНИЯ ЗАКУПОК ТОРГОВОГО ПРЕДПРИЯТИЯ // Вестник Алтайской академии экономики и права. – 2023. – № 10-3. – С. 364-376;
URL: https://vaael.ru/ru/article/view?id=3056 (дата обращения: 16.05.2024).