Если вы думаете, что сможете экспортировать BPMN из IBM, что сможете открыть его в Camunda Modeler, вас может ждать сюрприз. Как было обнаружено, экспорт IBM BPMN не включает в себя информацию о диаграммах, которую такие инструменты, как Camunda Modeler, используют для отображения диаграммы. В этом руководстве мы рассмотрим два подхода, используя утилиты, разработанные нашей командой консультантов, чтобы помочь вам создать полную диаграмму, которую можно открыть и просмотреть не только в Camunda Modeler, но и в любом BPMN-совместимом инструменте проектирования. Команда Camunda Consulting создала набор свободно доступных инструментов для миграции процессных потоков. Инструменты для миграции процессных потоков IBM можно найти здесь. Вы заметите, что в настоящее время есть два инструмента для IBM. Один — это BPMN-конвертер, а другой — Teamworks-файл, он же .twx конвертер. Сначала мы рассмотрим инструкцию по BPMN конвертеру, а затем перейдем к .twx конвертеру. Преобразователь BPMN можно найти здесь. Вы заметите, что это проект Maven, который можно открыть практически в любой интегрированной среде разработки. Eclipse и Intellij — две из самых популярных IDE. Но сначала вам нужно будет клонировать или скачать репозиторий инструментов миграции — это можно сделать здесь. Для этого руководства мы будем использовать Eclipse в качестве нашей IDE. Проект будет импортирован в ваше рабочее пространство. Возможно, вы захотите обновить любые различия в компиляторе Java между предоставленным кодом и вашим окружением, но он должен работать как есть. Далее мы создадим конфигурацию Run, которая позволит вам запустить конвертер в Eclipse: Теперь вам нужно предоставить два аргумента, первый — это экспорт BPMN из IBM, а второй — имя преобразованного файла. На всякий случай укажите путь и имена файлов в разделе Program arguments вкладки Arguments, заключенные в кавычки. Для начала будет предоставлен пример BPMN-файла. Для использования этого примера введите следующие данные для входного и выходного файлов: ”./src/main/resources/SampleBPMNfromIBM.bpmn”
 ”./src/main/resources/Converted.bpmn” Ваш экран должен выглядеть примерно так: Нажмите на Run. Должно открыться консольное окно, в котором вы увидите следующее: BPMN diagram generated Diagram ./src/main/resources/SampleBPMNfromIBM.bpmn converted from IBM BPMN and can be found at ./src/main/resources/Converted.bpmn Используя Camunda Modeler, откройте Converted.bpmn файл и среди вещей, которые вы заметите, будет 'swimlane', теперь 'pool' в Camunda BPMN, не совсем подходит как вы могли бы ожидать. Алгоритм просто задает произвольные значения высоты и ширины, и вам нужно будет соответствующим образом настроить размер дорожки. Следующее, что вы заметите, это то, что преобразованная диаграмма будет выглядеть не так, как оригинальная. Этого можно ожидать, так как в экспортированном BPMN нет ничего, что указывало бы на какие-либо координаты. Это будет рассмотрено в следующем разделе. Наконец, вы заметите, что потоки последовательности — это не типичные прямолинейные линии, а скорее простые линии точка-точка, которые при перемещении объектов будут меняться на более привычные прямолинейные линии. Вот пример процесса, созданного в Blueworks Live и экспортированного как BPMN: И вот процесс в Camunda Modeler после того, как отсутствующая диаграмма была сгенерирована и пул был соответствующим образом скорректирован: В следующем разделе мы рассмотрим другой инструмент, использующий другой формат экспорта IBM BPM, который сохранит точность исходной диаграммы. Если требуется точность диаграмм и вы можете экспортировать свои процессы в формат .twx (также известный как Teamworks), то инструмент миграции .twx — то, что нужно. Файл .twx — это формат обмена проектами для IBM BPM, который содержит информацию о диаграммах в своих zipped xml файлах. xml-файлы, описывающие процессы, похожи на BPMN-файлы, но, скорее всего, не являются BPMN-файлами. Проект, с которым мы будем работать, действительно содержит пример xml файла, но мы рассмотрим, как вы можете извлечь нужные файлы из своего twx-файла. Если вы уже клонировали/загрузили git-репозиторий, просто повторите шаги, описанные ранее, чтобы скопировать и открыть проект в рабочей области Eclipse. Вы даже можете использовать рабочую область, созданную ранее. Просто убедитесь, что инструмент .twx скопирован в отдельный каталог. Далее мы создадим конфигурацию Run для образца, включенного в проект. Снова щелкните правой кнопкой мыши по корневой папке проекта и выберите команду Run As > Run Configurations.... Дважды щелкните по Java Applications среди вариантов, указанных в диалоговом окне. Если вы используете ту же рабочую область, что и раньше, убедитесь, что в качестве проекта было выбрано создание BPMN из TWX-экспорта. Выполните поиск основного класса, хотя в этот раз вы можете увидеть несколько вариантов. Убедитесь, что в качестве основного класса выбран BPMNGenFromTWX. Далее нам понадобится предоставить два аргумента для класса, один для входа и один для вывода, как и раньше. ”./src/main/resources/TWXOriginal.xml” “./src/main/resources/TWXConverted.bpmn” Нажмите на Run. Должно открыться консольное окно, в котором вы увидите следующее: BPMN diagram generated Diagram ./src/main/resources/TWXOriginal.xml converted from IBM .twx export and can be found at ./src/main/resources/TWXConverted.bpmn Папка ресурсов содержит PNG файл (PictureOfProcess.PNG) оригинального процесса в IBM и будет выглядеть следующим образом: Используя Modeler, откройте TWXConverted.bpmn, и он должен выглядеть следующим образом: Как вы видите, используя подход экспорта .twx, вы можете сохранить точность исходной диаграммы, так как экспорт .twx содержит соответствующую информацию о диаграмме, хотя и не в BPMN-совместимой форме. Будут небольшие различия из-за стандартного масштабирования формы в IBM и Camunda. Далее мы обсудим, как вы можете извлечь свой процесс xmls из файла .twx и использовать эти данные в качестве входных данных инструмента. Файл .twx — это просто zip, и самый простой способ распаковать его — это изменить расширение с .twx на .zip и, используя свою любимую утилиту zip, распаковать содержимое в папку. После извлечения содержимого перейдите в корневую папку, а затем продолжите переход в папку /objects. Как вы увидите, она содержит ряд xml файлов, которые будут включать процессы вместе с потоками тренера. Обычно, процессы являются самыми большими файлами, и их имя начинается с "25", за которым следует длинная строка буквенно-цифровых символов. Откройте эти файлы-кандидаты в любимом текстовом редакторе. В самом начале файла вы увидите что-то вроде: Найдите процесс, который вы хотите преобразовать и сделайте копию файла, дайте ему простое имя, и используйте его в качестве входных данных для другого запуска инструмента. Вы также можете изменить имя выходного файла. Счастливого конвертирования! Если вы хотите просто создать jar-файл любой из утилит, у вас есть несколько вариантов: В любом случае (или используя предпочитаемый вами метод) вы должны получить jar-файл в папке /target. Скопируйте эту jar куда угодно и введите следующую команду в терминале: java -jar yourGeneratedJarFile.jar “your input file” “your output file” Вот так! Пожалуйста, не стесняйтесь оставлять отзывы на форуме и смотрите этот Git-репозиторий на дополнительные конвертеры по мере их появления. CRM, Angular, NestJs