(57)【要約】【課題】連携する外部サービスから、依存先の入力項目に関連付けられた依存元の入力項目の候補を取得することにより容易に当該依存元の入力項目を指定することができる情報処理システム、情報処理装置、情報処理方法およびプログラムを提供する。【解決手段】処理フロー情報と設定情報とを関連付けたアプリケーションを記憶するアプリ記憶手段と、利用画面記憶手段と、要求される利用画面が定義された利用画面情報と、入力項目間の依存関係の設定および入力項目の参照設定を含む設定情報と、を送信する第１の送信手段と、第１の入力項目に入力された第１の項目内容を含み、第１の入力項目を依存先として設定された第２の入力項目の候補を取得する取得要求を受信する第２の受信手段と、候補のリスト情報を取得する取得手段と、第２の入力項目の候補としてリスト情報に含まれる候補から選択可能となるように送信する第２の送信手段と、を有する。【選択図】図１９
2020102175.tif 000002
【特許請求の範囲】
【請求項１】
所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、
１以上の前記プログラムの実行順を規定する処理フロー情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータを設定するための設定情報と、を関連付けた一連の処理を実行するアプリケーションを記憶するアプリ記憶手段と、
前記アプリケーションを利用するための利用画面が定義された利用画面情報を記憶する利用画面記憶手段と、
電子機器から、前記利用画面の表示要求を受信する第１の受信手段と、
前記第１の受信手段により受信された前記表示要求により要求される前記利用画面が定義された前記利用画面情報と、該利用画面情報に対応する前記アプリケーションの前記設定情報であって、該利用画面での入力項目間の依存関係の設定および前記入力項目の外部サービスへの参照設定を含む前記設定情報と、を前記電子機器に送信する第１の送信手段と、
前記第１の送信手段により送信された前記利用画面情報に基づく前記利用画面の前記入力項目のうち第１の入力項目に入力された第１の項目内容を含み、前記第１の入力項目を依存先として設定された依存元の第２の入力項目の候補を取得するための第１の取得要求を、前記電子機器から受信する第２の受信手段と、
外部サービスから、前記第１の取得要求に含まれる前記第１の項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得する取得手段と、
前記取得手段により取得された前記リスト情報を、前記電子機器に表示された前記利用画面の前記第２の入力項目の候補として該リスト情報に含まれる候補から選択可能となるように、該電子機器に送信する第２の送信手段と、
を有する情報処理システム。
【請求項２】
前記第２の受信手段は、前記第１の送信手段により送信された前記設定情報において前記第２の入力項目が他の入力項目から依存先の設定がされていない場合、前記第２の入力項目に入力された第２の項目内容が示す電子データを取得するための第２の取得要求を、前記電子機器から受信し、
前記取得手段は、外部サービスから、前記第２の取得要求が要求する前記電子データを取得し、
前記第２の送信手段は、前記取得手段により取得された前記電子データを、前記電子機器に送信する請求項１に記載の情報処理システム。
【請求項３】
前記処理フロー情報に規定された前記プログラムの実行順に従って、前記取得手段により取得された前記電子データに対する一連の処理を実行する実行手段を、さらに有する請求項２に記載の情報処理システム。
【請求項４】
前記第２の受信手段は、前記第２の送信手段によって、前記第２の入力項目の前記リスト情報が前記電子機器に送信された後に、前記第１の入力項目に前記第１の項目内容とは変更された項目内容が入力された場合、該変更された項目内容を含む前記第１の取得要求を前記電子機器から受信し、
前記取得手段は、外部サービスから、前記第１の取得要求に含まれる前記変更された項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得し、
前記第２の送信手段は、前記取得手段により取得された前記リスト情報を前記電子機器へ送信する請求項１〜３のいずれか一項に記載の情報処理システム。
【請求項５】
情報処理装置において設定された前記プログラムの実行順を含む前記処理フロー情報、ならびに、前記情報処理装置において設定された前記利用画面での入力項目間の依存関係および前記入力項目の外部サービスへの参照を含む前記設定情報を、前記アプリ記憶手段に登録する登録手段を、さらに有する請求項１〜４のいずれか一項に記載の情報処理システム。
【請求項６】
前記設定情報は、前記第２の入力項目の依存先として、前記第１の入力項目および第３の入力項目を設定し、
前記第２の受信手段は、前記第１の入力項目に入力された前記第１の項目内容、および前記第３の入力項目に入力された第３の項目内容を含み、前記第１の入力項目および前記第３の入力項目を依存先として設定された依存元の前記第２の入力項目の候補を取得するための前記第１の取得要求を、前記電子機器から受信し、
前記取得手段は、外部サービスから、前記第１の項目内容および前記第３の項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得する請求項１〜５のいずれか一項に記載の情報処理システム。
【請求項７】
所定の処理をそれぞれ実行する複数のプログラムを有する情報処理装置であって、
１以上の前記プログラムの実行順を規定する処理フロー情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータを設定するための設定情報と、を関連付けた一連の処理を実行するアプリケーションを記憶するアプリ記憶手段と、
前記アプリケーションを利用するための利用画面が定義された利用画面情報を記憶する利用画面記憶手段と、
電子機器から、前記利用画面の表示要求を受信する第１の受信手段と、
前記第１の受信手段により受信された前記表示要求により要求される前記利用画面が定義された前記利用画面情報と、該利用画面情報に対応する前記アプリケーションの前記設定情報であって、該利用画面での入力項目間の依存関係の設定および前記入力項目の外部サービスへの参照設定を含む前記設定情報と、を前記電子機器に送信する第１の送信手段と、
前記第１の送信手段により送信された前記利用画面情報に基づく前記利用画面の前記入力項目のうち第１の入力項目に入力された第１の項目内容を含み、前記第１の入力項目を依存先として設定された依存元の第２の入力項目の候補を取得するための第１の取得要求を、前記電子機器から受信する第２の受信手段と、
外部サービスから、前記第１の取得要求に含まれる前記第１の項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得する取得手段と、
前記取得手段により取得された前記リスト情報を、前記電子機器に表示された前記利用画面の前記第２の入力項目の候補として該リスト情報に含まれる候補から選択可能となるように、該電子機器に送信する第２の送信手段と、
を有する情報処理装置。
【請求項８】
所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、１以上の前記プログラムの実行順を規定する処理フロー情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータを設定するための設定情報と、を関連付けた一連の処理を実行するアプリケーションを記憶するアプリ記憶手段と、前記アプリケーションを利用するための利用画面が定義された利用画面情報を記憶する利用画面記憶手段と、を有する情報処理システムの情報処理方法であって、
電子機器から、前記利用画面の表示要求を受信する第１の受信ステップと、
受信した前記表示要求により要求される前記利用画面が定義された前記利用画面情報と、該利用画面情報に対応する前記アプリケーションの前記設定情報であって、該利用画面での入力項目間の依存関係の設定および前記入力項目の外部サービスへの参照設定を含む前記設定情報と、を前記電子機器に送信する第１の送信ステップと、
送信した前記利用画面情報に基づく前記利用画面の前記入力項目のうち第１の入力項目に入力された第１の項目内容を含み、前記第１の入力項目を依存先として設定された依存元の第２の入力項目の候補を取得するための第１の取得要求を、前記電子機器から受信する第２の受信ステップと、
外部サービスから、前記第１の取得要求に含まれる前記第１の項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得する取得ステップと、
取得した前記リスト情報を、前記電子機器に表示された前記利用画面の前記第２の入力項目の候補として該リスト情報に含まれる候補から選択可能となるように、該電子機器に送信する第２の送信ステップと、
を有する情報処理方法。
【請求項９】
所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、１以上の前記プログラムの実行順を規定する処理フロー情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータを設定するための設定情報と、を関連付けた一連の処理を実行するアプリケーションを記憶するアプリ記憶手段と、前記アプリケーションを利用するための利用画面が定義された利用画面情報を記憶する利用画面記憶手段と、を有する情報処理システムに含まれるコンピュータに、
電子機器から、前記利用画面の表示要求を受信する第１の受信ステップと、
受信した前記表示要求により要求される前記利用画面が定義された前記利用画面情報と、該利用画面情報に対応する前記アプリケーションの前記設定情報であって、該利用画面での入力項目間の依存関係の設定および前記入力項目の外部サービスへの参照設定を含む前記設定情報と、を前記電子機器に送信する第１の送信ステップと、
送信した前記利用画面情報に基づく前記利用画面の前記入力項目のうち第１の入力項目に入力された第１の項目内容を含み、前記第１の入力項目を依存先として設定された依存元の第２の入力項目の候補を取得するための第１の取得要求を、前記電子機器から受信する第２の受信ステップと、
外部サービスから、前記第１の取得要求に含まれる前記第１の項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得する取得ステップと、
取得した前記リスト情報を、前記電子機器に表示された前記利用画面の前記第２の入力項目の候補として該リスト情報に含まれる候補から選択可能となるように、該電子機器に送信する第２の送信ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
近年、複数の機能（例えば、スキャン、プリント、およびメール配信等）を組み合わせた機能を提供するサービス等が知られるようになった。例えば、スキャンにより生成された電子ファイル（画像ファイル）に所定の処理を行った上で、メール配信するサービス等がある。また、例えば、ユーザにより選択されたドキュメントを外部から取得する処理を行った上で、プリントするサービス等もある。このようなサービスは、各機能を実現する１以上の処理が一連の処理として実行されることにより実現される。
【０００３】
このような、プリントする外部のドキュメントを取得するための選択操作に関連して、項目を選択する複数の入力欄がある場合に、特定の入力欄で選択された項目に関連する項目をリストとして他の入力欄でプルダウン表示させる技術が開示されている（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された技術では、当該技術に係るアプリケーションの作成（開発）時に、特定の入力欄で選択された項目に関連する項目のリストを予め設定しておかなければならないという問題がある。さらに、それによって、アプリケーションの作成（開発）時に、各入力欄に入力される項目間の依存関係の設定、および、各入力欄と外部サービスとの連携の設定を行うことができないという問題もある。
【０００５】
本発明は、上記に鑑みてなされたものであって、連携する外部サービスから、依存先の入力項目に関連付けられた依存元の入力項目の候補を取得することにより容易に当該依存元の入力項目を指定することができる情報処理システム、情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、１以上の前記プログラムの実行順を規定する処理フロー情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータを設定するための設定情報と、を関連付けた一連の処理を実行するアプリケーションを記憶するアプリ記憶手段と、前記アプリケーションを利用するための利用画面が定義された利用画面情報を記憶する利用画面記憶手段と、電子機器から、前記利用画面の表示要求を受信する第１の受信手段と、前記第１の受信手段により受信された前記表示要求により要求される前記利用画面が定義された前記利用画面情報と、該利用画面情報に対応する前記アプリケーションの前記設定情報であって、該利用画面での入力項目間の依存関係の設定および前記入力項目の外部サービスへの参照設定を含む前記設定情報と、を前記電子機器に送信する第１の送信手段と、前記第１の送信手段により送信された前記利用画面情報に基づく前記利用画面の前記入力項目のうち第１の入力項目に入力された第１の項目内容を含み、前記第１の入力項目を依存先として設定された依存元の第２の入力項目の候補を取得するための第１の取得要求を、前記電子機器から受信する第２の受信手段と、外部サービスから、前記第１の取得要求に含まれる前記第１の項目内容に関連付けられた前記第２の入力項目の候補のリスト情報を取得する取得手段と、前記取得手段により取得された前記リスト情報を、前記電子機器に表示された前記利用画面の前記第２の入力項目の候補として該リスト情報に含まれる候補から選択可能となるように、該電子機器に送信する第２の送信手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、各入力項目の間で依存関係の設定、および、各入力項目と外部サービスとの連携の設定を実現することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態に係る情報処理システムのシステム構成の一例を示す図である。
【図２】図２は、第１の実施形態に係るサービス提供システムおよびＰＣ端末のハードウェア構成の一例を示す図である。
【図３】図３は、第１の実施形態に係る機器のハードウェア構成の一例を示す図である。
【図４】図４は、第１の実施形態に係る情報処理システムの機能構成の一例を示す図である。
【図５】図５は、第１の実施形態に係るロジック処理部の機能構成の一例を示す図である。
【図６】図６は、型変換情報テーブルの一例を示す図である。
【図７】図７は、処理フロー情報の一例を示す図である。
【図８】図８は、アプリケーションの登録処理の一例を示すシーケンス図である。
【図９】図９は、ポータルトップ画面の一例を示す図である。
【図１０】図１０は、アプリケーション登録画面（１／５）を示す図である。
【図１１】図１１は、アプリケーション登録画面（２／５）を示す図である。
【図１２】図１２は、アプリケーション登録画面（３／５）を示す図である。
【図１３】図１３は、アプリケーション登録画面（４／５）を示す図である。
【図１４】図１４は、アプリケーション登録画面（５／５）を示す図である。
【図１５】図１５は、アプリ設定情報の一例を示す図である。
【図１６】図１６は、スキャン翻訳サービスを利用する場合の全体処理の一例を示すシーケンス図である。
【図１７】図１７は、スキャン翻訳アプリケーションのアプリ画面の一例を示す図である。
【図１８】図１８は、スキャン翻訳サービスを実現する処理フローの実行処理の一例を示すシーケンス図である。
【図１９】図１９は、第２の実施形態に係る情報処理システムの機能構成の一例を示す図である。
【図２０】図２０は、処理フローの登録処理の一例を示すシーケンス図である。
【図２１】図２１は、処理フロー登録画面の一例を示す図である。
【図２２】図２２は、処理フロー基本設定画面の一例を示す図である。
【図２３】図２３は、処理フロー詳細設定画面の一例を示す図である。
【図２４】図２４は、処理フロー設定画面の一例を示す図である。
【図２５】図２５は、コンポーネントが設定された処理フロー詳細設定画面の一例を示す図である。
【図２６】図２６は、パラメータ設定画面の一例を示す図である。
【図２７】図２７は、パラメータ設定がされた処理フロー詳細設定画面の一例を示す図である。
【図２８】図２８は、外部データソース設定画面の一例を示す図である。
【図２９】図２９は、参照設定がされた外部データソース設定画面の一例を示す図である。
【図３０】図３０は、パラメータ参照設定画面の一例を示す図である。
【図３１】図３１は、参照設定がされた外部データソース設定画面の一例を示す図である。
【図３２】図３２は、パラメータ参照設定画面の一例を示す図である。
【図３３】図３３は、取得ドキュメント印刷サービスを利用する場合の全体処理の一例を示す図である。
【図３４】図３４は、取得ドキュメント印刷アプリケーションのアプリ画面の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下に、図面を参照しながら、本発明に係る情報処理システム、情報処理装置、情報処理方法およびプログラムの実施形態を詳細に説明する。また、以下の実施形態によって本発明が限定されるものではなく、以下の実施形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
【００１０】
［第１の実施形態］
（情報処理システムの構成）
図１は、第１の実施形態に係る情報処理システムのシステム構成の一例を示す図である。図１を参照しながら、本実施形態に係る情報処理システム１のシステム構成について説明する。
【００１１】
図１に示す情報処理システム１は、サービス提供システム１０と、機器２０と、ＰＣ端末３０とを含み、インターネット等の広域的なネットワークＮ１を介して通信可能に接続されている。
【００１２】
サービス提供システム１０は、一台以上の情報処理装置で実現され、ネットワークＮ１を介して、種々の機能をそれぞれ実現する複数の処理のうちの１以上の処理を組み合わせた一連の処理により実現される各種のサービスを提供する。
【００１３】
ここで、機能とは、文書ファイルおよび画像ファイル等の電子ファイルに関する機能である。機能には、例えば、プリント、スキャン、ファクシミリ送信、データ形式の変換、メール配信、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）処理、加工、圧縮・解凍、リポジトリへの格納等が挙げられる。
【００１４】
本実施形態に係るサービス提供システム１０が提供するサービスの具体例については後述する。なお、以降では、一連の処理を「処理フロー」とも表す。
【００１５】
機器２０は、ユーザが使用する各種の電子機器である。すなわち、機器２０は、例えば、ＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等の画像形成装置、ＰＪ（Ｐｒｏｊｅｃｔｏｒ：プロジェクタ）、ＩＷＢ（Ｉｎｔｅｒａｃｔｉｖｅ  Ｗｈｉｔｅ  Ｂｏａｒｄ：相互通信が可能な電子式の黒板機能を有する白板）、デジタルサイネージ等の出力装置、ＨＵＤ（Ｈｅａｄ  Ｕｐ  Ｄｉｓｐｌａｙ）装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、ノートＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、携帯電話、スマートフォン、タブレット端末、ゲーム機、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルカメラ、ウェアラブルＰＣまたはデスクトップＰＣ等である。ユーザは、機器２０を用いて、サービス提供システム１０が提供する各種のサービスを利用することができる。
【００１６】
なお、以降では、複数の機器２０について、各々を区別するときは、「機器２０＿１」、「機器２０＿２」等と添え字を用いて記載する。
【００１７】
ＰＣ端末３０は、例えば、ノートＰＣ、携帯電話、スマートフォン、タブレット端末、ＰＤＡ、ウェアラブルＰＣまたはデスクトップＰＣ等である。ユーザは、ＰＣ端末３０を用いて、サービス提供システム１０が提供する各種のサービスを利用することができる。
【００１８】
なお、以降では、複数のＰＣ端末３０について、各々を区別するときは、「ＰＣ端末３０＿１」、「ＰＣ端末３０＿２」等と添え字を用いて記載する。
【００１９】
また、図１に示す情報処理システム１の構成は一例であって、他の構成であってもよい。例えば、本実施形態に係る情報処理システム１には、電子データの入力および出力の少なくとも一方を行う各種機器が含まれ、これらの機器がサービス提供システム１０により提供される各種サービスを利用してもよい。
【００２０】
（サービス提供システムおよびＰＣ端末のハードウェア構成）
図２は、第１の実施形態に係るサービス提供システムおよびＰＣ端末のハードウェア構成の一例を示す図である。図２を参照しながら、本実施形態に係る情報処理システム１に含まれるサービス提供システム１０およびＰＣ端末３０のハードウェア構成について説明する。なお、サービス提供システム１０およびＰＣ端末３０は、同様のハードウェア構成を有しているため、以降では、主に、サービス提供システム１０のハードウェア構成について説明する。
【００２１】
図２に示すサービス提供システム１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３と、補助記憶装置１４と、入力装置１５と、表示装置１６と、外部Ｉ／Ｆ１７と、通信Ｉ／Ｆ１８と、を有する。これらの各ハードウェアは、それぞれがバスＢで接続されている。
【００２２】
ＣＰＵ１１は、ＲＯＭ１３または補助記憶装置１４等の記憶装置からプログラムおよびデータをＲＡＭ１２上に読み出し、処理を実行することで、サービス提供システム１０全体の制御および機能を実現する演算装置である。
【００２３】
ＲＡＭ１２は、プログラムおよびデータを一時保持する揮発性の半導体メモリである。ＲＯＭ１３は、電源を切ってもプログラムおよびデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ１３には、サービス提供システム１０の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、ＯＳ設定、およびネットワーク設定等のプログラムおよびデータが格納されている。
【００２４】
補助記憶装置１４は、プログラムおよびデータを格納している不揮発性の記憶装置である。補助記憶装置１４は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）またはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等である。補助記憶装置１４に格納されるプログラムおよびデータには、サービス提供システム１０全体を制御する基本ソフトウェアであるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、および、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。また、補助記憶装置１４、格納しているプログラムおよびデータを所定のファイルシステムおよびデータベース等により管理している。
【００２５】
入力装置１５は、キーボード、マウス、またはタッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置１６は、ディスプレイ等を含み、サービス提供システム１０による処理結果を表示する。表示装置１６は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、または有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ等である。なお、入力装置１５および表示装置１６の少なくとも一方は、必要なときにサービス提供システム１０に接続して利用する形態であってもよい。
【００２６】
外部Ｉ／Ｆ１７は、外部装置とのインタフェースである。外部装置には、記録媒体１７ａ等がある。これにより、サービス提供システム１０は、外部Ｉ／Ｆ１７を介して記録媒体１７ａの読み取りおよび書き込みを行うことができる。記録媒体１７ａには、フレキシブルディスク、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカード、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等がある。
【００２７】
通信Ｉ／Ｆ１８は、サービス提供システム１０をネットワークＮ１に接続するインタフェースである。通信Ｉ／Ｆ１８は、例えば、イーサネット（登録商標）に対応し、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）／ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）等に準拠した通信が可能なインターフェースである。これにより、サービス提供システム１０は、通信Ｉ／Ｆ１８を介して通信を行うことができる。
【００２８】
なお、サービス提供システム１０は、補助記憶装置１４に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置（例えばソリッドステートドライブ：ＳＳＤ）を利用するものであってもよい。
【００２９】
本実施形態に係るサービス提供システム１０およびＰＣ端末３０は、図２に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３０】
（機器のハードウェア構成）
図３は、第１の実施形態に係る機器のハードウェア構成の一例を示す図である。図３を参照しながら、本実施形態に係る情報処理システム１に含まれる機器２０が画像形成装置である場合のハードウェア構成について説明する。
【００３１】
図３に示す機器２０は、コントローラ２１と、操作パネル２２と、外部Ｉ／Ｆ２３と、通信Ｉ／Ｆ２４と、プリンタ２５と、スキャナ２６とを有する。また、コントローラ２１は、ＣＰＵ３１と、ＲＡＭ３２と、ＲＯＭ３３と、ＮＶＲＡＭ（Ｎｏｎ−Ｖｏｌａｔｉｌｅ  ＲＡＭ）３４と、補助記憶装置３５とを有する。
【００３２】
ＣＰＵ３１は、ＲＯＭ３３、ＮＶＲＡＭ３４、および補助記憶装置３５等からプログラム、データ、設定情報等をＲＡＭ３２上に読み出し、処理を実行することで、機器２０全体の制御および機能を実現する演算装置である。
【００３３】
ＲＡＭ３２は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＲＯＭ３３は、各種プログラムおよびデータを格納している不揮発性の半導体メモリである。ＮＶＲＡＭ３４は、例えば設定情報等を格納している。補助記憶装置３５は、各種プログラムおよびデータを格納している不揮発性の記憶装置である。補助記憶装置３５は、ＨＤＤまたはＳＳＤ等である。
【００３４】
操作パネル２２は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。操作パネル２２は、例えば、タッチパネル機能を搭載した液晶表示装置（ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ））で構成される。なお、操作パネル２２は、液晶表示装置に限定されるものではなく、例えば、タッチパネル機能が搭載された有機ＥＬの表示装置で構成されていてもよい。また、操作パネル２２は、タッチパネル機能に加えてまたはこれに代えて、ハードウェアキー等の操作部、またはランプ等の表示部を設けることもできる。
【００３５】
外部Ｉ／Ｆ２３は、外部装置とのインタフェースである。外部装置には、記録媒体２３ａ等がある。これにより、機器２０は、外部Ｉ／Ｆ２３を介して記録媒体２３ａの読み取りおよび書き込みを行うことができる。なお、記録媒体２３ａには、例えば、ＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３６】
通信Ｉ／Ｆ２４は、機器２０をネットワークに接続するインタフェースである。通信Ｉ／Ｆ２４は、例えば、イーサネットに対応し、ＴＣＰ／ＩＰ等に準拠した通信が可能なインターフェースである。これにより、機器２０は、通信Ｉ／Ｆ２４を介して通信を行うことができる。
【００３７】
プリンタ２５は、印刷データを印刷する印刷装置である。スキャナ２６は、原稿を読み取って電子ファイル（画像ファイル）を生成する読取装置である。
【００３８】
本実施形態に係る機器２０は、図３に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３９】
（サービス提供システムが提供するサービス）
ここで、本実施形態に係るサービス提供システム１０が提供するサービスについて説明する。なお、以降では、機器２０がＭＦＰであるものとして説明する。
【００４０】
本実施形態では、機器２０において原稿をスキャンすることにより生成された電子ファイル（画像ファイル）にＯＣＲ処理を行った上で、所定の言語に翻訳して、メール配信するサービスを「スキャン翻訳サービス」と称する。そして、本実施形態では、サービス提供システム１０がスキャン翻訳サービスを提供する場合について説明する。
【００４１】
ここで、サービス提供システム１０がスキャン翻訳サービスを提供するには、機器２０がスキャン翻訳サービスを利用するためのアプリケーション（後述するアプリ情報１０００）をサービス提供システム１０に登録する必要がある。
【００４２】
したがって、本実施形態では、スキャン翻訳サービスを利用するためのアプリケーションをＰＣ端末３０が登録する場合と、当該アプリケーションを用いてスキャン翻訳サービスを機器２０が利用する場合とについて説明する。
【００４３】
なお、サービス提供システム１０により提供されるサービスは、これらに限られない。サービス提供システム１０は、例えば、機器２０において原稿をスキャンすることにより生成された電子ファイルを暗号化した上で、メール配信するサービスを提供するサービスを提供してもよい。また、サービス提供システム１０は、例えば、機器２０において原稿をスキャンすることにより生成された電子ファイルに所定の情報を付加した上で、ＦＡＸ送信するサービスを提供してもよい。
【００４４】
（情報処理システムの機能構成）
図４は、第１の実施形態に係る情報処理システムの機能構成の一例を示す図である。図４を参照しながら、本実施形態に係る情報処理システム１の機能構成について説明する。
【００４５】
図４に示すＰＣ端末３０は、例えばＣＰＵ１１等により実行されるブラウザ３１０を有する。ＰＣ端末３０のユーザは、ブラウザ３１０を用いて、「スキャン翻訳サービス」等の各種サービスを利用するためのアプリケーションをサービス提供システム１０に登録することができる。
【００４６】
図４に示す機器２０は、例えばＣＰＵ３１等により実行されるブラウザ２１０を有する。機器２０のユーザは、ブラウザ２１０を用いて、「スキャン翻訳サービス」等の各種サービスを利用することができる。すなわち、機器２０は、ブラウザ２１０を有していればよく、例えば、サービス提供システム１０が提供する各種サービスを利用するための専用のアプリケーションプログラム等を有している必要はない。
【００４７】
図４に示すサービス提供システム１０は、入出力サービス処理部１１０と、Ｗｅｂサービス処理部１２０と、ドキュメントサービス部１３０と、ポータルサービス部１４０とを有する。これら各機能部は、サービス提供システム１０にインストールされた１以上のプログラムが、ＣＰＵ１１に実行させる処理により実現される。
【００４８】
また、サービス提供システム１０は、アプリ情報記憶部１５０と、アプリ画面情報記憶部１６０と、ポータル画面情報記憶部１７０とを有する。これら各記憶部は、補助記憶装置１４を用いて実現可能である。なお、これら各記憶部のうちの少なくとも１つの記憶部が、サービス提供システム１０とネットワークを介して接続される記憶装置等を用いて実現されていてもよい。
【００４９】
入出力サービス処理部１１０は、サービス提供システム１０が提供するサービスに関する処理を行う。ここで、入出力サービス処理部１１０は、アプリ管理部１１１と、ロジック処理部１１２とを有する。
【００５０】
アプリ管理部１１１は、アプリ情報記憶部１５０に記憶されているアプリ情報１０００を管理する。なお、アプリ情報１０００とは、一連の処理により実現されるサービスを利用するためのアプリケーションの情報である。換言すれば、サービス提供システム１０が提供する各種サービスは、アプリ情報１０００により提供される。
【００５１】
また、アプリ管理部１１１は、ロジック処理部１１２からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００を返信する。なお、処理フロー情報１１００とは、アプリ情報１０００により提供されるサービスを実現する一連の処理が定義された情報である。
【００５２】
さらに、アプリ管理部１１１は、ポータルサービス部１４０からの要求に応じて、アプリ情報１０００をアプリ情報記憶部１５０に記憶させる。これにより、サービスを提供するアプリ情報１０００（アプリケーション）がサービス提供システム１０に登録される。
【００５３】
ロジック処理部１１２は、Ｗｅｂサービス処理部１２０からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００をアプリ管理部１１１から取得する。そして、ロジック処理部１１２は、アプリ管理部１１１から取得した処理フロー情報１１００に基づいて、当該アプリ情報１０００が提供するサービスを実現する一連の処理（処理フロー）を実行する。これにより、本実施形態に係るサービス提供システムは、「スキャン翻訳サービス」等の各種サービスを提供することができる。なお、ロジック処理部１１２の詳細については後述する。
【００５４】
Ｗｅｂサービス処理部１２０は、ユーザが機器２０のブラウザ２１０を用いて各種サービスを利用するための処理を行う。すなわち、Ｗｅｂサービス処理部１２０は、ブラウザ２１０に対してＷｅｂアプリケーション（アプリ情報１０００）を提供するアプリケーションサーバとして機能する。ここで、Ｗｅｂサービス処理部１２０は、画面構成部１２１と、アプリ実行部１２２とを有する。
【００５５】
画面構成部１２１は、ブラウザ２１０からの要求に応じて、アプリ画面情報記憶部１６０に記憶されているアプリ画面情報２０００と、アプリ情報記憶部１５０に記憶されているアプリ情報１０００に含まれるアプリ設定情報１２００とを返信する。
【００５６】
なお、アプリ画面情報２０００とは、アプリ情報１０００により提供されるサービスを利用するための画面（アプリ画面）の雛形が定義された情報である。アプリ画面情報２０００は、例えば、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ＸＨＴＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ）、ＪａｖａＳｃｒｉｐｔ（登録商標）等でアプリ画面の雛形が定義された情報である。
【００５７】
また、アプリ設定情報１２００は、アプリケーション（アプリ情報１０００）の各種設定が定義された情報である。例えば、アプリ設定情報１２００には、一連の処理の実行に用いられるパラメータ情報のうち、ユーザにより入力されるパラメータ情報、およびデフォルトで設定されるパラメータ情報等が定義されている。また、例えば、アプリ設定情報１２００には、ユーザがアプリ画面においてパラメータ情報を入力するための入力項目、およびアプリ画面における表示情報（例えば、アプリケーション名）等が定義されている。アプリ設定情報１２００は、例えば、ＪＳＯＮ（ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ）等でアプリケーションの各種設定が定義された情報である。
【００５８】
これにより、機器２０には、ブラウザ２１０により、サービス提供システム１０が提供するサービスを利用するためのアプリ画面が表示される。
【００５９】
アプリ実行部１２２は、ブラウザ２１０からの要求に応じて、入出力サービス処理部１１０に対して、アプリケーション（アプリ情報１０００）の実行要求を送信する。
【００６０】
ドキュメントサービス部１３０は、処理フロー情報１１００に基づく一連の処理（処理フロー）に含まれる所定の処理を実行する。ここで、ドキュメントサービス部１３０は、ＯＣＲ処理部１３１と、メール配信部１３２とを有する。
【００６１】
ＯＣＲ処理部１３１は、電子ファイルに対してＯＣＲ処理を行う。メール配信部１３２は、電子ファイルを添付したメールを作成して、当該メールを指定されたメールアドレス宛に配信する。
【００６２】
なお、ドキュメントサービス部１３０には、これら以外にも、例えば、電子ファイルの圧縮または解凍するための圧縮・解凍処理部、電子ファイルのデータ形式を変換するためのデータ形式変換部等、種々の機能部が含まれていてもよい。
【００６３】
ポータルサービス部１４０は、ユーザがＰＣ端末３０のブラウザ３１０を用いてアプリケーションの登録等を行うための処理を行う。ここで、ポータルサービス部１４０は、ＵＩ提供部１４１と、アプリ登録部１４２とを有する。
【００６４】
ＵＩ提供部１４１は、ブラウザ３１０からの要求に応じて、ポータル画面情報記憶部１７０に記憶されているポータル画面情報３０００を返信する。ここで、ポータルとは、ブラウザ３１０を用いて、アプリケーションの登録等を行うことができるＷｅｂサイトである。
【００６５】
なお、ポータル画面情報３０００とは、ポータルのトップ画面（ポータルトップ画面）、およびアプリケーション登録画面等の各種画面が定義された情報である。ポータル画面情報３０００は、例えば、ＨＴＭＬ、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ＣＳＳ、ＪａｖａＳｃｒｉｐｔ等のブラウザ２１０で各種画面が定義された情報である。
【００６６】
これにより、ＰＣ端末３０には、ブラウザ３１０により、ポータルトップ画面およびアプリケーション登録画面等が表示される。したがって、ＰＣ端末３０のユーザは、アプリケーション登録画面において、アプリケーション（アプリ情報１０００）の登録操作を行うことができる。
【００６７】
アプリ登録部１４２は、ＵＩ提供部１４１からの要求に応じて、アプリケーション（アプリ情報１０００）の登録をアプリ管理部１１１に要求する。すなわち、アプリ登録部１４２は、アプリケーション登録画面において、アプリケーションの登録操作が行われると、アプリケーションの登録をアプリ管理部１１１に要求する。
【００６８】
アプリ情報記憶部１５０は、アプリ情報１０００を記憶する。アプリ情報１０００は、当該アプリ情報１０００を識別するアプリＩＤと関連付けてアプリ情報記憶部１５０に記憶されている。なお、アプリＩＤは、例えば、アプリ情報１０００のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）、またはアプリ情報１０００のＵＲＬに含まれる識別情報等である。
【００６９】
ここで、アプリ情報１０００には、処理フロー情報１１００と、アプリ設定情報１２００とが含まれる。例えば、スキャン翻訳サービスを提供するアプリ情報１０００には、当該サービスを実現する一連の処理が定義された処理フロー情報１１００と、当該アプリ情報１０００の各種設定が定義されたアプリ設定情報１２００とが含まれる。以降では、スキャン翻訳サービスを提供するアプリ情報１０００を「スキャン翻訳アプリケーション」とも表す。
【００７０】
なお、アプリ情報１０００には、２以上の処理フロー情報１１００と、２以上のアプリ設定情報１２００とが含まれていてもよい。
【００７１】
処理フロー情報１１００は、上述したように、アプリ情報１０００により提供されるサービスを実現する一連の処理（処理フロー）が定義された情報である。なお、処理フロー情報１１００の詳細については後述する。
【００７２】
また、アプリ設定情報１２００は、上述したように、アプリケーション（アプリ情報１０００）の各種設定が定義された情報である。なお、アプリ設定情報１２００の詳細については後述する。
【００７３】
アプリ画面情報記憶部１６０は、アプリ画面情報２０００を記憶する。アプリ画面情報２０００は、アプリＩＤと関連付けてアプリ画面情報記憶部１６０に記憶されている。
【００７４】
ポータル画面情報記憶部１７０は、ポータル画面情報３０００を記憶する。ポータル画面情報３０００は、ポータルトップ画面やアプリケーション登録画面等のＵＲＬと関連付けてポータル画面情報記憶部１７０に記憶されている。
【００７５】
なお、入出力サービス処理部１１０、Ｗｅｂサービス処理部１２０、ドキュメントサービス部１３０、およびポータルサービス部１４０等は、それぞれが異なる情報処理装置により実現されていてもよい。
【００７６】
図５は、第１の実施形態に係るロジック処理部の機能構成の一例を示す図である。図５を参照しながら、ロジック処理部１１２の詳細な機能構成について説明する。
【００７７】
図５に示すロジック処理部１１２は、フロー実行部３０１と、コンポーネント管理部３０２と、コンポーネント群３０３と、型変換管理部３０４と、型変換群３０５とを有する。また、ロジック処理部１１２は、型変換情報テーブル４０００を有する。
【００７８】
フロー実行部３０１は、アプリ実行部１２２からアプリケーションの実行要求を受信すると、当該実行要求に対応する処理フロー情報１１００をアプリ管理部１１１から取得する。そして、フロー実行部３０１は、アプリ管理部１１１から取得した処理フロー情報１１００に基づく一連の処理（処理フロー）を実行する。
【００７９】
ここで、処理フロー情報１１００に基づく一連の処理は、当該一連の処理に含まれる各処理を実行するためのコンポーネントを組み合わせることにより実行される。なお、コンポーネントは、所定の機能を実現する処理を実行するためのプログラムおよびモジュール等により実現され、例えばクラスまたは関数等で定義される。
【００８０】
コンポーネント管理部３０２は、コンポーネントを管理する。コンポーネント管理部３０２は、フロー実行部３０１からの要求に応じて、コンポーネントを生成すると共に、生成したコンポーネントをフロー実行部３０１に返信する。なお、コンポーネントの生成とは、例えばクラスまたは関数等で定義されたコンポーネントを、メモリ（例えばＲＡＭ１２）上に展開することである。
【００８１】
コンポーネント群３０３は、コンポーネントの集合である。コンポーネント群３０３は、ＯＣＲコンポーネント１３１０と、翻訳コンポーネント１３２０と、メール配信コンポーネント１３３０とを含む。
【００８２】
ＯＣＲコンポーネント１３１０は、電子ファイル（画像ファイル）をＯＣＲ処理するためのコンポーネントである。ＯＣＲコンポーネント１３１０は、ドキュメントサービス部１３０のＯＣＲ処理部１３１にＯＣＲ処理を要求することにより、電子ファイルのＯＣＲ処理を行う。
【００８３】
翻訳コンポーネント１３２０は、テキストファイル等の電子ファイルにおいて、所定の言語で記載されている文書を他の言語に翻訳するためのコンポーネントである。メール配信コンポーネント１３３０は、指定されたメールアドレス宛にメール配信するためのコンポーネントである。メール配信コンポーネント１３３０は、ドキュメントサービス部１３０のメール配信部１３２もメール配信処理を要求することにより、指定されたメールアドレス宛にメールを配信する。
【００８４】
このように、各コンポーネントは、所定の機能を実現する処理を実行する。なお、コンポーネント群３０３には、上記のコンポーネント以外にも、例えば、電子ファイルの暗号化および復号を行うための暗号化・復号コンポーネント、電子ファイルを圧縮するための圧縮コンポーネント等の各種のコンポーネントが含まれる。
【００８５】
また、コンポーネント群３０３に含まれる各コンポーネントは、コンポーネント共通Ｉ／Ｆ１３００を有する。コンポーネント共通Ｉ／Ｆ１３００は、各コンポーネントに対して共通に定義されたＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）であり、コンポーネントを生成するためのＡＰＩと、コンポーネントの処理を実行するためのＡＰＩとが含まれる。
【００８６】
このように、各コンポーネントがコンポーネント共通Ｉ／Ｆ１３００を有することで、コンポーネントの追加等に伴う影響を局所化することができる。すなわち、例えば、フロー実行部３０１およびコンポーネント管理部３０２等に影響を与えることなく、コンポーネントの追加等を行うことができる。これにより、本実施形態に係るサービス提供システム１０では、所定の機能の追加等（すなわち、当該機能を実現する処理を実行するためのコンポーネントの追加等）に伴う開発工数を削減することができる。
【００８７】
型変換管理部３０４は、データ型の型変換を管理する。ここで、各コンポーネントは、自身が扱えるデータ型が予め決まっている。したがって、型変換管理部３０４は、コンポーネントからの要求に応じて、例えば図６に示す型変換情報テーブル４０００を参照して、型変換群３０５に含まれる型変換を生成する。
【００８８】
そして、型変換管理部３０４は、生成された型変換に型変換処理の実行を要求する。なお、型変換は、データ型の型変換処理を実行するプログラムまたはモジュール等により実現され、例えばクラスまたは関数等で定義される。また、型変換の生成とは、例えばクラスや関数等で定義された型変換を、メモリ（例えばＲＡＭ１２上）に展開することである。
【００８９】
なお、データ型には、例えば、ストリームデータを示すデータ型「ＩｎｐｕｔＳｔｒｅａｍ」、記憶装置等に格納されている電子ファイルのパス（アドレス）を示す「ＬｏｃａｌＦｉｌｅＰａｔｈ」、および電子ファイルの実体を示す「Ｆｉｌｅ」等が挙げられる。
【００９０】
図６は、型変換情報テーブルの一例を示す図である。図６を参照しながら、型変換情報テーブル４０００について説明する。
【００９１】
図６に示す型変換情報テーブル４０００は、データ項目として、変換前のデータ型と、変換後のデータ型と、生成する型変換とを有する。すなわち、型変換情報テーブル４０００に格納されている型変換情報は、変換前のデータ型および変換後のデータ型毎に、当該変換前のデータ型を、当該変換後のデータ型に変換するための型変換が関連付けられた情報である。
【００９２】
型変換群３０５は、型変換の集合である。型変換群３０５は、データ型「ＩｎｐｕｔＳｔｒｅａｍ」を「ＬｏｃａｌＦｉｌｅＰａｔｈ」に変換するための第１の型変換１４１０を含む。なお、型変換群３０５には、これ以外にも、例えば、データ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」を「Ｆｉｌｅ」に変換するための第２の型変換等が含まれる。
【００９３】
また、型変換群３０５に含まれる各型変換は、型変換共通Ｉ／Ｆ１４００を有する。型変換共通Ｉ／Ｆ１４００は、各型変換に対して共通に定義されたＡＰＩであり、型変換を生成するためのＡＰＩと、型変換の型変換処理を実行するためのＡＰＩとが含まれる。
【００９４】
このように、各型変換が型変換共通Ｉ／Ｆ１４００を有することで、型変換の追加等に伴う影響を局所化することができる。すなわち、例えば、型変換管理部３０４等に影響を与えることなく、型変換の追加等を行うことができる。これにより、本実施形態に係るサービス提供システム１０では、型変換の追加等に伴う開発工数を削減することができる。
【００９５】
図７は、処理フロー情報の一例を示す図である。図７を参照しながら、スキャン翻訳サービスを提供するアプリ情報１０００に含まれる処理フロー情報１１００について説明する。
【００９６】
図７に示す処理フロー情報１１００は、スキャン翻訳サービスを実現する一連の処理（処理フロー）が定義された情報である。
【００９７】
図７に示す処理フロー情報１１００は、処理フロー情報１１００を識別するフロー名１１０１と、処理フローに含まれる各処理の処理内容が定義されたフロー詳細１１０２とを含む。
【００９８】
フロー詳細１１０２は、処理フローに含まれる各処理をそれぞれ定義した詳細処理定義１１１０と、詳細処理定義１１２０と、詳細処理定義１１３０とを含む。詳細処理定義１１１０〜１１３０は、詳細処理定義を識別する詳細処理名を示す「"ｄｅｔａｉｌＮａｍｅ"」と、処理を実行するためのコンポーネントのコンポーネント名を示す「"ｃｏｍｐｏｎｅｎｔ"」と、当該コンポーネントに対するパラメータ情報が定義される「"ｐａｒａｍｅｔｅｒｓ"」とを含む。
【００９９】
具体的には、詳細処理定義１１１０の「"ｄｅｔａｉｌＮａｍｅ"」には、「"ｄｅｔａｉｌ０"」が定義されている。また、詳細処理定義１１１０の「"ｃｏｍｐｏｎｅｎｔ"」には、ＯＣＲコンポーネント１３１０のコンポーネント名「"ｏｃｒ"」が定義されている。さらに、詳細処理定義１１１０の「"ｐａｒａｍｅｔｅｒｓ"」には、パラメータ名「"ｌａｎｇｕａｇｅ"」のパラメータ情報等が定義されている。
【０１００】
パラメータ名「"ｌａｎｇｕａｇｅ"」のパラメータ情報は、ＯＣＲ処理の言語（例えば、「"Ｊａｐａｎｅｓｅ"」や「"Ｅｎｇｌｉｓｈ"」等）をパラメータ値として設定するパラメータ情報である。
【０１０１】
同様に、詳細処理定義１１２０の「"ｄｅｔａｉｌＮａｍｅ"」には、「"ｄｅｔａｉｌ１"」が定義されている。また、詳細処理定義１１２０の「"ｃｏｍｐｏｎｅｎｔ"」には、翻訳コンポーネント１３２０のコンポーネント名「"ｔｒａｎｓｌａｔｉｏｎ"」が定義されている。さらに、詳細処理定義１１１０の「"ｐａｒａｍｅｔｅｒｓ"」には、パラメータ名「"ｆｒｏｍ"」のパラメータ情報、およびパラメータ名「"ｔｏ"」のパラメータ情報等が定義されている。
【０１０２】
パラメータ名「"ｆｒｏｍ"」のパラメータ情報は、翻訳元の言語（例えば、「"Ｅｎｇｌｉｓｈ"」）をパラメータ値として設定するパラメータ情報である。また、パラメータ名「"ｔｏ"」のパラメータ情報は、翻訳先の言語（例えば、「"Ｊａｐａｎｅｓｅ"」）をパラメータ値として設定するパラメータ情報である。
【０１０３】
また、同様に、詳細処理定義１１３０の「"ｄｅｔａｉｌＮａｍｅ"」には、「"ｄｅｔａｉ２１"」が定義されている。また、詳細処理定義１１３０の「"ｃｏｍｐｏｎｅｎｔ"」には、メール配信コンポーネント１３３０のコンポーネント名「"ｍａｉｌ"」が定義されている。さらに、詳細処理定義１１３０の「"ｐａｒａｍｅｔｅｒｓ"」には、パラメータ名「"ａｄｄｒｅｓｓ"」のパラメータ情報等が定義されている。
【０１０４】
パラメータ名「"ａｄｄｒｅｓｓ"」のパラメータ情報は、メール送信先のメールアドレスをパラメータ値として設定するパラメータ情報である。
【０１０５】
また、各詳細処理定義に定義された処理の実行順は、フロー詳細１１０２において、上から順に定義される。すなわち、図７に示す処理フロー情報１１００に基づく一連の処理（処理フロー）では、詳細処理定義１１１０に定義された処理、詳細処理定義１１２０に定義された処理、詳細処理定義１１３０に定義された処理の順で実行される。なお、これに限られず、処理フロー情報１１００には、例えば、各詳細処理定義に定義された処理の実行順を示す情報が定義されていてもよい。
【０１０６】
なお、図７に示す例では、各パラメータ情報のパラメータ値は設定されていないが、これに限られず、デフォルトとなるパラメータ値が設定されていてもよい。
【０１０７】
（情報処理システムの処理の詳細）
図８は、アプリケーションの登録処理の一例を示すシーケンス図である。図８を参照しながら、本実施形態に係る情報処理システム１の処理の詳細について説明する。まず、図８を参照しながら、ＰＣ端末３０のユーザが、スキャン翻訳アプリケーションをサービス提供システム１０に登録する処理について説明する。
【０１０８】
まず、ＰＣ端末３０のブラウザ３１０は、ポータルトップ画面を表示させるための操作
（ポータルトップ画面の表示操作）を受け付ける（ステップＳ８０１）。なお、ＰＣ端末３０のユーザは、例えば、ポータルトップ画面のＵＲＬをブラウザ３１０のアドレスバーに入力することで、ポータルトップ画面の表示操作を行うことができる。
【０１０９】
ＰＣ端末３０のブラウザ３１０は、ポータルトップ画面の表示操作を受け付けると、ポータルトップ画面の表示要求を、ポータルサービス部１４０のＵＩ提供部１４１に送信する（ステップＳ８０２）。
【０１１０】
ポータルサービス部１４０のＵＩ提供部１４１は、ポータルトップ画面の取得要求を受信すると、ポータルトップ画面のポータル画面情報をポータル画面情報記憶部１７０から取得する（ステップＳ８０３）。そして、ＵＩ提供部１４１は、ポータル画面情報記憶部１７０から取得したポータル画面情報をブラウザ３１０に返信する。
【０１１１】
ＰＣ端末３０のブラウザ３１０は、ポータルトップ画面のポータル画面情報を受信すると、当該ポータル画面情報に基づいて、例えば図９に示すポータルトップ画面Ｇ１００を表示する（ステップＳ８０４）。
【０１１２】
図９に示すポータルトップ画面Ｇ１００は、ポータルのトップ画面であり、アプリケーションの登録を行うための「Ａｐｐｌｉｃａｔｉｏｎ」ボタンＧ１１０を含む。以降では、ユーザが、図９に示すポータルトップ画面Ｇ１００において、「Ａｐｐｌｉｃａｔｉｏｎ」ボタンＧ１１０を選択する操作（アプリ登録の選択操作）を行ったものとする。
【０１１３】
また、図９に示すポータルトップ画面Ｇ１００は、処理フロー情報１１００の作成等を行うための「Ｆｌｏｗ」ボタンＧ１２０と、コンポーネントの登録等を行うための「Ｃｏｍｐｏｎｅｎｔ」ボタンＧ１３０と、を含む。このように、ポータルトップ画面Ｇ１００では、アプリケーションの登録以外にも、処理フローの作成・実行、コンポーネントの登録・更新等を行うことができる。
【０１１４】
ＰＣ端末３０のブラウザ３１０は、ユーザにより行われたアプリ登録の選択操作を受け付ける（ステップＳ８０５）。
【０１１５】
ＰＣ端末３０のブラウザ３１０は、アプリ登録の選択操作を受け付けると、アプリケーション登録画面の表示要求を、ポータルサービス部１４０のＵＩ提供部１４１に送信する（ステップＳ８０６）。
【０１１６】
ポータルサービス部１４０のＵＩ提供部１４１は、アプリケーション登録画面の表示要求を受信すると、アプリケーション登録画面のポータル画面情報をポータル画面情報記憶部１７０から取得する（ステップＳ８０７）。そして、ＵＩ提供部１４１は、ポータル画面情報記憶部１７０から取得したポータル画面情報をブラウザ３１０に返信する。
【０１１７】
ＰＣ端末３０のブラウザ３１０は、アプリケーション登録画面のポータル画面情報を受信すると、当該ポータル画面情報に基づいて、例えば図１０に示すアプリケーション登録画面Ｇ２００を表示する（ステップＳ８０８）。
【０１１８】
ここで、以降では、図１０〜図１４を参照しながら、ユーザがアプリケーションの登録操作を行う場合について説明する。
【０１１９】
まず、図１０に示すアプリケーション登録画面Ｇ２００は、ユーザが登録するアプリケーションのタイプを選択するための画面である。
【０１２０】
図１０に示すアプリケーション登録画面Ｇ２００は、プリントタイプのアプリケーションを登録するための「プリント」ボタンＧ２１０と、スキャンタイプのアプリケーションを登録するための「スキャン」ボタンＧ２２０と、を含む。なお、図１０に示すアプリケーション登録画面Ｇ２００には、例えば、ＦＡＸタイプのアプリケーションを登録するための「ＦＡＸ」ボタン、メール受信タイプのアプリケーションを登録するための「メール受信」ボタン等が含まれていてもよい。
【０１２１】
また、図１０に示すアプリケーション登録画面Ｇ２００は、次の画面に遷移するための「次へ」ボタンＧ２４０等を含む。
【０１２２】
図１０に示すアプリケーション登録画面Ｇ２００では、ユーザが「プリント」ボタンＧ２１０または「スキャン」ボタンＧ２２０のいずれかを選択すると、それぞれプリントタイプの説明またはスキャンタイプの説明が説明欄Ｇ２３０に表示される。
【０１２３】
なお、プリントタイプとは、一連の処理による実行結果を示す電子ファイルを画像形成装置等で印刷させるタイプのアプリケーションである。一方、スキャンタイプとは、画像形成装置等においてスキャンにより生成された電子ファイルを入力とした一連の処理を実行させるタイプのアプリケーションである。
【０１２４】
また、例えば、ＦＡＸタイプとは、一連の処理による実行結果を示す電子ファイルを画像形成装置等でＦＡＸ送信させるタイプのアプリケーションである。さらに、メール受信タイプとは、画像形成装置等が受信したメールに添付されている電子ファイルを入力とした一連の処理を実行させるタイプのアプリケーションである。
【０１２５】
以降では、ユーザが、図１０に示すアプリケーション登録画面Ｇ２００において、「スキャン」ボタンＧ２２０を選択した上で、「次へ」ボタンＧ２４０を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図１１に示すアプリケーション登録画面Ｇ３００を表示する。図１１に示すアプリケーション登録画面Ｇ３００は、ユーザがアプリケーションの基本情報を設定するための画面である。
【０１２６】
図１１に示すアプリケーション登録画面Ｇ３００は、アプリケーションの名称を設定するための「アプリ名」入力設定欄Ｇ３１０と、アプリ画面の画面形式を選択するための「デザインテンプレート」選択欄Ｇ３２０と、を含む。また、図１１に示すアプリケーション登録画面Ｇ３００は、アプリケーションを利用する際の認証を選択するための「認証」選択欄Ｇ３３０と、アプリ画面の表示言語を選択するための「表示言語」選択欄Ｇ３４０と、を含む。さらに、図１１に示すアプリケーション登録画面Ｇ３００は、次の画面に遷移するための「次へ」ボタンＧ３５０等を含む。
【０１２７】
「デザインテンプレート」選択欄Ｇ３２０では、例えば、アプリ画面が一画面で表示される「一画面形式」、アプリ画面を対話形式で表示する「ウィザード形式」等を選択することができる。また、「認証」選択欄Ｇ３３０では、認証を用いないことを示す「なし」、認証を用いることを示す「ユーザ認証」等を選択することができる。
【０１２８】
以降では、ユーザが、図１１に示すアプリケーション登録画面Ｇ３００のように、アプリケーション名の入力または各種選択を行った上で、「次へ」ボタンＧ３５０を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図１２に示すアプリケーション登録画面Ｇ４００を表示する。
【０１２９】
図１２に示すアプリケーション登録画面Ｇ４００は、ユーザがアプリケーションの詳細情報として、登録するアプリケーションに対して一連の処理（処理フロー）を設定するための画面である。
【０１３０】
図１２に示すアプリケーション登録画面Ｇ４００は、アプリ情報記憶部１５０に記憶されている処理フロー情報１１００のフロー名を検索するための検索欄Ｇ４１０と、フロー名を選択するためのフロー選択欄Ｇ４２０と、を含む。ユーザは、所望のフローの名称等を検索欄Ｇ４１０に入力した上で、フロー選択欄Ｇ４２０から所望のフロー名を選択することができる。
【０１３１】
また、図１２に示すアプリケーション登録画面Ｇ４００は、フロー選択欄Ｇ４２０で選択されたフロー名の処理フロー情報１１００に基づく一連の処理の概要を表示する概要表示欄Ｇ４３０と、次の画面に遷移するための「次へ」ボタンＧ４４０と、を含む。
【０１３２】
さらに、図１２に示すアプリケーション登録画面Ｇ４００は、フロー選択欄Ｇ４２０で選択されたフロー名の処理フロー情報１１００の編集および更新を行うための「更新」ボタンＧ４２１と、新規に処理フロー情報１１００を作成するための「新規」ボタンＧ４２２と、を含む。ユーザは、「更新」ボタンＧ４２１を押下することで、フロー選択欄Ｇ４２０で選択したフロー名の処理フロー情報１１００の編集および更新を行うことができる。また、ユーザは、「新規」ボタンＧ４２２を押下することで、処理フロー情報１１００を作成した上で、作成した処理フロー情報１１００のフロー名をフロー選択欄Ｇ４２０で選択することができる。
【０１３３】
以降では、ユーザが、フロー名「ｔｒａｎｓｌａｔｅ−ｍａｉｌ」をフロー選択欄Ｇ４２０で選択した上で、「次へ」ボタンＧ４４０を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図１３に示すアプリケーション登録画面Ｇ５００を表示する。
【０１３４】
図１３に示すアプリケーション登録画面Ｇ５００は、ユーザがアプリケーションの詳細情報として、図１２に示すアプリケーション登録画面Ｇ４００で設定された一連の処理（処理フロー）のパラメータ情報を設定するための画面である。
【０１３５】
図１３に示すアプリケーション登録画面Ｇ５００は、一連の処理に含まれる各処理を実行するコンポーネントを選択するための「コンポーネント」選択欄Ｇ５１０を含む。また、図１３に示すアプリケーション登録画面Ｇ５００は、「コンポーネント」選択欄Ｇ５１０で選択されたコンポーネントのパラメータ情報を設定するための「パラメータ情報」設定欄Ｇ５２０と、次の画面に遷移するための「次へ」ボタンＧ５３０と、を含む。
【０１３６】
ユーザは、「コンポーネント」選択欄Ｇ５１０から所望のコンポーネントを選択した上で、「パラメータ情報」設定欄Ｇ５２０にてパラメータ情報の各種設定を行うことができる。例えば、ユーザが「コンポーネント」選択欄Ｇ５１０から翻訳コンポーネント１３２０を選択した場合、「パラメータ情報」設定欄Ｇ５２０では、翻訳コンポーネント１３２０が用いるパラメータ情報の各種設定を行うことができる。
【０１３７】
具体的には、パラメータ情報の各種設定には、「ｓｅｌｅｃｔ」、「ｄｉｓｐｌａｙｎａｍｅ」、「ｎａｍｅ」、「ｔｙｐｅ」、「ｄｅｆａｕｌｔ」、および「ｉｎｐｕｔ  ｔｙｐｅ」等の設定項目がある。設定項目「ｎａｍｅ」には、パラメータ情報のパラメータ名が設定される。設定項目「ｔｙｐｅ」には、パラメータ値として設定することができるデータ形式が設定される。設定項目「ｄｅｆａｌｔ」には、デフォルトとして設定されるパラメータ値が設定される。
【０１３８】
また、設定項目「ｓｅｌｅｃｔ」には、パラメータ情報のパラメータ値をユーザ（サービスの利用者）に入力させるか否かが設定される。設定項目「ｓｅｌｅｃｔ」にチェックが入れられたパラメータ情報は、アプリ画面においてユーザ（サービスの利用者）がパラメータ値を入力することができる。一方で、設定項目「ｓｅｌｅｃｔ」にチェックが入れられていないパラメータ情報は、アプリ画面においてユーザがパラメータ値を入力することができず、設定項目「ｄｅｆａｕｌｔ」に設定されたパラメータ値が用いられる。
【０１３９】
また、設定項目「ｉｎｐｕｔ  ｔｙｐｅ」には、設定項目「ｓｅｌｅｃｔ」にチェックが入れられたパラメータ情報について、アプリ画面における入力方法が設定される。設定項目「ｉｐｕｔ  ｔｙｐｅ」では、例えば、パラメータ値の一覧から所望のパラメータ値を選択する入力方法「ｌｉｓｔ−ｒａｄｉｏ−ｂｕｔｔｏｎ」、パラメータ値を直接入力する入力方法「ｔｅｘｔ」等を設定することができる。なお、設定項目「ｉｎｐｕｔ  ｔｙｐｅ」には、これら以外にも、例えば、画面上の座標を入力する入力方法、所望のフォルダやファイルを選択するための入力方法等を選択することができてもよい。
【０１４０】
さらに、設定項目「ｄｉｓｐｌａｙｎａｍｅ」には、アプリ画面に表示される入力項目（パラメータ値を入力させるための項目）の表示名が設定される。設定項目「ｄｉｓｐｌａｙｎａｍｅ」には、図１１に示すアプリケーション登録画面Ｇ３００の「表示言語」選択欄Ｇ３４０で選択した言語の表示名を設定することができる。すなわち、例えば、「表示言語」選択欄Ｇ３４０で「Ｊａｐａｎｅｓｅ」および「Ｅｎｇｌｉｓｈ」が選択された場合、設定項目「ｄｉｓｐｌａｙｎａｍｅ」には、例えば、日本語の表示名「翻訳元」と、英語の表示名「Ｓｏｕｒｃｅ  Ｌａｎｇｕａｇｅ」とを設定することができる。
【０１４１】
これにより、ユーザは、各コンポーネントが用いるパラメータ情報について、パラメータ情報のパラメータ値をサービスの利用者に入力させるか否か、その入力方法等を設定することができる。
【０１４２】
以降では、ユーザが、各コンポーネントが用いるパラメータ情報を設定した上で、「次へ」ボタンＧ５３０を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図１４に示すアプリケーション登録画面Ｇ６００を表示する。
【０１４３】
図１４に示すアプリケーション登録画面Ｇ６００は、図１０〜図１３で設定された各種情報（アプリ設定情報）をユーザが確認するための画面である。
【０１４４】
図１４に示すアプリケーション登録画面Ｇ６００は、「アプリ設定情報」表示欄Ｇ６１０と、「登録」ボタンＧ６２０と、を含む。ユーザは、「アプリ設定情報」表示欄Ｇ６１０において、図１０〜図１３で設定した各種情報を確認することができる。
【０１４５】
ここで、ユーザは、「アプリ設定情報」表示欄Ｇ６１０でアプリ設定情報を確認した上で、「登録」ボタンＧ６２０を押下する操作（アプリケーションの登録操作）を行ったものとする。すると、ブラウザ３１０は、アプリケーションの登録操作を受け付ける（ステップＳ８０９）。
【０１４６】
ブラウザ３１０は、アプリケーションの登録操作を受け付けると、例えば図１５に示すアプリ設定情報１２００を作成する（ステップＳ８１０）。
【０１４７】
図１５は、アプリ設定情報の一例を示す図である。図１５を参照しながら、アプリ設定情報１２００について説明する。
【０１４８】
図１５に示すアプリ設定情報１２００は、アプリタイプ１２０１、アプリ名１２０２、アプリ表示名１２０３、認証タイプ１２０４、およびフロー名１２０５を含む。また、図１５に示すアプリ設定情報１２００は、デザインテンプレートタイプ１２０６、デフォルトパラメータ１２０７、およびユーザ入力パラメータ１２０８等を含む。
【０１４９】
アプリタイプ１２０１は、図１０に示すアプリケーション登録画面Ｇ２００で選択されたアプリケーションのタイプである。図１５に示す例では、アプリケーションのタイプがスキャンタイプであることを示す「"ａｐｐ＿ｔｙｐｅ"："ｓｃａｎ"」が定義されている。
【０１５０】
アプリ名１２０２は、図１１に示すアプリケーション登録画面Ｇ３００の「アプリ名」入力設定欄Ｇ３１０に入力されたアプリ名である。図１５に示す例では、アプリ名が「スキャン翻訳アプリケーション」であることを示す「"ａｐｐＮａｍｅ"："スキャン翻訳アプリケーション"」が定義されている。
【０１５１】
アプリ表示名１２０３は、アプリ画面に表示されるアプリケーション名称（タイトル）である。図１０に示す例では、日本語では「スキャン翻訳」、英語では「Ｔｒａｎｓｌａｔｉｏｎ  Ａｐｐ」と表示されることが定義される。
【０１５２】
認証タイプ１２０４は、図１１に示すアプリケーション登録画面Ｇ３００の「認証」選択欄Ｇ３３０で選択された認証である。図１５に示す例では、認証しないことを示す「"ｌｏｇｉｎＴｙｐｅ"："ｎｏｎｅ"」が定義されている。
【０１５３】
フロー名１２０５は、図１２に示すアプリケーション登録画面Ｇ４００のフロー選択欄Ｇ４２０で選択されたフロー名である。図１５に示す例では、フロー名が「"ｔｒａｎｓｌａｔｅ−ｍａｉｌ"」であることを示す「"ｆｌｏｗＮａｍｅ"："ｔｒａｎｓｌａｔｅ−ｍａｉｌ"」が定義されている。
【０１５４】
デザインテンプレートタイプ１２０６は、図１１に示すアプリケーション登録画面Ｇ３００の「デザインテンプレート」選択欄Ｇ３２０で選択された表示形式である。図１５に示す例では、一画面形式でアプリ画面を表示することを示す「"ｖｉｅｗＴｅｍｐｌａｔｅ"："一画面形式"」が定義されている。
【０１５５】
デフォルトパラメータ１２０７は、アプリ画面においてユーザがパラメータ値を入力しないパラメータ情報が定義されている。すなわち、デフォルトパラメータ１２０７には、図１３に示すアプリケーション登録画面Ｇ５００の「パラメータ情報」設定欄Ｇ５２０において、設定項目「ｓｅｌｅｃｔ」のチェックを入れなかったパラメータ情報が定義される。図１５に示す例では、詳細処理名「ｄｅｔａｉｌ０」（すなわち、図７における詳細処理定義１１１０）に定義されたパラメータ名「"ｌａｎｇｕａｇｅ"」のパラメータ情報は、デフォルトのパラメータ値として、「"Ｅｎｇｌｉｓｈ"」が設定されることが定義されている。
【０１５６】
このように、デフォルトパラメータ１２０７には、デフォルトでパラメータ値が設定されるパラメータ情報が定義されている。換言すれば、デフォルトパラメータ１２０７には、ユーザがパラメータ値を設定しないパラメータ情報が定義されている。
【０１５７】
ユーザ入力パラメータ１２０８は、アプリ画面においてユーザによりパラメータ値が入力されるパラメータ情報が定義されている。すなわち、ユーザ入力パラメータ１２０８には、図１３に示すアプリケーション登録画面Ｇ５００の「パラメータ情報」設定欄Ｇ５２０において、設定項目「ｓｅｌｅｃｔ」のチェックを入れたパラメータ情報が定義される。
【０１５８】
図１５に示す例では、詳細処理名「ｄｅｔａｉｌ１」（すなわち、図７における詳細処理定義１１２０）に定義されたパラメータ名「"ｆｒｏｍ"」のパラメータ値がユーザに入力されることを示す入力定義１２１８が定義されている。同様に、詳細処理名「ｄｅｔａｉｌ１」（すなわち、図７における詳細処理定義１１２０）に定義されたパラメータ名「"ｔｏ"」のパラメータ値がユーザに入力されることを示す入力定義１２２８が定義されている。また、同様に、詳細処理名「ｄｅｔａｉｌ２」（すなわち、図７における詳細処理定義１１３０）に定義されたパラメータ名「"ａｄｄｒｅｓｓ"」のパラメータ値がユーザに入力されることを示す入力定義１２３８が定義されている。
【０１５９】
このように、ユーザ入力パラメータ１２０８には、アプリ画面においてユーザがパラメータ値を入力するパラメータ情報が定義されている。
【０１６０】
以上のように、アプリ設定情報１２００には、アプリ画面に表示される表示情報（例えば、タイトル）、アプリ画面の入力項目（パラメータ値を入力または選択する項目）、および当該入力項目における入力方法等が定義されている。また、アプリ設定情報１２００には、パラメータ値がデフォルトで設定されるパラメータ情報（すなわち、アプリ画面でパラメータ値が入力または選択されないパラメータ情報）等が定義されている。
【０１６１】
ブラウザ３１０は、アプリ設定情報１２００を作成すると、アプリケーションの登録要求を、ポータルサービス部１４０のアプリ登録部１４２に送信する（ステップＳ８１１）。なお、アプリケーションの登録要求には、ステップＳ８１０で作成されたアプリ設定情報１２００が含まれる。
【０１６２】
ポータルサービス部１４０のアプリ登録部１４２は、アプリケーションの登録要求を受信すると、当該登録要求を、入出力サービス処理部１１０のアプリ管理部１１１に送信する（ステップＳ８１２）。
【０１６３】
入出力サービス処理部１１０のアプリ管理部１１１は、アプリケーションの登録要求を受信すると、アプリケーションを登録する（ステップＳ８１３）。そして、アプリ管理部１１１は、登録結果をブラウザ３１０に返信する。
【０１６４】
すなわち、アプリ管理部１１１は、アプリケーションの登録要求に含まれるアプリ設定情報１２００をアプリＩＤと関連付けてアプリ情報記憶部１５０に記憶する。これにより、当該アプリ設定情報１２００と、当該アプリ設定情報１２００のフロー名１２０５に定義されたフロー名の処理フロー情報１１００とを含むアプリ情報１０００がサービス提供システム１０に登録される。
【０１６５】
以上により、本実施形態に係る情報処理システム１では、ユーザがＰＣ端末３０を用いて、サービス提供システム１０にアプリケーションを登録することができる。しかも、本実施形態に係る情報処理システム１では、ユーザがＰＣ端末３０を用いて、例えば、フロー名や各コンポーネントのパラメータ情報等を設定することで、容易にアプリケーション（アプリ情報１０００）を登録することができる。
【０１６６】
したがって、本実施形態に係る情報処理システム１によれば、例えば、プログラミング言語等の専門的な知識や経験を有しないユーザ（例えば、企画担当者等）であっても、各種サービスを提供するアプリケーション（アプリ情報１０００）を登録することができる。
【０１６７】
図１６は、スキャン翻訳サービスを利用する場合の全体処理の一例を示すシーケンス図である。図１６を参照しながら、機器２０のユーザがスキャン翻訳サービスを利用する場合について説明する。
【０１６８】
まず、機器２０のブラウザ２１０は、スキャン翻訳サービスのアプリ画面を表示させるための操作（表示操作）を受け付ける（ステップＳ１６０１）。機器２０のユーザは、例えば、スキャン翻訳サービスのアプリ画面のＵＲＬをブラウザ３１０のアドレスバーに入力することで、アプリ画面の表示操作を行うことができる。
【０１６９】
機器２０のブラウザ２１０は、スキャン翻訳サービスのアプリ画面の表示操作を受け付けると、スキャン翻訳サービスのアプリ画面の表示要求を、Ｗｅｂサービス処理部１２０の画面構成部１２１に送信する（ステップＳ１６０２）。スキャン翻訳サービスのアプリ画面の表示要求には、スキャン翻訳サービスを提供するアプリ情報１０００のアプリＩＤが含まれる。
【０１７０】
Ｗｅｂサービス処理部１２０の画面構成部１２１は、スキャン翻訳サービスのアプリ画面の表示要求を受信すると、アプリ設定の取得要求を、入出力サービス処理部１１０のアプリ管理部１１１に送信する（ステップＳ１６０３）。アプリ設定の取得要求には、スキャン翻訳サービスを提供するアプリ情報１０００のアプリＩＤが含まれる。
【０１７１】
入出力サービス処理部１１０のアプリ管理部１１１は、アプリ設定の取得要求を受信すると、当該取得要求に含まれるアプリＩＤに関連付けて記憶されているアプリ設定情報１２００をアプリ情報記憶部１５０から取得する（ステップＳ１６０４）。そして、アプリ管理部１１１は、アプリ情報記憶部１５０から取得したアプリ設定情報１２００を画面構成部１２１に返信する。
【０１７２】
次に、Ｗｅｂサービス処理部１２０の画面構成部１２１は、スキャン翻訳サービスを提供するアプリ情報１０００のアプリＩＤと関連付けて記憶されているアプリ画面情報２０００をアプリ画面情報記憶部１６０から取得する（ステップＳ１６０５）。そして、画面構成部１２１は、アプリ画面情報記憶部１６０から取得したアプリ画面情報２０００と、上記のステップＳ１６０４で返信されたアプリ設定情報１２００とをブラウザ２１０に返信する。
【０１７３】
機器２０のブラウザ２１０は、画面構成部１２１から受信したアプリ画面情報２０００とアプリ設定情報１２００とに基づいて、例えば図１７に示すアプリ画面Ｇ７００を表示する（ステップＳ１６０６）。ここで、図１７に示すアプリ画面Ｇ７００は、機器２０のユーザがスキャン翻訳サービスを利用するための画面である。
【０１７４】
図１７に示すアプリ画面Ｇ７００は、アプリ名Ｇ７１０と、パラメータ入力エリアＧ７２０と、「スタート」ボタンＧ７３０と、を含む。また、パラメータ入力エリアＧ７２０は、翻訳元言語入力欄Ｇ７２１と、翻訳先言語入力欄Ｇ７２２と、メール送信先入力欄Ｇ７２３と、を含む。
【０１７５】
アプリ名Ｇ７１０は、図１５に示すアプリ設定情報１２００のアプリ表示名１２０３に基づいて表示される。また、アプリ表示名１２０３に複数の言語のアプリケーション名称（タイトル）が定義されている場合、ブラウザ２１０の言語設定に対応する言語のアプリケーション名称がアプリ名Ｇ７１０に表示される。
【０１７６】
また、翻訳元言語入力欄Ｇ７２１、翻訳先言語入力欄Ｇ７２２、およびメール送信先入力欄Ｇ７２３は、図１５に示すアプリ設定情報１２００のユーザ入力パラメータ１２０８に基づいて表示される。
【０１７７】
すなわち、翻訳元言語入力欄Ｇ７２１は、ユーザ入力パラメータ１２０８の入力定義１２１８に基づいて表示される。同様に、翻訳先言語入力欄Ｇ７２２は、ユーザ入力パラメータ１２０８の入力定義１２２８に基づいて表示される。また、同様に、メール送信先入力欄Ｇ７２３は、ユーザ入力パラメータ１２０８の入力定義１２３８に基づいて表示される。
【０１７８】
このように、機器２０のユーザがサービスを利用するためのアプリ画面には、アプリ設定情報１２００に定義されている情報に基づいて、アプリ名およびパラメータ入力エリアが表示される。
【０１７９】
ここで、図１７に示すアプリ画面Ｇ７００において、ユーザは、翻訳元言語入力欄Ｇ７２１に「Ｅｎｇｌｉｓｈ」、翻訳先言語入力欄Ｇ７２２に「Ｊａｐａｎｅｓｅ」、およびメール送信先入力欄Ｇ７２３に「ａｂｃ＠ａｂｃ．ｃｏ．ｊｐ」を入力したものとする。そして、図１７に示すアプリ画面Ｇ７００において、ユーザは、「スタート」ボタンＧ７３０を押下する操作（実行操作）を行ったものとする。
【０１８０】
すると、機器２０のブラウザ２１０は、実行操作を受け付ける（ステップＳ１６０７）。そして、機器２０のブラウザ２１０は、スキャナ２６を制御して、原稿を読み取ることで、電子ファイル（画像ファイル）を生成する（ステップＳ１６０８）。
【０１８１】
機器２０のブラウザ２１０は、電子ファイル（画像ファイル）が生成されると、アプリケーションの実行要求を、Ｗｅｂサービス処理部１２０のアプリ実行部１２２に送信する（ステップＳ１６０９）。アプリケーションの実行要求には、アプリ設定情報１２００のフロー名１２０５に定義されたフロー名「ｔｒａｎｓｌａｔｅ−ｍａｉｌ」と、上記のステップＳ１６０８で生成された電子ファイルと、パラメータ設定情報とが含まれる。
【０１８２】
ここで、パラメータ設定情報とは、アプリ設定情報１２００のデフォルトパラメータ１２０７に定義されているパラメータ情報、およびユーザによりアプリ画面Ｇ７００でパラメータ値が設定されたパラメータ情報である。
【０１８３】
具体的には、デフォルトパラメータ１２０７に定義されているパラメータ情報は、「"ｌａｎｇｕａｇｅ"："Ｅｎｇｌｉｓｈ"」である。また、ユーザによりアプリ画面Ｇ７００でパラメータ値が設定されたパラメータ情報は、「"ｆｒｏｍ"："Ｅｎｇｌｉｓｈ"」、「"ｔｏ"："Ｊａｐａｎｅｓｅ"」、および「"ａｄｄｒｅｓｓ"："ａｂｃ＠ａｂｃ．ｃｏ．ｊｐ"」である。
【０１８４】
Ｗｅｂサービス処理部１２０のアプリ実行部１２２は、アプリケーションの実行要求を受信すると、当該実行要求を、入出力サービス処理部１１０のロジック処理部１１２に送信する（ステップＳ１６１０）。
【０１８５】
次に、入出力サービス処理部１１０のロジック処理部１１２は、アプリケーションの実行要求を受信すると、処理フローの実行処理を行う（ステップＳ１６１１）。すなわち、ロジック処理部１１２は、当該要求に含まれるフロー名の処理フロー情報１１００に基づく一連の処理を実行する。なお、処理フローの実行処理の詳細については後述する。
【０１８６】
そして、ロジック処理部１１２は、処理フローの実行処理の処理結果を、Ｗｅｂサービス処理部１２０を介して、ブラウザ２１０に返信する。これにより、本実施形態に係るサービス提供システム１０は、スキャン翻訳サービスを提供することができる。
【０１８７】
図１８は、スキャン翻訳サービスを実現する処理フローの実行処理の一例を示すシーケンス図である。図１８を参照しながら、処理フローの実行処理（図１６のステップＳ１６１１の処理）の詳細について説明する。
【０１８８】
まず、フロー実行部３０１は、アプリ実行部１２２からアプリケーションの実行要求を受信すると、処理フローの取得要求をアプリ管理部１１１に送信する（ステップＳ１８０１）。当該取得要求には、フロー名「ｔｒａｎｓｌａｔｅ−ｍａｉｌ」が含まれる。
【０１８９】
アプリ管理部１１１は、処理フローの取得要求を受信すると、当該取得要求に含まれるフロー名「ｔｒａｎｓｌａｔｅ−ｍａｉｌ」の処理フロー情報１１００をアプリ情報記憶部１５０から取得する（ステップＳ１８０２）。そして、アプリ管理部１１１は、アプリ情報記憶部１５０から取得した処理フロー情報１１００をフロー実行部３０１に返信する。
【０１９０】
ここで、以降では、アプリ管理部１１１は、図７に示す処理フロー情報１１００をフロー実行部３０１に返信したものとして説明する。
【０１９１】
次に、フロー実行部３０１は、処理フロー情報１１００に基づくコンポーネントの取得要求をコンポーネント管理部３０２に送信する（ステップＳ１８０３）。
【０１９２】
すなわち、フロー実行部３０１は、図７に示す処理フロー情報１１００の詳細処理定義１１１０に含まれる「"ｃｏｍｐｏｎｅｎｔ"」に定義されているコンポーネント名「"ｏｃｒ"」のコンポーネントの取得要求をコンポーネント管理部３０２に送信する。
【０１９３】
コンポーネント管理部３０２は、コンポーネントの取得要求を受信すると、コンポーネント名「"ｏｃｒ"」のコンポーネント（すなわち、ＯＣＲコンポーネント１３１０）を生成する（ステップＳ１８０４）。なお、ＯＣＲコンポーネント１３１０の生成は、コンポーネント共通Ｉ／Ｆ１３００に定義されたコンポーネントを生成するためのＡＰＩを用いて行うことができる。
【０１９４】
そして、コンポーネント管理部３０２は、生成したＯＣＲコンポーネント１３１０をフロー実行部３０１に返信する。すなわち、コンポーネント管理部３０２は、例えば、ＯＣＲコンポーネント１３１０が展開されたメモリ（例えばＲＡＭ１２）上のアドレスをフロー実行部３０１に返信する。
【０１９５】
次に、フロー実行部３０１は、コンポーネント実行要求をＯＣＲコンポーネント１３１０に送信する（ステップＳ１８０５）。当該実行要求には、データと、パラメータ情報とが含まれる。
【０１９６】
ここで、データは、データ型「ＩｎｐｕｔＳｔｒｅａｍ」として、ブラウザ２１０から受信した電子ファイルである。すなわち、フロー実行部３０１は、ブラウザ２１０から受信した電子ファイルを、単に「データ」として（データ型を意識することなく）、ＯＣＲコンポーネント１３１０に渡して処理の実行を要求する。本実施形態では、このようにデータ型を意識しない電子ファイル等の各種の情報を、単に「データ」と表す。
【０１９７】
また、パラメータ情報は、図７に示す処理フロー情報１１００の詳細処理定義１１１０に含まれる「"ｐａｒａｍｅｔｅｒｓ"」に定義されている各パラメータ情報のパラメータ値に、パラメータ設定情報の各パラメータ値を設定したものである。すなわち、パラメータ情報は、「"ｌａｎｇｕａｇｅ"："Ｅｎｇｌｉｓｈ"」等である。
【０１９８】
ＯＣＲコンポーネント１３１０は、コンポーネント実行要求を受信すると、型変換要求を型変換管理部３０４に送信する（ステップＳ１８０６）。当該型変換要求には、データと、ＯＣＲコンポーネント１３１０が扱うことができるデータ型を示す「ＬｏｃａｌＦｉｌｅＰａｔｈ」の指定とが含まれる。
【０１９９】
型変換管理部３０４は、型変換要求を受信すると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする（ステップＳ１８０７）。
【０２００】
ここで、型変換要求に含まれるデータのデータ型は「ＩｎｐｕｔＳｔｒｅａｍ」である一方、指定されたデータ型は「ＬｏｃａｌＦｉｌｅＰａｔｈ」である。したがって、型変換管理部３０４は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致しないものと判断する。
【０２０１】
すると、型変換管理部３０４は、型変換情報テーブル４０００を参照して、データ型「ＩｎｐｕｔＳｔｒｅａｍ」を「ＬｏｃａｌＦｉｌｅＰａｔｈ」に変換するための型変換を特定する（ここでは、第１の型変換１４１０が特定される。）。そして、型変換管理部３０４は、特定した第１の型変換１４１０を生成する（ステップＳ１８０８）。第１の型変換１４１０の生成は、型変換共通Ｉ／Ｆ１４００を用いて行うことができる。
【０２０２】
次に、型変換管理部３０４は、型変換処理の実行要求を第１の型変換１４１０に送信する（ステップＳ１８０９）。当該実行要求には、データが含まれる。
【０２０３】
第１の型変換１４１０は、型変換の実行要求を受信すると、当該実行要求に含まれるデータのデータ型を「ＩｎｐｕｔＳｔｒｅａｍ」から「ＬｏｃａｌＦｉｌｅＰａｔｈ」に変換する型変換処理を行う（ステップＳ１８１０）。そして、第１の型変換１４１０は、データ型が変換されたデータを型変換管理部３０４に返信する。
【０２０４】
そして、型変換管理部３０４は、第１の型変換１４１０からデータを受信すると、当該データをＯＣＲコンポーネント１３１０に送信する（ステップＳ１８１１）。
【０２０５】
ＯＣＲコンポーネント１３１０は、型変換管理部３０４からデータを受信すると、パラメータ情報を用いて、データに対して処理を実行する（ステップＳ１８１２）。
【０２０６】
すなわち、ＯＣＲコンポーネント１３１０は、ＯＣＲ処理部１３１により、パラメータ情報「"ｌａｎｇｕａｇｅ"："Ｅｎｇｌｉｓｈ"」を用いて、データにより示される電子ファイルに対して、英語でＯＣＲ処理を行う。
【０２０７】
そして、ＯＣＲコンポーネント１３１０は、ＯＣＲ処理後の電子ファイル（すなわち、テキストファイル）を示すデータをフロー実行部３０１に返信する。
【０２０８】
次に、フロー実行部３０１は、処理フロー情報１１００に基づくコンポーネントの取得要求をコンポーネント管理部３０２に送信する（ステップＳ１８１３）。
【０２０９】
すなわち、フロー実行部３０１は、図７に示す処理フロー情報１１００の詳細処理定義１１２０に含まれる「"ｃｏｍｐｏｎｅｎｔ"」に定義されているコンポーネント名「"ｔｒａｎｓｌａｔｉｏｎ"」のコンポーネントの取得要求をコンポーネント管理部３０２に送信する。
【０２１０】
コンポーネント管理部３０２は、コンポーネントの取得要求を受信すると、コンポーネント名「"ｔｒａｎｓｌａｔｉｏｎ"」のコンポーネント（すなわち、翻訳コンポーネント１３２０）を生成する（ステップＳ１８１４）。翻訳コンポーネント１３２０の生成は、コンポーネント共通Ｉ／Ｆ１３００に定義されたコンポーネントを生成するためのＡＰＩを用いて行うことができる。
【０２１１】
そして、コンポーネント管理部３０２は、生成した翻訳コンポーネント１３２０をフロー実行部３０１に返信する。すなわち、コンポーネント管理部３０２は、例えば、翻訳コンポーネント１３２０が展開されたメモリ（例えばＲＡＭ１２）上のアドレスをフロー実行部３０１に返信する。
【０２１２】
次に、フロー実行部３０１は、コンポーネント実行要求を翻訳コンポーネント１３２０に送信する（ステップＳ１８１５）。当該実行要求には、データと、パラメータ情報とが含まれる。
【０２１３】
ここで、データは、ＯＣＲコンポーネント１３１０から返信されたデータ（すなわち、ＯＣＲ処理後の電子ファイルを示すパス）である。
【０２１４】
また、パラメータ情報は、図７に示す処理フロー情報１１００の詳細処理定義１１２０に含まれる「"ｐａｒａｍｅｔｅｒｓ"」に定義されている各パラメータ情報のパラメータ値に、パラメータ設定情報の各パラメータ値を設定したものである。すなわち、パラメータ情報は、「"ｆｒｏｍ"："Ｅｎｇｌｉｓｈ"」、および「"ｔｏ"："Ｊａｐａｎｅｓｅ"」等である。
【０２１５】
翻訳コンポーネント１３２０は、コンポーネント実行要求を受信すると、型変換要求を型変換管理部３０４に送信する（ステップＳ１８１６）。当該型変換要求には、データと、翻訳コンポーネント１３２０が扱うことができるデータ型を示す「ＬｏｃａｌＦｉｌｅＰａｔｈ」の指定とが含まれる。
【０２１６】
型変換管理部３０４は、型変換要求を受信すると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする（ステップＳ１８１７）。
【０２１７】
ここで、型変換要求に含まれるデータのデータ型は「ＬｏｃａｌＦｉｌｅＰａｔｈ」であり、指定されたデータ型も「ＬｏｃａｌＦｉｌｅＰａｔｈ」である。したがって、型変換管理部３０４は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するものと判断する。
【０２１８】
すると、型変換管理部３０４は、型変換要求に含まれるデータを翻訳コンポーネント１３２０に送信する（ステップＳ１８１８）。このように、データ型のチェック（ステップＳ１８１７の処理）において、データのデータ型と、指定されたデータ型とが一致すると判断された場合には、型変換管理部３０４は、型変換の生成を行わない。
【０２１９】
翻訳コンポーネント１３２０は、型変換管理部３０４からデータを受信すると、パラメータ情報を用いて、データに対して処理を実行する（ステップＳ１８１９）。すなわち、翻訳コンポーネント１３２０は、パラメータ情報「"ｆｒｏｍ"："Ｅｎｇｌｉｓｈ"」および「"ｔｏ"："Ｊａｐａｎｅｓｅ"」を用いて、データにより示される電子ファイルを英語から日本語に翻訳する処理を行う。
【０２２０】
そして、翻訳コンポーネント１３２０は、翻訳処理後の電子ファイルを示すデータをフロー実行部３０１に返信する。
【０２２１】
なお、翻訳コンポーネント１３２０は、例えば、サービス提供システム１０とネットワークを介して接続される翻訳サーバ等に翻訳処理を要求することにより、電子ファイルの翻訳を行ってもよい。
【０２２２】
次に、フロー実行部３０１は、処理フロー情報１１００に基づくコンポーネントの取得要求をコンポーネント管理部３０２に送信する（ステップＳ１８２０）。
【０２２３】
すなわち、フロー実行部３０１は、図７に示す処理フロー情報１１００の詳細処理定義１１３０に含まれる「"ｃｏｍｐｏｎｅｎｔ"」に定義されているコンポーネント名「"ｍａｉｌ"」のコンポーネントの取得要求をコンポーネント管理部３０２に送信する。
【０２２４】
コンポーネント管理部３０２は、コンポーネントの取得要求を受信すると、コンポーネント名「"ｍａｉｌ"」のコンポーネント（すなわち、メール配信コンポーネント１３３０）を生成する（ステップＳ１８２１）。なお、メール配信コンポーネント１３３０の生成は、コンポーネント共通Ｉ／Ｆ１３００に定義されたコンポーネントを生成するためのＡＰＩを用いて行うことができる。
【０２２５】
そして、コンポーネント管理部３０２は、生成したメール配信コンポーネント１３３０をフロー実行部３０１に返信する。すなわち、コンポーネント管理部３０２は、例えば、メール配信コンポーネント１３３０が展開されたメモリ（例えばＲＡＭ１２）上のアドレスをフロー実行部３０１に返信する。
【０２２６】
次に、フロー実行部３０１は、コンポーネント実行要求をメール配信コンポーネント１３３０に送信する（ステップＳ１８２２）。当該実行要求には、データと、パラメータ情報とが含まれる。
【０２２７】
ここで、データは、翻訳コンポーネント１３２０から返信されたデータ（すなわち、翻訳後の電子ファイルを示すパス）である。
【０２２８】
また、パラメータ情報は、図７に示す処理フロー情報１１００の詳細処理定義１１３０に含まれる「"ｐａｒａｍｅｔｅｒｓ"」に定義されている各パラメータ情報のパラメータ値に、パラメータ設定情報の各パラメータ値を設定したものである。すなわち、パラメータ情報は、「"ａｄｄｒｅｓｓ"："ａｂｃ＠ａｂｃ．ｃｏ．ｊｐ"」等である。
【０２２９】
メール配信コンポーネント１３３０は、コンポーネント実行要求を受信すると、型変換要求を型変換管理部３０４に送信する（ステップＳ１８２３）。当該型変換要求には、データと、メール配信コンポーネント１３３０が扱うことができるデータ型を示す「ＬｏｃａｌＦｉｌｅＰａｔｈ」の指定とが含まれる。
【０２３０】
型変換管理部３０４は、型変換要求を受信すると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする（ステップＳ１８２４）。
【０２３１】
ここで、型変換要求に含まれるデータのデータ型は「ＬｏｃａｌＦｉｌｅＰａｔｈ」であり、指定されたデータ型も「ＬｏｃａｌＦｉｌｅＰａｔｈ」である。したがって、型変換管理部３０４は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するものと判断する。
【０２３２】
すると、型変換管理部３０４は、型変換要求に含まれるデータをメール配信コンポーネント１３３０に送信する（ステップＳ１８２５）。このように、データ型のチェック（ステップＳ１８２４の処理）において、データのデータ型と、指定されたデータ型とが一致すると判断された場合には、型変換管理部３０４は、型変換の生成を行わない。
【０２３３】
メール配信コンポーネント１３３０は、型変換管理部３０４からデータを受信すると、パラメータ情報を用いて、データに対して処理を実行する（ステップＳ１８２６）。
【０２３４】
すなわち、メール配信コンポーネント１３３０は、メール配信部１３２により、データにより示される電子ファイルを添付したメールを作成する。次に、メール配信コンポーネント１３３０は、パラメータ情報「"ａｄｄｒｅｓｓ"："ａｂｃ＠ａｂｃ．ｃｏ．ｊｐ"」を用いて、メール配信部１３２により、当該メールを「ａｂｃ＠ａｂｃ．ｃｏ．ｊｐ」宛に送信する。
【０２３５】
そして、メール配信コンポーネント１３３０は、メールの送信結果を示すデータをフロー実行部３０１に返信する。
【０２３６】
以上により、図７に示す処理フロー情報１１００に基づく一連の処理（処理フロー）の実行が完了する。これにより、本実施形態に係るサービス提供システム１０は、機器２０に対して、スキャン翻訳サービスを提供することができる。
【０２３７】
以上のように、本実施形態に係る情報処理システム１では、ユーザがＰＣ端末３０を用いて、各種サービスを提供するアプリ情報１０００をサービス提供システム１０に登録することができる。しかも、本実施形態に係る情報処理システム１では、ユーザがＰＣ端末３０を用いて、フロー名を選択した上で、必要なパラメータ情報等を設定することで、容易にアプリ情報１０００を登録することができる。
【０２３８】
したがって、本実施形態に係る情報処理システム１では、例えば、プログラミング言語等の専門的な知識および経験を有しないユーザであっても、容易にアプリケーション（アプリ情報１０００）の作成・登録を行うことができる。
【０２３９】
また、本実施形態に係る情報処理システム１では、ユーザが機器２０を用いて、サービス提供システム１０に登録されたアプリケーションにより提供される各種サービスを利用することができる。
【０２４０】
［第２の実施形態］
第２の実施形態に係る情報処理システムについて、第１の実施形態に係る情報処理システム１と相違する点を中心に説明する。第１の実施形態では、スキャン翻訳アプリケーションの登録および実行の処理について説明した。本実施形態では、ユーザが所望するドキュメントを取得して印刷するアプリケーションについての処理フローの設定および当該アプリケーションの動作について説明する。
【０２４１】
なお、本実施形態に係る情報処理システムを「情報処理システム１ａ」と称するものとし、情報処理システム１ａは、後述する図１９に示すように、サービス提供システム１０ａと、機器２０と、ＰＣ端末３０とを含み、インターネット等の広域的なネットワークＮ１を介して通信可能に接続されている。また、本実施形態に係るサービス提供システム１０ａのハードウェア構成は、上述の第１の実施形態のサービス提供システム１０のハードウェア構成と同様である。また、本実施形態に係る機器２０およびＰＣ端末３０のハードウェア構成も、上述の第１の実施形態と同様である。
【０２４２】
（サービス提供システムが提供するサービス）
ここで、本実施形態に係るサービス提供システム１０ａが提供するサービスについて説明する。なお、以降では、機器２０がＭＦＰであるものとして説明する。
【０２４３】
本実施形態では、サービス提供システム１０ａによりユーザが所望するドキュメント（ファイル）を取得した上で、当該ドキュメントの印刷処理を行うサービスを「取得ドキュメント印刷サービス」と称するものとする。そして、本実施形態では、サービス提供システム１０ａが取得ドキュメント印刷サービスを提供する場合について説明する。
【０２４４】
ここで、サービス提供システム１０ａが取得ドキュメント印刷サービスを提供するには、機器２０が取得ドキュメント印刷サービスを利用するためのアプリケーション（アプリ情報１０００）の処理フローの設定および当該アプリケーションの登録をサービス提供システム１０ａにて行う必要がある。
【０２４５】
したがって、本実施形態では、取得ドキュメント印刷サービスを利用するためのアプリケーションの処理フローの設定および当該アプリケーションの登録をＰＣ端末３０が行う場合と、当該アプリケーションを用いて取得ドキュメント印刷サービスを機器２０が利用する場合とについて説明する。
【０２４６】
（情報処理システムの機能構成）
図１９は、第２の実施形態に係る情報処理システムの機能構成の一例を示す図である。図１９を参照しながら、本実施形態に係る情報処理システム１ａの機能構成について、上述の第１の実施形態に係る情報処理システム１の機能構成と相違する点を中心に説明する。
【０２４７】
図１９に示すＰＣ端末３０（情報処理装置の一例）は、例えばＣＰＵ１１等により実行されるブラウザ３１０を有する。ＰＣ端末３０のユーザは、ブラウザ３１０を用いて、「取得ドキュメント印刷サービス」等の各種サービスを利用するためのアプリケーションをサービス提供システム１０ａに登録することができる。
【０２４８】
図１９に示す機器２０（電子機器の一例）は、例えばＣＰＵ３１等により実行されるブラウザ２１０を有する。機器２０のユーザは、ブラウザ２１０を用いて、「取得ドキュメント印刷サービス」等の各種サービスを利用することができる。すなわち、機器２０は、ブラウザ２１０を有していればよく、例えば、サービス提供システム１０ａが提供する各種サービスを利用するための専用のアプリケーションプログラム等を有している必要はない。
【０２４９】
図１９に示すサービス提供システム１０ａは、入出力サービス処理部１１０ａと、Ｗｅｂサービス処理部１２０と、ドキュメントサービス部１３０ａと、ポータルサービス部１４０ａとを有する。これら各機能部は、サービス提供システム１０ａにインストールされた１以上のプログラムが、ＣＰＵ１１に実行させる処理により実現される。なお、Ｗｅｂサービス処理部１２０の構成および機能は、第１の実施形態と同様である。
【０２５０】
また、サービス提供システム１０ａは、アプリ情報記憶部１５０（アプリ記憶手段）と、アプリ画面情報記憶部１６０（利用画面記憶手段）と、ポータル画面情報記憶部１７０とを有する。これら各記憶部は、補助記憶装置１４を用いて実現可能である。なお、アプリ情報記憶部１５０、アプリ画面情報記憶部１６０およびポータル画面情報記憶部１７０の構成および機能は、第１の実施形態と同様である。
【０２５１】
入出力サービス処理部１１０ａは、サービス提供システム１０ａが提供するサービスに関する処理を行う。ここで、入出力サービス処理部１１０ａは、アプリ管理部１１１と、ロジック処理部１１２と、フロー管理部１１３とを有する。
【０２５２】
アプリ管理部１１１は、アプリ情報記憶部１５０に記憶されているアプリ情報１０００を管理する。
【０２５３】
ロジック処理部１１２は、Ｗｅｂサービス処理部１２０からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００（設定情報の一例）をフロー管理部１１３から取得する。そして、ロジック処理部１１２は、フロー管理部１１３から取得した処理フロー情報１１００に基づいて、当該アプリ情報１０００が提供するサービスを実現する一連の処理（処理フロー）を実行する。これにより、本実施形態に係るサービス提供システム１０ａは、「取得ドキュメント印刷サービス」等の各種サービスを提供することができる。
【０２５４】
なお、ロジック処理部１１２の機能構成は、第１の実施形態で説明した構成に準じるが、例えば、ＯＣＲコンポーネント１３１０等と同様に、コンポーネント群３０３には、取得部１３３に取得処理の要求をするためのコンポーネントが含まれる。
【０２５５】
フロー管理部１１３は、アプリ情報記憶部１５０に記憶されている処理フロー情報１１００を管理する。また、フロー管理部１１３は、ロジック処理部１１２からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００を返信する。
【０２５６】
ドキュメントサービス部１３０ａは、処理フロー情報１１００に基づく一連の処理（処理フロー）に含まれる所定の処理を実行する。ここで、ドキュメントサービス部１３０ａは、ＯＣＲ処理部１３１と、メール配信部１３２と、取得部１３３（取得手段）と、を有する。
【０２５７】
ＯＣＲ処理部１３１は、電子ファイルに対してＯＣＲ処理を行う。メール配信部１３２は、電子ファイルを添付したメールを作成して、当該メールを指定されたメールアドレス宛に配信する。取得部１３３は、ロジック処理部１１２の指令に従って、外部データソースからドキュメント（ファイル）（電子データの一例）を取得する。例えば、取得部１３３は、外部データソースからドキュメントを取得するために、図１９に示すように、外部の顧客情報記憶部１８０およびドキュメント記憶部１９０を参照する。
【０２５８】
顧客情報記憶部１８０は、顧客情報１８１０と、案件名情報１８２０と、を記憶する。顧客情報１８１０は、ユーザ（情報処理システム１ａにログインするユーザ）と、当該ユーザが担当する顧客とを関連付けた情報である。案件名情報１８２０は、顧客と、当該顧客に属する案件の案件名とを関連付けた情報である。
【０２５９】
ドキュメント記憶部１９０は、印刷対象となる各種ドキュメント（ファイル）を記憶する。なお、記憶されているドキュメントは、当該ドキュメントが属する案件の案件名と関連付けて記憶されているものとしてもよい。
【０２６０】
ポータルサービス部１４０ａは、ユーザがＰＣ端末３０のブラウザ３１０を用いて処理フローの設定（登録）およびアプリケーションの登録等を行うための処理を行う。ここで、ポータルサービス部１４０ａは、ＵＩ提供部１４１と、アプリ登録部１４２と、フロー登録部１４３（登録手段）と、を有する。
【０２６１】
ＵＩ提供部１４１は、ブラウザ３１０からの要求に応じて、ポータル画面情報記憶部１７０に記憶されているポータル画面情報３０００を返信する。
【０２６２】
これにより、ＰＣ端末３０には、ブラウザ３１０により、ポータルトップ画面、処理フロー登録画面およびアプリケーション登録画面等が表示される。したがって、ＰＣ端末３０のユーザは、処理フロー登録画面において、処理フロー（処理フロー情報１１００）の登録操作、および、アプリケーション登録画面において、アプリケーション（アプリ情報１０００）の登録操作を行うことができる。
【０２６３】
アプリ登録部１４２は、ＵＩ提供部１４１からの要求に応じて、アプリケーション（アプリ情報１０００）の登録をアプリ管理部１１１に要求する。すなわち、アプリ登録部１４２は、アプリケーション登録画面において、アプリケーションの登録操作が行われると、アプリケーションの登録をアプリ管理部１１１に要求する。
【０２６４】
フロー登録部１４３は、ＵＩ提供部１４１からの要求に応じて、処理フロー（処理フロー情報１１００）の登録をフロー管理部１１３に要求する。すなわち、フロー登録部１４３は、処理フロー登録画面において、処理フローの登録操作が行われると、処理フローの登録をフロー管理部１１３に要求する。
【０２６５】
以降では、取得ドキュメント印刷サービスを提供するアプリ情報１０００を「取得ドキュメント印刷アプリケーション」とも表す。
【０２６６】
なお、入出力サービス処理部１１０ａ、Ｗｅｂサービス処理部１２０、ドキュメントサービス部１３０ａ、およびポータルサービス部１４０ａ等は、それぞれが異なる情報処理装置により実現されていてもよい。
【０２６７】
また、取得ドキュメント印刷サービスを提供するアプリ情報１０００に含まれる処理フロー情報１１００の構成は、上述の図７に示した処理フロー情報１１００の構成に準じたものとなる。例えば、処理フローに含まれる各処理内容が定義されたフロー詳細１１０２には、ドキュメントの取得処理の詳細を定義した詳細処理定義と、印刷処理の詳細を定義した詳細処理定義とが含まれる。これらの詳細処理定義は、上述したように、詳細処理定義を識別する詳細処理名を示す「"ｄｅｔａｉｌＮａｍｅ"」と、処理を実行するためのコンポーネントのコンポーネント名を示す「"ｃｏｍｐｏｎｅｎｔ"」と、当該コンポーネントに対するパラメータ情報が定義される「"ｐａｒａｍｅｔｅｒｓ"」とを含む。
【０２６８】
（情報処理システムの処理の詳細）
図２０は、処理フローの登録処理の一例を示すシーケンス図である。図２０を参照しながら、本実施形態に係る情報処理システム１ａの処理の詳細について説明する。まず、図２０を参照しながら、ＰＣ端末３０のユーザが、取得ドキュメントアプリケーションに適用される処理フローを登録する処理について説明する。
【０２６９】
まず、ＰＣ端末３０のブラウザ３１０は、ポータルトップ画面を表示させるための操作
（ポータルトップ画面の表示操作）を受け付ける（ステップＳ９０１）。なお、ＰＣ端末３０のユーザは、例えば、ポータルトップ画面のＵＲＬをブラウザ３１０のアドレスバーに入力することで、ポータルトップ画面の表示操作を行うことができる。
【０２７０】
ＰＣ端末３０のブラウザ３１０は、ポータルトップ画面の表示操作を受け付けると、ポータルトップ画面の表示要求を、ポータルサービス部１４０ａのＵＩ提供部１４１に送信する（ステップＳ９０２）。
【０２７１】
ポータルサービス部１４０ａのＵＩ提供部１４１は、ポータルトップ画面の取得要求を受信すると、ポータルトップ画面のポータル画面情報をポータル画面情報記憶部１７０から取得する（ステップＳ９０３）。そして、ＵＩ提供部１４１は、ポータル画面情報記憶部１７０から取得したポータル画面情報をブラウザ３１０に返信する。
【０２７２】
ＰＣ端末３０のブラウザ３１０は、ポータルトップ画面のポータル画面情報を受信すると、当該ポータル画面情報に基づいて、例えば上述した図９に示すポータルトップ画面Ｇ１００を表示する（ステップＳ９０４）。
【０２７３】
図９に示すポータルトップ画面Ｇ１００は、ポータルのトップ画面であり、上述したように、アプリケーションの登録を行うための「Ａｐｐｌｉｃａｔｉｏｎ」ボタンＧ１１０と、処理フロー情報１１００の作成等を行うための「Ｆｌｏｗ」ボタンＧ１２０と、コンポーネントの登録等を行うための「Ｃｏｍｐｏｎｅｎｔ」ボタンＧ１３０と、を含む。以降では、ユーザが、図９に示すポータルトップ画面Ｇ１００において、「Ｆｌｏｗ」ボタンＧ１２０を選択する操作（処理フロー登録の選択操作）を行ったものとする。
【０２７４】
ＰＣ端末３０のブラウザ３１０は、ユーザにより行われた処理フロー登録の選択操作を受け付ける（ステップＳ９０５）。
【０２７５】
ＰＣ端末３０のブラウザ３１０は、処理フロー登録の選択操作を受け付けると、処理フロー登録画面の表示要求を、ポータルサービス部１４０ａのＵＩ提供部１４１に送信する（ステップＳ９０６）。
【０２７６】
ポータルサービス部１４０ａのＵＩ提供部１４１は、処理フロー登録画面の表示要求を受信すると、処理フロー登録画面のポータル画面情報をポータル画面情報記憶部１７０から取得する（ステップＳ９０７）。そして、ＵＩ提供部１４１は、ポータル画面情報記憶部１７０から取得したポータル画面情報をブラウザ３１０に返信する。
【０２７７】
ＰＣ端末３０のブラウザ３１０は、処理フロー登録画面のポータル画面情報を受信すると、当該ポータル画面情報に基づいて、例えば図２１に示す処理フロー登録画面Ｇ１０００を表示する（ステップＳ９０８）。
【０２７８】
ここで、以降では、図２１〜図３２を参照しながら、ユーザが処理フローの設定操作（ステップＳ９０９）を行う場合について説明する。
【０２７９】
まず、図２１に示す処理フロー登録画面Ｇ１０００は、ユーザが登録するアプリケーションのタイプを選択するための画面である。
【０２８０】
図２１に示す処理フロー登録画面Ｇ１０００は、既に登録された処理フローの一覧を示す処理フロー一覧Ｇ１００１と、新たに処理フローを作成（登録）するための「追加」ボタンＧ１００２と、を含む。
【０２８１】
以降では、ユーザが、図２１に示す処理フロー登録画面Ｇ１０００において、「追加」ボタンＧ１００２を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２２に示す処理フロー基本設定画面Ｇ１１００を表示する。図２２に示す処理フロー基本設定画面Ｇ１１００は、ユーザが処理フローの基本情報を設定するための画面である。
【０２８２】
図２２に示す処理フロー情報１１００は、処理フローの名称を設定するための「処理フロー名」入力設定欄Ｇ１１０１と、処理フローの説明を設定するための「説明」入力設定欄Ｇ１１０２と、を含む。さらに、図２２に示す処理フロー基本設定画面Ｇ１１００は、入力した各種設定の内容をキャンセルするための「キャンセル」ボタンＧ１１０３と、次の画面に遷移するための「次へ」ボタンＧ１１０４と、を含む。
【０２８３】
以降では、ユーザが、図２２に示す処理フロー基本設定画面Ｇ１１００のように、処理フロー名の入力操作を行った上で、「次へ」ボタンＧ１１０４を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２３に示すアプリ設定情報１２００を表示する。
【０２８４】
図２３に示す処理フロー詳細設定画面Ｇ１２００は、ユーザが処理フローの詳細設定として、登録する処理フローの具体的な設定をするための画面である。
【０２８５】
図２３に示す処理フロー詳細設定画面Ｇ１２００は、新たな処理フローを設定するための「処理フロー設定」ボタンＧ１２０１を含む。
【０２８６】
以降では、ユーザが、「処理フロー設定」ボタンＧ１２０１を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２４に示す処理フロー設定画面Ｇ１３００を表示する。
【０２８７】
図２４に示す処理フロー設定画面Ｇ１３００は、登録する処理フローの具体的な構成および各処理の設定をするための画面である。
【０２８８】
図２４に示す処理フロー設定画面Ｇ１３００は、処理フローに含める各種コンポーネントの一覧であるコンポーネント一覧Ｇ１３０１と、処理フローに含められたコンポーネントの構成を示すコンポーネント構成部Ｇ１３０２と、コンポーネント構成部Ｇ１３０２に構成された内容で処理フローの構成を設定するための「フロー登録」ボタンＧ１３０３と、を含む。また、処理フロー設定画面Ｇ１３００では、登録する処理フローの名称を設定することができ、図２４に示す例では「ｇｅｔ−ｐｒｉｎｔ」と設定している。
【０２８９】
図２４に示す例では、外部データソースからドキュメントを取得するためのコンポーネントである「ｇｅｔＤａｔａＳｏｕｒｃｅ」が、コンポーネント一覧Ｇ１３０１からコンポーネント構成部Ｇ１３０２へ設定された例を示している。例えば、ユーザがコンポーネント一覧Ｇ１３０１に一覧表示されたコンポーネントのうちいずれかのコンポ―ネットをダブルクリック操作を行うことによって、当該コンポーネントがコンポーネント構成部Ｇ１３０２へ設定されるものとすればよい。
【０２９０】
以降では、ユーザが、図２４に示す処理フロー設定画面Ｇ１３００のように「ｇｅｔＤａｔａＳｏｕｒｃｅ」がコンポーネント構成部Ｇ１３０２へ設定された状態で、「フロー登録」ボタンＧ１３０３を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２５に示す処理フロー詳細設定画面Ｇ１４００を表示する。
【０２９１】
図２５に示す処理フロー詳細設定画面Ｇ１４００は、処理フロー設定画面Ｇ１３００において処理フローに含まれるように設定されたコンポーネントを示すコンポーネントアイコンＧ１４０１等を含む。
【０２９２】
以降では、ユーザが、コンポーネントアイコンＧ１４０１の選択操作（クリック操作またはダブルクリック操作等）を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２６に示すパラメータ設定画面Ｇ１５００を表示する。
【０２９３】
図２６に示すパラメータ設定画面Ｇ１５００は、処理フローに含まれるコンポーネントの具体的なパラメータを設定するための画面である。
【０２９４】
図２６に示すパラメータ設定画面Ｇ１５００は、外部データソースからドキュメントを選択するために設定された入力項目の入力設定一覧Ｇ１５０１を含む。図２６に示す例では、外部データソースからドキュメントを選択するために設定された入力項目として、当該入力項目（パラメータ）名が「ｃｕｓｔｏｍｅｒＮａｍｅ」、「ｃａｓｅＮａｍｅ」および「ｄｏｃＮａｍｅ」の３項目が入力設定一覧Ｇ１５０１に設定されている状態を示す。なお、図２６の例では入力項目として３項目が設定された状態を示しているが、これに限定されるものではなく、１以上の入力項目が設定できるものとしてよい。
【０２９５】
入力設定一覧Ｇ１５０１では、各パラメータをどのように表記させるかを示す「表記名」、ユーザによる入力を必須とするか否かを設定する「ユーザ入力」、ユーザによる入力の方法を設定する「入力タイプ」、および、外部データソースの参照設定を行う「外部データソース」の各種設定が可能となっています。図２６に示す例では、「表記名」の設定として、「ｃｕｓｔｏｍｅｒＮａｍｅ」については「担当顧客」、「ｃａｓｅＮａｍｅ」については「案件名」、および「ｄｏｃＮａｍｅ」については「ドキュメント」が設定されている。また、「ユーザ入力」の設定として、「ｃｕｓｔｏｍｅｒＮａｍｅ」、「ｃａｓｅＮａｍｅ」および「ｄｏｃＮａｍｅ」のいずれについても、「させる（必須）」が設定されている。また、「入力タイプ」の設定として、「ｃｕｓｔｏｍｅｒＮａｍｅ」、「ｃａｓｅＮａｍｅ」および「ｄｏｃＮａｍｅ」のいずれについても、「セレクトボックス」が設定されている。この「入力タイプ」の設定としては、「セレクトボックス」の他、例えば、「直接入力」等が挙げられる。また、「外部データベース」の参照設定として、「ｃｕｓｔｏｍｅｒＮａｍｅ」については「担当顧客リスト」、「ｃａｓｅＮａｍｅ」については「案件名リスト」、および「ｄｏｃＮａｍｅ」については「ドキュメントリスト」が設定されている。
【０２９６】
また、図２６に示すパラメータ設定画面Ｇ１５００は、パラメータ名が「ｃｕｓｔｏｍｅｒＮａｍｅ」の入力項目について参照設定を行うための「設定」ボタンＧ１５０２と、パラメータ名が「ｃａｓｅＮａｍｅ」の入力項目について参照設定を行うための「設定」ボタンＧ１５０３と、パラメータ名が「ｄｏｃＮａｍｅ」の入力項目について参照設定を行うための「設定」ボタンＧ１５０４と、を含む。なお、「設定」ボタンＧ１５０２〜Ｇ１５０４を押下した場合の参照設定については、図２８〜図３２で後述する。
【０２９７】
また、図２６に示すパラメータ設定画面Ｇ１５００は、入力設定一覧Ｇ１５０１に入力項目を追加するための「追加」ボタンＧ１５０５と、各入力項目について設定された内容で決定するための「設定」ボタンＧ１５０６と、を含む。
【０２９８】
以降では、ユーザが、「設定」ボタンＧ１５０６を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２７に示す処理フロー詳細設定画面Ｇ１６００を表示する。
【０２９９】
図２７に示す処理フロー詳細設定画面Ｇ１６００は、パラメータが設定された「ｇｅｔＤａｔａＳｏｒｃｅ」について表示順を設定するための表示順設定ボタンＧ１６０１を含む。
【０３００】
次に、図２８〜図３２を参照しながら、図２６に示したパラメータ設定画面Ｇ１５００における入力設定一覧Ｇ１５０１の各入力項目についての参照設定の操作について説明する。まず、パラメータ設定画面Ｇ１５００において、ユーザがパラメータ名「ｃｕｓｔｏｍｅｒＮａｍｅ」（以下、単にパラメータ「担当顧客」と称する場合がある）の参照設定をするために、「設定」ボタンＧ１５０２を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２８に示す外部データソース設定画面Ｇ１７００を表示する。
【０３０１】
図２８に示す外部データソース設定画面Ｇ１７００は、参照する外部データソースを設定するための外部データソース設定欄Ｇ１７０１と、参照するパラメータ（依存するパラメータ）を追加設定するための参照追加ボタンＧ１７０２と、を含む。図２８に示す外部データソース設定画面Ｇ１７００は、参照する外部データソースとして「担当顧客リスト」を参照する設定としている。ここで、「担当顧客リスト」は、図１９で上述した、ユーザ（情報処理システム１ａにログインするユーザ）と、当該ユーザが担当する顧客とを関連付ける顧客情報１８１０であるものとする。
【０３０２】
また、図２８に示す外部データソース設定画面Ｇ１７００は、当該外部データソース設定画面Ｇ１７００における参照設定の内容を確定するための「設定」ボタンＧ１７０３を含む。ユーザが「設定」ボタンＧ１７０３を押下すると、パラメータ「担当顧客」について外部データソースである「担当顧客リスト」（顧客情報１８１０）を参照する設定を確定し、ブラウザ３１０は、図２６に示すパラメータ設定画面Ｇ１５００を表示させる。
【０３０３】
次に、パラメータ設定画面Ｇ１５００において、ユーザがパラメータ名「ｃａｓｅＮａｍｅ」（以下、単にパラメータ「案件名」と称する場合がある）の参照設定をするために、「設定」ボタンＧ１５０３を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図２９に示す外部データソース設定画面Ｇ１７１０を表示する。
【０３０４】
図２９に示す外部データソース設定画面Ｇ１７１０は、参照する外部データソースを設定するための外部データソース設定欄Ｇ１７１１と、参照するパラメータ（依存するパラメータ）を追加設定するための参照追加ボタンＧ１７１４と、参照設定の内容を確定するための「設定」ボタンＧ１７１５と、を含む。図２９に示す外部データソース設定画面Ｇ１７１０は、参照する外部データソースとして「案件名リスト」を参照する設定としている。ここで、「案件名リスト」は、図１９で上述した、顧客と、当該顧客に属する案件の案件名とを関連付ける案件名情報１８２０であるものとする。
【０３０５】
ここで、図２９に示す外部データソース設定画面Ｇ１７１０において、ユーザが参照追加ボタンＧ１７１４を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図３０（ａ）に示すパラメータ参照設定画面Ｇ１７２０を表示する。
【０３０６】
図３０（ａ）に示すパラメータ参照設定画面Ｇ１７２０は、パラメータ「案件名」が依存するパラメータを設定するための画面である。図３０（ａ）に示すパラメータ参照設定画面Ｇ１７２０は、パラメータ「案件名」が依存するパラメータを入力する参照パラメータ入力欄Ｇ１７２１と、参照パラメータ入力欄Ｇ１７２１への入力候補となるパラメータをプルダウン表示させるためのプルダウンボタンＧ１７２２と、を含む。ユーザがプルダウンボタンＧ１７２２を押下すると、図３０（ａ）に示すように、参照パラメータ入力欄Ｇ１７２１への入力候補となるパラメータを一覧表示するプルダウンＧ１７２３が表示される。図３０（ａ）に示す例では、依存先のパラメータとして、パラメータ「案件名」以外のパラメータである「ｃｕｓｔｏｍｅｒＮａｍｅ」および「ｄｏｃＮａｍｅ」が表示されている。ここで、「ｃｕｓｔｏｍｅｒＮａｍｅ」を選択操作したものとすると、図３０（ｂ）に示すように、参照パラメータ入力欄Ｇ１７２１には「ｃｕｓｔｏｍｅｒＮａｍｅ」が入力される。パラメータ参照設定画面Ｇ１７２０は、さらに、参照パラメータ入力欄Ｇ１７２１に入力された依存先のパラメータの設定を確定させるための「設定」ボタンＧ１７２４を含む。
【０３０７】
ここで、図３０（ｂ）に示すパラメータ参照設定画面Ｇ１７２０において、ユーザが「設定」ボタンＧ１７２４を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、図２９に示すように、依存先となるパラメータの参照設定がなされたことを示す設定参照欄Ｇ１７１２と、当該参照設定を解除するための「参照設定解除」ボタンＧ１７１３と、を含む外部データソース設定画面Ｇ１７１０を表示する。図２９に示す外部データソース設定画面Ｇ１７１０では、パラメータ「案件名」が外部データソースとして「案件名リスト」を参照し、かつ、パラメータ「案件名」が参照（依存）するパラメータとしてパラメータ「担当顧客」が設定されている。
【０３０８】
ここで、図２９に示す外部データソース設定画面Ｇ１７１０において、ユーザが「設定」ボタンＧ１７１５を押下する操作を行ったものとする。すると、パラメータ「案件名」について外部データソースである「案件名リスト」（案件名情報１８２０）を参照し、かつ、パラメータ「案件名」が参照（依存）するパラメータをパラメータ「担当顧客」とする設定を確定し、ブラウザ３１０は、図２６に示すパラメータ設定画面Ｇ１５００を表示させる。
【０３０９】
次に、パラメータ設定画面Ｇ１５００において、ユーザがパラメータ名「ｄｏｃＮａｍｅ」（以下、単にパラメータ「ドキュメント」と称する場合がある）の参照設定をするために、「設定」ボタンＧ１５０４を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図３１に示す外部データソース設定画面Ｇ１７３０を表示する。
【０３１０】
図３１に示す外部データソース設定画面Ｇ１７３０は、参照する外部データソースを設定するための外部データソース設定欄Ｇ１７３１と、参照するパラメータ（依存するパラメータ）を追加設定するための参照追加ボタンＧ１７３６と、参照設定の内容を確定するための「設定」ボタンＧ１７３７と、を含む。図３１に示す外部データソース設定画面Ｇ１７３０は、参照する外部データソースとして「ドキュメントリスト」を参照する設定としている。ここで、「ドキュメントリスト」は、図１９で上述した、案件の案件名と、ドキュメントとを関連付ける情報であるものとする。
【０３１１】
ここで、図３１に示す外部データソース設定画面Ｇ１７３０において、ユーザが参照追加ボタンＧ１７３６を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、例えば図３２に示すパラメータ参照設定画面Ｇ１７４０を表示する。
【０３１２】
図３２に示すパラメータ参照設定画面Ｇ１７４０は、パラメータ「ドキュメント」が依存するパラメータを設定するための画面である。図３２に示すパラメータ参照設定画面Ｇ１７４０は、パラメータ「案件名」が依存するパラメータを入力する参照パラメータ入力欄Ｇ１７４１と、を含む。ここで、ユーザによりパラメータ参照設定画面Ｇ１７４０においてプルダウン表示から「ｃａｓｅＮａｍｅ」が選択操作されたものとすると、図３２に示すように、参照パラメータ入力欄Ｇ１７２１には「ｃａｓｅＮａｍｅ」が入力される。パラメータ参照設定画面Ｇ１７４０は、さらに、参照パラメータ入力欄Ｇ１７４１に入力された依存先のパラメータの設定を確定させるための「設定」ボタンＧ１７４２を含む。
【０３１３】
ここで、図３２に示すパラメータ参照設定画面Ｇ１７４０において、ユーザが「設定」ボタンＧ１７４２を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、図３１に示すように、依存先となるパラメータの参照設定がなされたことを示す設定参照欄Ｇ１７３４と、当該参照設定を解除するための「参照設定解除」ボタンＧ１７３５と、を含む外部データソース設定画面Ｇ１７３０を表示する。図３１に示す外部データソース設定画面Ｇ１７３０では、パラメータ「ドキュメント」が外部データソースとして「ドキュメントリスト」を参照し、かつ、パラメータ「ドキュメント」が参照（依存）するパラメータとしてパラメータ「案件名」が設定されている。
【０３１４】
同様の設定手順で、外部データソース設定画面Ｇ１７３０では、図３１に示すように、依存先となるパラメータの参照設定がなされたことを示す設定参照欄Ｇ１７３２と、当該参照設定を解除するための「参照設定解除」ボタンＧ１７３５と、が表示されたものとする。すなわち、図３１に示す外部データソース設定画面Ｇ１７３０では、さらに、パラメータ「ドキュメント」が参照（依存）するパラメータとしてパラメータ「担当顧客」が設定されている。
【０３１５】
ここで、図３１に示す外部データソース設定画面Ｇ１７３０において、ユーザが「設定」ボタンＧ１７３７を押下する操作を行ったものとする。すると、パラメータ「ドキュメント」について外部データソースである「ドキュメントリスト」を参照し、かつ、パラメータ「ドキュメント」が参照（依存）するパラメータをパラメータ「担当顧客」およびパラメータ「案件名」とする設定を確定し、ブラウザ３１０は、図２６に示すパラメータ設定画面Ｇ１５００を表示させる。
【０３１６】
以降では、ユーザが、「設定」ボタンＧ１５０６を押下する操作を行ったものとする。すると、ブラウザ３１０は、当該操作を受け付けて、上述のように図２７に示す処理フロー詳細設定画面Ｇ１６００を表示する。
【０３１７】
図２７に示す処理フロー詳細設定画面Ｇ１６００は、さらに、図２６に示すパラメータ設定画面Ｇ１５００で設定した参照設定を確定するための「次へ」ボタンＧ１６０２を含む。
【０３１８】
ここで、ユーザは、「次へ」ボタンＧ１６０２を押下する操作（処理フローの登録操作）を行ったものとする。すると、ブラウザ３１０は、処理フローの登録操作を受け付ける（ステップＳ９１０）。
【０３１９】
ブラウザ３１０は、処理フローの登録操作を受け付けると、ステップＳ９０９で設定した各種設定内容を含む処理フロー情報１１００（設定情報の一例）を作成する（ステップＳ９１１）。なお、処理フロー情報１１００は、選択された各コンポーネント（プログラム）の実行順の定義を規定した情報を含むのとし、ステップＳ９０９で設定した各種設定内容は、当該処理フロー情報１１００に対応するアプリ設定情報１２００（設定情報の一例）に含まれるものとしてもよい。
【０３２０】
ブラウザ３１０は、処理フロー情報１１００を作成すると、処理フローの登録要求を、ポータルサービス部１４０のフロー登録部１４３に送信する（ステップＳ９１２）。なお、処理フローの登録要求には、ステップＳ９１１で作成された処理フロー情報１１００が含まれる。
【０３２１】
ポータルサービス部１４０のフロー登録部１４３は、処理フローの登録要求を受信すると、当該登録要求を、入出力サービス処理部１１０ａのフロー管理部１１３に送信する（ステップＳ９１３）。
【０３２２】
入出力サービス処理部１１０ａのフロー管理部１１３は、処理フローの登録要求を受信すると、処理フローを登録する（ステップＳ９１４）。そして、フロー管理部１１３は、登録結果をブラウザ３１０に返信する。
【０３２３】
すなわち、フロー管理部１１３は、処理フローの登録要求に含まれる処理フロー情報１１００をアプリ情報記憶部１５０に記憶する。
【０３２４】
以上のような処理フローの登録（処理フロー情報１１００の登録）を行った後、図８〜図１６で上述したアプリケーションの登録の手順と同様に、「取得ドキュメント印刷アプリケーション」についての登録を行うものとする。これにより、当該アプリ設定情報１２００と、当該アプリ設定情報１２００のフロー名１２０５に定義されたフロー名の処理フロー情報１１００とを含むアプリ情報１０００がサービス提供システム１０ａに登録される。
【０３２５】
以上により、本実施形態に係る情報処理システム１ａでは、ユーザがＰＣ端末３０を用いて、サービス提供システム１０ａに処理フローを登録することができる。しかも、本実施形態に係る情報処理システム１ａでは、ユーザがＰＣ端末３０を用いて、例えば、フロー名や各コンポーネントのパラメータ情報等を設定することで、容易に処理フロー（処理フロー情報１１００）を登録することができる。
【０３２６】
したがって、本実施形態に係る情報処理システム１ａによれば、例えば、プログラミング言語等の専門的な知識や経験を有しないユーザ（例えば、企画担当者等）であっても、各種サービスを提供するアプリケーション（アプリ情報１０００）を登録するための処理フロー（処理フロー情報１１００）を登録することができる。
【０３２７】
図３３は、取得ドキュメント印刷サービスを利用する場合の全体処理の一例を示す図である。図３３を参照しながら、機器２０のユーザが取得ドキュメント印刷サービスを利用する場合について説明する。
【０３２８】
まず、機器２０のブラウザ２１０は、取得ドキュメント印刷サービスのアプリ画面を表示させるための操作（表示操作）を受け付ける（ステップＳ１９０１）。機器２０のユーザは、例えば、取得ドキュメント印刷サービスのアプリ画面のＵＲＬをブラウザ３１０のアドレスバーに入力することで、アプリ画面の表示操作を行うことができる。
【０３２９】
機器２０のブラウザ２１０は、取得ドキュメント印刷サービスのアプリ画面の表示操作を受け付けると、取得ドキュメント印刷サービスのアプリ画面の表示要求を、Ｗｅｂサービス処理部１２０の画面構成部１２１（第１の受信手段）に送信する（ステップＳ１９０２）。取得ドキュメント印刷サービスのアプリ画面の表示要求には、取得ドキュメント印刷サービスを提供するアプリ情報１０００のアプリＩＤが含まれる。
【０３３０】
Ｗｅｂサービス処理部１２０の画面構成部１２１は、取得ドキュメント印刷サービスのアプリ画面の表示要求を受信すると、アプリ設定の取得要求を、入出力サービス処理部１１０ａのアプリ管理部１１１に送信する（ステップＳ１９０３）。アプリ設定の取得要求には、取得ドキュメント印刷サービスを提供するアプリ情報１０００のアプリＩＤが含まれる。
【０３３１】
入出力サービス処理部１１０ａのアプリ管理部１１１は、アプリ設定の取得要求を受信すると、当該取得要求に含まれるアプリＩＤに関連付けて記憶されているアプリ設定情報１２００をアプリ情報記憶部１５０から取得する（ステップＳ１９０４）。そして、アプリ管理部１１１は、アプリ情報記憶部１５０から取得したアプリ設定情報１２００を画面構成部１２１に返信する。
【０３３２】
次に、Ｗｅｂサービス処理部１２０の画面構成部１２１は、取得ドキュメント印刷サービスを提供するアプリ情報１０００のアプリＩＤと関連付けて記憶されているアプリ画面情報２０００（利用画面情報）をアプリ画面情報記憶部１６０から取得する（ステップＳ１９０５）。そして、画面構成部１２１（第１の送信手段）は、アプリ画面情報記憶部１６０から取得したアプリ画面情報２０００と、上記のステップＳ１９０４で返信されたアプリ設定情報１２００とをブラウザ２１０に返信する。
【０３３３】
機器２０のブラウザ２１０は、画面構成部１２１から受信したアプリ画面情報２０００とアプリ設定情報１２００とに基づいて、例えば図３４に示すアプリ画面Ｇ１８００を表示する（ステップＳ１９０６）。ここで、図３４に示すアプリ画面Ｇ１８００は、機器２０のユーザが取得ドキュメント印刷サービスを利用するための画面である。
【０３３４】
図３４に示すアプリ画面Ｇ１８００は、アプリ名Ｇ１８０１と、担当顧客入力欄Ｇ１８０２と、担当顧客プルダウンボタンＧ１８０３と、案件名入力欄Ｇ１８０４と、案件名プルダウンボタンＧ１８０５と、ドキュメント入力欄Ｇ１８０６と、ドキュメントプルダウンボタンＧ１８０７と、「スタート」ボタンＧ１８０８と、を含む。
【０３３５】
アプリ名Ｇ１８０１は、アプリ設定情報１２００のアプリ表示名１２０３に相当する情報に基づいて表示される。また、アプリ表示名１２０３に複数の言語のアプリケーション名称（タイトル）が定義されている場合、ブラウザ２１０の言語設定に対応する言語のアプリケーション名称がアプリ名Ｇ１８０１に表示される。
【０３３６】
また、担当顧客入力欄Ｇ１８０２、案件名入力欄Ｇ１８０４およびドキュメント入力欄Ｇ１８０６の表記名は、処理フロー情報１１００に含まれ、図２６に示すパラメータ設定画面Ｇ１５００で入力設定された各表記名が表示される。
【０３３７】
また、担当顧客入力欄Ｇ１８０２、案件名入力欄Ｇ１８０４およびドキュメント入力欄Ｇ１８０６の入力方法、および、担当顧客プルダウンボタンＧ１８０３、案件名プルダウンボタンＧ１８０５およびドキュメントプルダウンボタンＧ１８０７の表示内容の動作については、図２６〜図３２で設定した処理フローの内容に基づく。
【０３３８】
このように、機器２０のユーザがサービスを利用するためのアプリ画面には、処理フロー情報１１００およびアプリ設定情報１２００に定義されている情報に基づいて、アプリ名およびパラメータ入力エリアが表示される。
【０３３９】
ブラウザ２１０によってアプリ画面Ｇ１８００が表示されると、ブラウザ２１０は、アプリ画面Ｇ１８００の取得ドキュメント印刷アプリケーションに関連付けられている処理フロー情報１１００を取得するためのアクション実行要求を、Ｗｅｂサービス処理部１２０のアプリ実行部１２２に送信する（ステップＳ１９０７）。アクション実行要求には、アプリ設定情報１２００のフロー名１２０５に定義されたフロー名「ｇｅｔ−ｐｒｉｎｔ」と、パラメータ設定情報とが含まれる。
【０３４０】
Ｗｅｂサービス処理部１２０のアプリ実行部１２２は、アクション実行要求を受信すると、当該実行要求を、入出力サービス処理部１１０ａのロジック処理部１１２に送信する（ステップＳ１９０８）。
【０３４１】
まず、ロジック処理部１１２は、アプリ実行部１２２からアクション実行要求を受信すると、処理フローの取得要求をフロー管理部１１３に送信する（ステップＳ１９０９）。当該取得要求には、フロー名「ｇｅｔ−ｐｒｉｎｔ」が含まれる。
【０３４２】
フロー管理部１１３は、処理フローの取得要求を受信すると、当該取得要求に含まれるフロー名「ｇｅｔ−ｐｒｉｎｔ」の処理フロー情報１１００をアプリ情報記憶部１５０から取得する（ステップＳ１９１０）。そして、フロー管理部１１３は、アプリ情報記憶部１５０から取得した処理フロー情報１１００をロジック処理部１１２に返信する。
【０３４３】
ロジック処理部１１２は、フロー管理部１１３から取得した処理フロー情報１１００の内容に従い、アプリ画面Ｇ１８００の入力項目のうち、他の入力項目に対して依存先の参照設定をしておらず、かつ、外部データソースへの参照設定（利用設定）がされている入力項目の当該外部データソースの情報を取得するデータリスト取得要求を、ドキュメントサービス部１３０ａの取得部１３３へ送信する（ステップＳ１９１１）。当該データリスト取得要求には、情報処理システム１ａにログインしているユーザの情報（ユーザ名等）が含まれている。具体的には、アプリ画面Ｇ１８００の入力項目のうち、他の入力項目に対して依存先の参照設定をしておらず、かつ、外部データソースへの参照設定（利用設定）がされている入力項目としては、パラメータ「担当顧客」が該当する。上述したように、パラメータ「担当顧客」は、外部データソースとして「担当顧客リスト」を参照する設定がされている。
【０３４４】
ドキュメントサービス部１３０ａの取得部１３３は、データリスト取得要求を受信すると、外部の顧客情報記憶部１８０にアクセスし、顧客情報１８１０により情報処理システム１ａにログインしているユーザに関連付けられた担当顧客のデータリストを取得する（ステップＳ１９１２）。そして、取得部１３３は、取得した担当顧客のデータリストをロジック処理部１１２に返信する。ロジック処理部１１２は、受け取ったデータリストをアプリ実行部１２２へ返信し、アプリ実行部１２２は、さらに、当該データリストをブラウザ２１０に返信する。ブラウザ２１０は、受け取った担当顧客のデータリストを、アプリ画面Ｇ１８００の担当顧客プルダウンボタンＧ１８０３の押下によりプルダウンされるようにする。
【０３４５】
すなわち、機器２０において、ユーザがアプリ画面Ｇ１８００を表示させた段階で、アプリ画面Ｇ１８００での最上段の入力欄である担当顧客入力欄Ｇ１８０２においては、当該ユーザに関連付けられた担当顧客の一覧がプルダウン表示が可能な状態となっている。したがって、ユーザは、自身に関係のある（関連付けられている）担当顧客を直接入力する必要がなく、プルダウン表示から所望の担当顧客を選択するだけでよい。
【０３４６】
ユーザは、担当顧客プルダウンボタンＧ１８０３を押下することによって一覧表示される自身の担当顧客のリストの中から、所望する担当顧客を選択操作する（ステップＳ１９１３）。これによって、担当顧客入力欄Ｇ１８０２には、選択された担当顧客が表示される。すると、担当顧客入力欄Ｇ１８０２の入力項目は、他の入力項目（パラメータ「案件名」（第２の入力項目の一例））から依存先の参照設定がされており、かつ、当該他の入力項目が外部データソースへの参照設定がされているので、ブラウザ２１０は、当該外部データソースの情報を取得するためのアクション実行要求を、Ｗｅｂサービス処理部１２０のアプリ実行部１２２に送信する（ステップＳ１９１４）。当該アクション実行要求には、担当顧客入力欄Ｇ１８０２で入力された担当顧客の情報を含む。
【０３４７】
Ｗｅｂサービス処理部１２０のアプリ実行部１２２は、アクション実行要求を受信すると、当該実行要求を、入出力サービス処理部１１０ａのロジック処理部１１２に送信する（ステップＳ１９１５）。
【０３４８】
ロジック処理部１１２は、フロー管理部１１３から取得した処理フロー情報１１００の内容に従い、他の入力項目（パラメータ「担当顧客」（第１の入力項目の一例））に対して依存先の参照設定がされており、かつ、外部データソースへの参照設定がされている入力項目（パラメータ「案件名」）の当該外部データソースの情報を取得するデータリスト取得要求（第１の取得要求の一例）を、ドキュメントサービス部１３０ａの取得部１３３へ送信する（ステップＳ１９１６）。当該データリスト取得要求には、担当顧客入力欄Ｇ１８０２で入力された担当顧客の情報（第１の項目内容の一例）を含む。具体的には、アプリ画面Ｇ１８００の入力項目のうち、他の入力項目に対して依存先の参照設定がされており、かつ、外部データソースへの参照設定がされている入力項目としては、パラメータ「案件名」が該当する。上述したように、パラメータ「案件名」は、外部データソースとして「案件名リスト」を参照する設定がされている。
【０３４９】
ドキュメントサービス部１３０ａの取得部１３３は、データリスト取得要求を受信すると、外部の顧客情報記憶部１８０にアクセスし、案件名情報１８２０により担当顧客入力欄Ｇ１８０２で入力された担当顧客に関連付けられた案件名のデータリスト（リスト情報の一例）を取得する（ステップＳ１９１７）。そして、取得部１３３は、取得した案件名のデータリストをロジック処理部１１２に返信する。ロジック処理部１１２は、受け取ったデータリストをアプリ実行部１２２へ返信し、アプリ実行部１２２は、さらに、当該データリストをブラウザ２１０に返信する。ブラウザ２１０は、受け取った案件名のデータリストを、アプリ画面Ｇ１８００の案件名プルダウンボタンＧ１８０５の押下によりプルダウンされるようにする。
【０３５０】
すなわち、機器２０において、ユーザがアプリ画面Ｇ１８００で担当顧客入力欄Ｇ１８０２に所望する担当顧客を選択入力した段階で、アプリ画面Ｇ１８００での２段目の入力欄である案件名入力欄Ｇ１８０４においては、当該担当顧客に関連付けられた案件名の一覧がプルダウン表示が可能な状態となっている。したがって、ユーザは、選択した担当顧客に関係のある（関連付けられている）案件名を直接入力する必要がなく、プルダウン表示から所望の案件名を選択するだけでよい。
【０３５１】
なお、この段階で、担当顧客入力欄Ｇ１８０２の担当顧客の入力内容が変更された場合、上述のステップＳ１９１３で担当顧客が選択操作された後のステップＳ１９１４〜Ｓ１９１７の動作が再び自動実行される。
【０３５２】
ユーザは、案件名プルダウンボタンＧ１８０５を押下することによって一覧表示される案件名のリストの中から、所望する案件名を選択操作する（ステップＳ１９１３）。これによって、案件名入力欄Ｇ１８０４には、選択された案件名が表示される。すると、案件名入力欄Ｇ１８０４の入力項目は、他の入力項目（パラメータ「ドキュメント（第２の入力項目の一例）」）から依存先の参照設定がされており、かつ、当該他の入力項目が外部データソースへの参照設定がされているので、ブラウザ２１０は、当該外部データソースの情報を取得するためのアクション実行要求を、Ｗｅｂサービス処理部１２０のアプリ実行部１２２（第２の受信手段の一例）に送信する（ステップＳ１９１４）。当該アクション実行要求には、案件名入力欄Ｇ１８０４で入力された案件名の情報を含む。
【０３５３】
Ｗｅｂサービス処理部１２０のアプリ実行部１２２は、アクション実行要求を受信すると、当該実行要求を、入出力サービス処理部１１０ａのロジック処理部１１２に送信する（ステップＳ１９１５）。
【０３５４】
ロジック処理部１１２は、フロー管理部１１３から取得した処理フロー情報１１００の内容に従い、他の入力項目（パラメータ「案件名」（第１の入力項目の一例））に対して依存先の参照設定がされており、かつ、外部データソースへの参照設定がされている入力項目（パラメータ「ドキュメント」）の当該外部データソースの情報を取得するデータリスト取得要求（第１の取得要求の一例）を、ドキュメントサービス部１３０ａの取得部１３３へ送信する（ステップＳ１９１６）。当該データリスト取得要求には、案件名入力欄Ｇ１８０４で入力された案件名の情報（第１の項目内容の一例、第２の項目内容の一例）を含む。具体的には、アプリ画面Ｇ１８００の入力項目のうち、他の入力項目に対して依存先の参照設定がされており、かつ、外部データソースへの参照設定がされている入力項目としては、パラメータ「ドキュメント」が該当する。上述したように、パラメータ「ドキュメント」は、外部データソースとして「ドキュメントリスト」を参照する設定がされている。
【０３５５】
ドキュメントサービス部１３０ａの取得部１３３は、データリスト取得要求を受信すると、外部のドキュメント記憶部１９０にアクセスし、案件の案件名と、ドキュメントとを関連付ける情報によって案件名入力欄Ｇ１８０４で入力された案件名に関連付けられたドキュメントのデータリスト（リスト情報の一例）を取得する（ステップＳ１９１７）。なお、図３１で上述したように、パラメータ「ドキュメント」が依存先としてパラメータ「案件名」およびパラメータ「担当顧客」（第３の入力項目の一例）に設定されている場合には、取得部１３３は、案件名および担当顧客（第３の項目内容の一例）の双方に関連付けられているドキュメントのデータリストを取得するものとしてもよい。そして、取得部１３３は、取得したドキュメントのデータリストをロジック処理部１１２に返信する。ロジック処理部１１２は、受け取ったデータリストをアプリ実行部１２２へ返信し、アプリ実行部１２２（第２の送信手段の一例）は、さらに、当該データリストをブラウザ２１０に返信する。ブラウザ２１０は、受け取ったドキュメントのデータリストを、アプリ画面Ｇ１８００のドキュメントプルダウンボタンＧ１８０７の押下によりプルダウンされるようにする。
【０３５６】
すなわち、機器２０において、ユーザがアプリ画面Ｇ１８００で案件名入力欄Ｇ１８０４に所望する案件名を選択入力した段階で、アプリ画面Ｇ１８００での最下段の入力欄であるドキュメント入力欄Ｇ１８０６においては、当該案件名に関連付けられたドキュメントの一覧がプルダウン表示が可能な状態となっている。したがって、ユーザは、選択した案件名に関係のある（関連付けられている）ドキュメントを直接入力する必要がなく、プルダウン表示から所望のドキュメントを選択するだけでよい。
【０３５７】
さらに、ユーザは、ドキュメントプルダウンボタンＧ１８０７を押下することによって一覧表示されるドキュメントのリストの中から、印刷を所望するドキュメントを選択操作する（ステップＳ１９１８）。これによって、ドキュメント入力欄Ｇ１８０６には、選択されたドキュメントが表示される。すると、ドキュメント入力欄Ｇ１８０６の入力項目は、他の入力項目（パラメータ「ドキュメント」）から依存先の参照設定がされていないので、ブラウザ２１０は、選択されたドキュメントを取得するためのアクション実行要求を、Ｗｅｂサービス処理部１２０のアプリ実行部１２２に送信する（ステップＳ１９１９）。当該アクション実行要求には、ドキュメント入力欄Ｇ１８０６で入力されたドキュメントの情報（第２の項目内容の一例）を含む。
【０３５８】
Ｗｅｂサービス処理部１２０のアプリ実行部１２２は、アクション実行要求を受信すると、当該実行要求を、入出力サービス処理部１１０ａのロジック処理部１１２に送信する（ステップＳ１９２０）。
【０３５９】
ロジック処理部１１２は、フロー管理部１１３から取得した処理フロー情報１１００の内容に従い、選択されたドキュメントの情報を取得するドキュメント取得要求（第２の取得要求）を、ドキュメントサービス部１３０ａの取得部１３３へ送信する（ステップＳ１９２１）。当該ドキュメント取得要求には、ドキュメント入力欄Ｇ１８０６で入力されたドキュメントの情報（具体的には、ドキュメント名またはドキュメントＩＤ等）を含む。
【０３６０】
ドキュメントサービス部１３０ａの取得部１３３は、ドキュメント取得要求を受信すると、外部のドキュメント記憶部１９０にアクセスし、当該ドキュメント取得要求に含まれるドキュメントの情報が示すドキュメントを取得する（ステップＳ１９２２）。そして、取得部１３３は、取得したドキュメントをロジック処理部１１２に返信する。ロジック処理部１１２は、受け取ったドキュメントをアプリ実行部１２２へ返信し、アプリ実行部１２２は、さらに、当該ドキュメントをブラウザ２１０に返信する。ここで、ブラウザ２１０は、受け取ったドキュメントの内容（縮小表示等）を表示するものとしてもよい。
【０３６１】
そして、図３４に示すアプリ画面Ｇ１８００において、ユーザは、「スタート」ボタンＧ１８０８を押下する操作（実行操作）を行ったものとする。
【０３６２】
すると、機器２０のブラウザ２１０は、実行操作を受け付ける（ステップＳ１９２３）。そして、機器２０のブラウザ２１０は、プリンタ２５を制御して、受け取ったドキュメントの印刷処理を実行する（ステップＳ１９２４）。
【０３６３】
以上により、取得ドキュメント印刷サービスの処理フロー情報１１００に基づく一連の処理（処理フロー）の実行が完了する。これにより、本実施形態に係るサービス提供システム１０ａは、機器２０に対して、取得ドキュメント印刷サービスを提供することができる。
【０３６４】
なお、取得ドキュメント印刷サービスでは、取得したドキュメントに対して、それに続く一連の処理として印刷処理を実行するものとしたが、登録する処理フローの設定により印刷処理に限られるものではない。例えば、取得したドキュメントを、特定の相手にメール送信する処理を処理フローに設定するものとしてもよい。この場合、外部データソースから取得したドキュメントをメール送信する取得ドキュメント送信サービスを提供することができる。
【０３６５】
以上のように、本実施形態に係る情報処理システム１ａでは、アプリケーションで利用するドキュメントを外部データソースから取得するために必要となる各入力項目について、連携する外部データソース（外部サービス）から、依存先の入力項目に関連付けられた依存元の入力項目の候補を取得することにより容易に当該依存元の入力項目を指定することができる。すなわち、各入力項目の間で依存関係を設定し、各入力項目と外部サービス（外部データソース）との連携（参照）の設定をすることができるので、依存先の入力項目が決定した場合、当該入力項目に対する依存元となる入力項目の候補を、外部サービスから動的に取得することができる。この場合、ユーザは、依存先の入力項目に関係のある（関連付けられている）依存元の入力項目を直接入力する必要がなく、外部サービスから取得した候補の中から選択して、依存元の入力項目を決定することができる。したがって、ユーザが自身に関連するデータ（ドキュメント等）を容易に取得することができる。
【０３６６】
また、本実施形態に係る情報処理システム１ａでは、例えば、プログラミング言語等の専門的な知識および経験を有しないユーザであっても、容易にアプリケーションを実現するための処理フロー（処理フロー情報１１００）の作成・登録を行うことができる。
【０３６７】
また、本実施形態に係る情報処理システム１ａでは、ユーザが機器２０を用いて、サービス提供システム１０ａに登録された処理フローが設定されたアプリケーションにより提供される各種サービスを利用することができる。
【０３６８】
なお、上述の各実施形態の各機能は、一または複数の処理回路によって実現することが可能である。ここで、「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上述した各機能を実行するよう設計されたＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＳＯＣ（Ｓｙｓｔｅｍ  ｏｎ  ａ  ｃｈｉｐ)、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や従来の回路モジュール等のデバイスを含むものとする。
【０３６９】
また、上述の各実施形態において、サービス提供システム１０（１０ａ）、機器２０、およびＰＣ端末３０の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ＲＯＭ等に予め組み込まれて提供される。また、上述の各実施形態に係るサービス提供システム１０（１０ａ）、機器２０、およびＰＣ端末３０で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅｃｏｒｄａｂｌｅ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、またはＳＤカード等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の各実施形態に係るサービス提供システム１０（１０ａ）、機器２０、およびＰＣ端末３０で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の各実施形態に係るサービス提供システム１０（１０ａ）、機器２０、およびＰＣ端末３０で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の各実施形態に係るサービス提供システム１０（１０ａ）、機器２０、およびＰＣ端末３０で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵが上述の記憶装置からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置上にロードされて生成されるようになっている。
【符号の説明】
【０３７０】
１、１ａ  情報処理システム
１０、１０ａ  サービス提供システム
１１  ＣＰＵ
１２  ＲＡＭ
１３  ＲＯＭ
１４  補助記憶装置
１５  入力装置
１６  表示装置
１７  外部Ｉ／Ｆ
１７ａ  記録媒体
１８  通信Ｉ／Ｆ
２０、２０＿１、２０＿２  機器
２１  コントローラ
２２  操作パネル
２３  外部Ｉ／Ｆ
２３ａ  記録媒体
２４  通信Ｉ／Ｆ
２５  プリンタ
２６  スキャナ
３０、３０＿１、３０＿２  ＰＣ端末
３１  ＣＰＵ
３２  ＲＡＭ
３３  ＲＯＭ
３４  ＮＶＲＡＭ
３５  補助記憶装置
１１０、１１０ａ  入出力サービス処理部
１１１  アプリ管理部
１１２  ロジック処理部
１１３  フロー管理部
１２０  Ｗｅｂサービス処理部
１２１  画面構成部
１２２  アプリ実行部
１３０、１３０ａ  ドキュメントサービス部
１３１  ＯＣＲ処理部
１３２  メール配信部
１３３  取得部
１４０、１４０ａ  ポータルサービス部
１４１  ＵＩ提供部
１４２  アプリ登録部
１４３  フロー登録部
１５０  アプリ情報記憶部
１６０  アプリ画面情報記憶部
１７０  ポータル画面情報記憶部
１８０  顧客情報記憶部
１９０  ドキュメント記憶部
２１０  ブラウザ
３０１  フロー実行部
３０２  コンポーネント管理部
３０３  コンポーネント群
３０４  型変換管理部
３０５  型変換群
３１０  ブラウザ
１０００  アプリ情報
１１００  処理フロー情報
１１０１  フロー名
１１０２  フロー詳細
１１１０、１１２０、１１３０  詳細処理定義
１２００  アプリ設定情報
１２０１  アプリタイプ
１２０２  アプリ名
１２０３  アプリ表示名
１２０４  認証タイプ
１２０５  フロー名
１２０６  デザインテンプレートタイプ
１２０７  デフォルトパラメータ
１２０８  ユーザ入力パラメータ
１２１８、１２２８、１２３８  入力定義
１３００  コンポーネント共通Ｉ／Ｆ
１３１０  ＯＣＲコンポ―ネット
１３２０  翻訳コンポーネント
１３３０  メール配信コンポーネント
１４００  型変換共通Ｉ／Ｆ
１４１０  第１の型変換
１８１０  顧客情報
１８２０  案件名情報
１９００  ドキュメント
２０００  アプリ画面情報
３０００  ポータル画面情報
４０００  型変換情報テーブル
Ｂ  バス
Ｎ１  ネットワーク
【先行技術文献】
【特許文献】
【０３７１】
【特許文献１】特開平０５−４６３３８号公報
【図１】
2020102175.tif 000003
【図２】
2020102175.tif 000004
【図３】
2020102175.tif 000005
【図４】
2020102175.tif 000006
【図５】
2020102175.tif 000007
【図６】
2020102175.tif 000008
【図７】
2020102175.tif 000009
【図８】
2020102175.tif 000010
【図９】
2020102175.tif 000011
【図１０】
2020102175.tif 000012
【図１１】
2020102175.tif 000013
【図１２】
2020102175.tif 000014
【図１３】
2020102175.tif 000015
【図１４】
2020102175.tif 000016
【図１５】
2020102175.tif 000017
【図１６】
2020102175.tif 000018
【図１７】
2020102175.tif 000019
【図１８】
2020102175.tif 000020
【図１９】
2020102175.tif 000021
【図２０】
2020102175.tif 000022
【図２１】
2020102175.tif 000023
【図２２】
2020102175.tif 000024
【図２３】
2020102175.tif 000025
【図２４】
2020102175.tif 000026
【図２５】
2020102175.tif 000027
【図２６】
2020102175.tif 000028
【図２７】
2020102175.tif 000029
【図２８】
2020102175.tif 000030
【図２９】
2020102175.tif 000031
【図３０】
2020102175.tif 000032
【図３１】
2020102175.tif 000033
【図３２】
2020102175.tif 000034
【図３３】
2020102175.tif 000035
【図３４】
2020102175.tif 000036