(57)【要約】【課題】クラウドとデバイスとの間でワークフローにかかるデータのやり取りする処理等の無駄を出来るだけ省くことを目的とする。【解決手段】複数の工程から構成されるワークフローを生成するワークフロー生成装置であって、工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する識別手段と、識別手段により実行場所がクラウドと識別された複数の処理をまとめて呼び出せるように処理の順序を入れ替える入れ替え手段と、入れ替え手段により入れ替えられた結果、連続して並んでいる識別手段で実行場所がクラウドと識別された複数の処理をまとめてワークフローを生成する生成手段と、を有することによって課題を解決する。【選択図】図８
2014056488.tif 000002
【特許請求の範囲】
【請求項１】
複数の工程から構成されるワークフローを生成するワークフロー生成装置であって、
前記工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する識別手段と、
前記識別手段により実行場所がクラウドと識別された複数の処理をまとめて呼び出せるように処理の順序を入れ替える入れ替え手段と、
前記入れ替え手段により入れ替えられた結果、前記識別手段で実行場所がクラウドと識別された連続して並んでいる複数の処理をまとめて前記ワークフローを生成する生成手段と、
を有するワークフロー生成装置。
【請求項２】
前記識別手段は、前記工程を構成する１以上の処理の内容と、前記デバイスの機能と、前記クラウドの機能と、に基づいて、前記工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する請求項１記載のワークフロー生成装置。
【請求項３】
前記識別手段は、前記処理の内容と、前記デバイスの機能と、前記クラウドの機能と、に基づいて、前記処理を、デバイスとクラウドとのどちらでも実行可能であると判断した場合は、前記処理の実行場所をクラウドと識別する請求項２記載のワークフロー生成装置。
【請求項４】
前記複数の工程とは、入力工程と、編集工程と、出力工程と、を含み、
前記入れ替え手段は、前記識別手段により、前記入力工程の処理の実行場所がデバイス、出力工程の処理の実行場所がクラウド、と識別され、前記編集工程に含まれる複数の処理のうち、順序を変えることができる１以上の処理の実行場所がクラウドと識別された場合、前記順序を変えることができる１以上の処理を、前記出力工程の処理に寄せるよう処理の順序を入れ替える請求項１乃至３何れか１項記載のワークフロー生成装置。
【請求項５】
前記複数の工程とは、入力工程と、編集工程と、出力工程と、を含み、
前記入れ替え手段は、前記識別手段により、前記入力工程の処理の実行場所がクラウド、出力工程の処理の実行場所がデバイス、と識別され、前記編集工程に含まれる複数の処理のうち、順序を変えることができる１以上の処理の実行場所がクラウドと識別された場合、前記順序を変えることができる１以上の処理を、前記入力工程の処理に寄せるよう処理の順序を入れ替える請求項１乃至３何れか１項記載のワークフロー生成装置。
【請求項６】
前記入れ替え手段は、前記識別手段により、前記工程を構成する複数の処理のうち、順序を変えることができる１以上の処理の実行場所がクラウド、順序を変えることができない１以上の処理の実行場所がクラウドと識別された場合、前記順序を変えることができる１以上の処理を、前記順序を変えることができない１以上の処理に寄せるよう処理の順序を入れ替える請求項１乃至３何れか１項記載のワークフロー生成装置。
【請求項７】
前記入れ替え手段は、前記識別手段により、前記工程を構成する複数の処理のうち、順序を変えることができる２以上の処理の実行場所がクラウド、順序を変えることができない１以上の処理の実行場所がデバイスと識別された場合、前記順序を変えることができる２以上の処理を前記工程の前方に寄せるよう処理の順序を入れ替える請求項１乃至３何れか１項記載のワークフロー生成装置。
【請求項８】
前記入れ替え手段で処理を入れ替える際に、工程の前方に寄せるよう処理の順序を入れ替えるか、工程の後方に寄せるように処理の順序を入れ替えるか、を設定する設定手段を更に有し、
前記入れ替え手段は、前記設定手段による設定に応じて、前記識別手段により実行場所がクラウドと識別された複数の処理をまとめて呼び出せるように、工程の前方に寄せるよう、又は工程の後方に寄せるように処理の順序を入れ替える請求項１乃至７何れか１項記載のワークフロー生成装置。
【請求項９】
前記デバイスは、前記工程を構成する少なくとも１以上の処理を実行する、複数の機能を提供する画像形成装置である請求項１乃至８何れか１項記載のワークフロー生成装置。
【請求項１０】
前記ワークフロー生成装置は、前記工程を構成する少なくとも１以上の処理を実行する、複数の機能を提供する画像形成装置である請求項１乃至９何れか１項記載のワークフロー生成装置。
【請求項１１】
前記クラウドは、ネットワークを介して通信可能な他のワークフロー生成装置が提供しているサービスである請求項１乃至１０何れか１項記載のワークフロー生成装置。
【請求項１２】
複数の工程から構成されるワークフローを生成するワークフロー生成装置が実行するワークフロー生成方法であって、
前記工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する識別ステップと、
前記識別ステップにより実行場所がクラウドと識別された複数の処理をまとめて呼び出せるように処理の順序を入れ替える入れ替えステップと、
前記入れ替えステップにより入れ替えられた結果、前記識別ステップで実行場所がクラウドと識別された連続して並んでいる複数の処理をまとめて前記ワークフローを生成する生成ステップと、
を含むワークフロー生成方法。
【請求項１３】
複数の工程から構成されるワークフローを生成するコンピュータに、
前記工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する識別ステップと、
前記識別ステップにより実行場所がクラウドと識別された複数の処理をまとめて呼び出せるように処理の順序を入れ替える入れ替えステップと、
前記入れ替えステップにより入れ替えられた結果、前記識別ステップで実行場所がクラウドと識別された連続して並んでいる複数の処理をまとめて前記ワークフローを生成する生成ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフロー生成装置、ワークフロー生成方法及びプログラムに関する。
【背景技術】
【０００２】
プリンタ、複写機、ファクシミリ等の画像形成装置が機能を統合したマルチファンクション機として複合機能装置が発展している。複合機能装置は、複数の機能を統合することにより、オフィスにおいてはユーザの業務の簡略化を目的として、複合機能装置で行うべき複数の処理工程を１つのジョブとして実行できるような機器も増えてきている。
業務を提供する機能は、前記ユーザの業務に依存して提供するものである。したがって、様々な業務形態を想定するため、任意の処理工程の組み合わせ（以下、フロー）を提供することが可能である。複合機能装置で処理可能なフローは、スキャン機能、画像を変換する画像編集機能、データを外部のシステムに送信する機能等を組み合わせた処理を指定することが可能である。なお、フローは、複合機能装置が提供する様々な機能を組み合わせることが可能である。機能としては、例えば、スキャンデータを再利用するボックス文書の入力機能、画像データの裏写りを防止する編集機能、画像データを結合する編集機能、画像から文字を抽出する画像編集機能がある。
【０００３】
複合機能装置はフローに記述された処理工程の組み合わせを順次実行し、作成済みフローが繰り返し実行可能となる。フローが再利用可能なことで、同様の処理結果を得られるため、業務効率が向上することが一般的である。
また、近年は所謂クラウド（インターネット上にアプリケーションを保存して活用するコンピューティングサービス。以下、クラウドと称する。）技術を活用することが一般的である。例えば画像処理をする編集機能をホストコンピュータ上にサービスとして登録し、任意の複合機能装置はサービスを呼び出すことでクラウドリソースを活用する技術が提案されている（特許文献１。）。
クラウドが提供する編集機能や文書管理サービス等は、サービス提供側の任意なタイミングで提供を開始するものであり、複合機能装置は利用可能なサービス順に優先的に利用することでクラウドリソースを活用することが一般的である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３５２６９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら従来技術では、例えば、編集機能を複数利用するフローを実行すると、編集機能の一部しかクラウドで提供されていないため、中間データをクラウドと複合機能装置とでやり取りする処理等の無駄が生じる問題があった。
【０００６】
本発明はこのような問題点に鑑みなされたもので、クラウドとデバイスとの間でワークフローにかかるデータのやり取りする処理等の無駄を出来るだけ省くことを目的とする。
【課題を解決するための手段】
【０００７】
そこで、本発明は、複数の工程から構成されるワークフローを生成するワークフロー生成装置であって、前記工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する識別手段と、前記識別手段により実行場所がクラウドと識別された複数の処理をまとめて呼び出せるように処理の順序を入れ替える入れ替え手段と、前記入れ替え手段により入れ替えられた結果、前記識別手段で実行場所がクラウドと識別された連続して並んでいる複数の処理をまとめて前記ワークフローを生成する生成手段と、を有する。
【発明の効果】
【０００８】
本発明によれば、クラウドとデバイスとの間でワークフローにかかるデータのやり取りする処理等の無駄を出来るだけ省くことができる。
【図面の簡単な説明】
【０００９】
【図１】複合機能装置及びホストコンピュータ等を収容するワークフローシステムのシステム構成の一例を示す図である。
【図２】複合機能装置のハードウェア構成の一例を示す図である。
【図３】ホストコンピュータのハードウェア構成の一例を示す図である。
【図４】実施形態１のフロー生成装置及びクラウド機能管理装置のソフトウェア構成の一例を示す図である。
【図５】複合機能管理部が管理するテーブルの一例を示す図である。
【図６】処理工程順序管理部が管理するテーブルの一例を示す図である。
【図７】クラウド機能管理部が管理するテーブルの一例を示す図である。
【図８】フロー生成処理の一例を示すフローチャートである。
【図９】実施形態１のクラウド機能取得処理の一例を示すフローチャートである。
【図１０】複合機能装置で実行可能な組み合わせを記載したフローの一例を示す図である。
【図１１】従来方法による各工程の実行場所が決定したフローの設定の一例を示す図である。
【図１２】生成されたフローの一例を示す図である。
【図１３】実施形態２のフロー生成装置及びクラウド機能管理装置のソフトウェア構成の一例を示す図である。
【図１４】実施形態２のクラウド機能取得処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面に基づいて説明する。
【００１１】
図１は、複合機能装置及びホストコンピュータ等を収容するワークフローシステムのシステム構成の一例を示す図である。複合機能装置は、データ送受信機能を有する複合機能装置である。なお、複合機能装置は、画像形成装置、及びデバイスの一例である。
複合機能装置１００１は、ＬＡＮ１００４を介して、ホストコンピュータ１００３、ホストコンピュータ１００３と同等の機能を提供する複合機能装置１００２、と通信可能に接続されている。複合機能装置１００１は、コピー機能、ファクシミリ機能を有すると共に、原稿画像を読み取り、読み取って得られた画像データをＬＡＮ１００４上の各装置に送信するデータ送信機能を有する。また、複合機能装置１００１は、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）機能を有するので、ＬＡＮ１００４上に接続されているコンピュータから指示されたＰＤＬ画像を受信して印刷することができる。複合機能装置１００１は、複合機能装置１００１で読み取った画像や、ＬＡＮ１００４上に接続されているコンピュータから指示されたＰＤＬ画像を、複合機能装置１００１内の後述する図２の記憶装置２０５等の指定されたボックス領域に保存することができる。また、複合機能装置１００１は、ボックス領域に保存された画像を印刷することができる。
また、複合機能装置１００１は、原稿画像の読み取り、画像の編集（文書結合、裏写り除去、ＯＣＲ等）、データ送信機能の処理をフロー（ワークフロー）として組み合わせ、ユーザ単位に複数のフローを登録する。ユーザ等は、複合機能装置１００１内に登録しておいたフローを実行することで、定型的に処理を実行することができる。
【００１２】
ホストコンピュータ１００３は、所謂クラウド技術と称されるネットワークを介して利用可能なサービスを提供する。提供するサービスは、例えば、前記画像の編集機能や受信データを管理する文書管理機能である。ホストコンピュータ１００３の後述する図３のＣＰＵ３０１は、記憶装置３０３（記憶装置２０５と同様のもの）に格納されているプログラムを実行することによって、前記サービスを提供する。複合機能装置１００１は、ＬＡＮ１００４を介してホストコンピュータ１００３が提供するサービスにリクエストを送信し、サービスとしての機能を利用することができる。
ホストコンピュータ１００３が提供するアプリケーションは、複合機能装置１００２内の記憶装置２０５に格納して提供することもできる。つまり、複合機能装置１００２のＣＰＵは、複合機能装置１００２の記憶装置に格納されているプログラムを実行することによって、前記サービスを提供することもできる。この場合、複合機能装置１００１は、ＬＡＮ１００４を介して複合機能装置１００２が提供するサービスにリクエストを送信し、サービスとしての機能を利用することができる。
【００１３】
図２は、複合機能装置１００１及び１００２のハードウェア構成の一例を示す図である。複合機能装置１００１及び１００２は、ハードウェア構成として、ＣＰＵ２０１、ＲＡＭ２０２、読取装置２０３、印刷装置２０４、記憶装置２０５、ユーザ入力装置２０６、ＵＩ表示装置２０７、ネットワーク装置２０８を有する。これらの各ハードウェアは、メインバス２００を介して互いに接続されている。
ＣＰＵ２０１は、複合機能装置全体を制御する。ＲＡＭ２０２は、ＣＰＵ２０１のワークエリアを提供する。読取装置２０３は、画像を読み取る。印刷装置２０４は、画像を印刷する。記憶装置２０５は、プログラムや様々な設定情報を記憶する。記憶装置２０５の一例としては、ハードディスクやＮＶＲＡＭ等である。ユーザ入力装置２０６は、ユーザによるコマンドの入力等を入力し、ＣＰＵ２０１等に通知する。ＵＩ表示装置２０７は、ＣＰＵ２０１の処理の結果等を表示する。ネットワーク装置２０８は、他機器とネットワークを介した通信を行う。なお、タッチパネルディスプレイのようにＵＩ表示装置２０７がユーザ入力装置２０６を兼ねてもよい。
ＣＰＵ２０１が、記憶装置２０５に記憶されているプログラムに基づき処理を実行することによって、後述する複合機能装置のソフトウェア構成やフローチャートに係る処理が実現される。なお、複合機能装置のソフトウェア構成とは、例えば、後述するフロー生成装置の機能構成等である。
【００１４】
図３は、ホストコンピュータ１００３のハードウェア構成の一例を示す図である。ホストコンピュータ１００３は、ハードウェア構成として、ＣＰＵ３０１、ＲＡＭ３０２、記憶装置３０３、ネットワーク装置３０４を有する。これらの各ハードウェアは、メインバス３００を介して接続されている。
ＣＰＵ３０１は、ホストコンピュータ全体を制御する。ＲＡＭ３０２は、ＣＰＵ３０１のワークエリアを提供する。記憶装置３０３は、プログラムや様々な設定情報を記憶する。ネットワーク装置３０４は、他機器とネットワークによる通信を行う。
ＣＰＵ３０１が、記憶装置３０３に記憶されているプログラムに基づき処理を実行することによって、後述するホストコンピュータ１００３のソフトウェア構成等が実現される。なお、ホストコンピュータ１００３のソフトウェア構成とは、例えば、後述するクラウド機能管理装置の機能構成等である。
【００１５】
＜実施形態１＞
図４は、実施形態１のフロー生成装置４００及びクラウド機能管理装置４０１のソフトウェア構成の一例を示す図である。フロー生成装置４００は、ワークフロー生成装置の一例である。
ここで、フロー生成装置４００は、複合機能装置１００１のＣＰＵ２０１が、記憶装置２０５に記憶されているプログラムに基づき処理を実行することによって実現される機能を提供する機器の一例である。また、クラウド機能管理装置４０１は、ホストコンピュータ１００３のＣＰＵ３０１が、記憶装置３０３に記憶されているプログラムに基づき処理を実行することによって実現される機能を提供する機器の一例である。
【００１６】
フロー生成装置４００は、特定されたフローの工程を確認し、クラウド処理をまとめた工程にし、複合機能装置１００１とホストコンピュータ１００３とで実行可能なフローを生成する。このようにすることによって、複合機能装置１００１とホストコンピュータ１００３との中間データのやり取りの無駄を省くことができる。
フロー解析部４００１は、特定されたフローの内容を解析し、解析結果を工程順に順次読み出す。
複合機機能管理部４００２は、複合機能装置１００１が提供する機能を管理する。後述する図５は、複合機機能管理部４００２が管理するテーブルの一例を示す図である。
クラウド機能取得部４００３は、ホストコンピュータ１００３が提供する機能のサービスを取得するために、クラウド機能管理装置４０１を利用する。
処理工程順序管理部４００４は、フローに記載される工程を構成する処理の処理順序を管理する。後述する図６は、処理工程順序管理部４００４が管理するテーブルの一例を示す図である。
フロー生成部４００５は、複合機能装置１００１で実行可能なフローを生成する。
工程設定フラグ部４００６は、クラウドで実行する編集工程を入力工程側か出力工程側の何れかに優先的に寄せるかを示すフラグを設定する。
【００１７】
クラウド機能管理装置４０１は、ホストコンピュータ１００３が提供する機能のサービスを管理し、クラウドサービスとして利用可能な機能を提供する。
クラウド機能管理部４０１０は、ホストコンピュータ１００３が提供する機能を管理する。後述する図７は、クラウド機能管理部４０１０が管理するテーブルの一例を示す図である。
制御部４００７や４０１１は、各種機能の管理や呼び出し等各機能の処理の制御を行うためのモジュールである。
情報記憶部（Ｈ／Ｄ）４００８や４０１２は、制御部４００７や４０１１からの制御に基づき、記憶装置２０５や３０３に必要な情報を記憶したり、記憶した情報を取得したりするためのモジュールである。
ネットワークＩ／Ｆ４００９や４０１３は、ネットワーク装置２０８や３０４を介して、他機器とネットワークによる通信を行うためのモジュールである。
【００１８】
図５は、複合機機能管理部４００２が管理するテーブルの一例を示す図である。例えば、複合機機能管理部４００２は、前記テーブルを用いて、複合機能装置１００１で工程毎に実行可能な複数の機能を管理している。
図６は、処理工程順序管理部４００４が管理するテーブルの一例を示す図である。例えば、処理工程順序管理部４００４は、前記テーブルを用いて、工程毎に処理の順序を管理している。入力工程９００１、編集工程９００２、出力工程９００３の順番が変えらないため、図６の例では、入力工程⇒１、編集工程⇒２、出力工程⇒３として管理されている。
また、図６の例では、編集工程９００２内の前処理系９０１２と領域認識系９０１３とはグループとして順番が変えられないため矢印で示されている。なお、図６の例では、前処理系９０１２内の複数の処理（裏写り除去及び文書結合）は、何れを先に実施してもよいことが示されている。
図７は、クラウド機能管理部４０１０が管理するテーブルの一例を示す図である。例えば、クラウド機能管理部４０１０は、前記テーブルを用いて、ホストコンピュータ１００３で工程毎に実行可能な複数の機能を管理している。編集工程８００１、出力工程８００２は、単機能で利用可能な工程を示している。編集工程＋出力工程８００３は、組み合わせ機能で利用可能な工程を示している。
【００１９】
図８は、フロー生成処理の一例を示すフローチャートである。
ステップＳ５０００において、制御部４００７は、複合機機能管理部４００２を呼び出し、複合機が提供する機能を取得し、取得した機能の情報を一時記憶領域（情報記憶部４００８）に記憶する。
ステップＳ５００１において、制御部４００７は、クラウド機能取得部４００３を呼び出し、クラウドが提供する機能を取得し、取得した機能の情報を一時記憶領域に記憶する。なお、クラウド機能取得部４００３が呼び出されることでクラウド機能を取得する処理に関しては後述するクラウド機能取得処理で説明する。
ステップＳ５００２において、制御部４００７は、フロー解析部４００１を呼び出し、実行対象となるフローの解析結果を読み出し、解析結果のフローの全工程の各処理のループ処理を開始し、工程の処理毎に特定しながら以下に示す処理を行う。つまり、制御部４００７は、ステップＳ５００２のループ処理において、工程を構成する１以上の処理の各実行場所が、デバイスか、クラウドかを識別する。
【００２０】
ステップＳ５００３において、制御部４００７は、特定している処理がホストコンピュータ１００３と複合機能装置１００１との両方で実行可能かどうかを、処理の内容、複合機が提供する機能、クラウド機能、に基づき、判断する。制御部４００７は、両方とも実行可能な場合は、Ｓ５００４へ遷移し、それ以外の場合は、Ｓ５００５へ遷移する。
ステップＳ５００４において、制御部４００７は、特定している処理の実行場所は、クラウドであると認識し、一時記憶領域にその処理（どの工程のどの処理であるか）と実行場所（クラウド）との情報を記憶する。
ステップＳ５００５において、制御部４００７は、処理の内容、複合機が提供する機能、クラウド機能、に基づき、特定している処理が複合機能装置１００１のみで実行可能か否かを判定する。制御部４００７は、特定している処理が複合機能装置１００１のみで実行可能な場合は、Ｓ５００６へ遷移し、特定している処理が複合機能装置１００１以外で実行可能な場合は、Ｓ５００４へ遷移する。
ステップＳ５００６において、制御部４００７は、特定している処理の実行場所は複合機能装置１００１であることを認識し、一時記憶領域にその処理（どの工程のどの処理であるか）と実行場所（複合機能装置）との情報を記憶する。
【００２１】
ステップＳ５００７において、制御部４００７は、Ｓ５００４やＳ５００６で記憶した情報に基づき、実行場所がクラウドの処理は存在するか否かを判定する。制御部４００７は、クラウドで処理する対象がある場合はＳ５００８へ、それ以外の場合はＳ５０２８へ遷移する。
ステップＳ５００８において、制御部４００７は、Ｓ５００４やＳ５００６で記憶した情報に基づき、実行場所がクラウドの処理の前後の処理が複合機能装置１００１で実行する処理か否かを判定する。制御部４００７は、実行場所がクラウドの処理の前後の処理が複合機能装置１００１で実行する処理である場合はＳ５００９へ、それ以外の場合はＳ５０１２へ遷移する。
ステップＳ５００９において、制御部４００７は、処理工程順序管理部４００４の情報に基づき、前記実行場所がクラウドの処理の前後の処理が順序を変更できるか否かを判定する。制御部４００７は、前記実行場所がクラウドの処理の前後の処理が順序を変更できない処理の場合はＳ５０１０へ、それ以外はＳ５０１２へ遷移する。
【００２２】
ステップＳ５０１０において、制御部４００７は、実行場所がクラウドの処理の内容、複合機が提供する機能等に基づき、前記実行場所がクラウドの処理が複合機能装置１００１で実行可能な処理か否かを判定する。制御部４００７は、実行場所がクラウドの処理が複合機能装置１００１で実行可能な処理の場合はＳ５０１１へ遷移し、それ以外はＳ５０１２へ遷移する。
ステップＳ５０１１において、制御部４００７は、実行場所がクラウドとなっている処理の実行場所を複合機能装置１００１に変更する。制御部４００７は、実行場所を変更した処理及び前記処理の実行場所の情報（つまり、複合機能装置１００１であることを示す情報）等を一時記憶領域に記憶する。
【００２３】
ステップＳ５０１２において、制御部４００７は、Ｓ５００４やＳ５００６、Ｓ５０１１等で記憶した情報に基づき、出力工程の全ての処理がクラウドで実行する処理か否かを判定する。制御部４００７は、前記全ての処理がクラウドで実行する処理の場合、Ｓ５０１３へ遷移し、それ以外はＳ５０１４へ遷移する。
ステップＳ５０１３において、制御部４００７は、編集工程のクラウド処理の処理を出力工程側（後ろの工程側、つまり編集工程の後方）に優先的に寄せることを認識し、認識結果を一時記憶領域に記憶する。
ステップＳ５０１４において、制御部４００７は、Ｓ５００４やＳ５００６、Ｓ５０１１で記憶した情報に基づき、入力工程の全ての処理がクラウドで実行する処理か否かを判定する。制御部４００７は、前記全ての処理がクラウドで実行する処理の場合、Ｓ５０１５へ遷移し、それ以外はＳ５０１６へ遷移する。
ステップＳ５０１５において、制御部４００７は、編集工程のクラウド処理の処理を入力工程側（前の工程側、つまり編集工程の前方）に優先的に寄せることを認識し、認識結果を一時記憶領域に記憶する。
【００２４】
ステップＳ５０１６において、制御部４００７は、工程設定フラグ部４００６を呼び出し、クラウドで実行する編集工程を入力工程側か出力工程側の何れかに優先的に寄せるかの情報が設定されている設定フラグを取得する。
ステップＳ５０１７において、制御部４００７は、Ｓ５０１６で取得した設定フラグが出力工程側に優先的に寄せることを示していた場合、Ｓ５０１３へ遷移し、それ以外はＳ５０１５へ遷移する。
ステップＳ５０１８において、制御部４００７は、ワークフローの編集工程に複数の処理が存在するか否かを判定する。制御部４００７は、ワークフローの編集工程に複数の処理が存在する場合はＳ５０１９へ遷移し、それ以外はＳ５０２８へ遷移する。
ステップＳ５０１９において、制御部４００７は、ワークフローの編集工程にクラウドの編集処理が存在するか否かを判定する。制御部４００７は、ワークフローの編集工程にクラウドの編集処理が存在する場合は、Ｓ５０２９へ遷移し、それ以外はＳ５０２８へ遷移する。
ステップＳ５０２９において、制御部４００７は、処理工程順序管理部４００４を呼び出し、取得したフローに記載される工程の各処理の順序情報を一時記憶領域に記憶する。
【００２５】
ステップＳ５０２０において、制御部４００７は、前記取得した順序情報に基づいて、編集工程の各処理は全て順序変更可能かどうかを判断する。制御部４００７は、全て順序変更可能な場合はＳ５０２１へ遷移し、それ以外はＳ５０２２へ遷移する。
ステップＳ５０２１において、制御部４００７は、前記設定フラグで設定されている工程側に、順序変更可能な編集工程のクラウドの処理を寄せるように並べることを示す情報を一時記憶領域に記憶する。
ステップＳ５０２２において、制御部４００７は、前記取得した順序情報に基づいて、編集工程に順序変更不可なクラウドの編集処理があるか否かを判定する。制御部４００７は、順序変更不可なクラウドの編集処理がある場合はＳ５０２３へ遷移し、それ以外はＳ５０２４へ遷移する。
ステップＳ５０２３において、制御部４００７は、前記取得した順序情報に基づいて、編集工程に順序変更可能なクラウドの編集処理が存在するか否かを判定する。制御部４００７は、編集工程に順序変更可能なクラウドの編集処理が存在する場合、Ｓ５０２５へ遷移し、それ以外はＳ５０２８へ遷移する。
【００２６】
ステップＳ５０２４において、制御部４００７は、前記取得した順序情報に基づいて、編集工程に複数の（つまり２以上の）順序変更可能なクラウドの編集工程が存在するか否かを判定する。制御部４００７は、編集工程に複数の順序変更可能なクラウドの編集工程が存在する場合、Ｓ５０２６へ遷移し、それ以外はＳ５０２８へ遷移する。
ステップＳ５０２５において、制御部４００７は、順序変更可能なクラウドの編集工程の処理を順序変更不可なクラウドの編集工程の処理の前方に配置することを示す情報を、一時記憶領域に記憶する。
ステップＳ５０２６において、制御部４００７は、順序変更可能な実行場所がクラウドの編集工程の処理を、編集工程の前方に配置することを示す情報を、一時記憶領域に記憶する。
ステップＳ５０２７において、制御部４００７は、連続して並んだ実行場所がクラウドの処理をまとめて呼び出す工程にすることを示す情報を、一時記憶領域に記憶する。
ステップＳ５０２８において、制御部４００７は、一時記憶領域に記憶した情報等に基づき、工程を構成する処理毎の実行場所を指定してフロー生成部４００５を呼び出してフローを生成させ、生成させたフローを情報記憶部（Ｈ／Ｄ）４００８に格納する。
【００２７】
図９は、実施形態１のクラウド機能取得処理の一例を示すフローチャートである。
ステップＳ６００１において、制御部４００７は、クラウド機能取得部４００３を呼び出し、クラウド機能を取得する依頼をネットワークＩ／Ｆ４００９を介してクラウド機能管理装置４０１へ送信する。
ステップＳ６００２において、制御部４０１１は、ネットワークＩ／Ｆ４０１３を介して、クラウド機能を取得する依頼を受信する。
ステップＳ６００３において、制御部４０１１は、受信したクラウド機能を取得する依頼に基づき、クラウド機能管理部４０１０が管理するクラウド機能を取得する。
ステップＳ６００４において、制御部４０１１は、取得したクラウド機能を情報記憶部４０１２に格納する。
ステップＳ６００５において、制御部４０１１は、ネットワークＩ／Ｆ４０１３を介して、取得したクラウド機能をフロー生成装置４００へ送信する。
ステップＳ６００６において、制御部４００７は、ネットワークＩ／Ｆ４００９を介して受信したクラウド機能をクラウド機能取得部４００３に渡す。
ステップＳ６００７において、制御部４００７は、クラウド機能取得部４００３を呼び出し、取得したクラウドが提供する機能を一時記憶領域に記憶する。
【００２８】
図１０、図１１、図１２を用いて、実行対象となるフローを従来方法によりクラウド機能を適用することで中間データの無駄が生ずる課題例と本実施形態を適用した結果を示す。
図１０は、複合機能装置１００１で実行可能な組み合わせを記載したフローの一例を示す図である。以下、オリジナルフローと称する。
オリジナルフローは以下の通りの処理の組み合わせを順次処理する。
［入力工程］
Ｎｏ．１  原稿読込
Ｎｏ．２  ボックス文書
［編集工程］
Ｎｏ．３  裏写り除去
Ｎｏ．４  文書結合
Ｎｏ．５  光学文字認識（以下、ＯＣＲ）
［出力工程］
Ｎｏ．６  クラウドへ送信
【００２９】
図１１は、従来方法による各工程の実行場所が決定したフローの設定の一例を示す図である。従来は、複合機能装置１００１は、ホストコンピュータ１００３で利用可能なサービスになれば優先的に利用する。したがって、工程毎に利用可能なものはクラウドで実行する。クラウドで利用可能な機能は、図７（クラウドで利用可能な機能）に示す処理毎の機能であるため、Ｎｏ．３、Ｎｏ．５及びＮｏ．６がクラウドで実行する対象である。
フロー処理を順次実行すると、Ｎｏ．４の文書結合は複合機能装置１００１で実行するため、Ｎｏ．３の処理結果の中間データ（処理途中のデータ）をクラウドから複合機能装置１００１へ送信する無駄が生ずる。また、Ｎｏ．６のクラウド送信を行うために、Ｎｏ．５の処理結果の中間データをホストコンピュータ１００３から複合機能装置１００１へ送信する無駄が生ずる。
【００３０】
次にオリジナルフローに本実施形態に適用した結果を以下に示す。
オリジナルフローの実行を認識すると、ステップＳ５０００〜Ｓ５００３の処理に遷移する。
ステップＳ５００４において、制御部４００７は、Ｎｏ．３、Ｎｏ．５、Ｎｏ．６の処理を実行場所がクラウドの処理として識別する。
ステップＳ５００５、Ｓ５００６において、制御部４００７は、Ｎｏ．１、Ｎｏ．２、Ｎｏ．４を実行場所が複合機能装置１００１の処理として識別する。
ステップＳ５００７、Ｓ５００８からＳ５００９に遷移して、Ｎｏ．４の処理が複合機能装置１００１で順序変更可能な編集工程の処理であるため、制御部４００７は、Ｓ５０１２に遷移する。
ステップＳ５０１２において、Ｎｏ．６の処理の実行場所がクラウドであることから、制御部４００７は、Ｓ５０１３へ遷移し、出力工程側に寄せる旨、設定する。出力工程側へ寄せる旨、設定した後、制御部４００７は、Ｓ５０１８（編集工程に複数の処理あり）、Ｓ５０１９（編集工程にはクラウドで実行する処理が存在する）、Ｓ５０２９へ遷移し、工程における処理の順序情報を認識する。
【００３１】
ステップＳ５０２０（編集工程は全て順序変更可能ではない）、Ｓ５０２２に遷移し、クラウドの順序変更不可なクラウドの処理であるＯＣＲ（Ｎｏ．５）があるため、制御部４００７は、ステップＳ５０２３へ遷移する。
ステップＳ５０２３で、制御部４００７は、順序変更可能なクラウドの編集工程の処理である（Ｎｏ．３）が存在するため、Ｓ５０２５へ遷移する。
ステップＳ５０２５で、制御部４００７は、クラウドの順序変更可能な編集工程（Ｎｏ．３）をクラウドの順序変更不可な編集工程（Ｎｏ．５）の前方に配置し、ステップＳ５０２７に遷移する。
ステップＳ５０２７で、制御部４００７は、連続して並んだクラウド処理をまとめた工程（裏写り除去＋ＯＣＲ＋クラウドへ送信）にすることを設定し、ステップＳ５０２８へ遷移する。
ステップＳ５０２８で、制御部４００７は、設定（又は認識している）実行場所を指定したフローを生成する。図１２は、生成されたフローの一例を示す図である。
適用結果により生成されたるフロー（図１２）を実行すると、クラウド実行は、
Ｎｏ．４  ［裏写り除去＋ＯＣＲ＋クラウドへ送信］
をまとめた処理を実行するのみとなる。
したがって、ホストコンピュータ１００３から複合機能装置１００１へ中間データを送信する無駄が省け、ユーザの利便性が高まる。
【００３２】
＜実施形態２＞
図１３は、実施形態２のフロー生成装置４００及びクラウド機能管理装置１３０１のソフトウェア構成の一例を示す図である。実施形態１との差異は、クラウド機能を提供する装置（ホストコンピュータ１００３）が複合機能装置１００２で提供される点である。以下では、主に実施形態１との差分を説明する。
クラウド機能管理装置１３０１は、複合機能装置１００２のＣＰＵ２０１が、記憶装置２０５に記憶されているプログラムに基づき処理を実行することによって実現される機能を提供する機器の一例である。
クラウド機能管理部１３０１０は、複合機能装置１００２がクラウドサービスとして提供する機能を管理する。
制御部１３０１１は、各種機能の管理や呼び出し等各機能の処理の制御を行うためのモジュールである。
情報記憶部（Ｈ／Ｄ）１３０１２は、制御部１３０１１からの制御に基づき、記憶装置２０５に必要な情報を記憶したり、記憶した情報を取得したりするためのモジュールである。
ネットワークＩ／Ｆ１３０１３は、ネットワーク装置２０８を介して、他機器とネットワークによる通信を行うためのモジュールである。
【００３３】
図１４は、実施形態２のクラウド機能取得処理の一例を示すフローチャートである。
ステップＳ１４００１において、制御部４００７は、クラウド機能取得部４００３を呼び出し、クラウド機能を取得する依頼をネットワークＩ／Ｆ４００９を介してクラウド機能管理装置１３０１へ送信する。
ステップＳ１４００２において、制御部１３０１１は、ネットワークＩ／Ｆ１３０１３を介して、クラウド機能を取得する依頼を受信する。
ステップＳ１４００３において、制御部１３０１１は、受信したクラウド機能を取得する依頼に基づき、クラウド機能管理部１３０１０が管理するクラウド機能を取得する。
ステップＳ１４００４において、制御部１３０１１は、取得したクラウド機能を情報記憶部（１３０１２）に格納する。
ステップＳ１４００５において、制御部１３０１１は、ネットワークＩ／Ｆ１３０１３を介して、取得したクラウド機能をフロー生成装置４００へ送信する。
ステップＳ１４００６において、制御部４００７は、ネットワークＩ／Ｆ４００９を介して受信したクラウド機能をクラウド機能取得部４００３に渡す。
ステップＳ１４００７において、制御部４００７は、クラウド機能取得部４００３を呼び出し、取得したクラウドが提供する機能を一時記憶領域に記憶する。
【００３４】
本実施を適用することで、クラウドの処理工程をまとめて実行できるようになるため、サービスを提供する複合機能装置１００２から複合機能装置１００１へ中間データを送信する無駄が省け、ユーザの利便性が高まる。
【００３５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００３６】
以上、上述した各実施形態によれば、クラウド処理工程がまとめて実行できるようになる。したがって、中間データをクラウドから複合機能装置へ送信する処理の無駄を省く効果があがり、ユーザの利便性が高まる。
【００３７】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2014056488.tif 000003
【図２】
2014056488.tif 000004
【図３】
2014056488.tif 000005
【図４】
2014056488.tif 000006
【図５】
2014056488.tif 000007
【図６】
2014056488.tif 000008
【図７】
2014056488.tif 000009
【図８】
2014056488.tif 000010
【図９】
2014056488.tif 000011
【図１０】
2014056488.tif 000012
【図１１】
2014056488.tif 000013
【図１２】
2014056488.tif 000014
【図１３】
2014056488.tif 000015
【図１４】
2014056488.tif 000016