En

JazzTeam Software Development Company

Agile Java Development

Система управления ресурсами предприятия

Описание проекта

Система СПМ

Система СПМ (англ. Название «Lean SCMo ERP») компании Райтстеп (далее Заказчик) предназначена для управления производственно-логистическими цепочками (внутренними и внешними) промышленных предприятий.

СПМ (далее также Система) поддерживает как западную, так и российскую индустриальные модели, в т.ч. распределенных производств и кооперационного взаимодействия.

Позволяет строить ПС (Производственные Системы) на основе концепций: MRP-II (структура планов и объектов), SCM (методы планирования, оптимизация и управления цепочками), Lean (вытягивание, канбан, визуализация), TOC (планирование и приоритизации), APS (синхронное оптимизированное планирование производственно-логистической цепи), обновленная «Новочеркасская система Родова» (доработанное планирование через «картотеку пропорциональности», мониторинг через «график пропорциональности»), и др.

СПМ включает специфику современных аэрокосмических производств (длинные циклы, кооперация), производства специальных средств транспорта (конфигурирование, вытягивание под сборку), сложного приборостроения (многономенклатурное и многопередельное производство), судостроения (длинные циклы, параллельные проектирование-производство-сборка, огромное количество комплектующих), станкостроения и производства пром.оборудования. Также уверенно внедряется и применяется на относительно небольших (десятки/сотни человек) растущих предприятиях, позволяя эволюционно развиваться без смены платформы.

С учетом вышесказанного, разработчики СПМ предъявляют очень высокие требования к производительности как математических алгоритмов, так и интерфейсов: объемы обсчитываемых структур достигают на реальных проектах десятков миллионов единиц в каждом объекте (производимые предприятиями на различных горизонтах времени сложнейшие изделия, с учетом всех операций и перемещений, а также оптимизационные алгоритмы для обеспечения разрешения «конфликтов» при конкуренции за ресурсы).

Система управления ресурсами предприятия (СУР, далее система) предназначена для планирования, управления, мониторинга и анализа работы любого предприятия с использованием информационной системы. При работе с системой конечному пользователю не требуется устанавливать никакое дополнительное ПО, поскольку СУР работает прямо в браузере.

Кратко о функциональности Системы

  1. Ведение нормативно-справочной информации (НСИ). Система позволяет вести или импортировать данные об изделиях, ДСЕ, деталях, материалах; о технологических маршрутах, обеспечивая автоматизированными рабочими местами конструкторско-технологические службы, ПДО, службы МТС и др.
  2. Планирование и управление производством и поставками:
    • Управление выпуском (долгосрочное планирование),
    • Моделирование сложного распределенного производства и межзаводской кооперации,
    • Синхронизированное планирование разработки - производства - поставок - кооперации,
    • Обеспечение МТС, межзаводской кооперации по производству и поставкам,
    • Оперативное планирование и управление производством.
  3. Мониторинг, KPI:
    • On-line мониторинг производства/поставок по всей цепочке. В разрезе заказа/контракта/поставщика /кооператора/цеха/участка.
    • От детального (для мастера) до сводного (для генерального директора), с возможностью “drill-down” до деталей и операций.
    • Контроль общей синхронности работы заводов/цепочки поставок, визуализация экономики и эффективности работы в срезе синхронности и своевременности выполнения планов.
  4. Отчётность. Поддерживается сбор различной информации и выгрузка в виде XLSX-файлов (и др.форматов), в информативном для специалистов и руководителей виде, в различных разрезах.
  5. Открытость и удобство в использовании также и распространенных внешних средств отчетности и бизнес-аналитики.
  6. Поддержка ролевой модели управления доступом. Система позволяет гибко управлять уровнем доступа пользователей к различным функциям и данным.

Заказчик: компания "Райтстеп"

Райтстеп (www.rightstep.ru) – консалтинговая и ИТ компания, фокусирующаяся исключительно на решении проблем в планировании и управлении производством и поставками.

