(57)【要約】  本開示は、ワークフローの視覚化を提供する方法、装置及びシステムを説明する。ワークフローの個々のコンポーネントの成功及び失敗に関連するデータを収集して集計し、ワークフローの動作の概要を提供すること、並びにソフトウェア開発者がワークフローのトラブルシューティング操作を行うことが可能になる。ステップのステータス表示は、例えば、グラフィカルユーザインターフェース（ＧＵＩ）で視覚化することができ、障害を識別してＧＵＩに提示できる。数百、数千または数百万ものワークフローにわたってワークフローデータを集計することにより、ユーザはワークフローの全体的な動作だけでなく、改善が必要な可能性のあるワークフローの領域を迅速に判断できる。
2019520649.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のプロセッサと、
コンピュータ実行可能命令を格納する１つ以上のコンピュータ可読媒体と、
を備えたシステムであって、
前記コンピュータ実行可能命令は、前記１つ以上のプロセッサにより実行されると、前記１つ以上のプロセッサに、
ワークフローの第１のステップに関連する第１のステップデータを受信することであって、前記第１のステップデータは、前記第１のステップの実行に関連するタイミング情報を含む、ことと、
前記ワークフローの第２のステップに関連する第２のステップデータを受信することと、
少なくとも１つのグラフィカルユーザインターフェースを介して、前記ワークフロー内に前記第１のステップを示す第１のグラフィック表示を提示することと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記ワークフロー内に前記第２のステップを示す第２のグラフィック表示を提示することと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のグラフィック表示の選択を受信することと、
前記選択の少なくとも一部を基に、前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のステップの前記実行に関連する前記タイミング情報の少なくとも１部分の表示を提示させることと
を実行させる、システム。
【請求項２】
前記第１のステップは、前記ワークフローの前記第１のステップの第１のインスタンスであり、前記第２のステップは、前記ワークフローの前記第２のステップの第２のインスタンスであり、前記１つ以上のプロセッサは、
前記ワークフローの前記第１のステップの第３のインスタンスに関連する第３のステップデータを受信し、
前記ワークフローの前記第２のステップの第４のインスタンスに関連する第４のステップデータを受信し、
第１の集計データとして、前記第１のステップデータ及び前記第３のステップデータを集計して、前記第１のステップの第１の平均経過時間を決定し、
第２の集計データとして、前記第２のステップデータ及び前記第４のステップデータを集計して、前記第２のステップの第２の平均経過時間を決定し、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１の集計データを示す第３のグラフィック表示及び前記第２の集計データを示す第４のグラフィック表示を提示させる
ようにさらに構成される、請求項１に記載のシステム。
【請求項３】
前記１つ以上のプロセッサは、
前記第１のステップの終了時間及び前記第２のステップの第２の開始時間に少なくとも部分的に基づき、前記システムの処理オーバーヘッドを決定し、前記処理オーバーヘッドは、前記ワークフローの１つ以上のステップの処理時間とは無関係に、前記ワークフローの実行時間に対応し、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記システムの前記処理オーバーヘッドに関連する処理時間量を示す第３のグラフィック表示を提示させる
ようにさらに構成される、請求項１または２に記載のシステム。
【請求項４】
前記１つ以上のプロセッサは、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記ワークフローの１つ以上の動作に対応する日付範囲の選択を受信し、
前記ワークフローの複数のインスタンスを検索し、前記ワークフローの前記複数のインスタンスは、前記日付範囲内で開始し、
処理を完了した前記ワークフローの前記複数のインスタンスの第１の部分を決定し、
処理を実行中の前記ワークフローの前記複数のインスタンスの第２の部分を決定し、
処理を失敗した前記ワークフローの前記複数のインスタンスの第３の部分を決定し、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１の部分、前記第２の部分及び前記第３の部分のグラフィック表示を提示させ、前記グラフィック表示は、少なくとも前記第１の部分に関連する１番目のインスタンスと、前記第２の部分に関連する２番目のインスタンスと、前記第３の部分に関連する３番目のインスタンスとを含む、
ようにさらに構成される、請求項１乃至３のいずれか一項に記載のシステム。
【請求項５】
前記１つ以上のプロセッサは、
前記第１のステップまたは前記第２のステップのうちの少なくとも１つに関する例外の表示を受信し、前記例外は、前記第１のステップまたは前記第２のステップのうちの前記少なくとも１つの実行中の少なくとも１つのエラーを示し、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記例外の表示を提示させ、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記例外の選択を受信し、
前記選択に少なくとも部分的に基づき、前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記例外に関する情報を提示させる
ようにさらに構成される、請求項１乃至４のいずれか一項に記載のシステム。
【請求項６】
前記第１のグラフィック表示及び前記第２のグラフィック表示は、前記第１のステップと前記第２のステップとの間の動作関係を示すために、前記少なくとも１つのグラフィカルユーザインターフェース内に配置される、請求項１乃至５のいずれか一項に記載のシステム。
【請求項７】
前記１つ以上のプロセッサは、
前記第１のステップの開始時間及び終了時間に部分的に基づいて、前記第１のグラフィック表示の第１のサイズを決定し、
前記第２のステップの第２の開始時間及び第２の終了時間に部分的に基づいて、前記第２のグラフィック表示の第２のサイズを決定し、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のサイズに従う前記第１のグラフィック表示を提示させ、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第２のサイズに従う前記第２のグラフィック表示を提示させ、前記第１のサイズは、前記第１のステップの第１の動作時間を表し、前記第２のサイズは、前記第２のステップの第２の動作時間を表す
ようにさらに構成される、請求項１乃至６のいずれか一項に記載のシステム。
【請求項８】
前記１つ以上のプロセッサは、前記少なくとも１つのグラフィカルユーザインターフェースを介して、ある期間にわたり前記第１のステップのインスタンスの複数の経過時間に関連する待ち時間グラフを提示させるようにさらに構成され、前記待ち時間グラフは、前記第１のグラフィック表示にわたり提示される、請求項１乃至７のいずれか一項に記載のシステム。
【請求項９】
前記１つ以上のプロセッサは、
前記第１のステップに関連するタグに関連するタグ情報を受信し、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記タグの第３のグラフィック表示を提示させ、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記タグの前記第３のグラフィック表示の選択を受信し、
前記第１のステップの複数のインスタンスを集計し、前記複数のインスタンスは前記タグに関連付けられ、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のステップの前記複数のインスタンスのグラフィック表現を提示させる
ようにさらに構成され、
前記第１のステップの前記複数のインスタンスの前記グラフィック表現は、１つ以上の例外を含む前記複数のインスタンスの少なくともいくつかのインスタンスを含む、請求項１乃至８のいずれか一項に記載のシステム。
【請求項１０】
ワークフローの第１のステップに関連する第１のステップデータを受信することであって、前記第１のステップデータは、少なくとも前記第１のステップの開始時間及び終了時間に関連するタイミング情報を含む、ことと、
前記ワークフローの第２のステップに関連する第２のステップデータを受信することと、
少なくとも１つのグラフィカルユーザインターフェースを介して、前記ワークフロー内に前記第１のステップを示す第１のグラフィック表示を提示させることと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記ワークフロー内に前記第２のステップを示す第２のグラフィック表示を提示させることと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のグラフィック表示の選択を受信することと、
前記選択の少なくとも一部を基に、前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のステップに関連する前記タイミング情報の表示を提示させることと、
を備える方法。
【請求項１１】
前記第１のステップは、前記ワークフローの前記第１のステップの第１のインスタンスであり、前記第２のステップは、前記ワークフローの前記第２のステップの第２のインスタンスであり、前記方法はさらに、
前記ワークフローの前記第１のステップの第３のインスタンスに関連する第３のステップデータを受信することと、
前記ワークフローの前記第２のステップの第４のインスタンスに関連する第４のステップデータを受信することと、
第１の集計データとして、前記第１のステップデータ及び前記第３のステップデータを集計して、前記第１のステップの第１の平均経過時間を決定することと、
第２の集計データとして、前記第２のステップデータ及び前記第４のステップデータを集計して、前記第２のステップの第２の平均経過時間を決定することと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１の集計データを示す第３のグラフィック表示及び前記第２の集計データを示す第４のグラフィック表示を提示させることと
を備える、請求項１０に記載の方法。
【請求項１２】
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記ワークフローの１つ以上の動作に対応する日付範囲の選択を受信することと、
前記ワークフローの複数のインスタンスを検索することであって、前記ワークフローの前記複数のインスタンスは、前記日付範囲内で開始する、ことと、
処理を完了した前記ワークフローの前記複数のインスタンスの第１の部分を決定することと、
処理を実行中の前記ワークフローの前記複数のインスタンスの第２の部分を決定することと、
処理を失敗した前記ワークフローの前記複数のインスタンスの第３の部分を決定することと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１の部分、前記第２の部分及び前記第３の部分のグラフィック表示を提示させることであって、前記グラフィック表示は、少なくとも前記第１の部分に関連する１番目のインスタンスと、前記第２の部分に関連する２番目のインスタンスと、前記第３の部分に関連する３番目のインスタンスとを含む、ことと
をさらに備える、請求項１０または１１に記載の方法。
【請求項１３】
前記第１のステップまたは前記第２のステップのうちの少なくとも１つに関する例外の表示を受信することであって、前記例外は、前記第１のステップまたは前記第２のステップのうちの前記少なくとも１つの実行中の少なくとも１つのエラーを示す、ことと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記例外の表示を提示させることと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記例外の選択を受信することと、
前記選択に少なくとも部分的に基づき、前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記例外に関する情報を提示させることと
をさらに備える、請求項１０乃至１２のいずれか一項に記載の方法。
【請求項１４】
前記少なくとも１つのグラフィカルユーザインターフェースを介して、ある期間にわたり前記第１のステップのインスタンスの複数の経過時間に関連する待ち時間グラフを提示させることをさらに備え、前記待ち時間グラフは、前記第１のグラフィック表示にわたり提示される、請求項１０乃至１３のいずれか一項に記載の方法。
【請求項１５】
前記第１のステップに関連するタグに関連するタグ情報を受信することと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記タグの第３のグラフィック表示を提示させることと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記タグの前記第３のグラフィック表示の選択を受信することと、
前記第１のステップの複数のインスタンスを集計し、前記複数のインスタンスは、前記タグに関連付けられることと、
前記少なくとも１つのグラフィカルユーザインターフェースを介して、前記第１のステップの前記複数のインスタンスのグラフィック表現を提示させることと、をさらに備え、前記第１のステップの前記複数のインスタンスの前記グラフィック表現は、１つ以上の例外を含む前記複数のインスタンスの少なくともいくつかのインスタンスを含む、請求項１０乃至１４のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本特許出願は、2016年6月21日に出願された米国特許出願第15/188,596号の優先権を主張する。出願番号第15/188,596号は、参照により本明細書に完全に組み込まれる。
【背景技術】
【０００２】
企業及び組織は、それらの事業を支援するために多数のコンピューティングシステムに相互接続するコンピュータネットワークを運用している。コンピューティングシステムは、単一の地理的位置に位置する（例えば、ローカルネットワークの一部として）、または複数の別個の地理的位置（例えば、１つ以上のプライベートまたはパブリック中間ネットワークを介して接続される）に位置する場合がある。データセンタは、例えば、単一の組織によって運用されるプライベートデータセンタ及びサードパーティによって運用されるパブリックデータセンタなど、多数の相互接続したコンピューティングシステムを保管して、コンピューティングリソースを顧客に提供できる。これらのコンピューティングシステムは、カスタマプログラム、プロセス及び／またはワークフローのいくつかのインスタンスを実行できる。プログラム、プロセス及び／またはワークフローの規模及び範囲が増加するにつれ、コンピューティングシステム内で処理を提供し、管理し、監視するタスクはますます複雑になる。
【図面の簡単な説明】
【０００３】
詳細な説明は添付図面を参照して説明する。図面において、参照番号の左端の数字（複数可）は、参照番号が最初に現れる図面を特定する。異なる図面における同じ参照番号は、類似または同一の項目を示す。
【図１】ワークフローエンジンのプロセス視覚化を実施するプロセスのフロー図を例示する。
【図２】ワークフローエンジンのワークフローの視覚化を実施する環境の例を例示する。
【図３】ワークフローの視覚化のワークフロー詳細図を例示するグラフィカルユーザインターフェース（ＧＵＩ）を示す。
【図４】ワークフローの視覚化のステップ詳細図を例示するＧＵＩを示す。
【図５】ワークフローの視覚化のワークフロータイムライン表示を例示するＧＵＩを示す。
【図６】ワークフローの視覚化の失敗ステップのワークフロー詳細図を例示するＧＵＩを示す。
【図７】集計した失敗インスタンスを含む、集計したワークフローの図を例示するＧＵＩを示す。
【図８】個々のステップの待ち時間グラフを含む、集計したワークフローの待ち時間タイムラインを例示するＧＵＩを示す。
【図９】集計した待ち時間タイムラインの詳細図を例示するＧＵＩを示す。
【発明を実施するための形態】
【０００４】
本開示は、ワークフローの視覚化を提供する方法、装置及びシステムを説明する。ワークフローの個々のコンポーネントの成功及び失敗に関連するデータを収集して集計し、ワークフローの動作の概要を提供すること、並びにソフトウェア開発者がワークフローのトラブルシューティング操作を行うことが可能になる。ステップのステータス表示は、例えば、グラフィカルユーザインターフェース（ＧＵＩ）で視覚化することができ、障害を識別してＧＵＩに提示できる。数百、数千または数百万ものワークフローにわたってワークフローデータを集計することにより、ユーザはワークフローの全体的な動作だけでなく、改善が必要な可能性のあるワークフローの領域を迅速に判断できる。
【０００５】
一般に、ワークフローには、入力及び出力で実行される任意の動作を表すステップが含まれることがある。例えば、処理ワークフローは、統合された処理パイプラインを提供するために互いに結合されたコンピュータプログラムモジュールを含むことができる。ワークフローの個々のコンポーネントは、動作中にデータ及び／またはメタデータを生成することができ、これには開始時間、終了時間、ステータス及び識別情報を含むことができる。ワークフロー視覚化エンジンでワークフロー情報が収集されると、そのデータを集計し、任意のワークフローのステータスの概要を提供し、トラブルシューティング及び／またはプロセスの一般的な理解を支援することができる。
【０００６】
ワークフローは、タスクを実行する任意の方法で構成された任意のシーケンスの動作を含むことができる。ワークフローの一例として、電子ファイルをあるフォーマットから別のフォーマットに変換することを含むことができる。ワークフローの別の例は、オンライン取引の支払いを処理するプロセスを含むことができる。別の例は、レストランの注文を受け取り、食事を準備するプロセスを含むことができる。これらの例では、ワークフロー（プロセスとも呼ばれる）をステップ（アクティビティとも呼ばれる）に細分化することができ、各ステップはワークフロー全体にある１つ以上のタスクを実行できる。
【０００７】
いくつかの実施形態では、視覚化エンジンは、ワークフローの詳細図をグラフ及び／またはタイムラインとして提供することができる。タグをワークフロー及び／またはワークフロー内のステップに関連付けることができ、これにより、ユーザは、個々のワークフロー及び／またはステップを検索して複数のインスタンスにわたって性能を評価することができる。視覚化エンジンにより、ユーザは、ワークフロー内の個々のステップを選択して、開始時間、終了時間、経過時間、試行回数、識別情報などのステップに関連する情報を見ることができる。ワークフローのタイムラインの視覚化により、ユーザは、ステップ及びワークフローの相対的及び／または絶対的な待ち時間、並びに様々なステップ間の時間に関連するシステムオーバーヘッドを見ることができる。障害が特定されると、視覚化エンジンにより、ユーザは、ＧＵＩ内をナビゲートして、個別または集計されたワークフロー統計を調査することができる。いくつかの例では、ＧＵＩは、ワークフローログへのアクセスを提供してよい及び／またはプログラミングコードを編集して、任意の障害または失敗を修復してよい。
【０００８】
いくつかの例では、本明細書に論じるワークフロー視覚化ツールは、ユーザがその後の修復のためにワークフロー、プロセス、ステップ及び／またはアクティビティにおける障害及び／または失敗を迅速に特定することができるようにすることで、コンピュータの機能を改善する。場合によっては、ワークフローの待ち時間を表す視覚化を提供することによって、本開示は処理の待ち時間を短縮することができ、これによって、コンピューティングシステム上で実行されるワークフローなど、任意の基礎ワークフローの機能が改善する。最適化されたワークフローにより、処理時間が短縮されメモリ使用量が向上する。いくつかの例では、障害を特定することができ、障害の影響を受けやすいステップを含むワークフローを一時停止してキューに格納し、障害の修復後に処理を再開することができる。ゆえに、無駄な処理を回避し、コンピュータの機能を向上させることができる。
【０００９】
本明細書に記載の方法、装置及びシステムは、いくつかの方法で実装することができる。例示的な実装について、以下の図面を参照しながら以下に説明する。
【００１０】
図１は、ワークフローエンジンのプロセス視覚化を実施するプロセスのフロー図１００を例示する。図１は、ハイレベルのフロー図を例示しており、実装の追加の詳細は本開示の全体を通して与えられる。
【００１１】
１０２では、動作は、開始時間、終了時間、ステータス及び／またはステップ識別など、ワークフローの各ステップに関連するステップデータを受信することを含むことができる。本明細書で説明する通り、ステップは、ワークフローを構成する入力及び出力を含む任意の一連の動作を含み得る。
【００１２】
例示的なワークフローは、ステップ１０６を含むワークフロー１０４として例示される。場合によっては、ステップ１０６は個別ステップを備えてよく、場合によっては、ステップ１０６は、子ワークフローまたはネスト化したワークフローなど、別のワークフローを表してよい。すなわち、場合によっては、ステップ１０６は、様々なワークフロー及び／またはサブステップに関連付けられてよく、様々なレベルの抽象化を提供するために単一のステップ１０６として表されてもよい。
【００１３】
ワークフロー１０４が開始されると、例えば、ユーザ呼び出しまたはコールに応答して、ワークフロー１０４の個々のステップは、各ステップに関連する処理を実行してよい。ステップ１０６が動作すると、ステップ１０６は、例えば、ステップデータ１０８をネットワークデバイス１１０に提供してよい。場合によっては、ネットワークデバイス１１０は、ワークフロー１０４を処理することができるコンピューティングシステムを含むことができる。場合によっては、ネットワークデバイス１１０は、ネットワークデバイス１１０から離れた１つ以上のコンピューティングデバイスからステップデータ１０８を受信することができる。
【００１４】
ステップデータ１０８は、各ステップについて、開始時間、終了時間、ステップステータス及び／またはステップ識別情報を含むことができる。例えば、開始時間は、ステップ１０６が開始した時間（例えば、入力を受け付けた、ユーザまたは別のステップなどによって呼び出された、など）を示すことができ、終了時間は、ステップ１０６が終了した時間（例えば、出力を行った、処理を完了した、など）を示すことができる。ステップステータスは、ワークフロー１０４及び／またはステップ１０６が成功した、失敗した、タイムアウトになった、終了した、中断した、スキップされたかどうかなど、ワークフロー１０４及び／またはステップ１０６の現在のステータスを示すことができる。ステップ識別情報は、ステップ１０６の識別情報及び／またはステップ１０６に関連するワークフロー１０４の識別情報を含むことができる。場合によっては、ステップ識別情報は、ステップ１０６及び／またはワークフロー１０４に関連付けられた１つ以上のタグを含むことができ、後にフィルタリング及び／または検索を容易にする。場合によっては、タグは、例えば、ユーザによって追加されてよい。
【００１５】
場合によっては、ワークフロー１０４及び／またはステップ１０６は、ネットワークデバイス１１０からの情報の要求に応答して、ステップデータ１０８をネットワークデバイス１１０に提供することができる。場合によっては、ワークフロー１０４及び／またはステップ１０６は、ステップデータ１０８をデータファイルに書き込むことができ、ネットワークデバイス１１０はこのデータファイルにアクセスして、ワークフロー１０４及び／またはステップ１０６の動作を決定することができる。場合によっては、ワークフロー１０４及び／またはステップ１０６は、ステップデータ１０８をネットワークデバイス１１０に送信でき、場合によっては、ネットワークデバイス１１０は、ステップデータ１０８をワークフロー１０４及び／またはステップ１０６から受信することができる。場合によっては、ステップデータ１０８は、定期的にスケジューリングして提供でき、場合によっては、リクエストまたは要求に応じてステップデータ１０８を提供できる。
【００１６】
１１２では、動作は、ワークフローのステップに関連する障害データを含む、ステップデータを格納することを含み得る。場合によっては、動作１１２は、例えば、障害に関するデータ（例えば、例外エラー、エラーログなど）を判断し、障害に関連するデータをネットワークデバイス１１０に格納することを含み得る。場合によっては、ステップデータ１０８は、全てのステップについて格納することができ、これは、障害または失敗に関連するステップに限定されない。例１１４に例示する通り、ステップ１１６は、本明細書で論じる通り、例外データ１１８に関連付けることができる。場合によっては、ステップ１１６には、例外の数、成功したステップの数、保留中のステップの数などを含むが、これに限定されない情報により注釈を付けるか、またはこれらを添えることができる。
【００１７】
１２０では、動作は、ワークフロー動作の複数のインスタンスに関連するデータの集計を含み得る。例えば、ワークフロー１０４は、規模を拡大して、何百、何千、何百万回も呼び出されてもよい。ワークフロー１０４の各呼び出しからのステップデータ（例えば、ステップデータ１０８）を受信し、データ集計のために格納することができる。１２２の例では、データ集計は、様々なステップデータの合計及び／または標準偏差を決定することを含んでよく、様々なステップの平均待ち時間またはステップ動作待ち時間の標準偏差を決定することを含む分析を含み得る。さらに、集計動作は、呼び出されたステップ及び／またはワークフローの総数、完了したステップ及び／またはワークフローの数、失敗したステップ及び／またはワークフローの数、有効なステップ及び／またはワークフローの数、一時停止したステップ及び／またはワークフローの数、終了したステップ及び／またはワークフローの数などを決定することを含んでよい。さらに、動作１２０は、ステップの設定に関連する処理、及び／またはデータの格納またはアクセスの時間を含み得るワークフロー１０４のオーバーヘッドを決定することを含んでよい。場合によっては、システムオーバーヘッドは、ワークフロー動作に関連する利用可能なリソース（例えば、いくつかのプロセッサ、ネットワーク帯域幅、ワークフロー優先度など）に依存してよい。
【００１８】
１２４では、動作は、集計データの１つ以上の視覚化を提示することを含み得る。例えば、例示的な視覚化は、集計されたグラフ表示１２８及び集計された待ち時間タイムライン表示１３０を含む視覚化１２６として例示される。場合によっては、動作１２４は、集計データを検索及び／またはフィルタリングして、失敗したステップまたは特定のタグ、特定の期間などに関連するステップの検索など、１つ以上のクエリに関する視覚化データを提示することを含んでよい。場合によっては、グラフ表示１２８は集計ステップ１３２を含むことができ、これはステップ１０６に対応する集計ステップインスタンスに対応することができる。グラフ表示１２８はさらに、例外表示１３６によって注釈が付けられた集計ステップ１３４を例示し、これは集計データ内で識別された例外の数を示すことができる。さらに、本開示の文脈で理解できるように、集計されたグラフ表示１２８及び集計待ち時間タイムライン表示１３０は、同じワークフロー１０４に関連する集計データに対応することができる。すなわち、集計されたグラフ表示１２８に含まれる集計ステップ１３８は、集計待ち時間タイムライン表示１３０における集計ステップ１４０に対応することができる。グラフ表示１２８のさらなる詳細及び例は、図７に関連して提供され、タイムライン表示１３０の追加の詳細及び例は、図８及び図９に関連して提供される。
【００１９】
場合によっては、動作１２４は、ステップデータ及び／または集計データに関する１つ以上のアラーム、報告、警告などを提示することを含むことがあるが、これに限定されない。例えば、集計データの視覚化を提示することに加えて、またはその代わりに、動作１２４は、電子メールを介して、ワークフローの１つ以上の例外をユーザまたは管理者に警告することを含んでよい。
【００２０】
図１のプロセス１００の例は、論理フロー図として例示され、その各々の動作は、ハードウェア、ソフトウェアまたはそれら組み合わせで実装できる一連の動作を表す。ソフトウェアの文脈において、動作は、１つ以上のプロセッサにより実行されたときに、列挙した動作を実行する１つ以上のコンピュータ可読媒体に格納されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令には、特定の機能を実施するまたは特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などが含まれる。
【００２１】
コンピュータ可読媒体は、非一時的なコンピュータ可読記憶媒体を含むことができ、これは、ハードドライブ、フロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、磁気もしくは光カード、ソリッドステート記憶装置または電子命令を記憶するのに適切な他のタイプの記憶媒体を含むことができる。さらに、いくつかの実施形態では、コンピュータ可読媒体は、一時的なコンピュータ可読信号（圧縮または非圧縮形態で）を含み得る。コンピュータ可読信号の例は、キャリアを使用して変調したか否かに関わらず、インターネットまたは他のネットワークを通してダウンロードした信号を含む、コンピュータプログラムをホストまたは実行するコンピュータシステムがアクセスするように構成可能な信号を含むが、これに限定されない。最後に、動作が記載される順序は、制限として解釈されることを意図するものではなく、記載された動作の任意の数を、任意の順序で及び／または並行して組み合わせることでプロセスを実現できる。
【００２２】
特定の一実装では、ワークフロー１０４は電子書籍の価格を決定するワークフローに対応し得るが、これに限定されない。個々のステップは以下を含み得る。１）出版社の提示価格を決定する、２）書籍に関連する価格設定プロモーションを決定する、３）ユーザの位置を決定する、４）プロモーションに基づいて書籍の調整価格を決定する、５）調整された価格をユーザに関連する通貨に変換する。上記で紹介したステップ１〜５の各々は、複数のサブステップ及び／または様々なデータベース及びメモリ位置への呼び出しを含むことができ、それらのうちの一部は常時更新され得ることが理解できる。さらに、例示的なワークフローは、一日に数百回、数千回または数百万回繰り返される場合があることが理解できる。
【００２３】
例示的なワークフローが呼び出されるため、ワークフローの様々な呼び出しはワークフローのインスタンスと呼ぶことができる。ステップデータ（例えば、ステップデータ１０８）は、ワークフローの各インスタンスの各ステップ１〜５について収集することができる。すなわち、例示的なワークフローが実行されるたびに、開始時間、停止時間、ステータス表示、識別情報、タグなどを受信し、各ステップに関連付けることができる。
【００２４】
様々なステップインスタンスのステップデータを集計し、視覚化を提示できる。例えば、ステップ１〜５のそれぞれの平均実行時間を決定することができ、（例えば、例１２６と同様の）グラフ表示または待ち時間タイムライン表示を生成してユーザに提示できる。一部のステップ及び／またはワークフローが失敗した場合、例外を記録して視覚化のグラフィックとして提供できる。例えば、通貨換算レートを利用できない場合、ステップ５のインスタンス（例えば、調整価格をユーザに関連付けられた通貨に変換する）が失敗する可能性がある。そのような場合、ステップ５の視覚化は例外を示してもよく、ＧＵＩにおける例外の選択は例外に関する追加の詳細を提供できる。場合によっては、ユーザは、ワークフローの呼び出しを迅速に検索して例外のパターンを決定し、及び／または障害の根本的な原因を判断できる。上記の例では、ユーザは通貨による検索を絞り込み、特定の通貨から別の特定の通貨への換算中に障害が発生したと判断できる。ゆえに、ユーザは、本明細書で論じた視覚化ツールを使用して、ワークフロー動作を迅速に診断してトラブルシューティングすることができる。
【００２５】
図２は、ワークフローエンジンのワークフローの視覚化を実施する環境２００の例を例示する。場合によっては、例示的な環境は、ネットワーク２０６を介してネットワークデバイス２０４と通信する１つ以上の電子デバイス２０２（１）〜２０２（Ｎ）を含むことができる。場合によっては、電子デバイス２０２は、（例えば、ラップトップコンピュータ、タブレットコンピューティングデバイス、電子読み取り装置（例えば、電子書籍（ｅＢｏｏｋ）リーダ装置）、多機能通信デバイス、携帯情報端末（ＰＤＡ）、携帯電話、スマートフォン、ゲーミングコンソールなど）の任意のタイプの携帯電子デバイスまたは非携帯電子デバイス（例えば、デスクトップコンピュータ、サーバコンピュータ、テレビなど）を備えてよい。加えて、図２は、電子デバイス２０２のいくつかの例示的なコンポーネントを示しているが、電子デバイス２０２はさらに、システムバス、入力／出力コンポーネントなどのその他の従来のコンポーネントも含み得ることを理解すべきである。
【００２６】
様々な実施形態では、電子デバイス２０２は、１つ以上のプロセッサ２０８及び１つ以上のネットワークインターフェース２１０を含む。プロセッサ（複数可）２０８は、任意の１つ以上の中央処理装置またはグラフィック処理装置を含み得る。ネットワークインターフェース（複数可）２１０は、ネットワーク２０６及びセルラ−ネットワーク、無線、Ｗｉ−Ｆｉネットワーク、短距離ネットワーク（例えば、Ｂｌｕｅｔｏｏｔｈ、ＬｏＲａ、Ｚｉｇｂｅｅなど）、赤外線などの様々な他のネットワークへの有線及び無線接続の両方をサポートし得る。
【００２７】
電子デバイス２０２はさらに、１つ以上のディスプレイ２１２及び対応するディスプレイコントローラ２１４を含む。１つ以上のディスプレイ２１２は、発光ダイオード（ＬＥＤ）ディスプレイ、液晶ディスプレイ（ＬＣＤ）、ブラウン管（ＣＲＴ）ディスプレイ、投写型ディスプレイ、電子ペーパーディスプレイ及び／または本明細書に記載のものと同様のディスプレイ特性を有する他のディスプレイを含むが、これらに限定されない多様なディスプレイを表し得る。ディスプレイコントローラ（複数可）２１４は、ディスプレイ（複数可）２１２とインターフェースをとりディスプレイ（複数可）２１２を制御するように構成されたハードウェア及び／またはソフトウェアコンポーネントを含み得る。
【００２８】
様々な実施形態では、電子デバイス２０２は、１つ以上のタッチセンサ２１６を含む。場合によっては、少なくとも１つのタッチセンサ２１６は、対応するディスプレイ２１２の下または上に存在して、ユーザ入力の受信と、ユーザ入力に対応するコンテンツのレンダリングとの両方が可能なタッチセンサ式ディスプレイを形成する。場合によっては、電子デバイス２０２は、ディスプレイ２１２に隣接するタッチセンサ２１６を含み得る。場合によっては、タッチセンサ２１６及びディスプレイ２１２は、タッチセンサ式ディスプレイを形成することができ、場合によっては、タッチセンサ２１６及びタッチセンサ式ディスプレイ２１２がこのようなディスプレイを形成しないことを理解されたい。
【００２９】
場合によっては、電子デバイス２０２はさらに、タッチセンサ２１６に加えて、入力ユニット２１８を含み得る。タッチセンサ２１６は、１つの可能なタイプの入力ユニット２１８として理解されるべきである。他の入力ユニット２１８は、キーボード、キーパッド、コンピュータマウス、ジョイスティック、（例えば、ジェスチャベースの入力のため）ビデオカメラ、（例えば、オーディオ入力及び／または音声ベースのコマンドのための）マイクロフォンなどを含み得る。入力ユニット２１８は、任意の入力メカニズムを含み得る。
【００３０】
電子デバイス２０２は、メモリ２２０を含み得る。電子デバイス２０２の構成に応じて、メモリ２２０（及び本明細書全体を通して記載されたその他のメモリ）は、コンピュータ可読記憶媒体の例であり、揮発性メモリ及び不揮発性メモリを含み得る。ゆえに、メモリ２２０は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、またはメディアアイテムもしくは、電子デバイス２０２によってアクセス可能なアプリケーション及びデータを格納するために使用することができる任意の他の媒体、電子デバイス２０２によってアクセス可能なデータを含み得るが、これらに限定されない。
【００３１】
様々な実施形態では、メモリ２２０は、インターフェースモジュール２２２、クエリモジュール２２４、ワークフロー実行モジュール２２６及び視覚化モジュール２２８を格納するために使用されてよい。場合によっては、インターフェースモジュール２２２は、本開示に従って、ユーザに任意のグラフィカルユーザインターフェース（ＧＵＩ）を提供してよい。場合によっては、クエリモジュール２２４は、インターフェースモジュール２２２と連携して動作してよく、ユーザからの入力及び／または指示を受信して、ワークフロー実行をレビューするために集計データを検索するか、フィルタリングするか、あるいは反対に操作をする。例えば、本明細書で論じる通り、クエリモジュール２２４は、タグ、実行ステータス、期間などによって集計されたワークフローデータを検索またはフィルタリングすることができる。場合によっては、ワークフロー実行モジュール２２６は、１つ以上のワークフローの実行を、電子デバイス２０２上でローカルに処理されるように、ネットワークデバイス２０４（または何らかの他の遠隔デバイス）上で遠隔に処理されるように、及び／または２つの任意の組み合わせ（例えば、ローカル及びリモート処理）で、開始してよい。場合によっては、視覚化モジュール２２８は、例えば、ネットワークデバイス２０４によって提供される情報に応答して、ディスプレイ２１２上に視覚化をレンダリングすることができる。例えば、視覚化モジュール２２８は、図３〜図９に関連して提供されるような視覚化を生成することができる。場合によっては、視覚化モジュール２２８は、ワークフロー動作に対応するグラフ及び／またはタイムラインを電子デバイス２０２のインターフェースモジュール２２２に提供することができる。場合によっては、視覚化モジュール２２８は、個別のインスタンスに関するデータを提供することができ、場合によっては、視覚化モジュール２２８は、集計データの視覚化を提供することができる。
【００３２】
場合によっては、電子デバイス２０２は、本明細書で論じる通り、ワークフローの動作に部分的に基づいて、コードをデバッグ及び／またはコンパイルするためのインターフェースを含むことができる。
【００３３】
ネットワークデバイス２０４は、１つ以上のプロセッサ２３０、１つ以上のネットワークインターフェース２３２及びメモリ２３４を含んでよい。さらに、メモリ２３４は、ワークフロー実行モジュール２３６、集計モジュール２３８及び／または検索モジュール２４０を含むことができる。
【００３４】
場合によっては、ワークフロー実行モジュール２３６は、本開示に従って、１つ以上のワークフローを実行することができる。例えば、ワークフローは、ネットワークデバイス２０４上で実行するためにユーザによって提供されるプログラム、プロセス及び／またはステップを含むことができる。場合によっては、ワークフロー実行モジュール２３６は、ユーザに割り当てられたコンピューティングリソース上でワークフローを実行してよい。場合によっては、ワークフロー実行モジュール２３６は、特定のワークフローの複数のインスタンスを連続して、または並行して実行してよい。場合によっては、ワークフロー実行モジュール２３６は、何らかの理由で任意のワークフローを中断、一時停止、終了または再開することができる。例えば、ユーザは、ワークフローの特定のステップが頻繁にエラーに遭遇していると判断した後に、ステップまたはワークフローの実行を一時停止または終了することができる。ユーザは（例えば、エラーに関連するプログラムコードを編集することによって）問題を解決した後、個々のステップまたはワークフローを再開することができる。
【００３５】
場合によっては、集計モジュール２３８は、ワークフロー、プロセス、ステップ及び／またはアクティビティの実行に関連するデータを集計することができる。例えば、集計モジュール２３８は、各ステップの各インスタンスの開始時間、終了時間、ステータス情報及びステップ情報を格納することができる。場合によっては、集計モジュール２３８は、図１に関連して論じた通り、ワークフロー及び／またはステップから受信したステップデータ１０８に対して動作することができる。集計動作は、各ステップに関連する実行時間を決定し、平均実行時間、最小実行時間、最大実行時間、実行時間の標準偏差、設定時間、オーバーヘッドなどを決定するために、ステップの様々なインスタンスの実行時間を分析することを含む。場合によっては、集計モジュール２３８は、ステップデータ（例えば、ステップデータ１０８）の独自の分析を実行し得るユーザに生データを提供することができる。場合によっては、集計モジュール２３８は、時間経過に伴うワークフロー及び／またはステップのいくつかのインスタンス（例えば、ステップの合計インスタンス、特定の期間のステップのインスタンスなど）を集計することができる。
【００３６】
場合によっては、検索モジュール２４０は、１つ以上の属性に基づいて集計データを検索及び／またはフィルタリングすることができる。例えば、検索モジュール２４０は、ワークフローまたはステップ識別情報、ステップステータス（例えば、完了、失敗、一時停止、終了）、ステップ時間（例えば、開始、終了など）、顧客識別、地理的領域、タグなどを基に、ワークフローデータを検索できる。タグに関して（例えば、通常は記述的であり、自動的に生成されるか、またはユーザが生成するメタデータ）、１つ以上のタグを１つ以上のステップ及び／またはワークフローに関連付けることができる。例えば、ファイル変換に関連するワークフローは、入力フォーマット、出力フォーマット及び／または「変換」などの記述子でタグ付けすることができる。場合によっては、タグは、製品コード、ＩＳＢＮ（国際標準図書番号）、キーワード、ユーザ名、ステップ名、機能名などを含んでよい。さらに、限定するものではないが、検索モジュール２４０は、実行時間、要求ＩＤ、実行ＩＤ、動作ＩＤ、タグ、優先度、例外、入力、出力、エクスポート、ログ、バージョン、試行回数、ＩＰ名／バージョン、ホスト、状態、ステータス、リンク、ステップデータ、経過時間、失敗時間、名前空間などのうちの１つまたは複数に従ってフィルタリングすることができる。
【００３７】
いくつかの例では、環境２００の１つ以上のコンポーネントまたはモジュールを、環境内の任意のデバイスに実装できる。例えば、集計モジュール２３８は、電子デバイス２０２に実装でき、クエリモジュール２２４は、ネットワークデバイス２０４に実装できる。さらに、本明細書に論じるコンポーネントまたはモジュールは、環境の様々なデバイスに複製され得る。ゆえに、本開示は、図２に例示される構成に限定されない。
【００３８】
図３は、ワークフローの視覚化のワークフロー詳細図を例示するグラフィカルユーザインターフェース（ＧＵＩ）３００を示す。例えば、図３のワークフローの視覚化は、ステップ１〜１１を備えるワークフロー１の動作を例示する。本開示の文脈で理解される通り、ワークフロー１は、任意の順序で構成された任意の数のステップを含むことができる。
【００３９】
ワークフローの視覚化の態様は、ワークフローの構造及びその動作結果をユーザに単純かつ明確に伝える。例えば、グラフィック３０２は、ワークフロー１の動作が成功したことを示す。ＧＵＩ３００の部分３０４は、ワークフローの実行時間並びにワークフローが開始及び終了した時間を例示する。様々なステップ１〜１１のステータスは、迅速に認識するために色分けされてもよく、異なるパターン、記号、文字などを使用して指定されてもよい。例えば、凡例３０６（つまり、「ワークフローグラフ」として指定されるセクション）は、図３に示す通り、様々なパターンでステップを指定することによってワークフローステップの実行ステータスを例示する。例えば、開始ノード３０８は、「要再試行」ステータスに対応するパターンで例示されており、ステップ３１０は、「成功」ステータスに対応するパターンで例示されており、ステップ３１２は、「スキップ」ステータスに対応するパターンで例示されている。場合によっては、ステップ３１２は、ユーザによって、またはステップ５〜９の実行によって、並行パスとしてスキップされてよい。場合によっては、ユーザは、凡例３０６に例示されたステータスを追加、削除、カスタマイズ、または別様にカスタマイズしてよい。場合によっては、コードボタン３１４をＧＵＩ３００で選択して、ワークフロー１の１つ以上のステップのプログラミングコードを表示することができる。
【００４０】
場合によっては、一意のステップ名またはワークフロー及び／またはステップに関連付けられた任意の記述子でステップにラベルを付けることができる。場合によっては、ワークフローの視覚化内のステップのサイズ、形状、色、パターン、テキストなどは、ステップの選択、ステップのステータス（例えば、完了、有効、スキップ、失敗など）、ステップに関連するサブステップ数、ステップの入力／出力などに基づいて、処理の待ち時間、ステップに関連するコードの行数、ステップに関連する例外数、ワークフローエンジン及び／またはユーザによって設定された任意のサイズに対応することができる。場合によっては、ステップは均一なサイズ、形状、パターン、色などとすることができる。場合によっては、本明細書に記載の因子に従ってステップを様々なサイズ、形状、パターン、色などで視覚化することができる。
【００４１】
ＧＵＩ３００は、グラフ表示とタイムライン表示との間の選択を可能にする選択ボタン３１６をさらに含む。図５に関連してタイムライン表示を説明する。場合によっては、選択ボタン３１６の選択は、太い輪郭線、色の変化、サイズの変化などとしてＧＵＩ３００に例示することができる。ＧＵＩ３００はさらに、アクションセレクタ３１８及びリフレッシュボタン３２０を含み、これらは、それぞれユーザがワークフローの視覚化に関連して実行される様々なアクションを選択することを可能にし、ユーザがワークフローの視覚化をリフレッシュすることを可能にする。例えば、アクションセレクタ３１８に関連するアクションは、一時停止、終了、再実行などを含み得るが、これらに限定されない。
【００４２】
ワークフローの詳細は、詳細タブ３２２を介してＧＵＩ３００に提供される。例えば、詳細タブ３２２において、ワークフローの詳細を提供することができ、これには、要求ＩＤ（ワークフローの要求を開始するエンティティを示す）、実行ＩＤ（ワークフローの実行情報を示す）、動作ＩＤ（特定のワークフロー動作の一意の識別情報を提供する）、１つ以上のタグ（自動的に生成される及び／またはユーザによって提供される）及び優先度（例えば、低、中、高など）が含まれるが、これらに限定されない。場合によっては、ユーザは、例外（例えば、障害または失敗）、入力、エクスポート及び／またはログ（例えば、エラーログ、動作ログなど）を含む、ワークフローの追加の詳細を閲覧してよい。場合によっては、ユーザは、ＧＵＩ３００を介して、ワークフローに関連するコンピュータコードの一部または全てを見る及び／または編集してよい。ＧＵＩ３００に例示されたコンポーネントのいずれか１つを選択することにより、ユーザは特定のステップに関するより多くの情報を受信することができる。さらに、ワークフロー詳細図は、ワークフローにおけるステップの概要並びにＧＵＩ３００におけるワークフローの全体的な動作の概要を提供する。
【００４３】
図４は、ワークフローの視覚化のステップ詳細図を例示するＧＵＩ４００を示す。例えば、ＧＵＩ４００は、図３に例示するワークフロー１に対応するワークフロー１を例示する。区別をつけるために、図３は、ワークフローの詳細図を例示し、図４は、ステップ４０２に対応するステップ詳細図を例示する。例えば、ユーザは、ワークフロー１のそれぞれ個々のステップを選択し、選択されたステップの詳細を領域４０４に提示させてよい。例えば、領域４０４は、ステップ実行のステータス（例えば、「ｓｔｅｐ＿ｓｕｃｃｅｅｄｅｄ」）、ステップの開始時間、ステップの終了時間、ステップの経過時間、試行回数、ステップに関連するアクティビティ名及び／またはステップに関連するホストアドレスなど、ステップ４０２の追加の詳細を提示する。場合によっては、様々なタブ「ステップデータ」、「例外」、「入力」、「出力」及び「リンク」を選択することによって、ステップの詳細のさらなる態様をＧＵＩ４００に提示することができる。場合によっては、ＧＵＩ４００のステップ詳細図は、ユーザが、ワークフローの特定のステップをデバッグ、トラブルシューティング及び／または理解するために特定の情報を提供する。
【００４４】
図５は、ワークフローの視覚化のワークフロータイムライン表示を例示するＧＵＩ５００を示す。場合によっては、ＧＵＩ５００は、図３及び図４のワークフロー１に対応し得るワークフロー１を例示する。しかしながら、このＧＵＩ５００では、視覚化は、図３及び図４に例示されたグラフ表示に加えて、タイムライン表示として例示されている。例えば、ＧＵＩ５００は、選択されると、グラフ表示からタイムライン表示に視覚化を切り替えることができるタイムライン選択ボタン５０２を含む。図示の通り、タイムライン表示は、開始／終了遅延及び／またはステップ名を例示するかどうかをユーザが選択できるようにするオプション５０４を含む。図示の通り、ＧＵＩ５００は、ステップ１〜９のステップ名を例示する。場合によっては、ＧＵＩ５００は、実行中にスキップされるステップ（例えば、ステップ１０及び１１）を省略する。
【００４５】
ＧＵＩ５００内のタイムライン表示は、ワークフローの視覚的表示、並びに時間Ｔ1からＴ7までのワークフロー１の各ステップに関連する実行時間と待ち時間との相対量を提供することができる。例えば、ステップ１は、ステップ２よりも長いバーで例示されており、これは、ステップ２と比較してステップ１のより長い経過時間に対応する。さらに、タイムライン表示は、一連の動作を例示する。ステップ１は、タイムライン表示のステップ２の前に発生しているものとして物理的に例示されており、これは、ワークフロー１における動作の順序を例示することができる。例えば、ステップ６及び７は、並列的に発生しているように例示され、これは、ワークフロー１の並列的な実行に対応することができる。
【００４６】
さらに、ＧＵＩ５００内のタイムライン表示は、ワークフロー１の実行に関連する様々な待ち時間を例示することができる。例えば、タイムライン表示の最初の領域５０６は、ワークフロー１の実行が実行されたときと、ステップ１の実行が開始されたときとの間の時間（例えば、開始遅延）に対応することができる。さらに、タイムライン表示の最後にある領域５０８は、ステップ９の完了後からワークフロー１の完了までの時間量（例えば、終了遅延）を示すことができる。白い空間５１０は、各ステップ（例えば、ステップ１）の実行時間に対応することができ、灰色の領域５１２は、ステップが全く実行されていない間のワークフローエンジンのオーバーヘッド処理の一部を示すことができる。場合によっては、灰色の領域５１２として例示される待ち時間は、メモリに転送されるデータ、メモリにロードされる命令、あるステップから別のステップへの関数呼び出しなどに対応することができる。場合によっては、ステップの個別バー（例えば、バー５１４）は、例えば、ステップの最終ステータスに従って、色付けされるか、または別様には（パターン、テキストなどを用いて）例示することができる。
【００４７】
場合によっては、ＧＵＩ５００に例示されるタイムライン表示において、ワークフローの詳細を領域５１６に提供することができる。場合によっては、図５のワークフロー１は図３のワークフロー１に対応するため、領域５１６に提供されるワークフローの詳細は、図３の領域３２２に提供されるワークフローの詳細に対応することができる。さらに、本開示の文脈において理解される通り、ユーザは、ワークフロー１の個別のステップを選択することができ、図４に例示されるステップの詳細と同様に、ステップの詳細をＧＵＩ５００に表示させることができる。
【００４８】
図６は、ワークフローの視覚化の失敗ステップのワークフロー詳細図を例示するＧＵＩ６００を示す。場合によっては、ＧＵＩ６００内のワークフロー２は、ステップ６０２として例示されたステップ１８において失敗している。例えば、このステップが失敗したことを示すために、ワークフローグラフの凡例に従って、失敗したステップをＧＵＩ６００内で色付け（またはテキスト、パターンなどを使用して区別）することができる。例えば、ステップ１６は、ワークフロー２において「スキップされた」として例示され、ステップ１８が失敗したときにワークフロー２の処理が終了したため、ステップ１９、２０及び２１は「実行されていない」として例示される。さらに、場合によっては、失敗表示をグラフィック６０４として提供することができる。ワークフローが失敗する前の実行時間の量、開始時間及び終了時間の詳細は、領域６０６に例示されている。
【００４９】
「失敗」として例示されたステップ６０２に加えて、ステップ６０２には例外６０８を付加することができ、これは、ステップ６０２の実行に関連するいくつかの例外を例示することができる。理解される通り、ステップは様々な理由により失敗し得る及び／または例外に遭遇し得る。例えば、個々のステップが失敗する可能性があるのは、データベース呼び出しのリンクが壊れており必要な情報にアクセスできないこと、ステップによって受信されたデータが、ステップが受信できない形式（例えば、整数の代わりに文字列として）である可能性があること、ネットワークが輻輳しているときにステップがタイムアウトになり指定時間内に応答が受信されなかった可能性があることなどである。場合によっては、ステップは本明細書に論じる任意の態様に関する情報で注釈を付けるか、例示することができ、このような注釈または例示は例外に限定されない。
【００５０】
場合によっては、ステップ６０２をＧＵＩ６００で選択できるため、ステップ６０２の失敗した実行に対応する情報を提供する領域６１０にステップの詳細を提供できる。例えば、領域６１０のステップの詳細は、ステップのステータス（例えば、「Ｆａｉｌｅｄ＿ｗｉｔｈ＿Ｅｘｃｅｐｔｉｏｎ」）、開始時間、終了時間、経過時間（例えば、ステップの失敗まで）、試行回数及びステップの状態を含むことができるが、これらに限定されない。場合によっては、「ステップデータ」、「例外」、「入力」、「出力」及び「リンク」などのステップの詳細に、ステップ実行に関連する追加情報を提供できる。例外に関連する追加情報は、例外タブの上の注釈６１２として例示することができ、これは、ユーザによって有効化（例えば、選択）されたときに追加情報を提供できる。場合によっては、ステップの詳細表示は、ステップインスタンスの例外に関連するエラーログへのリンクを提供できる。ゆえに、ユーザは例外に関連するエラーログに迅速にアクセスして、例外の根本的な原因をトラブルシューティング及び／または修復することができる。
【００５１】
場合によっては、ステップ６０２は関連する子ワークフローを有することができ、場合によっては、ステップ６０２はワークフロー全体を表すことができる。例えば、任意の子ワークフローに関連する追加情報を、子ワークフロー情報６１４としてステップの詳細に提供できる。理解される通り、子ワークフロー情報６１４は、ユーザによって有効になり、ＧＵＩ６００内に追加の詳細（例えば、ワークフローグラフまたはタイムライン表示、ワークフローの詳細、ステップの詳細など）を提供できる。
【００５２】
理解される通り、ユーザは、本開示の実施形態によって、失敗したワークフローのグラフ表示とタイムライン表示との間を切り替えることができる。さらに、ＧＵＩ６００に例示するステップ詳細に加えて、またはその代わりに、失敗したワークフローに関するワークフローの詳細を提供できる。
【００５３】
図７は、集計した失敗インスタンスを含む、集計したワークフローの図を例示するＧＵＩ７００を示す。場合によっては、ＧＵＩ７００は、ワークフロー３の５１９，０４５個のインスタンスにわたるワークフロー３の集計データを例示する。すなわち、ワークフロー３は合計で５１９，０４５回実行されており、図７は、個々のステップに関連付けられた集計データを表す。場合によっては、ワークフローに対応する集計データをパイプラインと呼ぶことができる。図７は、ワークフロー３のパイプライン１を例示する。
【００５４】
図７に例示される集計データは、領域７０４に指定される期間にわたりワークフロー（例えば、ステータス７０２として例示される）のステータスに従って検索及び／またはフィルタリングすることができる。例えば、追加のステータスはステータス７０２として選択されることができ、開始、完了、終了、一時停止、有効、スキップなどを含むが、これらに限定されない。さらに、任意の期間を領域７０４で識別することができる。
【００５５】
追加の検索及び／またはフィルタリングは、例えば、ＧＵＩ７００内に提供できる。タグ、オプション、ワークフロー名、優先度などを含むが、これらに限定されない検索を調整するためのＧＵＩ７００の領域のみでなく、ワークフローのリストをＧＵＩに提供することができる。場合によっては、ユーザは、タグボタン７０６を使用してタグを検索することができ、領域７０８にリストされたワークフローを選択することができ、及び／または優先度選択ボタン７１０を使用して優先度でフィルタリングすることができる。
【００５６】
検索及び／またはフィルタリングが様々なワークフローに適用されると、集計データの概要をＧＵＩ７００に要約７１２で提示することができる。例えば、要約７１２は、パイプライン内で集計されたワークフローの総数、失敗したワークフローの数、有効なワークフローの数、成功したワークフローの数などをリストすることができる。場合によっては、要約情報の色、パターン、サイズ、形状または他の表示は、色、パターン、サイズ、形状またはワークフロー３に例示される様々なステップの他の表示に対応し、様々なステップのステータスの識別を容易にすることができる。
【００５７】
ＧＵＩ７００は、ワークフロー待ち時間及びステップ待ち時間に関するより詳細な情報へのリンクをさらに例示する。例えば、グラフィック７１４を有効化して、ワークフローに関連する待ち時間情報を提示することができる。さらに、ＧＵＩ７００は、パイプライン表示で表されるワークフローの量を例示する棒グラフ７１６を例示することができる。
【００５８】
グラフ選択ボタン７１８は、ユーザがグラフ表示とタイムライン表示とを切り替えることを可能にする。「詳細表示」選択ボタン７２０は、ユーザが個々のステップを選択する、及び／またはワークフローまたはワークフロー内の個々の集計ステップの追加の詳細を見ることを可能にする。
【００５９】
例外注釈７２２は、フィルタリングされた集計データ内の特定のステップ（例えば、ステップ２５）に関連するいくつかの例外を例示することができる。場合によっては、ユーザは、例外注釈７２２を有効化して、ステップに関連する例外に関する追加データを表示するか、別様に提示することができる。場合によっては、ワークフローは、結果ごとにグループ化され、要約７２４としてＧＵＩ７００に提示することができ、これによって、異なるステータスを選択及び有効化して、グループ化されたワークフローについての追加情報を提供できる。例えば、ユーザは、ボタン７２６を有効にして、パイプライン１に関連する３５７個の失敗したワークフローに関する追加の情報を提示できる。上述の通り、注釈または例示は例外に限定されず、ステップ及び／またはワークフローに関する任意の情報は、本開示の実施形態に従って注釈を付けるか、または例示することができる。
【００６０】
図８は、個々のステップの待ち時間グラフを含む、集計したワークフロー待ち時間タイムラインを例示するＧＵＩ８００を示す。場合によっては、ＧＵＩ８００は、図７に例示するパイプライン１に対応することができるパイプライン１を例示することができる。例えば、ユーザは、タイムライン表示選択ボタン８０２を有効にして（例えば、図７に示すような）グラフ表示と（例えば、図８に示すような）タイムライン表示とを交互に切り替えることができる。
【００６１】
ＧＵＩ８００のタイムライン表示は、ワークフローのステップの視覚的表示、並びに時間Ｔ1からＴ7までのワークフロー３の各ステップに関連する実行時間と待ち時間との相対量を提供することができる。例えば、ステップ２４は、ステップ２５よりも短いバーで例示されており、これは、ステップ２５と比較してステップ２４のより短い集計された経過時間に対応する。場合によっては、ステップに関連するバーの長さは、集計データに関連付けられた期間にわたる各ステップの平均実行時間に対応することができ、場合によっては、長さは最短実行時間または最長実行時間に対応することができる。場合によっては、ＧＵＩ８００のバーの長さは平均実行時間に対応することができ、標準偏差はＧＵＩ８００と統合されたバーとして例示される。
【００６２】
１つの例では、個々のステップバーは、特定のステップの待ち時間が集計期間８０６（例えば、２０１６年５月１２日から現在までの期間）にわたってどのように変化したかを示すことができる待ち時間グラフ８０４を含むことができる。例えば、フィルタリングされた期間８０６が１週間を表す場合、待ち時間グラフ８０４は、集計されたタイムラインに示された１週間という長さの期間にわたる特定のステップ（例えば、ステップ２５）の待ち時間を例示することができる。待ち時間グラフ８０４に関して、待ち時間グラフ８０４の水平軸は時間軸を指すことができ、待ち時間グラフ８０４の垂直軸は特定の時間におけるステップに関連する待ち時間を指すことができる。
【００６３】
場合によっては、ワークフローのオーバーヘッドは、オーバーヘッド８０８として表すことができる。オーバーヘッド８０８は、パイプライン１の集計データに関連する平均オーバーヘッドを表すことができる。場合によっては、ＧＵＩ８００は、ワークフロー３の合計平均待ち時間を例示するバー８１０を含むことができる。
【００６４】
図９は、集計した待ち時間タイムラインの詳細図を例示するＧＵＩ９００を示す。場合によっては、ＧＵＩ９００は、図７及び図８のパイプライン１に対応することができるパイプライン１を例示することができる。場合によっては、図９は、詳細選択ボタン９０２を有効にしたときに提示することができる。場合によっては、図９は、図９に例示する通り、ステップ２５のような個々の集計ステップの選択時に提示することができる。例えば、ステップ２５を有効にすると、ステップ２５の集計データに対応する詳細を提示させることができる。場合によっては、ステップの詳細は待ち時間グラフ９０４を例示することができ、これは、タイムライン表示に例示される待ち時間グラフ９０６に対応することができる。さらに集計される詳細に、平均待ち時間、最小待ち時間、最大待ち時間、標準偏差及び集計データの様々なパーセンタイルに関連する待ち時間を含むことができるが、これらに限定されない。
【００６５】
パーセンタイル９０８は、集計データの様々なパーセンタイルに関連する待ち時間の表を示す。例えば、２５パーセンタイルは実行時間を表し、これによって、集計されたワークフローの２５％がより少ない時間で実行される。同様に、実行時間が２，５２０秒であることを示す９９パーセンタイルは、ステップ２５を含むワークフローの９９％がステップ２５を２，５２０秒未満で実行することを示す。場合によっては、合計９１０のパーセンテージは、特定のステップの合計インスタンスの合計数を表すことができる。場合によっては、合計９１０は棒グラフ９１２に対応することができる。
【００６６】
場合によっては、ＧＵＩ９００は、集計データの表示パーセンタイルを選択する統計選択ボタン９１４を含み得る。例えば、統計選択ボタン９１４は、９９．９パーセンタイルの選択を示す。この選択の際に、ＧＵＩ９００は待ち時間を表すことができ、これによって、ワークフローの９９．９％が提示された時間よりも短くなる。場合によっては、統計選択ボタン９１４は、集計データの最速９９．９％に対応する平均待ち時間を示すことができる。理解される通り、統計選択ボタン９１４を使用して、任意の選択パーセンテージ（例えば、１０％、２５％、５０％、９９％、９９．９％、９９．９９％など）を選択できる。このようにして、ＧＵＩ９００は、ワークフローエンジン内の様々なワークフローの動作を効果的に見るために、最悪の場合の実行時間を容易に提示することができる。
【００６７】
ゆえに、本明細書に記載のワークフローの視覚化はワークフロー動作を示し、データを集計し、実行傾向を視覚的に表す集計統計を提供することができる。このように従来とは異なるこれらの視覚化を提供することにより、ワークフローを理解してデバッグすることができ、これによって、コンピュータの機能が改善され、一般的なワークフローの機能が改善される。
【００６８】
本明細書に開示される実施形態は、少なくとも１つのグラフィカルユーザインターフェースを提供するシステムを含んでよく、システムは、１つ以上のプロセッサ及び／またはコンピュータ実行可能命令を記憶する１つ以上のコンピュータ可読記憶媒体を含んでよく、１つ以上のプロセッサによって実行されると、１つ以上のプロセッサに、ワークフローのステップの第１のステップインスタンスに関連する第１のステップデータを受信することであって、第１のステップデータは少なくとも第１のステップインスタンスの第１の開始時間、第１のステップインスタンスの第１の終了時間、第１のステップインスタンスの第１のステータス及び第１のステップインスタンスの第１の識別情報を含む、受信すること、ワークフローのステップの第２のステップインスタンスから第２のステップデータを受信することであって、第２のステップデータは少なくとも第２のステップインスタンスの第２の開始時間、第２のステップインスタンスの第２の終了時間、第２のステップインスタンスの第２のステータス及び第２のステップインスタンスの第２の識別情報を含む、受信すること、集計ステップデータとして、第１のステップデータ及び第２のステップデータを集計し、第１のステップインスタンス及び第２のステップインスタンスの平均経過時間を決定すること、第２のステップインスタンスが例外に遭遇して第２のステップインスタンスに関連する少なくとも一部の動作の完了を失敗したことを第２のステップインスタンスの第２のステータスが示すことを決定すること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフローのステップのグラフィック表示を提示することのうちの１つ以上を行わせ、グラフィック表示は集計ステップデータの平均経過時間の表示を含み、第２のステップインスタンスに関連する例外の表示を含む。
【００６９】
任意には、１つ以上のプロセッサはさらに、少なくとも１つのグラフィカルユーザインターフェースを介して、例外の選択を受信すること及び／または選択に少なくとも部分的に基づき、少なくとも１つのグラフィカルユーザインターフェースを介して、第２のステップインスタンスに関連するエラーログに関連する追加情報を提示することのうちの１つ以上を行うように構成されてよい。任意には、ワークフローのステップのグラフィック表示は、ワークフローの個別のステップ間の動作フローを示すワークフローのグラフ表示を含んでよく、少なくとも１つのグラフィカルユーザインターフェースはワークフローのグラフ表示とタイムライン表示との間を変更する選択ボタンを含んでよく、１つ以上のプロセッサは、選択ボタンの有効化を受信する及び／または選択ボタンの有効化に応答して、少なくとも１つのグラフィカルユーザインターフェースを介してワークフローのタイムライン表示を提示するようにさらに構成されてよく、タイムライン表示は、ワークフローの動作の全体の経過時間に対するステップの平均経過時間に部分的に基づいてスケーリングされたワークフローのステップの少なくとも１つのグラフィック表現を含む。
【００７０】
任意的には、ワークフローのステップは第１のステップであってよく、ワークフローは、第１のステップに依存する第２のステップと、第２のステップに依存する第３のステップとをさらに含んでよく、１つ以上のプロセッサは、少なくとも１つのグラフィカルユーザインターフェースを介して、第２のステップ及び第３のステップのグラフィック表示を提示するようにさらに構成されてよく、第２のステップ及び第３のステップのグラフィック表示は、第１のステップ、第２のステップ及び第３のステップの間のワークフローの動作フローの表示を含む。任意には、第１のステップデータは、第１のステップインスタンスに関連するタグ情報を含んでよく、１つ以上のプロセッサは、少なくとも１つのグラフィカルユーザインターフェースを介して、タグ情報に関連する情報及びワークフローの実行期間を検索すること及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフローの更新されたグラフィック表示を提示するようにさらに構成されてよく、更新されたグラフィック表示は、少なくとも部分的に検索情報に基づく少なくとも１つのステップインスタンスを含む。
【００７１】
任意には、本明細書に開示する実施形態は、１つ以上のプロセッサ及び／またはコンピュータ実行可能命令を格納する１つ以上のコンピュータ可読媒体を含み、１つ以上のプロセッサにより実行されると、１つ以上のプロセッサに、ワークフローの第１のステップに関連する第１のステップデータを受信することであって、第１のステップデータは第１のステップの実行に関連するタイミング情報を含む、受信すること、ワークフローの第２のステップに関連する第２のステップデータを受信すること、少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフロー内に第１のステップを示す第１のグラフィック表示を提示すること、少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフロー内に第２のステップを示す第２のグラフィック表示を提示すること、少なくとも１つのグラフィカルユーザインターフェースを介して、第１のグラフィック表示の選択を受信すること、及び／または選択の少なくとも一部を基に、少なくとも１つのグラフィカルユーザインターフェースを介して、第１のステップの実行に関連するタイミング情報の少なくとも１部分の表示を提示させることのうちの１つ以上を行わせる、システムを含んでよい。
【００７２】
任意には、第１のステップはワークフローの第１のステップの第１のインスタンスであってよく、第２のステップはワークフローの第２のステップの第２のインスタンスであってよく、１つ以上のプロセッサはさらに、ワークフローの第１のステップの第３のインスタンスに関連する第３のステップデータを受信すること、ワークフローの第２のステップの第４のインスタンスに関連する第４のステップデータを受信すること、第１の集計データとして、第１のステップデータ及び第３のステップデータを集計して、第１のステップの第１の平均経過時間を決定すること、第２の集計データとして、第２のステップデータ及び第４のステップデータを集計し、第２のステップの第２の平均経過時間を決定すること及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、第１の集計データを示す第３のグラフィック表示及び第２の集計データを示す第４のグラフィック表示を提示させることのうちの１つ以上を行うように構成されてよい。任意には、１つ以上のプロセッサはさらに、第１のステップの終了時間及び第２のステップの第２の開始時間に少なくとも部分的に基づき、システムの処理オーバーヘッドを決定することであって、処理オーバーヘッドはワークフローの１つ以上のステップの処理時間とは無関係に、ワークフローの実行時間に対応する、決定すること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、システムの処理オーバーヘッドに関連する処理時間量を示す第３のグラフィック表示を提示させることを行うように構成されてよい。
【００７３】
任意には、１つ以上のプロセッサはさらに、少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフローの１つ以上の動作に対応する日付範囲の選択を受信することと、ワークフローの複数のインスタンスを検索することであって、ワークフローの複数のインスタンスは日付範囲内で開始する、検索することと、処理を完了したワークフローの複数のインスタンスの第１の部分を決定することと、処理を実行中のワークフローの複数のインスタンスの第２の部分を決定することと、処理を失敗したワークフローの複数のインスタンスの第３の部分を決定することと、少なくとも１つのグラフィカルユーザインターフェースを介して、第１の部分、第２の部分及び第３の部分のグラフィック表示を提示させることであって、グラフィック表示は、少なくとも第１の部分に関連する１番目のインスタンスと、第２の部分に関連する２番目のインスタンスと、第３の部分に関連する３番目のインスタンスとを含む、提示させることとのうちの１つ以上を行うように構成されてよい。任意には、１つ以上のプロセッサはさらに、第１のステップまたは第２のステップのうちの少なくとも１つに関する例外の表示を受信することであって、例外は、第１のステップまたは第２のステップのうちの少なくとも１つの実行中の少なくとも１つのエラーを示す、受信すること、少なくとも１つのグラフィカルユーザインターフェースを介して、例外の表示を提示させること、少なくとも１つのグラフィカルユーザインターフェースを介して、例外の選択を受信すること、及び／または選択に少なくとも部分的に基づき、少なくとも１つのグラフィカルユーザインターフェースを介して、例外に関する情報を提示させることのうちの少なくとも１つを行うように構成されてよい。
【００７４】
任意には、第１のグラフィック表示及び第２のグラフィック表示は、第１のステップと第２のステップとの間の動作関係を示すために、少なくとも１つのグラフィカルユーザインターフェース内に配置されてよい。任意には、１つ以上のプロセッサはさらに、第１のステップの開始時間及び終了時間に部分的に基づいて、第１のグラフィック表示の第１のサイズを決定すること、第２のステップの第２の開始時間及び第２の終了時間に部分的に基づいて、第２のグラフィック表示の第２のサイズを決定すること、少なくとも１つのグラフィカルユーザインターフェースを介して、第１のサイズに従う第１のグラフィック表示を提示させること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、第２のサイズに従う第２のグラフィック表示を提示させることのうちの１つ以上を行うように構成されてよく、第１のサイズは第１のステップの第１の動作時間を表してよく、第２のサイズは第２のステップの第２の動作時間を表してよい。任意には、１つ以上のプロセッサはさらに、少なくとも１つのグラフィカルユーザインターフェースを介して、ある期間にわたり第１のステップのインスタンスの複数の経過時間に関連する待ち時間グラフを提示させるように構成されてよく、待ち時間グラフは第１のグラフィック表示にわたり提示される。任意には、１つ以上のプロセッサはさらに、第１のステップに関連するタグに関連するタグ情報を受信すること、少なくとも１つのグラフィカルユーザインターフェースを介して、タグの第３のグラフィック表示を提示させること、少なくとも１つのグラフィカルユーザインターフェースを介して、タグの第３のグラフィック表示の選択を受信すること、第１のステップの複数のインスタンスを集計し、複数のインスタンスはタグに関連付けられること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、第１のステップの複数のインスタンスのグラフィック表現を提示させることのうちの１つ以上を行うように構成されてよく、第１のステップの複数のインスタンスのグラフィック表現は、１つ以上の例外を含む複数のインスタンスの少なくともいくつかのインスタンスを含む。
【００７５】
本明細書に開示する実施形態は、ワークフローの第１のステップに関連する第１のステップデータを受信することであって、第１のステップデータは少なくとも第１のステップの開始時間及び終了時間に関連するタイミング情報を含む、受信すること、ワークフローの第２のステップに関連する第２のステップデータを受信すること、少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフロー内に第１のステップを示す第１のグラフィック表示を提示させること、少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフロー内に第２のステップを示す第２のグラフィック表示を提示させること、少なくとも１つのグラフィカルユーザインターフェースを介して、第１のグラフィック表示の選択を受信すること、及び／または選択の少なくとも一部を基に、少なくとも１つのグラフィカルユーザインターフェースを介して、第１のステップに関連するタイミング情報の表示を提示させることのうちの１つ以上を含む方法を含んでよい。
【００７６】
任意には、第１のステップはワークフローの第１のステップの第１のインスタンスであってよく、第２のステップはワークフローの第２のステップの第２のインスタンスであってよく、さらに、ワークフローの第１のステップの第３のインスタンスに関連する第３のステップデータを受信すること、ワークフローの第２のステップの第４のインスタンスに関連する第４のステップデータを受信すること、第１の集計データとして、第１のステップデータ及び第３のステップデータを集計し、第１のステップの第１の平均経過時間を決定すること、第２の集計データとして、第２のステップデータ及び第４のステップデータを集計し、第２のステップの第２の平均経過時間を決定すること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、第１の集計データを示す第３のグラフィック表示及び第２の集計データを示す第４のグラフィック表示を提示させることのうちの１つ以上を含む。任意には、方法はさらに、少なくとも１つのグラフィカルユーザインターフェースを介して、ワークフローの１つ以上の動作に対応する日付範囲の選択を受信すること、ワークフローの複数のインスタンスを検索することであって、ワークフローの複数のインスタンスは日付範囲内で開始する、検索すること、処理を完了したワークフローの複数のインスタンスの第１の部分を決定すること、処理を実行中のワークフローの複数のインスタンスの第２の部分を決定すること、処理を失敗したワークフローの複数のインスタンスの第３の部分を決定すること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、第１の部分、第２の部分及び第３の部分のグラフィック表示を提示させることのうちの少なくとも１つを含んでよく、グラフィック表示は、少なくとも第１の部分に関連する１番目のインスタンスと、第２の部分に関連する２番目のインスタンスと、第３の部分に関連する３番目のインスタンスとを含む。
【００７７】
任意には、方法はさらに、第１のステップまたは第２のステップのうちの少なくとも１つに関する例外の表示を受信することであって、例外は、第１のステップまたは第２のステップのうちの少なくとも１つの実行中の少なくとも１つのエラーを示す、受信すること、少なくとも１つのグラフィカルユーザインターフェースを介して、例外の表示を提示させること、少なくとも１つのグラフィカルユーザインターフェースを介して、例外の選択を受信すること、及び／または選択に少なくとも部分的に基づき、少なくとも１つのグラフィカルユーザインターフェースを介して、例外に関する情報を提示させることのうちの１つ以上を含んでよい。任意には、方法は、少なくとも１つのグラフィカルユーザインターフェースを介して、ある期間にわたり第１のステップのインスタンスの複数の経過時間に関連する待ち時間グラフを提示させることをさらに含んでよく、待ち時間グラフは第１のグラフィック表示にわたり提示される。任意には、方法はさらに、第１のステップに関連するタグに関連するタグ情報を受信すること、少なくとも１つのグラフィカルユーザインターフェースを介して、タグの第３のグラフィック表示を提示させることと、少なくとも１つのグラフィカルユーザインターフェースを介して、タグの第３のグラフィック表示の選択を受信すること、第１のステップの複数のインスタンスを集計し、複数のインスタンスはタグに関連付けられること、及び／または少なくとも１つのグラフィカルユーザインターフェースを介して、第１のステップの複数のインスタンスのグラフィック表現を提示させることのうちの１つ以上を含んでよく、第１のステップの複数のインスタンスのグラフィック表現は、１つ以上の例外を含む複数のインスタンスの少なくともいくつかのインスタンスを含む。
【００７８】
発明主題は、構造的特徴及び／または方法論的動作に特有の言語で説明してきたが、添付の特許請求の範囲で定義される主題は、必ずしも説明してきた特定の特徴または動作に限定されるものではないことを理解されたい。むしろ、特定の特徴及び動作は、特許請求の範囲を実施する例示的形態として開示される。
【図１】
2019520649.tif 000003
【図２】
2019520649.tif 000004
【図３】
2019520649.tif 000005
【図４】
2019520649.tif 000006
【図５】
2019520649.tif 000007
【図６】
2019520649.tif 000008
【図７】
2019520649.tif 000009
【図８】
2019520649.tif 000010
【図９】
2019520649.tif 000011
【国際調査報告】
2019520649.tif 000012
2019520649.tif 000013