Файл: "Транспортная доставка заказов" Проектирование реализации операций бизнес-процесса.pdf
Добавлен: 16.05.2023
Просмотров: 394
Скачиваний: 2
СОДЕРЖАНИЕ
1.1 Бизнес-процессы компании до введения системы
1.1.1 Бизнес-процесс заказа и доставки ингредиентов на склад
1.1.3 Степень автоматизации БП на момент «до введения системы»
1.2 Обзор логистического блока ERP системы
1.2.1 1С:Предприятие 8. TMS Логистика. Управление перевозками
1.2.2 1С:Предприятие 8. Центр спутникового мониторинга ГЛОНАСС/GPS
2.2.2 Описание структуры данных
2.2.3 Использование структуры данных в ИС
"1С:Предприятие 8. Центр спутникового мониторинга ГЛОНАСС/GPS" при необходимости может быть интегрирован как в типовые, так и в отраслевые решения на платформе "1С:Предприятие 8".
Система управления перевозками «1С:Предприятие 8. TMS Логистика. Управление перевозками» предоставляет основной функционал для управления логистикой, все жизненно важный функции для контроля и учета перевозок. Дополненная же «1С:Предприятие 8. Центр спутникового мониторинга ГЛОНАСС/GPS» она будет предоставлять всё необходимое для четкого мониторинга статусов всех доставок блюд клиентам. Для ресторана самым важным будет:
- Возможность регистрации предварительной потребности в перевозке грузов и контроля её последующей обработки.
- Возможность регистрации Заданий на перевозку грузов и контроля исполнения этих заданий.
- Возможность фиксирования факта прохождения точек маршрута
- Возможность контроля за процессом выполнения рейсов, включая состояние машины и постоянный мониторинг за её местоположением
- Визуализация информации на электронных картах
В целом система предоставляет всё необходимое для контроля за логистическим процессом ресторана, но она не учитывает некоторых возможностей бизнеса, которые при их появлении в системе могли бы стать важным подспорьем для ресторана, улучшив скорость и стабильность доставки. Так же можно интегрировать в систему некоторые недавно появившиеся сервисы для улучшения качества и возможностей системы, например, «Яндекс-пробки», сервис, который уже сейчас способен предсказывать образование пробок за час, что может быть критично для скорости доставки еды.
1.3 Постановка задачи
В работе будут рассмотрены лишь некоторые фрагменты БП, которые можно улучшить путем доработки программного обеспечения (ПО), что, в свою очередь, добавит новый функционал.
В качестве первого этапа необходимо доработать системы мониторинга положения машин и визуального отображения их на карте. «1С:Предприятие» способно выводить расположение машин на карту, но необходимо глубже интегрировать эти возможности с новыми разработками и некоторым комбинированием с другими системами.
- Включить в составление маршрутов для автомобилей такой сервис, как «Яндекс-Пробки». Думаю, можно не говорить, что в больших городах (например, Москве) пробки являются важным временным фактором для любой компании связанной с доставкой, особенно для ресторанов, развозящих по заказу еду. Любое промедление ухудшает сервис, поэтому необходимо сделать всё, чтобы уменьшить риск попадания в пробку. «Яндекс-Пробки» могут предоставить необходимую информацию, на основе которой можно рассчитать путь, свободный от пробок.
- Сейчас система может визуализировать положение автомобилей и их состояние, что упрощает контроль над ними. Но можно также в реальном времени визуализировать каждый новый заказ, поступивший в базу. Это упростит составление более коротких и эффективных маршрутов для диспетчеров и частично решит проблему отмены заказов, потому что можно будет найти клиента, который заказывал точно такое же блюда в радиусе досягаемости машины.
Во-вторых, необходимо упрощение БП путем интеграции разных систем друг с другом и в результате – уменьшение количества стадий в процессе. В БП доставки заказов есть пункт отправки заявок в учетный отдел, чтобы удостовериться в поступлении блюд для доставки на склад (рисунок 3). Это занимает время и требует выполнения множества однотипных операций. Намного проще выводить информацию о готовых к отправке блюдах на экран диспетчера, вкупе с информацией о месте их назначения. Это позволит упростить БП, убрав из него взаимодействие с учетным отделом на этой стадии.
.
Рисунок 3 Отправка заявок в учетный отдел
В-третьих, требуется увеличить скорость выполнения БП заказа и доставки ингредиентов путем внедрения у поставщиков специальной системы слежения за статусом выполнения заказов и плотной интеграции этой системы с системой-приемником у ресторана. После подачи заявки на ингредиенты ресторан вынужден ждать, пока заказ будет выполнен и придет оповещение от поставщика о возможности вывоза ингредиентов (рисунок 4), что может занять время, критичное для ресторана. В случае внедрения подобной системы ресторан сможет постоянно отслеживать статус своих заказов и отправлять машины за ингредиентами точно в срок, минуя возможные задержки.
Рисунок 4 Подача заявки
Для того чтобы достичь этой цели в первую очередь я планирую создать собственную простую систему слежения за объектами, которая сможет выполнять все вышеперечисленные улучшения. Она будет состоять из сервера, на котором будет располагаться основная часть ПО. В неё будут входить компоненты для слежения за машинами и визуализации информации о заказах, компонент для отслеживания статуса заказов по ингредиентам.
Устройств на Android OS, используемых для слежения за машинами и постоянной коммуникации с водителями. На этих устройствах будет программа-клиент, которая позволит отслеживать появление новых заказов, отображать карту и уведомления для водителей, так же оно будет предоставлять обратную связь с диспетчером.
2. ПРОЕКТНАЯ ЧАСТЬ
2.1 Описание программы
Программная реализация будет состоять из двух частей: сервера, расположенного на веб-хостинге и клиентское приложение, написанной под Android, которая устанавливается на планшетный компьютер.
2.1.1 Сервер
Сервер предоставляет основной функционал ИС, именно на нем и будет происходить вводу данных, их обработка и дальнейшая работа с ними. Сервер состоит из двух подпрограмм ориентированных на разные, пусть и взаимосвязанные задачи: на работу с поставщиками ингредиентов и на работу с клиентами.
Интерфейс работы с поставщиками предназначен для диспетчеров, которые находятся в постоянном взаимодействии с поставщиками и должны за минимальное время получить информацию о недостатке определенных ингредиентов от поваров или диспетчеров, отвечающих за связь с клиентами, и быстро сформировать и отправить заказ поставщику.
Часть, отвечающая за работу с клиентами, упрощает ввод данных о поступивших заказах, а так же предоставляет возможность мониторинга их состояния, вывода в отдельную форму заказов, подготовленных к транспортировке. Так же в ней присутствует интегрированный в приложение веб-сайт с встроенным функционалом Google Maps, который позволяют визуально планировать маршрут, одновременно получая информацию о положение курьеров и любых препятствиях на пути.
2.1.1.1 Функции
Функции, который должен выполнять сервер для полноценной работы информационной системы:
- Хранение информации в базе данных, поднятой на веб-хостинге (база будет работать на MS SQL)
- Хранение информации о бывших клиентах и их местоположении.
- Хранение информации об ингредиентах и их наличии на складе.
- Хранение библиотеки блюд и их рецептов.
- Хранение данных о поставщиках и степени доверия к ним.
- Хранение информации о текущих заказах.
- Хранение информации о текущих заявках на ингредиенты
- Изменение, дополнение и удаление информации, хранящейся в БД
- Визуализация информации о поступлении заказов на Google Maps, встроенных в форму сервера
- Автоматический мониторинг необходимости в ингредиентах и оповещение о необходимости заказа
- Создание заказа поставщикам и автоматический мониторинг его состояния
- Контроль за местоположением транспортных средств и поддержание связи с водителями
- Расчет оптимального маршрута для каждого транспортного средства с учетом пробок и прочих препятствий (реализовать с помощью сервисов Google Maps)
- Прогнозирование потребности ресторана в ингредиентах с целью ускорить выполнение заказов путем выполнение БП заказа ингредиентов до, а не после поступления заказа
- Мониторинг ингредиентов на складе по сроку годности
- Возможность для клиента отменить заказ, система должна иметь возможность оперативно сообщить поварам об отмене, либо, если блюдо уже готово, спроектировать новый маршрут для транспортного средства с целью доставки (при условии наличия такого же заказа у другого клиента) блюда в кратчайшие сроки.
2.1.1.2 Схема взаимодействия классов и объектов структуры сервера.
Рисунок 5. Схема классов сервера
Список классов и объектов:
- Login.cs – класс формы, отвечающей за аутентификацию пользователей и их вход в нужную часть системы.
- Customers.cs – класс формы, отвечающей за прием заказов от клиентов, обработку и распределению их по машинам. Так же отвечает за слежение за машинами
- Suppliers.cs - класс формы, отвечающей за взаимодействие с поставщиками и мониторинг как заказов поставщикам, так и запросов производственных подразделений.
- CustomerOrderWork.cs – класс формы, отвечающий за добавление\редактирование заказа клиента
- OrderWork.cs – класс формы, отвечающий за добавление\редактирование заказа поставщику на поставку ингредиентов
- CustomersAdd.cs – класс формы, отвечающий за добавление нового клиента в базу системы
- MealsChoose.cs – класс формы, отвечающий создание списка блюд, заказанных клиентом
- SuppliersAdd.cs – класс формы, отвечающий за добавление нового поставщика в систему
- ExecuteSQL.cs – класс, ответственный за работу с основной базой данных. Является посредником между БД и остальными классами приложения. Выполняет посланную в него команду и возвращает результирующий набор.
- ThreadWorking.cs – класс, отвечающий за работу с потоками в рамках приложения(каждый пользователь работает в своем потоке, некоторые долгие операции так же выполняются в отдельном потоке для того, чтобы можно было одновременно выполнять несколько операций)
- GlobalVariables.cs – класс, хранящий в себе все глобальные переменные, используемые в разных классах приложения
- User.cs – класс, создающий экземпляр для каждого пользователя и хранящий в себе данные о пользователе для использования в рамках приложения.
- Website – веб-сайт, несущий в себе функционал для работы в Google Maps. Встраивается в форму Customers.
- Database – основная БД, хранящая в себе данные, используемые в приложении. Базируется на веб-хостинге для обеспечения удаленного доступа к базе.
2.1.2 Клиент на Android
Программа предназначена для использования курьерами компании и предоставляет доступ к информации по маршруту, которая хранится на сервере для защиты от неавторизованного доступа. Так же приложение предоставляет обратную связь с диспетчером и используется для отслеживания положения курьера на карте города.
2.1.2.1 Функции
Функции программы клиента на Android:
- Агрегировать информацию о назначенных на транспортное средство заказах из БД и загружать её во внутреннюю память устройства
- Визуализировать информацию о назначенных заказах на Google Maps, в том числе и проложенный диспетчером маршрут
- Проверять обновления базы заказов в автоматическом режиме при наличии подключения к интернету
- Наличие обратной связи с сервером, позволяющей изменять статус заказов
- Недвусмысленно уведомлять водителя о любом изменении заказа в кратчайшее время
- Обеспечивать прямой канал связи с контролирующим диспетчером
2.1.2.2Схема взаимодействия классов и структурных объектов программы
Рисунок 6. Схема классов клиента
Список объектов:
- Main.java – основной класс приложения, контролирующий работу остальных классов приложения.
- FeedbackWork.java – класс, обеспечивающий обратную связь водителя с диспетчером, через текстовые сообщения, либо через звонок
- GlobalVariables.java – класс, хранящий в себе очень редко меняющиеся переменные, используемые во всем приложении и сильно влияющие на ход его выполнения.
- SQLWork.java - класс, обеспечивающий удаленную работу приложения с БД на сервере. Выполняет входящую команду и возвращает результирующий набор
- ConnectionWork.java – класс, обеспечивающий соединение программы с интернетом, для получения данных через мобильные сети.
- Internal Database - внутренняя база данных, хранящая в себе резервную копию самой необходимой водителю информации. Предназначена для ситуаций с отсутствием сигнала мобильных сетей, что не является большой редкостью даже в крупных городах
- External Database – внешняя база данных (база данных сервера), хранящая в себе основную информацию, используемую водителем для доставки.
- Website – веб-сайт с встроенным функционалом Google Maps для определения положения автомобиля и визуализации запланированного маршрута на карте с указанием возможных препятствий
2.2 Схема базы данных
База данных сервера должна будет хранить всю необходимую для работы системы информацию, при этом обеспечивая её целостность и непротиворечивость. Структура базы максимально упрощена (насколько возможно) и представлена на рисунке 7.