(57)【要約】【課題】  ユーザが繰り返し行う操作を容易に自動化するための技術を提供すること。【解決手段】  ユーザによる操作のログに基づいて、入出力が同じであるイベントの集合、該集合に該当しないイベント、をタスクとして生成する。生成した複数のタスクから、同じデータを対象とするタスクの集合を操作パターンとして生成する。生成した複数の操作パターンのうち１つを実行フローとして出力する。【選択図】  図２
2020057166.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
ユーザによる操作のログに基づいて、入出力が同じであるイベントの集合、該集合に該当しないイベント、をタスクとして生成する第１の生成手段と、
前記第１の生成手段が生成した複数のタスクから、同じデータを対象とするタスクの集合を操作パターンとして生成する第２の生成手段と、
前記第２の生成手段が生成した複数の操作パターンのうち１つを実行フローとして出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記出力手段は、前記複数の操作パターンの一部若しくは全部を頻出パターンとし、該頻出パターンのうちユーザにより選択された１つを前記実行フローとして出力することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記出力手段は、前記複数の操作パターンを、タスクの並びが同じ操作パターンのグループに分類し、閾値以上の数の操作パターンが分類されたグループに対応するタスクの並びの操作パターンを頻出パターンとすることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記出力手段は、前記頻出パターンを表示画面に表示して、前記選択を受け付けることを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記出力手段は、前記頻出パターンに含まれているタスクのうち、前記情報処理装置と通信が可能な外部装置において実行可能なタスクと、該外部装置において実行可能ではないタスクと、を互いに異なる表示形態で表示することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記出力手段は、前記頻出パターンのうち、前記情報処理装置と通信が可能な外部装置において実行可能なタスクから成る頻出パターンを前記実行フローとして選択可能とし、該外部装置において実行可能でないタスクを含む頻出パターンを前記実行フローとして選択可能としない、ことを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記出力手段は、前記情報処理装置と通信が可能な外部装置において実行可能なタスクから成る頻出パターンと、該外部装置において実行可能でないタスクを含む頻出パターンと、を選択可能とすることを特徴とする請求項４又は５に記載の情報処理装置。
【請求項８】
前記情報処理装置は更に、
前記情報処理装置と通信が可能な外部装置において実行可能でないタスクを含む実行フローを実行している前記外部装置から、該外部装置において実行可能でないタスクの実行依頼の通知を受けた場合には、ユーザに該タスクの実行を指示するための表示を行い、ユーザから該実行の完了の指示を受けた場合には、その旨を前記外部装置に通知する手段を備えることを特徴とする請求項１乃至７の何れか１項に記載の情報処理装置。
【請求項９】
前記第２の生成手段は、一方のタスクの出力が、他方のタスクの入力である場合には、該他方のタスクを該一方のタスクの後続タスクとして該一方のタスクに連結することを特徴とする請求項１乃至８の何れか１項に記載の情報処理装置。
【請求項１０】
前記第２の生成手段は、一方のタスクの出力が、複数の他方のタスクの入力である場合には、該複数の他方のタスクを該一方のタスクの後続タスクとして並列に該一方のタスクに連結することを特徴とする請求項１乃至９の何れか１項に記載の情報処理装置。
【請求項１１】
前記出力手段は、前記実行フローに係るパラメータのデフォルト値を、前記実行フローの出力先が実行したジョブのログに基づいて設定することを特徴とする請求項１乃至１０の何れか１項に記載の情報処理装置。
【請求項１２】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の第１の生成手段が、ユーザによる操作のログに基づいて、入出力が同じであるイベントの集合、該集合に該当しないイベント、をタスクとして生成する第１の生成工程と、
前記情報処理装置の第２の生成手段が、前記第１の生成工程で生成した複数のタスクから、同じデータを対象とするタスクの集合を操作パターンとして生成する第２の生成工程と、
前記情報処理装置の出力手段が、前記第２の生成工程で生成した複数の操作パターンのうち１つを実行フローとして出力する出力工程と
を備えることを特徴とする情報処理方法。
【請求項１３】
コンピュータを、請求項１乃至１１の何れか１項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実行フローの生成に係る技術に関するものである。
【背景技術】
【０００２】
オフィス業務の多くは、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を中心とした操作の組み合わせによって行われる。特に人事、経理、総務部門などのバックオフィスでは、同じ手順のＰＣ操作を繰り返し行う業務が多い。そのため、一連のＰＣ操作を自動化することができれば、業務の効率化を図ることができる。これを実現するための構成として近年、ＲＰＡ（Ｒｏｂｏｔｉｃ  Ｐｒｏｃｅｓｓ  Ａｕｔｏｍａｔｉｏｎ）が注目されている。ＲＰＡは、ユーザによる入力デバイスの操作を記録し、再実行することで、操作の自動化を実現する技術である。操作の自動化がなされると、ユーザが改めて操作しなくても、一定のルールに従って同じ操作が繰り返される。特許文献１には、ＰＣ操作のログをグラフ構造で可視化する方法が開示されており、この方法により、ユーザは、自身の行う業務の全体フローを容易に把握することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６０４７０１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＲＰＡにより操作の自動化を行う場合、まずユーザは自動化したい業務フローを特定する必要がある。しかしながら、自身の業務フローを正しく把握することは一般に困難である。さらに、ＲＰＡを実現するツールには通常、ＰＣ操作を記録する機能が搭載されているものの、記録後、記録されたフローが正常に動作するかのテストやカスタマイズが必要となる。これらは一定のスキルが必要とされ、バックオフィス業務の担当者は該スキルを備えていないことが多い。そのため、バックオフィス業務の担当者が容易にＰＣ操作の自動化を行うことはできない。
【０００５】
特許文献１に開示される方法では、ＰＣ操作ログを可視化することができるが、これにより操作を自動化するためには、ＲＰＡを用いる必要がある。そのため上記の課題は同様に存在する。本発明では、ユーザが繰り返し行う操作を容易に自動化するための技術を提供する。
【課題を解決するための手段】
【０００６】
本発明の一様態は、情報処理装置であって、ユーザによる操作のログに基づいて、入出力が同じであるイベントの集合、該集合に該当しないイベント、をタスクとして生成する第１の生成手段と、前記第１の生成手段が生成した複数のタスクから、同じデータを対象とするタスクの集合を操作パターンとして生成する第２の生成手段と、前記第２の生成手段が生成した複数の操作パターンのうち１つを実行フローとして出力する出力手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の構成によれば、ユーザが繰り返し行う操作を容易に自動化することができる。
【図面の簡単な説明】
【０００８】
【図１】システムの構成例を示すブロック図。
【図２】生成装置１００および画像形成装置１２０の機能構成例を示すブロック図。
【図３】画像形成装置１２０に備わっている操作パネルの一例を示す図。
【図４】実行フローを作成して配信するために行う処理のフローチャート。
【図５】イベントの具体例を示す図。
【図６】操作ログの具体例を示す図。
【図７】タスクの生成ルールの具体例を示す図。
【図８】タスクの具体例を示す図。
【図９】操作パターンの具体例を示す図。
【図１０】頻出パターンの具体例を示す図。
【図１１】タスクテーブルの具体例を示す図。
【図１２】表示画面の具体例を示す図。
【図１３】設定画面の具体例を示す図。
【図１４】画像形成装置１２０の機能構成例を示すブロック図。
【図１５】実行フローを作成して配信するために行う処理のフローチャート。
【図１６】イベントの種類を示す図。
【図１７】ジョブログの具体例を示す図。
【図１８】タスクの生成ルールの一例を示す図。
【図１９】生成装置１００の機能構成例を示すブロック図。
【図２０】ＵＩの表示例を示す図。
【図２１】ＵＩ２１０１の表示例を示す図。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照し、本発明の実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施形態の１つである。
【００１０】
［第１の実施形態］
本実施形態では、ユーザが生成装置で手作業によって繰り返し行う業務（操作）を検出し、該業務を代替して実行するワークフロー（実行フロー）を画像形成装置に配信するシステムについて説明する。
【００１１】
先ず、本実施形態に係るシステムの構成例について、図１のブロック図を用いて説明する。図１に示す如く本実施形態のシステムは、上記の繰り返し業務を検出して該業務を代替して実行する実行フローを配信する情報処理装置としての生成装置１００と、該実行フローの配信先となりうる画像形成装置１２０ａ、１２０ｂ、…、１２０ｎとを有している。そして生成装置１００と画像形成装置１２０ａ、１２０ｂ、…、１２０ｎとは、ＬＡＮやインターネットなどのネットワーク１３０に接続されており、互いにデータ通信が可能なように構成されている。
【００１２】
先ず、生成装置１００について説明する。生成装置１００は、ＰＣ、ＷＳ（ＷｏｒｋＳｔａｔｉｏｎ）、タブレット型端末装置、スマートフォンなどのコンピュータ装置である。しかし、生成装置１００はこのようなコンピュータ装置に限らず、例えば、画像形成装置等の装置に組み込まれる装置であっても良い。
【００１３】
演算部１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの制御部として機能するものである。演算部１０１は、記憶部１０２に含まれているＲＡＭやＲＯＭに格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これにより演算部１０１は、生成装置１００全体の動作制御を行うと共に、生成装置１００が行うものとして後述する各処理を実行若しくは制御する。
【００１４】
記憶部１０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などのメモリ装置として機能する。ＲＡＭは、ＲＯＭやＨＤＤからロードされたコンピュータプログラムやデータを格納するためのエリア、演算部１０１が各種の処理を実行する際に用いるワークエリア、を有する。またＲＡＭは、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎ等の外部装置から受信した各種のデータを格納するためのエリアを有する。このように、ＲＡＭは、各種のエリアを適宜提供することができる。ＲＯＭには、生成装置１００の起動に係るコンピュータプログラムやデータ、生成装置１００の設定データなど、書換不要の情報が格納されている。ＨＤＤには、ＯＳ（オペレーティングシステム）、生成装置１００が行うものとして後述する各処理を演算部１０１に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。ＨＤＤに保存されているデータには、以下の説明において生成装置１００が既知の情報として取り扱うデータも含まれている。ＨＤＤに保存されているコンピュータプログラムやデータは、演算部１０１による制御に従って適宜ＲＡＭにロードされ、演算部１０１による処理対象となる。
【００１５】
表示部１０３は、液晶画面やタッチパネル等により構成されており、演算部１０１による処理結果を画像や文字などでもって表示することができる。なお、表示部１０３は、画像や文字を投影するプロジェクタなどの投影装置であっても良い。
【００１６】
入力部１０４は、キーボード、マウス、タッチパネルなどのユーザインターフェースにより構成されており、ユーザが操作することで各種の指示を演算部１０１に対して入力することができる。
【００１７】
次に画像形成装置１２０ａ、１２０ｂ、…、１２０ｎについて説明する。以下では、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎは何れも同じ構成を有するものとして説明する。以下では、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれを個別に説明する必要がない限りは、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれを画像形成装置１２０と称する。然るに、以下の説明における「画像形成装置１２０」は、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれと読み替えても良い。本実施形態では、画像形成装置１２０は、複合機（ＭＦＰ：ＭｕｌｔｉＦｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）であるものとする。
【００１８】
演算部１２１は、ＣＰＵなどの制御部として機能するものであり、記憶部１２２に含まれているＲＡＭやＲＯＭに格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これにより演算部１２１は、画像形成装置１２０全体の動作制御を行うと共に、画像形成装置１２０が行うものとして後述する各処理を実行若しくは制御する。
【００１９】
記憶部１２２は、ＲＡＭ、ＲＯＭ、ＨＤＤなどのメモリ装置として機能する。ＲＡＭは、ＲＯＭやＨＤＤからロードされたコンピュータプログラムやデータを格納するためのエリア、演算部１２１が各種の処理を実行する際に用いるワークエリア、を有する。またＲＡＭは、生成装置１００等の外部装置から受信した各種のデータを格納するためのエリアを有する。このように、ＲＡＭは、各種のエリアを適宜提供することができる。ＲＯＭには、画像形成装置１２０の起動に係るコンピュータプログラムやデータ、画像形成装置１２０の設定データなど、書換不要の情報が格納されている。ＨＤＤには、ＯＳ（オペレーティングシステム）、画像形成装置１２０が行うものとして後述する各処理を演算部１２１に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。ＨＤＤに保存されているデータには、以下の説明において画像形成装置１２０が既知の情報として取り扱うデータも含まれている。ＨＤＤに保存されているコンピュータプログラムやデータは、演算部１２１による制御に従って適宜ＲＡＭにロードされ、演算部１２１による処理対象となる。
【００２０】
表示部１２３は、液晶画面やタッチパネル等により構成されており、演算部１２１による処理結果を画像や文字などでもって表示することができる。入力部１２４は、ボタン群、タッチパネルなどのユーザインターフェースにより構成されており、ユーザが操作することで各種の指示を演算部１２１に対して入力することができる。
【００２１】
印刷部１２５は、後述する画像読取部１２６が読み取った原稿のデータ、生成装置１００等の外部装置から受信した印刷データ、等の各種のデータに基づく画像や文字を紙などの記録媒体に印刷して出力する。画像読取部１２６は、紙などの記録媒体をスキャンすることで、該記録媒体に記録（印刷）されている情報を読み取る。
【００２２】
次に、生成装置１００の機能構成例および画像形成装置１２０の機能構成例について、図２のブロック図を用いて説明する。以下の説明では、図２の各機能部を処理の主体として説明する場合がある。しかし実際には、「生成装置１００の機能部の機能を演算部１０１に実現させるためのコンピュータプログラム」を演算部１０１が実行することで、生成装置１００の機能部の機能を実現させる。同様に、「画像形成装置１２０の機能部の機能を演算部１２１に実現させるためのコンピュータプログラム」を演算部１２１が実行することで、画像形成装置１２０の機能部の機能を実現させる。なお、図２に示した機能部のうち一部若しくは全部をハードウェアで実装するようにしても良い。
【００２３】
先ず、生成装置１００の機能構成例について説明する。制御部２０１は、生成装置１００の各機能部の動作制御を行うものであり、生成装置１００の各機能部に対する指示、及び管理を行う。
【００２４】
表示制御部２０２は、表示部１０３における各種の表示制御を行うものであり、例えば、表示部１０３における後述の各種のＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）の表示制御を行う。
【００２５】
入力部２０３は、表示部１０３がタッチパネルで構成されている場合には、該タッチパネルに対するユーザの操作（ユーザ操作）を受け付けたり、入力部１０４に対するユーザの操作（ユーザ操作）を受け付けたりする。
【００２６】
記憶制御部２０４は、入力部２０３がユーザ操作を受け付けたことに応じて発生したイベントを記憶部１０２に格納する。イベントは複数の属性を含むが、イベントに含まれる属性は該イベントの種類（対応するユーザ操作）に応じて異なる。例えば、イベントには、該イベントの種類（対応する操作の種類）を表すイベント名属性、該イベントが発生した時刻（日時）を表す時刻属性、該イベントを発生させたプロセスを表すプロセス名属性等の属性が含まれうる。イベントの具体例については図５を用いて後述する。
【００２７】
操作ログ取得部２０５は、記憶制御部２０４によって記憶部１０２に格納されたイベントの集合、つまり、ユーザ操作の履歴（ログ）である操作ログを取得する。操作ログの具体例については図６を用いて後述する。
【００２８】
タスク生成部２０６は、操作ログ取得部２０５が取得した操作ログから、互いに入出力が同じであるイベントの集合、該集合に該当しないイベント、をタスクとして複数生成する。より詳しくは、タスク生成部２０６は、操作ログに含まれているイベント群を、互いに入出力が同じであるイベントの集合、該集合に該当しないイベント、に分類する。「互いに入出力が同じであるイベントの集合」、「該集合に該当しないイベント」のそれぞれをタスクとする。タスクは、事前に定められたルールに従って生成される。タスクの生成ルールの具体例については、図７を用いて後述する。また、タスクの具体例については、図８を用いて後述する。
【００２９】
生成部２０７は、タスク生成部２０６が生成した複数のタスクから、同じデータを対象とするタスクの集合（同じデータを対象とするタスクを時系列順に連結したもの）を操作パターンとして複数生成する。本実施形態では、同じデータを対象とするタスクのペアを関連のあるタスクとして連結し、これを数珠繋ぎにすることで操作パターンとする。操作パターンの具体例については、図９を用いて後述する。
【００３０】
取得部２０８は、生成部２０７が生成した複数の操作パターンの中でより高頻出の一部の操作パターンを頻出パターンとして取得する。頻出パターンの具体例については、図１０を用いて後述する。
【００３１】
取得部２０９は、記憶部１０２から「画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれの実行部２２５が自動的に実行可能なタスクを示すテーブル（タスクテーブル）」を取得する。「実行部２２５が自動的に実行可能なタスク」とは、実行部２２５が必要なパラメータを設定してから該タスクを実現するプログラムを呼び出して実行すると、ユーザの入力を受け付けることなく該プログラムが正常終了するようなタスクである。タスクテーブルの具体例については、図１１を用いて後述する。
【００３２】
判定部２１０は、タスクテーブルを参照し、頻出パターンを構成する各タスクが「実行部２２５が自動的に実行可能なタスク」としてタスクテーブルに登録されているか否か（自動化可能か否か）を判断する。頻出パターンを構成する全てのタスクが「実行部２２５が自動的に実行可能なタスク」としてタスクテーブルに登録されている場合には、該頻出パターンは「実行部２２５において自動的に実行可能」となる。
【００３３】
評価部２１１は、頻出パターンを自動化した場合の効果の評価値を取得する。選択部２１２は、取得部２０８が取得した頻出パターンのうち、画像形成装置１２０において自動的に実行する実行フローとする頻出パターンを選択する。本実施形態では、表示制御部２０２によって上記の評価値と頻出パターンとを含む表示画面を表示部１０３に表示させて、ユーザにどの頻出パターンを「画像形成装置１２０において自動的に実行する実行フロー」とするのかを選択させる。そしてユーザが入力部１０４を操作して頻出パターンを選択する操作を行うと、選択部２１２は、該操作により選択された頻出パターンを実行フローとして選択する。この表示制御部２０２が表示部１０３に表示する表示画面の具体例については、図１２を用いて後述する。
【００３４】
配信部２１３は、選択部２１２が選択した頻出パターンを実行フローとし、該実行フローに、該実行フローの生成に必要な各種のパラメータを添付して画像形成装置１２０に対して配信する。本実施形態では、実行フローの生成に必要な各種のパラメータを設定するために、表示制御部２０２は表示部１０３に設定画面を表示させて、ユーザによるパラメータの設定操作を受け付ける。この設定画面の具体例については図１３を用いて後述する。
【００３５】
次に、画像形成装置１２０の機能構成例について説明する。制御部２２１は、画像形成装置１２０の各機能部の動作制御を行うものであり、画像形成装置１２０の各機能部に対する指示、及び管理を行う。
【００３６】
表示制御部２２２は、表示部１２３における各種の表示制御を行うものであり、例えば、表示部１２３における後述の各種のＵＩの表示制御を行う。入力部２２３は、表示部１２３がタッチパネルで構成されている場合には、該タッチパネルに対するユーザの操作（ユーザ操作）を受け付けたり、入力部１２４に対するユーザの操作（ユーザ操作）を受け付けたりする。
【００３７】
記憶制御部２２４は、記憶部１２２に対する情報の読み書きを制御するためのものであり、例えば、配信部２１３から配信された実行フローを受信して記憶部１２２に格納する。実行部２２５は、入力部２２３が受け付けたユーザ操作に応じて実行フローを実行する。
【００３８】
次に、生成装置１００が実行フローを作成して画像形成装置１２０に配信するために行う処理について、同処理のフローチャートを示す図４に従って説明する。図４のフローチャートに従った処理は、ユーザが生成装置１００を日常的に利用していることを前提とし、日付が変わってから初めて生成装置１００にログインした際に、前日までに記憶部１０２に記録された操作ログを対象に実行される。
【００３９】
ステップＳ４０１では、操作ログ取得部２０５は、記憶部１０２から操作ログを取得する。操作ログは、例えば、ＣＳＶ形式のファイルで表現される。次にステップＳ４０２では、タスク生成部２０６は、ステップＳ４０１において操作ログ取得部２０５が取得した操作ログから複数のタスクを生成する。
【００４０】
ステップＳ４０３では、生成部２０７は、ステップＳ４０２でタスク生成部２０６が生成した複数のタスクから、同じデータを対象とするタスクを時系列順に連結した操作パターンを複数生成する。
【００４１】
ステップＳ４０４では、取得部２０８は、ステップＳ４０３で生成部２０７が生成した複数の操作パターンにおいて閾値以上の頻度で登場している操作パターンを頻出パターンとして取得する。例えば取得部２０８は、ステップＳ４０３で生成部２０７が生成したそれぞれの操作パターンを、タスクの並びが同じ操作パターンのグループ（モデル）に分類し、それぞれのモデルについて、該モデルに分類された操作パターンの数を「頻度」として求める。そして取得部２０８は、それぞれのモデルのうち閾値以上の頻度を求めたモデルに対応するタスクの並びの操作パターンを頻出パターンとする。
【００４２】
ステップＳ４０４ａでは、制御部２０１は、ステップＳ４０４で１つ以上の頻出パターンを特定したか否か（閾値以上の頻度を求めたモデルの数が１以上であるか否か）を判断する。この判断の結果、ステップＳ４０４で１つ以上の頻出パターンを特定した場合には、処理はステップＳ４０５に進み、ステップＳ４０４で１つ以上の頻出パターンを特定していない場合には、図４のフローチャートに従った処理は終了する。
【００４３】
ステップＳ４０５では、取得部２０９は、記憶部１０２からタスクテーブルを取得する。ステップＳ４０６では判定部２１０は、ステップＳ４０４で取得した頻出パターンごとに、該頻出パターンに含まれるそれぞれのタスクがタスクテーブルに登録されているか否か（該タスクが実行部２２５が自動的に実行可能なタスクであるか否か）を判断する。
【００４４】
ステップＳ４０７では、評価部２１１は、ステップＳ４０４で取得した頻出パターンごとに、該頻出パターンを自動化した場合の効果の評価値を取得する。そしてステップＳ４０８では、表示制御部２０２は表示部１０３に、頻出パターン、該頻出パターンの評価値、を含む実行フローの生成画面（ＵＩ）を表示させる。
【００４５】
ステップＳ４０９では、選択部２１２は、ステップＳ４０７で表示部１０３に表示させた実行フローの生成画面においてユーザが選択した頻出パターンを実行フローとして選択する。
【００４６】
ステップＳ４１０では、表示制御部２０２は表示部１０３に、ユーザが選択した頻出パターンを実行部２２５が自動的に実行する際に用いる各種のパラメータを設定するための設定画面を表示部１０３に表示させる。そして配信部２１３は、ユーザが該設定画面を介して設定した各種のパラメータを、実行フローと共に、画像形成装置１２０に対して配信する。
【００４７】
＜イベントの種類について＞
本実施形態において記憶制御部２０４が記憶部１０２に格納するイベントの種類を図５に示す。本実施形態において記憶制御部２０４が記憶部１０２に格納するイベントは図５に示す１４種類である。然るに本実施形態では、操作ログに含まれているイベントは、図５に例示した１４種類のいずれかに該当する種類のイベントである。
【００４８】
各イベントが有する属性は、イベント名（イベント名属性）、イベント名に応じて内容が異なる最大３種類の属性（属性１〜３）、そして図５に不図示のイベント発生時刻（時刻属性）、及びイベント発生源のプロセス名（プロセス名属性）、である。
【００４９】
イベント名が「ログイン」のイベント（ログインイベント）は、ユーザ操作に応じてユーザが生成装置１００にログインした際に発生するイベントである。イベント名が「メール受信」のイベント（メール受信イベント）は、ユーザ操作に応じて生成装置１００がメールを受信した際に発生するイベントである。イベント名が「メール送信」のイベント（メール送信イベント）は、ユーザ操作に応じて生成装置１００がメールを送信した際に発生するイベントである。イベント名が「新規作成」のイベント（新規作成イベント）は、ユーザ操作に応じて生成装置１００がファイルを新規作成した際に発生するイベントである。イベント名が「コピー」のイベント（コピーイベント）は、ユーザ操作に応じて生成装置１００がファイルのコピーを行った際に発生するイベントである。イベント名が「名前変更」のイベント（名前変更イベント）は、ユーザ操作に応じて生成装置１００がファイルの名前を変更した際に発生するイベントである。イベント名が「移動」のイベント（移動イベント）は、ユーザ操作に応じて生成装置１００がファイルの階層を移動させた際に発生するイベントである。イベント名が「開く」のイベント（開くイベント）は、ユーザ操作に応じて生成装置１００がファイルを開いた際に発生するイベントである。イベント名が「名前を付けて保存」のイベント（保存イベント）は、ユーザ操作に応じて生成装置１００がファイルに新たな名前を付けて保存する際に発生するイベントである。イベント名が「上書保存」のイベント（上書保存イベント）は、ユーザ操作に応じて生成装置１００がファイルを上書き保存した際に発生するイベントである。イベント名が「印刷」のイベント（印刷イベント）は、ユーザ操作に応じて生成装置１００が画像形成装置１２０に対して印刷指示を送信した際に発生するイベントである。イベント名が「Ｗｅｂアクセス」のイベント（Ｗｅｂアクセスイベント）は、ユーザ操作に応じて生成装置１００が外部のＷｅｂサーバとＨＴＴＰ通信を行った際に発生するイベントである。イベント名が「マウス」のイベント（マウスイベント）は、ユーザ操作に応じて生成装置１００がマウスの操作を検知した際に発生するイベントである。イベント名が「キーボード」のイベント（キーボードイベント）は、ユーザ操作に応じて生成装置１００がキーボードの操作を検知した際に発生するイベントである。なお、図５に示したイベントの種類は一例であり、操作ログを構成するイベントの種類は図５に示した種類に限らない。
【００５０】
＜操作ログについて＞
操作ログ取得部２０５が取得する操作ログの構成例を図６に示す。図６に示す如く、操作ログ６０１の各行には、１つのイベントの属性群が登録されており、より上の行には、発生した日時がより早いイベントの属性群が登録されている。
【００５１】
イベントＩＤは、操作ログ６０１に含まれているそれぞれのイベントに固有の識別情報である。より過去に発生したイベントのＩＤには、より小さい番号が割り当てられている。イベント名、時刻、プロセス名、属性１〜３はそれぞれ、上記のイベント名属性、時刻属性、プロセス名属性、属性１〜３、に対応する。
【００５２】
例えば、イベントＩＤ＝「１」のイベントは、ＰＣ名「０１２３４−Ｍａｉｎ」の装置に対して、ユーザＩＤ「０１２３４」のユーザが時刻「２０１７／１０／６  １３：４２：０５」にログインした際に発生したイベントである。
【００５３】
＜タスクの生成ルールについて＞
タスクの生成ルールの一例を図７に示す。図７には、８種類のタスクのそれぞれについて、該タスクの構成要素となるイベントが規定されている。「タスク名」は、生成されるタスクの名称であり、「構成イベント」は、該タスクの構成要素となるイベントの定義である。
【００５４】
タスク名が「スキャン」のタスク（スキャンタスク）は、特定メールアドレスからの添付ファイル付きのメールの受信イベント、を構成要素とするタスクである。これは、例えば、画像形成装置１２０でスキャンされた紙面の画像データがユーザのメールアドレスにメールで送信されることを想定している。
【００５５】
タスク名が「受信」のタスク（受信タスク）は、特定メールアドレス以外のメールアドレスからの添付ファイル付きのメールの受信イベント、を構成要素とするタスクである。
【００５６】
タスク名が「保存」のタスク（保存タスク）は、コピーイベント、移動イベント、名前変更イベント、を構成要素とするタスクである。具体的には、同じデータ（ファイル）を扱うイベントを時系列順に繋げて一つの保存タスクにグループ化する。例えば、ファイルＡをコピーしてファイルＢを作成後、ファイルＡの移動及び名前変更を行ってファイルＣとする処理が行われた場合、コピーイベント、名前変更イベント、移動イベント、の順に連結して保存タスクを生成する。この時、保存タスクは、入力ファイルがＡ、出力ファイルがＢ及びＣ、という情報を有する。
【００５７】
タスク名が「転送」のタスク（転送タスク）は、任意のファイルをメールに添付して送信すると発生するメール送信イベント、を構成要素とするタスクである。タスク名が「印刷」のタスク（印刷タスク）は、印刷イベントを構成要素とするタスクである。
【００５８】
タスク名が「電子承認」のタスク（電子承認タスク）は、次のように生成されるタスクである。プロセス「Ｒｅａｄｅｒ．ｅｘｅ」による「開く」が行われ、さらに該プロセスに対して所定手順のマウスイベント及びキーボードイベントが発生して上書き保存が行われた際に発生する一連のイベントを構成要素とする電子承認タスクが生成される。これは、画像データに対し、内容を確認して電子印鑑を押印する処理を検出する検出器を想定している。
【００５９】
タスク名が「編集」のタスク（編集タスク）は、画像ファイルを開いて何らかの操作を行った後に該画像ファイルを保存した際に発生する一連のイベントから生成されるタスクである。電子承認タスクを含む画像ファイルの編集処理をタスク化する。
【００６０】
タスク名が「アップロード」のタスクは、特定のファイルが特定のＷｅｂページにアップロードされた際に発生するイベント（Ｗｅｂアクセスイベント）を構成要素とするタスクである。「Ｗｅｂアクセス」を発生したプロセスによって「開く」イベントが発生した場合、Ｗｅｂページにファイルをアップロードしたものとしてタスクを生成する。
【００６１】
＜タスクについて＞
操作ログ６０１から、図７の生成ルールに従って生成されるタスクの具体例を図８に示す。「イベントＩＤ」、「イベント名」、「タスク名」については上記の通りである。「タスクＩＤ」は、各タスクに固有の識別情報である。「入力ファイル」は、タスクに対する入力ファイルのパス名であり、「出力ファイル」は、タスクの出力ファイルのパス名である。
【００６２】
タスクは、操作ログ６０１に含まれているイベントを時系列順に参照して上記の「タスクの生成ルール」を適用していくことで生成される。まず、操作ログ６０１においてイベントＩＤ＝「２」のメール受信イベントから、タスクＩＤ＝「１」のスキャンタスクが生成される。スキャンタスクは、メール受信イベントの添付ファイルである“１７１００６＿０１．ｐｄｆ”ファイルを属性「出力ファイル」として有する。
【００６３】
次にイベントＩＤ＝「３」〜「６」のイベントから、タスクＩＤ＝「２」の保存タスクが生成される。保存タスクの属性「入力ファイル」は、イベントＩＤ＝「３」のコピーイベントの属性１（コピー元ファイルパス）である。また、保存タスクの属性「出力ファイル」は、イベントＩＤ＝「３」のコピーイベントのコピー元ファイルパス（属性１）のファイルの最終的なファイルパスである「イベントＩＤ＝「６」の移動イベントの属性２（移動後ファイルパス）」となる。
【００６４】
つまりイベントＩＤ＝「３」〜「６」のイベントは、イベントＩＤ＝ｉ（ｉ＝３〜５）のイベントに対応する出力（属性２）と、イベントＩＤ＝（ｉ＋１）のイベントに対応する入力（属性１）と、が同じイベントの集合である。つまり、イベントＩＤ＝「３」〜「６」のイベントは、上記の「互いに入出力が同じであるイベントの集合」に該当する。
【００６５】
一方、イベントＩＤ＝「２」のメール受信イベントは、一方のイベントに対応する出力（属性２）と他方のイベントに対応する入力（属性１）とが同じイベントの集合には該当しないイベントである。つまり、イベントＩＤ＝「２」のメール受信イベントは、「該集合に該当しないイベント」である。
【００６６】
以降、同様に操作ログ６０１中のイベントに対して順次、タスクの生成ルールを適用していくことで、操作ログ６０１から図８に示す２７個のタスク（タスクＩＤ＝１〜２７のタスク）が生成される。
【００６７】
＜操作パターンについて＞
図８のタスクから生成される操作パターンの具体例を図９に示す。「操作パターンＩＤ」は、それぞれの操作パターンに固有の識別情報である。「構成タスク」は、操作パターンを構成する各タスク（括弧書きで記している数値はタスクＩＤ）である。
【００６８】
図９のそれぞれの操作パターンは、一方のタスクの属性「出力ファイル」と他方のタスクの属性「入力ファイル」とが一致した場合に、該一方のタスクの後続タスクとして該他方のタスクを連結することで生成されたものである。
【００６９】
まず、タスクＩＤ＝「１」のスキャンタスクの属性「出力ファイル」と、タスクＩＤ＝「２」の保存タスクの属性「入力ファイル」におけるファイル名と、は一致する。然るに、タスクＩＤ＝「２」の保存タスクを、タスクＩＤ＝「１」のスキャンタスクに後続するように、該タスクＩＤ＝「１」のスキャンタスクに連結させる。
【００７０】
次に、タスクＩＤ＝「２」の保存タスクの属性「出力ファイル」のファイル名と、タスクＩＤ＝「３」の印刷タスクの属性「入力ファイル」と、が一致するので、タスクＩＤ＝「３」の印刷タスクを、タスクＩＤ＝「２」の保存タスクに後続させる。また、タスクＩＤ＝「４」のアップロードタスクの属性「入力ファイル」もまた、タスクＩＤ＝「２」の保存タスクの属性「出力ファイル」と一致するので、タスクＩＤ＝「４」のアップロードタスクをタスクＩＤ＝「２」の保存タスクに後続させる。
【００７１】
ここで、タスクＩＤ＝「２」の保存タスクには、タスクＩＤ＝「３」の印刷タスクとタスクＩＤ＝「４」のアップロードタスクの２つが後続することになるが、本実施形態では、操作パターンの生成ではタスクを時系列順に接続するものとしている。然るに、本実施形態では、タスクＩＤ＝「２」の保存タスク、タスクＩＤ＝「３」の印刷タスク、タスクＩＤ＝「４」のアップロードタスクの順に連結させることになる。これは、タスクＩＤ＝「３」の印刷タスク中の先頭イベント（印刷イベント）の時刻属性と、タスクＩＤ＝「４」のアップロードタスク中の先頭イベント（Ｗｅｂアクセスイベント）の時刻属性と、では、前者の方が時系列順に過去であることに起因している。
【００７２】
このように、タスクＩＤ＝「１」のスキャンタスク、タスクＩＤ＝「２」の保存タスク、タスクＩＤ＝「３」の印刷タスク、タスクＩＤ＝「４」のアップロードタスクの順に連結させた操作パターンが操作パターンＩＤ＝１の操作パターンとして生成される。そして、このようなタスクの連結処理を以降のタスクについても行うことで、図９に示す７個の操作パターン（操作パターンＩＤ＝１〜７の操作パターン）が生成される。
【００７３】
＜頻出パターンについて＞
図１０は、図９の７個の操作パターンが得られた場合に、この７個の操作パターンをモデルに分類した場合における、それぞれのモデルのモデルＩＤ、該モデルに分類された操作パターン、該モデルに分類された操作パターンの数（出現回数）を示した図である。
【００７４】
図１０では４種類のモデルの中で、モデルＩＤ＝「１」のモデルが出現回数３回と最頻出であり、次いでモデルＩＤ＝「２」のモデルが出現回数２回である。ここで閾値を「２」とすると、出現回数が２以上のモデルは、モデルＩＤ＝「１」のモデルおよびモデルＩＤ＝「２」のモデルである。然るにこの場合、モデルＩＤ＝「１」のモデルおよびモデルＩＤ＝「２」のモデルのそれぞれに対応するタスクの並びの操作パターンを頻出パターンとする。
【００７５】
なお本実施形態では、説明を容易にするために閾値を２と小さい値を設定したが、例えば全期間で１００回、あるいは直近１週間で２０回、など任意の値を設定するようにしても良い。
【００７６】
＜タスクテーブルについて＞
タスクテーブルの構成例を図１１に示す。「デバイス名」は、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれのデバイス名である。「送信時メールアドレス」は、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎの画像読取部１２６が記録媒体から読み取った情報（例えば画像データ）をメールに添付して送信する際に使用する自装置のメールアドレスである。「自動化可能タスク」は、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれの実行部２２５が自動的に実行可能なタスク（自動化可能なタスク）である。
【００７７】
図１１によると、例えば、デバイス名が「ＭＦＰ−０１」の画像形成装置１２０は、メールアドレス「ｍｆｐ−０１＠ｉｎｃ．ｃｏ．ｊｐ」を自装置のメールアドレスとして、「画像読取部１２６が記録媒体から読み取った情報」をメールに添付して送信する。また、図１１によると、デバイス名が「ＭＦＰ−０１」の画像形成装置１２０の実行部２２５が自動的に実行可能なタスクは、スキャンタスク、受信タスク、保存タスク、転送タスク、印刷タスクである。また、デバイス名が「ＬＢＰ−０１」の画像形成装置１２０のように、実行部２２５が自動的に実行可能なタスクがないような画像形成装置があっても良い。
【００７８】
画像形成装置１２０（実行部２２５）がタスクを自動的に実行可能ということは、ユーザが該タスクに対応する操作を手作業で行っていた場合に、画像形成装置１２０が該操作を代替可能であることを意味する。
【００７９】
スキャンタスクの自動化（実行部２２５がスキャンタスクを自動的に実行）は、画像形成装置１２０上でスキャン機能を実行することで実現する。受信タスクの自動化（実行部２２５が受信タスクを自動的に実行）は、不図示のメールサーバと通信し、メールを受信する機能を画像形成装置１２０が有すれば、該機能の実行により実現できる。
【００８０】
保存タスクの自動化（実行部２２５が保存タスクを自動的に実行）は、不図示のファイルサーバと通信し、所定のフォルダへファイルを保存する機能を画像形成装置１２０が有すれば、該機能の実行により実現できる。
【００８１】
転送タスクの自動化（実行部２２５が転送タスクを自動的に実行）は、不図示のメールサーバと通信し、メールを送信する機能を画像形成装置１２０が有すれば、該機能の実行により実現できる。
【００８２】
印刷タスクの自動化（実行部２２５が印刷タスクを自動的に実行）は、画像形成装置１２０上で印刷機能を実行することで実現する。電子承認タスクの自動化（実行部２２５が電子承認タスクを自動的に実行）は、特定のファイル形式のファイルに対して電子承認する機能を画像形成装置１２０が有すれば、該機能の実行により実現できる。
【００８３】
アップロードタスクの自動化（実行部２２５がアップロードタスクを自動的に実行）は、特定のＷｅｂサイトとの通信機能を画像形成装置１２０が有すれば、該機能の実行により実現できる。
【００８４】
なお、記憶部１０２がタスクテーブルを保持することに加えて若しくは代えて、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれの記憶部１２２が、該画像形成装置の実行部２２５が自動的に実行可能なタスクを示す情報を保持するようにしても良い。その場合、取得部２０９は、ネットワークを介して画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれの記憶部１２２から「該画像形成装置の実行部２２５が自動的に実行可能なタスクを示す情報」を取得する。この場合、画像形成装置１２０ａ、１２０ｂ、…、１２０ｎのそれぞれの記憶部１２２から取得した「該画像形成装置の実行部２２５が自動的に実行可能なタスクを示す情報」の集合を、上記のタスクテーブルとして利用することができる。
【００８５】
＜実行フローの生成画面（ＵＩ）について＞
ステップＳ４０８において表示制御部２０２が表示部１０３に表示させる、実行フローの生成画面（ＵＩ）の構成例について、図１２を用いて説明する。図１２の生成画面１２０１は、図１０のモデルＩＤ＝１に対応するモデルに対応するタスクの並びの操作パターンと、モデルＩＤ＝２に対応するモデルに対応するタスクの並びの操作パターンと、が頻出パターンとして選択された場合に表示されるものである。
【００８６】
実行フローの生成画面１２０１においてタブ１２０２は、実行フローの配信先を選択するためのものある。ユーザが入力部１０４を操作してタブ１２０２を指示すると、実行フローの配信先の候補（図１１の各デバイス名に対応するデバイス）のデバイス名が一覧表示される。そして、ユーザが入力部１０４を操作して該一覧表示された候補のうち１つを選択する操作を行うと、該１つが配信先として設定されると共に、その名称がタブ１２０２に表示される。図１２では、デバイス名が「ＭＦＰ−０１」の画像形成装置が配信先として選択されている。
【００８７】
領域１２０３ａは、最も頻度が高い頻出パターンであるモデルＩＤ＝１に対応する頻出パターンに係る情報を表示するための領域である。領域１２０３ａ内の領域１２０４ａ内には、モデルＩＤ＝１に対応する頻出パターンを構成するタスク（スキャンタスク、保存タスク、印刷タスク、アップロードタスク）のそれぞれの名称が、該頻出パターンが規定する並び順で並んで表示されている。ここで、タブ１２０２により、現在はデバイス名が「ＭＦＰ−０１」の画像形成装置が選択されている。図１１より、デバイス名が「ＭＦＰ−０１」の画像形成装置では、スキャンタスク、保存タスク、印刷タスク、アップロードタスクのうちスキャンタスク、保存タスク、印刷タスクは自動化可能であるが、アップロードタスクは自動化可能ではない。よって、領域１２０４ａ内では、現在タブ１２０２によって選択されているデバイスにおいて自動化可能なタスクと、自動化可能ではないタスクと、を互いに異なる表示形態で表示する。領域１２０５ａは、モデルＩＤ＝１に対応する頻出パターンの評価値である「作業した回数」と「合計工数」とを表示するための領域である。「作業した回数」は頻出パターンの頻度であり、「合計工数」は、頻出パターンを構成する各タスクに対して予め求めている時間（該タスクを実行するために要する時間）の合計時間である。評価値を表示することで、実行フローとして登録した場合に自動化できる工数をユーザに提示することができる。ボタン１２０６ａは、モデルＩＤ＝１の頻出パターンを実行フローとして選択するためのボタンである。しかし、モデルＩＤ＝１の頻出パターンを構成する全てのタスクのうち１つ（アップロードタスク）が自動化可能ではないため、この頻出パターンを実行フローとすることはできない。よって図１２に示す如く、ボタン１２０６ａは選択できないようになっていると共に、その旨を表す表示となっている。
【００８８】
領域１２０３ｂは、２番目に頻度が高い頻出パターンであるモデルＩＤ＝２に対応する頻出パターンに係る情報を表示するための領域である。領域１２０３ｂ内の領域１２０４ｂ内には、モデルＩＤ＝２に対応する頻出パターンを構成するタスク（スキャンタスク、保存タスク、転送タスク）のそれぞれの名称が、該頻出パターンが規定する並び順で並んで表示されている。ここで、タブ１２０２により、現在はデバイス名が「ＭＦＰ−０１」の画像形成装置が選択されている。図１１より、デバイス名が「ＭＦＰ−０１」の画像形成装置では、スキャンタスク、保存タスク、転送タスク、の全てのタスクは自動化可能である。よって、領域１２０４ｂ内では、現在タブ１２０２によって選択されているデバイスにおいて自動化可能なタスクであるスキャンタスク、保存タスク、転送タスク、が全て同じ表示形態で表示される。領域１２０５ｂは、モデルＩＤ＝２に対応する頻出パターンの評価値である「作業した回数」と「合計工数」とを表示するための領域である。そして、ユーザが入力部１０４を操作してボタン１２０６ｂを指定することで、モデルＩＤ＝２の頻出パターンを実行フローとして選択することができる。モデルＩＤ＝２の頻出パターンを構成する全てのタスクは自動化可能であるので、図１２に示す如く、ボタン１２０６ｂは選択できるようになっていると共に、その旨を表す表示となっている。
【００８９】
ここで、例えば、ユーザが入力部１０４を用いてタブ１２０２を操作してデバイス名が「ＭＦＰ−０２」の画像形成装置を選択したとする。この場合、該画像形成装置においては、スキャンタスク、保存タスク、印刷タスク、アップロードタスクの全てが自動化可能であるから、モデルＩＤ＝１の頻出パターンを実行フローとして選択することができるので、ボタン１２０６ａは選択可能な状態となる。
【００９０】
なお、図１２では、実行フローとして選択できないモデルＩＤ＝１の頻出パターンに係る情報を表示していたが、実行フローとして選択できない頻出パターンに係る情報については表示しなくても良い。しかしながら該情報を表示することで、ユーザは、自動化はできなくとも、業務フロー及び実工数を容易に把握することができる。
【００９１】
＜パラメータの設定画面について＞
ステップＳ４１０において表示制御部２０２が表示部１０３に表示させるパラメータの設定画面の構成例について、図１３を用いて説明する。設定画面１３０１は、実行フローとして選択された頻出パターンを構成する各タスクの実行に要するパラメータを設定するための画面である。
【００９２】
設定画面１３０１では、登録先デバイス１３０２として、上記のタブ１２０２にて選択したデバイス名「ＭＦＰ−０１」が表示されている。また、設定画面１３０１では、実行フロー１３０３として、図１２の生成画面１２０１において実行フローとして選択した頻出パターン（図１２のボタン１２０６ｂを指示したことにより選択されたモデルＩＤ＝２の頻出パターン）が表示されている。領域１３０４は、実行フロー１３０３の名称を入力するための領域で、ユーザが入力部１０４を操作して任意の名称を入力することができる。
【００９３】
領域１３０５〜１３０７はそれぞれ、実行フロー１３０３を構成する各タスクに対応する領域であり、パラメータ設定用の領域である。領域１３０５は実行フロー１３０３におけるスキャンタスクに対応する領域であり、該スキャンタスクを実行するために必要なパラメータ（スキャンにより得られる画像の解像度、データ形式、カラーモード）を設定するための領域である。領域１３０６は実行フロー１３０３における保存タスクに対応する領域であり、該保存タスクを実行するために必要なパラメータ（保存先、保存するファイルのファイル名など）を設定するための領域である。ここで、「保存タスクを実行するために必要なパラメータ」として、値が動的に決まる変数の入力を可能とする。領域１３０９には、入力可能な変数の一覧が表示される。例えば％ＹＥＡＲ％、％ＭＯＮＴＨ％、％ＤＡＹ％、％ＤＡＴＥ％は、スキャンを実行した際の日時を取得してパラメータ値とする変数である。また％ＣＯＭＰ％、％ＴＹＰＥ％のパラメータ値は、スキャンにより得られた画像データを解析し、スキャン元となった紙面（帳票を想定）の内容に応じて定まる。％ＣＯＭＰ％は発行元会社名、％ＴＹＰＥ％は帳票種（“請求書”、“領収書”など）がパラメータ値となる。設定可能な変数は、登録先デバイスに基づき決まる。つまり、登録先デバイスが変数のパラメータ値を動的に取得可能な機能を有していれば、変数として設定可能となる。例えば％ＣＯＭＰ％はスキャンにより得た画像データを解析し、画像から発行元会社名を取得する機能が必要である。
【００９４】
領域１３０７は実行フロー１３０３における転送タスクに対応する領域であり、該転送タスクを実行するために必要なパラメータ（転送先、件名）を設定するための領域である。転送タスクは、対象ファイルをメールで所定の宛先に送信する機能であり、転送先のメールアドレス、転送時のメールの件名をパラメータとして有する。なお、ここで領域１３０９の変数一覧に従ってパラメータ値を設定することも可能である。
【００９５】
このように、設定画面１３０１は、実行フロー１３０３の配信先であるデバイス名「ＭＦＰ−０１」の画像形成装置が実行フロー１３０３を構成する各タスクを実行するために必要なパラメータを設定する画面である。
【００９６】
ユーザが入力部１０４を操作してボタン１３０８を指示すると、配信部２１３は、設定画面１３０１にて設定したパラメータを添付した実行フロー１３０３を、デバイス名「ＭＦＰ−０１」の画像形成装置に対して配信する。該画像形成装置の記憶制御部２２４は、生成装置１００から配信された実行フロー１３０３（パラメータ添付済み）を記憶部１２２に格納する。
【００９７】
なお、上記の領域１３０５〜１３０７におけるパラメータのデフォルト値は、実行フローとして選択された頻出パターンと同モデルの操作パターンから取得する値に基づき決定するようにしても良い。例えば、実行フロー１３０３として選択された頻出パターンのモデルはモデルＩＤ＝２に対応し（図１０）、モデルＩＤ＝２のモデルに対応する操作パターンは、操作パターンＩＤ＝３の操作パターンと、操作パターンＩＤ＝７の操作パターンと、である（図９）。ここで、操作パターンＩＤ＝３の操作パターンと、操作パターンＩＤ＝７の操作パターンと、を構成するイベントから、各パラメータの最頻出値を取得し、これをデフォルト値とする。あるいは、出現頻度の高い上位Ｎ個のパラメータ値をリストボックスから選択可能にしても良い。
【００９８】
＜画像形成装置１２０におけるＵＩについて＞
画像形成装置１２０に備わっている操作パネルの一例を図３に示す。画像形成装置１２０に備わっている操作パネル３０１は、表示部１２３として機能するタッチパネル画面３０２と、入力部１２４として機能するボタン群３０３と、を有する。タッチパネル画面３０２には、ログイン中のユーザのＩＤ３４０、「メインメニュー」ボタン３５０、「カスタムメニュー」ボタン３６０などが表示される。
【００９９】
ユーザが「メインメニュー」ボタン３５０をタッチすることで、図３に示す如く、メインメニュー３０４ａがタッチパネル画面３０２に表示される。メインメニュー３０４ａは、画像形成装置１２０が備える標準的な機能を呼び出すための画面である。メインメニュー３０４ａには、コピーを指示するコピーボタン、「スキャンして送信」を指示するボタン、「スキャンして保存」を指示するボタン、プリントを指示するボタン、ＦＡＸ送信を指示するボタン、受信ＢＯＸの表示を指示するボタンが配置されている。
【０１００】
また、ユーザが「カスタム」ボタン３６０をタッチすると、メインメニュー３０４ａの代わりに、カスタムメニュー３０４ｂがタッチパネル画面３０２に表示される。カスタムメニュー３０４ｂは、ユーザが任意の機能を少ない操作で呼び出すための画面である。カスタムメニュー３０４ｂには、画像形成装置１２０が生成装置１００から受け取って記憶部１２２に登録した実行フローの名称（上記の領域１３０４に入力したファイル名）が記されたボタンが並んで表示されている。そしてこのカスタムメニュー３０４ｂにおいて、例えば、ユーザが「請求書スキャン」ボタンをタッチすると、実行部２２５は、名称が「請求書スキャン」の実行フローを記憶部１２２から読み出して実行する。
【０１０１】
このように、本実施形態によれば、ユーザが生成装置１００で繰り返し行う操作を自動的に検知し、該操作を実行フローとして画像形成装置１２０に登録することができる。これにより、ユーザが手動で行っていた操作をユーザ業務解析することなく自動化することができる。
【０１０２】
＜第１の実施形態の第１の変形例＞
第１の実施形態では、実行フローの登録先は画像形成装置１２０ａ〜１２０ｎであり、画像形成装置１２０ａ〜１２０ｎのそれぞれが実行部２２５を有するものとした。しかし、実行フローの登録先を生成装置１００とし、且つ生成装置１００が実行部２２５を有するようにしても良い。この場合、生成装置１００は、上記のようにして生成された実行フロー（パラメータ添付済み）を、生成装置１００の実行フローとして自身に登録する。つまり、実行フローの出力先は生成装置１００であっても良いし、画像形成装置１２０であっても良い。この場合、上記のカスタムメニュー３０４ｂは生成装置１００が有する表示部１０３に表示される。そして生成装置１００は、カスタムメニュー３０４ｂに表示されたボタンのうちユーザにより選択されたボタンに対応する実行フロー（自身に登録した実行フロー群のうちユーザにより選択された実行フロー）を実行する。なお、スキャンタスクや印刷タスクなど、タスクの自動化にあたり画像形成装置１２０のハードウェアを必須とするタスクについては、実行フロー実行時に、対応する画像形成装置１２０に対してスキャンジョブあるいは印刷ジョブを登録することで実現する。
【０１０３】
＜第１の実施形態の第２の変形例＞
第１の実施形態では、操作パターンはタスクを数珠繋ぎ（すなわち直列に接続）することで生成したが、一部に並列接続の構造を有するように生成しても良い。上記の通り、図８では、タスクＩＤ＝「２」の保存タスクの属性「出力ファイル」のファイル名と、タスクＩＤ＝「３」の印刷タスクの属性「入力ファイル」と、が一致する。また、タスクＩＤ＝「４」のアップロードタスクの属性「入力ファイル」もまた、タスクＩＤ＝「２」の保存タスクの属性「出力ファイル」と一致する。このような場合、タスクＩＤ＝「２」の保存タスクの次に、タスクＩＤ＝「３」の印刷タスクとタスクＩＤ＝「４」のアップロードタスクとを並列に接続する。これは、タスクＩＤ＝「２」の保存タスクに後続するタスクの数が３以上であっても同様であり、並列するタスクの数が３以上になる。
【０１０４】
タスクの並列構造を許容することによって、並列部のタスクは順不同であることを表現できる。そのため、モデルの可読性の向上、及び、モデルのバリエーションの低減に効果がある。
【０１０５】
＜第１の実施形態の第３の変形例＞
第１の実施形態では、タスクの並びが同じ操作パターンのグループ（モデル）ごとに、該モデルに分類された操作パターンの頻度を求め、それぞれのモデルのうち閾値以上の頻度を求めたモデルに対応するタスクの並びの操作パターンを頻出パターンとした。これは、モデルを選択する際に、ユーザの選択負荷を低減する効果がある。しかしながら、閾値を０とし、生成された全てのモデルを頻出パターンとして取得するようにしても良い。モデルが大量に存在する場合、モデルの中から実行フローとなるモデルを選択する際のユーザの負荷は増加するが、一方で詳細に自身の業務手順を把握したいユーザに対しては漏れなくモデルが可視化されるため効果がある。
【０１０６】
［第２の実施形態］
本実施形態を含む以下の各実施形態や各変形例では、第１の実施形態との差分について説明し、以下で特に触れない限りは、第１の実施形態と同様であるものとする。本実施形態では、画像形成装置１２０において実行したジョブ（機能）のログ（ジョブログ）を生成装置１００が該画像形成装置１２０から取得し、操作ログとジョブログとからタスクを生成する。これにより生成装置１００は、例えば、上記の領域１３０５において設定するパラメータのデフォルト値をジョブログから取得することができる。
【０１０７】
本実施形態に係る画像形成装置１２０の機能構成例について、図１４のブロック図を用いて説明する。取得部１４０１は、画像形成装置１２０において実行したジョブのログ（ジョブログ）を記憶部１２２から取得する。ジョブログは、画像形成装置１２０において実行したジョブのログとして制御部２２１が生成して、記憶制御部２２４によって記憶部１２２に登録したものである。ジョブログの具体例については、図１７を用いて後述する。
【０１０８】
次に、生成装置１００が実行フローを作成して画像形成装置１２０に配信するために行う処理について、同処理のフローチャートを示す図１５に従って説明する。図１５のフローチャートに従った処理は、ユーザが生成装置１００を日常的に利用していることを前提とし、日付が変わってから初めて生成装置１００にログインした際に、前日までに記憶部１０２に記録された操作ログを対象に実行される。
【０１０９】
ステップＳ１５０１では、タスク生成部２０６は、画像形成装置１２０の取得部１４０１が記憶部１２２から取得したジョブログを、該取得部１４０１から取得する。ステップＳ１５０２では、タスク生成部２０６は、ステップＳ４０１において操作ログ取得部２０５が取得した操作ログと、ステップＳ１５０１においてタスク生成部２０６が取得したジョブログと、から複数のタスクを生成する。
【０１１０】
＜ジョブログを構成するイベントの種類について＞
画像形成装置１２０（制御部２２１）がジョブを実行することに応じて発生し、記憶制御部２２４が記憶部１２２に格納するイベントの種類を図１６に示す。本実施形態において記憶制御部２２４が記憶部１２２に格納するイベントは図１６に示す２種類（イベント名が「スキャン」のイベント（スキャンイベント）、イベント名が「印刷」のイベント（印刷イベント）である。然るに本実施形態では、ジョブログに含まれているイベントは、図１６に例示した２種類のいずれかに該当する種類のイベントである。各イベントが共通で有する属性は、イベント名、図１６に不図示のイベント発生時刻（時刻属性）、及びユーザ名（ユーザ名属性）である。イベント名毎に異なる属性は、最大５種類（属性１〜５）である。スキャンイベントは、ユーザ操作に応じて生成装置１００が画像形成装置１２０に対してスキャン指示を送信し、画像読取部１２６がスキャン機能を実行した際に発生するイベントである。印刷イベントは、ユーザ操作に応じて生成装置１００が画像形成装置１２０に対して印刷指示を送信し、印刷部１２５が印刷機能を実行した際に発生するイベントである。
【０１１１】
＜ジョブログについて＞
タスク生成部２０６が取得部１４０１から取得するジョブログの構成例を図１７に示す。図１７に示す如く、ジョブログ１７０１の各行には、１つのジョブに対応するイベントの属性群が登録されており、より上の行には、実行した日時がより早いジョブに対応するイベントの属性群が登録されている。
【０１１２】
ジョブＩＤは、ジョブログ１７０１に含まれているそれぞれのジョブのイベントに固有の識別情報である。より過去に実行したジョブのイベントのジョブＩＤには、より小さい番号が割り当てられている。図１７のイベント名、属性１〜５はそれぞれ、図１６のイベント名、属性１〜５に対応しており、図１７の時刻、ユーザ名はそれぞれ、上記の時刻属性、ユーザ名属性、に対応する。
【０１１３】
＜タスクの生成ルールについて＞
タスクの生成ルールの一例を図１８に示す。図１８には、８種類のタスクのそれぞれについて、該タスクの生成に参照するログと、該タスクの構成要素となるイベントと、が規定されている。
【０１１４】
「タスク名」は、生成されるタスクの名称であり、「対象ログ」は、操作ログおよびジョブログのうち該タスクを生成するために参照する対象となるログであり、「構成イベント」は、該タスクの構成要素となるイベントの定義である。
【０１１５】
例えば、タスク名が「スキャン」のタスク（スキャンタスク）については、ジョブログを参照して、該ジョブログのスキャンイベントを構成要素とするように生成する。また例えば、タスク名が「印刷」のタスク（印刷タスク）については、ジョブログを参照して、該ジョブログの印刷イベントを構成要素とするように生成する。その他のタスクについては、第１の実施形態と同様の生成ルールである。
【０１１６】
このように、本実施形態では、画像形成装置１２０上のジョブログを取得してタスクを生成することができる。これにより、実行フローの生成時に設定する必要のあるパラメータのデフォルト値を、該ジョブログから推定することができる。
【０１１７】
＜第２の実施形態の第１の変形例＞
第２の実施形態では、操作ログおよびジョブログの両方を用意して、タスクは操作ログおよびジョブログの何れか一方から作成した。しかし、操作ログおよびジョブログから１つの統合ログを作成して、該統合ログからタスクを生成するようにしても良い。
【０１１８】
例えば、操作ログ６０１とジョブログ１７０１とから統合ログを作成する場合、操作ログ６０１の各行とジョブログ１７０１の各行とを時刻順に並べたものを統合ログとする。ここで、操作ログ６０１とジョブログ１７０１とで同じ（全く同じに限らず、規定の差異があっても良い）時刻属性の行（共通行）があった場合には、操作ログ６０１における共通行とジョブログ１７０１における共通行とを連結して１つの行にする。統合ログの作成は、例えば、タスク生成部２０６が行う。そして第１の実施形態において操作ログ６０１の代わりに統合ログを用いる。
【０１１９】
［第３の実施形態］
第１，２の実施形態では、自動化可能なタスクから成る頻出パターンを実行フローとして登録するものであって、自動化不可能なタスクを含む頻出パターンは実行フローとして登録できない。本実施形態では、自動化不可能なタスクを含む頻出パターンであっても実行フローとして登録可能である。
【０１２０】
例えば第１の実施形態では、モデルＩＤ＝１の頻出パターンは自動化可能ではないタスクを含むため、この頻出パターンを実行フローとすることはできず、よって、図１２に示す如く、ボタン１２０６ａは選択できないようになっている。しかし本実施形態では、モデルＩＤ＝１の頻出パターンを実行フローとすることができるため、図２０に示す如く、ボタン１２０６ａは選択できるようになっている。また、領域２００１内には、領域１２０５ａ内の情報に加え、自動化可能タスクのみに要する工数（“うち自動化可能な工数”）もまた表示されている。
【０１２１】
本実施形態に係る生成装置１００の機能構成例について、図１９のブロック図を用いて説明する。本実施形態に係る生成装置１００は、図２の生成装置１００の構成に、実行部１９１４を加えた構成を有する。
【０１２２】
実行部１９１４は、実行フローとして登録された頻出パターンを構成するタスクのうち自動化不可能なタスク（実行部２２５が実行できないタスク）の実行をユーザに指示するためのＵＩを、表示制御部２０２によって表示部１０３に表示させる。
【０１２３】
実行部２２５は実行フローにおけるタスクが自動化可能タスクであれば実行し、自動化可能タスクでなければ（自動化不可能なタスクであれば）、この自動化不可能なタスクの実行依頼を実行部１９１４に通知する。実行部１９１４は、自動化不可能なタスクの実行依頼の通知を受けると、表示制御部２０２に、この自動化不可能なタスクを手動で行うようユーザに通知するためのＵＩを、表示部１０３に表示させる。そして実行部１９１４は、ユーザが手動で自動化不可能なタスクの実行を行ったことを検知すると、その旨を実行部２２５に通知する。実行部２２５は、実行部１９１４に実行依頼を通知したタスクの次のタスクが自動化可能タスクであれば実行し、自動化可能タスクでなければ（自動化不可能なタスクであれば）、この自動化不可能なタスクの実行依頼を実行部１９１４に通知する。
【０１２４】
実行部２２５から、自動化不可能なタスクの実行依頼の通知を受けると、実行部１９１４は表示制御部２０２を制御して、図２１に例示するＵＩ２１０１を表示部１０３に表示させる。ＵＩ２１０１は、実行部２２５が図２０の実行フロー（スキャンタスク、保存タスク、アップロードタスク、印刷タスクの順に実行する実行フロー）の保存タスクの実行終了後にアップロードタスクの実行依頼を実行部１９１４に通知したことに応じて表示される。ＵＩ２１０１は、自動化不可能なタスクに相当するアップロードタスクをユーザに手動で行うよう指示するためのものである。
【０１２５】
ＵＩ２１０１中の領域２１０２には、アップロードするファイルのパス名（ファイル名を含む）が表示される。ユーザは入力部１０４を操作してこのファイルのアップロードを生成装置１００に行わせた後、入力部１０４を操作してボタン２１０３を指示すると、実行部１９１４は、実行部２２５にアップロードタスクの実行が完了したことを通知する。実行部２２５は、この通知を受けると、アップロードタスクに後続する印刷タスクを実行する。一方、ユーザが入力部１０４を操作してボタン２１０４を指示すると、実行部２２５に実行フローの実行の中止を指示する。
【０１２６】
このように、本実施形態によれば、自動化不可能なタスクを含む頻出パターンであっても実行フローとして登録することができる。そしてこのような実行フローを実行する場合、自動化可能タスクについては画像形成装置１２０が実行し、自動化不可能なタスクについてはユーザが手動で行う。これにより、実行フローとして登録可能なモデルのバリエーションを増やすことができる。
【０１２７】
なお、上記の各実施形態やその変形例において説明した各種のＵＩの構成や表示内容、表示形態等は一例であって、上記のＵＩの構成、表示内容、表示形態等に限らない。また、上記の各実施形態やその変形例において説明した各種のＵＩに対する操作方法についても一例であって、特定の操作方法に限らない。例えば、表示部１０３がタッチパネル画面で構成されている場合には、表示部１０３に表示されるＵＩに対してユーザがタッチ操作を行うことで、該ＵＩに対する操作を実現させても良い。また、上記の各実施形態やその変形例において用いた数値は一例であって、上記の数値に限らない。また、実行フローの配信先についても、上記の配信先に限らない。
【０１２８】
以上説明した各実施形態や各変形例の一部若しくは全部を適宜組み合わせて使用しても構わない。また、以上説明した各実施形態や各変形例の一部若しくは全部を選択的に使用しても構わない。
【０１２９】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１３０】
２０１：制御部  ２０２：表示制御部  ２０３：入力部  ２０４：記憶制御部  ２０５：操作ログ取得部  ２０６：タスク生成部  ２０７：生成部  ２０８：取得部  ２０９：取得部  ２１０：判定部  ２１１：評価部  ２１２：選択部  ２１３：配信部  ２２１：制御部  ２２２：表示制御部  ２２３：入力部  ２２４：記憶制御部  ２２５：実行部
【図１】
2020057166.tif 000003
【図２】
2020057166.tif 000004
【図３】
2020057166.tif 000005
【図４】
2020057166.tif 000006
【図５】
2020057166.tif 000007
【図６】
2020057166.tif 000008
【図７】
2020057166.tif 000009
【図８】
2020057166.tif 000010
【図９】
2020057166.tif 000011
【図１０】
2020057166.tif 000012
【図１１】
2020057166.tif 000013
【図１２】
2020057166.tif 000014
【図１３】
2020057166.tif 000015
【図１４】
2020057166.tif 000016
【図１５】
2020057166.tif 000017
【図１６】
2020057166.tif 000018
【図１７】
2020057166.tif 000019
【図１８】
2020057166.tif 000020
【図１９】
2020057166.tif 000021
【図２０】
2020057166.tif 000022
【図２１】
2020057166.tif 000023