Райтстеп - команда состоявшихся профессионалов. Основные эксперты и специалисты компании - вместе с 2003 года, с большим производственным и ИТ-опытом постановки и запуска в эксплуатацию систем управления на десятках промышленных предприятий.

Цель Райтстеп – сделать каждый производственный бизнес максимально эффективным. Обеспечить, прежде всего, быстрое выполнение заказов клиентов (в т.ч. и ГОС-), причем «точно вовремя», «точно в количестве», с минимальными производственными издержками и высокой производительностью.

Кратко об архитектуре

С точки зрения реализации Система представляет собой web-приложение, состоящее из двух частей:

  1. HTTP-server сервисами, реализованными в стиле REST, с использованием Scala.
  2. Frontend, реализованный с использованием Vue.js.

При работе с Системой конечным пользователям не требуется устанавливать никакое дополнительное ПО, поскольку СПМ работает в web-браузерах.

Пользователи взаимодействуют с данными, представленными как в табличной форме, так и в виде интерактивной инфографики (диаграммы). При этом взаимодействии могут выполняться CRUD операции, в результате чего формируются запросы, которые отправляются в виде HTTP-запросов в Backend.

Далее, на стороне Backend выполняется анализ корректности данных и сохранение в БД. Во Frontend возвращается ответ с данными в универсальном для приложения формате, который преобразуется для отображения на стороне пользователя (во Frontend) интерфейсных форм.

При работе разные части приложения могут находиться физически в разных местах, т.к. Frontend легковесный и может работать практически на любых конфигурациях. Backend же, наоборот, очень требователен к ресурсам, т.к. на нём выполняются все бизнес-функции.

Проверка корректности данных проводится как на стороне Frontend-а: корректность введенных данных, проверка математических операций и т.д, так и на стороне Backend: корректность полученных данных, вычислений значений бизнес-функции и прочее.

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

Технологии

Stack: Java SE 8, Scala, Node.js, JavaScript.
Frameworks: Vue.js.
Infrastructure: Jenkins, Git, TestLink, Redmine, Confluence, IntelliJ IDEA.
DB: PostgreSQL.
Test libraries: Mocha, Cucumber.
Other libraries: Selenium WebDriver, Selenium-Js, Axios, Moment, Chai, Faker.js, log4js.
Protocols: REST, Http.

Скриншоты

Особенности проекта

Результат проекта

Достижения компании на проекте

Что делали на проекте, наши обязанности

  1. Написали и внедрили план по внедрению и автоматизации тестирования, организовали и осуществили мануальное и автоматическое тестирование ERP системы.
  2. Написали базовый (60 тестов) и полный наборы тестов (158) для проведения smoke и регрессионного тестирования.
  3. Установили и запустили сервера Jenkins и TestLink, установили и настроили плагин для интеграции результатов из Jenkins в TestLink. Также в процессе работы была выполнена доработка исходного кода плагина под наши потребности.
  4. Проработали и применили схему порядка взаимодействия job на Jenkins.
  5. Создали шаблоны автотестов для последующего переиспользования.
  6. Организовали тестирование средствами TestLink.
  7. Выполнили рефакторинг тестов, на постоянной основе проводили анализ автотестов с их последующей актуализацией.
  8. Выполнили документирование процесса тестирования, создали ряд документов:

Отзывы клиентов:

Светлана Питеркина, к.т.н., Директор по консалтингу, ООО "Райтстеп", Москва, Россия

Совместно с командой JazzTeam ставили процессы мануального и автоматического тестирования в проекте разработки новой версии нашей информационной системы планирования и мониторинга производства и поставок (СПМ).

Начинали с чистого листа, во многом основываясь на опыте и компетенции команды JazzTeam.

В ходе работ ребята с готовностью погружались в предметную область, без понимания которой качественное решение задач было невозможным, делились своими знаниями и опытом. Вовлеченность в проект и заинтересованность в результате позволили строить работу с коллегами не как «Заказчик – Исполнитель», а как единой проектной команды.

Хочется отметить высокий профессиональный уровень команды в целом, как в технических областях, так и в общей культуре ведения проектной работы и общения.