Проблема

Летом 2017 года, ко мне обратился собственник небольшой компании по продаже цветов и сопутствующих товаров.

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

Для решения этой задачи  необходимо было разработать ПО на заказ

Задача

В связи с этим, передо мной была поставлена следующая задача:

Разработать ПО для автоматизации учета цветов в магазине. С возможность подключения других торговых точек по всему городу.

Процесс выполнения работ

Для достижения поставленной задачи, обозначил план работ:

  1. Определить портрет пользователей и процесс их работы
  2. Выбрать языки программирования и технологии для разработки ПО
  3. Определить системные роли для управления системой
  4. Спроектировать интерфейс с учетом портрета пользователей и их процесса работы
  5. Реализовать ключевой функционал, который требовался для работы.

Подготовительный этап

Перед началом проведения работа, необходимо было провести анализ сотрудников для выявления основных данных по ним

В процессе анализа и опроса заказчика выяснил, что
  1. В компании большая часть людей мужчин и женщин в возрасте от 35-45 лет.
Используя эти данные, необходимо было спроектировать интерфейс и структуру системы таким образом, чтобы она была последовательной и понятной. Без возникновения проблем по ее использованию, со стороны сотрудников.
Составил карту с основными разделами и возможностями пользователей с определенной ролью в системе.
Схема разделов сайта - Цифровой Волк

Схема разделов ПО и возможностей каждой роли системы

Роли системы

Определил 2 основные роли, которые будут в системе, это:

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

Разработка проекта и инструменты

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

  1. Язык программирования PHP — для серверной части проекта
  2. Библиотеку JQuery — для клиентской части
  3. Bootstrap 4 — для использования готовых компонентов, что позволяет быстро спроектировать базовый интерфейс системы
  4. Mindmeister — для составления ментальной карты, с разделами системы.
  5. Asana — менеджер для управления задачами по проекту

Главная страница

После авторизации в системе, пользователь попадает на данную страницу. На ней я вывел актуальные данные на текущий день. Где администратор и продавец, могут увидеть, сколько поступило за сегодня товара, по какой цене и времени.

Главная страница АЦМ - Цифровой Волк

Главная страница на которую попадает пользователь после авторизации

Страница «Склад»

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

Страница склад АЦМ - Цифровой Волк

Страница «Склад»

Также разделил вывод на «Последние операции по товарам» и «Информация по категориям»

Во втором случае выводятся все категории, которые добавлены в систему, с указанием остатков товаров, которые включены в данную категорию.

Страница склад с выбором категорий - Цифровой Волк

Информация по категориям на странице «Склад»

При выборе категории, открывается модальное окно, в котором перечислен список товаров категории.

Товары в категории на странице склада - Цифровой Волк

Товары в категории на странице склада

Проведение операции с товаром

Каждый сотрудник может провести операцию с товаром на складе. Для этого он переходит по кнопке «Новая операция» и в соответствие с задачей, выполняет операцию. К примеру, на поступление 10 штук роз 60 см, в категорию «Розы — Красные».

Новая операция с товаром- Цифровой Волк

Новая операция с товаром на складе

Если при операции «Списание» товара на складе, то система выведет сообщение, что такой товар списать на текущий момент нельзя.

Ошибка при списании товара - Цифровой Волк

Ошибка при списании товара

После выполнения операции в таблице на главной странице склада появляется соответствующая отметка со статусом «Поступило», «Списано», «Доставка»

Добавление товара и категории в систему

Функция добавления нового товара и категории доступно только пользователю с ролью «Администратор».

Добавление товара в систему - Цифровой Волк

Добавление товара в систему

Добавление категории в систему - Цифровой Волк

Добавление категории в систему

Если у администратора большое количество товаров и категорий, то он может без проблем импортировать их из Excel файла.

Методология разработки проекта

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

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

Полученный результат

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

  1. Автоматизировали поступление и списание товара в цветочном магазине. Система автоматически все подсчитывает и избавляет сотрудника от этих действий
  2. Решение, которое можно масштабировать на несколько торговых точек. Объединить их в одну большую сеть.
  3. Использовали простой дизайн с минимум разделов.
  4. Реализовали необходимый функционал, что позволило получать первые результаты в первую неделю после запуска.

Антон Чураков
Автор публикации
Антон Чураков
Руководитель IT-компании "Цифровой Волк"
Разработчик на C# и .NET Core

Да, эта статья уже закончилась. Но ничего страшного, для тебя у нас есть еще пара статей

Ответы на вопросы
Как научиться видеть проблемы в многопоточном коде ПО используемых С#
01.08.2021 Антон Чураков  20 Просмотров

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

Технологии
Что входит в инфраструктуру SaaS. И в чем отличия между SaaS, IaaS и PaaS
31.07.2021 Антон Чураков  78 Просмотров

В предыдущей статье мы с вами разобрали, что такое облачный SaaS сервис и чем может быть полезен...

Ответы на вопросы
Нравится мобильная разработка, но боюсь что не найду работу. Стоит ли начать с JS в вебе
30.07.2021 Антон Чураков  20 Просмотров

Вопрос. Мне нравится мобильная разработка на Swift или Kotlin. Но боюсь, что не смогу найти работу когда изучу одну...

Ответы на вопросы
Как научиться правильно проектировать архитектуру будущего приложения
27.07.2021 Антон Чураков  30 Просмотров

Вопрос. Как правильно проектировать грамотную и легко поддерживаемую архитектуру приложения? Ответ....

Ответы на вопросы
Почему принято изначально разрабатывать проект с закрытым кодом
24.07.2021 Антон Чураков  40 Просмотров

Вопрос. Почему принято разрабатывать проект изначально с закрытым кодом. Даже если этот проект не является...

Технологии
Что такое облачный SaaS сервис и какую пользу он может принести бизнесу
23.07.2021 Антон Чураков  132 Просмотров

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