Programování

Spravujte své obchodní procesy pomocí JBoss jBPM

Podniky usilovně hledaly strukturovaný přístup k navrhování obchodních akcí / transakcí a jejich provádění přednostně pomocí automatizovaných procesů. Správa podnikových procesů (BPM) a správa pracovních toků nabízejí řešení tohoto problému pomocí konceptů, jako jsou akce, úkoly a toky.

Tento článek představuje BPM a popisuje techniky a nástroje k posílení podnikových systémů pomocí BPM a správy pracovního toku pomocí JBoss jBPM.

Termín řízení podnikových procesů obvykle odkazuje na soubor činností, které mohou podniky využívat k automatizaci a optimalizaci obchodních procesů způsobem přizpůsobitelným dynamicky se měnícím prostředím. Tyto činnosti obvykle hledají pomoc u softwarového inženýrství a nástrojů; termín BPM se proto často používá přímo k označení technických technik a nástrojů.

BPM je ztělesněno ve třech odlišných postupech:

  1. Návrh procesu: Úkol navrhovat stávající a nové procesy
  2. Provedení procesu: Provádění automatizovaného sledu souvisejících událostí zahrnujících softwarové procesy a / nebo lidské činnosti
  3. Monitorování procesu: Dodržování a auditování stavu jednotlivých procesů, aby bylo možné zaznamenávat, vykazovat a optimalizovat statistiky a výkon těchto procesů

BPM usiluje o to, aby softwaroví inženýři mohli sdílet stejné koncepty a rámce jako obchodní analytici; v důsledku toho se prodejci softwaru pokusili vytvořit nástroje, které podnikům umožní zachytit, navrhnout a optimalizovat obchodní procesy pomocí nástrojů grafického modelování, jazyků specifických pro doménu a proprietárních aplikací.

JBoss jBPM 3.0 poskytuje schopnost vyvíjet nové automatizované obchodní procesy a pracovní toky s průmyslovou standardní orchestrací pomocí Business Process Execution Language (BPEL), flexibilního a připojitelného rozhraní API, nativního jazyka pro definici procesu a nástroje pro grafické modelování.

JBoss jBPM je open source (licence LGPL) rámec Java API, nástrojů a definičního jazyka, který může fungovat jako webová aplikace nebo samostatná Java aplikace. JBoss jBPM funguje jako prostředník mezi obchodními analytiky a vývojáři tím, že jim poskytuje společný jazyk definice procesu označovaný jako jPDL.

Přehled architektury JBoss jBPM

JBoss jBPM definuje definice procesu v souborech zapsaných pomocí jazyka definice procesu JBoss. jPDL je graficky orientovaný programovací jazyk (GOP) založený na modelu uzlů, přechodů a akcí. V tomto modelu jsou uzly příkazy prováděné tak, jak se vyskytují během toku definice procesu. Přechody řídí tok provádění definice procesu a akce provádějí specifickou logiku, když dojde k události uzlu nebo přechodu.

V jBPM jsou definice procesů zabaleny jako archivy procesů. Archiv procesu je předán do procesního stroje jPDL k provedení. Procesní modul jPDL prochází procesním grafem, provádí definované akce, udržuje stav procesu a zaznamenává všechny události procesu.

JBoss jBPM je zapouzdřen do následujících komponent:

  • Procesní motor: Tato komponenta provádí definované akce procesu, udržuje stav procesu a protokoluje všechny události procesu prostřednictvím následujících delegovaných komponent:
    • Obsluha žádosti
    • Státní manažer
    • Správce protokolů
    • Zavaděč definic
    • Exekuční služba
  • Monitor procesu: Tento modul sleduje, audituje a hlásí stav procesů při jejich provádění
  • Procesní jazyk: Jazyk definice procesu (jPDL) je založen na GOP
  • Interakční služby: Tyto služby vystavují starší aplikace jako funkce nebo data, která se mají použít při provádění procesu

Vztahy mezi těmito komponentami jsou znázorněny na obrázku 1.

Jak je znázorněno na obrázku 1, definice procesu jBPM obsahující obslužné rutiny akcí jsou načítány a spouštěny procesním modulem jBPM. Když modul procesu narazí na uzel v definici procesu, který má přidruženou akci, jsou vyvolány všechny související obslužné rutiny akcí. Obslužné rutiny akcí jsou instance kódu Java, které při spuštění interagují s externími systémy.

Následuje příklad jednoduché obslužné rutiny akce:

import org.jbpm.graph.def. *; importovat org.jbpm.graph.exe. *;

veřejná třída MyActionHandler implementuje ActionHandler {public void execute (ExecutionContext executionContext) {System.out.println ("MyActionHandler provedl:" + executionContext); }}

Soubor PDL v archivu procesu má název process-definition.xml. Tento soubor obsahuje formální popis procesů. Příklad souboru process-definition.xml je ilustrován v následujícím příkladu:

