第1章 はじめに


この ガイド は、開発者および管理者向けに書かれています。企業環境で jBPM と JPDL を使用する方法を学ぶ際にお読みください。本書は、ソフトウェアの使用方法を説明するだけでなく、その仕組みについても非常に詳細に説明しています。
注記
この ガイド には、多くの用語が含まれています。主な用語の定義は、「 役に立つ定義 」 を参照してください。
JBoss Business Process Manager (jBPM) は、プロセス言語の柔軟で拡張可能な基盤です。jBPM Process Definition Language (JPDL) は、このフレームワークの上に構築された プロセス言語 の 1 つです。これは、ユーザーがビジネスプロセスをグラフィカルに表現できるように設計された直感的な言語です。この表現は、タスク待機状態 (非同期通信の場合)、タイマー、および自動化された アクション を表すことによって行われます。これらの操作をまとめてバインドするために、言語には強力で拡張可能な 制御フローメカニズムが あります。
JPDL には依存関係がほとんどないため、Java ライブラリーと同じくらい簡単にインストールできます。これを行うには、JPDL を クラスター化された J2EE アプリケーションサーバー にデプロイします。これは、極端なスループットが重要な要件である環境で特に役立ちます。
注記
JPDL は、任意のデータベースで使用できるように設定できます。また、任意のアプリケーションサーバーにデプロイすることもできます。

1.1. 概要

このセクションでは、jBPM の動作方法の概要を説明します。
中核となるワークフローおよびビジネスプロセス管理機能は、シンプルな Java ライブラリーとしてパッケージ化されています。このライブラリーには、JPDL データベースプロセスを管理および実行するサービスが含まれています。

図1.1 jPDL コンポーネントの概要

1.2. jPDL スイート

このスイートには、すべての jBPM コンポーネントと次のサブディレクトリーが含まれています。
  • config
  • database
  • deploy
  • designer
  • examples
  • lib
  • src
JBoss Application Server は、次のコンポーネントで構成されています。
jBPM Web コンソール
これは Web アーカイブとしてパッケージ化されています。プロセス参加者 と jBPM 管理者の両方がこのコンソールを使用できます。
jBPM テーブル
これらは、デフォルトの Hypersonic データベースに含まれています。(このデータベースには、すでにプロセスが含まれています。)
サンプルプロセス
1 つのサンプルプロセスが、すでに jBPM データベースにデプロイされています。
アイデンティティーコンポーネント
アイデンティティーコンポーネントライブラリーは、コンソール Web アプリケーション の一部です。データベース内にある JBPM_ID_ 接頭辞を持つテーブルを所有しています。

1.3. jPDL グラフィカルプロセスデザイナー

jPDL には、グラフィカルプロセスデザイナー も含まれています。これは、ビジネスプロセスの設計に使用します。(これは Eclipse プラグインであり、JBoss Developer Studio 製品に含まれています。)
ビジネスプロセスのモデリングから実際の実装へのスムーズな移行を容易にし、ビジネスアナリストと技術開発者の両方に役立ちます。

1.4. jBPM コンソール Web アプリケーション

コンソール Web アプリケーション には、3 つの目的があります。1 つ目は、中心的なユーザーインターフェイスとしての機能です。ここでは、プロセスの実行によって生成されたランタイムタスクを操作できます。2 つ目は、ランタイムインスタンスを検査および操作できる管理コンソールおよびモニタリングコンソールとしての機能です。このソフトウェアの 3 つ目の機能は、ビジネスアクティビティーモニターとしての機能です。この機能は、プロセスの実行に関する統計を表示します。この情報を使用すれば、ボトルネックを発見して排除できるため、これはパフォーマンスの最適化を求めるマネージャーに役立ちます。

1.5. jBPM コアライブラリー

Business Process Manager には 2 つのコアコンポーネントがあります。これらは、プロセス定義を管理する "プレーン Java" (J2SE) ライブラリーと、プロセスインスタンスを実行するランタイム環境です。
jBPM 自体は Java ライブラリーです。したがって、Web アプリケーションや Swing アプリケーション、Enterprise Java Bean、Web サービスなど、あらゆる Java 環境で使用できます。
jBPM ライブラリーを ステートレスセッション Enterprise Java Bean としてパッケージ化して公開することもできます。クラスターデプロイメントを作成する必要がある場合、または非常に高いスループットを実現するためにスケーラビリティーを提供する必要がある場合は、これを行ってください。(ステートレスセッション Enterprise Java BeanJ2EE 1.3 仕様に準拠しているため、任意のアプリケーションサーバーにデプロイできます。)
jbpm-jpdl.jar ファイルの一部は、HibernateDom4J などのサードパーティーライブラリーに依存していることに注意してください。
Hibernate は jBPM に 永続性 機能を提供します。また、従来の O/R マッピング を提供することとは別に、Hibernate は競合するデータベースで使用される構造化照会言語の方言間の違いを解決します。この機能により、jBPM は高い移植性を確保しています。
Business Process Manager のアプリケーションプログラミングインターフェイスは、Web アプリケーション、Enterprise Java Bean、Web サービスコンポーネント、メッセージ駆動型 Bean など、プロジェクト内の任意のカスタム Java コードからアクセスできます。

1.6. アイデンティティーコンポーネント

jBPM は、ユーザーデータ (およびその他の組織データ) を含む会社のディレクトリーと統合できます。(組織情報コンポーネントが利用できないプロジェクトの場合は、アイデンティティーコンポーネント を使用します。このコンポーネントには、従来のサーブレット、Enterprise Java Bean、およびポートレットで使用されるモデルよりも "豊富" なモデルがあります。)
注記
このトピックの詳細は、「 アイデンティティーコンポーネント 」 を参照してください。

1.7. jBPM ジョブエグゼキューター

JBoss jBPM ジョブエグゼキューター は、標準の Java 環境でジョブをモニタリングおよび実行する目的で設計されたコンポーネントです。ジョブ は、タイマーと非同期メッセージに使用されます。(エンタープライズ環境では、Java Message Service と Enterprise Java Bean TimerService をこの目的に使用する場合があります。ジョブエグゼキューターは "標準" の環境で使用するのが最適です。)
Job Executor コンポーネントは、コア jbpm-jpdl ライブラリーにパッケージ化されています。次の 2 つのシナリオのいずれかでのみデプロイできます。
  • JbpmThreadsServlet がジョブエグゼキューターを起動するように設定されている場合。
  • 別個の Java 仮想マシンを起動し、その中からジョブエグゼキュータースレッドを実行できるようにした場合。

1.8. まとめ

この章では、jBPM とその構成コンポーネントの概要を説明しました。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat