Skip to content

Техническое задание

на разработку программного комплекса «NARMAK»


Документ: Техническое задание (ТЗ)
Наименование системы: Программный комплекс автоматизации управления производственным предприятием «NARMAK»
Версия документа: 2.0
Дата: 2020 год (актуализировано: февраль 2026 г.)
Заказчик: [Наименование компании]
Разработчик: ИП [ФИО разработчика]


1. Общие сведения

1.1. Наименование системы

Программный комплекс автоматизации управления производственным предприятием «NARMAK» (далее — Система, ПК «NARMAK»).

1.2. Основание для разработки

Договор на разработку программного обеспечения № ___ от «_» _________ 20 г., заключённый между [Наименование компании] (Заказчик) и ИП [ФИО] (Разработчик).

1.3. Назначение системы

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

1.4. Плановые сроки разработки

  • Начало разработки: 2020 год
  • Поэтапное введение в эксплуатацию: 2020–2025 гг.
  • Система находится в активной стадии развития

2. Требования к системе

2.1. Требования к функциям системы

2.1.1. Модуль управления производством

  • Ведение производственных заданий с привязкой к заказам
  • Управление нормами расхода сырья и материалов
  • Диаграммы Ганта для планирования производственного графика
  • Отчёты по объёму выпуска продукции в разрезе номенклатуры, периодов, сотрудников
  • Управление производственными нуждами (потребностями в материалах)
  • Интеграция с BPM-движком Camunda для автоматизации регламентов
  • Учёт брака и несоответствий

2.1.2. Модуль управления складом

  • Адресное хранение: зонирование склада, ячейки, ряды
  • Управление остатками в разрезе SKU, партий, сроков годности
  • Операции: приёмка, отгрузка, перемещение, списание, инвентаризация
  • Поддержка сканирования штрих-кодов и QR-кодов (ZXing)
  • Мобильный интерфейс для складских работников
  • Интеграция с документооборотом (накладные, акты)

2.1.3. Модуль документооборота

  • Создание документов по настраиваемым шаблонам (накладные, акты, счета, договоры)
  • Генерация документов в форматах PDF (WeasyPrint) и Word (DocxTPL)
  • Электронное согласование документов (маршруты согласования через Camunda)
  • Связанные документы: автоматическое создание связанных записей
  • История версий и изменений документов
  • Электронный архив с поиском

2.1.4. Модуль управления продажами

  • Ведение базы клиентов (CRM)
  • Воронка продаж: лиды → предложения → заказы → отгрузки
  • Формирование коммерческих предложений
  • Управление заказами клиентов (статусы, позиции, условия оплаты)
  • Контроль дебиторской задолженности
  • Интеграция с маркетплейсами (Wildberries, Ozon)

2.1.5. Модуль управления закупками

  • Планирование закупок на основе потребностей производства и склада
  • Реестр поставщиков с оценкой
  • Заявки на закупку, согласование
  • Заказы поставщикам: создание, отправка, контроль исполнения
  • Сравнение коммерческих предложений от поставщиков

2.1.6. Финансовый модуль

  • Платёжный календарь: план и факт по платежам
  • Счета на оплату и контроль оплаты
  • Банковские выписки: загрузка и сверка
  • Управленческий учёт: центры финансовой ответственности
  • Межкомпанийные расчёты
  • Финансовая отчётность (P&L, Cash Flow, баланс)

2.1.7. Модуль управления контрагентами

  • Единый реестр клиентов и поставщиков
  • Юридические досье: реквизиты, документы, история взаимодействий
  • Автозаполнение реквизитов из DaData
  • Кредитные лимиты и условия работы
  • Личный кабинет контрагента (отдельное веб-приложение)

2.1.8. Модуль управления договорами

  • Реестр договоров с контрагентами
  • Статусы согласования договоров
  • Контроль сроков действия и пролонгации
  • Шаблоны договоров
  • Хранение скан-копий

2.1.9. Модуль интеграции с маркетплейсами

  • Двусторонняя синхронизация остатков с Wildberries и Ozon
  • Загрузка заказов с маркетплейсов в единую очередь обработки
  • Управление ценами на маркетплейсах
  • Аналитика продаж по каналам

