|
||||||||
Статьи / Перенос процесса BPMN из IBM BPM в Camunda - пошаговое руководство21.07.2020 г., перевод статьи Joe Pappas Если вы думаете, что сможете экспортировать BPMN из IBM, что сможете открыть его в Camunda Modeler, вас может ждать сюрприз. Как было обнаружено, экспорт IBM BPMN не включает в себя информацию о диаграммах, которую такие инструменты, как Camunda Modeler, используют для отображения диаграммы. В этом руководстве мы рассмотрим два подхода, используя утилиты, разработанные нашей командой консультантов, чтобы помочь вам создать полную диаграмму, которую можно открыть и просмотреть не только в Camunda Modeler, но и в любом BPMN-совместимом инструменте проектирования. Команда Camunda Consulting создала набор свободно доступных инструментов для миграции процессных потоков. Инструменты для миграции процессных потоков IBM можно найти здесь. Вы заметите, что в настоящее время есть два инструмента для IBM. Один - это BPMN-конвертер, а другой - Teamworks-файл, он же .twx конвертер. Сначала мы рассмотрим инструкцию по BPMN конвертеру, а затем перейдем к .twx конвертеру. Руководство по конвертеру BPMNПреобразователь BPMN можно найти здесь. Вы заметите, что это проект Maven, который можно открыть практически в любой интегрированной среде разработки. Eclipse и Intellij - две из самых популярных IDE. Но сначала вам нужно будет клонировать или скачать репозиторий инструментов миграции - это можно сделать здесь. Для этого руководства мы будем использовать Eclipse в качестве нашей IDE.
![]() Проект будет импортирован в ваше рабочее пространство. Возможно, вы захотите обновить любые различия в компиляторе Java между предоставленным кодом и вашим окружением, но он должен работать как есть. Далее мы создадим конфигурацию Run, которая позволит вам запустить конвертер в Eclipse:
![]() Теперь вам нужно предоставить два аргумента, первый - это экспорт BPMN из IBM, а второй - имя преобразованного файла. На всякий случай укажите путь и имена файлов в разделе Program arguments вкладки Arguments, заключенные в кавычки. Для начала будет предоставлен пример BPMN-файла. Для использования этого примера введите следующие данные для входного и выходного файлов: ”./src/main/resources/SampleBPMNfromIBM.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, который сохранит точность исходной диаграммы. Преобразование IBM BPM .twx файлов экспортаЕсли требуется точность диаграмм и вы можете экспортировать свои процессы в формат .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. Ваши собственные процессы в IBM BPMДалее мы обсудим, как вы можете извлечь свой процесс xmls из файла .twx и использовать эти данные в качестве входных данных инструмента. Файл .twx - это просто zip, и самый простой способ распаковать его - это изменить расширение с .twx на .zip и, используя свою любимую утилиту zip, распаковать содержимое в папку. После извлечения содержимого перейдите в корневую папку, а затем продолжите переход в папку /objects. Как вы увидите, она содержит ряд xml файлов, которые будут включать процессы вместе с потоками тренера. Обычно, процессы являются самыми большими файлами, и их имя начинается с "25", за которым следует длинная строка буквенно-цифровых символов. Откройте эти файлы-кандидаты в любимом текстовом редакторе. В самом начале файла вы увидите что-то вроде: ![]() Найдите процесс, который вы хотите преобразовать и сделайте копию файла, дайте ему простое имя, и используйте его в качестве входных данных для другого запуска инструмента. Вы также можете изменить имя выходного файла. Счастливого конвертирования! Создание jar-файлаЕсли вы хотите просто создать jar-файл любой из утилит, у вас есть несколько вариантов:
В любом случае (или используя предпочитаемый вами метод) вы должны получить jar-файл в папке /target. Скопируйте эту jar куда угодно и введите следующую команду в терминале: java -jar yourGeneratedJarFile.jar “your input file” “your output file” Вот так! Пожалуйста, не стесняйтесь оставлять отзывы на форуме и смотрите этот Git-репозиторий на дополнительные конвертеры по мере их появления.
|
||||||||