Definice procesu je založena na směrovaném grafu. Graf se skládá z uzlů, přechodů, jednoho počátečního stavu a jednoho koncového stavu. Typ každého uzlu definuje běhové chování uzlu. Během provádění definice procesu vstupují do hry následující entity:

  • Instance procesu: Instance procesu je jedno provedení definice procesu.
  • Žeton: Token je jedna cesta provedení. Token je runtime koncept, který udržuje ukazatel na uzel v grafu. Když je vytvořena instance procesu, je vytvořen token pro hlavní cestu provedení. Tento token se nazývá kořenový token instance procesu a je umístěn v počátečním stavu definice procesu.
  • Signál: Signál dává pokyn tokenu, aby pokračoval v provádění grafu přechodem z uzlu.
  • Uzel: Uzly jsou odpovědné za pokračování provádění grafu. Když token vstoupí do uzlu, uzel se provede. Uzel, který nešíří provedení, se považuje za stav.
  • Akce: Akce jsou instance kódu Java spuštěné, když dojde k událostem při provádění procesu. Mezi primární typy událostí patří „vstup do uzlu“, „opuštění uzlu“ a „přechod“.

Definice procesů lze snadno vytvořit pomocí návrháře grafického modelování jBPM. Návrhář je aktuálně nainstalován jako zásuvný modul Eclipse. Obrázek 2 ilustruje ukázkovou obrazovku od návrháře grafického modelování.

Grafického designéra lze použít k vytváření definic procesů, připojení obslužných rutin akcí k událostem, úpravám zdroje definic, vytváření archivů procesů, testování definic procesů atd.

Nasazení JBoss jBPM

JBoss jBPM ukládá definice procesů do databáze. Proto nasazení procesu do JBoss jBPM zahrnuje analýzu procesu-definition.xml a jeho uložení do databáze JBPM JBoss. Toho lze dosáhnout:

  • Za použití odst Úkol Ant dodávaný s JBoss jBPM k vytvoření archivu procesu.
  • Pomocí nástroje deploypar. Tento obslužný program také vytvoří archiv procesu a nasadí archiv procesu do databáze jBPM. Obslužný program deploypar převezme soubor jBPM.properties jako atribut. Tento soubor určuje možnosti konfigurace, včetně databáze, do které má být archiv procesu nasazen.
  • Programově analyzovat a ukládat process-definition.xml do úložiště dat.

Spuštění JBoss jBPM několika jednoduchými kroky

JBoss jBPM funguje jako nástroj pro orchestraci, který sedí uprostřed podnikových aplikací a umožňuje integraci a koordinaci mezi různými aplikacemi.

V tomto článku používám ukázkové nasazení dodávané s jBPM k diskusi o tom, jak se jBPM a jPDL používají k vytvoření a úpravě jednoduchého systému zpracování objednávek povoleného pomocí webu.

Stahování JBoss jBPM

Startovací sada JBoss jBPM obsahuje vše potřebné k provedení JBoss jBPM, s výjimkou JDK. Aplikační server JBoss ve startovací sadě JBoss jBPM vyžaduje J2SE 1.4 nebo novější verzi.

Po stažení startovací sady ji rozbalte do adresáře podle vašeho výběru. Jakmile rozbalíte startovací sadu, budete mít adresářovou strukturu podobnou následující:

  • Jbpm-startéry-kit-3.1
    • jbpm: Obsahuje zdrojový kód produktu JBoss jBPM
    • jbpm-bpel: Obsahuje informace o rozšíření BPEL pro JBoss jBPM
    • jbpm-db: Obsahuje ukázkové konfigurace pro připojení JBoss jBPM k jiným databázím
    • jbpm-designer: Obsahuje zásuvný modul Eclipse pro JBoss jBPM Visual Process Designer
    • jbpm-server: Obsahuje aplikační server JBoss spolu s motorem JBoss jBPM a ukázkovým procesem

Spusťte modul JBoss jBPM

Chcete-li spustit aplikační server JBoss s nasazeným jBPM, přejděte do adresáře jbpm-server a proveďte zde nalezený spouštěcí skript. S oknem konzoly jBPM by se mělo objevit okno příkazu, podobné obrázku 3.

Nyní vyvolejte okno prohlížeče a přejděte na // localhost: 8080 / jbpm. Zobrazí se přihlašovací stránka pro ukázkovou webovou aplikaci pro JBoss jBPM, která je znázorněna na obrázku 4.

Přihlásit se jako sušenková příšera a vyberte odkaz Vytvořit novou webovou prodejní objednávku. Tím se vytvoří nová instance předem připraveného procesu „Webový prodej“, který je znázorněn na obrázku 5.

Skutečný definiční soubor processdefinition.xml je umístěn v souboru websale.par a je znázorněn v následujícím seznamu:

$config[zx-auto] not found$config[zx-overlay] not found