2.1.10. HR-модуль (управление персоналом)

  • Организационная структура предприятия
  • Личный кабинет сотрудника
  • Учёт задолженностей сотрудников перед предприятием
  • Управление лидами по персоналу

2.1.11. ATS (Applicant Tracking System)

  • Воронка найма: вакансии → отклики → собеседования → оффер → найм
  • Карточки кандидатов с историей взаимодействий
  • Статусы и этапы подбора
  • Интеграция с источниками вакансий

2.1.12. LMS (Learning Management System)

  • Каталог учебных курсов
  • Треки развития сотрудников
  • Тесты и оценка знаний
  • Статистика прохождения обучения

2.1.13. TMS (Transport Management System)

  • Управление транспортными средствами
  • Планирование маршрутов доставки
  • Назначение водителей на рейсы
  • Учёт расходов на логистику

2.1.14. Модуль технического обслуживания (Plant Maintenance)

  • Реестр оборудования
  • Плановые графики технического обслуживания
  • Заявки на ремонт и их исполнение
  • История обслуживания оборудования

2.1.15. Модуль контроля качества

  • Чеклисты проверки качества продукции
  • HACCP-журналы для пищевого производства
  • Акты несоответствий и претензий
  • Аналитика по браку

2.1.16. Модуль коммуникаций и уведомлений

  • Внутренние обсуждения, привязанные к объектам системы (документам, задачам)
  • Интеграция с Telegram: бот для уведомлений и быстрых ответов
  • Push-уведомления в браузере (WebSocket)
  • Email-уведомления о событиях

2.1.17. Модуль аналитики и отчётности

  • Управленческие дашборды с ключевыми показателями
  • Настраиваемые отчёты в форматах Excel (OpenPyXL) и PDF
  • Диаграммы Ганта по производству и проектам
  • Задачи и управление проектами

2.2. Требования к надёжности

  • Доступность системы: не менее 99,5% в рабочее время
  • Время восстановления после сбоя: не более 30 минут
  • Резервное копирование данных: ежедневное автоматическое
  • Целостность данных: транзакционная обработка на уровне СУБД

2.3. Требования к производительности

  • Время отклика на запросы пользователя: не более 3 секунд при стандартной нагрузке
  • Одновременная работа: не менее 100 пользователей
  • Хранение данных: не менее 5 лет без деградации производительности

2.4. Требования к безопасности

  • Аутентификация: JWT-токены (JSON Web Tokens)
  • Авторизация: ролевая модель доступа (RBAC) — управление правами на уровне модулей и объектов
  • Шифрование данных при передаче: HTTPS (TLS 1.2+)
  • Журналирование действий пользователей
  • Изоляция данных разных организаций (мультиарендность)

2.5. Требования к масштабируемости

  • Горизонтальное масштабирование серверной части
  • Использование Redis для кэширования и управления сессиями
  • Kafka — для асинхронной обработки событий при высокой нагрузке
  • Контейнеризация (Docker) для развёртывания

3. Требования к архитектуре

3.1. Общая архитектура системы

┌─────────────────────────────────────────────────────────┐
│                    Клиентский уровень                   │
│  Web Browser (Angular PWA)  │  Mobile (PWA/Responsive)  │
└───────────────────┬─────────────────────────────────────┘
                    │ HTTPS / WebSocket
┌───────────────────▼─────────────────────────────────────┐
│                    Серверный уровень                    │
│  Django 5.1 + DRF   │   Daphne (ASGI/WebSocket)        │
│  Celery Workers     │   Django Channels                 │
└───────┬─────────────────────────────┬───────────────────┘
        │                             │
┌───────▼────────┐       ┌────────────▼──────────────────┐
│  PostgreSQL    │       │  Redis (Cache + Broker)       │
│  (основная БД) │       │  Apache Kafka (Event Bus)     │
└────────────────┘       └───────────────────────────────┘

