アプリケーション性能試験の並列作業負荷シミュレーションのための方法であって、ホストコンピュータの少なくとも1つのプロセッサによってメモリ内で実行されている作業負荷シミュレータにおいて、試験中のコンピュータアプリケーションの異なるタスクについての記録された作業負荷のリストを読み込むことと、前記記録された作業負荷を共通タスクによって対応するブロックにグループ化することと、共通ブロック内の作業負荷を前記共通ブロックにおける出現順に直列実行することを必要とするが、異なるブロック内の作業負荷の並列実行を可能にするように、前記グループ化された作業負荷から、試験中の前記コンピュータアプリケーションの性能をシミュレートするための負荷を生成することと、を含む方法。前記ブロック間で同期点を設定することと、前記負荷の生成の間に、前記同期点の後に現れるブロックの作業負荷の実行を許可する前に実行するために、前記同期点の前に現れるブロック内の全ての作業負荷を要求することと、をさらに含む、請求項1に記載の方法。前記記録された作業負荷は、ハイパーテキスト転送プロトコルHTTP要求である、請求項1に記載の方法。前記記録された作業負荷を共通タスクによって対応するブロックにグループ化することは、前記異なるタスクの各々について、前記HTTP要求間の対応する異なる文字列を識別することと、前記異なる文字列のうちの共通する文字列を共有する前記HTTP要求の各々を1つの共通ブロック内に配置することと、を含む、請求項3に記載の方法。以前に実行されたHTTP要求からの結果に依存する各々のHTTP要求を共通ブロック内に配置することをさらに含む、請求項4に記載の方法。選択されたブロックを、異なるブロックからの作業負荷が負荷生成の間に並列に実行される共通コンテナ内にグループ化することをさらに含む、請求項1に記載の方法。並列作業負荷シミュレーションのために構成された性能試験データ処理システムであって、メモリ及び少なくとも1つのプロセッサを有するホストコンピュータと、前記ホストコンピュータにおいて実行されるオペレーティングシステムと、前記オペレーティングシステムによってホストされる作業負荷シミュレータであって、負荷レコーダ、負荷エディタ及び負荷ジェネレータの各々を含む、作業負荷シミュレータと、前記負荷エディタに接続されたブロック識別モジュールであって、前記作業負荷シミュレータにおいて試験中のコンピュータアプリケーションの異なるタスクについて、前記負荷レコーダによって記録された作業負荷のリストを読み込むことと、前記記録された作業負荷を共通タスクによって対応するブロックにグループ化することとを可能にするプログラムコードを含む、ブロック識別モジュールと、を含む、性能試験データ処理システム。前記記録された作業負荷は、ハイパーテキスト転送プロトコルHTTP要求である、請求項7に記載のシステム。アプリケーション性能試験の並列作業負荷シミュレーションのためのコンピュータプログラムであって、コンピュータに、ホストコンピュータの少なくとも1つのプロセッサによってメモリ内で実行されている作業負荷シミュレータにおいて、試験中のコンピュータアプリケーションの異なるタスクについての記録された作業負荷のリストを読み込む機能と、前記記録された作業負荷を共通タスクによって対応するブロックにグループ化する機能と、共通ブロック内の作業負荷を前記共通ブロックにおける出現順に直列実行することを必要とするが、異なるブロック内の作業負荷の並列実行を可能にするように、前記グループ化された作業負荷から、試験中の前記コンピュータアプリケーションの性能をシミュレートするための負荷を生成する機能と、を実行させる、コンピュータプログラム。前記ブロック間で同期点を設定する機能と、前記負荷の生成の間に、前記同期点の後に現れるブロックの作業負荷の実行を許可する前に実行するために、前記同期点の前に現れるブロック内の全ての作業負荷を要求する機能と、をさらに含む、請求項9に記載のコンピュータプログラム。前記記録された作業負荷は、ハイパーテキスト転送プロトコルHTTP要求である、請求項10に記載のコンピュータプログラム。前記記録された作業負荷を共通タスクによって対応するブロックにグループ化する機能は、前記異なるタスクの各々について、前記HTTP要求間の対応する異なる文字列を識別する機能と、前記異なる文字列のうちの共通する文字列を共有する前記HTTP要求の各々を1つの共通ブロック内に配置する機能と、を含む、請求項11に記載のコンピュータプログラム。以前に実行されたHTTP要求からの結果に依存する各々のHTTP要求を共通ブロック内に配置する機能をさらに含む、請求項12に記載のコンピュータプログラム。選択されたブロックを、異なるブロックからの作業負荷が負荷生成の間に並列に実行される共通コンテナ内にグループ化する機能をさらに含む、請求項9に記載のコンピュータプログラム。従来、クライアントにおいて異なるタスクからの要求の混合を処理するために、クライアントにおいて次の要求が発生することが許可される前に、選択された要求を確実に満足するように、選択された要求を含むループが生成される。しかしながら、作業負荷シミュレーションの間にループを確立することは、要求の生成の順序を人工的に生成することである。当然のことながら、作業負荷シミュレーションの間にループを用いることによって、クライアントにおいてタスクが並列に実行されることが必然的に妨げられ、その結果、作業負荷シミュレーションの完全性が損なわれる。本発明の実施形態は、作業負荷シミュレーションに関する技術の欠点に対処するものであり、アプリケーション性能試験の並列作業負荷シミュレーションのための、新規且つ非自明な方法、システム及びコンピュータプログラムを提供する。本発明の一実施形態においては、アプリケーション性能試験の並列作業負荷シミュレーションのための方法が提供される。本発明は、ホストコンピュータの少なくとも1つのプロセッサによってメモリ内で実行されている作業負荷シミュレータにおいて、試験中のコンピュータアプリケーションの異なるタスクについての記録された作業負荷のリストを読み込むことを含む。本方法はまた、記録された作業負荷を共通タスクによって対応するブロックにグループ化することを含む。最後に、本方法は、共通ブロック内の作業負荷を共通ブロックにおける出現順に直列実行することを必要とするが、異なるブロック内の作業負荷の並列実行を可能にするように、グループ化された作業負荷から、試験中のコンピュータアプリケーションの性能をシミュレートするための負荷を生成することを含む。実施形態の一態様においては、ブロック間で同期点を確立することができる。その後、負荷の生成の間に、同期点の後に現れるブロックの作業負荷の実行を許可する前に実行するために、同期点の前に現れるブロック内の全ての作業負荷を要求することができる。実施形態の別の態様においては、記録された作業負荷は、ハイパーテキスト転送プロトコルHTTP要求である。したがって、記録された作業負荷を共通タスクによって対応するブロックにグループ化することは、異なるタスクの各々について、HTTP要求間の対応する異なる文字列を識別することと、異なる文字列のうちの共通する文字列を共有するHTTP要求の各々を1つの共通ブロック内に配置することとを含むことができる。さらに、以前に実行されたHTTP要求からの結果に依存する各々のHTTP要求を共通ブロック内に配置することができる。本発明の別の実施形態においては、並列作業負荷シミュレーションのための性能試験データ処理システムを構成することができる。本システムは、メモリ及び少なくとも1つのプロセッサを有するホストコンピュータと、ホストコンピュータにおいて実行されるオペレーティングシステムとを含むことができる。本システムはまた、オペレーティングシステムによってホストされる作業負荷シミュレータを含むことができる。作業負荷シミュレータは、負荷レコーダ、負荷エディタ及び負荷ジェネレータの各々を含むことができる。最後に、負荷エディタには、ブロック識別モジュールを接続することができる。このモジュールは、作業負荷シミュレータにおいて試験中のコンピュータアプリケーションの異なるタスクについて負荷レコーダによって記録されたHTTP要求などの作業負荷のリストを読み込むことと、前記記録された作業負荷を共通タスクによって対応するブロックにグループ化することとを可能にするプログラムコードを含むことができる。本発明のさらなる態様は、一部は以下の詳細な説明において示され、一部は詳細な説明から明らかとなるか、又は本発明の実施によって知ることができる。本発明の態様は、特許請求の範囲において特に挙げられた要素及び組み合わせによって実現され、達成される。上記の一般的な説明及び以下の詳細な説明はいずれも、単なる例示及び説明のためのものであり、本発明を限定するものではないことを理解されたい。この明細書に組み込まれ、この明細書の一部である添付の図面は、本発明の実施形態を説明するものであり、詳細な説明と共に本発明の原理を説明するのに役立つものである。ここで示される実施形態は、現時点で好ましいものであるが、本発明は、示される構成及び手段そのものに限定されないことを理解されたい。本発明の実施形態は、アプリケーション性能試験のための並列作業負荷シミュレーションを提供する。本発明の実施形態によれば、異なるタスクについての異なる要求を作業負荷シミュレータに蓄積することができる。シングルタスクに共通している要求は、受信された順にブロックにグループ化することができる。その後、負荷ジェネレータが、共通ブロック内の要求は共通ブロックによって予め規定された順に実行されるが、異なるブロックの要求は並列に実行されるように、異なるブロックの要求と一致する負荷を生成することができる。このようにして、単一のコンピュータデバイス内における異なるタスクからの要求の並列作業負荷シミュレーションの際に、異なるタスクからの要求の恣意的で人工的な順序付けを避けることができる。さらに説明すると、図1は、アプリケーション性能試験の並列作業負荷シミュレーションのための処理を示す説明図である。図1に示されるように、性能試験システム110が、コンピュータアプリケーションにおいて並列に実行されている異なるタスクについての一連の作業負荷130を記録することができる。並列タスクグループ化論理120が、作業負荷130を処理して、共通タスクについての作業負荷を並列ブロック140A、140B、140Cにグループ化することができる。さらに、並列ブロック140A、140B、140Cのうちの選択されたブロックは、共通コンテナ160にグループ化することができる。並列ブロック140A、140B、140Cの対応するブロック内では、各々のタスクについての作業負荷130が記録された順序を保持することができる。しかしながら、共通コンテナ160内では並列ブロック140A、140B、140Cのうちの選択されたブロックの順序付けは特に行われないが、多数の異なるコンテナ160の順序づけは保持することができる。注目すべきは、並列ブロック140A、140B、140Cの間に同期点150が設けられ、並列ブロック140A、140B、140Cのうち同期点150より前のブロック内のそれぞれのタスクについての作業負荷130の全てが確実に完了することである。作業負荷130が並列ブロック140A、140B、140Cのそれぞれのブロックに自動的に並列グループ化された後で、負荷ジェネレータ170が、並列ブロック140A、140B、140Cにおける作業負荷130のグループ化に従って、コンピュータアプリケーションの性能をシミュレートするための負荷を性能試験システム110内に生成することができる。負荷の生成によって、並列ブロック140A、140B、140Cのうちの同じコンテナ160内の異なるブロックにおける異なるタスクの作業負荷130の並列実行を可能にしながら、並列ブロック140A、140B、140C及びいずれかの同期点150の順序付け制約を強制することができる。性能試験データ処理システム内に、図1に関連して説明された処理を実装することができる。さらに説明すると、図2は、並列作業負荷シミュレーションのために構成された性能試験データ処理システムの概略図である。システムは、メモリ220と少なくとも1つのプロセッサ230説明を容易にするために単一のプロセッサのみが示されているとの両方を有するホストコンピュータ210を含むことができる。ホストコンピュータ210のメモリ内ではプロセッサ230の1つ又は複数によってオペレーティングシステム240を実行することができる。オペレーティングシステム240は、試験中のコンピュータアプリケーションが動作する条件をシミュレートするために、異なる作業負荷を生成し、生成された作業負荷を試験中のコンピュータアプリケーションに与えるように構成された作業負荷シミュレータ250の動作を、ホストすることができる。そのために、作業負荷シミュレータ250には、負荷レコーダ260、負荷エディタ270及び負荷ジェネレータ280を接続することができる。負荷レコーダ260は、試験中のコンピュータアプリケーションの実行の間に、試験中のコンピュータアプリケーションによって作られた作業負荷を記録することができる。例えば、作業負荷は、SOA環境におけるサービスの要求を含むことができる。従って、これらの要求は、固有のネットワークアドレスでアクセス可能なSOA環境における異なる遠隔実行サービスを処理するために、ハイパーテキスト転送プロトコルHTTP要求とすることができる。次に、負荷エディタ270は、負荷ジェネレータ280による処理のために、記録された負荷を閲覧し、編集し、格納することができるグラフィカルユーザインターフェースGUIを提供することができる。負荷ジェネレータ280は、記録され編集された負荷の格納済みセットを処理して、試験中のコンピュータアプリケーションの性能をシミュレートするために試験中のコンピュータアプリケーションに与えられることになる負荷のセットを生成することができる。注目すべきことは、負荷エディタ270にブロック識別モジュール300を接続できることである。ブロック識別モジュール300は、対応する並列ブロック内の共通タスクに従って、試験中のコンピュータアプリケーションの異なるタスクについて、記録されたHTTP要求のような試験中のコンピュータアプリケーションの異なるタスクについての負荷をグループ化することを可能にするプログラムコードを含むことができる。グループ化は、作業負荷の各々を他の作業負荷と比較して共通の要素を識別することによって、行うことができる。例えば、HTTP要求の場合には、同じタスクについての要求は、共通識別子のようなHTTP要求の共通部分を共有することがある。必要に応じて、別の作業負荷に依存する作業負荷の各々を同じ並列ブロック内に一緒に配置することによって、付加的なグループ化を行うことができる。作業負荷が、対応するタスクのための並列ブロックにグループ化されると、グループ化された作業負荷は、負荷シミュレータ250における試験中のコンピュータアプリケーションのシミュレーションのための作業負荷を負荷ジェネレータ280が生成するのに使用できるように、負荷ジェネレータ280に渡すことができる。さらにブロック識別モジュール300の動作を説明すると、図3は、アプリケーション性能試験の並列作業負荷シミュレーションの処理を説明するフローチャートである。ブロック310で開始され、試験中のコンピュータアプリケーションの異なるタスクについての記録されたHTTP要求のリストを読み込むことができ、ブロック320において、タスクのうちの異なるタスクに各々が対応する異なる文字列識別子を読み込むことができる。ブロック330においては、異なる文字列識別子のうち固有の識別子ごとに、並列ブロックを生成することができる。最後に、ブロック340において、各々の並列ブロックが同じ文字列識別子を共有する要求のみを含むように、対応する文字列識別子に従って、記録されたHTTP要求を異なる並列ブロックにソートすることができる。当業者であれば分かるように、本発明の態様は、システム、方法又はコンピュータプログラムとして具体化することができる。従って、本発明の態様は、全体がハードウェアの実施形態、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む全体がソフトウェアの実施形態、又はソフトウェアの態様とハードウェアの態様とを組み合わせた実施形態の形を取ることができ、本明細書においてはこれらの全てを一般に、回路、モジュール又はシステムと呼ぶことできる。さらに、本発明の態様は、コンピュータ可読プログラムコードが組み入れられた1つ又は複数のコンピュータ可読媒体内で具体化されたコンピュータプログラムの形を取ることができる。1つ又は複数のコンピュータ可読媒体の任意の組み合わせを利用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体又はコンピュータ可読ストレージ媒体とすることができる。コンピュータ可読ストレージ媒体は、例えば、電子、磁気、光学、電磁気、赤外線若しくは半導体のシステム、装置若しくはデバイス、又は上記のいずれかの適切な組合せとすることができるが、これらに限定されるものではない。コンピュータ可読ストレージ媒体のより具体的な例非網羅的なリストとして、1つ又は複数の配線を有する電気的接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリRAM、読み出し専用メモリROM、消去可能プログラマブル読み出し専用メモリEPROM又はフラッシュメモリ、光ファイバ、ポータブルコンパクトディスク読み出し専用メモリCD-ROM、光記憶デバイス、磁気記憶デバイス、又は上記のいずれかの適切な組合せが挙げられる。本明細書の文脈では、コンピュータ可読ストレージ媒体とは、命令実行システム、装置又はデバイスによって又はこれらと関連して用いるためのプログラムを収容し又は格納することができるいずれかの有形媒体である。コンピュータ可読信号媒体は、例えばベースバンド又は搬送波の一部にコンピュータ可読プログラムコードを組み入れた搬送データ信号を含むことができる。こうした搬送データ信号は、電磁気、光、又はこれらのいずれかの適切な組合せを含むがこれらに限定されない、種々の形態のいずれかを取ることができる。コンピュータ可読信号媒体は、コンピュータ可読ストレージ媒体ではなく、命令実行システム、装置又はデバイスによって又はこれらと関連して用いるためのプログラムを通信し、伝搬し、又は転送することができる、いずれかのコンピュータ可読媒体とすることができる。コンピュータ可読媒体に組み入れられたプログラムコードは、無線、有線、光ファイバケーブル、無線周波数など、又はこれらのいずれかの適切な組合せを含むがこれらに限定されない、いずれかの適切な媒体を用いて伝送することができる。本発明の態様についての動作を実行するためのコンピュータプログラムコードは、オブジェクト指向型プログラミング言語及び従来の手続き型プログラミング言語を含む1つ又は複数のプログラミング言語のいずれかの組合せで記述することができる。プログラムコードは、全体をユーザのコンピュータ上で実行するか、スタンドアロン型のソフトウェアパッケージとして部分的にユーザのコンピュータ上で実行するか、一部をユーザのコンピュータ上で実行し、一部を遠隔コンピュータ上で実行するか、又は、全体を遠隔コンピュータ若しくはサーバ上で実行することができる。後者のシナリオでは、遠隔コンピュータは、ローカルエリアネットワークLAN若しくは広域エリアネットワークWANを含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続することができ、又は例えば、インターネットサービスプロバイダを用いたインターネットを通じて外部コンピュータに接続することもできる。本発明の態様は、本発明の実施形態による方法、装置システム、及びコンピュータプログラムのフローチャート図及び/又はブロック図を参照して、上述された。この点について、図面におけるフローチャート及び/又はブロック図は、本発明の様々な実施形態による、システム、方法及びコンピュータプログラムの可能な実装形態のアーキテクチャ、機能及び動作を示すものである。例えば、フローチャート又はブロック図における各々のブロックは、モジュール、セグメント又はコードの一部を表すことができ、これらは、1つ又は複数の指定された論理機能を実装するための1つ又は複数の実行可能命令を含む。幾つかの代替的な実装形態においては、ブロックに記された機能が図面に記された順序通りに行われない場合があることにも留意されたい。例えば、連続して示された2つのブロックが、実際には実質的に同時に実行されることがあり、これらのブロックが、関与する機能に応じて、ときとして逆順で実行されることもある。ブロック図及び/又はフローチャート図における各々のブロック、並びにブロック図及び/又はフローチャート図におけるブロックの組合せは、指定された機能若しくは動作を行う専用ハードウェアベースのシステム又は専用のハードウェアとコンピュータ命令との組合せによって実装できることにも留意されたい。フローチャート図及び/又はブロック図の各ブロック、並びにフローチャート図及び/又はブロック図におけるブロックの組合せは、コンピュータプログラム命令によって実装できることが理解されよう。これらのコンピュータプログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて、マシンを生産し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャート及び/又はブロック図の1つ又は複数のブロック内で指定された機能/動作を実装するための手段を生成するようにすることができる。これらのコンピュータプログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイスを特定の方式で機能させるように指示することができるコンピュータ可読媒体内に格納して、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャート及び/又はブロック図の1つ又は複数のブロック内で指定された機能/動作を実装する命令を含む製品を製造するようにすることもできる。コンピュータプログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイスにロードし、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で一連の動作ステップを行わせてコンピュータ実装処理を生成し、それにより、コンピュータ又は他のプログラム可能装置上で実行される命令が、フローチャート及び/又はブロック図の1つ又は複数のブロック内で指定された機能/動作を実装するための処理を提供するようすることもできる。最後に、本明細書で用いられる用語は、特定の実施形態を説明する目的のためのものに過ぎず、本発明を限定することを意図するものではない。本明細書で用いられるとき、単数形1つのa、1つのan及びそのtheは、そうでないことが示されていない限り、複数形も含むことが意図されている。本明細書で用いられるとき、含むcomprises及び/又は含んでいるcomprisingという用語は、提示された特徴、整数、ステップ、動作、要素、及び/又はコンポーネントの存在を特定するものであるが、1つ又は複数の他の特徴、整数、ステップ、動作、要素、コンポーネント、及び/又はそれらのグループの存在又は追加を排除するものではないことをさらに理解されたい。特許請求の範囲における全ての手段又はステップと機能との組合せミーンズ又はステッププラスファンクション要素の対応する構造、材料、行為及び均等物は、その機能を、明確に特許請求されているように他の特許請求された要素と組み合わせて実行するための、いかなる構造、材料又は行為をも含むことが意図される。本発明の説明は、例示及び説明の目的で提示されたものであるが、網羅的であることを意図するものではなく、本発明を開示された形態に限定することを意図するものでもない。本発明の範囲及び精神から逸脱することのない多くの変更及び変形が、当業者には明らかである。実施形態は、本発明の原理及び実際の用途を最も良く説明するため、及び、当業者が本発明を種々の変更を有する種々の実施形態について企図される特定の使用に適したものとして理解することを可能にするために、選択及び記載された。本出願の発明を、詳細に、本発明の実施形態を参照することによって説明してきたが、特許請求の範囲において定められる本発明の範囲から逸脱することのない変更及び変形が可能であることが明らかであろう。