Задача
В связи с этим, передо мной была поставлена следующая задача:
Разработать ПО для автоматизации учета цветов в магазине. С возможность подключения других торговых точек по всему городу.
Процесс выполнения работ
Для достижения поставленной задачи, обозначил план работ:
- Определить портрет пользователей и процесс их работы
- Выбрать языки программирования и технологии для разработки ПО
- Определить системные роли для управления системой
- Спроектировать интерфейс с учетом портрета пользователей и их процесса работы
- Реализовать ключевой функционал, который требовался для работы.
Подготовительный этап
Перед началом проведения работа, необходимо было провести анализ сотрудников для выявления основных данных по ним
В процессе анализа и опроса заказчика выяснил, что
- В компании большая часть людей мужчин и женщин в возрасте от 35-45 лет.
Используя эти данные, необходимо было спроектировать интерфейс и структуру системы таким образом, чтобы она была последовательной и понятной. Без возникновения проблем по ее использованию, со стороны сотрудников.
Составил карту с основными разделами и возможностями пользователей с определенной ролью в системе.
Схема разделов ПО и возможностей каждой роли системы
Роли системы
Определил 2 основные роли, которые будут в системе, это:
- Авторизованный – пользователь, у которого была возможность добавления на склад поступивших цветов и списание при продаже или при потере качества.
- Администратор – пользователь, у которого полный доступ к системе и управлению данными в ней.
Разработка проекта и инструменты
Для разработки проекта выбрал следующие инструменты:
- Язык программирования PHP — для серверной части проекта
- Библиотеку JQuery — для клиентской части
- Bootstrap 4 — для использования готовых компонентов, что позволяет быстро спроектировать базовый интерфейс системы
- Mindmeister — для составления ментальной карты, с разделами системы.
- Asana — менеджер для управления задачами по проекту
Главная страница
После авторизации в системе, пользователь попадает на данную страницу. На ней я вывел актуальные данные на текущий день. Где администратор и продавец, могут увидеть, сколько поступило за сегодня товара, по какой цене и времени.
Главная страница на которую попадает пользователь после авторизации
Страница «Склад»
На странице склад, расположил основную информацию о том: сколько всего товара на складе, сколько списано по какой-либо причине, сколько поступило и процент успешных доставок.
Страница «Склад»
Также разделил вывод на «Последние операции по товарам» и «Информация по категориям»
Во втором случае выводятся все категории, которые добавлены в систему, с указанием остатков товаров, которые включены в данную категорию.
Информация по категориям на странице «Склад»
При выборе категории, открывается модальное окно, в котором перечислен список товаров категории.
Товары в категории на странице склада
Проведение операции с товаром
Каждый сотрудник может провести операцию с товаром на складе. Для этого он переходит по кнопке «Новая операция» и в соответствие с задачей, выполняет операцию. К примеру, на поступление 10 штук роз 60 см, в категорию «Розы — Красные».
Новая операция с товаром на складе
Если при операции «Списание» товара на складе, то система выведет сообщение, что такой товар списать на текущий момент нельзя.
Ошибка при списании товара
После выполнения операции в таблице на главной странице склада появляется соответствующая отметка со статусом «Поступило», «Списано», «Доставка»
Добавление товара и категории в систему
Функция добавления нового товара и категории доступно только пользователю с ролью «Администратор».
Добавление товара в систему
Добавление категории в систему
Если у администратора большое количество товаров и категорий, то он может без проблем импортировать их из Excel файла.
Методология разработки проекта
В связи с тем, что необходимо было быстро разработать и внедрить систему, для получения первых результатов, использовал гибкую методологию разработки, адаптированную под внутренние процессы.
Благодаря такому подходу, реализовал ключевой функционал и получил необходимый результат в первые дни после внедрения данного ПО, в первую торговую точку. А для клиента сэкономил часть денег за счет того, что не разрабатывал лишний функционал системы.