(57)【要約】【課題】既存の複数サーバを簡易的な作業で自立的に動作させて活用することができるアプリケーションプラットフォーム装置、アプリケーションプラットフォームシステム及びアプリケーションプラットフォーム装置の動作方法を提供すること。【解決手段】アプリケーションプラットフォーム装置２は、機能割当部２４２により、ワークフローＤＢ２３２に記憶されたワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバ３を決定して当該機能を割り当て、パラメータ生成部２４３により、機能を割り当てられたサーバ３の物理的な処理の流れを示すパラメータを生成し、パラメータ送信部２４４により、機能を割り当てられたサーバ３のうち、処理の基点となるサーバ３に対して、パラメータ生成部２４３により生成されたパラメータを送信する。【選択図】図１
2013012014.tif 000002
【特許請求の範囲】
【請求項１】
複数のサーバと通信可能に接続され、当該サーバに機能を割り当てて自立的に動作させるアプリケーションプラットフォーム装置であって、
アプリケーションと、前記アプリケーションの識別情報と、前記アプリケーションに対応する機能の説明とを関連付けて記憶するアプリケーション記憶手段と、
前記アプリケーションの識別情報と、前記アプリケーションの処理順とを関連付けてワークフロー情報として記憶するワークフロー情報記憶手段と、
前記アプリケーション記憶手段に記憶されている前記アプリケーションの識別情報と、前記アプリケーションの処理順とを、前記ワークフロー情報として受け付けて、前記ワークフロー情報記憶手段に記憶させるワークフロー登録手段と、
前記ワークフロー情報記憶手段に記憶された前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当てる機能割当手段と、
前記機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成するパラメータ生成手段と、
前記機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、前記パラメータ生成手段により生成されたパラメータを機能呼び出し時のパラメータとして送信するパラメータ送信手段と、
を備えるアプリケーションプラットフォーム装置。
【請求項２】
前記ワークフロー登録手段は、前記ワークフロー情報の実行スケジュールを受け付け、
前記機能割当手段は、前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定し、当該ワークフロー情報に含まれる前記実行スケジュールに基づいて、当該機能を割り当てる、
請求項１に記載のアプリケーションプラットフォーム装置。
【請求項３】
前記サーバに割り当てられた機能の実行結果を記憶するログ記憶手段と、
前記機能を割り当てられた複数のサーバから、前記実行結果を取得して前記ログ記憶手段に記憶させるログ記憶制御手段と、
前記ログ記憶手段に記憶された前記実行結果を出力する実行結果出力手段と、
を備える、
請求項１又は２に記載のアプリケーションプラットフォーム装置。
【請求項４】
複数のサーバと、当該複数のサーバと通信可能に接続され、当該サーバに機能を割り当てて自立的に動作させるアプリケーションプラットフォーム装置とを備えるアプリケーションプラットフォームシステムであって、
前記アプリケーションプラットフォーム装置は、
アプリケーションと、前記アプリケーションの識別情報と、前記アプリケーションに対応する機能の説明とを関連付けて記憶するアプリケーション記憶手段と、
前記アプリケーションの識別情報と、前記アプリケーションの処理順とを関連付けてワークフロー情報として記憶するワークフロー情報記憶手段と、
前記アプリケーション記憶手段に記憶されている前記アプリケーションの識別情報と、前記アプリケーションの処理順とを、前記ワークフロー情報として受け付けて、前記ワークフロー情報記憶手段に記憶させるワークフロー登録手段と、
前記ワークフロー情報記憶手段に記憶された前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当てる機能割当手段と、
前記機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成するパラメータ生成手段と、
前記機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、前記パラメータ生成手段により生成されたパラメータを機能呼び出し時のパラメータとして送信するパラメータ送信手段と、
を備え、
前記複数のサーバそれぞれは、
前記アプリケーションを割り当てられ、かつ、前記パラメータを受信したことに応じて、前記アプリケーションを実行するアプリケーション実行手段と、
前記パラメータに基づいて、前記アプリケーション実行手段による前記アプリケーションの実行結果の出力先を特定し、特定された出力先に前記実行結果と、前記パラメータとを送信する実行結果送信手段と、
を備えるアプリケーションプラットフォームシステム。
【請求項５】
複数のサーバと通信可能に接続され、当該サーバに機能を割り当てて自立的に動作させるアプリケーションプラットフォーム装置の動作方法であって、
前記アプリケーションプラットフォーム装置は、
アプリケーションと、前記アプリケーションの識別情報と、前記アプリケーションに対応する機能の説明とを関連付けて記憶するアプリケーション記憶手段と、
前記アプリケーションの識別情報と、前記アプリケーションの処理順とを関連付けてワークフロー情報として記憶するワークフロー情報記憶手段と、を備え、
前記動作方法は、
前記アプリケーション記憶手段に記憶されている前記アプリケーションの識別情報と、前記アプリケーションの処理順とを、前記ワークフロー情報として受け付けて、前記ワークフロー情報記憶手段に記憶させるワークフロー登録ステップと、
前記ワークフロー情報記憶手段に記憶された前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当てる機能割当ステップと、
前記機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成するパラメータ生成ステップと、
前記機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、前記パラメータ生成ステップにおいて生成されたパラメータを機能呼び出し時のパラメータとして送信するパラメータ送信ステップと、
を含むアプリケーション装置の動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションプラットフォーム装置、アプリケーションプラットフォームシステム及びアプリケーションプラットフォーム装置の動作方法に関する。
【背景技術】
【０００２】
システム開発では、システムが大規模である場合に、システムを構成する機能ごとに開発が行われることがある。このような大規模なシステムの開発に対して、複数の機能それぞれをワークフローとして登録し、１つのまとまったシステムとして成り立たせる手法が提案されている。
【０００３】
例えば、特許文献１には、業務フロー上の作業を、それぞれ異なるアプリケーションの機能によって実装し、これら複数の機能を順番に遷移させることで、１つのシステムとして動作させる方法が示されている。
【０００４】
このような方法によれば、複数のアプリケーションを組み立てて１つのシステムを構築するので、既存のアプリケーションを組み込んで資源を有効に活用することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−０７３９２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、システム開発が大規模になるに伴い、例えば、テスト用のサーバがテスト完了後に余剰となり、有効に利用されない場合もある。これに対して、特許文献１に示される方法では、既存のアプリケーションを組み込むことで資源を有効に活用することができるものの、既存のサーバに自動的にアプリケーションの機能を割り当てることは示されておらず、既存の複数サーバを簡易的な作業で自立的に動作させて活用することができなかった。
【０００７】
本発明は、既存の複数サーバを簡易的な作業で自立的に動作させて活用することができるアプリケーションプラットフォーム装置、アプリケーションプラットフォームシステム及びアプリケーションプラットフォーム装置の動作方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
（１）複数のサーバと通信可能に接続され、当該サーバに機能を割り当てて自立的に動作させるアプリケーションプラットフォーム装置であって、アプリケーションと、前記アプリケーションの識別情報と、前記アプリケーションに対応する機能の説明とを関連付けて記憶するアプリケーション記憶手段と、前記アプリケーションの識別情報と、前記アプリケーションの処理順とを関連付けてワークフロー情報として記憶するワークフロー情報記憶手段と、前記アプリケーション記憶手段に記憶されている前記アプリケーションの識別情報と、前記アプリケーションの処理順とを、前記ワークフロー情報として受け付けて、前記ワークフロー情報記憶手段に記憶させるワークフロー登録手段と、前記ワークフロー情報記憶手段に記憶された前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当てる機能割当手段と、前記機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成するパラメータ生成手段と、前記機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、前記パラメータ生成手段により生成されたパラメータを機能呼び出し時のパラメータとして送信するパラメータ送信手段と、を備えるアプリケーションプラットフォーム装置。
【０００９】
（１）のアプリケーションプラットフォーム装置は、ワークフロー登録手段により、アプリケーション記憶手段に記憶されているアプリケーションの識別情報と、アプリケーションの処理順とを、ワークフロー情報として受け付けて、ワークフロー情報記憶手段に記憶させ、機能割当手段により、ワークフロー情報記憶手段に記憶されたワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当て、パラメータ生成手段により、機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成し、パラメータ送信手段により、機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、パラメータ生成手段により生成されたパラメータを機能呼び出し時のパラメータとして送信する。
【００１０】
このようにすることで、（１）のアプリケーションプラットフォーム装置は、ワークフロー情報に従って、アプリケーションの機能をサーバに割り当てることができる。さらに、（１）のアプリケーションプラットフォーム装置は、パラメータ生成手段により生成された物理的な処理の流れを示すパラメータを機能呼び出し時のパラメータとして処理の基点となるサーバに送信するので、処理の基点となるサーバでは、この機能呼び出し時のパラメータに従って、次の処理を行うサーバに対して成果物を送信することができる。さらに、成果物を生成したサーバが、次の処理を行うサーバに対してパラメータを送信するという動作を繰り返すことによって、複数のサーバでは、一連の処理を自立的に実行することができる。よって、（１）のアプリケーションプラットフォーム装置は、既存の複数サーバを簡易的な作業で自立的に動作させて活用することができる。
【００１１】
（２）前記ワークフロー登録手段は、前記ワークフロー情報の実行スケジュールを受け付け、前記機能割当手段は、前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該ワークフロー情報に含まれる前記実行スケジュールに基づいて、当該機能を割り当てる、（１）に記載のアプリケーションプラットフォーム装置。
【００１２】
（２）のアプリケーションプラットフォーム装置は、ワークフロー登録手段により、ワークフロー情報の実行スケジュールを受け付け、機能割当手段により、ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該ワークフロー情報に含まれる前記実行スケジュールに基づいて、当該機能を割り当てる。
【００１３】
このようにすることで、アプリケーションプラットフォーム装置は、ワークフロー情報の登録者が所望するタイミングで、複数のサーバに対してアプリケーションの機能を割り当てることができる。
【００１４】
（３）前記サーバに割り当てられた機能の実行結果を記憶するログ記憶手段と、前記機能を割り当てられた複数のサーバから、前記実行結果を取得して前記ログ記憶手段に記憶させるログ記憶制御手段と、前記ログ記憶手段に記憶された前記実行結果を出力する実行結果出力手段と、を備える、（１）又は（２）に記載のアプリケーションプラットフォーム装置。
【００１５】
（３）のアプリケーションプラットフォーム装置は、ログ記憶制御手段により、機能を割り当てられた複数のサーバから実行結果を取得してログ記憶手段に記憶させ、実行結果出力手段により、ログ記憶手段に記憶された実行結果を出力する。
【００１６】
このようにすることで、（３）のアプリケーションプラットフォーム装置は、アプリケーションの機能が割り当てられた複数のサーバにおける実行結果を一元的に管理することができる。
【００１７】
（４）複数のサーバと、当該複数のサーバと通信可能に接続され、当該サーバに機能を割り当てて自立的に動作させるアプリケーションプラットフォーム装置とを備えるアプリケーションプラットフォームシステムであって、前記アプリケーションプラットフォーム装置は、アプリケーションと、前記アプリケーションの識別情報と、前記アプリケーションに対応する機能の説明とを関連付けて記憶するアプリケーション記憶手段と、前記アプリケーションの識別情報と、前記アプリケーションの処理順とを関連付けてワークフロー情報として記憶するワークフロー情報記憶手段と、前記アプリケーション記憶手段に記憶されている前記アプリケーションの識別情報と、前記アプリケーションの処理順とを、前記ワークフロー情報として受け付けて、前記ワークフロー情報記憶手段に記憶させるワークフロー登録手段と、前記ワークフロー情報記憶手段に記憶された前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当てる機能割当手段と、前記機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成するパラメータ生成手段と、前記機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、前記パラメータ生成手段により生成されたパラメータを機能呼び出し時のパラメータとして送信するパラメータ送信手段と、を備え、前記複数のサーバそれぞれは、前記アプリケーションを割り当てられ、かつ、前記パラメータを受信したことに応じて、前記アプリケーションを実行するアプリケーション実行手段と、前記パラメータに基づいて、前記アプリケーション実行手段による前記アプリケーションの実行結果の出力先を特定し、特定された出力先に前記実行結果と、前記パラメータとを送信する実行結果送信手段と、を備えるアプリケーションプラットフォームシステム。
【００１８】
（５）複数のサーバと通信可能に接続され、当該サーバに機能を割り当てて自立的に動作させるアプリケーションプラットフォーム装置の動作方法であって、前記アプリケーションプラットフォーム装置は、アプリケーションと、前記アプリケーションの識別情報と、前記アプリケーションに対応する機能の説明とを関連付けて記憶するアプリケーション記憶手段と、前記アプリケーションの識別情報と、前記アプリケーションの処理順とを関連付けてワークフロー情報として記憶するワークフロー情報記憶手段と、を備え、前記動作方法は、前記アプリケーション記憶手段に記憶されている前記アプリケーションの識別情報と、前記アプリケーションの処理順とを、前記ワークフロー情報として受け付けて、前記ワークフロー情報記憶手段に記憶させるワークフロー登録ステップと、前記ワークフロー情報記憶手段に記憶された前記ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定して当該機能を割り当てる機能割当ステップと、前記機能を割り当てられたサーバの物理的な処理の流れを示すパラメータを生成するパラメータ生成ステップと、前記機能を割り当てられたサーバのうち、処理の基点となるサーバに対して、前記パラメータ生成ステップにおいて生成されたパラメータを機能呼び出し時のパラメータとして送信するパラメータ送信ステップと、を含むアプリケーション装置の動作方法。
【００１９】
これらアプリケーションプラットフォームシステム及びアプリケーション装置の動作方法によれば、（１）に係る発明と同様の効果を奏する。
【発明の効果】
【００２０】
本発明によれば、既存の複数サーバを簡易的な作業で自立的に動作させて活用することができるアプリケーションプラットフォーム装置、アプリケーションプラットフォームシステム及びアプリケーションプラットフォーム装置の動作方法を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係るアプリケーションプラットフォームシステムの機能構成を示すブロック図である。
【図２】本実施形態に係るアプリケーションＤＢを示す図である。
【図３】本実施形態に係るワークフローＤＢを示す図である。
【図４】本実施形態に係るログＤＢを示す図である。
【図５】本実施形態に係るアプリケーションＤＢに記憶されているアプリケーションの一例を示す図である。
【図６】本実施形態に係るアプリケーションの機能を割り当てられた後のサーバの処理の流れを示す模式図である。
【図７】本実施形態に係るアプリケーションプラットフォーム装置においてワークフロー情報が受け付けられてから、実行結果がログＤＢに記憶されるまでの処理の流れを示すフローチャートである。
【図８】本実施形態に係るアプリケーションの機能を割り当てられた複数のサーバにおける処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態について図を参照しながら説明する。
【００２３】
［機能構成］
図１は、本実施形態に係るアプリケーションプラットフォームシステム１の機能構成を示すブロック図である。アプリケーションプラットフォームシステム１は、アプリケーションプラットフォーム装置２と、複数のサーバ３とを備える。
なお、図１では、アプリケーションプラットフォームシステム１に対して一のサーバ３のみ示されているが、上述のとおり、アプリケーションプラットフォームシステム１は、複数のサーバ３を備えているものとする。
【００２４】
アプリケーションプラットフォームシステム１は、複数のサーバ３に対して複数のアプリケーションそれぞれの機能を割り当てて、複数の機能からなる一連の処理を実行させるシステムである。
【００２５】
ここで、本実施形態におけるアプリケーションとは、実行されると成果物を出力するアプリケーションをいう。例えば、成果物としては、ＵＲＬ、Ｗｅｂページ、コンテンツ（動画や画像）等が挙げられる。
【００２６】
本実施形態は、コンピュータ（サーバ３及びアプリケーションプラットフォーム装置２）及びその周辺装置に適用される。本実施形態における各部は、コンピュータ及びその周辺装置が備えるハードウェア並びに当該ハードウェアを制御するソフトウェアによって構成される。
【００２７】
上記ハードウェアには、制御部としてのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の他、記憶部、通信装置、表示装置及び入力装置が含まれる。記憶部としては、例えば、メモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ＲＯＭ：Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ等）、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及び光ディスク（ＣＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｋ、ＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ等）ドライブが挙げられる。通信装置としては、例えば、各種有線及び無線インターフェース装置が挙げられる。表示装置としては、例えば、液晶ディスプレイやプラズマディスプレイ等の各種ディスプレイが挙げられる。入力装置としては、例えば、キーボード及びポインティング・デバイス（マウス、トラッキングボール、タッチパッド等）が挙げられる。
【００２８】
上記ソフトウェアには、上記ハードウェアを制御するコンピュータ・プログラムやデータが含まれる。コンピュータ・プログラムやデータは、記憶部により記憶され、制御部により適宜実行、参照される。また、コンピュータ・プログラムやデータは、通信回線を介して配布されることも可能であり、ＣＤ−ＲＯＭ等のコンピュータ可読媒体に記録して配布されることも可能である。
【００２９】
アプリケーションプラットフォーム装置２は、操作部２１と、表示部２２と、第１記憶部２３と、第１制御部２４と、を備える。
【００３０】
操作部２１は、操作者から直接的な入力を受け付ける。
表示部２２は、アプリケーションプラットフォーム装置２の機能に関する情報を表示する。
【００３１】
第１記憶部２３は、本実施形態に係るアプリケーションプラットフォーム装置２の機能を実行するプログラム（図示省略）等を記憶する。第１記憶部２３は、上述の各種プログラムの他に、アプリケーション記憶手段としてのアプリケーションＤＢ２３１と、ワークフロー情報記憶手段としてのワークフローＤＢ２３２と、ログ記憶手段としてのログＤＢ２３３とを備える。
【００３２】
図２は、本実施形態に係るアプリケーションＤＢ２３１を示す図である。
アプリケーションＤＢ２３１は、アプリケーションと、アプリケーションの識別情報としてのアプリケーションＩＤと、アプリケーションに対応する機能を説明する情報とを関連付けて記憶する。例えば、アプリケーションＤＢ２３１には、Ｗｅｂコンテンツを取得するためのアプリケーションとして、シードＵＲＬを生成するアプリケーション（シードメーカ）、シードＵＲＬに基づいてＷｅｂページを抽出するアプリケーション（クローラ）、抽出されたＷｅｂページからコンテンツを抽出するアプリケーション（エクストラクタ）が記憶されている。そして、アプリケーションＤＢ２３１は、これらシードメーカ、クローラ及びエクストラクタを、それぞれ複数記憶する。
なお、アプリケーションＤＢ２３１は、アプリケーションを直接記憶せず、アプリケーションの記憶場所を記憶するようにしてもよい。
【００３３】
例えば、アプリケーションＤＢ２３１には、シードメーカとして、動画投稿サイトＸにおいて投稿された動画を含むＷｅｂページを示すＵＲＬを複数生成するシードメーカ、画像投稿サイトＹにおいて投稿された画像を含むＷｅｂページを示すＵＲＬを複数生成するシードメーカ、といったように、それぞれ異なる種別のサイトのＵＲＬを生成するシードメーカが複数記憶されている。
【００３４】
図３は、本実施形態に係るワークフローＤＢ２３２を示す図である。
ワークフローＤＢ２３２は、ワークフローを識別するワークフローＩＤと、アプリケーションを識別するアプリケーションＩＤと、アプリケーションの処理順と、基点となるアプリケーションの実行スケジュールとを関連付けてワークフロー情報として記憶する。ここで、基点となるアプリケーションとは、処理順が最も若いアプリケーションのことをいう。
【００３５】
図４は、本実施形態に係るログＤＢ２３３を示す図である。
ログＤＢ２３３は、ワークフローＩＤと、当該ワークフローＩＤに対応するアプリケーションＩＤと、当該アプリケーションＩＤに対応するアプリケーションの機能が割り当てられたサーバ３における当該機能の実行結果とを関連付けて記憶する。
【００３６】
第１制御部２４は、アプリケーションプラットフォーム装置２に係る各機能を統括的に制御する。第１制御部２４は、ワークフロー登録手段としてのワークフロー登録部２４１と、機能割当手段としての機能割当部２４２と、パラメータ生成手段としてのパラメータ生成部２４３と、パラメータ送信手段としてのパラメータ送信部２４４と、ログ記憶制御手段としてのログ記憶制御部２４５と、実行結果出力手段としての実行結果出力部２４６と、を備える。
【００３７】
ワークフロー登録部２４１は、操作者から操作部１１を介して、登録操作を受け付ける。続いて、ワークフロー登録部２４１は、登録操作を受け付けたことに応じて、アプリケーションＤＢ２３１に記憶されているアプリケーションＩＤと、当該アプリケーションＩＤに対応するアプリケーションの機能を説明する情報とを表示部１２にリスト表示させて、アプリケーションＩＤの登録を受け付ける。
【００３８】
続いて、ワークフロー登録部２４１は、操作者から操作部１１を介して、アプリケーションＤＢ２３１に記憶されているアプリケーションＩＤと、アプリケーションの処理順と、基点となるアプリケーションの処理を開始する実行スケジュールとをワークフロー情報として受け付ける。続いて、ワークフロー登録部２４１は、受け付けたワークフロー情報に対応するワークフローＩＤを生成する。続いて、ワークフロー登録部２４１は、これらワークフローＩＤと、アプリケーションＩＤと、アプリケーションの処理順と、実行スケジュールとを関連付けて、ワークフロー情報としてワークフローＤＢ２３２に記憶させる。
【００３９】
なお、本実施形態では、ワークフロー情報によって登録されたアプリケーションＩＤに対応するアプリケーションの出力先は、所定サーバ（図示省略）であるものとするが、ワークフロー登録部２４１により、任意に指定するようにしてもよい。
【００４０】
また、ワークフロー登録部２４１は、アプリケーションＩＤに対応するアプリケーションがカスタマイズ用パラメータによりカスタマイズ可能である場合、このカスタマイズ用パラメータを受け付けるようにしてもよい。
【００４１】
機能割当部２４２は、ワークフローＤＢ２３２に記憶されたワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションＩＤに対応するアプリケーションの機能を割り当てるサーバ３を決定し、当該決定されたサーバ３に当該機能を割り当てる。
【００４２】
ここで、機能割当部２４２は、決定されたサーバ３に当該機能を割り当てる場合、ワークフローＤＢ２３２に記憶されたワークフロー情報に含まれる実行スケジュールに基づいて、機能を割り当てるタイミングを決定し、決定されたタイミングで、当該機能を割り当てる。
【００４３】
なお、機能を割り当てるとは、アプリケーションを決定されたサーバ３（後述の監視状態にあるサーバ３）の所定記憶領域に記憶させて、当該サーバ３に、アプリケーションを自動的に実行させることをいう。
【００４４】
パラメータ生成部２４３は、機能割当部２４２により決定されたサーバ３のアドレスと、当該サーバ３に割り当てられたアプリケーションの機能の処理順に基づいて、機能を割り当てられたサーバ３の物理的な処理の流れを示すパラメータであって、これらアプリケーションの機能に対応するワークフローＩＤを含むパラメータを生成する。
【００４５】
パラメータ送信部２４４は、ワークフローＤＢ２３２に記憶されている処理順に基づいて、機能が割り当てられたサーバ３のうち、処理の基点となるサーバ３に対して、パラメータ生成部２４３により生成されたパラメータを機能呼び出し時のパラメータとして送信する。ここで、機能呼び出し時のパラメータとは、複数のサーバ３それぞれに割り当てられた機能を実行するタイミングを決定するために用いられるパラメータのことをいう。
【００４６】
ログ記憶制御部２４５は、アプリケーションの機能を割り当てられた複数のサーバ３から、実行結果を取得してログ記憶部２３４に記憶させる。
【００４７】
実行結果出力部２４６は、操作部１１を介して操作者からワークフローＩＤの入力を受け付けたことに応じて、ログ記憶部２３４に記憶されている実行結果のうち、ワークフローＩＤに対応する実行結果を抽出し、抽出された実行結果を表示部１２に出力する。
【００４８】
複数のサーバ３それぞれは、アプリケーションプラットフォーム装置２によりアプリケーションの機能を割り当てられる前は、アプリケーションプラットフォーム装置２から機能の割当が行われたか否かを監視する監視状態にある。そして、アプリケーションプラットフォーム装置２から機能を割り当てられた複数のサーバ３は、協働することによって、複数のアプリケーションの機能からなる一連の処理を実行する。
【００４９】
複数のサーバ３それぞれは、第２記憶部３３と、第２制御部３４と、を備える。
第２記憶部３３は、本実施形態に係るサーバ３の機能を実行するプログラム（図示省略）等を記憶する。また、第２記憶部３３は、受信したアプリケーションとパラメータとを記憶する所定記憶領域を備える。
第２制御部３４は、サーバ３に係る各機能を統括的に制御する。第２制御部３４は、監視部３４１と、アプリケーション実行部３４２と、実行結果送信部３４３と、を備える。
【００５０】
監視部３４１は、アプリケーションの機能が割り当てられていない場合に、アプリケーションプラットフォーム装置２によるアプリケーションの機能が割り当てられたか否かを監視する。具体的には、監視部３４１は、第２記憶部３３の所定記憶領域に、アプリケーションプラットフォーム装置２によってアプリケーションが記憶されたか否かを判定する。
【００５１】
アプリケーション実行部３４２は、第２記憶部３３の所定記憶領域にアプリケーションが記憶されたと監視部３４１が判定した場合に、当該アプリケーションを実行する。
【００５２】
実行結果送信部３４３は、第２記憶部３３の所定領域にパラメータが記憶されているパラメータに基づいて、アプリケーション実行部３４２によるアプリケーションの実行によって得られる成果物の出力先を特定する。そして、実行結果送信部３４３は、アプリケーションの実行によって得られる成果物と、第２記憶部３３に記憶されているパラメータとを、特定された出力先に対して出力する。また、実行結果送信部３４３は、アプリケーションの実行結果を示す情報（実行ログ）と、実行されているアプリケーションに対応するワークフローＩＤとをアプリケーションプラットフォーム装置２に送信する。
【００５３】
なお、実行結果送信部３４３は、入力される成果物又は出力される成果物に対してＵＲＬが含まれている場合、ＵＲＬを構成する文字列の末尾に、＃を付し、さらに＃の後ろに、パラメータをアンカーとして付すようにしてもよい。また、この場合、実行結果送信部３４３は、パラメータを所定の暗号化方式で暗号化してもよい。そして、暗号化されたパラメータを受信した場合には、サーバ３は、暗号化されたパラメータを所定の暗号化方式で復号するようにしてもよい。
【００５４】
アプリケーションプラットフォームシステム１の処理について、以下に具体例を用いて説明を進める。
【００５５】
例えば、図５に示されるように、アプリケーションＤＢ２３１に、アプリケーションとして、複数のシードメーカから構成されるシードメーカ群、複数のクローラから構成されるクローラ群、複数のエクストラクタから構成されるエクストラクタ群が記憶されているものとする。また、アプリケーションＤＢ２３１に、複数のクローラそれぞれに対してＵＲＬを出力するための一のゲートウェイが記憶されているものとする。
【００５６】
さらに、ワークフロー登録部２４１により、ワークフロー情報として、図３に示されるように、アプリケーションＩＤが、「ｓｄｍｋｒ００１」、「ｇｗ０１」、「ｃｒｗｌ０３」、「ｘｒｃｔ００８」のアプリケーションが、この順番で登録されているものとする。この場合、機能割当部２４２は、このワークフロー情報に基づいて、当該ワークフロー情報に含まれる４つのアプリケーションＩＤそれぞれに対応するアプリケーションの機能を割り当てる４台のサーバ３を決定し、当該決定されたサーバ３に当該機能を割り当てる。
そして、パラメータ送信部２４４により、パラメータ生成部２４３により生成されたパラメータ（機能呼び出し時のパラメータ）が、処理の基点となるサーバ３（サーバ３Ａ）に対して送信される。
【００５７】
４台のサーバ３に対して、「ｓｄｍｋｒ００１」に対応する「サーバ３Ａ」、「ｇｗ００１」に対応する「サーバ３Ｂ」、「ｃｒｗｌ０３」に対応する「サーバ３Ｃ」、「ｘｒｃｔ００８」に対応する「サーバ３Ｄ」が割り当てられたものとすると、割り当てられた後の４台のサーバ３の処理の流れは、図６に示されるものとなる。
【００５８】
図６において、サーバ３Ａは、第２記憶部３３にアプリケーション（シードメーカＡ）及びパラメータが記憶されたことに応じて、当該アプリケーションを実行し、成果物として、ＵＲＬを生成する。そして、サーバ３Ａは、第２記憶部３３に記憶されたパラメータに基づいて、出力先をサーバ３Ｂと特定し、サーバ３Ｂに対して、成果物であるＵＲＬと、パラメータとを出力する。ここで、パラメータは、ＵＲＬにアンカーとして付されることで送信される。また、サーバ３Ａは、アプリケーションの実行結果を示す情報（実行ログ）と、パラメータに含まれているワークフローＩＤとをアプリケーションプラットフォーム装置２に送信する。
【００５９】
また、サーバ３Ｂは、第２記憶部３３にアプリケーション（ゲートウェイ）が記憶されたことに応じて、当該アプリケーションを実行する。このアプリケーションは、入力されたＵＲＬをキューに格納する。ここでは、ＵＲＬは、サーバ３Ａから入力される。続いて、サーバ３Ｂは、第２記憶部３３に記憶されたパラメータに基づいて、出力先をサーバ３Ｃと特定し、一定間隔でキューに格納されたＵＲＬを成果物としてサーバ３Ｃに出力する。パラメータは、ＵＲＬにアンカーとして付されることで送信される。また、サーバ３Ｂは、アプリケーションの実行結果を示す情報（実行ログ）と、パラメータに含まれているワークフローＩＤとをアプリケーションプラットフォーム装置２に送信する。
【００６０】
また、サーバ３Ｃは、第２記憶部３３にアプリケーション（クローラＣ）が記憶されたことに応じて、当該アプリケーションを実行する。このアプリケーションは、入力されたＵＲＬに基づいて外部のＷｅｂサーバ（図示省略）からＷｅｂページを取得する。ここでは、ＵＲＬは、サーバ３Ｂから入力される。続いて、サーバ３Ｃは、第２記憶部３３に記憶されたパラメータに基づいて、出力先をサーバ３Ｄと特定し、取得されたＷｅｂページを成果物としてサーバ３Ｄに出力する。パラメータは、ＵＲＬにアンカーとして付された状態で送信される。また、サーバ３Ｃは、アプリケーションの実行結果を示す情報（実行ログ）と、パラメータに含まれているワークフローＩＤとをアプリケーションプラットフォーム装置２に送信する。
【００６１】
また、サーバ３Ｄは、第２記憶部３３にアプリケーション（エクストラクタＢ）が記憶されたことに応じて、当該アプリケーションを実行する。このアプリケーションは、Ｗｅｂページを入力されたことに応じて、このＷｅｂページから動画を抽出する。ここでは、Ｗｅｂページは、サーバ３Ｃから入力される。続いて、サーバ３Ｄは、抽出された動画を成果物として所定のサーバに出力する。また、サーバ３Ｄは、アプリケーションの実行結果を示す情報（実行ログ）と、パラメータに含まれているワークフローＩＤとをアプリケーションプラットフォーム装置２に送信する。
【００６２】
このように、サーバ３Ａ〜３Ｄは、協働することによって、一連の処理を自立的に実行することができる。
【００６３】
［フローチャート］
続いて、アプリケーションプラットフォーム装置２における処理の流れについて説明する。
図７は、本実施形態に係るアプリケーションプラットフォーム装置２においてワークフロー情報が受け付けられてから、実行結果がログＤＢ２３３に記憶されるまでの処理の流れを示すフローチャートである。
【００６４】
ステップＳ１において、第１制御部２４（ワークフロー登録部２４１）は、アプリケーションＤＢ２３１に記憶されているアプリケーションＩＤと、アプリケーションの処理順と、基点となるアプリケーションの処理を開始する実行スケジュールとをワークフロー情報として受け付ける。
【００６５】
ステップＳ２において、第１制御部２４（ワークフロー登録部２４１）は、受け付けたワークフロー情報に対応するワークフローＩＤを生成し、生成されたワークフローＩＤと、ステップＳ１において受け付けたアプリケーションＩＤ、アプリケーションの処理順及び実行スケジュールとを関連付けて、ワークフロー情報としてワークフローＤＢ２３２に記憶させる。
【００６６】
ステップＳ３において、第１制御部２４（機能割当部２４２）は、ワークフローＤＢ２３２に記憶されたワークフロー情報の実行スケジュールに基づいて、アプリケーションの機能を割り当てるタイミングであるか否かを判定する。第１制御部２４（機能割当部２４２）は、この判定がＹＥＳの場合、ステップＳ４に処理を移し、この判定がＮＯの場合、ステップＳ３の処理を再実行する。
【００６７】
ステップＳ４において、第１制御部２４（機能割当部２４２）は、ワークフローＤＢ２３２に記憶されたワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションＩＤに対応するアプリケーションの機能を割り当てるサーバ３を決定し、当該決定されたサーバ３に当該機能を割り当てる。
【００６８】
ステップＳ５において、第１制御部２４（パラメータ生成部２４３）は、ステップＳ４において決定されたサーバ３のアドレスと、当該サーバ３に割り当てられたアプリケーションの機能の処理順に基づいて、機能を割り当てられたサーバ３の物理的な処理の流れを示すパラメータであって、ステップＳ４において参照されたワークフロー情報に対応するワークフローＩＤ（これらアプリケーションの機能に対応するワークフローＩＤ）を含むパラメータを生成する。
【００６９】
ステップＳ６において、第１制御部２４（パラメータ送信部２４４）は、ワークフローＤＢ２３２に記憶されている処理順に基づいて、機能が割り当てられたサーバ３のうち、処理の基点となるサーバ３に対して、パラメータ生成部２４３により生成されたパラメータを機能呼び出し時のパラメータとして送信する。
【００７０】
ステップＳ７において、第１制御部２４（ログ記憶制御部２４５）は、アプリケーションの機能を割り当てられた複数のサーバ３から、実行結果を取得したか否かを判定する。第１制御部２４（ログ記憶制御部２４５）は、この判定がＹＥＳの場合、ステップＳ８に処理を移し、この判定がＮＯの場合、ステップＳ９に処理を移す。
【００７１】
ステップＳ８において、第１制御部２４（ログ記憶制御部２４５）は、取得した実行結果をログ記憶部２３４に記憶させる。
【００７２】
ステップＳ９において、第１制御部２４は、ワークフローに係る処理を終了させる終了操作を受け付けたか否かを判定する。第１制御部２４は、この判定がＹＥＳの場合、本フローチャートに係る処理を終了し、この判定がＮＯの場合、ステップＳ７に処理を移す。
【００７３】
図８は、本実施形態に係るアプリケーションの機能を割り当てられた複数のサーバ３における処理の流れを示すフローチャートである。なお、本フローチャートの開始時において、サーバ３にはアプリケーションの機能が割り当てられていないものとする。また、図８に示されるフローチャートは、複数のサーバ３それぞれにおいて実行される。
【００７４】
ステップＳ１１において、第２制御部３４（監視部３４１）は、監視部３４１は、第２記憶部３３の所定記憶領域を監視して、アプリケーションプラットフォーム装置２によってアプリケーションが記憶されたか否かを判定する。第２制御部３４（監視部３４１）は、この判定がＹＥＳの場合、ステップＳ１２に処理を移し、この判定がＮＯの場合、ステップＳ１１の処理を再実行する。
【００７５】
ステップＳ１２において、第２制御部３４（アプリケーション実行部３４２）は、第２記憶部３３の所定記憶領域に記憶されたアプリケーションを実行して成果物を生成する。
【００７６】
ステップＳ１３において、第２制御部３４（実行結果送信部３４３）は、第２記憶部３３の所定領域にパラメータが記憶されているパラメータに基づいて、ステップＳ１２において生成された成果物の出力先を特定する。
【００７７】
ステップＳ１４において、第２制御部３４（実行結果送信部３４３）は、ステップＳ１２において生成された成果物と、第２記憶部３３の所定領域に記憶されたパラメータとを、ステップＳ１３において特定された出力先に対して出力する。
【００７８】
ステップＳ１５において、第２制御部３４（実行結果送信部３４３）は、アプリケーションの実行結果を示す情報（実行ログ）と、ステップＳ１２において実行されたアプリケーションに対応し、第２記憶部３３の所定領域に記憶されているパラメータに含まれているワークフローＩＤとをアプリケーションプラットフォーム装置２に送信する。
【００７９】
以上、本実施形態によれば、アプリケーションプラットフォーム装置２は、ワークフロー登録部２４１により、アプリケーションＤＢ２３１に記憶されているアプリケーションＩＤと、アプリケーションの処理順とを、ワークフロー情報として受け付けて、ワークフローＤＢ２３２に記憶させ、機能割当部２４２により、ワークフローＤＢ２３２に記憶されたワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバ３を決定し、当該機能を割り当て、パラメータ生成部２４３により、機能を割り当てられたサーバ３の物理的な処理の流れを示すパラメータを生成し、パラメータ送信部２４４により、機能を割り当てられたサーバ３のうち、処理の基点となるサーバ３に対して、パラメータ生成部２４３により生成されたパラメータを送信する。
【００８０】
このようにすることで、アプリケーションプラットフォーム装置２は、ワークフロー情報に従って、アプリケーションの機能をサーバ３に割り当てることができる。さらに、アプリケーションプラットフォーム装置２は、パラメータ生成部２４３により生成された物理的な処理の流れを示すパラメータを処理の基点となるサーバ３に送信するので、処理の基点となるサーバ３では、このパラメータに従って、次の処理を行うサーバ３に対して成果物を送信することができる。さらに、成果物を生成したサーバ３が、次の処理を行うサーバに対してパラメータを機能呼び出し時のパラメータとして送信するという動作を繰り返すことによって、複数のサーバ３では、一連の処理を自立的に実行することができる。よって、アプリケーションプラットフォーム装置２は、既存の複数のサーバ３を簡易的な作業で自立的に動作させることができる。
【００８１】
また、アプリケーションプラットフォーム装置２は、ワークフロー登録部２４１により、ワークフロー情報の実行スケジュールを受け付け、機能割当部２４２により、ワークフロー情報に基づいて、当該ワークフロー情報に含まれる複数のアプリケーションそれぞれの機能を割り当てるサーバを決定し、当該ワークフロー情報に含まれる実行スケジュールに基づいて、当該機能を割り当てる。
【００８２】
このようにすることで、アプリケーションプラットフォーム装置２は、ワークフロー情報の登録者が所望するタイミングで、複数のサーバ３に対してアプリケーションの機能を割り当てることができる。
【００８３】
また、アプリケーションプラットフォーム装置２は、ログ記憶制御部２４５により、機能を割り当てられた複数のサーバから、実行結果を取得してログＤＢ２３３に記憶させ、実行結果出力部２４６により、ログＤＢ２３３に記憶された実行結果を出力する。
【００８４】
このようにすることで、アプリケーションプラットフォーム装置２は、アプリケーションの機能が割り当てられた複数のサーバ３における実行結果を一元的に管理することができる。
【００８５】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【００８６】
本実施形態では、全てのアプリケーションの機能をワークフロー情報に基づいて割り当てることとしたが、これに限らない。例えば、ワークフロー情報に対して、既にアプリケーションの機能が割り当て済みのサーバ（稼動中のサーバ）を選択可能にしてもよい。
【符号の説明】
【００８７】
１  アプリケーションプラットフォームシステム
２  サーバ
３  アプリケーションプラットフォーム装置
２１  操作部
２２  表示部
２３  第１記憶部
２４  第１制御部
３３  第２記憶部
３４  第２制御部
２３１  アプリケーション記憶部
２３２  ワークフロー記憶部
２３３  ログ記憶部
２４１  ワークフロー登録部
２４２  機能割当部
２４３  パラメータ生成部
２４４  パラメータ送信部
２４５  ログ記憶制御部
２４６  実行結果出力部
３４１  監視部
３４２  アプリケーション実行部
３４３  実行結果送信部
【図１】
2013012014.tif 000003
【図２】
2013012014.tif 000004
【図３】
2013012014.tif 000005
【図４】
2013012014.tif 000006
【図５】
2013012014.tif 000007
【図６】
2013012014.tif 000008
【図７】
2013012014.tif 000009
【図８】
2013012014.tif 000010