5

私は現在、Process360と呼ばれるGlobal360BPMツールセットを使用する大規模なBPMプロジェクトに取り組んでいます。この製品は、モデル化しようとしている特定のビジネスプロセスのフローを定義する複数の「プロセスマップ」を設計するという点で、他の多くのBPMソリューションと同様に機能します。各プロセスマップは、特定の機能を実行する複数のタスクノードが相互に接続されて構成されます。 (Webサービスの呼び出しなど)。

プロセスマップルートのテストを自動化するためのツールセットが提供されていないため、現在、リリースのQAフェーズでかなり深刻な問題が発生しています。そのため、大規模で複雑なプロセスが開発されてテストチームに引き渡されると、多くの場合、多数の問題が発生します。QAからいくつかの問題が発生することは明らかですが、構築に使用できる何らかの自動テストフレームワークがあれば、開発中に多くのバグなどが発見された可能性があると感じざるを得ません。プロセスマップのさまざまなルートを証明する一連の単体テスト。

現時点で行われる唯一の実際の開発テストは、テストケースごとの一連の手動ステップとして文書化されている、開発者によって実行される機能テストに似ています。このアプローチの問題は、開発者が手動で実行するのに非常に時間がかかることです。また、このため、比較的エラーが発生しやすくなります。また; 通常、スケジュールはかなり厳しいため、問題を早期に発見するのに十分な頻度でテストが実行されないことがよくあります。

先に述べたように、この種の自動テストを実行するための現在のツールセットによって提供される方法はありません。なぜ私は実際に考えさせられましたか?BPMシーン全体に非常に慣れていないので、これは製品に欠けている機能にすぎないと思いましたが、「ユニットテスト」はBPMの世界では伝統的に行われていないのではないかと思います。おそらく、この種の作業には適していないのでしょうか。

他の誰かがこの種の問題に遭遇したことがあるかどうか、そしてまた、何かを改善するために何ができるかを知りたいと思います。

4

3 に答える 3

3

Global 360に関連するものではありませんが、私はそれについて何かを見ました:テストプロセスにbpelunitを使用する

私はワークフローツールを開発していますが、エンジンのテストに使用するテストツールをエンドユーザーに公開する必要性が高まっています。

于 2010-01-24T01:21:58.510 に答える
2

別の商用BPMであるK2.net2003を使用して「単体テスト」を実行しました。テストサーバーが必要で、比較的遅いので、私は実際にこの統合テストと呼んでいます。ただし、自動化されています。

これについては、 Professional K2 blackpearlという本でよく説明されています(K2.net 2003にも適用されます)。

プラットフォームに適用するには、ツールセットに、プロセスインスタンスの開始、作業項目の取得、作業項目の完了などを許可するAPIが必要です。サポートされている言語(C#を使用)とテストフレームワーク(C#を使用)を使用してテストを記述します。 NUnitを使用しました)。APIが同期呼び出しをサポートしている場合、これは簡単です。各テストについて:

  1. テスト中のプロセスを開始します
  2. 作業項目を決定ポイントに進めます
  3. プロセスインスタンスデータを適切に設定する
  4. 作業項目を完了する
  5. 作業項目が期待されるアクティビティになったことを表明します
  6. プロセスインスタンスを削除または完了します

基本テストクラスまたはヘルパーメソッドを使用すると、これが簡単になります。マップをテストするためのDSLを作成することもできます。

基本的に、プロセス/マップの完全な「テストカバレッジ」が必要です。すべての決定ポイントをテストし、正しい分岐が行われることを確認します。

于 2010-02-20T23:55:28.317 に答える
1

BPMには、関連しているが同一ではない2つの側面があります。

ツールとテクノロジーのベンダーが提唱するBPMがあり、そのすべてが機能に関するものです。

エンタープライズアーキテクトが提唱するBPMもあります。これは、センターオブエクセレンスの確立に関するものです。

前者は、会社がソフトウェアを購入する場所です。

後者は、企業がITワーカーの行動に体系的かつ固有の変更を加える場所です。

前者は後者にサービスを提供することになっていますが、必ずしもそうではありません。前者を取得することは必要ですが、後者を達成するには十分ではありません。

Global 360がテスト駆動開発として知られているものをどれだけうまくサポートしているかはわかりませんが、JBossjBPMはJUnitテストを簡単に作成するためのツールサポートを提供します。

ただし、このツールは、開発者にそれらを記述したり、TDDの原則を採用したりすることを強制することはできません。

于 2010-02-21T00:08:06.823 に答える