情報処理装置
【課題】より成功率の高い連携ワークフローを生成することができる情報処理装置を提供すること。
【解決手段】情報処理装置は、自装置でエラーが発生した際に自身の処理/データが誤っていたのか他の情報処理装置の処理/データが誤っていたのかを判定する判定手段と、エラーが自責と判定できなかった場合にエラーを発生させた原因を作った情報処理装置を特定するために代替機に処理を実行させるエラー発生原因特定手段と、エラーを発生させてしまったと特定された場合に、エラー誘発率として蓄積する蓄積手段とを有する。
【解決手段】情報処理装置は、自装置でエラーが発生した際に自身の処理/データが誤っていたのか他の情報処理装置の処理/データが誤っていたのかを判定する判定手段と、エラーが自責と判定できなかった場合にエラーを発生させた原因を作った情報処理装置を特定するために代替機に処理を実行させるエラー発生原因特定手段と、エラーを発生させてしまったと特定された場合に、エラー誘発率として蓄積する蓄積手段とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置同士を連携させるための連携ワークフロー技術に関するものである。
【背景技術】
【0002】
情報処理装置が連携を行って機能実現するネットワーク環境において、情報処理装置同士を連携させるために連携ワークフローを生成する事が一般的に行われている。
連携ワークフローはどの情報処理装置がどの順番にどの機能を実行するかが指定されているものである。
この連携ワークフローを生成する際に、全体の処理速度が速くなる情報処理装置を選定したり、消費電力が少なくなる情報処理装置を選定したり、機能の実行回数が多く実績のある情報処理装置を選定したりする技術が既に知られている。
【0003】
特許文献1には、連携ワークフローにおいて機密情報の漏洩を防止する目的で、各情報処理装置のセキュリティ強度を考慮して、より安全度が高くなるように連携ワークフローを生成するために、出力設定情報に従って印刷データを処理するためのデバイスを選択する手段と、各処理工程の処理を実行するデバイスを組み合わせて処理ルートを生成する生成手段と、予め定められた条件に従って処理ルートの安全度を決定する安全度決定手段と、安全度に従って印刷データを処理する処理ルートを決定する決定手段とを有する情報処理装置の構成が開示されている。
【0004】
特許文献2では、ワークフローを保持するワークフロー管理部と、ワークフローに定義される処理毎に各ユーザの利用制限の有無を示す権限情報を格納する権限情報格納部と、ユーザからのワークフローの実行要求を受け付け、実行要求に対応するワークフローと権限情報とを取得し、権限情報に基づき、ワークフローに定義された各処理についてユーザが利用制限されているかを判断し、利用制限されていないと判断した処理のみを、ワークフローに定義された処理順に依頼するワークフロー実行部と、依頼された処理を実行するデータ処理部とを備えることで、ネットワーク負荷を軽減し、それに付随する応答性を向上させ、利便性を向上させる技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、今までの連携ワークフローは情報処理装置がエラーを起こしてしまう確率、または他の情報処理装置にエラーを発生させてしまう確率を考慮して生成していない。そのため、速度が速かったり、消費電力が低かったり、機能の実行回数が多く実績があったりする場合でも、エラーが起こりやすい情報処理装置を使用してしまう事によって連携ワークフロー全体の処理をエラーで止めてしまい、処理をやり直さなければならなくなる事があるという問題があった。
【0006】
特許文献1や特許文献2でも、エラーが発生しやすい/させやすい情報処理装置が連携ワークフロー内に含まれてしまうという問題は解消できていない。
【0007】
本発明は、連携ワークフロー内にエラーを起こしてしまう事が多い情報処理装置や、連携相手にエラーを起こさせてしまう事が多い情報処理装置を含めないようにする事で、より成功率の高い連携ワークフローを生成することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1に記載の発明は、連携ワークフローを生成する情報処理装置であって、連携ワークフローにしたがって連携処理を実行する制御手段と、情報処理装置でエラーが発生した際に自身の処理/データが誤っていたのか他の情報処理装置の処理/データが誤っていたのかを判定する判定手段と、エラーが自責と判定できなかった場合にエラーを発生させた原因を作った情報処理装置を特定するために代替機に処理を実行させるエラー発生原因特定手段と、エラー発生原因特定手段によりエラーを発生させてしまったと特定された場合に、エラー誘発率として蓄積する蓄積手段とを有する事を特徴とする情報処理装置である。
【0009】
請求項2に記載の発明は、請求項1記載の情報処理装置において、蓄積手段は、判定手段により自責と判定した場合にエラー発生率として蓄積し、エラー発生率、エラー誘発率および連携ワークフロー内での処理順から情報処理装置の処理成功率を算出する算出手段と、算出手段による結果から成功率の高い連携ワークフローを生成する生成手段とを有する事を特徴とする。
【0010】
請求項3に記載の発明は、請求項2記載の情報処理装置において、より成功率の高い連携ワークフローを生成可能な場合、成功率の高い連携ワークフローに自動的に書き換える事を特徴とする。
【0011】
請求項4に記載の発明は、請求項1記載の情報処理装置において、全ての代替機を用いても処理が失敗してしまう場合に、ユーザにエラー情報を通知する事を特徴とする。
【0012】
請求項5に記載の発明は、請求項4記載の情報処理装置において、ユーザの入力が誤っていた可能性があることを通知し、ユーザに誤っていたかどうかを入力させ、ユーザの入力が誤っていないと入力された場合に、連携ワークフロー内の全ての情報処理装置においてエラー発生率/誘発率として蓄積する事を特徴とする。
【0013】
請求項6に記載の発明は、請求項1記載の情報処理装置において、機能実行回数が一定回数に満たない情報処理装置は連携ワークフロー内に含めない事を特徴とする。
【0014】
請求項7に記載の発明は、請求項1記載の情報処理装置において、自身が含まれる連携ワークフロー内の処理において、自身のエラー発生率/誘発率が一定値以上になった場合に代替機のエラー発生率/誘発率と比較して、エラー発生率/誘発率の低い代替機があった場合はその旨を連携元に通知する事を特徴とする。
【0015】
請求項8に記載の発明は、請求項7記載の情報処理装置において、通知を受けてエラー発生率/誘発率の低い代替機に連携ワークフローを書き換える事を特徴とする。
【発明の効果】
【0016】
本発明によれば、成功率の高い連携ワークフローを生成する事ができる。
【図面の簡単な説明】
【0017】
【図1】本発明の構成概要図である。
【図2】連携ワークフローを実行した際の課題を説明する図である。
【図3】の情報処理装置に誤ったインプット情報を与えてしまう例を説明する図である。
【図4】情報処理装置Eの振る舞いを表したものである。
【図5】情報処理装置Bの振る舞いを表したものである。
【図6】エラー判定表である。
【図7】情報処理装置内で行う処理を表すフローチャート図である。
【図8】情報処理装置内部の機能ブロック図である。
【図9】成功率の高い連携ワークフローを生成する例の図である。
【図10】成功率の高いものが生成できた際には書き換えを行うシーケンスである。
【図11】ユーザへの通知を説明する図である。
【図12】ユーザへの通知を行うシーケンスである。
【図13】定回数に満たない情報処理装置を連携ワークフローに含めないシーケンスである。
【図14】より成功率が高い代替機がある場合は連携元の情報処理装置への通知を説明する図である。
【図15】より成功率が高い代替機がある場合は連携元の情報処理装置への通知を行うシーケンスである。
【図16】より成功率が高い代替機がある場合は連携ワークフローを書き換えるシーケンスである。
【発明を実施するための形態】
【0018】
以下、本発明の実施の形態について図を用いて詳細に説明する。
図1は本発明の構成概要図である。
機能α→機能β→機能γと連携させて機能を実現するような構成において本発明は適用される。各機能を持つ情報処理装置が複数存在し、これらを組み合わせて連携ワークフローを生成する事ができるものとする。
【0019】
図2のように情報処理装置A→情報処理装置B→情報処理装置Eの順に連携ワークフローを実行した際に、情報処理装置Eでエラーが発生したとする。
一般的に発生したエラーは発生した情報処理装置でカウントするが、エラーが発生した情報処理装置が必ずしも誤った処理を行ったとは限らない。機能βを担当した情報処理装置Bや機能αを担当した情報処理装置Aが誤った処理を行って、情報処理装置Eが正常に処理できないインプット情報を与えてしまった可能性がある。このような誤った情報を他の情報処理装置にインプットしてしまう情報処理装置が連携ワークフロー内にいるとエラーが発生してしまう確率が高くなり、処理を一からやり直さなければならないケースが出てきてしまうという問題がある。
【0020】
図3は他の情報処理装置に誤ったインプット情報を与えてしまう例である。
情報処理装置Aはスキャンを実行し、その結果を情報処理装置Bに渡してOCR処理を実行し、その結果を情報処理装置Eに渡して情報登録するという連携ワークフローがあるとする。この連携ワークフローを実行した際に、情報処理装置Eで登録エラーが発生した場合、必ずしも情報処理装置Eの処理が誤っていたとは限らず、情報処理装置Bで行ったOCR処理の精度が悪く、情報処理装置Eに渡した読み取り情報の文字データが不正である可能性がある。
また、情報処理装置Aで行ったスキャンの精度が悪いために情報処理装置Bで正常にOCR処理ができなかったという可能性もある。
【0021】
図4は例1の連携ワークフロー実行時に情報登録を行う情報処理装置Eでエラーが発生した際の、情報処理装置Eの振る舞いを表したものである。連携ワークフロー内の情報処理装置は後述するエラー判定表を持っており、エラー判定表を基に発生したエラーが自責であるか他責であるかを判定する。
1)エラー判定表を基に自責か他責かを判定
2)自責の場合は自身のエラー発生率にカウントする
3)他責の場合は情報登録処理に問題がない可能性があるとして、OCR処理に異常がなかったかどうかを調べるために情報処理装置Bに依頼を出す
4)エラー判定表から判断不能であった場合、情報登録処理を実行可能な情報処理装置(代替機)を検索する
5)発見した情報処理装置Dに対して情報登録処理を実行させ(2)'、エラーが発生するかどうかを確認する
6)エラーが発生しなかった場合は情報処理装置Eの処理が誤っていたとして、情報処理装置Eのエラー発生率にカウントする
7)エラーが発生した場合、他の代替機がある場合は同様の確認を行い、代替機がない場合は情報登録処理に問題がない可能性があるとして、OCR処理に異常がなかったかどうかを調べるために情報処理装置Bに依頼を出す
【0022】
図5は情報処理装置Eにエラーを発生させてしまった可能性のある情報処理装置Bの振る舞いを表したものである。
8)情報処理装置Bはエラーの原因が自責か他責かを自身のエラー判定表で判断する
9)自責の場合はエラーを発生させたとして情報処理装置Bのエラー誘発率をカウントする
10)他責の場合は情報処理装置Aにて同様の判定を行う
11)エラー判定表から判断不能であった場合、OCR処理を実行可能な情報処理装置(代替機)を検索する
12)発見した情報処理装置Cに対してOCR処理を実行させ(1)'、エラーが発生するかどうかを確認する
13)情報処理装置Cは連携ワークフローとして実行可能な情報処理装置D(2)'', 情報処理装置E(2) '''とそれぞれ連携処理を実行する
14)(2)''で処理が成功した場合、情報処理装置Bの処理が誤っていたという事が分かるため、情報処理装置Bのエラー誘発率をカウントする
15)(2)''で処理が失敗した場合、(2)'''を実行する
16)(2)'''で処理が成功した場合、情報処理装置Bと情報処理装置Dの処理が誤っていたという事が分かるため、情報処理装置Bのエラー誘発率をカウントし、さらに情報処理装置Dのエラー発生率をカウントする
17)(2)'''で処理が失敗した場合は、情報処理装置Aにて同様の判定を行う
【0023】
図6は情報処理装置が発生したエラーを自責か他責かを判定するエラー判定表の例である。
【0024】
エラー判定表は機能ごとに同一のものを持っても、情報処理装置ごとに異なるものを持っても構わない。図6の例では機能ごとに同一のエラー判定表を持っているものとする。
情報処理装置A(スキャン)→情報処理装置B(OCR)→情報処理装置E(情報登録)という連携ワークフローを実行して情報処理装置Eでエラーが発生したとする。
情報処理装置Eで発生したエラーが"Mem_Full (容量不足)"の場合、情報処理装置Eの自責エラーと判定できるため情報処理装置Eのエラー発生率としてカウントする。発生したエラーが"Unknown_Strage_Err (保存先不明)"の場合は他責のため、情報処理装置Bに処理が移り情報処理装置Bのエラー判定表で判定が行われる。情報処理装置Bのエラー判定表では"Unknown_Strage_Err (保存先不明)"は自責のため、情報処理装置Bのエラー誘発率としてカウントする。エラー判定表には発生する可能性のある全てのエラーに対して自責/他責の判定がされている必要はなく、確実に判定できるエラーのみエラー判定表に載っていればよい。
なお、エラー判定表に記載のないエラーに関しては図4、図5で示したような代替機での確認を行えばよい。
【0025】
図7は図4、図5、図6に関して、情報処理装置内で行う処理を表すフローチャート図である。
【0026】
図7を参照すると、ステップ801では、エラー情報を取得する。エラー情報とは具体的に、発生したエラーのエラーコード、および代替機に入れ替えて実行した連携ワークフローの結果である。自身でエラーが発生している場合は、自身のエラー発生源から取得し、エラー情報にはエラーコードのみが含まれる。自身でエラーが発生していない場合は、エラー情報は連携ワークフローの自身より1つ後の情報処理装置から判定依頼807を受ける形で取得し、エラー情報にはエラーコードに加えて、代替機に入れ替えて実行した連携ワークフローの結果も含まれる。
【0027】
ステップ802では、ステップ801で取得したエラーコードと自身が保持するエラー判定表を比較し、自責・他責が判定可能かを判断する。
【0028】
ステップ803では、ステップ802での判断を踏まえて、自責・他責を判定する。自責であれば、ステップ804へ進む。他責であれば、原因は連携ワークフローの自身より前と判定し、ステップ806へ進む。
【0029】
ステップ804では、自責であると判定した場合に、自身のエラー発生率またはエラー誘発率をカウントする。自身でエラーが発生している場合は、自身のエラー発生率をカウントし、自身でエラーが発生していない場合は、自身のエラー誘発率をカウントする。
【0030】
ステップ805では、どのようなエラーであったか、どの情報処理装置がエラーの原因であったかなどの情報をユーザへ通知する。
【0031】
ステップ806では、連携ワークフローの自身より1つ前に情報処理装置が存在するかを確認する。存在すれば、ステップ807へ進む。存在しなければ、原因の情報処理装置は特定できなかったと判定し、ステップ805へ進む。
【0032】
ステップ807では、連携ワークフローの自身より1つ前の情報処理装置へ判定を依頼する。このとき、ステップ801で取得したエラー情報を添付する。ステップ809で連携ワークフローを実行している場合は、エラー情報にはこれらの連携ワークフローの結果も加える。この情報処理装置での判定処理は終わり、自身より1つ前の情報処理装置へ処理が移る。
【0033】
ステップ808では、自身と同じ機能を持った代替機が存在するかを確認する。
【0034】
ステップ809では、自身とステップ808で確認した代替機を入れ替えた連携ワークフローを生成し、実行する。代替機が複数存在すれば、代替機の数だけ行う。
【0035】
ステップ810では、ステップ809での結果に成功した連携ワークフローがあるかを確認する。あれば、原因は特定できたと判断し、ステップ811へ進む。なければ、原因はまだ特定できないと判断し、ステップ806へ進む。
【0036】
ステップ811では、ステップ810で成功した連携ワークフローと失敗した連携ワークフロー(801で取得した連携ワークフローの結果も含む)を比較する。具体的には、失敗した連携ワークフローに含まれていて、成功した連携ワークフローに含まれていない情報処理装置を探す。それらの情報処理装置が、連携ワークフローを失敗させた原因と判断する。そして、それらの情報処理装置の自身以外に対して、エラー発生率またはエラー誘発率のカウントを要求する。自身のエラー発生率またはエラー誘発率のカウントは、ステップ804で行う。
【0037】
図8は本発明における情報処理装置内部の機能ブロック図である。表1に各機能ブロックの概要を示す。
【0038】
【表1】
【0039】
表2は各情報処理装置で保持しているエラー発生率/誘発率蓄積表の一例である。
【0040】
【表2】
【0041】
エラー発生率は当該機器で実行した機能のエラーコードごとにカウントし、エラー誘発率は当該機器で実行した機能と連携ワークフローにおける次の情報処理装置に依頼した処理の組み合わせでカウントする。依頼する処理の違いによってエラーが発生する確率が異なるためである。
【0042】
表3、図9はカウントしたエラー発生率/誘発率および連携ワークフロー内での処理順を評価基準として成功率の高い連携ワークフローを生成する例である。
【0043】
【表3】
【0044】
連携ワークフロー内での処理順を考慮するのは、連携ワークフローの最後に位置する情報処理装置のエラー誘発率は考慮する必要がないためである。エラー誘発率を考慮する必要があるのは次に処理の依頼をする情報処理装置だけでよい。
各連携ワークフローの成功率を掛け合わせると、情報処理装置1→情報処理装置4→情報処理装置5の組み合わせが最も成功率が高い事が分かる。
【0045】
本発明における情報処理装置は、連携ワークフロー生成部は任意のタイミングで連携ワークフローを生成し、既存の連携ワークフローよりも成功率の高いものが生成できた際には書き換えを行う。図10はその実施例(請求項3)である。
1)連携ワークフロー生成部は任意のタイミングで他の情報処理装置からエラー発生率/誘発率を収集する
2)連携ワークフロー生成部は収集した情報を基に連携ワークフローの生成を行う
3)処理成功率算出部により連携ワークフローの成功率を算出する
4)処理成功率算出部はエラー蓄積部からエラー発生率/誘発率を取得し、連携ワークフローの成功率を算出する
5)連携ワークフロー生成部は既存の連携ワークフローの成功率を取得し、生成した連携ワークフローの成功率と比較する
6)既存の連携ワークフローより生成した連携ワークフローの成功率が高かった場合は書き換える
【0046】
請求項4の実施例
図7のステップ805が該当する。
【0047】
請求項5の実施例
本発明における情報処理装置では、エラーを発生させた原因を作った情報処理装置を特定できなかった場合にはユーザにその旨を通知する。その際に、ユーザのインプット情報が誤っていなかったかどうかを確認し、誤っていたと入力された場合はユーザ責任なので特に何も行わないが、誤っていないと入力された場合は連携ワークフロー内の全ての情報処理装置のエラー発生率/誘発率をカウントする。
図11、図12はその実施例である。
図11を参照すると、連携元となる情報処理装置A上でユーザに"誤り有り"/"誤り無し"を選択してもらう画面を出し、"誤り無し"が選択された場合に情報処理装置A, B, Cにて実行機能のエラー誘発率をカウントし、情報処理装置D, Eにて実行機能のエラー発生率をカウントする。
【0048】
図12は請求項5の詳細なシーケンスである。
1)ユーザはインプット情報が誤っていない事を入力画面に入力する
2)入力画面はエラー発生原因特定部にユーザのインプット情報が誤っていない事を通知する
3)エラー発生原因特定部はエラー蓄積部にエラー誘発率をカウントさせる
4)エラー発生原因特定部は連携ワークフロー内の情報処理装置にエラー発生率/誘発率をカウントさせる命令を出す
5)通信部はカウント命令を送信する
6)連携ワークフロー内の情報処理装置はエラー発生率/誘発率をカウントする
【0049】
請求項6の実施例
本発明における情報処理装置は、連携ワークフロー生成部は連携ワークフローを生成する際に各情報処理装置の機能実行回数を収集し、一定回数に満たない情報処理装置を連携ワークフローに含めないようにする。
図13はその実施例である。
1)連携ワークフロー生成部は任意のタイミングで他の情報処理装置からエラー発生率/誘発率を収集する
2)連携ワークフロー生成部は他の情報処理装置から機能実行回数を収集する
3)連携ワークフロー生成部は収集した情報を基に連携ワークフローを生成する
4)連携ワークフロー生成部は連携ワークフローに含める対象となる情報処理装置の機能の実行回数が一定回数(任意の値を事前に設定可能)以上かを判定する
5)一定回数以上であった場合、処理成功率算出部によりワークフローの成功率を算出する
6)処理成功率算出部はエラー蓄積部からエラー発生率/誘発率を取得し、連携ワークフローの成功率を算出する
7)連携ワークフロー生成部は既存の連携ワークフローの成功率を取得し、生成した連携ワークフローの成功率と比較する
8)既存の連携ワークフローより生成した連携ワークフローの成功率が高かった場合は書き換える
【0050】
請求項7の実施例
本発明における情報処理装置は、各情報処理装置は自身のエラー発生率/誘発率と代替機のエラー発生率/誘発率を比較して、より成功率が高い代替機がある場合は連携元の情報処理装置にその旨を通知する。
図14、図15はその実施例である。
【0051】
図14を参照すると、情報処理装置Cでエラーが発生した時にエラー発生率/誘発率が一定値を超えた場合、情報処理装置Cは代替機である情報処理装置Bのエラー発生率/誘発率を確認する(1)。その際、自身よりもエラー発生率/誘発率が低かった場合は連携元である情報処理装置Aにその旨を通知する(2)。
【0052】
図15は詳細なシーケンスである。
1)エラー蓄積部はエラー発生率/誘発率が一定値(任意の値を事前に設定可能)以上になった事を検知する
2)エラー蓄積部はエラー発生原因特定部に代替機のエラー発生率/誘発率の収集を依頼する
3)エラー発生原因特定部は通信部に代替機のエラー発生率/誘発率の収集を依頼する
4)エラー蓄積部は収集したエラー発生率/誘発率と自身のエラー発生率/誘発率を比較する
5)自身より成功率の高い代替機があった場合、連携元の情報処理装置にその旨を通知するためにエラー発生原因特定部に通知を依頼するが、通知には代替機の成功率やIPアドレス等の機器情報が含まれている
6)エラー発生原因特定部は通信部に代替機のエラー発生率/誘発率の通知を依頼する
【0053】
請求項8の実施例
本発明における情報処理装置では、連携ワークフロー内の情報処理装置からより成功率の高い代替機があるという通知を受けて連携ワークフローを書き換える。
【0054】
図16はその実施例である。
1)通信部は連携ワークフロー内の情報処理装置からより成功率が高い代替機があるという通知を受け取るが、通知には代替機の成功率やIPアドレス等の機器情報が含まれている
2)通信部はその旨を連携ワークフロー生成部に通知する
3)連携ワークフロー生成部は通知された情報を基に連携ワークフローの生成を行う
4)処理成功率算出部により連携ワークフローの成功率を算出する
5)処理成功率算出部はエラー蓄積部からエラー発生率/誘発率を取得し、連携ワークフローの成功率を算出する
6)連携ワークフロー生成部は既存の連携ワークフローの成功率を取得し、生成した連携ワークフローの成功率と比較する
7)既存の連携ワークフローより生成した連携ワークフローの成功率が高かった場合は書き換える
【0055】
以下、各請求項ごとの作用・効果を記載する。
請求項2:成功率の高い連携ワークフローを生成する事ができる。
請求項3:ユーザが意識せずとも成功率の高いワークフローを自動的に利用できるようになる。
請求項4:ユーザがエラーの詳細を知る事ができる。
請求項5:ユーザの入力ミスを考慮してエラー発生率/エラー誘発率をカウントする事ができる。
請求項6:実績のない情報処理装置を除外する事で生成する連携ワークフローの信頼性が高まる。
請求項7:自身がエラーを起こしやすい事を通知する事でより成功率の高い連携ワークフローに自動で組み替える事ができる。
請求項8:自身がエラーを起こしやすい事を通知する事でより成功率の高い連携ワークフローに自動で組み替える事ができる。
【0056】
なお、上述する実施の形態は、本発明の好適な実施の形態であり、本発明の要旨を逸脱しない範囲内において種々変更実施が可能である。
【先行技術文献】
【特許文献】
【0057】
【特許文献1】特開2007−164422号公報
【特許文献2】特開2010−140089号公報
【技術分野】
【0001】
本発明は、情報処理装置同士を連携させるための連携ワークフロー技術に関するものである。
【背景技術】
【0002】
情報処理装置が連携を行って機能実現するネットワーク環境において、情報処理装置同士を連携させるために連携ワークフローを生成する事が一般的に行われている。
連携ワークフローはどの情報処理装置がどの順番にどの機能を実行するかが指定されているものである。
この連携ワークフローを生成する際に、全体の処理速度が速くなる情報処理装置を選定したり、消費電力が少なくなる情報処理装置を選定したり、機能の実行回数が多く実績のある情報処理装置を選定したりする技術が既に知られている。
【0003】
特許文献1には、連携ワークフローにおいて機密情報の漏洩を防止する目的で、各情報処理装置のセキュリティ強度を考慮して、より安全度が高くなるように連携ワークフローを生成するために、出力設定情報に従って印刷データを処理するためのデバイスを選択する手段と、各処理工程の処理を実行するデバイスを組み合わせて処理ルートを生成する生成手段と、予め定められた条件に従って処理ルートの安全度を決定する安全度決定手段と、安全度に従って印刷データを処理する処理ルートを決定する決定手段とを有する情報処理装置の構成が開示されている。
【0004】
特許文献2では、ワークフローを保持するワークフロー管理部と、ワークフローに定義される処理毎に各ユーザの利用制限の有無を示す権限情報を格納する権限情報格納部と、ユーザからのワークフローの実行要求を受け付け、実行要求に対応するワークフローと権限情報とを取得し、権限情報に基づき、ワークフローに定義された各処理についてユーザが利用制限されているかを判断し、利用制限されていないと判断した処理のみを、ワークフローに定義された処理順に依頼するワークフロー実行部と、依頼された処理を実行するデータ処理部とを備えることで、ネットワーク負荷を軽減し、それに付随する応答性を向上させ、利便性を向上させる技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、今までの連携ワークフローは情報処理装置がエラーを起こしてしまう確率、または他の情報処理装置にエラーを発生させてしまう確率を考慮して生成していない。そのため、速度が速かったり、消費電力が低かったり、機能の実行回数が多く実績があったりする場合でも、エラーが起こりやすい情報処理装置を使用してしまう事によって連携ワークフロー全体の処理をエラーで止めてしまい、処理をやり直さなければならなくなる事があるという問題があった。
【0006】
特許文献1や特許文献2でも、エラーが発生しやすい/させやすい情報処理装置が連携ワークフロー内に含まれてしまうという問題は解消できていない。
【0007】
本発明は、連携ワークフロー内にエラーを起こしてしまう事が多い情報処理装置や、連携相手にエラーを起こさせてしまう事が多い情報処理装置を含めないようにする事で、より成功率の高い連携ワークフローを生成することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1に記載の発明は、連携ワークフローを生成する情報処理装置であって、連携ワークフローにしたがって連携処理を実行する制御手段と、情報処理装置でエラーが発生した際に自身の処理/データが誤っていたのか他の情報処理装置の処理/データが誤っていたのかを判定する判定手段と、エラーが自責と判定できなかった場合にエラーを発生させた原因を作った情報処理装置を特定するために代替機に処理を実行させるエラー発生原因特定手段と、エラー発生原因特定手段によりエラーを発生させてしまったと特定された場合に、エラー誘発率として蓄積する蓄積手段とを有する事を特徴とする情報処理装置である。
【0009】
請求項2に記載の発明は、請求項1記載の情報処理装置において、蓄積手段は、判定手段により自責と判定した場合にエラー発生率として蓄積し、エラー発生率、エラー誘発率および連携ワークフロー内での処理順から情報処理装置の処理成功率を算出する算出手段と、算出手段による結果から成功率の高い連携ワークフローを生成する生成手段とを有する事を特徴とする。
【0010】
請求項3に記載の発明は、請求項2記載の情報処理装置において、より成功率の高い連携ワークフローを生成可能な場合、成功率の高い連携ワークフローに自動的に書き換える事を特徴とする。
【0011】
請求項4に記載の発明は、請求項1記載の情報処理装置において、全ての代替機を用いても処理が失敗してしまう場合に、ユーザにエラー情報を通知する事を特徴とする。
【0012】
請求項5に記載の発明は、請求項4記載の情報処理装置において、ユーザの入力が誤っていた可能性があることを通知し、ユーザに誤っていたかどうかを入力させ、ユーザの入力が誤っていないと入力された場合に、連携ワークフロー内の全ての情報処理装置においてエラー発生率/誘発率として蓄積する事を特徴とする。
【0013】
請求項6に記載の発明は、請求項1記載の情報処理装置において、機能実行回数が一定回数に満たない情報処理装置は連携ワークフロー内に含めない事を特徴とする。
【0014】
請求項7に記載の発明は、請求項1記載の情報処理装置において、自身が含まれる連携ワークフロー内の処理において、自身のエラー発生率/誘発率が一定値以上になった場合に代替機のエラー発生率/誘発率と比較して、エラー発生率/誘発率の低い代替機があった場合はその旨を連携元に通知する事を特徴とする。
【0015】
請求項8に記載の発明は、請求項7記載の情報処理装置において、通知を受けてエラー発生率/誘発率の低い代替機に連携ワークフローを書き換える事を特徴とする。
【発明の効果】
【0016】
本発明によれば、成功率の高い連携ワークフローを生成する事ができる。
【図面の簡単な説明】
【0017】
【図1】本発明の構成概要図である。
【図2】連携ワークフローを実行した際の課題を説明する図である。
【図3】の情報処理装置に誤ったインプット情報を与えてしまう例を説明する図である。
【図4】情報処理装置Eの振る舞いを表したものである。
【図5】情報処理装置Bの振る舞いを表したものである。
【図6】エラー判定表である。
【図7】情報処理装置内で行う処理を表すフローチャート図である。
【図8】情報処理装置内部の機能ブロック図である。
【図9】成功率の高い連携ワークフローを生成する例の図である。
【図10】成功率の高いものが生成できた際には書き換えを行うシーケンスである。
【図11】ユーザへの通知を説明する図である。
【図12】ユーザへの通知を行うシーケンスである。
【図13】定回数に満たない情報処理装置を連携ワークフローに含めないシーケンスである。
【図14】より成功率が高い代替機がある場合は連携元の情報処理装置への通知を説明する図である。
【図15】より成功率が高い代替機がある場合は連携元の情報処理装置への通知を行うシーケンスである。
【図16】より成功率が高い代替機がある場合は連携ワークフローを書き換えるシーケンスである。
【発明を実施するための形態】
【0018】
以下、本発明の実施の形態について図を用いて詳細に説明する。
図1は本発明の構成概要図である。
機能α→機能β→機能γと連携させて機能を実現するような構成において本発明は適用される。各機能を持つ情報処理装置が複数存在し、これらを組み合わせて連携ワークフローを生成する事ができるものとする。
【0019】
図2のように情報処理装置A→情報処理装置B→情報処理装置Eの順に連携ワークフローを実行した際に、情報処理装置Eでエラーが発生したとする。
一般的に発生したエラーは発生した情報処理装置でカウントするが、エラーが発生した情報処理装置が必ずしも誤った処理を行ったとは限らない。機能βを担当した情報処理装置Bや機能αを担当した情報処理装置Aが誤った処理を行って、情報処理装置Eが正常に処理できないインプット情報を与えてしまった可能性がある。このような誤った情報を他の情報処理装置にインプットしてしまう情報処理装置が連携ワークフロー内にいるとエラーが発生してしまう確率が高くなり、処理を一からやり直さなければならないケースが出てきてしまうという問題がある。
【0020】
図3は他の情報処理装置に誤ったインプット情報を与えてしまう例である。
情報処理装置Aはスキャンを実行し、その結果を情報処理装置Bに渡してOCR処理を実行し、その結果を情報処理装置Eに渡して情報登録するという連携ワークフローがあるとする。この連携ワークフローを実行した際に、情報処理装置Eで登録エラーが発生した場合、必ずしも情報処理装置Eの処理が誤っていたとは限らず、情報処理装置Bで行ったOCR処理の精度が悪く、情報処理装置Eに渡した読み取り情報の文字データが不正である可能性がある。
また、情報処理装置Aで行ったスキャンの精度が悪いために情報処理装置Bで正常にOCR処理ができなかったという可能性もある。
【0021】
図4は例1の連携ワークフロー実行時に情報登録を行う情報処理装置Eでエラーが発生した際の、情報処理装置Eの振る舞いを表したものである。連携ワークフロー内の情報処理装置は後述するエラー判定表を持っており、エラー判定表を基に発生したエラーが自責であるか他責であるかを判定する。
1)エラー判定表を基に自責か他責かを判定
2)自責の場合は自身のエラー発生率にカウントする
3)他責の場合は情報登録処理に問題がない可能性があるとして、OCR処理に異常がなかったかどうかを調べるために情報処理装置Bに依頼を出す
4)エラー判定表から判断不能であった場合、情報登録処理を実行可能な情報処理装置(代替機)を検索する
5)発見した情報処理装置Dに対して情報登録処理を実行させ(2)'、エラーが発生するかどうかを確認する
6)エラーが発生しなかった場合は情報処理装置Eの処理が誤っていたとして、情報処理装置Eのエラー発生率にカウントする
7)エラーが発生した場合、他の代替機がある場合は同様の確認を行い、代替機がない場合は情報登録処理に問題がない可能性があるとして、OCR処理に異常がなかったかどうかを調べるために情報処理装置Bに依頼を出す
【0022】
図5は情報処理装置Eにエラーを発生させてしまった可能性のある情報処理装置Bの振る舞いを表したものである。
8)情報処理装置Bはエラーの原因が自責か他責かを自身のエラー判定表で判断する
9)自責の場合はエラーを発生させたとして情報処理装置Bのエラー誘発率をカウントする
10)他責の場合は情報処理装置Aにて同様の判定を行う
11)エラー判定表から判断不能であった場合、OCR処理を実行可能な情報処理装置(代替機)を検索する
12)発見した情報処理装置Cに対してOCR処理を実行させ(1)'、エラーが発生するかどうかを確認する
13)情報処理装置Cは連携ワークフローとして実行可能な情報処理装置D(2)'', 情報処理装置E(2) '''とそれぞれ連携処理を実行する
14)(2)''で処理が成功した場合、情報処理装置Bの処理が誤っていたという事が分かるため、情報処理装置Bのエラー誘発率をカウントする
15)(2)''で処理が失敗した場合、(2)'''を実行する
16)(2)'''で処理が成功した場合、情報処理装置Bと情報処理装置Dの処理が誤っていたという事が分かるため、情報処理装置Bのエラー誘発率をカウントし、さらに情報処理装置Dのエラー発生率をカウントする
17)(2)'''で処理が失敗した場合は、情報処理装置Aにて同様の判定を行う
【0023】
図6は情報処理装置が発生したエラーを自責か他責かを判定するエラー判定表の例である。
【0024】
エラー判定表は機能ごとに同一のものを持っても、情報処理装置ごとに異なるものを持っても構わない。図6の例では機能ごとに同一のエラー判定表を持っているものとする。
情報処理装置A(スキャン)→情報処理装置B(OCR)→情報処理装置E(情報登録)という連携ワークフローを実行して情報処理装置Eでエラーが発生したとする。
情報処理装置Eで発生したエラーが"Mem_Full (容量不足)"の場合、情報処理装置Eの自責エラーと判定できるため情報処理装置Eのエラー発生率としてカウントする。発生したエラーが"Unknown_Strage_Err (保存先不明)"の場合は他責のため、情報処理装置Bに処理が移り情報処理装置Bのエラー判定表で判定が行われる。情報処理装置Bのエラー判定表では"Unknown_Strage_Err (保存先不明)"は自責のため、情報処理装置Bのエラー誘発率としてカウントする。エラー判定表には発生する可能性のある全てのエラーに対して自責/他責の判定がされている必要はなく、確実に判定できるエラーのみエラー判定表に載っていればよい。
なお、エラー判定表に記載のないエラーに関しては図4、図5で示したような代替機での確認を行えばよい。
【0025】
図7は図4、図5、図6に関して、情報処理装置内で行う処理を表すフローチャート図である。
【0026】
図7を参照すると、ステップ801では、エラー情報を取得する。エラー情報とは具体的に、発生したエラーのエラーコード、および代替機に入れ替えて実行した連携ワークフローの結果である。自身でエラーが発生している場合は、自身のエラー発生源から取得し、エラー情報にはエラーコードのみが含まれる。自身でエラーが発生していない場合は、エラー情報は連携ワークフローの自身より1つ後の情報処理装置から判定依頼807を受ける形で取得し、エラー情報にはエラーコードに加えて、代替機に入れ替えて実行した連携ワークフローの結果も含まれる。
【0027】
ステップ802では、ステップ801で取得したエラーコードと自身が保持するエラー判定表を比較し、自責・他責が判定可能かを判断する。
【0028】
ステップ803では、ステップ802での判断を踏まえて、自責・他責を判定する。自責であれば、ステップ804へ進む。他責であれば、原因は連携ワークフローの自身より前と判定し、ステップ806へ進む。
【0029】
ステップ804では、自責であると判定した場合に、自身のエラー発生率またはエラー誘発率をカウントする。自身でエラーが発生している場合は、自身のエラー発生率をカウントし、自身でエラーが発生していない場合は、自身のエラー誘発率をカウントする。
【0030】
ステップ805では、どのようなエラーであったか、どの情報処理装置がエラーの原因であったかなどの情報をユーザへ通知する。
【0031】
ステップ806では、連携ワークフローの自身より1つ前に情報処理装置が存在するかを確認する。存在すれば、ステップ807へ進む。存在しなければ、原因の情報処理装置は特定できなかったと判定し、ステップ805へ進む。
【0032】
ステップ807では、連携ワークフローの自身より1つ前の情報処理装置へ判定を依頼する。このとき、ステップ801で取得したエラー情報を添付する。ステップ809で連携ワークフローを実行している場合は、エラー情報にはこれらの連携ワークフローの結果も加える。この情報処理装置での判定処理は終わり、自身より1つ前の情報処理装置へ処理が移る。
【0033】
ステップ808では、自身と同じ機能を持った代替機が存在するかを確認する。
【0034】
ステップ809では、自身とステップ808で確認した代替機を入れ替えた連携ワークフローを生成し、実行する。代替機が複数存在すれば、代替機の数だけ行う。
【0035】
ステップ810では、ステップ809での結果に成功した連携ワークフローがあるかを確認する。あれば、原因は特定できたと判断し、ステップ811へ進む。なければ、原因はまだ特定できないと判断し、ステップ806へ進む。
【0036】
ステップ811では、ステップ810で成功した連携ワークフローと失敗した連携ワークフロー(801で取得した連携ワークフローの結果も含む)を比較する。具体的には、失敗した連携ワークフローに含まれていて、成功した連携ワークフローに含まれていない情報処理装置を探す。それらの情報処理装置が、連携ワークフローを失敗させた原因と判断する。そして、それらの情報処理装置の自身以外に対して、エラー発生率またはエラー誘発率のカウントを要求する。自身のエラー発生率またはエラー誘発率のカウントは、ステップ804で行う。
【0037】
図8は本発明における情報処理装置内部の機能ブロック図である。表1に各機能ブロックの概要を示す。
【0038】
【表1】
【0039】
表2は各情報処理装置で保持しているエラー発生率/誘発率蓄積表の一例である。
【0040】
【表2】
【0041】
エラー発生率は当該機器で実行した機能のエラーコードごとにカウントし、エラー誘発率は当該機器で実行した機能と連携ワークフローにおける次の情報処理装置に依頼した処理の組み合わせでカウントする。依頼する処理の違いによってエラーが発生する確率が異なるためである。
【0042】
表3、図9はカウントしたエラー発生率/誘発率および連携ワークフロー内での処理順を評価基準として成功率の高い連携ワークフローを生成する例である。
【0043】
【表3】
【0044】
連携ワークフロー内での処理順を考慮するのは、連携ワークフローの最後に位置する情報処理装置のエラー誘発率は考慮する必要がないためである。エラー誘発率を考慮する必要があるのは次に処理の依頼をする情報処理装置だけでよい。
各連携ワークフローの成功率を掛け合わせると、情報処理装置1→情報処理装置4→情報処理装置5の組み合わせが最も成功率が高い事が分かる。
【0045】
本発明における情報処理装置は、連携ワークフロー生成部は任意のタイミングで連携ワークフローを生成し、既存の連携ワークフローよりも成功率の高いものが生成できた際には書き換えを行う。図10はその実施例(請求項3)である。
1)連携ワークフロー生成部は任意のタイミングで他の情報処理装置からエラー発生率/誘発率を収集する
2)連携ワークフロー生成部は収集した情報を基に連携ワークフローの生成を行う
3)処理成功率算出部により連携ワークフローの成功率を算出する
4)処理成功率算出部はエラー蓄積部からエラー発生率/誘発率を取得し、連携ワークフローの成功率を算出する
5)連携ワークフロー生成部は既存の連携ワークフローの成功率を取得し、生成した連携ワークフローの成功率と比較する
6)既存の連携ワークフローより生成した連携ワークフローの成功率が高かった場合は書き換える
【0046】
請求項4の実施例
図7のステップ805が該当する。
【0047】
請求項5の実施例
本発明における情報処理装置では、エラーを発生させた原因を作った情報処理装置を特定できなかった場合にはユーザにその旨を通知する。その際に、ユーザのインプット情報が誤っていなかったかどうかを確認し、誤っていたと入力された場合はユーザ責任なので特に何も行わないが、誤っていないと入力された場合は連携ワークフロー内の全ての情報処理装置のエラー発生率/誘発率をカウントする。
図11、図12はその実施例である。
図11を参照すると、連携元となる情報処理装置A上でユーザに"誤り有り"/"誤り無し"を選択してもらう画面を出し、"誤り無し"が選択された場合に情報処理装置A, B, Cにて実行機能のエラー誘発率をカウントし、情報処理装置D, Eにて実行機能のエラー発生率をカウントする。
【0048】
図12は請求項5の詳細なシーケンスである。
1)ユーザはインプット情報が誤っていない事を入力画面に入力する
2)入力画面はエラー発生原因特定部にユーザのインプット情報が誤っていない事を通知する
3)エラー発生原因特定部はエラー蓄積部にエラー誘発率をカウントさせる
4)エラー発生原因特定部は連携ワークフロー内の情報処理装置にエラー発生率/誘発率をカウントさせる命令を出す
5)通信部はカウント命令を送信する
6)連携ワークフロー内の情報処理装置はエラー発生率/誘発率をカウントする
【0049】
請求項6の実施例
本発明における情報処理装置は、連携ワークフロー生成部は連携ワークフローを生成する際に各情報処理装置の機能実行回数を収集し、一定回数に満たない情報処理装置を連携ワークフローに含めないようにする。
図13はその実施例である。
1)連携ワークフロー生成部は任意のタイミングで他の情報処理装置からエラー発生率/誘発率を収集する
2)連携ワークフロー生成部は他の情報処理装置から機能実行回数を収集する
3)連携ワークフロー生成部は収集した情報を基に連携ワークフローを生成する
4)連携ワークフロー生成部は連携ワークフローに含める対象となる情報処理装置の機能の実行回数が一定回数(任意の値を事前に設定可能)以上かを判定する
5)一定回数以上であった場合、処理成功率算出部によりワークフローの成功率を算出する
6)処理成功率算出部はエラー蓄積部からエラー発生率/誘発率を取得し、連携ワークフローの成功率を算出する
7)連携ワークフロー生成部は既存の連携ワークフローの成功率を取得し、生成した連携ワークフローの成功率と比較する
8)既存の連携ワークフローより生成した連携ワークフローの成功率が高かった場合は書き換える
【0050】
請求項7の実施例
本発明における情報処理装置は、各情報処理装置は自身のエラー発生率/誘発率と代替機のエラー発生率/誘発率を比較して、より成功率が高い代替機がある場合は連携元の情報処理装置にその旨を通知する。
図14、図15はその実施例である。
【0051】
図14を参照すると、情報処理装置Cでエラーが発生した時にエラー発生率/誘発率が一定値を超えた場合、情報処理装置Cは代替機である情報処理装置Bのエラー発生率/誘発率を確認する(1)。その際、自身よりもエラー発生率/誘発率が低かった場合は連携元である情報処理装置Aにその旨を通知する(2)。
【0052】
図15は詳細なシーケンスである。
1)エラー蓄積部はエラー発生率/誘発率が一定値(任意の値を事前に設定可能)以上になった事を検知する
2)エラー蓄積部はエラー発生原因特定部に代替機のエラー発生率/誘発率の収集を依頼する
3)エラー発生原因特定部は通信部に代替機のエラー発生率/誘発率の収集を依頼する
4)エラー蓄積部は収集したエラー発生率/誘発率と自身のエラー発生率/誘発率を比較する
5)自身より成功率の高い代替機があった場合、連携元の情報処理装置にその旨を通知するためにエラー発生原因特定部に通知を依頼するが、通知には代替機の成功率やIPアドレス等の機器情報が含まれている
6)エラー発生原因特定部は通信部に代替機のエラー発生率/誘発率の通知を依頼する
【0053】
請求項8の実施例
本発明における情報処理装置では、連携ワークフロー内の情報処理装置からより成功率の高い代替機があるという通知を受けて連携ワークフローを書き換える。
【0054】
図16はその実施例である。
1)通信部は連携ワークフロー内の情報処理装置からより成功率が高い代替機があるという通知を受け取るが、通知には代替機の成功率やIPアドレス等の機器情報が含まれている
2)通信部はその旨を連携ワークフロー生成部に通知する
3)連携ワークフロー生成部は通知された情報を基に連携ワークフローの生成を行う
4)処理成功率算出部により連携ワークフローの成功率を算出する
5)処理成功率算出部はエラー蓄積部からエラー発生率/誘発率を取得し、連携ワークフローの成功率を算出する
6)連携ワークフロー生成部は既存の連携ワークフローの成功率を取得し、生成した連携ワークフローの成功率と比較する
7)既存の連携ワークフローより生成した連携ワークフローの成功率が高かった場合は書き換える
【0055】
以下、各請求項ごとの作用・効果を記載する。
請求項2:成功率の高い連携ワークフローを生成する事ができる。
請求項3:ユーザが意識せずとも成功率の高いワークフローを自動的に利用できるようになる。
請求項4:ユーザがエラーの詳細を知る事ができる。
請求項5:ユーザの入力ミスを考慮してエラー発生率/エラー誘発率をカウントする事ができる。
請求項6:実績のない情報処理装置を除外する事で生成する連携ワークフローの信頼性が高まる。
請求項7:自身がエラーを起こしやすい事を通知する事でより成功率の高い連携ワークフローに自動で組み替える事ができる。
請求項8:自身がエラーを起こしやすい事を通知する事でより成功率の高い連携ワークフローに自動で組み替える事ができる。
【0056】
なお、上述する実施の形態は、本発明の好適な実施の形態であり、本発明の要旨を逸脱しない範囲内において種々変更実施が可能である。
【先行技術文献】
【特許文献】
【0057】
【特許文献1】特開2007−164422号公報
【特許文献2】特開2010−140089号公報
【特許請求の範囲】
【請求項1】
連携ワークフローを生成する情報処理装置であって、
連携ワークフローにしたがって連携処理を実行する制御手段と、
前記情報処理装置でエラーが発生した際に自身の処理/データが誤っていたのか他の情報処理装置の処理/データが誤っていたのかを判定する判定手段と、
エラーが自責と判定できなかった場合にエラーを発生させた原因を作った情報処理装置を特定するために代替機に処理を実行させるエラー発生原因特定手段と、
前記エラー発生原因特定手段によりエラーを発生させてしまったと特定された場合に、エラー誘発率として蓄積する蓄積手段とを有する事を特徴とする情報処理装置。
【請求項2】
前記蓄積手段は、前記判定手段により自責と判定した場合にエラー発生率として蓄積し、
前記エラー発生率、前記エラー誘発率および連携ワークフロー内での処理順から情報処理装置の処理成功率を算出する算出手段と、
前記算出手段による結果から成功率の高い連携ワークフローを生成する生成手段とを有する事を特徴とする請求項1記載の情報処理装置。
【請求項3】
より成功率の高い連携ワークフローを生成可能な場合、成功率の高い連携ワークフローに自動的に書き換える事を特徴とする請求項2記載の情報処理装置。
【請求項4】
全ての代替機を用いても処理が失敗してしまう場合に、ユーザにエラー情報を通知する事を特徴とする請求項1記載の情報処理装置。
【請求項5】
ユーザの入力が誤っていた可能性があることを通知し、ユーザに誤っていたかどうかを入力させ、ユーザの入力が誤っていないと入力された場合に、連携ワークフロー内の全ての情報処理装置において前記エラー発生率/誘発率として蓄積する事を特徴とする請求項4記載の情報処理装置。
【請求項6】
機能実行回数が一定回数に満たない情報処理装置は連携ワークフロー内に含めない事を特徴とする請求項1記載の情報処理装置。
【請求項7】
自身が含まれる連携ワークフロー内の処理において、自身の前記エラー発生率/誘発率が一定値以上になった場合に代替機の前記エラー発生率/誘発率と比較して、前記エラー発生率/誘発率の低い代替機があった場合はその旨を連携元に通知する事を特徴とする請求項1記載の情報処理装置。
【請求項8】
通知を受けて前記エラー発生率/誘発率の低い代替機に連携ワークフローを書き換える事を特徴とする請求項7記載の情報処理装置。
【請求項1】
連携ワークフローを生成する情報処理装置であって、
連携ワークフローにしたがって連携処理を実行する制御手段と、
前記情報処理装置でエラーが発生した際に自身の処理/データが誤っていたのか他の情報処理装置の処理/データが誤っていたのかを判定する判定手段と、
エラーが自責と判定できなかった場合にエラーを発生させた原因を作った情報処理装置を特定するために代替機に処理を実行させるエラー発生原因特定手段と、
前記エラー発生原因特定手段によりエラーを発生させてしまったと特定された場合に、エラー誘発率として蓄積する蓄積手段とを有する事を特徴とする情報処理装置。
【請求項2】
前記蓄積手段は、前記判定手段により自責と判定した場合にエラー発生率として蓄積し、
前記エラー発生率、前記エラー誘発率および連携ワークフロー内での処理順から情報処理装置の処理成功率を算出する算出手段と、
前記算出手段による結果から成功率の高い連携ワークフローを生成する生成手段とを有する事を特徴とする請求項1記載の情報処理装置。
【請求項3】
より成功率の高い連携ワークフローを生成可能な場合、成功率の高い連携ワークフローに自動的に書き換える事を特徴とする請求項2記載の情報処理装置。
【請求項4】
全ての代替機を用いても処理が失敗してしまう場合に、ユーザにエラー情報を通知する事を特徴とする請求項1記載の情報処理装置。
【請求項5】
ユーザの入力が誤っていた可能性があることを通知し、ユーザに誤っていたかどうかを入力させ、ユーザの入力が誤っていないと入力された場合に、連携ワークフロー内の全ての情報処理装置において前記エラー発生率/誘発率として蓄積する事を特徴とする請求項4記載の情報処理装置。
【請求項6】
機能実行回数が一定回数に満たない情報処理装置は連携ワークフロー内に含めない事を特徴とする請求項1記載の情報処理装置。
【請求項7】
自身が含まれる連携ワークフロー内の処理において、自身の前記エラー発生率/誘発率が一定値以上になった場合に代替機の前記エラー発生率/誘発率と比較して、前記エラー発生率/誘発率の低い代替機があった場合はその旨を連携元に通知する事を特徴とする請求項1記載の情報処理装置。
【請求項8】
通知を受けて前記エラー発生率/誘発率の低い代替機に連携ワークフローを書き換える事を特徴とする請求項7記載の情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2012−100038(P2012−100038A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2010−245612(P2010−245612)
【出願日】平成22年11月1日(2010.11.1)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願日】平成22年11月1日(2010.11.1)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]