(57)【特許請求の範囲】
【請求項１】
データ処理システムであって、
−アプリケーションプログラム（１０４）をカスタマイズするカスタマイズパラメータを保持するデータベーステーブルを記憶する手段（１１４）を備え、前記カスタマイズパラメータは前記アプリケーションプログラムの実行が基礎としているパラメータであり、
−前記アプリケーションプログラムとトレースプログラム（１０６）と分析プログラム（１０８）とを実行する手段（１１０）をさらに備え、前記アプリケーションプログラムは前記トレースプログラムとともに、または、前記トレースプログラムなしで実行可能であり、前記実行する手段は、前記トレースプログラムを実行することにより前記データベーステーブルのどのデータベーステーブルエントリがどのようなシーケンスでアクセスされるかを追跡し、
−前記アプリケーションプログラムによって供給された結果のセットを記憶する手段（１１６）と、
−ユーザによって前記トレースプログラムが開始された場合、前記アプリケーションプログラムの実行中に前記トレースプログラムによって収集されたトレースデータを記憶する手段（１１８）と、をさらに備え、前記トレースデータは各結果に関するパスを包含し、各パスは対応する結果の計算に使用されたカスタマイズパラメータのサブセットを保持するデータベーステーブルの一連のデータベーステーブルエントリを表し、前記カスタマイズパラメータのサブセットは前記データベーステーブルに記憶された全てのカスタマイズパラメータから選択され、
−前記結果をユーザインタフェースにおいて表示する手段をさらに備え、
前記実行する手段は、前記分析プログラムを実行することにより、
（ａ）ユーザインタフェースに表示されている結果においてユーザが選択した１つの結果を受信し、
（ｂ）前記結果において選択された１つの結果のパスによって識別されるデータベーステーブルエントリを逐次的に表示することを特徴とする、データ処理システム。
【請求項２】
前記データベーステーブルエントリに割り当てられている説明文字列を記憶する手段（１２０）をさらに包含し、前記実行する手段は、前記分析プログラムを実行することにより、表示されているデータベーステーブルエントリに割り当てられている前記説明文字列のうちの１つを表示する、請求項１記載のデータ処理システム。
【請求項３】
前記パスに沿ったユーザのナビゲーションのためのユーザインタフェース手段（１０２）を包含する、請求項１または２記載のデータ処理システム。
【請求項４】
前記実行する手段は、前記分析プログラムを実行することにより、表示されているデータベーステーブルエントリのユーザによる修正を入力する、請求項１から３までのいずれか１項記載のデータ処理システム。
【請求項５】
データベーステーブルに記憶されている、アプリケーションプログラムのカスタマイズパラメータを表示する方法において、
前記カスタマイズパラメータは前記アプリケーションプログラムの実行が基礎としているパラメータであり、
−プロセッサによって前記アプリケーションプログラムを実行するステップと、
−ユーザによってトレースプログラムが開始された場合、前記プロセッサによって前記トレースプログラムを実行することにより前記データベーステーブルのどのデータベーステーブルエントリがどのようなシーケンスでアクセスされるかを追跡し、前記アプリケーションプログラムの実行中にトレースデータを収集するステップと、を有し、前記アプリケーションプログラムは前記トレースプログラムとともに、または、前記トレースプログラムなしで実行可能であり、前記トレースデータは前記アプリケーションプログラムによって供給される各結果に関するパスを包含し、各パスは対応する結果の計算に使用されたカスタマイズパラメータのサブセットを保持するデータベーステーブルの一連のデータベーステーブルエントリを表し、前記カスタマイズパラメータのサブセットは前記データベーステーブルに記憶された全てのカスタマイズパラメータから選択され、
−ユーザインタフェース手段によって前記結果を表示するステップと、
−前記ユーザインタフェース手段によってさらなる分析のために前記結果のうちの１つをユーザにインタラクティブに選択させるステップと、
−前記ユーザインタフェース手段によって前記結果のうち選択された１つの結果のパスによって識別されるデータベーステーブルエントリを表示するステップと、をさらに有することを特徴とする、アプリケーションプログラムのカスタマイズパラメータを表示する方法。
【請求項６】
−前記プロセッサによって表示すべきデータベーステーブルエントリに割り当てられている説明文字列を検索するステップと、
−前記ユーザインタフェース手段によって前記説明文字列を前記データベーステーブルエントリと共に表示するステップとをさらに有する、請求項５記載の方法。
【請求項７】
前記ユーザインタフェース手段によって前記パスに沿って前記ユーザにナビゲーションさせるステップをさらに有する、請求項５または６記載の方法。
【請求項８】
前記ユーザインタフェース手段によって表示されている前記データベーステーブルエントリの修正を前記ユーザに入力させるステップをさらに有する、請求項５から７までのいずれか１項記載の方法。
【請求項９】
コンピュータプログラムにおいて、
−ユーザによって開始された場合、アプリケーションプログラムの実行中にトレースデータを収集する手順をコンピュータに実行させるトレースプログラム命令を有し、前記アプリケーションプログラムは前記トレースプログラム命令とともに、または、前記トレースプログラム命令なしで実行可能であり、前記トレースプログラム命令は、前記アプリケーションプログラムをカスタマイズするカスタマイズパラメータを保持するデータベーステーブルのどのデータベーステーブルエントリがどのようなシーケンスでアクセスされるかを追跡する手順を前記コンピュータに実行させ、前記トレースデータは前記アプリケーションプログラムによって供給される各結果のパスを包含し、各パスは対応する結果の計算に使用された前記アプリケーションプログラムのカスタマイズパラメータのサブセットを保持するデータベーステーブルの一連のデータベーステーブルエントリを表し、前記カスタマイズパラメータのサブセットは前記データベーステーブルに記憶された全てのカスタマイズパラメータから選択され、前記カスタマイズパラメータは前記アプリケーションプログラムの実行が基礎としているパラメータであり、
−前記結果をユーザインタフェースに表示する手順を前記コンピュータに実行させる表示プログラム命令と、
−表示されている結果においてユーザが選択した１つの結果を受信し、前記結果において選択された１つの結果のパスによって識別されるデータベーステーブルエントリを逐次的に表示する手順を前記コンピュータに実行させるインタフェース命令と、をさらに有することを特徴とする、コンピュータプログラム。
【請求項１０】
表示されるべきデータベーステーブルエントリに割り当てられている説明文字列を検索する手順を前記コンピュータに実行させるプログラム命令をさらに包含する、請求項９記載のコンピュータプログラム。
【請求項１１】
前記パスに沿ったユーザのナビゲーションを可能にする手順を前記コンピュータに実行させるグラフィカルユーザインタフェース命令をさらに包含する、請求項９または１０記載のコンピュータプログラム。
【請求項１２】
表示されているデータベーステーブルエントリのユーザによる修正を入力する手順を前記コンピュータに実行させる命令をさらに包含する、請求項９から１１までのいずれか１項記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理システム、アプリケーションプログラムのカスタマイズパラメータを表示する方法およびコンピュータプログラム製品に関する。
【背景技術】
【０００２】
コンピュータプログラムを開発している間に、テストデータを設けてテスト結果を形成するためにコンピュータプログラムの実行によりコンピュータプログラムをテストすることがしばしば望まれる。ユーザはテスト結果を評価し、この結果に基づきコンピュータプログラムを修正する。このプロセスの間に、ユーザは例えばエラーの疑わしい原因の解消を支援するために、コンピュータプログラムの少なくとも一部を何度も実行することを欲する可能性がある。しかしながら、コンピュータプログラムが非常に大きい場合、もしくは非常に長い実行時間を有する場合には、評価およびデバッグのためにプログラム全体を再現することは実用的ではない可能性がある。したがって、インクリメンタルリプレイと称される技術が開発され、この技術によりユーザはコンピュータプログラム実行の一部のみを選択および再現することができる。
【０００３】
コンピュータプログラムのデバッグおよびテストを効果的に支援するためには再現装置のセットアップ時間および再現時間が短いものである必要があり、プログラム実行の妨害および減速は可能な限り僅かなものでなくてはならず、また記憶すべきデータ量が多くてもならないことが要求される。セットアップ時間とは元のプログラムが少なくとも１回実行された後の再現の準備に必要とされる時間である。再現時間とはコンピュータプログラムの所望の部分に関連する命令を実際に再実行するために要求される時間である。
【０００４】
あるアプローチではセットアップ時間を最小にし、別のアプローチでは再現時間を最小にする。セットアップ時間の間に典型的には変数および記憶場所が再現すべきコンピュータプログラムの部分にとって適切な値にセットされる。典型的にはこの実施は再現の間または再現に先行して、プログラムの最初の実行の間に存在した値と同一の値を記憶場所に提供することを含む。
【０００５】
元の（最初に実行された）プログラムの妨害はしばしば、再現を容易にするために計測命令を元のプログラムに挿入することによって惹起される。そのような計測命令が過度に多く存在する場合、またはそのような命令が過度に割り込み的である場合には、元のプログラムは最初の実行または再現の間に非常に減速する可能性がある。
【０００６】
上述したように再現は一般的にプログラムの最初の実行の間にある量のストレージを必要とするので、別の問題は記憶すべきデータ量である。元のプログラム実行の所望の部分を正確に再現するために十分なデータが記憶されるべきではあるが、過度に多く記憶されたデータは過剰なストレージリソース並びに記憶されているデータを管理するための不必要なオーバヘッド機能を要求することになる。
【０００７】
インクリメンタルリプレイに関する１つのアプローチは、コンピュータプログラムの前のチェックポイント以降のコンピュータプログラムによって修正された仮想メモリシステムのページを一定の時間間隔をおいて周期的にトレースするためのコンピュータの仮想メモリを使用する。ここで使用さえる術語「トレース」はメモリへのデータの記憶を表し、そのようなデータは変数および記憶場所のリセットのような後の使用のために利用可能である。
【０００８】
中間地点からのプログラム実行の再開は、各ページの一番最近のトレースを発見するために再現ツールが記憶されているトレースを検索することを要求する。チェックポイントは一定の時間間隔をおいて設けられているのでシステムは再現時間を制限する。すなわち、再現のために要求される時間を元のプログラムの実行の所望の部分に制限する。しかしながら再現のための状態の設定はトレースファイル全体の検索を要求する可能性があり、このことは著しい時間およびリソースを伴う可能性がある。このアプローチは最近書かれたページのみをトレースするという点では適応的ではあるが、最後のチェックポイントは大量のストレージを要求する可能性があるので、書かれたページの全体のコンテントをトレースする。
【０００９】
トレースについての別のアプローチは、何を何時トレースするかを決定するためにプログラムのコンパイル時間に実施される。殊に各プロシージャの入口に事前ログが書き込まれ、この事前ログはプロシージャが読む可能性のある変数の値を包含する。事前ログはプロシージャの命令を適切に実行するために必要とされる全ての変数を包含するので、事前ログによってプロシージャは単独で再現することができる。事後ログはプロシージャからの出口に書き込まれ、この事後ログはプロシージャが変更された可能性のある変数の値を包含する。事後ログによって再現の間にプロシージャをスキップすることができる。何故ならば事後ログはプロシージャが実施することができる変更を包含するからである。
【００１０】
そのようなシステムは再現を容易にするために実際に要求されるデータよりも多くのデータを記憶する結果になる可能性がある。何故ならばコンパイル時間において実施される分析は、あらゆる再現が正確であることを保証するために慎重なものでなくてはならないからである。さらには、プロシージャの入口および出口においてのみのトレースはプログラムの最初の実行の間に大量の命令を惹起する可能性があり、実行の所望の部分までの再現が所定の時間内で達成されることは保証されない。例えば、何度も反復されまたプロシージャコールを包含するループは多くの不要なトレースを招く可能性がある。逆に非常に長いプロシージャコールはしばしば、ユーザが許容できる制約時間内でプロシージャのあらゆる部分を十分に再現するためにはトレースされない可能性がある。
【００１１】
別のシステムは各ステートメントまたはステートメントのグループ以前の「変更セット」をトレースする。変更セットはステートメントまたはステートメントのグループによって修正される可能性のある変数の値を包含する。デバッガは関連する変更セットから状態を修復することによってステートメント全体にわたる実行をバックアップすることができる。トレースサイズを制限するために、各ステートメントについて一番最近の変更セットのみを記憶することが可能である。システムは静的に変更セットを計算し、ポインタおよびアレイを使用するプログラムに関しては、システムはそのようなアクセスをそれぞれトレースする必要がある。システムは再現の実施に要求される時間を制限しない。何故ならばシステムは所望の期間に先行する命令をバックアップし、また所望の期間実施するために順方向に進むことを要求するからである。システムはその静的な性質によって制限されており、すなわちシステムは例えば全てのアレイまたはポインタの参照をトレースしなければならない可能性がある。
【００１２】
別の技術はチェックポイントの階層を管理する。各チェックポイントは逐次的に比較的大きい時間細分性で設けられるので、最近の状態は比較的迅速に再現されるが、比較的古い状態はより長い遅延を惹起する。この技術はまたチェックポイントへのアプローチとしての仮想スナップショットを包含し、このスナップショットにおいては以前のチェックポイントとは異なるチェックポイントの要素のみが保管される。
【００１３】
ＵＳ  ５，８７０，６０７にはコンピュータプログラムを選択的に再現するための方法が開示されている。ユーザはコンピュータプログラム実行の部分を選択的に再現することができるので、さらなるテストおよびデバッグを支援するためにプログラム全体を再度ランする必要はない。プログラムのランタイムが計測されたヴァージョンは特別な命令を元のプログラムに挿入することによって形成される。ランタイムが計測されたヴァージョンはメモリファイルおよびシステムコールならびに中断の識別のトレースファイルを形成するために実行される。
【００１４】
ＵＳ  ５，６４２，４７８には分散型のトレースデータ収集システムが開示されている。イベントデータ収集回路は、ソフトウェアの制御下で各ノード内の安定したデータを収集するための分散型のマルチノードシステムにおける各処理ノードに統合されている。
【００１５】
ＵＳ  ６，３１４，５３０には、プロセッサにおける実行のフローを表すトレース情報を記憶するための複数の記憶場所を有するオンチップトレースメモリを備えたコンピュータシステムが開示されている。
【００１６】
従来技術によるトレース技術はカスタマイズパラメータのレビューおよび修正がサポートされていないという共通の欠点を有する。
【特許文献１】ＵＳ  ５，８７０，６０７
【特許文献２】ＵＳ  ５，６４２，４７８
【特許文献３】ＵＳ  ６，３１４，５３０
【発明の開示】
【発明が解決しようとする課題】
【００１７】
したがって本発明の課題は、上記の従来技術による欠点を解消する、カスタマイズパラメータのレビューおよび修正がサポートされたデータ処理システム、カスタマイズパラメータを表示する方法ならびにコンピュータプログラム製品を提供することである。
【課題を解決するための手段】
【００１８】
データ処理システムに関する課題は分析プログラムが（ａ）ユーザインタフェースに表示されている結果においてユーザが選択した１つの結果を受信する、（ｂ）結果において選択された１つの結果のパスによって識別されるデータベーステーブルエントリを逐次的に表示するよう作動することによって解決される。カスタマイズパラメータを表示する方法に関する課題は、アプリケーションプログラムを実行するステップを有し、アプリケーションプログラムの実行中にトレースデータを収集するステップを有し、トレースデータはアプリケーションプログラムによって供給される各結果に関するパスを包含し、各パスは対応する結果の計算に使用されたカスタマイズパラメータサブセットを保持するデータベーステーブルを表し、結果を表示するステップを有し、さらなる分析のために結果のうちの１つをインタラクティブに選択するステップを有し、結果のうちの選択された１つの結果のパスによって識別されるデータベーステーブルエントリを表示するステップとを有することによって解決される。コンピュータプログラム製品に関する課題は、アプリケーションプログラムの実行中にトレースデータを収集するトレースプログラム命令を有し、トレースデータはアプリケーションプログラムによって供給される各結果のパスを包含し、各パスは対応する結果の計算に使用されたアプリケーションプログラムのカスタマイズパラメータのサブセットを保持するデータベーステーブルの一連のデータベーステーブルエントリを表し、結果をユーザインタフェースに表示する表示プログラム命令を有し、表示されている結果においてユーザが選択した１つの結果を受信し、結果において選択された１つの結果のパスによって識別されるデータベーステーブルエントリを逐次的に表示するインタフェース命令を有することによって解決される。
【発明を実施するための最良の形態】
【００１９】
本発明は、アプリケーションプログラムをカスタマイズするためのカスタマイズパラメータを保持するデータベーステーブルを記憶するための手段を備えたデータ処理システムを提供する。アプリケーションプログラムの他にトレースプログラムおよび分析プログラムが設けられている。
【００２０】
アプリケーションプログラムの実行によって提供される結果が記憶されて、ユーザの選択のために表示される。アプリケーションプログラムの実行中にトレースデータがトレースプログラムによって収集される。トレースデータはそれぞれの結果のパス指示を包含する。各パスは、対応する結果の計算に使用されたカスタマイズパラメータのサブセットを保持するデータベーステーブルの一連のデータベーステーブルエントリを表す。
【００２１】
アプリケーションプログラムによる結果の計算に使用された、基礎となるカスタマイズパラメータを分析するためにユーザが表示された結果のうちの１つを選択すると、結果に割り当てられているデータベーステーブルエントリのパスがトレースデータから検索される。このことはユーザによるレビューおよび／または修正に関してパスによって識別されるデータベーステーブルエントリの逐次的な表示を容易にする。
【００２２】
本発明の有利な実施形態に関して、説明文字列がデータベーステーブルエントリに割り当てられている。ユーザが選択した結果のパスに属するデータベーステーブルエントリが表示されるべき場合には、そのデータベースエントリに割り当てられている文字列が検索されて、データベーステーブルエントリと共に表示される。その結果表示されるトレースは非熟練のユーザでさえも理解することができる。
【００２３】
本発明の別の有利な実施形態に関してはグラフィカルユーザインタフェースが設けられており、このグラフィカルユーザインタフェースは選択された結果のパスに沿ったユーザのナビゲーションを容易にする。このようにして、アプリケーションプログラムによる結果の計算を基礎とするデータベーステーブルエントリのパスに沿ってユーザは後退および前進することができる。このことは個々のデータベーステーブルエントリの相互作用をトランスパレントにし、またそれぞれのデータベーステーブルエントリに記憶されているカスタマイズパラメータのユーザによるレビューおよび／または修正を容易にする。
【００２４】
本発明は、アプリケーションプログラムの実行が基礎としているカスタマイズパラメータのレビューおよび／または修正を容易にするので殊に有利である。関係データベースのデータベーステーブルにおいてカスタマイズパラメータとして記憶されているカスタマイズ情報の構造は複雑な性質である可能性があることを言及しておく。本発明はカスタマイズ情報の構造をトランスパレントにすることができる。このことは非熟練のユーザにとって殊に有利である。何故ならば、アプリケーションプログラムのプログラムコードを理解できないことは、アプリケーションプログラムによって提供される個々の結果の計算が基礎とするデータベーステーブルエントリのシーケンスの理解を要求するからである。
【００２５】
本発明の有利な実施形態を単に添付の図面を参照して例を用いて詳細に説明する。
【実施例】
【００２６】
図１はデータ処理システム１００を示す。データ処理システム１００は光学ユーザインタフェース、例えばグラフィカルユーザインタフェース１０２、少なくとも１つのアプリケーションプログラム１０４、トレースプログラム１０６および分析ツール１０８を有する。プロセッサ１１０はこれらのプログラムを実行するために使用される。択一的にデータ処理システム１００はプログラムを実行するための複数のプロセッサを有する並列処理システムまたは分散型処理システムである。
【００２７】
データ処理システム１００はカスタマイズパラメータをメモリ領域１１４に記憶するため、結果をメモリ領域１１６に記憶するため、トレースデータをメモリ領域１１８に記憶するため、また説明文字列をメモリ領域１２０に記憶するためのメモリ１１２を有する。
【００２８】
ここで考察する有利な例においては、アプリケーションプログラム１０４が複数のＮ個のモジュールまたはオブジェクトを有し、これらのモジュールまたはオブジェクトは種々のプログラム機能を実行する。
【００２９】
メモリ領域１１４に記憶されているカスタマイズパラメータに基づくプロセッサ１１０によるアプリケーションプログラム１０４の実行は複数のｎ個の結果を供給し、これらの結果はメモリ領域１１６に記憶される。
【００３０】
カスタマイズされたパラメータは、関係データベーステーブルＴ１，Ｔ２，Ｔ３，Ｔ４，．．．，Ｔｉ，．．．を有するメモリ領域１１４に記憶される。
【００３１】
例えばデータベーステーブルＴ１はカスタマイズパラメータＰ１（Ｔ１），Ｐ２（Ｔ１），．．．，Ｐｊ（Ｔ１），．．．．を保持する。換言すれば、各データベーステーブルＴｉは複数のパラメータ｛Ｐｊ（Ｔｉ）｝を保持する。
【００３２】
メモリ領域１１４に記憶されている関係データベースのデータベーステーブルは複雑なカスタマイズ情報を保持する。結果の計算に使用されるカスタマイズ情報の構造は、データベーステーブルエントリのうちのそれぞれ１つのエントリとリンクされている複数のパスによって表される。これらのパスのうちの１つの一部が図１に例示的に示されている。
【００３３】
このパスはデータベーステーブルＴ１のエントリＰ２（Ｔ１）において始まり、このエントリからデータベーステーブルＴ４のテーブルエントリＰ１（Ｔ４）に進む。このテーブルエントリＰ１（Ｔ４）からパスはデータベーステーブルＴ２のテーブルエントリＰｊ（Ｔ２）（以下省略）へと続く。単に例としてまた一般性を制限することなく、図１に示されているこのパスはアプリケーションプログラム１０４によって供給される結果１の計算に使用されたカスタマイズ情報を保持することが想定される。
【００３４】
メモリ領域１２０は、メモリ領域１１４に記憶されているデータベーステーブルに対応する複数のデータベーステーブルを保持する。メモリ領域１２０に記憶されている各データベーステーブルＴｉにおいては、説明文字列が各パラメータに割り当てられている。換言すれば文字列ｊがデータベーステーブルＴｉのカスタマイズパラメータＰｊに割り当てられている。
【００３５】
データ処理システム１００の正常なオペレーションに関して、アプリケーションプログラム１０４はトレースプログラム１０６抜きで開始される。したがって取得された結果はメモリ領域１１６に記憶され、グラフィカルユーザインタフェース１０２を用いてモニタ１２２に表示される。ユーザが表示された結果に満足せずおよび／または結果が計算された基礎を分析したい場合には、ユーザはトレースプログラム１０６を開始する。
【００３６】
次にアプリケーションプログラム１０４がプロセッサ１１０によって再度実行され、その間にトレースデータがトレースプログラム１０６によって収集されてメモリ領域１１８に記憶される。トレースプログラム１０６は、メモリ領域１１４に記憶されている関係データベースのデータベーステーブルエントリのどのエントリがアクセスされ、ｎ個の結果を計算するためにどのシーケンスでアクセスされるかを追跡する。
【００３７】
トレースデータはそれぞれの結果に関するテーブルＴから構成されている。テーブルＴ（結果１）は、この結果１を計算するために使用されたパスに属する、メモリ領域１１４に記憶されている関係データベースのデータベーステーブルエントリのリストを包含する。同じことが別のテーブルＴ（結果２），．．．，Ｔ（結果ｎ）にも該当する。このようにしてトレースデータが収集されてメモリ領域１１８に記憶される。このメモリ領域１１８は、対応する結果の計算に使用されたカスタマイズ情報を記述するパス情報を包含する。
【００３８】
アプリケーションプログラム１０４の実行後に、メモリ領域１１８内の収集されたトレースデータを分析ツール１０８によって分析することができる。
【００３９】
ユーザはアプリケーションプログラム１０４の実行によって供給された結果のうちの１つをグラフィカルユーザインタフェース１０２を用いて選択することができる。分析ツール１０８は選択された結果に対応するテーブルＴをメモリ領域１１８から検索する。分析ツール１０８はシーケンスの第１の要素、例えば結果１が選択されている場合にはＰ２をメモリ領域１１４に記憶されているこの第１の要素の値に対応するデータベーステーブルＴ１から検索し、グラフィカルユーザインタフェース１０２によってこの値を表示する。
【００４０】
さらに分析ツール１０８はパス例えばＰ２（Ｔ１）の第１の要素に属する説明文字列をメモリ領域１２０から検索する。換言すれば、メモリ領域１２０に記憶されているテーブルＴ１においてＰ２（Ｔ１）に割り当てられている説明文字列２がカスタマイズパラメータＰ２（Ｔ１）の値と共に表示される。グラフィカルユーザインタフェース１０２を用いることによりユーザは選択した結果に属するパスに沿ってナビゲートすることができる。このことは図４に示されている例を参照してさらに詳細に説明する。
【００４１】
図２はトレースデータを収集するためのフローチャートを示す。ステップ２００においてトレースプログラムが開始される。次いでアプリケーションプログラムが開始される。ステップ２０４においてはトレースデータがアプリケーションプログラムの実行中に収集される。
【００４２】
収集されたトレースデータは少なくとも、結果の計算に使用されたカスタマイズパラメータメモリ領域に記憶されているデータベーステーブルエントリのサブセットに関するパス情報を包含する。したがって、収集されたトレースデータは結果の計算に使用されたデータベーステーブルエントリを表すリストすなわちテーブルＴ（結果）を包含する。
【００４３】
アプリケーションプログラムが終了すると（ステップ２０６）、分析ツールがステップ２０８において開始される。分析ツールを用いてユーザは結果の計算のために基礎として使用されたカスタマイズパラメータセッティングをレビューおよび／または修正することができる（ステップ２１０）。ステップ２１０におけるレビューおよび／または修正プロセスは図３のフローチャートを参照してさらに詳細に説明する。
【００４４】
図３に示されているフローチャートのステップ３００においては、アプリケーションプログラムによって供給された結果が表示される。ステップ３０２においてはユーザがさらなる分析のために結果のうちの１つを選択する。ステップ３０４においてはインデックスｍが初期化される。ステップ３０６においては、選択された結果に属するカスタマイズパラメータパスの第１の要素が検索され、その値が関係データベースから読み出される。例えば、結果１が分析のために選択された場合には、メモリ領域１１８（図１を参照されたい）に記憶されているトレースデータテーブルＴ（結果１）の第１の要素、すなわちパラメータＰ２（Ｔ１）が読み出され、その値がメモリ領域１１４に記憶されている関係データベースから検索される。
【００４５】
ステップ３０８においては、カスタマイズパラメータパスの第１の要素に割り当てられている説明文字列がメモリ領域１２０に記憶されている対応するテーブルから検索される。ステップ３１０においては、カスタマイズパラメータパスの第１の要素がその説明文字列と共に表示される。ステップ３１２においては、ユーザは第１の要素の修正についての任意選択権を有する。ユーザが第１の要素に関して新たな値を入力しない場合には、第１の要素は変更されないままである。新たな値を入力する場合には、メモリ領域１１４に記憶されている関係データベースが第１の要素、すなわちここで考察する例においてはＰ２（Ｔ１）の新たな値でもって更新される。
【００４６】
ステップ３１４においてはインデックスが増分され、制御はステップ３０６に戻る。ステップ３０６から３１４はユーザのレビューおよび／または修正に関して、選択された結果のトレースデータの完全なカスタマイズパラメータパスが「スキャン」されるまで繰り返される。
【００４７】
インプリメンテーションに応じて、ユーザは分析および／または修正に関してパスに沿って逆方向および順方向にジャンプするため、また別の結果を選択するためにいつでもカスタマイズパラメータパスに沿ったスキャンを停止することができる。
【００４８】
図４はグラフィカルユーザインタフェース１０２によって提供される分析ツール１０８のインタラクティブウィンドウ４００の非常に概略的な実施形態を示す。ウィンドウ４００はアプリケーションプログラム１０４（図１を参照されたい）の実行によって供給されたｎ個の結果を表示するために結果セクション４０２を有する。
【００４９】
さらにウィンドウ４００はカスタマイズパラメータの値を出力するための出力フィールド４０４およびこの出力フィールド４０４において表示されるカスタマイズパラメータに割り当てられている説明文字列を出力するための出力フィールド４０６を有する。入力フィールド４０８は出力フィールド４０４に示されているカスタマイズパラメータの新たな値をユーザが入力するために使用される。ナビゲーションボタン４１０，４１２は選択されたカスタマイズパラメータパスに沿ってユーザがナビゲーションするために使用される。
【００５０】
オペレーションにおいて、ユーザはアプリケーションプログラム１０４の実行中のトレースプログラム１０６によるトレースデータ収集後に、分析ツール１０８（図１を参照されたい）を開始する。分析ツール１０８はアプリケーションプログラム１０４に供給されたｎ個の結果を表示する。ユーザは結果セクション４０２における対応する結果の表示をクリックすることによってｎ個の結果のうちの１つを選択することができる。
【００５１】
相応に、選択された結果に属するカスタマイズパラメータパスの第１のカスタマイズパラメータの値が出力フィールド４０４に表示され、カスタマイズパラメータパスにおける第１のカスタマイズパラメータに属する説明文字列が出力フィールド４０６に表示される。ナビゲーションボタン４１２をクリックすることによって、ユーザは選択された結果に属するカスタマイズパラメータパスに沿って次のカスタマイズパラメータへと進むことができる。同様にして、ユーザはナビゲーションボタン４１０をクリックすることによってユーザはカスタマイズパラメータパスに沿って逆方向に進むことができる。インプリメンテーションに応じて、選択されたカスタマイズパラメータパスに沿ったユーザのナビゲーションを容易にするために付加的なナビゲーションボタンを設けることができる。
【００５２】
ユーザがカスタマイズパラメータの修正を希望する場合には、ユーザはカスタマイズパラメータに関する新たな値を入力フィールド４０８に入力することができる。入力ボタンが押されたことに応答して、出力フィールド４０４に示されているカスタマイズパラメータの以前の値が新たな値に更新される。
【図面の簡単な説明】
【００５３】
【図１】本発明のデータ処理システムの実施形態のブロック図。
【図２】トレースデータの収集を表すフローチャート。
【図３】トレースデータの分析を表すフローチャート。
【図４】グラフィカルユーザインタフェースの実施形態を表す略示的な出力画面。
【符号の説明】
【００５４】
１００  データ処理システム、  １０２  光学ユーザインタフェース、  １０４  アプリケーションプログラム、  １０６  トレースプログラム、  １０８  分析ツール、  １１０  プロセッサ、  １１２  メモリ、  １１４、１１６，１１８，１２０  メモリ領域、  １２２  モニタ、  ４００  ウィンドウ、  ４０２  結果セクション、  ４０４，４０６  出力フィールド、  ４０８  入力フィールド、  ４１０，４１２  ナビゲーションフィールド
【図１】
0004675639.tif 000002
【図２】
0004675639.tif 000003
【図３】
0004675639.tif 000004
【図４】
0004675639.tif 000005