Система управления ресурсами предприятия
Краткое описание проекта: система СПМ (англ. название «Lean SCMo ERP») компании Райтстеп (далее Заказчик) предназначена для управления производственно-логистическими цепочками (внутренними и внешними) промышленных предприятий.
СПМ (далее также Система) поддерживает как западную, так и российскую индустриальные модели, в т.ч. распределенных производств и кооперационного взаимодействия.
Позволяет строить ПС (Производственные Системы) на основе концепций: MRP-II (структура планов и объектов), SCM (методы планирования, оптимизация и управления цепочками), Lean (вытягивание, канбан, визуализация), TOC (планирование и приоритизации), APS (синхронное оптимизированное планирование производственно-логистической цепи), обновленная «Новочеркасская система Родова» (доработанное планирование через «картотеку пропорциональности», мониторинг через «график пропорциональности»), и др.
СПМ включает специфику современных аэрокосмических производств (длинные циклы, кооперация), производства специальных средств транспорта (конфигурирование, вытягивание под сборку), сложного приборостроения (многономенклатурное и многопередельное производство), судостроения (длинные циклы, параллельные проектирование-производство-сборка, огромное количество комплектующих), станкостроения и производства пром.оборудования. Также уверенно внедряется и применяется на относительно небольших (десятки/сотни человек) растущих предприятиях, позволяя эволюционно развиваться без смены платформы.
С учетом вышесказанного, разработчики СПМ предъявляют очень высокие требования к производительности как математических алгоритмов, так и интерфейсов: объемы обсчитываемых структур достигают на реальных проектах десятков миллионов единиц в каждом объекте (производимые предприятиями на различных горизонтах времени сложнейшие изделия, с учетом всех операций и перемещений, а также оптимизационные алгоритмы для обеспечения разрешения «конфликтов» при конкуренции за ресурсы).
Система управления ресурсами предприятия (СУР, далее система) предназначена для планирования, управления, мониторинга и анализа работы любого предприятия с использованием информационной системы. При работе с системой конечному пользователю не требуется устанавливать никакое дополнительное ПО, поскольку СУР работает прямо в браузере.
Кратко о функциональности системы:
- Ведение нормативно-справочной информации (НСИ). Система позволяет вести или импортировать данные об изделиях, ДСЕ, деталях, материалах; о технологических маршрутах, обеспечивая автоматизированными рабочими местами конструкторско-технологические службы, ПДО, службы МТС и др.
- Планирование и управление производством и поставками:
- Управление выпуском (долгосрочное планирование),
- Моделирование сложного распределенного производства и межзаводской кооперации,
- Синхронизированное планирование разработки – производства – поставок – кооперации,
- Обеспечение МТС, межзаводской кооперации по производству и поставкам,
- Оперативное планирование и управление производством.
- Мониторинг, KPI:
- On-line мониторинг производства/поставок по всей цепочке. В разрезе заказа/контракта/поставщика /кооператора/цеха/участка.
- От детального (для мастера) до сводного (для генерального директора), с возможностью “drill-down” до деталей и операций.
- Контроль общей синхронности работы заводов/цепочки поставок, визуализация экономики и эффективности работы в срезе синхронности и своевременности выполнения планов.
- Отчётность. Поддерживается сбор различной информации и выгрузка в виде XLSX-файлов (и др.форматов), в информативном для специалистов и руководителей виде, в различных разрезах.
- Открытость и удобство в использовании также и распространенных внешних средств отчетности и бизнес-аналитики.
- Поддержка ролевой модели управления доступом. Система позволяет гибко управлять уровнем доступа пользователей к различным функциям и данным.
Заказчик: компания “Райтстеп”:
Райтстеп (www.rightstep.ru) – консалтинговая и ИТ компания, фокусирующаяся исключительно на решении проблем в планировании и управлении производством и поставками.
Райтстеп – команда состоявшихся профессионалов. Основные эксперты и специалисты компании – вместе с 2003 года, с большим производственным и ИТ-опытом постановки и запуска в эксплуатацию систем управления на десятках промышленных предприятий.
Цель Райтстеп – сделать каждый производственный бизнес максимально эффективным. Обеспечить, прежде всего, быстрое выполнение заказов клиентов (в т.ч. и ГОС-), причем «точно вовремя», «точно в количестве», с минимальными производственными издержками и высокой производительностью.
Кратко об архитектуре:
С точки зрения реализации Система представляет собой web-приложение, состоящее из двух частей:
- HTTP-server сервисами, реализованными в стиле REST, с использованием Scala.
- 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.
Скриншоты:
Особенности проекта:
- До нашего появления на проекте у заказчика отсутствовал поставленный процесс тестирования системы.
- Заказчик ожидал от нас активное участие в организации постановки и отладки процессов по тестированию, формализации процессов, предложений и внедрения культуры тестирования, а также шаринга лучших практик нашего обширного опыта автоматизации.
- Работы были четко фазированы, каждый этап планировался и согласовывался с заказчиком и был ограничен дедлайном.
Результат проекта:
- За короткий период времени мы провели аудит ERP системы с последующей оценкой и выполнением работ по мануальному тестированию, переводу на автоматизацию тестирования.
- Разработан план по внедрению и автоматизации тестирования системы на проекте.
- Выполнено мануальное и автотестирование системы.
- Реализовано 158 автотестов.
- Разработан ряд инструкций для команд заказчика (мануалы, инструкции по подготовке к релизам).
- Проработан и внедрен workflow по автотестированию новой функциональности и повторному тестированию исправленных дефектов.
Достижения компании на проекте:
- Успешный опыт проработки детального плана по автоматизации тестирования системы с его последующим внедрением на проекте.
- Внедрение CI у заказчика.
Что делали на проекте, наши обязанности:
- Написали и внедрили план по внедрению и автоматизации тестирования, организовали и осуществили мануальное и автоматическое тестирование ERP системы.
- Написали базовый (60 тестов) и полный наборы тестов (158) для проведения smoke и регрессионного тестирования.
- Установили и запустили сервера Jenkins и TestLink, установили и настроили плагин для интеграции результатов из Jenkins в TestLink. Также в процессе работы была выполнена доработка исходного кода плагина под наши потребности.
- Проработали и применили схему порядка взаимодействия job на Jenkins.
- Создали шаблоны автотестов для последующего переиспользования.
- Организовали тестирование средствами TestLink.
- Выполнили рефакторинг тестов, на постоянной основе проводили анализ автотестов с их последующей актуализацией.
- Выполнили документирование процесса тестирования, создали ряд документов:
-
- чек-листы и тест-кейсы для мануального тестирования,
- инструкция поставок (релизов),
- требования к оформлению тест-кейсов,
- чек-лист в помощь ответственному за поставку релиза,
- пошаговый алгоритм тестирования системы.
Отзывы клиентов:
Светлана Питеркина, к.т.н., Директор по консалтингу, ООО “Райтстеп”, Москва, Россия
Совместно с командой JazzTeam ставили процессы мануального и автоматического тестирования в проекте разработки новой версии нашей информационной системы планирования и мониторинга производства и поставок (СПМ).
Начинали с чистого листа, во многом основываясь на опыте и компетенции команды JazzTeam.
В ходе работ ребята с готовностью погружались в предметную область, без понимания которой качественное решение задач было невозможным, делились своими знаниями и опытом. Вовлеченность в проект и заинтересованность в результате позволили строить работу с коллегами не как «Заказчик – Исполнитель», а как единой проектной команды.
Хочется отметить высокий профессиональный уровень команды в целом, как в технических областях, так и в общей культуре ведения проектной работы и общения.