(57)【要約】【課題】アプリケーションの開発を支援する。【解決手段】所定の処理を実行するプログラムを有する情報処理システムであって、電子データを用いた一連の処理毎に、プログラム識別情報と、パラメータと、実行順とが定義されたフロー情報を、フロー識別情報と関連付けて記憶する記憶手段と、第１の機器に表示された画面において、前記プログラム識別情報と、前記パラメータと、前記実行順とを定義する操作が行われると、前記フロー情報を作成して、前記フロー識別情報と関連付けて記憶させる登録手段と、第２の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、前記フロー識別情報と関連付けて記憶されているフロー情報を取得する取得手段と、前記フロー情報に定義されている前記プログラム識別情報の前記プログラムを、前記実行順に従って、前記パラメータを用いて実行させて、前記一連の処理を実行する実行手段とを有する。【選択図】図４
2018010434.tif 000002
【特許請求の範囲】
【請求項１】
１以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、
電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する１以上の前記プログラムを識別するプログラム識別情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータと、１以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、
前記情報処理システムに接続される１以上の機器のうちの第１の機器に表示されたフロー作成画面において、前記プログラム識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手段と、
前記１以上の機器のうちの第２の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、
前記記憶手段に記憶されている前記フロー情報のうち、前記受信手段により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手段と、
前記取得手段により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて実行させることで、前記受信手段により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、
を有する情報処理システム。
【請求項２】
前記登録手段は、
前記第１の機器に表示されたフロー作成画面に含まれる所定の領域に、前記プログラム識別情報を表す所定の表示部品を配置するユーザ操作が行われると、前記プログラム識別情報が定義された前記フロー情報を作成する、請求項１に記載の情報処理システム。
【請求項３】
登録手段は、
前記フロー作成画面に含まれる所定の領域に、前記表示部品を配置するドラッグアンドドロップ操作が行われると、前記プログラム識別情報が定義された前記フロー情報を作成する、請求項２に記載の情報処理システム。
【請求項４】
前記表示部品は、前記プログラム識別情報により識別されるプログラムが実行する処理の処理内容を表すアイコンである、請求項２又は３に記載の情報処理システム。
【請求項５】
前記フロー作成画面には、
前記第１の機器のユーザに対する操作説明を表示する領域が含まれる、請求項１乃至４の何れか一項に記載の情報処理システム。
【請求項６】
前記実行順は、前記フロー情報において前記プログラム識別情報が定義されている順である、請求項１乃至５の何れか一項に記載の情報処理システム。
【請求項７】
前記実行手段は、
電子データに対して、該電子データのデータ型を所定のデータ型に変換する型変換手段を１以上有し、
前記電子データのデータ型を、前記型変換手段により前記プログラムが処理可能なデータ型に変換した後、前記プログラムを実行させることで、前記電子データを用いた一連の処理を実行する、請求項１乃至６の何れか一項に記載の情報処理システム。
【請求項８】
前記プログラムには、外部サービスに関する処理を実行するプログラムを含み、
前記外部サービスに関する処理を事項するプログラムには、
外部サービスに対して電子データをアップロードする処理を実行するプログラムを少なくとも含む、請求項１乃至７の何れか一項に記載の情報処理システム。
【請求項９】
所定の処理をそれぞれ実行する複数のプログラムを有する情報処理装置であって、
電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する１以上の前記プログラムを識別するプログラム識別情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータと、１以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、
前記情報処理装置に接続される１以上の機器のうちの第１の機器に表示されたフロー作成画面において、前記プログラム識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手段と、
前記１以上の機器のうちの第２の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、
前記記憶手段に記憶されている前記フロー情報のうち、前記受信手段により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手段と、
前記取得手段により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて実行させることで、前記受信手段により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、
を有する情報処理装置。
【請求項１０】
１以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する１以上の前記プログラムを識別するプログラム識別情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータと、１以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段を有する情報処理システムに用いられる情報処理方法において、
前記情報処理システムに接続される１以上の機器のうちの第１の機器に表示されたフロー作成画面において、前記プログラム識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手順と、
前記１以上の機器のうちの第２の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手順と、
前記記憶手段に記憶されている前記フロー情報のうち、前記受信手順により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手順と、
前記取得手順により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて実行させることで、前記受信手順により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手順と、
を有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、及び情報処理方法に関する。
【背景技術】
【０００２】
近年、クラウドコンピューティング等により多種多様な外部サービスが提供されるようになった。例えば、ユーザにより指定された電子データを外部ストレージに保管する外部サービス等が知られている。
【０００３】
また、１以上の処理を一連の処理として表した情報等が含まれる指示書に基づいて、当該一連の処理を実行する画像形成装置が知られている（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、外部サービスと連携した一連の処理を実行させるためには、画像形成装置に搭載されるアプリケーションの開発が必要であった。一方で、アプリケーションの開発には、例えば、プログラミング言語等に関する専門的な知識や経験を必要する場合があった。
【０００５】
本発明の一実施形態は、上記の点に鑑みてなされたもので、アプリケーションの開発を支援することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一実施形態は、１以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する１以上の前記プログラムを識別するプログラム識別情報と、１以上の前記プログラムそれぞれの実行に用いられるパラメータと、１以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、前記情報処理システムに接続される１以上の機器のうちの第１の機器に表示されたフロー作成画面において、前記プログラム識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手段と、前記１以上の機器のうちの第２の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、前記記憶手段に記憶されている前記フロー情報のうち、前記受信手段により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手段と、前記取得手段により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて実行させることで、前記受信手段により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、を有する。
【発明の効果】
【０００７】
本発明の一実施形態によれば、アプリケーションの開発を支援することができる。
【図面の簡単な説明】
【０００８】
【図１】第一の実施形態に係る情報処理システムの一例のシステム構成を示す図である。
【図２】第一の実施形態に係るサービス提供システム及びＰＣ端末の一例のハードウェア構成を示す図である。
【図３】第一の実施形態に係る機器の一例のハードウェア構成を示す図である。
【図４】第一の実施形態に係る情報処理システムの一例の機能構成を示す図である。
【図５】共通Ｉ／Ｆ及び固有Ｉ／Ｆの一例を説明するための図である。
【図６】第一の実施形態に係るロジック処理部の一例の機能構成を示す図である。
【図７】処理情報テーブルの一例を示す図である。
【図８】型変換情報テーブルの一例を示す図である。
【図９】ＯＣＲ配信を実現する一連の処理が定義された処理フロー情報の一例を示す図である。
【図１０】処理フローの登録処理の一例を示すシーケンス図である。
【図１１】アプリ一覧画面及び処理フロー作成画面の一例を示す図である。
【図１２】処理フローの作成処理（１／２）の一例を示すシーケンス図である。
【図１３】コンポーネント及びオペレーションを示すアイコンの配置について説明する図である。
【図１４】処理フローの作成処理（２／２）の一例を示すシーケンス図である。
【図１５】パラメータ設定画面の一例を示す図である。
【図１６】パラメータ設定画面の他の例を示す図である。
【図１７】アイコンの整列について説明する図である。
【図１８】共有フローの取り込みについて説明する図である。
【図１９】サービス利用の全体処理の一例を示すシーケンス図である。
【図２０】サービス一覧画面及びサービス利用画面の一例を示す図である。
【図２１】処理フローの実行処理の一例を示すシーケンス図である。
【図２２】処理フローの登録、更新、又は削除処理の一例を示すシーケンス図である。
【図２３】アプリ情報画面の一例を示す図である。
【図２４】処理フローの更新画面の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１０】
［第一の実施形態］
＜システム構成＞
まず、本実施形態に係る情報処理システム１のシステム構成について、図１を参照しながら説明する。図１は、本実施形態に係る情報処理システム１の一例のシステム構成を示す図である。
【００１１】
図１に示す情報処理システム１は、サービス提供システム１０と、機器２０と、ＰＣ端末３０と、外部ストレージシステム４０とを含み、インターネット等の広域的なネットワークＮ１を介して通信可能に接続されている。
【００１２】
サービス提供システム１０は、一台以上の情報処理装置で実現され、ネットワークＮ１を介して、クラウドサービス等の外部サービスと連携した一連の処理により実現される各種のサービスを提供する。
【００１３】
本実施形態に係るサービス提供システム１０が提供するサービスの具体例については後述する。なお、以降では、一連の処理を「処理フロー」とも表す。
【００１４】
なお、本実施形態では、外部サービスの具体例としてクラウドサービスを採用して説明するが、これに限られない。本実施形態は、例えば、ＡＳＰ（Application Service Provider）によって提供されるサービスやＷｅｂサービス等のネットワークを介して提供される各種の外部サービスに関して適用されても良い。
【００１５】
機器２０は、ユーザが使用する各種の電子機器である。すなわち、機器２０は、例えば、ＭＦＰ（Multifunction Peripheral）等の画像形成装置、ＰＣ（パーソナルコンピュータ）、プロジェクタ、電子黒板、デジタルカメラ等である。ユーザは、機器２０を用いて、サービス提供システム１０が提供する各種のサービスを利用することができる。
【００１６】
なお、以降では、複数の機器２０について、各々を区別するときは、「機器２０１」、「機器２０２」等と添え字を用いて記載する。
【００１７】
ＰＣ端末３０は、例えば、ユーザが使用するデスクトップＰＣ、ノート型ＰＣ、スマートフォン、タブレット端末等である。ユーザは、ＰＣ端末３０を用いて、サービス提供システム１０が提供する各種のサービスを利用することができる。
【００１８】
なお、以降では、複数のＰＣ端末３０について、各々を区別するときは、「ＰＣ端末３０１」、「ＰＣ端末３０２」等と添え字を用いて記載する。
【００１９】
外部ストレージシステム４０は、ネットワークＮ１を介してストレージサービス（又はオンラインストレージ）と呼ばれるクラウドサービスを提供するコンピュータシステムである。ストレージサービスとは、外部ストレージシステム４０のストレージの記憶領域を貸し出すサービスである。
【００２０】
なお、以降では、複数の外部ストレージシステム４０について、各々を区別するときは、「外部ストレージシステム４０１」、「外部ストレージシステム４０２」等と添え字を用いて記載する。また、外部ストレージシステム４０１により提供されるストレージサービスの名称を「ストレージＡ」、外部ストレージシステム４０１により提供されるストレージサービスの名称を「ストレージＢ」等とする。
【００２１】
なお、外部ストレージシステム４０は、複数台の情報処理装置によって実現されるシステムであっても良い。
【００２２】
また、図１に示す情報処理システム１の構成は一例であって、他の構成であっても良い。例えば、本実施形態に係る情報処理システム１には、電子データの入力及び出力の少なくとも一方を行う各種機器が含まれ、これらの機器がサービス提供システム１０により提供される各種サービスを利用しても良い。
【００２３】
＜ハードウェア構成＞
次に、本実施形態に係る情報処理システム１に含まれるサービス提供システム１０及びＰＣ端末３０のハードウェア構成について、図２を参照しながら説明する。図２は、本実施形態に係るサービス提供システム１０及びＰＣ端末３０の一例のハードウェア構成を示す図である。なお、サービス提供システム１０及びＰＣ端末３０は、同様のハードウェア構成を有しているため、以降では、主に、サービス提供システム１０のハードウェア構成について説明する。
【００２４】
図２に示すサービス提供システム１０は、入力装置１１と、表示装置１２と、外部Ｉ／Ｆ１３と、ＲＡＭ（Random Access Memory）１４とを有する。また、サービス提供システム１０は、ＲＯＭ（Read Only Memory）１５と、ＣＰＵ（Central Processing Unit）１６と、通信Ｉ／Ｆ１７と、ＨＤＤ（Hard Disk Drive）１８とを有する。これらの各ハードウェアは、それぞれがバスＢで接続されている。
【００２５】
入力装置１１は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置１２は、ディスプレイ等を含み、サービス提供システム１０による処理結果を表示する。なお、入力装置１１及び表示装置１２の少なくとも一方は、必要なときにサービス提供システム１０に接続して利用する形態であっても良い。
【００２６】
通信Ｉ／Ｆ１７は、サービス提供システム１０をネットワークＮ１に接続するインタフェースである。これにより、サービス提供システム１０は、通信Ｉ／Ｆ１７を介して通信を行うことができる。
【００２７】
ＨＤＤ１８は、プログラムやデータを格納している不揮発性の記憶装置である。ＨＤＤ１８に格納されるプログラムやデータには、サービス提供システム１０全体を制御する基本ソフトウェアであるＯＳ（Operating System）、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。
【００２８】
なお、サービス提供システム１０は、ＨＤＤ１８に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置（例えばソリッドステートドライブ：ＳＳＤ）を利用するものであっても良い。また、ＨＤＤ１８は、格納しているプログラムやデータを所定のファイルシステム及び／又はＤＢにより管理している。
【００２９】
外部Ｉ／Ｆ１３は、外部装置とのインタフェースである。外部装置には、記録媒体１３ａ等がある。これにより、サービス提供システム１０は、外部Ｉ／Ｆ１３を介して記録媒体１３ａの読み取りや書き込みを行うことができる。記録媒体１３ａには、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３０】
ＲＯＭ１５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ１５には、サービス提供システム１０の起動時に実行されるＢＩＯＳ（Basic Input/Output System）、ＯＳ設定、及びネットワーク設定等のプログラムやデータが格納されている。ＲＡＭ１４は、プログラムやデータを一時保持する揮発性の半導体メモリである。
【００３１】
ＣＰＵ１６は、ＲＯＭ１５やＨＤＤ１８等の記憶装置からプログラムやデータをＲＡＭ１４上に読み出し、処理を実行することで、サービス提供システム１０全体の制御や機能を実現する演算装置である。
【００３２】
本実施形態に係るサービス提供システム１０及びＰＣ端末３０は、図２に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３３】
次に、本実施形態に係る情報処理システム１に含まれる機器２０が画像形成装置である場合のハードウェア構成について、図３を参照しながら説明する。図３は、本実施形態に係る機器２０の一例のハードウェア構成を示す図である。
【００３４】
図３に示す機器２０は、コントローラ２１と、操作パネル２２と、外部Ｉ／Ｆ２３と、通信Ｉ／Ｆ２４と、プリンタ２５と、スキャナ２６とを有する。また、コントローラ２１は、ＣＰＵ３１と、ＲＡＭ３２と、ＲＯＭ３３と、ＮＶＲＡＭ３４と、ＨＤＤ３５とを有する。
【００３５】
ＲＯＭ３３は、各種プログラムやデータを格納している不揮発性の半導体メモリである。ＲＡＭ３２は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＮＶＲＡＭ３４は、例えば設定情報等を格納している。また、ＨＤＤ３５は、各種プログラムやデータを格納している不揮発性の記憶装置である。
【００３６】
ＣＰＵ３１は、ＲＯＭ３３やＮＶＲＡＭ３４、ＨＤＤ３５等からプログラムやデータ、設定情報等をＲＡＭ３２上に読み出し、処理を実行することで、機器２０全体の制御や機能を実現する演算装置である。
【００３７】
操作パネル２２は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部Ｉ／Ｆ２３は、外部装置とのインタフェースである。外部装置には、記録媒体２３ａ等がある。これにより、機器２０は、外部Ｉ／Ｆ２３を介して記録媒体２３ａの読み取り及び／又は書き込みを行うことができる。なお、記録媒体２３ａには、例えば、ＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３８】
通信Ｉ／Ｆ２４は、機器２０をネットワークに接続するインタフェースである。これにより、機器２０は、通信Ｉ／Ｆ２４を介して通信を行うことができる。プリンタ２５は、印刷データを印刷する印刷装置である。スキャナ２６は、原稿を読み取って電子ファイル（画像ファイル）を生成する読取装置である。
【００３９】
本実施形態に係る機器２０は、図３に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００４０】
＜サービス提供システムが提供するサービス＞
ここで、本実施形態に係るサービス提供システム１０が提供するサービスについて説明する。なお、以降では、機器２０が画像形成装置であるものとして説明する。
【００４１】
本実施形態では、機器２０において原稿をスキャンして生成された電子ファイルを、ＯＣＲ（Optical Character Reader）処理して、外部ストレージシステム４０に保存するサービスを「ＯＣＲ配信」サービスと表す。そして、本実施形態では、サービス提供システム１０が「ＯＣＲ配信」サービスを提供する場合について説明する。
【００４２】
ここで、サービス提供システム１０が「ＯＣＲ配信」サービスを提供するには、当該サービスを実現する一連の処理（処理フロー）をサービス提供システム１０に登録する必要がある。
【００４３】
したがって、本実施形態では、「ＯＣＲ配信」サービスを実現する一連の処理を登録する場合と、当該一連の処理により実現される「ＯＣＲ配信」サービスを利用する場合とについて説明する。
【００４４】
ただし、サービス提供システム１０により提供されるサービスは、これらに限られない。例えば、サービス提供システム１０は、機器２０において原稿をスキャンして生成された電子ファイルを、ＯＣＲ処理して、所定のメールアドレス宛にメール送信するサービスを提供しても良い。また、例えば、サービス提供システム１０は、外部ストレージシステム４０に保存されている電子ファイルを、プロジェクタで投影するサービスを提供しても良い。更に、例えば、サービス提供システム１０は、外部ストレージシステム４０に保存されている電子ファイルを、機器２０で印刷するサービスを提供しても良い。
【００４５】
＜機能構成＞
次に、本実施形態に係る情報処理システム１の機構構成について、図４を参照しながら説明する。図４は、第一の実施形態に係る情報処理システム１の一例の機能構成を示す図である。
【００４６】
図４に示す機器２０は、ＵＩ制御部２１０と、スキャン処理部２２０とを有する。これら各機能部は、機器２０にインストールされた１以上のプログラムが、ＣＰＵ３１に実行させる処理により実現される。
【００４７】
ＵＩ制御部２１０は、操作パネル２２に各種画面を表示させる。また、ＵＩ制御部２１０は、操作パネル２２に表示された各種画面におけるユーザの各種操作を受け付ける。
【００４８】
スキャン処理部２２０は、ＵＩ制御部２１０により受け付けられたユーザの操作に応じて、スキャナ２６で原稿をスキャンして電子ファイル（画像ファイル）を生成する。
【００４９】
図４に示すＰＣ端末３０は、ＵＩ制御部３１０を有する。当該機能部は、ＰＣ端末３０にインストールされた１以上のプログラムが、ＣＰＵ１６に実行させる処理により実現される。
【００５０】
ＵＩ制御部３１０は、表示装置１２に各種画面を表示させる。また、ＵＩ制御部２１０は、表示装置１２に表示された各種画面において、入力装置１１により入力されたユーザの各種操作を受け付ける。
【００５１】
図４に示すサービス提供システム１０は、サービス処理部１１０と、ドキュメントサービス部１６０と、外部ストレージ連携部１７０とを有する。これら各機能部は、サービス提供システム１０にインストールされた１以上のプログラムが、ＣＰＵ１６に実行させる処理により実現される。
【００５２】
また、サービス提供システム１０は、アプリ情報記憶部１８０を有する。当該記憶部は、ＨＤＤ１８を用いて実現可能である。なお、アプリ情報記憶部１８０は、サービス提供システム１０とネットワークを介して接続される記憶装置等を用いて実現されても良い。
【００５３】
サービス処理部１１０は、機器２０のＵＩ制御部２１０からの要求に応じて、後述するアプリ情報１０００により提供される各種サービスに関する処理を行う。また、サービス処理部１１０は、ＰＣ端末３０のＵＩ制御部３１０からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００の作成に関する処理を行う。
【００５４】
なお、処理フロー情報１１００とは、アプリ情報１０００により提供されるサービス（例えば、「ＯＣＲ配信」サービス等）を実現するための一連の処理（処理フロー）が定義された情報である。
【００５５】
ここで、サービス処理部１１０は、アプリ管理部１２０と、ロジック処理部１３０と、フロー作成処理部１４０と、データＩ／Ｆ部１５０とを有する。
【００５６】
アプリ管理部１２０は、アプリ情報記憶部１８０に記憶されているアプリ情報１０００を管理する。アプリ管理部１２０は、機器２０のＵＩ制御部２１０やＰＣ端末３０のＵＩ制御部３１０からの要求に応じて、各種の情報を返信する。
【００５７】
例えば、アプリ管理部１２０は、機器２０のＵＩ制御部２１０からの要求に応じて、アプリ一覧情報を返信する。なお、アプリ一覧情報とは、アプリ情報１０００の名称（アプリケーション名）やアプリ情報１０００の識別情報（アプリＩＤ）の一覧を示す情報である。
【００５８】
また、例えば、アプリ管理部１２０は、ロジック処理部１３０からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００を返信する。
【００５９】
更に、アプリ管理部１２０は、フロー作成処理部１４０からの要求に応じて、ＰＣ端末３０において作成された処理フロー情報１１００をアプリ情報記憶部１８０に記憶させる。
【００６０】
ロジック処理部１３０は、機器２０のＵＩ制御部２１０からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００をアプリ管理部１２０から取得する。そして、ロジック処理部１３０は、取得した処理フロー情報１１００に基づいて、ドキュメントサービス部１６０や外部ストレージ連携部１７０のファイル処理部１７１等に処理の実行を要求することで、当該処理フロー情報１１００に基づく一連の処理を実行する。
【００６１】
なお、ロジック処理部１３０は、後述するコンポーネントを組み合わせることにより、処理フロー情報１１００に基づく一連の処理を実行する。
【００６２】
これにより、本実施形態に係るサービス提供システム１０では、アプリ情報１０００により提供される各種サービスが実現される。ロジック処理部１３０の詳細については後述する。
【００６３】
フロー作成処理部１４０は、ＰＣ端末３０のＵＩ制御部３１０からの要求に応じて、処理フロー作成画面を返信する。なお、処理フロー作成画面とは、処理フロー情報１１００を作成するための画面である。
【００６４】
そして、フロー作成処理部１４０は、処理フロー作成画面において作成された処理フローを示す処理フロー情報１１００の登録をアプリ管理部１２０に要求する。
【００６５】
このように、本実施形態に係る情報処理システム１は、ＰＣ端末３０において作成された処理フローをサービス提供システム１０に登録することができる。
【００６６】
データＩ／Ｆ部１５０は、機器２０のＵＩ制御部２１０からの要求に応じて、外部ストレージ連携部１７０のデータ処理部１７２に対して、各種の要求（例えば、フォルダ一覧の取得要求等）を行う。
【００６７】
ドキュメントサービス部１６０は、処理フロー情報１１００に基づく一連の処理（処理フロー）に含まれる所定の処理を実行する。ここで、ドキュメントサービス部１６０は、ＯＣＲ処理部１６１と、メール送信部１６２とを有する。
【００６８】
ＯＣＲ処理部１６１は、電子ファイルに対してＯＣＲ処理を行う。メール送信部１６２は、指定されたメールアドレス宛にメールを送信する。
【００６９】
なお、ドキュメントサービス部１６０には、これら以外にも、例えば、電子ファイルの圧縮又は解凍するための圧縮・解凍処理部、電子ファイルのデータ形式を変換するためのデータ形式変換部等、種々の機能部が含まれていても良い。
【００７０】
外部ストレージ連携部１７０は、ロジック処理部１３０やデータＩ／Ｆ部１５０からの要求に応じて、外部ストレージシステム４０に対して、各種の要求（例えば、フォルダ一覧の取得要求等）を行う。
【００７１】
本実施形態に係るサービス提供システム１０は、当該サービス提供システム１０と連携して処理を行う外部ストレージシステム４０毎に、それぞれの外部ストレージシステム４０に対応する外部ストレージ連携部１７０を有する。すなわち、本実施形態に係るサービス提供システム１０は、外部ストレージシステム４０１に対して各種の要求を行うための外部ストレージＡ連携部１７０１を有する。同様に、本実施形態に係るサービス提供システム１０は、外部ストレージシステム４０２に対して各種の要求を行うための外部ストレージＢ連携部１７０２等を有する。
【００７２】
なお、以降では、複数の外部ストレージ連携部１７０について、各々を区別するときは、上記のように、「外部ストレージＡ連携部１７０１」、「外部ストレージＢ連携部１７０２」等と添え字を用いて表す。
【００７３】
ここで、外部ストレージ連携部１７０は、ロジック処理部１３０からの要求を受け付けるファイル処理部１７１と、データＩ／Ｆ部１５０からの要求を受け付けるデータ処理部１７２とを有する。
【００７４】
ファイル処理部１７１は、外部ストレージシステム４０に保存されている電子ファイルに対する操作（例えば、取得、保存、編集等）を行うためのＡＰＩ（Application Programming Interface）が定義された共通Ｉ／Ｆ１７１１及び固有Ｉ／Ｆ１７１２を有する。
【００７５】
共通Ｉ／Ｆ１７１１は、複数の外部ストレージシステム４０間で共通に利用できるＡＰＩであり、例えば図５（ａ）に示すＡＰＩが挙げられる。すなわち、ファイル処理部１７１の共通Ｉ／Ｆ１７１１は、全ての外部ストレージシステム４０が利用できるファイル操作に関する機能（例えば、ファイルの取得、保存等）を利用するためのＡＰＩ群である。
【００７６】
一方、固有Ｉ／Ｆ１７１２は、特定の外部ストレージシステム４０において利用できるＡＰＩであり、例えば図５（ｂ）に示すＡＰＩが挙げられる。すなわち、ファイル処理部１７１の固有Ｉ／Ｆ１７１２は、ある特定の外部ストレージシステム４０において利用できるファイル操作に関する機能（例えば、ドキュメントにファイルを付加等）を利用するためのＡＰＩ群である。
【００７７】
したがって、共通Ｉ／Ｆ１７１１は、全ての外部ストレージ連携部１７０に対して同様に定義される。一方で、固有Ｉ／Ｆ１７１２は、当該固有Ｉ／Ｆ１７１２で定義されるＡＰＩが利用可能な特定の外部ストレージシステム４０に対応する外部ストレージ連携部１７０に対して定義される。
【００７８】
データ処理部１７２は、外部ストレージシステム４０に保存されている電子ファイルの書誌情報等のメタデータ（例えば、ファイル一覧やフォルダ一覧等）を取得等するためのＡＰＩが定義された共通Ｉ／Ｆ１７２１及び固有Ｉ／Ｆ１７２２を有する。
【００７９】
共通Ｉ／Ｆ１７２１は、複数の外部ストレージシステム４０間で共通に利用できるＡＰＩであり、例えば図５（ｃ）に示すＡＰＩが挙げられる。すなわち、データ処理部１７２の共通Ｉ／Ｆ１７２１は、全ての外部ストレージシステム４０で利用できるメタデータ取得に関する機能（例えば、ファイル一覧の取得、フォルダ一覧の取得等）を利用するためのＡＰＩ群である。
【００８０】
一方、固有Ｉ／Ｆ１７２２は、ある特定の外部ストレージシステム４０において利用できるＡＰＩであり、例えば図５（ｄ）に示すＡＰＩが挙げられる。すなわち、データ処理部１７２の固有Ｉ／Ｆ１７２２は、ある特定の外部ストレージシステム４０において利用できるメタデータ取得等に関する機能（例えば、画像ファイル一覧の取得等）を利用するためのＡＰＩ群である。
【００８１】
したがって、共通Ｉ／Ｆ１７２１は、全ての外部ストレージ連携部１７０に対して同様に定義される。一方で、固有Ｉ／Ｆ１７２２は、当該固有Ｉ／Ｆ１７２２で定義されるＡＰＩが利用可能な特定の外部ストレージシステム４０に対応する外部ストレージ連携部１７０に対して定義される。
【００８２】
以上のように、本実施形態に係るサービス提供システム１０は、当該サービス提供システム１０と連携して処理を行う外部ストレージシステム４０毎に、それぞれの外部ストレージシステム４０に対応する外部ストレージ連携部１７０を有する。このため、連携先となる外部ストレージシステム４０を追加や削除（以降、「追加等」と表す。）する場合、当該追加等される外部ストレージシステム４０に対応する外部ストレージ連携部１７０をサービス提供システム１０に追加等すれば良い。
【００８３】
これにより、本実施形態に係るサービス提供システム１０では、連携先となる外部ストレージシステム４０の追加等に伴う影響を局所化することができる。換言すれば、本実施形態に係るサービス提供システム１０では、他の機能部（サービス処理部１１０やドキュメントサービス部１６０等）に影響を与えることなく、連携先となる外部ストレージシステム４０の追加等を行うことができる。なお、外部ストレージ連携部１７０の追加等は、ＳＤＫ（Software Development Kit）を用いて行うことができる。
【００８４】
また、外部ストレージ連携部１７０のファイル処理部１７１は、共通Ｉ／Ｆ１７１１と固有Ｉ／Ｆ１７１２とを異なるモジュール等で定義している。また、共通Ｉ／Ｆ１７１１及び固有Ｉ／Ｆ１７１２で定義されるＡＰＩは、「外部ストレージ名」を指定することで利用できる（すなわち、「外部ストレージ名」が可変部分となっている。）。
【００８５】
これにより、外部ストレージ連携部１７０を追加する場合、他の外部ストレージ連携部１７０のファイル処理部１７１に定義されている共通Ｉ／Ｆ１７１１を再利用することができる。換言すれば、外部ストレージ連携部１７０を追加する場合、当該追加する外部ストレージ連携部１７０のファイル処理部１７１は、固有Ｉ／Ｆ１７２２のみを開発すれば良い。このことは、データ処理部１７２の共通Ｉ／Ｆ１７２１及び固有Ｉ／Ｆ１７２２についても同様である。
【００８６】
アプリ情報記憶部１８０は、機器２０に各種サービスを提供するためのアプリケーションであるアプリ情報１０００を記憶する。
【００８７】
アプリ情報１０００は、当該アプリ情報１０００を識別するためのアプリＩＤと、当該アプリ情報１０００の名称（アプリ名）とが関連付けられてアプリ情報記憶部１８０に記憶されている。また、アプリ情報１０００には、機器２０に提供するサービスを実現するための一連の処理（処理フロー）が定義された処理フロー情報１１００が含まれる。なお、処理フロー情報１１００の詳細については後述する。
【００８８】
ここで、ロジック処理部１３０の詳細な機能構成について、図６を参照しながら説明する。図６は、第一の実施形態に係るロジック処理部１３０の一例の機能構成を示す図である。
【００８９】
図６に示すロジック処理部１３０は、フロー実行部１３１と、コンポーネント管理部１３２と、コンポーネント群１３３と、型変換管理部１３４と、型変換群１３５とを有する。また、ロジック処理部１３０は、処理情報テーブル２０００と、型変換情報テーブル３０００とを利用する。
【００９０】
フロー実行部１３１は、機器２０のＵＩ制御部２１０からの要求に応じて、アプリ情報１０００に含まれる処理フロー情報１１００をアプリ管理部１２０から取得する。そして、フロー実行部１３１は、アプリ管理部１２０から取得した処理フロー情報１１００に基づいて、コンポーネントに対して処理の実行を要求する。
【００９１】
ここで、コンポーネントとは、処理フロー情報１１００に基づく一連の処理（処理フロー）に含まれる所定の処理を実行するためのモジュール等である。したがって、処理フロー情報１１００に基づく一連の処理は、１以上のコンポーネントにより実行される各処理が組み合わされることにより実現される。なお、コンポーネントは、例えばクラスや関数等で定義される。
【００９２】
コンポーネント管理部１３２は、フロー実行部１３１からの要求に応じて、コンポーネントの生成を行う。コンポーネントの生成とは、例えばクラスや関数等で定義されているコンポーネントを、メモリ（例えばＲＡＭ１４）上に展開することである。
【００９３】
また、コンポーネント管理部１３２は、フロー作成処理部１４０からの要求に応じて、処理情報テーブル２０００を返信する。
【００９４】
ここで、処理情報テーブル２０００の詳細について、図７を参照しながら説明する。図７は、処理情報テーブル２０００の一例を示す図である。
【００９５】
図７に示す処理情報テーブル２０００には、１以上の処理情報が格納されている。また、処理情報は、データ項目として、コンポーネント名と、アイコンパスと、コンポーネントＩＤと、オペレーション名と、オペレーションＩＤと、パラメータ設定情報とを有する。
【００９６】
コンポーネント名は、コンポーネントの名称である。アイコンパスは、コンポーネント及びオペレーションを表すアイコン等の表示部品が格納されている格納先パス（例えば、ＵＲＬ（Uniform Resource Locator）等）である。
【００９７】
コンポーネントＩＤは、コンポーネントを識別する識別情報である。オペレーション名は、コンポーネントにより実行される処理を示すオペレーションの名称である。オペレーションＩＤは、オペレーションを識別する識別情報である。パラメータ設定情報は、コンポーネントにより実行される処理に用いられるパラメータ情報のパラメータ値を設定する際に用いられる各種情報である。
【００９８】
また、パラメータ設定情報には、パラメータ名、表示名、及び入力形式等が含まれる。パラメータ名は、パラメータ情報の名称である。表示名は、パラメータ情報のパラメータ値を設定するための画面（後述するパラメータ設定画面）に表示される表示名である。入力形式は、パラメータ値として設定可能なデータ形式や入力数（例えば、文字や数字、入力可能な文字数等）である。
【００９９】
例えば、コンポーネント名「外部ストレージＡコンポーネント」（コンポーネントＩＤ「ｓｔｏｒａｇｅＡ」）は、オペレーション名「配信」（オペレーションＩＤ「ｕｐｌｏａｄＦｉｌｅ」）の処理（オペレーション）を実行することできる。このとき、外部ストレージＡコンポーネントは、パラメータ名「ｆｏｌｄｅｒＩＤ」のパラメータ情報を用いることが示されている。
【０１００】
同様に、例えば、コンポーネント名「外部ストレージＡコンポーネント」（コンポーネントＩＤ「ｓｔｏｒａｇｅＡ」）は、オペレーション名「取得」（オペレーションＩＤ「ｇｅｔＦｉｌｅｓ」）の処理（オペレーション）を実行することができる。このとき、外部ストレージＡコンポーネントは、パラメータ名「ｆｉｌｅＩＤ」のパラメータ情報を用いることが示されている。
【０１０１】
また、同様に、例えば、コンポーネント名「ＯＣＲコンポーネント」（コンポーネントＩＤ「ｏｃｒ」）は、オペレーション名「ＯＣＲ」（オペレーションＩＤ「ｐｒｏｃｅｓｓ」）の処理（オペレーション）を実行することができる。このとき、ＯＣＲコンポーネントは、パラメータ名「ｌａｎｇｕａｇｅ」のパラメータ情報と、パラメータ名「ｏｕｔｐｕｔＴｙｐｅ」のパラメータ情報を用いることが示されている。
【０１０２】
このように、各コンポーネントには、１以上のオペレーションが含まれる。そして、コンポーネントは、オペレーションと、当該オペレーションに対するパラメータとが設定されることで、各種処理を実行することができる。
【０１０３】
コンポーネント群１３３は、コンポーネントの集合である。コンポーネント群１３３には、外部ストレージシステム４０１（外部ストレージＡ）と連携して処理を行うための外部ストレージＡコンポーネント１３３１が含まれる。また、コンポーネント群１３３には、外部ストレージシステム４０２（外部ストレージＢ）と連携して処理を行うための外部ストレージＢコンポーネント１３３２が含まれる。
【０１０４】
さらに、コンポーネント群１３３は、電子ファイルにＯＣＲ処理を行うためのＯＣＲコンポーネント１３３３、指定されたメールアドレス宛にメールを送信するためのメール送信コンポーネント１３３４等が含まれる。
【０１０５】
なお、コンポーネント群１３３には、これら以外にも、例えば、画像ファイルのサイズを変換するためのサイズ変換コンポーネントや言語の翻訳を行うための翻訳コンポーネント等が含まれても良い。また、コンポーネント群１３３には、例えば、外部ストレージシステム４０に対してログイン認証を行うためのログインコンポーネント等が含まれていても良い。このように、コンポーネント群１３３には、各種のコンポーネントが含まれる。
【０１０６】
ここで、各コンポーネントは、コンポーネント共通Ｉ／Ｆ１３３０を有する。コンポーネント共通Ｉ／Ｆ１３３０は、各コンポーネントに対して共通に定義されたＡＰＩであり、コンポーネントを生成するためのＡＰＩと、コンポーネントに対して処理の実行を要求するためのＡＰＩとが含まれる。
【０１０７】
各コンポーネントがコンポーネント共通Ｉ／Ｆ１３３０を有することで、コンポーネントの追加等に伴う影響を局所化することができる。すなわち、本実施形態に係るサービス提供システム１０では、例えば、フロー実行部１３１やコンポーネント管理部１３２等に影響を与えることなく、コンポーネントの追加等を行うことができる。
【０１０８】
型変換管理部１３４は、データ型の型変換を管理する。ここで、各コンポーネントは、自身が扱えるデータ型が予め決まっている。したがって、型変換管理部１３４は、コンポーネントからの要求に応じて、型変換情報テーブル３０００を参照して、型変換群１３５に定義されている型変換を生成する。そして、型変換管理部１３４は、生成された型変換に対して型変換処理の実行を要求する。これにより、型変換管理部１３４は、要求元のコンポーネントが扱えるデータ型に型変換を行う。
【０１０９】
ここで、型変換情報テーブル３０００の詳細について、図８を参照しながら説明する。図８は、型変換情報テーブル３０００の一例を示す図である。
【０１１０】
図８に示す型変換情報テーブル３０００に格納されている型変換情報は、データ項目として、変換前のデータ型と、変換後のデータ型と、生成する型変換とを有する。すなわち、型変換情報は、変換前のデータ型及び変換後のデータ型毎に、当該変換前のデータ型を当該変換後のデータ型に型変換するための型変換が関連付けられた情報である。
【０１１１】
これにより、例えば、ストリームデータを示すデータ型「ＩｎｐｕｔＳｔｒｅａｍ」のデータを、記憶装置等に格納されている電子ファイルのパス（アドレス）を示すデータ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」に型変換する場合、第１の型変換を生成すれば良い。
【０１１２】
なお、型変換の生成とは、例えばクラスで定義された型変換を、メモリ（例えばＲＡＭ１４）上に展開することである。また、データ型には、上述した「ＩｎｐｕｔＳｔｒｅａｍ」や「ＬｏｃａｌＦｉｌｅＰａｔｈ」以外に、例えば、電子ファイルの実体を示すデータ型「Ｆｉｌｅ」等が挙げられる。
【０１１３】
型変換群１３５は、型変換の集合である。型変換群１３５には、データ型「ＩｎｐｕｔＳｔｒｅａｍ」のデータを、データ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」のデータに変換する第１の型変換１３５１が含まれる。また、型変換群１３５には、データ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」のデータを、データ型「Ｆｉｌｅ」のデータに変換する第２の型変換１３５２等が含まれる。
【０１１４】
ここで、各型変換は、型変換共通Ｉ／Ｆ１３５０を有する。型変換共通Ｉ／Ｆ１３５０は、各型変換に対して共通に定義されたＡＰＩであり、型変換を生成するためのＡＰＩと、型変換に対して処理の実行を要求するためのＡＰＩとが含まれる。
【０１１５】
各型変換が型変換共通Ｉ／Ｆ１３５０を有することで、型変換の追加等に伴う影響を局所化することができる。すなわち、本実施形態に係るサービス提供システム１０では、例えば、型変換管理部１３４等に影響を与えることなく、型変換の追加等を行うことができる。
【０１１６】
ここで、「ＯＣＲ配信」サービスを実現する一連の処理が定義された処理フロー情報１１００の詳細について、図９を参照しながら説明する。図９は、ＯＣＲ配信を実現する一連の処理が定義された処理フロー情報１１００の一例を示す図である。
【０１１７】
図９に示す処理フロー情報１１００には、処理フロー情報１１００を識別するフローＩＤ１１０１と、処理フロー情報１１００に基づく一連の処理の名称を示すフロー名１１０２と、一連の処理に含まれる各処理を定義したフロー詳細１１０３とが含まれる。
【０１１８】
また、フロー詳細１１０３には、処理定義１１０４と、処理定義１１０５とが含まれる。各処理定義１１０４及び１１０５には、コンポーネントＩＤが設定される「ｃｏｍｐｏｎｅｎｔ」と、オペレーションＩＤが設定される「ｏｐｅｒａｔｉｏｎ」と、パラメータ情報が設定される「ｐａｒａｍｅｔｅｒｓ」とが定義されている。
【０１１９】
例えば、処理定義１１０４の「ｃｏｍｐｏｎｅｎｔ」には、コンポーネントＩＤ「ｏｃｒ」が設定されている。また、処理定義１１０４の「ｏｐｅｒａｔｉｏｎ」には、オペレーションＩＤ「ｐｒｏｃｅｓｓ」が設定されている。更に、処理定義１１０４の「ｐａｒａｍｅｔｅｒｓ」には、パラメータ情報「"ｌａｎｇｕａｇｅ"："Ｅｎｇｌｉｓｈ"」及び「"ｏｕｔｐｕｔＴｙｐｅ"："ｐｄｆ"」が設定されている。
【０１２０】
同様に、処理定義１１０５の「ｃｏｍｐｏｎｅｎｔ」には、コンポーネントＩＤ「ｓｔｏｒａｇｅＡ」が設定されている。また、処理定義１１０５の「ｏｐｅｒａｔｉｏｎ」には、オペレーションＩＤ「ｕｐｌｏａｄＦｉｌｅ」が設定されている。更に、処理定義１１０５の「ｐａｒａｍｅｔｅｒｓ」には、パラメータ情報「"ｆｏｌｄｅｒＩｄ"："ｆｏｌｄｅｒＡ"」が設定されている。
【０１２１】
これにより、図９に示す処理フロー情報１１００に基づく一連の処理では、まず、ＯＣＲ言語「英語」で、電子ファイルに対してＯＣＲ処理が行われ、当該ＯＣＲ処理の処理結果がＰＤＦ形式の電子ファイルで出力される。そして、当該一連の処理では、外部ストレージシステム４０１におけるフォルダＩＤ「ｆｏｌｄｅｒＡ」のフォルダに対して、当該ＰＤＦ形式の電子ファイルがアップロードされる。
【０１２２】
なお、各処理定義に定義された処理の実行順は、フロー詳細１１０３において、上から順に実行される。すなわち、図９に示す処理フロー情報１１００に基づく一連の処理（処理フロー）では、処理定義１１０４に定義された処理、処理定義１１０５に定義された処理の順で実行される。ただし、これに限られず、処理フロー情報１１００には、例えば、各処理定義に定義された処理の実行順を示す情報が定義されていても良い。
【０１２３】
＜処理の詳細＞
次に、本実施形態に係る情報処理システム１の処理の詳細について説明する。まず、ＰＣ端末３０のユーザＵが、「ＯＣＲ配信」サービスを実現する一連の処理（処理フロー）をサービス提供システム１０に登録する処理について、図８を参照しながら説明する。図１０は、処理フローの登録処理の一例を示すシーケンス図である。
【０１２４】
ユーザＵは、ＰＣ端末３０を用いて、処理フローの作成開始操作を行う（ステップＳ１００１）。例えば、ユーザＵは、ＰＣ端末３０を用いて、サービス提供システム１０にログインした後、当該ログイン後に表示されるポータル画面等において、「処理フロー作成」ボタン等を選択することにより、処理フローの作成開始操作を行うことができる。
【０１２５】
ＰＣ端末３０のＵＩ制御部３１０は、処理フローの作成開始操作を受け付けると、アプリ一覧画面の取得要求を、サービス提供システム１０のフロー作成処理部１４０に送信する（ステップＳ１００２）。
【０１２６】
サービス提供システム１０のフロー作成処理部１４０は、アプリ一覧画面の取得要求を受信すると、アプリ一覧情報の取得要求をアプリ管理部１２０に送信する（ステップＳ１００３）。そして、アプリ管理部１２０は、アプリ一覧情報をフロー作成処理部１４０に返信する。なお、アプリ一覧情報とは、アプリ情報記憶部１８０に記憶されているアプリ情報１０００のアプリ名やアプリＩＤの一覧を示す情報である。
【０１２７】
サービス提供システム１０のフロー作成処理部１４０は、アプリ一覧情報を受信すると、当該アプリ一覧情報に基づいて、アプリ情報１０００のアプリ名の一覧を表示するアプリ一覧画面を作成する（ステップＳ１００４）。なお、アプリ一覧画面は、例えば、ＨＴＭＬ（HyperText Markup Language）やＣＳＳ（Cascading Style Sheets）等により画面が定義されている。
【０１２８】
そして、フロー作成処理部１４０は、作成したアプリ一覧画面をＵＩ制御部３１０に返信する。
【０１２９】
ＰＣ端末３０のＵＩ制御部３１０は、アプリ一覧画面を受信すると、例えば図１１（ａ）に示すアプリ一覧画面Ｇ１００を表示する（ステップＳ１００５）。ここで、図１１（ａ）に示すアプリ一覧画面Ｇ１００には、アプリ情報１０００のアプリ名の一覧であるアプリ一覧Ｇ１０１が含まれる。
【０１３０】
次に、ユーザＵは、図１１（ａ）に示すアプリ一覧画面Ｇ１００のアプリ一覧Ｇ１０１から、処理フローを作成するアプリケーションを選択する操作を行う（ステップＳ１００６）。ここで、以降では、図１１（ａ）に示すアプリ一覧画面Ｇ１００のアプリ一覧Ｇ１０１から「アプリ１」がユーザＵにより選択されたものとして説明する。
【０１３１】
ＰＣ端末３０のＵＩ制御部３１０は、アプリケーションの選択操作を受け付けると、処理フロー作成画面の取得要求を、サービス提供システム１０のフロー作成処理部１４０に送信する（ステップＳ１００７）。なお、当該取得要求には、ユーザＵにより選択されたアプリケーションを識別するための情報（例えば、アプリ一覧Ｇ１０１に含まれる各表示部品を識別する情報やアプリＩＤ等）が含まれる。
【０１３２】
サービス提供システム１０のフロー作成処理部１４０は、処理フロー作成画面の取得要求を受信すると、処理情報テーブルの取得要求を、ロジック処理部１３０のコンポーネント管理部１３２に送信する（ステップＳ１００８）。そして、コンポーネント管理部１３２は、処理情報テーブルの取得要求を受信すると、処理情報テーブル２０００をフロー作成処理部１４０に返信する。
【０１３３】
サービス提供システム１０のフロー作成処理部１４０は、処理情報テーブル２０００を受信すると、当該処理情報テーブル２０００に格納されている処理情報に基づいて、処理フロー作成画面を作成する（ステップＳ１００９）。なお、処理フロー作成画面は、例えば、ＨＴＭＬやＣＳＳ等により画面が定義されている。
【０１３４】
そして、フロー作成処理部１４０は、作成した処理フロー作成画面をＵＩ制御部３１０に返信する。
【０１３５】
ＰＣ端末３０のＵＩ制御部３１０は、処理フロー作成画面を受信すると、例えば図１１（ｂ）に示す処理フロー作成画面Ｇ２００を表示する（ステップＳ１０１０）。
【０１３６】
ここで、図１１（ｂ）に示す処理フロー作成画面Ｇ２００は、「アプリ１」の処理フローを作成するための画面であり、各処理情報に含まれるコンポーネント名が一覧表示されたコンポーネント一覧Ｇ２０１が含まれる。また、図１１（ｂ）に示す処理フロー作成画面Ｇ２００には、処理フローをグラフィカルに作成するための作成領域Ｇ２０２と、操作ガイド等の説明が表示される説明欄Ｇ２０３と、処理フローのフロー名を設定するフロー名設定欄Ｇ２０４とが含まれる。更に、図１１（ｂ）に示す処理フロー作成画面Ｇ２００には、作成された処理フローを登録するための登録ボタンＧ２０５が含まれる。
【０１３７】
ユーザＵは、処理フロー作成画面Ｇ２００において、１以上のコンポーネント及びオペレーションを選択して、作成領域Ｇ２０２に配置すると共に、各コンポーネントが処理に用いるパラメータ情報を定義することで、処理フローを作成することができる。
【０１３８】
次に、ユーザＵは、図１１（ｂ）に示す処理フロー作成画面Ｇ２００において、「アプリ１」の処理フローを作成する操作を行って、処理フローの作成処理を行う（ステップＳ１０１１）。なお、処理フローの作成処理の詳細については後述する。
【０１３９】
次に、ユーザＵは、処理フローを作成すると、登録ボタンＧ２０５を押下して、処理フローの登録操作を行う（ステップＳ１０１２）。
【０１４０】
ＰＣ端末３０のＵＩ制御部３１０は、処理フローの登録操作を受け付けると、処理フローの登録要求を、サービス提供システム１０のフロー作成処理部１４０に送信する（ステップＳ１０１３）。なお、当該登録要求には、ユーザＵにより作成された処理フローを示す情報（例えば、処理フロー情報１１００等）と、「アプリ１」を識別する情報（例えば、アプリＩＤや処理フロー作成画面Ｇ２００を識別する情報等）が含まれる。
【０１４１】
サービス提供システム１０のフロー作成処理部１４０は、処理フローの登録要求を受信すると、当該登録要求をアプリ管理部１２０に送信する（ステップＳ１０１４）。そして、アプリ管理部１２０は、処理フローの登録要求に含まれる処理フロー情報１１００を、「アプリ１」のアプリ情報１０００と関連付けてアプリ情報記憶部１８０に記憶させる。これにより、ユーザＵにより作成された処理フローがサービス提供システム１０に登録される。
【０１４２】
ここで、上記のステップＳ１０１１において、ユーザが、１以上のコンポーネント及びオペレーションを選択して、作成領域Ｇ２０２に配置する場合の処理について、図１２を参照しながら説明する。図１２は、処理フローの作成処理（１／２）の一例を示すシーケンス図である。
【０１４３】
まず、ユーザＵは、コンポーネント及びオペレーションの配置操作を行う（ステップＳ１２０１）。すなわち、ユーザＵは、次のようにしてコンポーネント及びオペレーションの配置操作を行う。
【０１４４】
まず、図１３（ａ）に示す処理フロー作成画面Ｇ３００において、コンポーネント一覧Ｇ２０１から「外部ストレージＡコンポーネント」をユーザＵが選択すると、外部ストレージＡコンポーネント１３３１のオペレーション一覧Ｇ３０１が表示される。このように、コンポーネント一覧Ｇ２０１からコンポーネントが選択されると、選択されたコンポーネントのオペレーション一覧が表示される。
【０１４５】
次に、オペレーション一覧Ｇ３０１から「配信」オペレーションをユーザＵが選択した上で、作成領域Ｇ２０２内の所望の位置を選択する。これにより、ユーザＵは、コンポーネント及びオペレーションの配置操作を行うことができる。なお、配置操作は、例えば、オペレーション一覧Ｇ３０１の「配信」オペレーションを、作業領域Ｇ２０２内の所望の位置にドラッグアンドドロップすることにより行っても良い。
【０１４６】
ここで、図１３（ａ）に示す処理フロー作成画面Ｇ３００において、オペレーション一覧からオペレーションがユーザＵにより選択されると、選択されたオペレーションの説明が説明欄Ｇ２０３に表示される。例えば、上記のように、外部ストレージＡコンポーネント１３３１の「配信」オペレーションがユーザＵにより選択されると、当該「配信」オペレーションの説明が説明欄Ｇ２０３に表示される。
【０１４７】
ＰＣ端末３０のＵＩ制御部３１０は、コンポーネント及びオペレーションの配置操作を受け付けると、コンポーネントＩＤと、オペレーションＩＤと、配置位置とを、サービス提供システム１０のフロー作成処理部１４０に送信する（ステップＳ１２０２）。なお、コンポーネントＩＤは、ユーザＵにより選択された外部ストレージＡコンポーネント１３３１のコンポーネントＩＤ「ｓｔｏｒａｇｅＡ」である。同様に、オペレーションＩＤは、ユーザＵにより選択された「配信」オペレーションのオペレーションＩＤ「ｕｐｌｏａｄＦｉｌｅ」である。また、配置位置は、例えば、コンポーネント及びオペレーションの配置操作が行われた作業領域Ｇ２０２内の位置座標等である。
【０１４８】
サービス提供システム１０のフロー作成処理部１４０は、コンポーネントＩＤ及びオペレーションＩＤを受信すると、当該コンポーネントＩＤ及びオペレーションＩＤに対応する処理情報を処理情報テーブル２０００から取得する（ステップＳ１２０３）。すなわち、フロー作成処理部１４０は、コンポーネントＩＤ「ｓｔｏｒａｇｅＡ」及びオペレーションＩＤ「ｕｐｌｏａｄＦｉｌｅ」に対応する処理情報を処理情報テーブル２０００から取得する。
【０１４９】
次に、サービス提供システム１０のフロー作成処理部１４０は、処理情報を取得すると、アイコンの取得要求を、ロジック処理部１３０のコンポーネント管理部１３２に送信する（ステップＳ１２０４）。なお、当該取得要求には、上記のステップＳ１２０３で取得された処理情報のアイコンパスが含まれる。
【０１５０】
ロジック処理部１３０のコンポーネント管理部１３２は、アイコンの取得要求を受信すると、当該取得要求に含まれるアイコンパスからアイコンを取得する（ステップＳ１２０５）。そして、コンポーネント管理部１３２は、取得したアイコンをフロー作成処理部１４０に返信する。なお、アイコンは、例えば、ＰＮＧやＪＰＥＧ、ＩＣＯ等のデータ形式の画像データである。
【０１５１】
サービス提供システム１０のフロー作成処理部１４０は、アイコンを受信すると、処理フロー作成画面の作成領域Ｇ２０２の配置位置にアイコンが表示されるように、当該作成領域Ｇ２０２を更新する（ステップＳ１２０６）。そして、フロー作成処理部１４０は、更新後の作成領域Ｇ２０２をＵＩ制御部３１０に返信する。
【０１５２】
ＰＣ端末３０のＵＩ制御部３１０は、更新後の作成領域Ｇ２０２を受信すると、当該更新後の作成領域Ｇ２０２を表示する（ステップＳ１２０７）。すなわち、ＵＩ制御部３１０は、図１３（ａ）に示す処理フロー作成画面Ｇ３００の作成領域Ｇ２０２において、アイコンＰ１１を表示する。これにより、ユーザＵにより選択された外部ストレージＡコンポーネント１３３１の「配信」オペレーションを表すアイコンＰ１１が作成領域Ｇ２０２に配置される。
【０１５３】
その後、同様に、図１３（ｂ）に示す処理フロー作成画面Ｇ４００において、コンポーネント一覧Ｇ２０１から「ＯＣＲコンポーネント」をユーザＵが選択すると、ＯＣＲコンポーネント１３３３のオペレーション一覧Ｇ４０１が表示される。そして、オペレーション一覧Ｇ４０１から「ＯＣＲ」オペレーションを選択した上で、作成領域Ｇ２０２内の所望の位置が選択されると、ＯＣＲコンポーネント１３３３の「ＯＣＲ」オペレーションを表すアイコンＰ１２が作成領域Ｇ２０２の当該位置に配置される。
【０１５４】
また、図１３（ａ）に示す処理フロー作成画面Ｇ３００の作成領域Ｇ２０２において、ユーザＵが、アイコンＰ１１とアイコンＰ１２との先行関係を指定する操作を行うことで、矢印Ｐ１３が表示される。これにより、ユーザＵは、アイコンＰ１２が示すコンポーネントの処理（オペレーション）の次に、アイコンＰ１１が示すコンポーネントの処理（オペレーション）を行うことを指定できる。これにより、ユーザＵは、ＯＣＲコンポーネント１３３３の「ＯＣＲ」オペレーションを行った後、外部ストレージＡコンポーネント１３３１の「配信」オペレーションを行う処理フローＦ１１を作成することができる。
【０１５５】
更に、図１３（ａ）に示す処理フロー作成画面Ｇ３００のフロー名設定欄Ｇ２０４に、処理フローＦ１１のフロー名を設定することができる。
【０１５６】
ここで、図１３（ａ）に示す処理フロー作成画面Ｇ３００において、例えば、アイコンＰ１１やアイコンＰ１１が作成領域Ｇ２０２に配置されると、処理フローを登録するための説明が説明欄Ｇ２０３に表示される。例えば、上記のように、アイコンＰ１２が作成領域Ｇ２０２に配置されると、処理フローを登録するための説明が説明欄Ｇ２０３に表示される。このように、説明欄Ｇ２０３には、ユーザＵの操作に応じて、各コンポーネントの説明や当該ユーザＵが次に行うと想定される操作の説明等が表示される。
【０１５７】
以上により、ユーザＵは、コンポーネント及びオペレーションを表すアイコンを作成領域Ｇ２０２に配置することで、処理フローＦ１１を作成することができる。
【０１５８】
次に、各コンポーネントが処理（オペレーション）に用いるパラメータ情報を定義する場合の処理について、図１４を参照しながら説明する。図１４は、処理フローの作成処理（２／２）の一例を示すシーケンス図である。
【０１５９】
まず、ユーザＵは、アイコンの選択操作を行う（ステップＳ１４０１）。ここで、以降では、作成領域Ｇ２０２に配置されたアイコンＰ１１をユーザＵが選択したものとする。
【０１６０】
ＰＣ端末３０のＵＩ制御部３１０は、アイコンの選択操作を受け付けると、選択されたアイコンに対応するコンポーネントＩＤ及びオペレーションＩＤを、サービス提供システム１０のフロー作成処理部１４０に送信する（ステップＳ１４０２）。すなわち、ＵＩ制御部３１０は、アイコンＰ１１に対応するコンポーネントＩＤ「ｓｔｏｒａｇｅＡ」及びオペレーションＩＤ「ｕｐｌｏｅａｄＦｉｌｅ」をフロー作成処理部１４０に送信する。
【０１６１】
サービス提供システム１０のフロー作成処理部１４０は、コンポーネントＩＤ及びオペレーションＩＤを受信すると、当該コンポーネントＩＤ及びオペレーションＩＤに対応する処理情報を処理情報テーブル２０００から取得する（ステップＳ１４０３）。すなわち、フロー作成処理部１４０は、コンポーネントＩＤ「ｓｔｏｒａｇｅＡ」及びオペレーションＩＤ「ｕｐｌｏｅａｄＦｉｌｅ」に対応する処理情報を処理情報テーブル２０００から取得する。
【０１６２】
次に、サービス提供システム１０のフロー作成処理部１４０は、上記のステップＳ１４０３で取得した処理情報に含まれるパラメータ設定情報に基づいて、パラメータ設定画面を作成する（ステップＳ１４０４）。なお、パラメータ設定画面とは、コンポーネントの処理に用いられるパラメータ情報のパラメータ値を設定するための画面であり、例えば、ＨＴＭＬやＣＳＳ等により画面が定義されている。
【０１６３】
そして、フロー作成処理部１４０は、作成したパラメータ設定画面をＵＩ制御部３１０に返信する。
【０１６４】
ＰＣ端末３０のＵＩ制御部３１０は、パラメータ設定画面を受信すると、例えば図１５に示すパラメータ設定画面Ｇ５００を表示する（ステップＳ１４０５）。
【０１６５】
ここで、図１５に示すパラメータ設定画面Ｇ５００は、外部ストレージＡコンポーネント１３３１の「配信」オペレーションが用いるパラメータ情報を設定するための画面である。図１５に示すパラメータ設定画面Ｇ５００には、フォルダＩＤを設定するためのフォルダ設定欄Ｇ５０１と、決定ボタンＧ５０２とが含まれる。
【０１６６】
なお、表示名Ｇ５０４は、上記のステップＳ１４０３で取得した処理情報に含まれるパラメータ設定情報の表示名が表示される。また、入力制限情報Ｇ５０５は、上記のステップＳ１４０３で取得した処理情報に含まれるパラメータ設定情報の入力形式に基づいて表示される。
【０１６７】
ユーザＵは、フォルダ設定欄Ｇ５０１にフォルダＩＤを入力した上で、決定ボタンＧ５０２を押下することで、パラメータ名「ｆｏｌｄｅｒＩｄ」に値（パラメータ値）を設定することができる。
【０１６８】
なお、パラメータ設定画面Ｇ５００には、共通パラメータ設定欄Ｇ５０３が含まれていても良い。共通パラメータ設定欄Ｇ５０３では、複数のコンポーネントの処理で共通に用いるパラメータ情報を設定することができる。共通パラメータには、例えば、各コンポーネントの処理結果を保存するか否か設定するための「セーブ」、所定のコンポーネントの処理をスキップ（実行しない）か否かを設定するための「スキップ」等がある。
【０１６９】
次に、ユーザＵは、図１５に示すパラメータ設定画面Ｇ５００において、パラメータ情報を設定する操作（パラメータ設定操作）を行う（ステップＳ１４０６）。
【０１７０】
そして、ＰＣ端末３０のＵＩ制御部３１０は、パラメータ設定操作を受け付けると、当該設定されたパラメータ情報を、該当のコンポーネント及びオペレーションに設定する（ステップＳ１４０７）。これにより、外部ストレージＡコンポーネント１３３１の「配信」オペレーションに対してパラメータ情報が設定される。なお、ユーザＵは、同様に、ＯＣＲコンポーネント１３３３の「ＯＣＲ」コンポーネントに対してもパラメータ情報を設定する。
【０１７１】
なお、上記のステップＳ１４０５において、ＰＣ端末３０のＵＩ制御部３１０は、例えば図１６に示すパラメータ設定画面Ｇ５１０を表示しても良い。図１６に示すパラメータ設定画面Ｇ５１０では、フォルダ設定欄Ｇ５０１に設定する情報を選択するための入力支援ボタンＧ５１１が含まれる。
【０１７２】
ユーザＵが入力支援ボタンＧ５１１を押下した場合、フォルダ設定欄Ｇ５０１に設定可能な情報の一覧である設定情報一覧Ｇ５２０が表示される。ここで、設定情報一覧Ｇ５２０には、例えば、他のコンポーネントの処理結果等の情報を選択することができる。
【０１７３】
例えば、ユーザＵは、設定情報一覧Ｇ５２０から、外部ストレージシステム４０にログイン認証を行うためのログインコンポーネントの処理結果を示す「ログインユーザＩＤ」等を選択することができる。これにより、例えば、フォルダ設定欄Ｇ５０１に、ログインコンポーネントによりログイン認証されたユーザＩＤ（ログインユーザＩＤ）を設定することができるようになる。
【０１７４】
以上により、本実施形態に係る情報処理システム１では、ユーザＵにより作成された処理フローＦ１１を示す処理フロー情報１１００をサービス提供システム１０に登録することができる。
【０１７５】
しかも、本実施形態に係る情報処理システム１では、コンポーネント一覧Ｇ２０１から所望のコンポーネント及びオペレーションを選択して、先後関係を指定すると共に、パラメータ情報を設定することで、処理フローを作成することができる。したがって、ユーザＵは、容易に処理フローを作成することができるようになる。
【０１７６】
ここで、処理フロー情報１１００は、例えば、ＪＳＯＮ（JavaScript Object Notation）やＸＭＬ（Extensible Markup Language）、ＤＳＬ（Domain-Specific Language）等により記述される。したがって、本実施形態に係る情報処理システム１によれば、これらＪＳＯＮやＸＭＬ、ＤＳＬ等の仕様や形式を理解していないユーザでも容易に処理フローを作成することができるようになる。
【０１７７】
なお、上記では、先後関係が１つである処理フローを作成する場合について説明したが、これに限られず、処理フローの先後関係は複数であっても良い。
【０１７８】
ここで、ユーザＵが、処理フロー作成画面において、処理フローを作成する場合における他の操作例について、図１７及び図１８を参照しながら説明する。
【０１７９】
まず、図１７（ａ）に示す処理フロー作成画面Ｇ６００の作成領域Ｇ２０２には、処理フローＦ２１が配置されていたとする。このとき、ユーザＵが整列ボタンＧ６０１を押下することで、処理フローＦ２１を構成する各アイコンＰ２１〜Ｐ２４の配置位置を整列することができる。
【０１８０】
すなわち、ユーザＵにより整列ボタンＧ６０１が押下されると、図１７（ｂ）に示す処理フロー作成画面Ｇ７００の作成領域Ｇ２０２に配置されている処理フローＦ２１のように、各アイコンＰ２１〜Ｐ２４の配置位置が整列される。なお、このような配置位置の整列は、例えば、ＰＣ端末３０のＵＩ制御部３１０が行っても良いし、ＵＩ制御部３１０からの要求に応じて、フロー作成処理部１４０が作成領域Ｇ２０２を更新した上で、当該更新後の作成領域Ｇ２０２をＵＩ制御部３１０が表示しても良い。
【０１８１】
これにより、ユーザＵは、処理フローＦ２１を構成する各アイコンＰ２１〜Ｐ２４を容易に整列することができる。
【０１８２】
また、図１７（ａ）に示す処理フロー作成画面Ｇ６００において、ユーザＵが拡大ボタンＧ６０２や縮小ボタンＧ６０３を押下することで、作成領域Ｇ２０２に配置されている処理フローＦ２１を拡大又は縮小することができる。これにより、ユーザＵは、処理フローＦ２１を構成する各アイコンＰ２１〜Ｐ２４の表示を拡大したり、縮小したりすることができる。
【０１８３】
次に、図１８（ａ）に示す処理フロー作成画面Ｇ８００において、ユーザＵが共有フロー取り込みボタンＧ８０１を押下することで、ＵＩ制御部３１０は、共有フロー選択画面Ｇ８１０を表示することができる。ここで、共有フローとは、共有フロー選択画面Ｇ８１０において選択可能なように予め作成された処理フローである。共有フローは、例えば、処理フロー情報１１００において、「"ｓｈａｒｅｆｌｏｗ"："ｔｒｕｅ"」と定義された処理フローである。
【０１８４】
ユーザＵは、共有フロー選択画面Ｇ８１０において、共有フロー選択欄Ｇ８１１から所望の処理フローを選択した上で、ＯＫボタンＧ８１２を押下することで、処理フローを選択することができる。
【０１８５】
そして、ＵＩ制御部３１０は、共有フロー選択画面Ｇ８１０において処理フローが選択されると、図１８（ｂ）に示す処理フロー作成画面Ｇ９００のように、作成領域Ｇ２０２に選択された処理フローＦ３１が表示される。これにより、ユーザＵは、処理フローＦ３１を編集することで、所望の処理フローを作成することができるようになる。したがって、ユーザＵは、共有フローである処理フローＦ３１を編集して処理フローを作成することで、最初から処理フローを作成するよりも、容易に処理フローを作成することができるようになる。
【０１８６】
次に、ユーザＵが機器２０を用いて、サービス提供システム１０のアプリケーション（アプリ情報１０００）により提供される「ＯＣＲ配信」サービスを利用する場合の処理について、図１９を参照しながら説明する。図１９は、サービス利用の全体処理の一例を示すシーケンス図である。
【０１８７】
ユーザＵは、機器２０を用いて、アプリ情報１０００により提供されるサービスの一覧を表示させるための表示操作を行う（ステップＳ１９０１）。
【０１８８】
機器２０のＵＩ制御部２１０は、サービスの一覧を表示させるための表示操作を受け付けると、例えば図２０（ａ）に示すサービス一覧画面Ｇ１０００を表示する（ステップＳ１９０２）。なお、ＵＩ制御部２１０は、例えば、ＨＴＭＬやＣＳＳ等によりサービス一覧画面Ｇ１０００が定義された情報をサービス提供システム１０から受信するにより、当該サービス一覧画面Ｇ１０００を表示しても良い。
【０１８９】
図２０（ａ）に示すサービス一覧画面Ｇ１０００には、サービス名の一覧が表示されたサービス名一覧Ｇ１００１が含まれる。
【０１９０】
次に、ユーザＵは、サービス一覧画面Ｇ１０００のサービス名一覧Ｇ１００１から、所望のサービスを選択する操作を行う（ステップＳ１９０３）。ここで、以降では、サービス一覧画面Ｇ１０００のサービス名一覧Ｇ１００１から「ＯＣＲ配信」サービスがユーザＵにより選択されたものとして説明する。
【０１９１】
機器２０のＵＩ制御部２１０は、「ＯＣＲ配信」サービスの選択操作を受け付けると、例えば図２０（ｂ）に示すサービス利用画面Ｇ１１００を表示する（ステップＳ１９０４）。なお、ＵＩ制御部２１０は、例えば、ＨＴＭＬやＣＳＳ等によりサービス利用画面Ｇ１１００が定義された情報をサービス提供システム１０から受信するにより、当該サービス利用画面Ｇ１１００を表示しても良い。
【０１９２】
図２０（ｂ）に示すサービス利用画面Ｇ１１００には、保存先フォルダ表示欄Ｇ１１０１と、ＯＣＲ言語表示欄Ｇ１１０２と、データ形式表示欄Ｇ１１０３と、スキャンボタンＧ１１０４とが含まれる。
【０１９３】
ここで、保存先フォルダ表示欄Ｇ１１０１は、例えば、図９に示す処理フロー情報１１００の処理定義１１０５に定義されているパラメータ情報「"ｆｏｌｄｅｒＩｄ"："ｆｏｌｄｅｒＡ"」に基づいて表示される。また、ＯＣＲ言語表示欄Ｇ１１０２は、例えば、図９に示す処理フロー情報１１００の処理定義１１０４に定義されているパラメータ情報「"ｌａｎｇｕａｇｅ"："Ｅｎｇｌｉｓｈ"」に基づいて表示される。更に、データ形式表示欄Ｇ１１０３は、例えば、図９に示す処理フロー情報１１００の処理定義１１０４に定義されているパラメータ情報「"ｏｕｔｐｕｔＴｙｐｅ"："ｐｄｆ"」に基づいて表示される。
【０１９４】
次に、ユーザＵは、図２０（ｂ）に示すサービス利用画面Ｇ１１００において、スキャンボタンＧ１１０４を押下して、スキャン実行操作を行う（ステップＳ１９０５）。すると、ＵＩ制御部２１０は、当該スキャン実行操作を受け付ける。
【０１９５】
機器２０のＵＩ制御部２１０は、スキャン実行操作を受け付けると、スキャン処理部２２０に対して、スキャンの実行要求を送信する（ステップＳ１９０６）。
【０１９６】
機器２０のスキャン処理部２２０は、スキャンの実行要求を受け取ると、スキャナ２６を制御して、原稿台にセットされた原稿を読み取って、電子ファイルを生成する（ステップＳ１９０７）。そして、スキャン処理部２２０は、スキャンが終了したことを示すスキャン結果を返信する。
【０１９７】
機器２０のＵＩ制御部２１０は、スキャン結果を受け取ると、「ＯＣＲ配信」サービスを実現する処理フローの実行要求を、サービス提供システム１０のロジック処理部１３０に送信する（ステップＳ１９０８）。なお、当該実行要求には、例えば、「ＯＣＲ配信」サービスを提供するアプリ情報１０００のアプリＩＤと、当該サービスを実現する処理フロー情報１１００のフローＩＤと、上記のステップＳ１９０７で生成された電子ファイルとが含まれる。
【０１９８】
サービス提供システム１０のロジック処理部１３０は、処理フローの実行要求を受信すると、当該実行要求に含まれるアプリＩＤ及びフローＩＤに対応する処理フロー情報１１００を取得する。そして、ロジック処理部１３０は、取得した処理フロー情報１１００に基づく一連の処理を実行する（ステップＳ１９０９）。その後、ロジック処理部１３０は、当該一連の処理の処理結果を返信する。
【０１９９】
これにより、本実施形態に係るサービス提供システム１０において、「ＯＣＲ配信」サービスを実現する一連の処理が実行され、機器２０に対して、「ＯＣＲ配信」サービスが提供される。
【０２００】
ここで、上記のステップＳ１９０９の処理フローの実行処理の詳細について、図２１を参照しながら説明する。図２１は、処理フローの実行処理の一例を示すシーケンス図である。
【０２０１】
フロー実行部１３１は、処理フローの実行要求を受信すると、処理フロー情報の取得要求をアプリ管理部１２０に送信する（ステップＳ２１０１）。なお、当該取得要求には、受信した処理フローの実行要求に含まれるアプリＩＤ及びフローＩＤが含まれる。
【０２０２】
そして、アプリ管理部１２０は、受信した処理フロー情報の取得要求に含まれるアプリＩＤ及びフローＩＤに対応する処理フロー情報１１００をアプリ情報記憶部１８０から取得して、当該処理フロー情報１１００を返信する。これにより、フロー実行部１３１には、図９に示す処理フロー情報１１００が返信される。
【０２０３】
次に、フロー実行部１３１は、図９に示す処理フロー情報１１００を受信すると、コンポーネント管理部１３２に対して、当該処理フロー情報１１００に基づくコンポーネントの取得要求を送信する（ステップＳ２１０２）。
【０２０４】
すなわち、フロー実行部１３１は、図９に示す処理フロー情報１１００の処理定義１１０４に定義されたコンポーネントＩＤ「ｏｃｒ」を含むコンポーネントの取得要求をコンポーネント管理部１３２に送信する。
【０２０５】
コンポーネント管理部１３２は、コンポーネントの取得要求を受け取ると、当該取得要求に含まれるコンポーネントＩＤ「ｏｃｒ」に対応するＯＣＲコンポーネント１３３３を生成する（ステップＳ１７０３）。なお、ＯＣＲコンポーネント１３３３の生成は、コンポーネント共通Ｉ／Ｆ１３３０に定義されたＡＰＩを用いて行うことができる。
【０２０６】
そして、コンポーネント管理部１３２は、フロー実行部１３１に対して、生成したＯＣＲコンポーネント１３３３を返信する。すなわち、コンポーネント管理部１３２は、例えば、ＯＣＲコンポーネント１３３３が展開されたメモリ（例えばＲＡＭ１４）上のアドレスをフロー実行部１３１に返信する。
【０２０７】
次に、フロー実行部１３１は、生成されたＯＣＲコンポーネント１３３３に対して、処理フロー情報１１００に基づく処理実行要求を送信する（ステップＳ２１０４）。
【０２０８】
すなわち、フロー実行部１３１は、図９に示す処理フロー情報１１００の処理定義１１０４に定義されたオペレーションＩＤ「ｐｒｏｃｅｓｓ」と、データと、パラメータ情報とを含む処理実行要求をＯＣＲコンポーネント１３３３に送信する。
【０２０９】
ここで、当該処理実行要求に含まれるデータは、データ型「ＩｎｐｕｔＳｔｒｅａｍ」としてＵＩ制御部２１０から受け取った電子ファイルである。
【０２１０】
すなわち、フロー実行部１３１は、ＵＩ制御部２１０からデータ型「ＩｎｐｕｔＳｔｒｅａｍ」として受け取った電子ファイルを、単に「データ」として（データ型を指定することなく）、ＯＣＲコンポーネント１３３３に送信する。以降では、このようにデータ型を指定することなく送受信される電子ファイル等を、単に「データ」と表す。
【０２１１】
また、当該処理実行要求に含まれるパラメータ情報は、図９に示す処理フロー情報１１００の処理定義１１０４に定義されたパラメータ情報「"ｌａｎｇｕａｇｅ"："Ｅｎｇｌｉｓｈ"」及び「"ｏｕｔｐｕｔＴｙｐｅ"："ｐｄｆ"」である。
【０２１２】
ＯＣＲコンポーネント１３３３は、処理実行要求を受け取ると、型変換管理部１３４に対して、型変換要求を送信する（ステップＳ２１０５）。なお、当該型変換要求には、データと、ＯＣＲコンポーネント１３３３が扱うことができるデータ型である「ＬｏｃａｌＦｉｌｅＰａｔｈ」の指定とが含まれる。
【０２１３】
型変換管理部１３４は、型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする（ステップＳ２１０６）。
【０２１４】
ここで、受け取った型変換要求に含まれるデータのデータ型は「ＩｎｐｕｔＳｔｒｅａｍ」である一方、指定されたデータ型は「ＬｏｃａｌＦｉｌｅＰａｔｈ」である。したがって、型変換管理部１３４は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致しないものと判断する。
【０２１５】
すると、型変換管理部１３４は、型変換情報テーブル３０００を参照して、データ型「ＩｎｐｕｔＳｔｒｅａｍ」をデータ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」に変換するための第１の型変換１３５１を特定する。そして、型変換管理部１３４は、特定した第１の型変換１３５１を生成する（ステップＳ２１０７）。なお、第１の型変換１３５１の生成は、型変換共通Ｉ／Ｆ１３５０に定義されたＡＰＩを用いて行うことができる。
【０２１６】
次に、型変換管理部１３４は、生成された第１の型変換１３５１に対して、型変換処理の実行要求を送信する（ステップＳ２１０８）。なお、当該実行要求には、データが含まれる。
【０２１７】
第１の型変換１３５１は、型変換処理の実行要求を受信すると、当該実行要求に含まれるデータのデータ型を「ＩｎｐｕｔＳｔｒｅａｍ」から「ＬｏｃａｌＦｉｌｅＰａｔｈ」に変換する（ステップＳ２１０９）。そして、第１の型変換１３５１は、型変換後のデータを返信する。
【０２１８】
型変換管理部１３４は、型変換後のデータを受け取ると、当該型変換後のデータをＯＣＲコンポーネント１３３３に送信する（ステップＳ２１１０）。
【０２１９】
ＯＣＲコンポーネント１３３３は、型変換後のデータを受け取ると、パラメータ情報を用いて、処理を実行する（ステップＳ２１１１）。すなわち、ＯＣＲコンポーネント１３３３は、データ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」のデータ（パス又はアドレス）により示される電子ファイルに対して、パラメータ情報を用いて、ＯＣＲ処理を実行する。
【０２２０】
より具体的には、ＯＣＲコンポーネント１３３３は、ドキュメントサービス部１６０のＯＣＲ処理部１６１に対して処理の実行を要求する。そして、ＯＣＲ処理部１６１が、ＯＣＲ言語「英語」で、当該電子ファイルに対してＯＣＲ処理を行って、当該ＯＣＲ処理の処理結果をＰＤＦ形式の電子ファイルで出力する。
【０２２１】
そして、ＯＣＲコンポーネント１３３３は、ＯＣＲ処理後の電子ファイルを示すデータをフロー実行部１３１に返信する。なお、ＯＣＲコンポーネント１３３３により返信されるデータは、ＯＣＲ処理後の電子ファイルのパス又はアドレスを示すデータ（すなわち、データ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」のデータ）である。
【０２２２】
次に、フロー実行部１３１は、データを受け取ると、コンポーネント管理部１３２に対して、処理フロー情報１１００に基づくコンポーネントの取得要求を送信する（ステップＳ２１１２）。
【０２２３】
すなわち、フロー実行部１３１は、図９に示す処理フロー情報１１００の処理定義１１０５に定義されたコンポーネントＩＤ「ｓｔｏｒａｇｅＡ」を含むコンポーネントの取得要求をコンポーネント管理部１３２に送信する。
【０２２４】
コンポーネント管理部１３２は、コンポーネントの取得要求を受け取ると、当該取得要求に含まれるコンポーネントＩＤ「ｓｔｏｒａｇｅＡ」に対応する外部ストレージＡコンポーネント１３３１を生成する（ステップＳ２１１３）。なお、外部ストレージＡコンポーネント１３３１の生成は、コンポーネント共通Ｉ／Ｆ１３３０に定義されたＡＰＩを用いて行うことができる。
【０２２５】
そして、コンポーネント管理部１３２は、フロー実行部１３１に対して、生成した外部ストレージＡコンポーネント１３３１を返信する。すなわち、コンポーネント管理部１３２は、例えば、外部ストレージＡコンポーネント１３３１が展開されたメモリ（例えばＲＡＭ１４）上のアドレスをフロー実行部１３１に返信する。
【０２２６】
次に、フロー実行部１３１は、生成された外部ストレージＡコンポーネント１３３１に対して、処理フロー情報１１００に基づく処理実行要求を送信する（ステップＳ２１１４）。
【０２２７】
すなわち、フロー実行部１３１は、図９に示す処理フロー情報１１００の処理定義１１０５に定義されたオペレーションＩＤ「ｕｐｌｏａｄＦｉｌｅ」と、データと、パラメータ情報とを含む処理実行要求を外部ストレージＡコンポーネント１３３１に送信する。
【０２２８】
なお、当該処理実行要求に含まれるデータは、データ型「ＬｏｃａｌＦｉｌｅＰａｔｈ」としてＯＣＲコンポーネント１３３３から返信されたデータ（すなわち、ＯＣＲ処理後の電子ファイルを示すパス又はアドレス）である。
【０２２９】
また、当該処理実行要求に含まれるパラメータ情報は、図９に示す処理フロー情報１１００の処理定義１１０５に定義されたパラメータ情報「"ｆｏｌｄｅｒＩｄ"："ｆｏｌｄｅｒＡ"」である。
【０２３０】
外部ストレージＡコンポーネント１３３１は、処理実行要求を受け取ると、型変換管理部１３４に対して、型変換要求を送信する（ステップＳ２１１５）。なお、当該型変換要求には、データと、外部ストレージＡコンポーネント１３３１が扱うことができるデータ型である「ＬｏｃａｌＦｉｌｅＰａｔｈ」の指定とが含まれる。
【０２３１】
型変換管理部１３４は、型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする（ステップＳ２１１６）。
【０２３２】
ここで、受信した型変換要求に含まれるデータのデータ型は「ＬｏｃａｌＦｉｌｅＰａｔｈ」であり、指定されたデータ型も「ＬｏｃａｌＦｉｌｅＰａｔｈ」である。したがって、型変換管理部１３４は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するものと判断する。
【０２３３】
すると、型変換管理部１３４は、型変換要求に含まれるデータを外部ストレージＡコンポーネント１３３１に送信する（ステップＳ２１１７）。このように、データ型のチェック（ステップＳ２１１６の処理）においてデータ型が一致すると判断された場合、型変換管理部１３４は、型変換の生成を行わない。
【０２３４】
外部ストレージＡコンポーネント１３３１は、型変換管理部１３４からデータを受信すると、処理を実行する（ステップＳ２１１８）。すなわち、外部ストレージＡコンポーネント１３３１は、パラメータ情報を用いて、外部ストレージＡのフォルダＩＤ「ｆｏｌｄｅｒＡ」のフォルダに対して、受信したデータにより示される電子ファイルを配信（アップロード）する。
【０２３５】
より具体的には、外部ストレージＡコンポーネント１３３１は、外部ストレージＡ連携部１７０１のファイル処理部１７１１に対して、図５（ａ）に示すＡＰＩ「／外部ストレージ名/ｐｒｏｃｅｓｓ/ｆｏｌｄｅｒ」を用いて行うことができる。すなわち、外部ストレージＡコンポーネント１３３１は、ファイル処理部１７１１に対して、例えば、「/ｓｔｏｒａｇｅ-ａ/ｐｒｏｃｅｓｓ/ｆｏｌｄｅｒ」としてデータを送信する。
【０２３６】
これにより、ＯＣＲ処理後の電子ファイルが、外部ストレージＡのフォルダＩＤ「ｆｏｌｄｅｒＡ」のフォルダに保存される。
【０２３７】
そして、外部ストレージＡコンポーネント１３３１は、処理結果を示すデータをフロー実行部１３１に返信する。
【０２３８】
以上により、本実施形態に係るサービス提供システム１０は、機器２０に対して、図９に示す処理フロー情報１１００に基づく一連の処理により実現される「ＯＣＲ配信」サービスを提供することができる。このとき、本実施形態に係るサービス提供システム１０は、処理フロー情報１１００に基づいて、１以上のコンポーネントを組み合わせることにより、一連の処理を実行することができる。
【０２３９】
［第二の実施形態］
次に、第二の実施形態に係る情報処理システム１について説明する。第二の実施形態では、処理フローの登録処理において、処理フローの登録（追加）に加えて、処理フローの更新又は削除をすることができる点が第一の実施形態と異なる。なお、以降では、第一の実施形態と実質的に同一の機能を有する箇所及び同一の処理を行う箇所については、第一の実施形態と同一の符号を用いて、その説明を省略する。
【０２４０】
＜処理の詳細＞
以降では、第二の実施形態に係る処理フローの登録処理について、図２２を参照しながら説明する。図２２は、処理フローの登録、更新、又は削除処理の一例を示すシーケンス図である。
【０２４１】
ステップＳ１００６に続いて、ＰＣ端末３０のＵＩ制御部３１０は、アプリケーションの選択操作を受け付けると、選択されたアプリケーションのアプリ情報画面を表示する（ステップＳ２２０１）。
【０２４２】
すなわち、例えば、図１１（ａ）に示すアプリ一覧画面Ｇ１００のアプリ一覧Ｇ１０１から「アプリ１」がユーザＵにより選択された場合、ＵＩ制御部３１０は、例えば図２３に示すアプリ情報画面Ｇ１２００を表示する。
【０２４３】
図２３に示すアプリ情報画面Ｇ１２００は、「アプリ１」であるアプリ情報１０００の処理フローの登録、更新、又は削除を行うための画面である。
【０２４４】
図２３に示すアプリ情報画面Ｇ１２００には、「アプリ１」であるアプリ情報１０００に含まれる処理フロー情報１１００の一覧であるフロー名一覧Ｇ１２０１が含まれる。また、図２３に示すアプリ情報画面Ｇ１２００には、処理フローを登録するための登録ボタンＧ１２０２と、登録されている処理フローを更新するための更新ボタンＧ１２０３と、登録されている処理フローを削除するための削除ボタンＧ１２０４とが含まれる。
【０２４５】
以降では、ユーザＵにより、登録ボタンＧ１２０２が選択された場合、更新ボタンＧ１２０３が選択された場合、削除ボタンＧ１２０４が選択された場合について、それぞれ説明する。
【０２４６】
図２３に示すアプリ情報画面Ｇ１２００において、ユーザＵにより登録ボタンＧ１２０２が選択された場合、図１０のステップＳ１００７〜ステップＳ１０１３と同様の処理を行う。これらの処理の詳細については省略する。
【０２４７】
次に、図２３に示すアプリ情報画面Ｇ１２００において、ユーザＵにより、フロー名一覧Ｇ１２０１から更新対象のフロー名が選択された上で、更新ボタンＧ１２０３が選択された場合について、以降で説明する。なお、以降では、フロー名一覧Ｇ１２０１から「ＯＣＲ配信」が選択された上で、更新ボタンＧ１２０３が選択されたものとして説明する。
【０２４８】
まず、ＰＣ端末３０のＵＩ制御部３１０は、更新ボタンＧ１２０３の選択操作を受け付けると、フロー作成処理部１４０に対して、処理フローの更新画面の取得要求を送信する（ステップＳ２２０２）。なお、当該取得要求には、当該取得要求には、ユーザＵにより選択されたアプリケーションを識別するための情報（例えば、アプリ情報画面Ｇ１２００を識別する情報やアプリＩＤ等）が含まれる。また、当該取得要求には、フロー名一覧Ｇ１２０１から選択された更新対象の処理フロー「ＯＣＲ配信」を識別する情報（例えば、当該「ＯＣＲ配信」を選択するための表示部品の識別情報やフローＩＤ「ｆｌｏｗ００１」）が含まれる。
【０２４９】
次に、フロー作成処理部１４０は、処理フロー情報の取得要求をアプリ管理部１２０に送信する（ステップＳ２２０３）。なお、当該取得要求には、アプリＩＤ及びフローＩＤが含まれる。
【０２５０】
そして、アプリ管理部１２０は、受信した処理フロー情報の取得要求に含まれるアプリＩＤ及びフローＩＤに対応する処理フロー情報１１００をアプリ情報記憶部１８０から取得して、当該処理フロー情報１１００を返信する。
【０２５１】
次に、フロー作成処理部１４０は、処理情報テーブルの取得要求を、ロジック処理部１３０のコンポーネント管理部１３２に送信する（ステップＳ２２０４）。そして、コンポーネント管理部１３２は、処理情報テーブルの取得要求を受信すると、処理情報テーブル２０００をフロー作成処理部１４０に返信する。
【０２５２】
サービス提供システム１０のフロー作成処理部１４０は、受信した処理フロー情報１１００と、受信した処理情報テーブル２０００に格納されている処理情報とに基づいて、処理フロー更新画面を作成する（ステップＳ２２０５）。なお、処理フロー更新画面は、例えば、ＨＴＭＬやＣＳＳ等により画面が定義されている。
【０２５３】
そして、フロー作成処理部１４０は、作成した処理フロー更新画面をＵＩ制御部３１０に返信する。
【０２５４】
ＰＣ端末３０のＵＩ制御部３１０は、処理フロー更新画面を受信すると、例えば図２４に示す処理フロー更新画面Ｇ１３００を表示する（ステップＳ２２０６）。
【０２５５】
ここで、図２４に示す処理フロー更新画面Ｇ１３００は、フロー名「ＯＣＲ配信」の処理フローを更新するための画面であり、更新領域Ｇ１３０１と、更新ボタンＧ１３０２とが含まれる。そして、更新領域Ｇ１３０１には、上記のステップＳ２２０３で取得した処理フロー情報１１００に基づいて処理フローＦ１１が配置されている。
【０２５６】
ユーザＵは、処理フロー更新画面Ｇ１３００において、コンポーネント及びオペレーションの追加や削除、パラメータ情報の修正、フロー名の修正等を行うことで、処理フローＧ１１を変更することができる。
【０２５７】
次に、ユーザＵは、図２４に示す処理フロー更新画面Ｇ１３００において、処理フローＧ１１を変更した上で、更新ボタンＧ１３０２を押下して、処理フローの更新操作を行う（ステップＳ２２０７）。
【０２５８】
ＰＣ端末３０のＵＩ制御部３１０は、処理フローの更新操作を受け付けると、処理フローの更新要求を、サービス提供システム１０のフロー作成処理部１４０に送信する（ステップＳ２２０８）。なお、当該登録要求には、ユーザＵにより変更された処理フローＦ１１を示す情報（例えば、処理フロー情報１１００等）と、「アプリ１」を識別する情報（例えば、アプリＩＤや処理フロー更新画面Ｇ１３００を識別する情報等）が含まれる。
【０２５９】
サービス提供システム１０のフロー作成処理部１４０は、処理フローの更新要求を受信すると、当該更新要求をアプリ管理部１２０に送信する（ステップＳ２２０９）。そして、アプリ管理部１２０は、処理フローの更新要求に含まれる処理フロー情報１１００を、「アプリ１」のアプリ情報１０００と関連付けてアプリ情報記憶部１８０に記憶させる。その後、アプリ管理部１２０は、フロー作成処理部１４０を介して、更新結果を返信する。これにより、サービス提供システム１０に登録されていた処理フローが更新される。
【０２６０】
次に、図２３に示すアプリ情報画面Ｇ１２００において、ユーザＵにより、フロー名一覧Ｇ１２０１から削除対象のフロー名が選択された上で、削除ボタンＧ１２０４が選択された場合について、以降で説明する。なお、以降では、フロー名一覧Ｇ１２０１から「ＯＣＲメール」が選択された上で、削除ボタンＧ１２０４が選択されたものとして説明する。
【０２６１】
ＰＣ端末３０のＵＩ制御部３１０は、削除ボタンＧ１２０４の選択操作を受け付けると、フロー作成処理部１４０に対して、処理フローの削除要求を送信する（ステップＳ２２１０）。なお、当該削除要求には、ユーザＵにより選択されたアプリケーションを識別するための情報（例えば、アプリ情報画面Ｇ１２００を識別する情報やアプリＩＤ等）が含まれる。また、当該削除要求には、ユーザＵにより選択された削除対象の処理フローを識別するための情報（例えば、フロー名一覧Ｇ１２０１に含まれる各表示部品を識別する情報やフローＩＤ等）が含まれる。
【０２６２】
フロー作成処理部１４０は、処理フローの削除要求を受け取ると、当該削除要求をアプリ管理部１２０に送信する（ステップＳ２２１１）。
【０２６３】
そして、  アプリ管理部１２０は、処理フローの削除要求を受け取ると、当該削除要求に含まれるアプリＩＤ及びフローＩＤに対応する処理フロー情報１１００をアプリ情報記憶部１８０から削除する。その後、アプリ管理部１２０は、フロー作成処理部１４０を介して、削除結果を返信する。これにより、サービス提供システム１０に登録されていた処理フローが削除される。
【０２６４】
以上により、本実施形態に係る情報処理システム１では、サービス提供システム１０に登録されている処理フローの更新及び削除を行うことができる。
【０２６５】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０２６６】
１        情報処理システム
１０      サービス提供システム
２０      機器
３０      ＰＣ端末
４０      外部ストレージシステム
１１０    サービス処理部
１２０    アプリ管理部
１３０    ロジック処理部
１３１    フロー実行部
１３２    コンポーネント管理部
１３３    コンポーネント群
１３４    型変換管理部
１３５    型変換群
１４０    フロー作成処理部
１５０    データＩ／Ｆ部
１６０    ドキュメントサービス部
１７０    外部ストレージ連携部
１８０    アプリ情報記憶部
２１０    ＵＩ制御部
２２０    スキャン処理部
３１０    ＵＩ制御部
１０００  アプリ情報
１１００  処理フロー情報
２０００  処理情報テーブル
３０００  型変換情報テーブル
【先行技術文献】
【特許文献】
【０２６７】
【特許文献１】特許第４０３９１９１号公報
【図１】
2018010434.tif 000003
【図２】
2018010434.tif 000004
【図３】
2018010434.tif 000005
【図４】
2018010434.tif 000006
【図５】
2018010434.tif 000007
【図６】
2018010434.tif 000008
【図７】
2018010434.tif 000009
【図８】
2018010434.tif 000010
【図９】
2018010434.tif 000011
【図１０】
2018010434.tif 000012
【図１１】
2018010434.tif 000013
【図１２】
2018010434.tif 000014
【図１３】
2018010434.tif 000015
【図１４】
2018010434.tif 000016
【図１５】
2018010434.tif 000017
【図１６】
2018010434.tif 000018
【図１７】
2018010434.tif 000019
【図１８】
2018010434.tif 000020
【図１９】
2018010434.tif 000021
【図２０】
2018010434.tif 000022
【図２１】
2018010434.tif 000023
【図２２】
2018010434.tif 000024
【図２３】
2018010434.tif 000025
【図２４】
2018010434.tif 000026