┌───────▼──────────────────────────────────────────────┐
│               Внешние интеграции                     │
│  Camunda BPM  │  Telegram Bot  │  DaData  │  Ozon    │
│  Wildberries  │                                      │
└──────────────────────────────────────────────────────┘

3.2. Технологический стек

Backend

КомпонентТехнологияВерсия
Язык программированияPython3.10+
Веб-фреймворкDjango5.1.4
REST APIDjango REST Framework3.15.2
WebSocketDjango Channels / Daphne4.0.0
Асинхронные задачиCelery5.2.3
СУБДPostgreSQL14+
Кэш / БрокерRedis7+
Шина данныхApache Kafka
BPMCamunda7.x
Генерация PDFWeasyPrint66.0
Генерация WordDocxTPL0.16.7
ExcelOpenPyXL3.0.10
МессенджерPyTelegramBotAPI4.7.1
РеквизитыDaData21.10.1
API-документацияDRF YASG (Swagger)1.21.4

Frontend

КомпонентТехнологияВерсия
ФреймворкAngular18.0.0
МонорепозиторийNx
Управление состояниемAkita8.0.1
UI-библиотекаPrimeNG17.18.15
UI-библиотекаTaiga UI3.95.2
CSS-фреймворкBootstrap5.2.3
РеактивностьRxJS7.5.0
Динамические формыFormly6.3.1
ГрафикиChart.js / ApexCharts / D3.js4 / 3 / 7
PDF-генерацияjsPDF2.5.1
ExcelXLSX0.18.5
Редактор текстаQuill / TinyMCE1.3.7 / 8.0.1
QR-кодыZXing
OCRTesseract.js5.1.0

3.3. Принципы разработки

  • Feature-Based Architecture — организация кода по функциональным доменам
  • Screaming Architecture — структура кода явно отражает бизнес-предметную область
  • SOLID — принципы объектно-ориентированного проектирования
  • KISS — минимизация сложности решений
  • Dependency Injection — инверсия зависимостей для тестируемости и гибкости

3.4. Open Source компоненты

Система использует следующие open source библиотеки и фреймворки:

КомпонентЛицензияНазначение
DjangoBSD-3-ClauseВеб-фреймворк Backend
Django REST FrameworkBSD-2-ClauseREST API
CeleryBSDАсинхронные задачи
RedisBSDКэш, брокер сообщений
PostgreSQLPostgreSQL LicenseСУБД
Django ChannelsBSDWebSocket
PandasBSDОбработка данных
NumPyBSDМатематические вычисления
WeasyPrintBSDГенерация PDF
AngularMITFrontend-фреймворк
RxJSApache 2.0Реактивное программирование
PrimeNGMITUI-компоненты
Taiga UIApache 2.0UI-компоненты
Chart.jsMITГрафики
D3.jsISCВизуализация данных
Tesseract.jsApache 2.0OCR
Camunda BPMApache 2.0BPM (Community Edition)
Apache KafkaApache 2.0Шина данных

Все используемые open source компоненты имеют лицензии, допускающие коммерческое использование.


4. Требования к интерфейсу пользователя

  • Веб-интерфейс: современный SPA (Single Page Application) на Angular
  • Адаптивный дизайн: поддержка экранов от 768px (планшеты) до 4K мониторов
  • Поддержка браузеров: Chrome, Firefox, Safari, Edge (последние 2 версии)
  • Язык интерфейса: русский
  • Доступность: соответствие базовым стандартам WCAG 2.1 Level A
  • Тёмная / светлая тема (в зависимости от приложения)
  • Rich Text редактор для текстовых полей (Quill/TinyMCE)
  • Работа в режиме реального времени (WebSocket): обновление данных без перезагрузки страницы

5. Порядок сдачи-приёмки работ

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

Критерии приёмки:

  • соответствие реализованной функциональности требованиям настоящего ТЗ;
  • отсутствие критических ошибок, препятствующих использованию функций;
  • наличие исходного кода в системе контроля версий (Git).

Техническое задание составлено: 2020 год
Актуализировано: февраль 2026 г.

Заказчик: [Наименование компании] / [ФИО руководителя] / _______________
Разработчик: ИП [ФИО] / _______________