← Назад к вопросам
Описание бизнес-процесса в BPMN
1.8 Middle🔥 161 комментариев
#Диаграммы и моделирование#Методологии разработки
Условие
Опишите процесс обработки заказа в интернет-магазине от момента оформления до доставки.
Процесс включает:
- Оформление заказа клиентом
- Проверка наличия товара
- Оплата (онлайн или при получении)
- Комплектация заказа
- Передача в службу доставки
- Доставка и получение клиентом
- Обработка возвратов
Задача
Создайте BPMN-диаграмму процесса.
Что нужно сделать
- Определите участников процесса (pools/lanes)
- Опишите основной поток (happy path)
- Добавьте альтернативные сценарии
- Укажите точки принятия решений (gateways)
- Определите события начала и окончания
Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI23 мар. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Решение: BPMN-диаграмма процесса обработки заказа
1. Участники процесса (Pools & Lanes)
Основные участники (Pools):
-
Customer (Клиент)
- Инициирует процесс
- Оплачивает заказ
- Получает товар
- Может вернуть товар
-
E-commerce System (Интернет-магазин)
- Обрабатывает заказ
- Проверяет наличие товара
- Управляет платежами
- Генерирует отчеты
-
Warehouse (Склад)
- Комплектует заказ
- Отправляет в доставку
- Обрабатывает возвраты
-
Delivery Service (Служба доставки)
- Получает заказ
- Доставляет товар
- Передает клиенту
- Подтверждает доставку
-
Payment Gateway (Платежная система)
- Обрабатывает платежи
- Подтверждает транзакции
- Возвращает деньги
2. Основной поток (Happy Path)
Процесс: Обработка заказа в интернет-магазине
Шаг 1: Клиент оформляет заказ
├─ Клиент выбирает товары
├─ Вводит адрес доставки
├─ Выбирает способ доставки
└─ Система создает заказ (статус: "Pending")
Шаг 2: Проверка наличия товара
├─ Система запрашивает склад
├─ Склад проверяет наличие
├─ Все товары есть
└─ Статус: "Confirmed"
Шаг 3: Оплата
├─ Клиент выбирает способ оплаты
│ ├─ Онлайн (карта, e-wallet)
│ └─ При получении (COD)
├─ Если онлайн:
│ ├─ Система отправляет запрос в Payment Gateway
│ ├─ Платеж одобрен
│ └─ Статус: "Paid"
└─ Если COD: Статус: "Pending Payment"
Шаг 4: Комплектация заказа
├─ Склад получает уведомление
├─ Комплектовщик подбирает товары
├─ Проверяет соответствие заказу
├─ Упаковывает товары
└─ Сканирует штрих-код (создает отправку)
Шаг 5: Передача в доставку
├─ Система уведомляет доставку
├─ Курьер забирает заказ
├─ Сканирует штрих-код
└─ Статус: "In Transit"
Шаг 6: Доставка
├─ Курьер едет к клиенту
├─ Клиент получает товар
├─ Подписывает акт
└─ Статус: "Delivered"
Шаг 7: Завершение
├─ Если COD: Курьер собирает платеж
├─ Система создает акт (Invoice)
├─ Отправляет уведомление клиенту
└─ Статус: "Completed"
3. Альтернативные сценарии
Сценарий A: Товара нет в наличии
Шаг 2: Проверка наличия товара
├─ Товар 1: Есть (10 шт)
├─ Товар 2: НЕТ в наличии
└─ Система должна выбрать action:
Вариант A1: Отменить заказ
├─ Система отправляет уведомление клиенту
├─ Отпускает средства (если платеж уже сделан)
└─ Статус: "Cancelled"
Вариант A2: Частичная отправка
├─ Система предлагает отправить то что есть
├─ Остальное позже (backorder)
├─ Клиент подтверждает
└─ Продолжаем процесс для доступных товаров
Вариант A3: Ожидание поступления
├─ Заказ ставится в очередь
├─ Система уведомляет о задержке
├─ Когда товар поступает, продолжаем
└─ Статус: "On Hold"
Сценарий B: Ошибка платежа
Шаг 3: Оплата
├─ Платеж отклонен (insufficient funds)
├─ Или истекло время оплаты
└─ Система:
├─ Отправляет уведомление клиенту
├─ Предлагает повторить платеж
├─ Дает 24 часа на оплату
└─ Если не оплатит → Отмена заказа
Сценарий C: Возврат товара
После получения товара:
├─ Клиент решает вернуть товар
├─ Система:
│ ├─ Проверяет условия возврата (14 дней, неповрежденный)
│ ├─ Одобряет / Отклоняет возврат
│ └─ Если одобрено:
│ ├─ Выдает номер RMA (Return Merchandise Authorization)
│ ├─ Отправляет shipping label
│ └─ Клиент отправляет товар обратно
├─ Доставка:
│ ├─ Курьер забирает товар
│ └─ Доставляет на склад
├─ Склад:
│ ├─ Проверяет состояние товара
│ ├─ Если OK: одобряет возврат денег
│ └─ Если повреждено: отказывает частично
└─ Платежная система:
├─ Возвращает деньги клиенту
└─ Статус: "Refunded"
Сценарий D: Доставка невозможна
Шаг 5-6: Доставка
├─ Курьер приезжает, но:
│ ├─ Адрес неверный/не найден
│ ├─ Клиент недоступен (не открыл дверь)
│ └─ Клиент отказался
├─ Система:
│ ├─ Попытка доставки № 1
│ ├─ Попытка доставки № 2
│ └─ Попытка доставки № 3
├─ Если все неудачны:
│ ├─ Товар возвращается на склад
│ ├─ Если была оплата: возвращаем деньги
│ └─ Статус: "Delivery Failed"
└─ Клиент может:
├─ Исправить адрес и переотправить
└─ Или получить refund
4. Точки принятия решений (Gateways)
Gateway 1: Проверка наличия товара
Декision Point: Все товары доступны?
├─ ДА → Продолжаем комплектацию
├─ ЧАСТИЧНО → Предлагаем варианты (отмена, отправка частично, ожидание)
└─ НЕТ → Отмена или ожидание
Gateway 2: Способ оплаты
Decision Point: Как платить?
├─ Online Payment (карта, e-wallet)
│ ├─ Обрабатываем платеж
│ ├─ Если успех → Комплектация
│ └─ Если ошибка → Повтор или отмена
└─ Cash on Delivery
├─ Резервируем товар
└─ Отправляем (платеж при получении)
Gateway 3: Результат доставки
Decision Point: Доставка успешна?
├─ ДА → Завершение
├─ НЕТ (адрес неверный) → Уточнение адреса
├─ НЕТ (клиент недоступен) → Повторная попытка
└─ НЕТ (отказ) → Возврат или отмена
Gateway 4: Возврат товара (Request)
Decision Point: Заявка на возврат
├─ Проверка условий (дата, состояние)
├─ ОДОБРЕНО → Отправка shipping label
├─ ОТКЛОНЕНО → Уведомление клиента
└─ ЧАСТИЧНО → Возврат части средств
Gateway 5: Проверка возвращенного товара (Warehouse)
Decision Point: Состояние товара
├─ НОРМАЛЬНОЕ → Полный возврат денег
├─ ПОВРЕЖДЕНО → Частичный возврат (скидка на урон)
└─ НЕПРИГОДНЫЙ → Отказ в возврате
5. События начала и окончания
Начальные события (Start Events):
-
Happy Path Start
- Событие: Клиент нажал "Оформить заказ"
- Триггер: Пользователь в интернет-магазине
- Действие: Создание нового заказа в системе
-
Return Start
- Событие: Клиент инициировал возврат
- Триггер: Клиент нажал "Вернуть товар" в личном кабинете
- Действие: Создание заявки на возврат
Завершающие события (End Events):
-
Order Completed (Успешно)
- Условие: Товар доставлен и получен клиентом
- Статус: "Completed"
- Уведомление: Email с благодарностью, ссылка на отзыв
- Следующее: Мониторинг (может быть возврат)
-
Order Cancelled (Отменен)
- Условие: Отмена по инициативе клиента или системы
- Статус: "Cancelled"
- Действие: Возврат денег (если платеж сделан)
- Уведомление: Email с информацией об отмене
-
Delivery Failed (Доставка не удалась)
- Условие: После 3 попыток доставка не состоялась
- Статус: "Delivery Failed"
- Действие: Возврат товара на склад, возврат денег
- Уведомление: Email с предложением переоформить заказ
-
Return Completed (Возврат завершен)
- Условие: Товар получен складом, проверен, деньги возвращены
- Статус: "Refunded"
- Уведомление: Email с подтверждением возврата
- Сумма: На счет клиента
Текстовое описание BPMN-диаграммы
╔════════════════════════════════════════════════════════════════╗
║ BPMN: Процесс обработки заказа в интернет-магазине ║
╠════════════════════════════════════════════════════════════════╣
┌─────────────────────────────────────────────────────────────────┐
│ CUSTOMER POOL │
│ │
│ (Start) Order Placed → [Select Items & Checkout] │
│ │
│ │
│ (If Return) ← [Initiate Return Request] │
│ │
│ │
│ [Receive Package] → [End: Order Completed] │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ ECOMMERCE SYSTEM POOL │
│ │
│ ← Receive Order │
│ → [Create Order Record] │
│ → [Check Inventory] │
│ │
│ ◊ Decision: All items available? │
│ YES → [Confirm Order] │
│ NO → [Cancel Order] → [End: Cancelled] │
│ │
│ → [Request Payment] │
│ │
│ ◊ Decision: Payment method? │
│ ONLINE → [Send to Payment Gateway] │
│ COD → [Reserve Inventory] │
│ │
│ → [Notify Warehouse] │
│ │
│ ← Receive Delivery Confirmation │
│ → [Update Order Status to Delivered] │
│ → [Send Confirmation Email] │
│ → [End: Order Completed] │
│ │
│ ← Receive Return Request │
│ → [Validate Return Conditions] │
│ ◊ Decision: Return approved? │
│ YES → [Send RMA Number & Label] │
│ NO → [Send Rejection Email] │
│ → [End: Return Rejected] │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ PAYMENT GATEWAY POOL │
│ │
│ ← Receive Payment Request │
│ → [Process Payment] │
│ │
│ ◊ Decision: Payment successful? │
│ YES → [Send Confirmation] → [End] │
│ NO → [Send Error] → [End] │
│ │
│ ← Receive Refund Request │
│ → [Process Refund] │
│ → [Send Confirmation] → [End] │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ WAREHOUSE POOL │
│ │
│ ← Receive Pick List │
│ → [Pick Items] │
│ → [QC Check] │
│ → [Pack Order] │
│ → [Generate Shipping Label] │
│ → [Notify Delivery Service] │
│ │
│ ← Receive Return Package │
│ → [Inspect Returned Items] │
│ │
│ ◊ Decision: Item condition OK? │
│ YES → [Approve Refund] → [Notify Payment Gateway] │
│ NO → [Reject Refund] → [Notify Customer] │
│ → [End] │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ DELIVERY SERVICE POOL │
│ │
│ ← Receive Shipment │
│ → [Scan Package] │
│ → [Load for Delivery] │
│ → [Begin Transit] │
│ │
│ → [Attempt Delivery] │
│ ◊ Decision: Delivery successful? │
│ YES → [Get Signature] → [Send Confirmation] │
│ NO → [Attempt #2] │
│ ◊ If 3 fails → [Return to Warehouse] │
│ → [End] │
│ │
│ ← Receive Return Pickup Request │
│ → [Collect Package from Customer] │
│ → [Deliver to Warehouse] → [End] │
└─────────────────────────────────────────────────────────────────┘
Ключевые метрики процесса
| Метрика | Target | Текущее |
|---|---|---|
| Время от заказа до доставки | 2-3 дня | 2.5 дней |
| Процент успешных доставок с первой попытки | > 95% | 92% |
| Время обработки возврата | < 7 дней | 5 дней |
| Lead time для платежа (успех/ошибка) | < 5 мин | 3 мин |
| Процент отмен заказов | < 2% | 1.5% |
| Время на комплектацию | < 2 часов | 1.5 часов |