(57)【要約】【課題】クラウドシステムからの通信が制御されるネットワークに設置された処理装置における処理をクラウドシステムから実行することの可能な仕組みを提供すること。【解決手段】クラウドシステム１０５の記憶手段に画像処理サーバ１０１のアプリケーションで実行可能なジョブを生成する。画像処理サーバ１０１は、生成されたジョブをクラウドシステム１０５から一定時間ごとに取得し、当該ジョブに対応するアプリケーションを動作させる。そして画像処理サーバ１０１が、アプリケーションの動作に応じてクラウドシステム１０５の代わりに、処理装置に対して所定の処理の実行を指示する。【選択図】図１
2015156077.tif 000002
【特許請求の範囲】
【請求項１】
情報処理サーバで実行可能なジョブを記憶する記憶手段を備え、第１のネットワークを通じてサービスを提供するクラウドシステムと、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバとを含む情報処理システムであって、
前記クラウドシステムは、
前記情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成手段
を備え、
前記情報処理サーバは、
前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得手段と、
前記ジョブ取得手段で取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行手段と
を備えることを特徴とする情報処理システム。
【請求項２】
前記情報処理サーバは、
前記ジョブに対応する一連の処理が定義された定義ファイルを記憶する定義ファイル記憶手段を更に備え、
前記ジョブ実行手段は、前記ジョブ取得手段で取得したジョブに対応する定義ファイルであって、前記定義ファイル記憶手段に記憶された定義ファイルで定義された一連の処理を実行することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記ジョブ実行手段は、前記ジョブ取得手段で取得したジョブに対応する定義ファイルで定義された一連の処理を、当該処理に対応するアダプタを用いて実行することを特徴とする請求項２に記載の情報処理サーバ。
【請求項４】
前記情報処理サーバは、
前記ジョブ実行手段で実行されたジョブの実行状態を前記記憶手段に登録する実行状態登録手段を更に備え、
前記クラウドシステムは、
前記記憶手段に登録された前記ジョブの実行状態を用いて、当該ジョブの実行状態を通知する実行状態通知手段を更に備えることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理システム。
【請求項５】
前記ジョブ実行手段は、当該ジョブ実行手段で実行がされていないジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理システム。
【請求項６】
前記ジョブ取得手段は、所定時間ごとに前記記憶手段から前記ジョブを取得することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理システム。
【請求項７】
前記クラウドシステムは、
前記ジョブの実行指示を受付可能な画面を生成する画面生成手段を更に備え、
前記ジョブ生成手段は、前記画面生成手段で生成した画面において前記ジョブの実行指示を受け付けた場合に、前記情報処理サーバで実行可能なジョブを前記記憶手段に生成することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理システム。
【請求項８】
前記第２のネットワークは、当該第２のネットワークに備えられたファイアウォールによって前記クラウドシステムからの通信を制御することを特徴とする請求項１乃至７のいずれか１項に記載の情報処理システム。
【請求項９】
情報処理サーバで実行可能なジョブを記憶する記憶手段を備え、第１のネットワークを通じてサービスを提供するクラウドシステムと、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバとを含む情報処理システムの制御方法であって、
前記クラウドシステムのジョブ生成手段が、前記情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成ステップと、
前記情報処理サーバのジョブ取得手段が、前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得ステップと、
前記情報処理サーバのジョブ実行手段が、前記ジョブ取得ステップで取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行ステップと
を備えることを特徴とする情報処理システムの制御方法。
【請求項１０】
情報処理サーバで実行可能なジョブを記憶する記憶手段を備え、第１のネットワークを通じてサービスを提供するクラウドシステムと、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバとを含む情報処理システムの制御方法を実行可能なプログラムであって、
前記クラウドシステムを、
前記情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成手段
として機能させ、
前記情報処理サーバを、
前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得手段と、
前記ジョブ取得手段で取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行手段
として機能させることを特徴とするプログラム。
【請求項１１】
情報処理サーバで実行可能なジョブを記憶する記憶手段と、情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成手段とを備え、第１のネットワークを通じてサービスを提供するクラウドシステムと通信可能に接続され、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバであって、
前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得手段と、
前記ジョブ取得手段で取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行手段と
を備えることを特徴とする情報処理サーバ。
【請求項１２】
情報処理サーバで実行可能なジョブを記憶する記憶手段と、情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成手段とを備え、第１のネットワークを通じてサービスを提供するクラウドシステムと通信可能に接続され、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバの制御方法であって、
前記情報処理サーバのジョブ取得手段が、前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得ステップと、
前記情報処理サーバのジョブ実行手段が、前記ジョブ取得ステップで取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行ステップと
を備えることを特徴とする情報処理サーバの制御方法。
【請求項１３】
情報処理サーバで実行可能なジョブを記憶する記憶手段と、情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成手段とを備え、第１のネットワークを通じてサービスを提供するクラウドシステムと通信可能に接続され、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバの制御方法を実行可能なプログラムであって、
前記情報処理サーバを、
前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得手段と、
前記ジョブ取得手段で取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウドシステムからの通信が制御されるネットワークに設置された処理装置における処理をクラウドシステムから実行することの可能な情報処理システム、その制御方法、及びプログラム、並びに情報処理サーバ、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
インターネット回線の高速化やセキュリティ技術の向上により、インターネットを通じてコンピュータ資源（ハードウェア、ソフトウェア、処理性能、記憶領域等）をサービスとして提供する仕組み（以下、クラウドシステム）が利用されている。
【０００３】
クラウドシステムでは、クライアント端末からクラウドシステムに対して処理要求を行うと、クラウドシステムで当該処理を実行して処理結果を返すことができる。例えば、クラウドシステム内の記憶領域に対してデータの保存や取得を要求すると、当該要求に応じてデータの保存や取得を実行する。すなわち、クライアント端末からクラウドシステムに対する要求（以下、リクエスト）に応じてクラウドシステムで処理が実行される。
【０００４】
ところが、クラウドシステムが提供するサービスの多様化に伴って、社内ネットワーク（例えば、ＬＡＮ）上に設置された社内システムや複合機（以下、処理装置）に対してクラウドシステムが処理を依頼する（リクエストを送信する）必要性が出てきた。
【０００５】
一般的に社内ネットワークと社外ネットワーク（例えば、インターネット）との間にはファイアウォールが設置されている。前述した場合を実現するためには、このファイアウォールがクラウドシステムからのリクエストを許可するよう、設定しなければならない。より具体的にはクラウドシステムからのリクエストが通るよう、特定のポートを開放する。しかしながら、クラウドシステムからのリクエストを許可してしまうと、セキュリティが甘くなってしまう問題がある。
【０００６】
そこで下記の特許文献１では、外部システム（クラウドシステム）が、社内ネットワークに設置された画像形成装置（複合機）を動作させるための命令データを含む電子メールを当該画像形成装置に送信し、当該電子メールを受信した画像形成装置が当該電子メールに含まれる命令データに応じた処理を実行する仕組みが開示されている。すなわち、クラウドシステムが直接リクエストを送信する形態ではなく、既存のメール受信用のポートを利用する形態であるので、ファイアウォールの設定を変更することなく、クラウドシステムが社内ネットワーク上の装置に対して指示を出すことができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−７２７９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１の仕組みを採用するためには電子メールで処理を実行可能とするための大幅な改修が必要となってしまう。更に、クラウドシステムからリクエストを送信したい社内の処理装置が複数ある場合には、当該処理装置すべてに対して特許文献１の仕組みを採用しなければならず、現実的ではない。
【０００９】
前述した通り、クラウドシステムと社内の処理装置との間に設置されたファイアウォールをなくす、またはポートを開放する等の対応を行えば、クラウドシステムから社内の処理装置に対するリクエストが通るようになり、シームレスな連携を実現できるのだが、前述した通りセキュリティ上の問題からこの対応を行うことはできない。
【００１０】
よって、企業としてはクラウドシステムからのリクエストを社内の処理装置に送信することができず、クラウドシステムと社内の処理装置とのシームレスな連携の導入が進まないという課題があった。
【００１１】
そこで本発明は、クラウドシステムからの通信が制御されるネットワークに設置された処理装置における処理をクラウドシステムから実行することの可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記の目的を達成するために本発明の情報処理システムは、情報処理サーバで実行可能なジョブを記憶する記憶手段を備え、第１のネットワークを通じてサービスを提供するクラウドシステムと、当該クラウドシステムからの通信が制御される第２のネットワークに接続される処理装置と通信可能に接続される情報処理サーバとを含む情報処理システムであって、前記クラウドシステムは、前記情報処理サーバで実行可能なジョブを前記記憶手段に生成するジョブ生成手段を備え、前記情報処理サーバは、前記クラウドシステムで生成されたジョブを前記記憶手段から取得するジョブ取得手段と、前記ジョブ取得手段で取得したジョブに応じて、前記処理装置における所定の処理の実行を当該処理装置に対して指示するジョブ実行手段とを備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、クラウドシステムからの通信が制御されるネットワークに設置された処理装置における処理をクラウドシステムから実行することの可能な効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態における情報処理システムのシステム構成の一例を示す図である。
【図２】画像処理サーバ１０１、クライアント端末１０２、クラウドシステム１０５のハードウェア構成の一例を示す図である。
【図３】画像処理サーバ１０１、クライアント端末１０２、クラウドシステム１０５の機能構成の一例を示す図である。
【図４】画像処理サーバ１０１にアプリケーションをインストールするための一連の処理の流れ、及びクラウドシステム１０５に業務アプリケーションを生成するための一連の処理の流れの一例を示すフローチャートである。
【図５】アプリケーション管理ＤＢ登録画面５００の画面構成の一例を示す図である。
【図６】アプリケーション管理ＤＢ６００のテーブル構成の一例を示す図である。
【図７】業務アプリケーション開発画面７００の画面構成の一例を示す図である。
【図８】業務アプリケーション画面８００の画面構成の一例を示す図である。
【図９】業務アプリケーション画面８００を通じて社内システム１０３や複合機１０４に対する処理依頼を受け付ける一連の処理の流れの一例を示すフローチャートである。
【図１０】ジョブ管理ＤＢ１０００のテーブル構成の一例を示す図である。
【図１１】画像処理サーバ１０１がクラウドシステム１０５で生成されたジョブを取得し、社内システム１０３や複合機１０４に対して処理を依頼する一連の処理の流れの一例を示すフローチャートである。
【図１２】図１１に続き、画像処理サーバ１０１がクラウドシステム１０５で生成されたジョブを取得し、社内システム１０３や複合機１０４に対して処理を依頼する一連の処理の流れの一例を示すフローチャートである。
【図１３】パラメータＸＭＬ１３０３の生成する処理の概要を示す図である。
【図１４】通知画面１４００の画面構成の一例を示すフローチャートである。
【図１５】クラウドシステム１０５がパラメータＸＭＬ１３０３を生成する一連の処理の流れの一例を示す第２の実施形態におけるフローチャートである。
【図１６】第２の実施形態におけるジョブ管理ＤＢ１０００のテーブル構成の一例を示す図である。
【図１７】画像処理サーバ１０１がクラウドシステム１０５で生成されたジョブを取得し、社内システム１０３や複合機１０４に対して処理を依頼する一連の処理の流れの一例を示す第２の実施形態におけるフローチャートである。
【図１８】図１７に続き、画像処理サーバ１０１がクラウドシステム１０５で生成されたジョブを取得し、社内システム１０３や複合機１０４に対して処理を依頼する一連の処理の流れの一例を示す第２の実施形態におけるフローチャートである。
【発明を実施するための形態】
【００１５】
以下、図面を参照しながら、本発明の実施形態の一例について説明する。
【００１６】
図１は、本発明の情報処理システムのシステム構成の一例を示す図である。画像処理サーバ１０１（情報処理サーバ）と、クライアント端末１０２と、社内システム１０３と、複合機１０４とがＬＡＮ１０６（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク（第２のネットワーク）を介して、相互にデータ通信可能に接続されている。また、クラウドシステム１０５がインターネット１０８等のネットワーク（第１のネットワーク）に接続されている。更には、ＬＡＮ１０６とインターネット１０８とは、ファイアウォール１０７を介して接続されている。本発明においては、これらの各種装置やサーバを含めたものを情報処理システムと称する。尚、図１のネットワーク上に接続される各種端末あるいはサーバの構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００１７】
画像処理サーバ１０１は、クラウドシステム１０５における処理の実行指示を受けて、社内システム１０３や複合機１０４に対する処理の実行を指示するためのサーバである。クラウドシステム１０５と社内システム１０３との連携を仲介する機能、複合機１０４やプリンタなどの各種デバイスと連携する機能、帳票を生成する機能などを有している。本実施形態においては、画像処理サーバ１０１はサーバ装置として説明を行うが、パーソナルコンピュータのような情報処理装置であってもよい。
【００１８】
クライアント端末１０２は、ユーザからの指示を受け付けて、画像処理サーバ１０１やクラウドシステム１０５に対して処理の実行を指示するための情報処理装置である。画像処理サーバ１０１におけるアプリケーション開発、クラウドシステム１０５における業務アプリケーションの開発、クラウドシステム１０５における業務アプリケーションの利用（操作）をするための機能を提供する。
【００１９】
社内システム１０３は、ファイアウォール１０７の内側に設置されるオンプレミスのシステムである。例えば、ＥＲＰ（Ｅｎｔｅｒｐｒｉｓｅ  Ｒｅｓｏｕｒｃｅ  Ｐｌａｎｎｉｎｇ）に代表される基幹システムや、ＳＦＡ（Ｓａｌｅｓ  Ｆｏｒｃｅ  Ａｕｔｏｍａｔｉｏｎ）やＥＣＭ（Ｅｎｔｅｒｐｒｉｓｅ  Ｃｏｎｔｅｎｔｓ  Ｍａｎａｇｅｍｅｎｔ）などの情報系システムが含まれる。
【００２０】
複合機１０４は、プリンタやスキャナといったオフィスデバイスである。画像処理サーバ１０１で生成した帳票を印刷する機能や、紙のデータをスキャンして画像処理サーバ１０１や各種システムに格納するためのスキャナとしての機能を提供する。
【００２１】
本実施形態では、ファイアウォール１０７の内側に設置された社内システム１０３と複合機１０４に対してクラウドシステム１０５から処理を実行する形態について説明するが、ファイアウォール１０７の内側に設置された装置やシステム（処理装置）であれば、社内システム１０３や複合機１０４に限らない。クライアント端末１０２であってもよいし、その他のデバイスであってもよい。
【００２２】
クラウドシステム１０５は、インターネット１０８を通じてコンピュータ資源（ハードウェア、ソフトウェア、処理性能、記憶領域等）をサービスとして提供するシステムである。本実施形態におけるクラウドシステム１０５は、業務アプリケーションの開発が可能となっている。
【００２３】
また、本実施形態におけるクラウドシステム１０５は、１台のサーバから構成されてもよいし、複数台のサーバから構成されるサーバ群であってもよい。後者の場合、当該複数台のサーバを仮想化し、あたかも１台のコンピュータであるかのように起動するサーバが考えられる。そのようなサーバがクラウドコンピューティングを想定しているのであれば、サーバは自身のシステム内に仮想マシンを複数台生成することが考えられる。そして、そのようなサーバはその複数台の仮想マシンを利用し、並列で処理を行う。
【００２４】
ファイアウォール１０７は、ＬＡＮ１０６とインターネット１０８との間に設置されるファイアウォールである。ファイアウォール１０７は、インターネット１０８からオンプレミスに対する通信は、限定されたもの（例えば電子メールなど）のみを通過させるようにし、その他の通信は不正アクセスとみなして遮断する、といった機能を提供する。本実施形態においても、セキュリティ上の観点からクラウドシステム１０５からＬＡＮ１０６に接続された装置やシステムに対するリクエストが通らないよう、ファイアウォール１０７が通信を制御する。
【００２５】
図２は、本発明の実施形態における画像処理サーバ１０１、クライアント端末１０２、クラウドシステム１０５のハードウェア構成の一例を示す図である。
【００２６】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２７】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２８】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２９】
また、入力コントローラ（入力Ｃ）２０５は、キーボードやマウス等のポインティングデバイスといった入力デバイス２０９からの入力を制御する。
【００３０】
ビデオコントローラ（ＶＣ）２０６は、ディスプレイ２１０等の表示器への表示を制御する。表示器はＣＲＴや液晶ディスプレイでも構わない。
【００３１】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３２】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００３３】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３４】
本発明の各種装置及びサーバが後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００３５】
次に、画像処理サーバ１０１、クライアント端末１０２、クラウドシステム１０５のモジュール構成を示す機能構成図について、図３を用いて説明する。尚、図３の各種端末あるいはサーバの機能構成は一例であり、用途や目的に応じて様々な構成例がある。
【００３６】
画像処理サーバ１０１は、リクエスト処理部３１１、ジョブ取得部３１２、定義ファイル記憶部３１３、定義ファイル取得部３１４、ジョブ実行部３１５、アダプタ部３１６、実行状態登録部３１７、インターフェイスファイル生成部３１８を備える。
【００３７】
リクエスト処理部３１１は、クライアント端末１０２からのリクエストを処理するための機能部である。より具体的には、アプリケーションのインストール要求や後述するインターフェイスファイルの取得要求等のリクエストを処理する。
【００３８】
ジョブ取得部３１２は、クラウドシステム１０５で生成されたジョブを一定間隔でクラウドシステム１０５から取得するための機能部である。クラウドシステム１０５では、画像処理サーバ１０１のアプリケーションで実行可能なジョブをクラウドシステム１０５の外部メモリ２１１等に生成する。画像処理サーバ１０１は、この生成されたジョブを取得し、クラウドシステム１０５の代わりに社内システム１０３や複合機１０４に対して所定の処理の実行を指示する。こうすることで、クラウドシステム１０５が社内システム１０３や複合機１０４といった処理装置に対して直接リクエストを送信することなく、連携させることが可能となる。
【００３９】
定義ファイル記憶部３１３（定義ファイル記憶手段）は、ジョブに対応する一連の処理の流れを定義した定義ファイルを記憶する記憶部である。定義ファイルは、例えばＢＰＥＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｅｘｅｃｕｔｉｏｎ  Ｌａｎｇｕａｇｅ）によって記述されたファイルである。定義ファイルに一連の処理の流れを記載しておけば、ジョブの実行に伴って当該一連の処理が実行される。より具体的には、ジョブに含まれるパラメータと帳票データのテンプレートとを取得し、これらに基づいて帳票データを生成し、複合機１０４に印刷指示を出すという一連の処理の流れをＢＰＥＬを用いて定義ファイルに定義しておくと、定義した処理の流れに沿ってアプリケーションが処理を実行する。
【００４０】
定義ファイル取得部３１４は、ジョブ取得部３１２で取得したジョブに対応する定義ファイルを定義ファイル記憶部３１３から取得するための機能部である。
【００４１】
ジョブ実行部３１５は、定義ファイル取得部３１４で取得した定義ファイルが示す一連の処理の流れを実行するための機能部である。ジョブ実行部３１５が定義ファイルに基づいて処理を実行することで、画像処理サーバ１０１にインストールされたアプリケーションが社内システム１０３や複合機１０４に対して所定の処理の実行を指示することになる。
【００４２】
アダプタ部３１６は、定義ファイルが示す各処理を実行するためのアダプタ（モジュール）である。アダプタ部３１６は必要に応じて画像処理サーバ１０１に追加可能なものである。本実施形態では、クラウドシステム連携部３１６−１、社内システム連携部３１６−２、複合機連携部３１６−３を備える。
【００４３】
クラウドシステム連携部３１６−１は、クラウドシステム１０５と情報の送受信を行うためのアダプタである。社内システム連携部３１６−２は、社内システム１０３と情報の送受信を行うためのアダプタである。複合機連携部３１６−３は、複合機１０４と情報の送受信を行うためのアダプタである。これらの連携アダプタを用いることで、画像処理サーバ１０１と他のシステムや装置との連携を可能としている。本実施形態では以上のアダプタを用いるものとして説明を行うが、これ以外のアダプタを備えてもよい。例えば、帳票データを生成するためのアダプタやファイル形式を変換するアダプタ等である。
【００４４】
実行状態登録部３１７は、ジョブ実行部３１５で実行しているジョブの実行状態をクラウドシステム１０５に登録するための機能部である。実行状態は、例えば「未実行（ｒｅａｄｙ）」、「実行中（ｐｒｏｃｅｓｓｉｎｇ）」、「実行済（ｄｏｎｅ）」のようなステータスで管理をする。ジョブの実行状態を管理することで、ジョブを重複して実行しないようにしたり、ユーザに対してジョブの実行状態を通知したりすることが可能となる。
【００４５】
インターフェイスファイル生成部３１８は、画像処理サーバ１０１にインストールされたアプリケーションで実行可能なジョブをクラウドシステム１０５が生成するためのインターフェイスファイルを生成する機能部である。インターフェイスファイルについては、後述する。
【００４６】
クライアント端末１０２は、Ｗｅｂブラウザ部３２１を備える。Ｗｅｂブラウザ部３２１は、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等の言語で記述されたＷｅｂページを表示するためのＷｅｂブラウザである。クラウドシステム１０５で生成された画面を表示する機能を有する。
【００４７】
クラウドシステム１０５は、リクエスト処理部３５１、ジョブ登録部３５２、実行状態通知部３５３、画面生成部３５４、業務アプリケーション生成部３５５、ＤＢ記憶部３５６を備える。
【００４８】
リクエスト処理部３５１は、画像処理サーバ１０１やクライアント端末１０２からのリクエストを処理するための機能部である。より具体的には、業務アプリケーションの生成要求やジョブの実行要求等のリクエストを処理する。
【００４９】
ジョブ登録部３５２は、リクエスト処理部３５１を通じてクライアント端末１０２からのジョブの実行要求を受け付けると、画像処理サーバ１０１のアプリケーションで実行可能なジョブをＤＢ記憶部３５６に登録するための機能部である。こうして登録したジョブを画像処理サーバ１０１のジョブ取得部３１２が取得し、当該ジョブに対応する処理を実行することになる。
【００５０】
実行状態通知部３５３は、実行状態登録部３１７が登録したジョブの実行状態をユーザに通知するための機能部である。通知方法は特に問わない。
【００５１】
画面生成部３５４は、クライアント端末１０２のＷｅｂブラウザ部３２１で表示可能な画面を生成するための機能部である。業務アプリケーション生成部３５５は、クラウドシステム１０５で動作する業務アプリケーションを生成するための機能部である。業務アプリケーションとしては例えば見積書を作成するアプリケーションであったり、注文書のＦＡＸを送信するアプリケーションであったり、様々である。当該業務アプリケーションをユーザからの指示に応じて動作させることで、社内システム１０３や複合機１０４を動作させる。
【００５２】
ＤＢ記憶部３５６（記憶手段）は、後述するアプリケーション管理ＤＢ６００やジョブ管理ＤＢ１０００、その他業務アプリケーションで利用する業務アプリケーションＤＢ等のデータベースを記憶するための記憶部である。
【００５３】
次に、画像処理サーバ１０１にアプリケーションをインストールするための一連の処理の流れ、及びクラウドシステム１０５に業務アプリケーションを生成するための一連の処理について、図５に示すフローチャートを用いて説明する。
【００５４】
まずクラウドシステム１０５で指示された処理を社内システム１０３や複合機１０４で実行するための準備について説明する。
【００５５】
ステップＳ４０１では、クライアント端末１０２のＣＰＵ２０１は、ユーザからプログラミングの操作を受け付けて、画像処理サーバ１０１で実行可能なアプリケーションを開発する。ここで定義ファイルを生成し、どのような一連の処理を実行するのかを定義する。
【００５６】
ステップＳ４０２では、クライアント端末１０２のＣＰＵ２０１は、ステップＳ４０１で開発したアプリケーションのインストール要求を画像処理サーバ１０１に送信する。このとき、定義ファイルも合わせて送信する。
【００５７】
ステップＳ４０３では、画像処理サーバ１０１のＣＰＵ２０１は、クライアント端末１０２から送信されたアプリケーションのインストール要求を受信する。そして、ステップＳ４０４では、画像処理サーバ１０１のＣＰＵ２０１は、クライアント端末１０２で開発されたアプリケーションのインストールを実行する。この時、当該アプリケーションに対応する定義ファイルを当該アプリケーションと対応づけて定義ファイル記憶部３１３に記憶する。
【００５８】
ステップＳ４０５では、画像処理サーバ１０１のＣＰＵ２０１は、ステップＳ４０４でインストールしたアプリケーションに対応するインターフェイスファイルを生成する。インターフェイスファイルは、例えばＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）等のＷｅｂサービス記述言語によって記述されるファイルであり、インストールしたアプリケーション（Ｗｅｂサービス）で実行可能な機能や当該機能を実行するために用いられるメッセージのフォーマット、プロトコル等が記述されている。
【００５９】
ステップＳ４０６では、画像処理サーバ１０１のＣＰＵ２０１は、ステップＳ４０４でインストールされたアプリケーションの動作を開始する。これ以降、動作したアプリケーションにおける処理の実行が指示されると、当該アプリケーションに対応する定義ファイルを定義ファイル記憶部３１３から取得し、当該定義ファイルが示す一連の処理の流れを順次実行する。
【００６０】
ステップＳ４０７では、画像処理サーバ１０１のＣＰＵ２０１は、ステップＳ４０３で受け付けた要求に対する処理結果をクライアント端末１０２に送信する。
【００６１】
ステップＳ４０８では、クライアント端末１０２のＣＰＵ２０１は、画像処理サーバ１０１から送信された処理結果を受信する。必要に応じてその処理結果をユーザに通知する。
【００６２】
ステップＳ４０９では、クライアント端末１０２のＣＰＵ２０１は、ステップＳ４０５で生成されたインターフェイスファイルの取得要求を送信する。特に、ユーザから指定されたアプリケーションに対応するインターフェイスファイルの取得要求を送信する。
【００６３】
ステップＳ４１０では、画像処理サーバ１０１のＣＰＵ２０１は、クライアント端末１０２から送信されたインターフェイスファイルの取得要求を受信する。そして、ステップＳ４１１では、画像処理サーバ１０１のＣＰＵ２０１は、要求されたインターフェイスファイルを外部メモリ２１１等から取得し、クライアント端末１０２に送信する。
【００６４】
ステップＳ４１２では、クライアント端末１０２のＣＰＵ２０１は、画像処理サーバ１０１から送信されたインターフェイスファイルを受信する。インターフェイスファイルを取得したクライアント端末１０２は、ユーザからの指示に応じて図５に示すようなアプリケーション管理ＤＢ登録画面５００を表示させ、インターフェイスファイルに対応するアプリケーションのアプリケーション名の入力、当該アプリケーションを呼び出すためのエンドポイントの入力、当該インターフェイスファイルの選択をそれぞれ受け付ける。アプリケーション管理ＤＢ登録画面５００には、アプリケーション名入力欄５０１、エンドポイント入力欄５０２、インターフェイスファイル選択欄５０３を備えており、前述した各種情報の入力や選択はこれらの入力欄や選択欄を通じて行う。
【００６５】
そして、アプリケーション管理ＤＢ登録画面５００で登録ボタン５０４の押下を受け付けると、ステップＳ４１３では、クライアント端末１０２のＣＰＵ２０１は、インターフェイスファイル選択欄５０３で選択を受けつけたインターフェイスファイルを、アプリケーション名入力欄５０１やエンドポイント入力欄５０２で入力を受け付けた情報と共にクラウドシステム１０５に送信する。
【００６６】
ステップＳ４１４では、クラウドシステム１０５のＣＰＵ２０１は、クライアント端末１０２から送信されたインターフェイスファイル等を受信する。そして、ステップＳ４１５では、クラウドシステム１０５のＣＰＵ２０１は、受信したインターフェイスファイルを用いて当該インターフェイスファイルに対応するアプリケーションに渡すパラメータのスキーマを生成し、図６に示すようなアプリケーション管理ＤＢ６００に登録する。更にステップＳ４１４で受信したアプリケーション名やエンドポイントを示す情報も登録したスキーマに対応づけてアプリケーション管理ＤＢ６００に登録する。
【００６７】
アプリケーション管理ＤＢ６００は、クラウドシステム１０５のＤＢ記憶部３５６に記憶されており、アプリケーションＩＤ６０１、アプリケーション名６０２、エンドポイント６０３、スキーマ６０４から構成される。アプリケーションＩＤ６０１は、クラウドシステム１０５が受信したインターフェイスファイルが示すアプリケーションごとの識別情報である。アプリケーション名６０２は、当該アプリケーションの名称を示す。エンドポイント６０３は、アプリケーションの実行要求を受け付ける場所を示す。スキーマ６０４は、当該アプリケーションに対応するスキーマを格納する。本実施形態においてスキーマはＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）を用いるものとするが、画像処理サーバ１０１で動作するアプリケーションが解釈可能ならどのような形態でも構わない。
【００６８】
ステップＳ４１６では、クラウドシステム１０５のＣＰＵ２０１は、ステップＳ４１４で受信したインターフェイスファイルに基づく処理の実行結果をクライアント端末１０２に送信する。
【００６９】
ステップＳ４１７では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５から送信された処理結果を受信する。必要があればこの処理結果をユーザに通知する。
【００７０】
そして、クライアント端末１０２はクラウドシステムで動作させる業務アプリケーションを開発すべく、クライアント端末１０２のディスプレイ２１０に図７に示すような業務アプリケーション開発画面７００を表示させ、ユーザから画面の開発を受け付ける。業務アプリケーション開発画面７００では、画面を構成する入力欄やボタンといったコンポーネントをコンポーネント選択欄７０２から選択し、画面に配置していくことができる。コンポーネント選択欄７０２からドラッグ＆ドロップ等で配置していく。ボタンの処理は、当該ボタンの上で右クリックを受け付けると、ボタンが押下された場合の処理内容を記述することができる。
【００７１】
すなわち、このボタンにアプリケーション管理ＤＢ６００に登録されたアプリケーションで実行可能なジョブの生成処理（どのアプリケーションを起動するのか、起動する際にどういったパラメータを指定するのか、処理完了のステータスやメッセージを受けてどういった処理をするか等）を組み込んでおけば、クラウドシステム１０５でジョブが生成され、画像処理サーバ１０１がこのジョブを取得して対応する処理を実行することができる。
【００７２】
ステップＳ４１８では、クライアント端末１０２のＣＰＵ２０１は、開発した業務アプリケーションの生成指示をクラウドシステム１０５に対して送信する。ステップＳ４１９では、クラウドシステム１０５のＣＰＵ２０１は、クライアント端末１０２から送信された業務アプリケーションの生成指示を受信する。そして、ステップＳ４２０では、クラウドシステム１０５のＣＰＵ２０１は、生成指示を受信した業務アプリケーションを生成し、動作を開始する。業務アプリケーション開発画面７００で開発された結果の画面は、図８の業務アプリケーション画面８００に示すような画面となる。
【００７３】
ステップＳ４２１では、クラウドシステム１０５のＣＰＵ２０１は、業務アプリケーションの生成結果をクライアント端末１０２に送信する。ステップＳ４２２では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５から送信された処理結果を受信する。そして、必要があればユーザに対して当該処理結果を通知する。
【００７４】
次に、業務アプリケーション画面８００を通じて社内システム１０３や複合機１０４に対する処理依頼を受け付ける一連の処理について、図９に示すフローチャートを用いて説明する。
【００７５】
ステップＳ９０１では、クライアント端末１０２のＣＰＵ２０１は、ユーザからの指示によりクラウドシステム１０５の業務アプリケーションへのログイン要求を送信する。ステップＳ９０２では、クラウドシステム１０５のＣＰＵ２０１は、クライアント端末１０２からのログイン要求を受信する。そして、ステップＳ９０３では、クラウドシステム１０５のＣＰＵ２０１は、業務アプリケーションへのログインを実行する。この時、ログインしたユーザに応じて権限制御を行い、業務アプリケーションで利用可能な機能を制限してもよい。
【００７６】
ステップＳ９０４では、クラウドシステム１０５のＣＰＵ２０１は、ログインの処理結果をクライアント端末１０２に対して送信する。ステップＳ９０５では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５から送信された処理結果を受信する。
【００７７】
ステップＳ９０６では、クライアント端末１０２のＣＰＵ２０１は、業務アプリケーション画面８００の取得要求をクラウドシステム１０５に対して送信する。ステップＳ９０７では、クラウドシステム１０５のＣＰＵ２０１は、クライアント端末１０２から送信された業務アプリケーション画面８００の取得要求を受信する。そして、ステップＳ９０８では、クラウドシステム１０５のＣＰＵ２０１は、ジョブの実行指示を受付可能な業務アプリケーション画面８００を生成し（画面生成手段）、クライアント端末１０２に送信する。
【００７８】
ステップＳ９０９では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５から送信された業務アプリケーション画面８００を受信し、ステップＳ９１０では、受信した業務アプリケーション画面８００をディスプレイ２１０に表示する。そして、業務アプリケーション画面８００が備える各入力欄やボタンに対する操作を受け付ける。
【００７９】
ステップＳ９１１では、クライアント端末１０２のＣＰＵ２０１は、ジョブの実行指示を受け付けたか否かを判定する。例えば、業務アプリケーション画面８００の印刷ボタン８０１が押下されたか否かを判定する。ジョブの実行指示を受け付けたと判定した場合には、ステップＳ９１２に処理を進める。ジョブの実行指示を受け付けていないと判定した場合には、そのまま待機する。
【００８０】
ステップＳ９１２では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５に対してジョブの実行指示を送信する。この時、業務アプリケーション画面８００に入力された各種情報も合わせて送信する。そして、ステップＳ９１３では、クラウドシステム１０５のＣＰＵ２０１は、クライアント端末１０２から送信されたジョブの実行指示を受信する。
【００８１】
ステップＳ９１４では、クラウドシステム１０５のＣＰＵ２０１は、ＤＢ記憶部３５６に記憶された業務アプリケーションに対応する業務アプリケーションＤＢ（不図示）を、業務アプリケーション画面８００で入力された情報に基づいて更新する。すなわち、業務アプリケーションの機能としてデータ登録を実行する。
【００８２】
ステップＳ９１５では、クラウドシステム１０５のＣＰＵ２０１は、ＤＢ記憶部３５６に記憶された、図１０に示すようなジョブ管理ＤＢ１０００に画像処理サーバ１０１で実行可能なジョブを登録（生成）する（ジョブ生成手段）。
【００８３】
ジョブ管理ＤＢ１０００は、クラウドシステム１０５のＤＢ記憶部３５６に記憶され、ジョブＩＤ１００１、アプリケーションＩＤ１００２、ジョブパラメータ１００３、ジョブ作成者１００４、ジョブ作成日時１００５、ｓｔａｔｕｓ１００６、ジョブ結果通知１００７、ジョブ実行結果１００８、ジョブメッセージ１００９、ジョブ更新日時１０１０から構成される。
【００８４】
ジョブＩＤ１００１は、ジョブごとに一意に割り振られる識別情報である。アプリケーションＩＤ１００２は、当該ジョブを実行する画像処理サーバ１０１のアプリケーションを識別するための識別情報である。アプリケーションＩＤ１００２は、アプリケーション管理ＤＢ６００のアプリケーションＩＤ６０１と対応する。ジョブパラメータ１００３は、業務アプリケーション画面８００で入力された、ジョブを実行するために必要となる各種情報（パラメータ）である。ジョブ作成者１００４は、ジョブを作成したユーザを示す。ジョブ作成日時１００５は、ジョブを作成した年月日時分秒を示す。ｓｔａｔｕｓ１００６は、当該ジョブの実行状態を示す。ジョブ結果通知１００７は、ジョブの実行結果をどのユーザに通知するのかを示す。ジョブ実行結果１００８は、ジョブの実行結果を示す。ジョブメッセージ１００９は、ジョブの実行結果を通知するときのメッセージの内容を示す。ジョブ更新日時１０１０は、当該レコードが更新された年月日時分秒を示す。
【００８５】
ジョブの登録をする際には、ジョブ管理ＤＢ１０００に新しくレコードを作成し、各項目に情報を格納していく。ジョブＩＤ１００１は、新しくジョブの識別番号を割り振る。アプリケーションＩＤ１００２には、実行が指示されたジョブのアプリケーションＩＤ６０１を格納する。ジョブパラメータ１００３は前述した通り、業務アプリケーション画面８００で入力された各種情報を格納する。ジョブ作成者１００４にはステップＳ９０３でログインしたユーザのユーザ名を格納する。ジョブ作成日時１００５には、ジョブの登録が実行された年月日時分秒を格納する。ｓｔａｔｕｓ１００６には、「ｒｅａｄｙ」と格納する。すなわち、ジョブがまだ未実行である旨を示す情報を格納しておく。ジョブ結果通知１００７には、ジョブ作成者１００４と管理者を格納しておく。ジョブの結果を通知したいユーザがいれば当該ユーザも含めてもよい。その他の欄は、空欄にしておく。例えば、この段階でのジョブの登録状態は、図１０のジョブ管理ＤＢ１０００のうち、ジョブＩＤ１００１「４」のレコードが示すような状態となる。このようにして、クラウドシステム１０５において画像処理サーバ１０１のアプリケーションで実行可能なジョブを生成しておく。
【００８６】
ステップＳ９１６では、クラウドシステム１０５のＣＰＵ２０１は、ジョブの登録結果をクライアント端末１０２に送信する。ステップＳ９１７では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５から送信された処理結果を受信し、必要に応じてユーザに通知する。
【００８７】
次に、画像処理サーバ１０１がクラウドシステム１０５で生成されたジョブを取得し、社内システム１０３や複合機１０４に対して処理を依頼する一連の処理について、図１１及び図１２に示すフローチャートを用いて説明する。
【００８８】
ステップＳ１１０１では、画像処理サーバ１０１のＣＰＵ２０１は、前回ステップＳ１１０１を実行してから所定時間経過したか否かを判定する。すなわち、画像処理サーバ１０１は所定時間ごとにクラウドシステム１０５に対してジョブの取得を行うので、ステップＳ１１０１では所定時間経過したか否かを判定している。所定時間経過したと判定した場合には、ステップＳ１１０２に処理を進める。所定時間経過していないと判定した場合には、所定時間経過するまで待機する。
【００８９】
ステップＳ１１０２では、画像処理サーバ１０１のＣＰＵ２０１は、ジョブ管理ＤＢ１０００とアプリケーション管理ＤＢ６００の取得要求をクラウドシステム１０５に送信する。
【００９０】
ステップＳ１１０３では、クラウドシステム１０５のＣＰＵ２０１は、画像処理サーバ１０１から送信された、ジョブ管理ＤＢ１０００とアプリケーション管理ＤＢ６００の取得要求を受信する。そして、ステップＳ１１０４では、クラウドシステム１０５のＣＰＵ２０１は、クラウドシステム１０５のＤＢ記憶部３５６からジョブ管理ＤＢ１０００とアプリケーション管理ＤＢ６００とを取得し、これらを画像処理サーバ１０１に送信する。
【００９１】
ステップＳ１１０５では、画像処理サーバ１０１のＣＰＵ２０１は、クラウドシステム１０５から送信されたジョブ管理ＤＢ１０００とアプリケーション管理ＤＢ６００とを受信する。すなわち、クラウドシステムで生成されたジョブをクラウドシステム１０５から取得する（ジョブ取得手段）。尚、アプリケーション管理ＤＢ６００を画像処理サーバ１０１で管理する形態も考えられるが、クラウドシステム１０５で管理することですべてのデータベースをクラウドシステム１０５で統合的に管理することが可能となる。そのため本実施形態では、クラウドシステム１０５でアプリケーション管理ＤＢ６００を記憶している。
【００９２】
ステップＳ１１０６では、画像処理サーバ１０１のＣＰＵ２０１は、ジョブ管理ＤＢ１０００の各レコードのｓｔａｔｕｓ１００６を参照し、「ｒｅａｄｙ」となっているレコードがあるか否かを判定する。すなわち、未実行のジョブがあるか否かを判定する。未実行のジョブがあると判定した場合には、ステップＳ１１０７に処理を進める。未実行のジョブがないと判定した場合には、ステップＳ１１０１に処理を戻す。
【００９３】
ステップＳ１１０７では、画像処理サーバ１０１のＣＰＵ２０１は、ステップＳ１１０８からステップＳ１２１３までの処理を、未実行のジョブがなくなるまで（ｓｔａｔｕｓ１００６が「ｒｅａｄｙ」のレコードがなくなるまで）繰り返し実行する。
【００９４】
ステップＳ１１０８では、画像処理サーバ１０１のＣＰＵ２０１は、ジョブ管理ＤＢ１０００のレコードのうち、ステップＳ１１０８からステップＳ１２１３までの処理を未実行のレコードであって、ｓｔａｔｕｓ１００６が「ｒｅａｄｙ」のレコードを参照する。
【００９５】
ステップＳ１１０９では、画像処理サーバ１０１のＣＰＵ２０１は、参照中のレコードのｓｔａｔｕｓ１００６の更新要求をクラウドシステム１０５に対して送信する。すなわち、ジョブの実行状態を登録するようリクエストを送信する（実行状態登録手段）。ステップＳ１１１０では、クラウドシステム１０５のＣＰＵ２０１は、画像処理サーバ１０１から送信された、参照中のレコードのｓｔａｔｕｓ１００６の更新要求を受信する。そして、ステップＳ１１１１では、クラウドシステム１０５のＣＰＵ２０１は、参照中のレコードのｓｔａｔｕｓ１００６を「ｐｒｏｃｅｓｓｉｎｇ」に変更する（実行状態登録手段）。すなわち、ジョブが実行中である旨を示すように更新する。ステップＳ１１１１における更新例は、図１０のジョブＩＤ１００１が「３」のレコードである。
【００９６】
更新が完了したら、ステップＳ１１１２では、クラウドシステム１０５のＣＰＵ２０１は、ｓｔａｔｕｓ１００６の更新結果を画像処理サーバ１０１に送信する。ステップＳ１１１３では、画像処理サーバ１０１のＣＰＵ２０１は、クラウドシステム１０５から送信された処理結果を受信する。
【００９７】
説明を図１２に移す。ステップＳ１１１３の処理が完了した後、ステップＳ１２０１では、参照中のレコードが示すジョブのパラメータＸＭＬを生成する。パラメータＸＭＬは、参照中のレコードのジョブを実行するアプリケーションで読取可能なスキーマ６０４に、参照中のレコードのジョブパラメータ１００３を格納することで、生成されるＸＭＬファイルである。このパラメータＸＭＬを画像処理サーバ１０１のアプリケーションが読み取ることで、処理を実行する。すなわち、アプリケーションごとに読取可能なスキーマ６０４は異なるため、アプリケーションごとにアプリケーション管理ＤＢ６００でスキーマ６０４を記憶している。
【００９８】
パラメータＸＭＬの概要図を図１３に示す。例えば、１３０１に示すスキーマ６０４に、１３０２に示すジョブパラメータ１００３を流し込むと、１３０３に示すようなパラメータＸＭＬが生成される。
【００９９】
ステップＳ１２０２では、画像処理サーバ１０１のＣＰＵ２０１は、参照中のレコードが示すジョブに対応するアプリケーションを実行する（ジョブ実行手段）。この時、定義ファイル記憶部３１３に記憶された、当該アプリケーションに対応する定義ファイルを取得し、当該定義ファイルで定義された一連の処理を、当該処理に対応するアダプタ部３１６のアダプタを用いて実行する。また、実行するアプリケーションは、参照中のレコードが示すジョブのアプリケーションＩＤ１００２と対応するアプリケーションＩＤ６０１を有するアプリケーション管理ＤＢ６００のレコードのエンドポイント６０３から特定する。
【０１００】
この一連の処理のうち、社内システム１０３や複合機１０４といった処理装置における処理が定義されている場合には、ステップＳ１２０３では、画像処理サーバ１０１のＣＰＵ２０１は、所定の処理の実行を当該処理装置に対して指示する。ステップＳ１２０４では、社内システム１０３または複合機１０４が画像処理サーバ１０１からの指示に応じて動作し、ステップＳ１２０５ではその処理結果を画像処理サーバ１０１に送信する。そして、ステップＳ１２０６では、画像処理サーバ１０１のＣＰＵ２０１は、社内システム１０３や複合機１０４といった処理装置からの処理結果を受信する。
【０１０１】
定義ファイルで定義された一連の処理の実行が完了したら、ステップＳ１２０７では、画像処理サーバ１０１のＣＰＵ２０１は、参照中のレコードのｓｔａｔｕｓ１００６を更新するべく、ジョブ管理ＤＢ１０００の更新要求をクラウドシステム１０５に送信する。
【０１０２】
ステップＳ１２０８では、クラウドシステム１０５のＣＰＵ２０１は、画像処理サーバ１０１から送信されたジョブ管理ＤＢ１０００の更新要求を受信する。そして、ステップＳ１２０９では、クラウドシステム１０５のＣＰＵ２０１は、参照中のレコードのｓｔａｔｕｓ１００６を「ｄｏｎｅ」に更新する（実行状態登録手段）。すなわち、ジョブが実行済みである旨に更新する。
【０１０３】
ステップＳ１２１０では、クラウドシステム１０５のＣＰＵ２０１は、更に、参照中のレコードのジョブ実行結果１００８にジョブの実行結果を格納する。一連の処理が成功した場合には「ｓｕｃｃｅｓｓ」、失敗した場合には「ｆａｉｌｕｒｅ」と登録する。それに伴って、ジョブメッセージ１００９にユーザに対して通知するメッセージも登録する。一連の処理が成功した場合の登録例は、図１０のジョブＩＤ１００１が「２」のレコード、失敗した場合の登録例は、図１０のジョブＩＤ１００１が「１」のレコードである。
【０１０４】
ステップＳ１２１１では、クラウドシステム１０５のＣＰＵ２０１は、ジョブの実行状態や実行結果を通知するようクライアント端末１０２に要求を送信する。この時、クラウドシステム１０５からクライアント端末１０２に対するリクエストは通らないので、ジョブ管理ＤＢ１０００を用いて図１４に示すような通知画面１４００を生成し、クライアント端末１０２に送信する。そして、ステップＳ１２１２では、クライアント端末１０２のＣＰＵ２０１は、クラウドシステム１０５から送信された通知画面１４００を受信し、ステップＳ１２１３では、受信した通知画面１４００をディスプレイ２１０に表示することで、ユーザに対してジョブの実行状態や実行結果を通知する。
【０１０５】
以上のように、クラウドシステム１０５が直接処理装置に対してリクエストを送信するのではなく、クラウドシステム１０５で生成されたジョブを画像処理サーバ１０１が取得し、画像処理サーバ１０１がクラウドシステム１０５の代わりに処理装置にリクエストを送信する形態とすることで、セキュリティを確保したまま、クラウドシステムと処理装置とのシームレスな連携を実現できる。
【０１０６】
次に、第２の実施形態について説明を行う。前述した実施形態では、画像処理サーバ１０１がアプリケーション管理ＤＢ６００とジョブ管理ＤＢ１０００をクラウドシステム１０５から取得し、アプリケーション管理ＤＢ６００のスキーマ６０４とジョブ管理ＤＢ１０００のジョブパラメータ１００３を用いて、画像処理サーバ１０１がパラメータＸＭＬを生成していた。前述した通り、各種ＤＢをクラウドシステム１０５で統合的に管理することで、ユーザの管理の手間を軽減しているのだが、画像処理サーバ１０１がアプリケーション管理ＤＢ６００を取得しなければならない負荷が生じる。そこで、第２の実施形態では、パラメータＸＭＬをクラウドシステム１０５が生成する形態について説明する。
【０１０７】
第２の実施形態におけるシステム構成、ハードウェア構成、機能構成は前述した実施形態と同様であるので説明を省略する。また、図４に示すフローチャートとそれに伴う画面やアプリケーション管理ＤＢ６００も同様であるので、説明を省略する。
【０１０８】
まず、業務アプリケーション画面８００を通じて社内システム１０３や複合機１０４に対する処理依頼を受け付ける一連の処理について、図１５に示すフローチャートを用いて説明する。図１５のフローチャートは、前述した実施形態における図９のフローチャートの変形例である。そのため、図９と同様の処理を行うステップについては、図９と同じステップ番号を振ってある。当該ステップについては同様の処理であるので、説明は省略する。
【０１０９】
ステップＳ１５０１では、クラウドシステム１０５のＣＰＵ２０１は、ジョブを実行するアプリケーションのスキーマをアプリケーション管理ＤＢ６００のスキーマ６０４から取得し、当該スキーマ６０４に業務アプリケーション画面８００で入力された各種情報を流し込むことで、パラメータＸＭＬを生成する。そして、ステップＳ１５０２では、クラウドシステム１０５のＣＰＵ２０１は、前述したステップＳ９１５と同様にジョブ管理ＤＢ１０００にジョブを登録すると共に、ステップＳ１５０１で生成したパラメータＸＭＬを、図１６に示すジョブ管理ＤＢ１０００のパラメータＸＭＬ１６０１に格納する。第２の実施形態では、ジョブ管理ＤＢ１０００はジョブパラメータ１００３の代わりにパラメータＸＭＬ１６０１とエンドポイント１６０２を備えている。パラメータＸＭＬ１６０１は、ステップＳ１５０１で生成したパラメータＸＭＬを格納する。エンドポイント１６０２は、アプリケーション管理ＤＢ６００のエンドポイント６０３に格納されたエンドポイントを示す。このように、アプリケーション管理ＤＢ６００が示す情報であって、画像処理サーバ１０１でジョブを実行する際に必要な情報をジョブ管理ＤＢ１０００に埋め込んでおく。
【０１１０】
次に、画像処理サーバ１０１がクラウドシステム１０５で生成されたジョブを取得し、社内システム１０３や複合機１０４に対して処理を依頼する一連の処理について、図１７及び図１８に示すフローチャートを用いて説明する。図１７、図１８のフローチャートは、前述した実施形態における図１１、図１２のフローチャートの変形例である。そのため、図１１、図１２と同様の処理を行うステップについては、図１１、図１２と同じステップ番号を振ってある。当該ステップについては同様の処理であるので、説明は省略する。
【０１１１】
ステップＳ１７０１では、画像処理サーバ１０１のＣＰＵ２０１は、図１６に示すジョブ管理ＤＢ１０００の取得要求をクラウドシステム１０５に送信する。
【０１１２】
ステップＳ１７０２では、クラウドシステム１０５のＣＰＵ２０１は、画像処理サーバ１０１から送信された、図１６に示すジョブ管理ＤＢ１０００の取得要求を受信する。そして、ステップＳ１７０３では、クラウドシステム１０５のＣＰＵ２０１は、クラウドシステム１０５のＤＢ記憶部３５６から図１６に示すジョブ管理ＤＢ１０００を取得し、これらを画像処理サーバ１０１に送信する。
【０１１３】
ステップＳ１７０４では、画像処理サーバ１０１のＣＰＵ２０１は、クラウドシステム１０５から送信された図１６に示すジョブ管理ＤＢ１０００を受信する。このように、前述した実施形態とは異なり、アプリケーション管理ＤＢ６００は取得しない。
【０１１４】
図１８に説明を移す。ステップＳ１８０１では、参照中のジョブのパラメータＸＭＬを図１６に示すジョブ管理ＤＢ１０００から取得する。より具体的には、参照中のジョブのレコードにあるパラメータＸＭＬ１６０１に格納されているパラメータＸＭＬを取得する。そして、後述する処理でエンドポイント１６０２が示すアプリケーションに対して取得したパラメータＸＭＬを用いてアプリケーションの実行を行う。
【０１１５】
このような構成とすることで、パラメータＸＭＬをクラウドシステム１０５で生成し、生成したパラメータＸＭＬをアプリケーションの実行に用いることができる。
【０１１６】
以上説明したように、本実施形態によれば、クラウドシステムからの通信が制御されるネットワークに設置された処理装置における処理をクラウドシステムから実行することの可能な効果を奏する。
【０１１７】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１１８】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１１９】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１２０】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１２１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１２２】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１２３】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１２４】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１２５】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１２６】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１２７】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１２８】
１０１  画像処理サーバ
１０２  クライアント端末
１０３  社内システム
１０４  複合機
１０５  クラウドシステム
１０６  ＬＡＮ
１０７  ファイアウォール
１０８  インターネット
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  入力デバイス
２１０  ディスプレイ
２１１  外部メモリ
【図１】
2015156077.tif 000003
【図２】
2015156077.tif 000004
【図３】
2015156077.tif 000005
【図４】
2015156077.tif 000006
【図５】
2015156077.tif 000007
【図６】
2015156077.tif 000008
【図７】
2015156077.tif 000009
【図８】
2015156077.tif 000010
【図９】
2015156077.tif 000011
【図１０】
2015156077.tif 000012
【図１１】
2015156077.tif 000013
【図１２】
2015156077.tif 000014
【図１３】
2015156077.tif 000015
【図１４】
2015156077.tif 000016
【図１５】
2015156077.tif 000017
【図１６】
2015156077.tif 000018
【図１７】
2015156077.tif 000019
【図１８】
2015156077.tif 000020