(57)【要約】【課題】アプリの配信とＦＷの配信が混在する環境であっても、操作性を低下させることなく、複数デバイスに対するソフトウェアの配信設定を競合なく行えるようにすること。【解決手段】配信システム10は、アプリ配信設定の際、配信対象のアプリが選択された際、配信可能なアプリバージョンをライセンス管理システム40に問い合わせ（432,433）、問い合わせ結果（434）に従って選択されたアプリバージョンが選択された各デバイスに適用可能かライセンス管理システム40に対して問い合わせ（435,436）、問い合わせ結果（437）に従って受け付けたアプリ配信設定を登録する（445）。また、ＦＷの配信設定の際、ＦＷを配信するデバイスが選択された際、選択デバイスに対するＦＷの配信可否をアプリ配信設定等に基づき判断し、判断結果に従って受け付けたＦＷ配信設定を登録する。【選択図】図５
2018005565.tif 000002
【特許請求の範囲】
【請求項１】
複数のデバイスに対する、アプリケーションの配信を予約する第１配信設定及びファームウェアの配信を予約する第２配信設定を管理するソフトウェア配信システムであって、
前記第１配信設定及び前記第２配信設定のいずれの設定を行うかの選択を受け付ける受け付け手段と、
前記第１配信設定を行う場合、配信対象のアプリケーションが選択された場合に、前記配信対象として選択されたアプリケーションの配信可能なバージョンの情報を、ライセンス管理システムに問い合わせる第１問合せ手段と、
前記第１問い合わせ手段による問い合わせ結果に基づいて、配信対象としてのバージョンの選択と、該選択されるバージョンのアプリケーションを配信する１又は複数のデバイスの選択とを受け付ける第１ユーザインタフェースを提供する第１提供手段と、
前記第１ユーザインタフェースに従って選択された前記配信対象のアプリケーションのバージョンを、前記選択された各デバイスに対してそれぞれ適用可能か、前記ライセンス管理システムに対して問い合わせる第２問合せ手段と、
前記第２問い合わせ手段の問い合わせ結果に基づいて、前記適用可能と判断された各デバイスに対して、前記配信対象のアプリケーションのバージョンの配信を予約する第１配信設定を受け付ける第２ユーザインタフェースを提供する第２提供手段と、
前記第２ユーザインタフェースに従って受け付けた第１配信設定を登録する第１登録手段と、
前記第２配信設定を行う場合、ファームウェアを配信する１又は複数のデバイスが選択された場合に、該選択された１又は複数のデバイスに対するファームウェアの配信可否を、該選択された各デバイスに対する前記第１配信設定の登録に基づいて判断する判断手段と、
前記判断手段によりファームウェアを配信可能と判断された各デバイスに対する、ファームウェアの配信を予約する第２配信設定を受け付ける第３ユーザインタフェースを提供する第３提供手段と、
前記第３ユーザインタフェースに従って受け付けた第２配信設定を登録する第２登録手段と、
を有することを特徴とするソフトウェア配信システム。
【請求項２】
前記第１ユーザインタフェースは、前記配信対象として選択されたアプリケーションの配信可能な各バージョンからいずれかのバージョンを選択するための手段と、前記配信対象として選択されたアプリケーションがインストールされている各デバイスの情報を提示し、該各デバイスから１又は複数のデバイスを選択するための手段とを含むことを特徴とする請求項１に記載のソフトウェア配信システム。
【請求項３】
前記第１ユーザインタフェースは、前記配信対象として選択されたアプリケーションがインストールされている各デバイスに対して登録されている、前記第１配信設定、及び、前記第２配信設定の情報を提示することを特徴とする請求項２に記載のソフトウェア配信システム。
【請求項４】
前記第２ユーザインタフェースは、前記配信対象として選択されたアプリケーションのバージョンを適用可能と判断された前記選択された各デバイスに対する各第１配信設定を、一括して又は個別に受け付け可能なことを特徴とする請求項１〜３のいずれか１項に記載のソフトウェア配信システム。
【請求項５】
前記第２ユーザインタフェースは、前記配信対象として選択されたアプリケーションのバージョンを適用不可と判断された前記選択された各デバイスに対する第１配信設定を受け付けないことを特徴とする請求項１〜４のいずれか１項に記載のソフトウェア配信システム。
【請求項６】
前記第２配信設定を行う場合、各デバイスに対して登録されている、前記第１配信設定、及び、前記第２配信設定の情報を提示して、ファームウェアを配信する１又は複数のデバイスの選択を受け付ける第４ユーザインタフェースを提供する第４提供手段を有することを特徴とする請求項１〜５のいずれか１項に記載のソフトウェア配信システム。
【請求項７】
前記第３ユーザインタフェースは、前記判断手段により前記ファームウェアを配信不可と判断された各デバイスに対する第２配信設定を受け付けないことを特徴とする請求項１〜６のいずれか１項に記載のソフトウェア配信システム。
【請求項８】
複数のデバイスに対する、アプリケーションの配信を予約する第１配信設定及びファームウェアの配信を予約する第２配信設定を管理するソフトウェア配信システムにおけるソフトウェア配信方法であって、
前記第１配信設定及び前記第２配信設定のいずれの設定を行うかの選択を受け付ける受け付けステップと、
前記第１配信設定を行う場合、配信対象のアプリケーションが選択された場合に、前記配信対象として選択されたアプリケーションの配信可能なバージョンの情報を、ライセンス管理システムに問い合わせる第１問合せステップと、
前記第１問い合わせステップでの問い合わせ結果に基づいて、配信対象としてのバージョンの選択と、該選択されるバージョンのアプリケーションを配信する１又は複数のデバイスの選択とを受け付ける第１ユーザインタフェースを提供する第１提供ステップと、
前記第１ユーザインタフェースに従って選択された前記配信対象のアプリケーションのバージョンを、前記選択された各デバイスに対してそれぞれ適用可能か、前記ライセンス管理システムに対して問い合わせる第２問合せステップと、
前記第２問い合わせステップでの問い合わせ結果に基づいて、前記適用可能と判断された各デバイスに対して、前記配信対象のアプリケーションのバージョンの配信を予約する第１配信設定を受け付ける第２ユーザインタフェースを提供する第２提供ステップと、
前記第２ユーザインタフェースに従って受け付けた第１配信設定を登録する第１登録ステップと、
前記第２配信設定を行う場合、ファームウェアを配信する１又は複数のデバイスが選択された場合に、該選択された１又は複数のデバイスに対するファームウェアの配信可否を、該選択された各デバイスに対する前記第１配信設定の登録に基づいて判断する判断ステップと、
前記判断ステップでファームウェアを配信可能と判断された各デバイスに対する、ファームウェアの配信を予約する第２配信設定を受け付ける第３ユーザインタフェースを提供する第３提供ステップと、
前記第３ユーザインタフェースに従って受け付けた第２配信設定を登録する第２登録ステップと、
を有することを特徴とするソフトウェア配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデバイスに対する、アプリケーションの配信設定及びファームウェアの配信設定を管理するソフトウェア配信システム、及びそのソフトウェア配信方法に関するものである。
【背景技術】
【０００２】
複合機等のデバイスにおいては、デバイス本来の組み込み機能を実現するためのファームウェアと、利用者毎に後からインストールして使用するアプリケーションという二種類のソフトウェアが利用可能である。通常、アプリケーションは、利用者によって選択され、インストール、起動される。アプリケーションには、利用するために追加の利用料金（ライセンス）が必要な場合もある。
【０００３】
ところで、ファームウェアおよびアプリケーションは、不具合の修正や機能拡張のためにバージョンアップが実施される。そして、バージョンアップでは、ファームウェアだけでなく、アプリケーションであっても、デバイスの製造元あるいは販売者によってバージョンアップ版のインストールが行われる場合もある。特に、複合機などのデバイスの場合、顧客とのメンテナンス契約が結ばれ、顧客毎、デバイス毎にカスタマイズされた状態となっている形態も多いからである。
【０００４】
ソフトウェアのインストールあるいはバージョンアップ版ソフトウェアへの更新において、デバイスをネットワーク経由で配信サーバに接続し、デバイスに対して遠隔地からのソフトウェア配信を行うことが実用化されている。
なお、サービスマンは多くの顧客、デバイスの保守を行うものである。そのため、デバイスからの操作による配信だけでなく、上述のような遠隔地からサービスマンのネットワーク上の操作によって複数デバイスをまとめて配信設定する場合がある。
【０００５】
特許文献1では、遠隔地で選択されたデバイスに対して、配信するファームウェア（バージョン）を選択した後、（適用禁止、削除する）デバイスを選択制御する技術が提案されている。この提案では、デバイス選択画面において、ファームウェア配信のステータスを表示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−２２１２６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
サービスマンによる遠隔地からのソフトウェア配信では、ファームウェアとアプリケーション等、異なる種別のソフトウェアの配信予約が互いに競合しないように考慮が必要である。例えば、ファームウェアの更新にはデバイスの再起動が伴うため、ファームウェアとアプリケーションとを同時に更新しようとすると、失敗する可能性がある。そこで、ファームウェアとアプリケーションの配信設定を同時にできないように排他制御する形態が考えられる。しかし、このような形態では、配信設定の操作において、優先して配信したい種別の配信設定を間違えて上書きキャンセルしてしまったり、設定した配信設定が禁止され失敗する等の事態が発生する可能性が高くなり、ソフトウェアの配信設定の操作性が低下してしまう。
【０００８】
また、配信設定するソフトウェアの種別によらず、配信対象のデバイスを選択する処理は共通のため、複数デバイスを選択する際には、複数のソフトウェア種別に対応する必要がある。しかし、複数のソフトウェア種別に対応したデバイス検索条件画面とすると画面が煩雑になり、操作性が低下してしまう。
【０００９】
また、アプリケーションソフトウェアは、ライセンス管理されるために、デバイス単位でバージョンアップ可否判定を実施する必要がある。しかし、複数デバイスをまとめてアプリケーション配信設定する場合、配信するアプリケーション、アプリケーションバージョン、および配信対象デバイスの選択において、画面更新の度にバージョンアップ可否判定を実施すると表示等が遅くなってしまい、操作性が低下してしまう。
【００１０】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、アプリケーションの配信とファームウェアの配信が混在する環境であっても、操作性を低下させることなく、複数デバイスに対するソフトウェアの配信設定を競合なく行うことができる仕組みを提供することである。
【課題を解決するための手段】
【００１１】
本発明は、複数のデバイスに対する、アプリケーションの配信を予約する第１配信設定及びファームウェアの配信を予約する第２配信設定を管理するソフトウェア配信システムであって、前記第１配信設定及び前記第２配信設定のいずれの設定を行うかの選択を受け付ける受け付け手段と、前記第１配信設定を行う場合、配信対象のアプリケーションが選択された場合に、前記配信対象として選択されたアプリケーションの配信可能なバージョンの情報を、ライセンス管理システムに問い合わせる第１問合せ手段と、前記第１問い合わせ手段による問い合わせ結果に基づいて、配信対象としてのバージョンの選択と、該選択されるバージョンのアプリケーションを配信する１又は複数のデバイスの選択とを受け付ける第１ユーザインタフェースを提供する第１提供手段と、前記第１ユーザインタフェースに従って選択された前記配信対象のアプリケーションのバージョンを、前記選択された各デバイスに対してそれぞれ適用可能か、前記ライセンス管理システムに対して問い合わせる第２問合せ手段と、前記第２問い合わせ手段の問い合わせ結果に基づいて、前記適用可能と判断された各デバイスに対して、前記配信対象のアプリケーションのバージョンの配信を予約する第１配信設定を受け付ける第２ユーザインタフェースを提供する第２提供手段と、前記第２ユーザインタフェースに従って受け付けた第１配信設定を登録する第１登録手段と、前記第２配信設定を行う場合、ファームウェアを配信する１又は複数のデバイスが選択された場合に、該選択された１又は複数のデバイスに対するファームウェアの配信可否を、該選択された各デバイスに対する前記第１配信設定の登録に基づいて判断する判断手段と、前記判断手段によりファームウェアを配信可能と判断された各デバイスに対する、ファームウェアの配信を予約する第２配信設定を受け付ける第３ユーザインタフェースを提供する第３提供手段と、前記第３ユーザインタフェースに従って受け付けた第２配信設定を登録する第２登録手段と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、アプリケーションの配信とファームウェアの配信が混在する環境であっても、操作性を低下させることなく、複数デバイスに対するソフトウェアの配信設定を競合なく行うことができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施例を示すシステムの構成を例示するブロック図
【図２】配信システムのアプリケーションサーバのハードウェア構成図
【図３】配信システム、ライセンス管理システム及びデバイスの機能構成図
【図４】アプリケーションのインストールの流れを示すシーケンス図
【図５】アプリケーションの配信予約設定および更新の流れを示すシーケンス図
【図６】ファームウェアの配信予約設定および更新の流れを示すシーケンス図
【図７】ＦＷ配信設定のためのユーザインタフェース画面
【図８】ＦＷ配信設定のためのユーザインタフェース画面
【図９】ＦＷ配信設定のためのユーザインタフェース画面
【図１０Ａ】ＦＷ定期アップデート設定のためのユーザインタフェース画面
【図１０Ｂ】ＦＷ定期アップデート設定のためのユーザインタフェース画面
【図１１】アプリ配信設定のためのユーザインタフェース画面
【図１２】アプリ配信設定のためのユーザインタフェース画面
【図１３】アプリ配信設定のためのユーザインタフェース画面
【図１４】アプリ配信設定のためのユーザインタフェース画面
【図１５】アプリ配信設定のためのユーザインタフェース画面
【図１６】ＦＷ配信予約処理を例示するフローチャート
【図１７】ＦＷ定期アップデート設定処理を例示するフローチャート
【図１８】アプリ配信予約処理を例示するフローチャート
【図１９】アプリ配信可否判断処理を例示するフローチャート
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１５】
図１は、本発明の一実施例を示すシステムの構成を例示するブロック図である。
図１に示すように、配信システム10は、Ｗｅｂサーバ12、ＤＢサーバ13及びアプリケーションサーバ11等を備える。配信システム10は、インターネット100に接続されたＷｅｂサーバ12を介して、各顧客企業（114、119、129）のデバイス（115、116、120、121、124〜127、131）等と通信を行う。これにより、配信システム10は、デバイスに対して、アプリケーションソフトウェア（以後「アプリ」という）及びファームウェア（以後「ＦＷ」という）の配信制御を管理するソフトウェア配信システムである。詳細は後述するが、配信システム10は、後述のライセンス管理システム40と連携して、ソフトウェアの配信設定を管理する。
【００１６】
アプリ及びＦＷの実ファイルは、コンテンツサーバ20にあり、デバイスへアプリをインストールする場合には、配信システム10からコンテンツサーバ20上の実ファイルの位置情報を取得し、コンテンツサーバ20からアプリをダウンロードする。これにより、多くのデバイスのアプリ配信の負荷を分散し、効率良くアプリの配信を行うことができる。アプリ及びＦＷの更新も同様である。
【００１７】
コンテンツサーバ20は、コンテンツ管理サーバ21およびファイル・ストレージ（22、23）を備える。コンテンツ管理サーバ21は、外部からのリクエストに従って、ファイル・コンテンツすなわちアプリやＦＷの実ファイルを保存あるいは提供する。
【００１８】
また、ライセンス管理システム40は、アプリを実行するためのライセンスを発行、管理する。ライセンス管理システム40もインターネット100等を介して配信システム10等と接続されている。ライセンス管理システム40は、配信システム10と同様に、Ｗｅｂサーバ42、ＤＢサーバ43及びアプリケーションサーバ41等を備える。
【００１９】
デバイスには、マルチ・ファンクション・プリンタ（ＭＦＰ）や、シングル・ファンクション・プリンタ（ＳＦＰ）等の種類があり、デバイスのモデル毎に一つあるいは複数の機能が搭載されている。それらの機能を実現するためのＦＷがデバイスにインストールされることにより、デバイスの各機能が利用可能となる。また、デバイスのモデル毎、あるいは、デバイスのモデルに共通で実行可能なアプリをデバイスにインストールして実行することが可能である。デバイスの利用者は、そのデバイスで利用可能な複数のアプリの中から、所望のものを選び、ライセンスを購入するなどして入手することにより、アプリのインストールを行う。また、デバイスのアプリの不具合が修正された場合や機能の改善あるいは追加された場合には、アプリを更新することで、それらを利用することができる。配信システム10は、ライセンス管理システム40と連携して、デバイスで動作するアプリをライセンス管理の観点から判断し、配信するアプリを決定する。
【００２０】
販売会社システム30は、デバイスを各顧客企業（114、119、129）へ販売し、維持、管理するデバイスの製造会社あるいはデバイスの販売会社がアプリ及びＦＷの登録・管理のための操作をするためのシステムである。販売会社システム30は、１台以上のパーソナルコンピュータ（以下「ＰＣ」という）（31、32）あるいはサーバ（33、34）を備える。販売会社システム30から配信システム10およびコンテンツサーバ20へアクセスすることにより、アプリ及びＦＷの登録と配信設定を行うことができる。
【００２１】
顧客システム114（Ａ社Ｘ事業所）においては、インターネット100に接続されたＬＡＮ118に接続されたデバイス（115、116）が、監視装置117により監視されている。監視装置117は、デバイス（115、116）の稼働情報等をインターネット100経由で図示しない監視システムに送信している。デバイス（115、116）は、コンテンツサーバ20からダウンロードしたＦＷやアプリを適用するためのコントローラを備える。
【００２２】
また、顧客システム119（Ａ社Ｙ事業所）においては、監視装置122、123によってＬＡＮ128に接続されたデバイス（120、121、124〜127）が管理されている。監視装置122により、デバイス（120、121、124〜127）が、監視装置123によりデバイス126、127がそれぞれ管理されている。監視装置122、123は、デバイス（120、121、124〜127）の稼働情報等をインターネット100経由で図示しない監視システムに送信している。デバイス（120、121、124〜127）は、コンテンツサーバ20からダウンロードされたＦＷやアプリを適用するためのコントローラを備える。
【００２３】
また、顧客システム129（Ｂ社）においては、インターネット100に接続されたＬＡＮ130に接続されたデバイス131自身が、自身の稼働情報等をインターネット100経由で図示しない監視システムに送信している。デバイス131は、上述した監視装置117、122、123と同等の機能を有している。デバイス131は、コンテンツサーバ20からダウンロードしたＦＷやアプリを適用するためのコントローラを備える。
【００２４】
図２は、配信システム10のアプリケーションサーバ11のハードウェア構成を例示するブロック図である。
本実施例におけるアプリケーションサーバ11は、ネットワークインタフェース（Network I/F）204を介して、Ｗｅｂサーバ12やＤＢサーバ13と互いに接続されている。アプリケーションサーバ11は、バス205を介して接続されたＣＰＵ201、ＲＡＭ202、ＲＯＭ203、ネットワークインタフェース204、ＨＤＤ（Hard Disk Drive）206などを備える。なお、ＨＤＤ206の代わりに又は併用してＳＳＤ（Solid State Drive）等の他の記憶装置を備えていてもよい。
【００２５】
配信システム10は、アプリケーションサーバ11のＣＰＵ201がＨＤＤ206あるいはＲＯＭ203、ＲＡＭ202に記録されたデータ及びプログラムを読み出して実行することにより実現される。また、配信システム10の機能は、複数のサーバの機能の連携によって実現される場合もある。ネットワークインタフェース204は、配信システム10内のサーバ間の機能連携に使われると共に、インターネット100を介して、外部システムと通信するためにも使用される。なお、図２はアプリケーションサーバ11に対応して図示しているが、図１に示した他のサーバやＰＣ及びデバイスのコントローラ部等も同様のハードウェア構成を有するものとする。
【００２６】
図３は、配信システム10、ライセンス管理システム40及びデバイス400の機能構成を例示するブロック図である。
【００２７】
図３において、400は、配信システム10に接続するデバイスの一例である。302は、配信システム10に接続する販売会社システムの一例として、クライアントシステムであるＷｅｂブラウザを示す。例えば、Ｗｅｂブラウザ302は、販売会社システム30のＰＣ31のＣＰＵがＨＤＤ等に格納されたＷｅｂブラウザプログラムを実行することにより実現されるものである。
【００２８】
次に、配信システム10の機能構成について説明する。
配信システム10は、図１に示したように、複数のサーバから構成されるため、その機能も複数サーバの組合せにより実現されているものとする。ただし、配信システム10は、図１に示す構成に限らず、１つのサーバで全ての機能を実現してもよいし、また、高い性能が必要な場合には、より多くのサーバの組合せで実現してもよい。すなわち、図３に示す配信システム10の機能構成は、配信システム10を構成する１又は複数のサーバのそれぞれにおいてＣＰＵがＨＤＤ等に格納されたプログラムを実行することにより実現されるものである。
【００２９】
310はＷｅｂインタフェース部で、デバイス400に対するアプリ及びＦＷの配信機能を提供するためのものである。Ｗｅｂインタフェース部310は、各デバイス400から各種リクエストを受信し、該リクエストに応じた処理結果を返却する。例えば、Ｗｅｂインタフェース部310は、アプリ配信情報のリクエストを受信すると、対象とするアプリの格納されている場所を検索し、アプリを取得するためのＵＲＬを応答として返却する。なお、リクエスト処理の詳細については後述する。
【００３０】
311はユーザインタフェース部で、Ｗｅｂブラウザ302から配信システム10にアクセスして、アプリ及びＦＷの登録や配信設定、定期アップデート設定を行うためのものである。
312はリクエスト受信部で、デバイス400からのリクエストを、Ｗｅｂインタフェース部310を介して受信する。313はレスポンス返信部で、デバイス400へレスポンスを、Ｗｅｂインタフェース部310を介して返す。
【００３１】
314は配信設定制御部で、ユーザインタフェース部311を介して指示されるＦＷおよびアプリの配信設定を制御する。配信設定制御部314は、デバイス管理部315、アプリ配信設定部317、ＦＷ配信設定部318を制御して、ユーザインタフェース部311で表示する配信設定のための画面の出力内容を決定する。デバイス管理部315は、配信設定制御部314の制御により、デバイスを管理する。アプリ配信設定部317は、配信設定制御部314の制御により、アプリの配信設定を行う。ＦＷ配信設定部318は、配信設定制御部314の制御により、ＦＷの配信設定を行う。
【００３２】
320はＤＢアクセス部で、各種処理に応じて、データ管理部330で管理されているテーブルのデータを更新あるいは検索するためのものである。
【００３３】
データ管理部330において、331は、アプリファイル管理テーブルである（後述する表６に例示）。333は、登録ＦＷ管理テーブルである（後述する表７に例示）。334は、デバイス管理テーブルである（後述する表８に例示）。335は、インストール済みアプリ管理テーブルである（後述する表９に例示）。336は、アプリ配信管理テーブルである（後述する表１０に例示）。337は、ＦＷ配信管理テーブルである。338は、定期アップデート設定管理テーブルである。
【００３４】
以下、デバイス400の機能構成について説明する。
図３に示すデバイス400の機能構成は、デバイス400が備えるコントローラのＣＰＵがＲＯＭやＨＤＤ等に格納されたプログラムを実行することにより実現されるものである。
【００３５】
340は、デバイス400の本来の機能を処理するメイン処理部である。メイン処理部340は、例えば、プリンタであれば画像形成処理を行う等の主機能を指す。デバイス400は、この主機能の他に、デバイスのＦＷおよびアプリの配信制御を行うための機能も備えているが、それらは341〜348の機能ブロックとして示されている。
【００３６】
341はＷｅｂインタフェース部で、配信システム10からアプリ及びＦＷの配信を受けるためのものであり、配信システム10のＷｅｂインタフェース部310と接続されている。342は配信処理部で、Ｗｅｂインタフェース部341を介して、アプリ及びＦＷの配信を処理する。343はアプリインストール部で、配信されたアプリのインストールを行う。344はアプリ更新部で、配信されたアプリを更新する。345はＦＷ更新部で、配信されたＦＷを更新する。347はＦＷ格納部で、配信されたＦＷを格納する。348はアプリ格納部で、配信されたアプリを格納する。
【００３７】
以下、ライセンス管理システム40の機能構成について説明する。
ライセンス管理システム40は、図１に示したように、複数のサーバから構成されるため、その機能も複数サーバの組合せにより実現されているものとする。ただし、ライセンス管理システム40は、図１に示す構成に限らず、１つのサーバで全ての機能を実現してもよいし、また、高い性能が必要な場合には、より多くのサーバの組合せで実現してもよい。すなわち、図３に示すライセンス管理システム40の機能構成は、ライセンス管理システム40を構成する１又は複数のサーバのそれぞれにおいてＣＰＵがＨＤＤ等に格納されたプログラムを実行することにより実現されるものである。
【００３８】
350はＷｅｂインタフェース部で、ライセンス管理システム40が配信システム10と接続して情報交換するためのものである。Ｗｅｂインタフェース部350は、配信システムのＷｅｂインタフェース部310と接続されている。351はリクエスト受信部で、配信システム10からのリクエストを、Ｗｅｂインタフェース部350を介して受信する。352はレスポンス返信部で、配信システム10へレスポンスを、Ｗｅｂインタフェース部350を介して返す。353はライセンス管理部で、アプリのライセンスを管理する。354はＤＢアクセス部で、各種処理に応じて、データ管理部360で管理されているテーブルのデータを更新あるいは検索するためのものである。
【００３９】
データ管理部360において、361は、登録アプリ管理テーブルである（後述する表１に例示）。362は、アプリ商品管理テーブルである（後述する表２に例示）。363は、インストール可能バージョン管理テーブルである（後述する表３に例示）。364は、ライセンス管理テーブルである（後述する表４に例示）。365は、デバイス単位ライセンス管理テーブルである（後述する表５に例示）。
【００４０】
以下、上述した各テーブルについて説明する。
まず、ライセンス管理システム40で管理されるテーブルから説明する。
表１に、登録アプリ管理テーブル361に格納されているアプリの管理情報の例を示す。
【００４１】
【表１】
2018005565.tif 000003
【００４２】
表１に示すように、登録アプリ管理テーブル361で管理されるアプリの管理情報は、登録番号、パスワード、アプリＩＤ、アプリ名、バージョン、ファイルＩＤ等の組合せの一覧から成る。バージョンが異なる同じアプリはアプリＩＤで一意に識別される。或るアプリの或るバージョンは、登録番号で一意に識別される。また、パスワードは、配信設定のために登録番号でアプリにアクセスする際にアプリにアクセスできるユーザを制限するためのものである。また、ファイルＩＤは、登録番号に対応するアプリの記憶場所と紐付けるためのものである。また、アプリ名は、ユーザインタフェース上での表示においてユーザによる識別が容易となるように付けられたものである。以上のようなアプリの管理情報は、販売会社システム30から担当者がアプリを登録する際に入力され、更新されることで維持されている。
【００４３】
アプリは、顧客に販売される際には、商品として管理され、同じアプリでも、異なる販売形態のために異なる商品とすることができる。表２に、アプリ商品管理テーブル362に格納されているアプリ商品の管理情報の例を示す。
【００４４】
【表２】
2018005565.tif 000004
【００４５】
表２に示すように、アプリ商品管理テーブル362で管理されるアプリ商品の管理情報は、商品ＩＤ、商品名、アプリＩＤ等の組合せの一覧から成る。アプリＩＤは、アプリの管理情報（表１）におけるアプリＩＤに紐付く。アプリ商品の管理情報では、同じアプリＩＤであっても、異なる商品、商品名を付けて管理することができる。
【００４６】
また、同じアプリＩＤであっても、アプリには、異なるバージョンが複数存在する。アプリ商品の管理においては、アプリ商品毎にどのバージョンを利用可能とするかを独立して管理できるようにしている。表３に、インストール可能バージョン管理テーブル363に格納されているアプリ商品のインストール可能バージョン情報の例を示す。
【００４７】
【表３】
2018005565.tif 000005
【００４８】
表３に示すように、インストール可能バージョン管理テーブル363で管理されるアプリ商品のインストール可能バージョン情報は、商品ＩＤと登録番号等の組合せの一覧から成る。この情報に商品ＩＤと登録番号の組合せが登録されている場合、商品ＩＤに対応する商品では、対応する登録番号のバージョンのアプリをインストールすることが可能である。
【００４９】
なお、ライセンス管理システム40では、顧客にアプリを販売するために、顧客と商品ＩＤを紐付けて、ライセンスを管理する。つまり、どの顧客にどの商品がライセンスされているかを記録し、ライセンスと商品の関連付けを行う。表４に、ライセンス管理テーブル364に格納されているライセンス情報の例を示す。
【００５０】
【表４】
2018005565.tif 000006
【００５１】
表４に示すように、ライセンス管理テーブル364で管理されるライセンス情報は、ライセンスＩＤ、顧客名、商品ＩＤ等の組合せの一覧から成る。ライセンスＩＤはライセンスを一意に識別する。また、商品ＩＤは、アプリ商品の管理情報（表３）における商品ＩＤに紐付く。この情報から、ライセンスＩＤに対応する商品ＩＤを特定することができる。
【００５２】
また、ライセンス管理システム40では、ライセンスに対応するアプリがどのデバイスにインストールされるかを管理する。表５に、デバイス単位ライセンス管理テーブル365に格納されているデバイスとライセンスの紐付情報の例を示す。
【００５３】
【表５】
2018005565.tif 000007
【００５４】
表５に示すように、デバイス単位ライセンス管理テーブル365で管理されるデバイスとライセンスの紐付情報は、デバイスＩＤとライセンスＩＤの組合せの一覧から成る。ライセンスＩＤは、ライセンス情報（表４）におけるライセンスＩＤに紐付く。この情報に、デバイスＩＤとライセンスＩＤの組合せが登録されていれば、デバイスＩＤに対応するデバイスに、ライセンスＩＤに対応する商品のインストールが可能である。
【００５５】
次に、配信システム10で管理されるテーブルについて説明する。
表６に、アプリファイル管理テーブル331に格納されているアプリのファイル管理情報の例を示す。
【００５６】
【表６】
2018005565.tif 000008
【００５７】
表６に示すように、アプリファイル管理テーブル331で管理されるアプリのファイル管理情報は、ファイルＩＤとＵＲＬ等の組合せの一覧から成る。ファイルＩＤは、アプリの管理情報（表１）におけるファイルＩＤに紐付く。この情報より、ファイルＩＤに対応するアプリのファイルが、コンテンツサーバ20において、ＵＲＬに示す場所に格納されていることが分かる。
【００５８】
アプリと同様に、配信システム10は、配信可能なＦＷも管理する。表７に、登録ＦＷ管理テーブル333に登録されているＦＷの管理情報の例を示す。
【００５９】
【表７】
2018005565.tif 000009
【００６０】
表７に示すように、登録ＦＷ管理テーブル333で管理されるＦＷの管理情報は、デバイスモデル、バージョン、公開区分、ＵＲＬ等の組合せの一覧から成る。デバイスモデルとバージョンの組合せに対応するＦＷのファイルは、ＵＲＬに示すコンテンツサーバ20上の記憶場所に格納されている。公開区分は、そのＦＷが、一般的にどのデバイスにもインストールされるＦＷ（「通常ＦＷ」）、商談用等特定の顧客のデバイスにだけインストールされるＦＷ（「特定ＦＷ」）のいずれであるかを示す。
【００６１】
なお、配信システム10では、不図示の管理情報によって、更新可能なＦＷのバージョンの組合せを管理している。例えば、Ver1.00からVer1.01へは更新可能、Ver1.00からVer1.10へは更新不可能などの情報を管理している。このようなＦＷの管理情報は、販売会社システム30から担当者がＦＷを登録する際に入力され、更新されることで維持されている。
【００６２】
配信システム10は、配信対象となる各デバイスの状態を保持し管理している。デバイスの状態を示す情報の一つとして、各デバイスで動作しているＦＷのバージョン情報がある。表８に、デバイス管理テーブル334に格納されているデバイス管理情報の例を示す。
【００６３】
【表８】
2018005565.tif 000010
【００６４】
表８に示すように、デバイス管理テーブル334で管理されるデバイスの管理情報は、デバイスＩＤ、デバイスモデル、バージョン、リモート配信等の組合せの一覧から成る。デバイスモデルは、デバイスＩＤで識別されるデバイスのモデルである。バージョンは、そのデバイスで現在動作しているＦＷのバージョンを示す。リモート配信は、そのデバイスへのアプリのリモート配信設定が許可されているか否かを示す。なお、リモート配信設定とは、遠隔地からサービスマンのネットワーク上の操作によってデバイスにソフトウェア等を配信するための設定を示す。
【００６５】
また、デバイスの状態を示すもう一つの情報として、各デバイスにインストールされているアプリとその状態の情報がある。表９に、インストール済みアプリ管理テーブル335に格納されているデバイスのインストール済みアプリ情報の例を示す。
【００６６】
【表９】
2018005565.tif 000011
【００６７】
表９に示すように、インストール済みアプリ管理テーブル335で管理されるインストール済みアプリ情報は、デバイスＩＤ、アプリＩＤ、アプリ名、バージョン、動作状態等の組合せの一覧から成る。デバイスＩＤとアプリＩＤ、バージョンの組合せによって、デバイスＩＤに示すデバイスにアプリＩＤとバージョンの組合せが示すアプリがインストールされていることを示している。また、動作状態は、そのアプリの動作状態を示している。この情報は、後述する図４の419に示す処理、あるいは、図５の457に示す処理で更新される。そして、この情報は、後述する図１１の600で表示される更新アプリの候補を出すために参照される。
【００６８】
表１０に、アプリ配信管理テーブル336に格納されている、アプリの配信情報の例を示す。
【００６９】
【表１０】
2018005565.tif 000012
【００７０】
表１０に示すように、アプリ配信管理テーブル336で管理されるアプリの配信情報は、配信ＩＤ、デバイスＩＤ、アプリＩＤ、バージョン、ファイルＩＤ、配信日時、配信後状態、配信状況等の組合せの一覧から成る。配信後状態は、その配信情報に基づいてデバイスに配信されたアプリの配信後の状態を指定するものであり、「起動」、「停止」、「継続」のいずれかを指定することができる。配信状況は、その配信情報に基づくアプリの配信状況を示すものであり、「配信待ち」、「配信中」、「完了」、「失敗」、「キャンセル」等の情報が配信状況に応じて格納される。配信システム10では、以上のようなアプリの配信情報によって、アプリの配信の予約を登録する。
【００７１】
表１１に、ＦＷ配信管理テーブル337に格納されている、ＦＷの配信情報の例を示す。
【００７２】
【表１１】
2018005565.tif 000013
【００７３】
表１１に示すように、ＦＷ配信管理テーブル337で管理されるＦＷの配信情報は、配信ＩＤ、デバイスＩＤ、デバイスモデル、バージョン、配信日時、適用日時、配信状況等の組合せの一覧から成る。配信システム10では、以上のようなＦＷの配信情報によって、ＦＷの配信の予約を登録する。
【００７４】
表１２に、定期アップデート設定管理テーブル338に格納されている、ＦＷの定期アップデート情報の例を示す。
【００７５】
【表１２】
2018005565.tif 000014
【００７６】
表１２に示すように、定期アップデート設定管理テーブル338で管理されるＦＷの定期アップデート情報は、配信ＩＤ、デバイスＩＤ、定期アップデート設定、確認時間、適用時間、Ｅメールアドレス、コメント、配信状況等の組合せの一覧から成る。配信システム10では、以上のような定期アップデート情報によって、ＦＷの定期アップデート設定を登録する。
【００７７】
以下、図４〜図６のシーケンス図を用いて、配信システム10に対して配信設定を行い、配信システム10がデバイス400へ配信する場合の流れを例示する。なお、図４〜図６に示すシーケンス図において、配信システム10の処理は、配信システム10を構成するサーバのＣＰＵ201がＨＤＤ206やＲＯＭ203等に格納されるプログラムを実行することにより実現されるものである。また、デバイス400の処理は、例えばデバイス400のＣＰＵがＨＤＤやＲＯＭ等に格納されるプログラムを実行することにより実現されるものである。また、ライセンス管理システム40の処理は、例えばライセンス管理システム40を構成するサーバのＣＰＵがＨＤＤやＲＯＭ等に格納されるプログラムを実行することにより実現されるものである。また、コンテンツサーバ20の処理は、例えばコンテンツ管理サーバ21のＣＰＵがＨＤＤやＲＯＭ等に格納されるプログラムを実行することにより実現されるものである。また、サービスマン402による配信システム10への操作（更新予約設定操作等）は、Ｗｅｂブラウザ302を利用して配信システム10へアクセスすることにより行われるものとする。
【００７８】
図４は、デバイスにアプリをインストールするために、デバイスの利用者によってデバイスを操作する場合の流れを例示するシーケンス図である。
【００７９】
図４において、401は、デバイス400を利用する利用者である。利用者401は、新しいアプリをデバイス400へインストールするために、デバイス400のユーザインタフェース（操作パネル等）を操作し、アプリのインストール指示を行う（410）。この際、利用者401は、インストールするアプリのアプリＩＤとバージョンを特定可能な情報を指示する。
【００８０】
該410の指示に応じて、デバイス400は、インストールするアプリとバージョンとを特定する情報（例えばデバイスＩＤ、アプリＩＤ、バージョン等）を配信システム10へ送り、対応するアプリを要求（リクエスト）する（411）。
【００８１】
この要求（411）に応じて、配信システム10は、該要求（411）をＷｅｂインタフェース部310等で処理する。なお、Ｗｅｂインタフェース部310と他の機能部が連携して処理を行う場合も「Ｗｅｂインタフェース部310が処理する」等と記載する。Ｗｅｂインタフェース部310は、ライセンス管理システム40へ、上記411の要求で渡されるデバイスＩＤとアプリＩＤ、バージョンを送り、上記要求を送ってきたデバイス400に対して、指定されたアプリのバージョンをインストールすることができるかを問い合わせる（ライセンス問い合わせ；412）。
【００８２】
この問い合わせ（412）に応じて、ライセンス管理システム40は、該問い合わせ（412）に含まれるデバイスＩＤに対応するライセンスを確認し、当該デバイスに対して、指定されたアプリのバージョンをインストールすることができるか否かを判断する。詳細には、ライセンス管理システム40は、デバイスＩＤからライセンスＩＤを特定し（表５）、ライセンスＩＤから商品ＩＤを特定し（表４）、商品ＩＤから登録番号を特定し（表３）、登録番号からアプリＩＤ、バージョン、ファイルＩＤ（表１）を特定する。これにより、ライセンス管理システム40は、指定されたデバイスに指定されたアプリのバージョンをインストール可能か否かを判断する。そして、ライセンス管理システム40は、問い合わせのあったアプリのバージョンをデバイスＩＤで指定されたデバイスにインストールできると判断した場合には、インストールするアプリのファイルを識別するファイルＩＤを配信システム10に返す（ライセンス応答；413）。
【００８３】
ライセンス管理システム40がインストールできる旨の応答（413）を返してきた場合、配信システム10のＷｅｂインタフェース部310は、該応答に含まれるファイルＩＤを用いて、アプリファイル管理テーブル331（表６）からアプリのＵＲＬを検索する。さらに、Ｗｅｂインタフェース部310は、該検索したＵＲＬを、上記411の要求に対応するプログラムファイルをダウンロードするためのＵＲＬとして、ライセンス管理システム40が返したライセンス情報と共にデバイス400へ返却する（414）。以後、配信システム10が処理するデバイス400からのリクエストも、Ｗｅｂインタフェース部310で処理されるものとして説明を続ける。
【００８４】
デバイス400は、上記414で返却されたＵＲＬでコンテンツサーバ20にアクセスし、インストールするアプリのファイルを要求する（アプリ要求；415）。この要求（415）の応答として、コンテンツサーバ20は、要求されたアプリのファイルをデバイス400に送信する(416)。デバイス400は、上記416で取得したアプリのファイルを使用して、アプリのインストール処理を行う（417）。
【００８５】
インストール処理（417）が終了し、インストールしたアプリが起動すると、デバイス400は、配信システム10へ、アプリのインストール完了及びインストール後の実行状態を通知する（418）。この時、デバイス400は、上記417で新しくインストールされたアプリを含め、その時点でデバイス400にインストールされている全てのアプリとそのバージョンの一覧情報を、配信システム10へ通知する。
【００８６】
デバイス400からアプリのインストール情報通知（418）を受けると、配信システム10は、その情報を、インストール済みアプリ管理テーブル335（表９）に記録し、デバイスに現在インストールされているアプリの情報を更新する（419）。そして、配信システム10は、上記419でアプリの状態を記録すると、デバイス400へ応答を返す（420）。
【００８７】
図５は、サービスマンが、アプリの更新のために配信予約設定をした場合の流れを例示するシーケンス図である。
図５において、サービスマン402は、デバイス400に対して、アプリおよびＦＷの更新のために、配信システム10へリモート配信の設定操作を行うサービスマンである。サービスマン402は、Ｗｅｂブラウザ302を利用して、配信システム10のユーザインタフェース部311にアクセスしてアプリ更新予約設定を実施する（430）。例えば、このアプリ更新予約設定（430）は、後述する図１１（ａ）又は図１３（ａ）に示すＵＩ画面から行うものとする。なお、本実施例では、デバイスにインストールされているアプリを、そのデバイスでバージョンアップが可能なアプリとする。
【００８８】
配信システム10は、デバイス400から取得したインストール済みアプリ情報（表９）から、デバイス400にインストールされているアプリのアプリＩＤを特定し、該アプリを配信するアプリのバージョンの候補とする。あるいは、配信システム10は、サービスマン402から入力されたアプリのバージョンを識別する登録番号に従って、配信するアプリのバージョンを特定する。インストール済みアプリ情報からアプリＩＤを特定して配信するアプリのバージョンの候補とする場合、配信システム10は、インストール済みアプリ情報から特定したアプリＩＤをライセンス管理システム40へ送信し、配信するアプリのバージョンの情報を問い合わせる（431）。また、登録番号に従って、配信するアプリのバージョンを特定する場合、配信システム10は、入力された登録番号をライセンス管理システム40へ送信し、配信するアプリのバージョンの情報を問い合わせる（431）。
【００８９】
ライセンス管理システム40は、上記431の問い合わせを受けたアプリＩＤに対応するアプリの全バージョンの情報の一覧（該アプリＩＤに対応するアプリの配信可能なバージョンの情報の一覧）、あるいは登録番号に対応するアプリのバージョンの情報を、登録アプリ管理テーブル361（表１）から検索し、該検索結果を配信システム10へ返す（432）。
【００９０】
433において、配信システム10は、サービスマン402へ、ライセンス管理システム40から返却されたバージョン一覧、あるいはアプリのバージョンの情報を、検索条件、更新可能バージョン候補として提示する。例えば、後述する図１１（ｂ）又は図１３（ｂ）のように提示する。さらに、サービスマン402からのデバイス検索指示に応じて、検索条件に合致するデバイス一覧と、上述の更新可能バージョン候補を提示する。例えば、後述する図１２又は図１４のように提示する。なお、配信システム10からサービスマン402への情報提示は、ユーザインタフェース部311からＷｅｂブラウザ302を利用して行われるものとする。
【００９１】
サービスマン402は、上記433の提示に応じて、更新するアプリのバージョンと配信対象デバイスを選択する（434）。
配信システム10は、上記434においてサービスマン402から指定されたデバイスと更新するアプリの情報を、ライセンス管理システム40へ送り、各デバイスがそのアプリへ更新可能（適用可能）かを問い合わせる（435）。
【００９２】
ライセンス管理システム40は、上記435の問合わせに応じて、各デバイスがそのアプリへ更新可能か判断し、判断結果を配信システム10に応答する（436）。
配信システム10は、上記436で受け取った応答に応じて、各デバイスがそのアプリへ更新可能かの判断結果をサービスマン402へ提示する（437）。上記選択された全てのデバイスについて、指定されたアプリの更新が可能な場合には、後述する図１５のような画面を提示し、選択されたデバイスに対して選択されたアプリの配信設定を可能にする。一方、上記選択されたデバイスの中に、指定されたアプリの更新が不可のデバイスが存在する場合には、後述する図７（ｃ）のように判断結果を提示した後に、後述する図１５のような画面を提示する。
【００９３】
上記437の提示に応じて、サービスマン402は、選択されたデバイス、アプリで配信設定を設定、登録するように、配信システム10に指示する（438）。例えば、図１５のように指示する。
配信システム10は、上記438のサービスマン402からの指示に従って、アプリ更新の予約登録を実行する（445）。すなわち、配信システム10は、上記438の指示に従って、アプリの配信情報をアプリ配信管理テーブル336（表１０）に登録する。
【００９４】
デバイス400は、配信予約あるいは定期アップデート設定の更新が入っているかを確認するため、定期的に配信システム10へ、配信設定確認の問い合わせを実行する（446）。配信システム10は、サービスマン402によるアプリの更新予約設定（430）によりアプリ更新予約登録（445）がされている場合、その後のデバイス400からの配信設定確認（446）に応じて、配信設定情報をデバイス400に応答する（447）。該447で応答される配信設定情報には、配信日時情報、配信識別情報（配信ＩＤ）及び更新後の実行状態指示情報（配信後状態）等が含まれる。
【００９５】
デバイス400は、上記447で受け取った配信設定情報で指定される配信予約日時（450）になると、配信システム10へ配信識別情報を送り、対応するアプリを要求する（451）。
上記451の要求に応じて、配信システム10は、該要求で渡される配信識別情報（配信ＩＤ）からアプリ配信管理テーブル336（表１０）を検索して、アプリＩＤとバージョンを特定し、さらにアプリファイル管理テーブル331（表６）からアプリのＵＲＬを検索する。そして、配信システム10は、上記検索したＵＲＬを、プログラムファイルをダウンロードするためのＵＲＬとして、デバイス400へ返却する（452）。
【００９６】
デバイス400は、上記452で返却されたＵＲＬを用いてコンテンツサーバ20にアクセスし、インストールするアプリのファイルを要求する（453）。この453の要求に応じて、コンテンツサーバ20は、対応するアプリのファイルをデバイス400に応答する（454）。
【００９７】
デバイス400は、上記454で取得したアプリのファイルを使用してアプリの更新処理を実行する（455）。
その後、デバイス400は、配信システム10へ、上記455で更新したアプリの更新完了及び更新後の実行状態を通知する（456）。この時、更新されたアプリのバージョンを含め、その時点でデバイス400にインストールされているアプリとバージョンの一覧情報を、配信システム10へ通知する。
上記456でアプリ更新通知を受けた配信システム10は、それを記録し、対象アプリの動作状態を更新する（457）。そして、配信システム10は、デバイス400へ応答を返して（458）、このシーケンスは終了する。
【００９８】
図６は、サービスマンが、ＦＷの配信予約設定あるいはＦＷの定期アップデート設定を実行した場合の流れを例示するシーケンス図である。
サービスマン402が、ＦＷの配信予約設定あるいは定期アップデート設定を実施する（460）。サービスマン402による配信システム10への操作は、上述のようにＷｅｂブラウザ302を利用して行われるものとする。例えば、このＦＷ更新予約設定（460）は、後述する図７〜図９又は図１０Ａ〜図１０Ｂに示すＵＩ画面から行うものとする。
【００９９】
上記460の予約設定に応じて、配信システム10は、461において、ＦＷの配信予約の場合、その予約設定の内容をＦＷ配信管理テーブル337（表１１）へ記録しておき、定期アップデート設定の場合、定期アップデート設定管理テーブル338（表１２）へ記録しておく。
【０１００】
図５に示した場合と同様に、デバイス400は、配信予約あるいは定期アップデート設定の更新が入っているかを確認するため、定期的に配信システム10へ、配信設定確認の問い合わせを実行する（446）。配信システム10は、サービスマン402による更新予約設定により更新予約登録がされている場合、その後のデバイス400からの配信設定確認（446）に応じて、対応する配信設定情報をデバイス400に応答する（447）。図６のシーケンスでは、配信システム10は、デバイス400からの配信設定確認（446）に応じて、配信設定情報をデバイス400に応答する（447）。この応答される配信設定情報には、配信設定の場合、配信日時情報、配信識別情報（配信ＩＤ）が含まれ、定期アップデート設定の場合、定期アップデートの定期確認情報（確認時間）、配信識別情報（配信ＩＤ）が含まれる。
【０１０１】
配信設定の場合、デバイス400は、上記447で受け取った配信設定情報で指定される配信予約日時（配信日時）（470）になると、配信システム10へ配信識別情報を送り、対応するＦＷを要求する（471）。なお、定期アップデート設定の場合には、デバイス400は、設定に従った所定の周期（確認時間）で、470からのシーケンスを繰り返すことになる。
【０１０２】
上記471の要求に応じて、配信システム10は、該要求で渡される配信識別情報からＦＷ配信管理テーブル337（表１１）を検索して、バージョンを特定し、さらに登録ＦＷ管理テーブル333（表７）からＦＷのＵＲＬを検索する。そして、配信システム10は、上記検索したＵＲＬを、プログラムファイルをダウンロードするためのＵＲＬとして、デバイス400へ返却する（472）。
【０１０３】
デバイス400は、上記472で返却されたＵＲＬを用いてコンテンツサーバ20にアクセスし、インストールするＦＷのファイルを要求する（473）。この473の要求に応じて、コンテンツサーバ20は、対応するＦＷのファイルをデバイス400に応答する（474）。
デバイス400は、上記474で取得したＦＷのファイルを使用してＦＷの更新処理を実行し（475）、再起動する（476）。
【０１０４】
該再起動後、デバイス400は、配信システム10へ、上記475で更新した更新後のバージョン情報を含めたＦＷの更新通知を送信する（476）。
上記476でＦＷ更新通知を受けた配信システム10は、該ＦＷ更新通知によって渡された更新後バージョンの情報でデバイス管理テーブル334を更新する（478）。これにより、配信システム10に保持している、デバイス400のＦＷの現在バージョンの情報が更新される。そして、配信システム10は、デバイス400へ応答を返して（479）、このシーケンスは終了する。
【０１０５】
次に、図７〜図１５を用いて、図５の430〜438および図６の460等に示したサービスマン402による配信設定について説明する。
図７〜図１５は、本実施例の配信設定のためのユーザインタフェース画面（ＵＩ画面）を例示する図である。これらのＵＩ画面は、配信システム10から提供されＷｅｂブラウザ302で表示される。
【０１０６】
図７（ａ）は、サービスマン402がＷｅｂブラウザ302を使用して、配信システム10にアクセスし、デバイスモデルを指定（選択）した後、アプリあるいはＦＷの更新のために配信設定を行うために最初に表示されるＵＩ画面の例である。
【０１０７】
図７（ａ）において、500は配信設定の種別を選択するラジオボタンである。500では、ＦＷの配信設定（「ＦＷ配信」）、ＦＷの定期アップデート設定（「ＦＷ定期」）、アプリの配信設定（「アプリ配信」）の３種類から配信設定を選ぶことができる。
【０１０８】
図７（ａ）は「ＦＷ配信」が選択されている場合に対応する。500で「ＦＷ定期」を選択すると、後述の図１０Ａ（ａ）の画面へ遷移する。また、500で「アプリ配信」を選択すると、後述の図１１（ａ）の画面へ遷移する。後述の画面を含め、いずれの画面で500の種別を選択することで、配信システム10の制御により、図７（ａ）、図１０Ａ（ａ）、図１１（ａ）の画面へ遷移する。
【０１０９】
まず、図７〜図９を用いて、ＦＷの配信設定について説明する。
図７（ａ）では、まずＦＷの配信設定を行う対象デバイスを複数選択するため、特定条件のデバイスを絞り込むための検索条件（501〜503）を入力する。
501は、各対象デバイスの現在の配信状況を指定するチェックボックスである。図７（ａ）の例における501では、「配信待ち」、「配信中」、「完了」、「失敗」、「キャンセル」から配信状況を複数選択して指定できる。例えば、図に示すように「失敗」を選択することで、配信に失敗したデバイスに限定して配信設定を行うことができる。
【０１１０】
502は、各対象デバイスにインストールされているＦＷの公開区分を指定するラジオボタンである。公開区分は、一般的にどのデバイスにもインストールされるＦＷ（「通常ＦＷ」）、商談用等特定の顧客のデバイスにだけインストールされるＦＷ（「特定ＦＷ」）、の２種類から選ぶことができる。
503は、各対象デバイスにインストールされているＦＷのバージョンの範囲を指定するドロップダウンメニューである。
【０１１１】
上記501〜503で対象デバイスの条件を指定した後、「検索」ボタン504を押下することで、配信システム10のユーザインタフェース部311が、図７（ｂ）の画面に画面を遷移させ、510に、検索条件に一致したデバイス一覧（対象デバイス一覧）を表示させるように制御する。また、「リセット」ボタン505が押下されると、配信システム10は、501〜503で設定された検索条件をリセットし、図７（ａ）の初期画面に画面を戻すように制御する。
【０１１２】
図７（ｂ）における、500〜505の動作は、図７（ａ）と同じであり、検索条件を変えながら図７（ｂ）に表示するデバイス一覧を更新していくことができる。これにより、配信設定対象のデバイスを試行錯誤で探しながら選択することも可能な操作方法となっている。
【０１１３】
図７（ｂ）では、検索条件で絞り込んだデバイス一覧（対象デバイス一覧）510の中から、さらに配信設定対象のデバイスを選択する。対象デバイス一覧510は、上述の条件で検索された複数デバイスについて、以下の情報を左から順に表示している。例えば、「デバイスＩＤ」、「現在ＦＷ Ver.」、「公開区分」、「適用後ＦＷ Ver.」、「適用状況（配信）」、「適用状況（設定）」、「配信予約日時」、「適用予約日時」、「配信方法」、「ＦＷ配信状況」、「ＦＷ定期更新状況」、「アプリ配信状況」等の情報を表示している。
【０１１４】
「デバイスＩＤ」は、そのデバイスの識別子を示す。「現在ＦＷ Ver.」は、そのデバイスに現在インストールされているＦＷのバージョンを示す。「公開区分」は、そのデバイスに現在インストールされているＦＷの公開区分を示す。
【０１１５】
「適用後ＦＷ Ver.」は、そのデバイスに対して予約（例えば図６の461）されたＦＷ配信設定において、そのデバイスに配信して適用された（又は適用される）ＦＷのバージョンを示す。
【０１１６】
「適用状況（配信）」は、ＦＷの配信設定における、そのデバイスのＦＷ適用可否状況を示す。すなわち、そのデバイスに配信可能なＦＷのバージョンが存在するか否かを示す。例えば、そのデバイスに配信可能なＦＷのバージョンが存在しない場合には「適用不可」と表示される。なお、そのデバイスの情報が取得できておらず、適用可否を判断出来ない場合には「対象外」と表示され、それ以外の場合には空欄で表示される。
【０１１７】
「適用状況（設定）」は、ＦＷの定期アップデート設定における、そのデバイスの定期アップデート設定可否状況を示す。例えば、そのデバイスの情報が取得できておらず、適用可否を判断出来ない場合には「対象外」と表示され、それ以外の場合には空欄で表示される。
【０１１８】
「配信予約日時」は、そのデバイスに対して予約されたＦＷ配信設定におけるＦＷの配信予約日時を示す。「適用予約日時」は、そのデバイスに対して予約されたＦＷ配信設定におけるＦＷの更新を実施する予約日時を示す。「配信方法」は、そのデバイスに対して予約されたＦＷ配信設定において、ＦＷ一式全てを配信するか更新のあるモジュールだけを配信するかを示す。
【０１１９】
「ＦＷ配信状況」は、そのデバイスに対して予約されたＦＷ配信設定におけるＦＷの配信状況を示す。「ＦＷ定期更新状況」は、そのデバイスに対して予約されたＦＷの定期アップデート設定におけるＦＷの定期アップデート状況を示す。「アプリ配信状況」は、そのデバイスに対して予約登録（例えば図５の445）されたアプリ配信設定におけるアプリの配信状況を示す。
【０１２０】
さらに、対象デバイス一覧510には、配信設定対象デバイスを選択するためのチェックボックスが備えられている。対象デバイス一覧510に表示されたデバイスの情報を確認し、選択するデバイスの行のチェックボックスを操作することにより、配信対象のデバイスを複数選択することができる。この際、操作者は、対象デバイス一覧510の「ＦＷ定期更新状況」、「アプリ配信状況」に表示されている情報を同時に確認することにより、他の種別の配信設定（ここではアプリ配信設定）あるいは定期アップデート設定の途中であるか否かを確認できる。一般に、ＦＷの更新には、デバイスの再起動を伴うため、ＦＷとアプリの更新タイミングを適切にずらす必要がある。このため、ＦＷの配信設定とアプリの配信設定は、排他的に設定されるように構成される。
【０１２１】
本実施例においては、配信システム10では、設定が競合する場合、次に示す図７（ｃ）へ画面遷移し、各対象デバイスに対応してエラーを表示し、設定対象デバイス群から除外するものとする。なお、設定が競合する場合とは、例えば、ＦＷの配信設定の際に、予約された（例えば「配信待ち」や「配信中」の）ＦＷ定期アップデート設定やアプリ配信設定が存在するデバイスが対象デバイスとして選択されている場合を示す。この場合、配信システム10では、図７（ｃ）において、設定が競合するデバイスに対応してエラーを表示し、設定対象デバイス群から除外制御する。これは、ＦＷの配信設定の際にはアプリ配信管理テーブル336（表１０）や定期アップデート設定管理テーブル338（表１２）、アプリの配信設定の際にはＦＷ配信管理テーブル337（表１１）や定期アップデート設定管理テーブル338（表１２）を参照し、各対象デバイスに対して種別の異なる設定が存在するかを確認することで判断する。この判断処理は、後述の図１６のS1008、図１７のS1204とS1205の間（不図示のステップ）及び図１８のS1417のタイミング等で実施される。このような構成により、本実施例によれば、他の設定種別の競合する設定中であるデバイスを適切に判断しデバイスを選択することが可能となる。
【０１２２】
また、上記「ＦＷ定期更新状況」、「アプリ配信状況」に表示は、別の実施例として、例えば配信システム10が異なる種別の設定が存在するか否かの判断（競合の判断）を行わず、他の設定種別の競合する既存の設定がある場合には、該既存の設定を新たな設定で上書きする実施例にも有効である。つまり、操作者が上記「ＦＷ定期更新状況」、「アプリ配信状況」の表示を参照することにより注意喚起して、例えば配信システム10が異なる種別の設定が存在するか否かの判断（競合の判断）を行わない場合でも、誤って設定を上書きすることを防ぐことが可能となる。
【０１２３】
対象デバイス一覧510において、配信対象のデバイスを複数選択し、「次へ」ボタン506を押下することにより、配信システム10は、選択された各デバイスに対して、配信設定可否の判断（上述した競合の判断）を行う。ここで、配信不可のデバイスが存在する場合には、配信システム10は図７（ｃ）の画面に遷移するよう制御する。一方、全てのデバイスが配信可能な場合には、配信システム10は図８に示す画面へ遷移するよう制御する。
【０１２４】
図７（ｃ）では、配信設定が不可と判断されたデバイスの一覧と各デバイスが配信設定不可となったエラー理由が520に表示される。
操作者がエラーの内容を確認した後、「戻る」ボタン523を押下することにより、配信システム10は図７（ａ）や図７（ｂ）の画面に戻し、再度デバイスの選択等を操作者に促すことができる。また、エラーの内容を確認するために、「結果出力」ボタン522を押下することにより、デバイスとエラー理由の一覧を出力したファイルをＷｅｂブラウザ302等が動作するＰＣ等にダウンロードすることができる。なお、選択したデバイス群の中に、配信可能なデバイスが存在する場合には、「次へ」ボタン521が有効となり、「次へ」ボタン521を押下することにより、配信可能なデバイス一覧を対象として図８に示す画面へ遷移する。
【０１２５】
図８、図９は、図７（ｂ）で選択したデバイス群に対してＦＷの配信設定を行うための画面の例である。なお、図８は配信するＦＷが指定される前の画面に対応し、図９は配信するＦＷが指定された後の画面に対応する。図９の画面は、配信するＦＷの指定がされている点を除いて、図８と同じ画面であり、同じ番号は同じ機能を示すため、図８と図９を合わせて説明する。
【０１２６】
まず、図８の画面において、サービスマンは、選択されたデバイス群に対して配信するＦＷのバージョンを指定する。公開区分530は、選択するＦＷの公開区分を選択するラジオボタンである。「通常ＦＷ」531を選択した場合には、「配信するファームウェアVer.」メニューからＦＷのバージョンを選択することにより、配信するＦＷのバージョンを指定する。一方、「特定ＦＷ」532を選択した場合はに、特定ＦＷを指定する「取得ＩＤ」と取得ＩＤに対応する「パスワード」を入力することで、配信するＦＷのバージョンを指定する。いずれの場合もＦＷのバージョンを指定する情報を入力して、「検索」ボタン533を押下することで、配信システム10が、対象ＦＷのバージョンを検索し、図９に示す画面へ遷移させる。
【０１２７】
図９の画面では、上記530〜532の指定に基づいて検索されたＦＷバージョンの情報によって534および535が更新される。534は、配信するバージョンのＦＷの名称である。535は、配信するＦＷのバージョンである。このように、配信するＦＷのバージョンが決定し、534および535が表示された図９の状態になると、図８では無効であった、ＦＷ配信設定の「登録」ボタン547が有効になる。
【０１２８】
545では、配信対象のデバイス一覧が、各デバイスのデバイスＩＤおよび現在ＦＷバージョン（「現在ＦＷ Ver.」）と共に表示され、対象デバイス毎に「配信日時」と「適用日時」を入力することが可能となっている。545では、デバイス毎に個々の値（配信日時、適用日時）を入力することもできるが、540〜544を用いて、全対象デバイスに対して一括入力することもできる。
【０１２９】
540は、配信日時を一括設定するための基準配信日時の入力部である。また、541は、複数デバイスに対する配信日時の設定間隔である。540および541に値を入力した後に「適用」ボタン（542）を押下することにより、545の「配信日時」の値を一括で設定することができる。
【０１３０】
543は、適用日時を一括設定するための適用日時の入力部である。543を入力した後に「適用」ボタン（544）を押下することにより、545の「適用日時」の値を一括で設定することができる。このように配信設定を入力した後に、「登録」ボタン547を押下することで、ＦＷ配信設定の登録が完了する。すなわち、配信システム10が、入力されたＦＷ配信設定をＦＷ配信管理テーブル337に登録する（例えば図６のＦＷ更新予約登録461）。
【０１３１】
なお、546は、前の画面へ戻るための「戻る」ボタンである。「戻る」ボタン546を押下することにより、図７（ａ）の画面に戻り、デバイスを選択し直すことができる。
【０１３２】
また、548は、選択されたデバイスの配信設定を登録削除するための「登録削除」ボタンである。「登録削除」ボタン548を押下することにより、選択されたデバイス（すなわち545に表示されている各デバイス）のＦＷ配信設定の登録を削除することができる。
【０１３３】
図９に示す画面においてＦＷの配信設定が登録されると、ＦＷ配信管理テーブル３３７337（表１１）のＦＷ配信情報のレコードが追加される。
表１１に示したように、ＦＷ配信情報は、配信ＩＤ、デバイスＩＤ、デバイスモデル、バージョン、配信日時、適用日時、配信状況等の組合せの一覧から成る。配信ＩＤは、ＦＷ配信情報のレコードが追加される時に一意の識別子が生成されて設定される。
【０１３４】
次に、図１０Ａ、図１０Ｂを用いて、ＦＷの定期アップデート設定について説明する。
図１０Ａ（ａ）は、ＦＷの定期アップデート設定を行うための画面例である。
図１０Ａ（ａ）では、まず551、552において、ＦＷの定期アップデート設定を行う対象デバイスを複数選択するため、特定条件のデバイスを絞り込むための検索条件を入力する。
【０１３５】
551は、各対象デバイスの現在のＦＷ定期アップデート設定における配信状況を指定するチェックボックスである。552は、現在のＦＷ定期アップデート設定の状態（定期アップデートを行うか否か設定状態）を指定するチェックボックスである。551、552で対象デバイスの条件を指定した後、「検索」ボタン553を押下することで、配信システム10は、図１０Ａ（ｂ）の画面に遷移させ、検索条件に一致したデバイス一覧が560に表示させる。
なお、「リセット」ボタン（554）を押下すると、配信システム10は、551、552で設定した検索条件をリセットし、図１０Ａ（ａ）の初期画面へ戻す。
【０１３６】
図１０Ａ（ｂ）における、500〜554の動作は、図１０Ａ（ａ）と同じであり、検索条件を変えながら図１０Ａ（ｂ）に表示するデバイス一覧を更新していくことができる。これにより、定期アップデート設定対象のデバイスを試行錯誤で探しながら選択することも可能な操作方法となっている。
【０１３７】
図１０Ａ（ｂ）では、検索条件で絞り込んだデバイス一覧（対象デバイス一覧）560の中から、さらに配信設定対象のデバイスを選択する。対象デバイス一覧560では、上述した条件で検索された複数デバイスの、以下の情報を左から順に表示している。例えば、「デバイスＩＤ」、「現在ＦＷ Ver.」、「適用後ＦＷ Ver.」、「適用状況（配信）」、「適用状況（設定）」、「ＦＷ配信状況」、「ＦＷ定期更新状況」、「アプリ配信状況」、「定期更新設定」、「確認時間」「適用時間」等の情報を表示している。
【０１３８】
なお、「デバイスＩＤ」、「現在ＦＷ Ver.」、「適用後ＦＷ Ver.」、「適用状況（配信）」、「適用状況（設定）」、「ＦＷ配信状況」、「ＦＷ定期更新状況」、「アプリ配信状況」は、図７（ｂ）に表示する内容として説明したものと同じであるので説明を省略する。
【０１３９】
「定期更新設定」は、定期アップデート設定の状態を示す。「定期更新設定」は、定期アップデートをする設定の場合に「ＯＮ」、しない設定の場合に「ＯＦＦ」が表示される。「確認時間」は、定期アップデート設定における、デバイス400が配信システム10へ更新版のＦＷがあるか否かを確認する時間設定を示す。「確認時間」には、「毎週月曜日４時〜７時」や「隔週土曜日２２時〜１時」のように、定期的に確認する周期と曜日、時間が表示される。「適用時間」は、ＦＷが配信された場合のインストール実施時間を示す。
【０１４０】
また、対象デバイス一覧560には、図７（ｂ）の510と同様に、定期アップデート設定対象デバイスを選択するためのチェックボックスがつけられている。対象デバイス一覧560において、定期アップデート設定対象のデバイスを複数選択し、「次へ」ボタン555を押下することにより、図１０Ｂ（ｃ）に示す画面へ遷移する。なお、「次へ」ボタン555を押下することにより、配信システム10が、ＦＷ配信設定の場合と同様に、選択された各デバイスに対して、配信設定可否の判断を行うようにしてもよい。配信設定可否判断は、ＦＷ配信管理テーブル337やアプリ配信管理テーブル336等を参照した種別の異なる配信設定の存在確認等によって行われる。
【０１４１】
図１０Ｂ（ｃ）は、選択したデバイス群に対して定期アップデート設定を行う画面の例である。
定期アップデート設定では、576にて、各デバイスについて、定期アップデートをするか否か（「ＯＮ」／「ＯＦＦ」）、及び、定期確認の周期、メール送信の設定を行う。「定期アップデート設定」で、定期アップデートをするか否か（「ＯＮ」／「ＯＦＦ」）を設定する。
【０１４２】
「確認時間」で、定期確認の周期（「毎週」／「隔週」）と曜日、確認時間を設定する。「適用日時」で、インストール実施時間を設定する。「Ｅメールアドレス」で、定期確認によって、ＦＷの配信が実施された際のメール送信宛先を設定し、「コメント」で、メール送信時のメール内容に含まれるコメントを設定する。
【０１４３】
なお、これらの設定は、576に一覧表示されるデバイス全体に対して、一括設定することもできる。570で、定期アップデートをするか否か（「ＯＮ」／「ＯＦＦ」）を設定する。571で、定期確認の周期（「毎週」／「隔週」）と曜日、確認時間を設定する。572で、インストール実施時間を設定する。573で、定期確認によって、ＦＷの配信が実施された際のメール送信宛先を設定し、574で、メール送信時のメール内容に含まれるコメントを設定する。以上を設定した上で、「適用」ボタン575を押下することにより、576に一覧表示されるデバイス全体に同じ値が一括設定される。このように定期アップデート設定を入力した後、「登録」ボタン578を押下することで、定期アップデート設定の登録が完了する。すなわち、配信システム10が、入力された定期アップデート情報を定期アップデート設定管理テーブル338に登録する（例えば図６のＦＷ更新予約登録461）。
【０１４４】
なお、577は、前の画面へ戻るための「戻る」ボタンである。「戻る」ボタン577を押下することにより、図７（ａ）の画面に戻り、デバイスを選択し直すことができる。
【０１４５】
また、579は、選択されたデバイスの定期アップデート設定を登録削除するための「登録削除」ボタンである。「登録削除」ボタン579を押下することにより、選択されたデバイス（すなわち576に表示されている各デバイス）の定期アップデート設定の登録を削除することができる。
【０１４６】
図１０Ｂ（ｃ）に示す画面においてＦＷの定期アップデート設定が登録されると、定期アップデート設定管理テーブル338（表１２）に、定期アップデート情報のレコードが追加される。
表１２に示したように、定期アップデート情報は、配信ＩＤ、デバイスＩＤ、定期アップデート設定、確認時間、適用時間、Ｅメールアドレス、コメント、配信状況等の組合せの一覧から成る。配信ＩＤは、定期アップデート情報のレコードが追加される時に一意の識別子が生成されて設定される。
【０１４７】
次に、図１１〜図１５を用いて、アプリの配信設定について説明する。
図１１（ａ）は、アプリの配信設定を行うための画面例である。
図１１（ａ）において、まずアプリの配信設定を行う対象デバイスを複数選択するため、特定条件のデバイスを絞り込むための検索条件を入力する。
580は、各対象デバイスの現在のアプリの配信設定の配信状況を指定するチェックボックスである。
【０１４８】
581、600、601は、デバイスにインストールされているアプリとバージョンによってデバイスを絞り込むための検索条件を入力する項目である。本実施例において、アプリとバージョンを特定する方法は、名称とバージョン番号指定による方法と、アプリのバージョンを一意に特定するアプリ登録番号を指定する方法の二種類から選べる。581は、これらの方法を選択する検索種別を指定するラジオボタンである。581において、「アプリ名」を選択した場合には、図１１（ａ）に示す画面で、アプリの名称とバージョンを指定してデバイスを絞り込む。581において、「登録番号」を選択した場合には、図１３（ａ）に示す画面へ遷移する。また、図１３（ａ）に示す画面で、581において、「アプリ名」を選択した場合には、図１１（ａ）に示す画面へ遷移する。
【０１４９】
600は、現在デバイスにインストールされているアプリから、アプリ名一覧を表示、選択するドロップダウンメニューである。また、601は、600で選択した名称のアプリに対応するバージョンを選択するチェックボックスである。600および601でアプリ名とバージョンを複数選択した後、「検索」ボタン586を押下することで、指定されたアプリとバージョンがインストールされたデバイスを対象として絞り込むことができる。すなわち、後述の図１２に示すような画面が表示される。
【０１５０】
また、図１１に示す画面では、配信対象アプリも指定する。つまり、アップデート対象のアプリは、デバイス側にもインストールされているものである必要があるため、配信対象アプリを指定することは、そのアプリがインストールされているデバイスを絞り込むことにもなる。図１１（ａ）に示す画面において、600でアプリ名を選択した後、「候補検索」ボタンを押下することにより、図１１（ｂ）に示す画面へ遷移する。
【０１５１】
図１１（ｂ）に示す画面では、584にて、600で指定されたアプリ名に対応して、ライセンス管理システム40から返された、更新可能な別バージョンの一覧情報が選択可能となっている。584は、配信対象のアプリのバージョンを指定するためのドロップダウンメニューである。584で選択されたアプリのバージョンに対応して、583にはライセンス管理システム40で管理するアプリ名を表示し、585にはアプリの登録番号を表示する。
【０１５２】
580、581、600、601で対象デバイスの条件を指定した後、「検索」ボタン586を押下することで、図１２の画面に遷移し、検索条件に一致したデバイス一覧（対象デバイス一覧）が589に表示される。「リセット」ボタン587を押下すると、580、581、600、601で設定した検索条件をリセットし、図１１（ａ）の初期画面へ戻る。
【０１５３】
図１２における、580、581、600、601、586、587の動作は、図１１と同じであり、検索条件を変えながら図１２に表示するデバイス一覧を更新していくことができる。これにより、アプリ配信設定対象のデバイスを試行錯誤で探しながら選択することも可能な操作方法となっている。
【０１５４】
図１２では、検索条件で絞り込んだデバイス一覧（対象デバイス一覧）589の中から、さらにアプリ配信設定対象のデバイスを選択する。対象デバイス一覧589は、上述の条件で検索された複数デバイスの、以下の情報を左から順に表示している。例えば、「デバイスＩＤ」、「現在アプリ名：Ver.」、「適用後アプリ名：Ver.」、「適用状況（配信）」、「配信予約日時」、「ＦＷ配信状況」、「ＦＷ定期更新状況」、「アプリ配信状況」、「配信後状況」、「リモート配信」、「ＦＷ Ver.」等の情報を表示している。
【０１５５】
「デバイスＩＤ」は、図７（ｂ）に表示する内容として説明したものと同じである。「現在アプリ名：Ver.」は、そのデバイスに現在インストールされているアプリの名称とバージョンの組合せを複数示す。「適用後アプリ名：Ver.」は、そのデバイスに配信して適用された最後のアプリの名称とバージョンの組合せを一つ示す。
【０１５６】
「適用状況（配信）」は、アプリ配信設定における、そのデバイスのアプリ配信可否状況を示す。そのデバイスのアプリ情報が取得できておらず、配信可否を判断出来ない場合には、「対象外」と表示される。それ以外の場合には、空欄で表示される。
【０１５７】
「配信予約日時」は、そのデバイスに対して予約（例えば図５の445）されたアプリ配信設定におけるアプリの配信予約日時を示す。
なお、「ＦＷ配信状況」、「ＦＷ定期更新状況」、「アプリ配信状況」は、図７（ｂ）に表示する内容として説明したものと同じであるので説明を省略する。
「配信後状態」は、そのデバイスに対して予約されたアプリ配信設定における、そのデバイスへのアプリの配信後のアプリの起動状態を示す。起動状態としては、「起動」、「停止」、「不明」のいずれかが表示される。
【０１５８】
「リモート配信」は、そのデバイスへのアプリのリモート配信設定が許可されているか否かを示す。「ＦＷ Ver.」は、図７（ｂ）に表示する内容として説明した「現在ＦＷ Ver.」と同じものであるので説明を省略する。
【０１５９】
また、対象デバイス一覧589では、510と同様にアプリ配信設定対象デバイスを選択するためのチェックボックスが備えられている。
【０１６０】
図１３（ａ）は、検索種別として登録番号を指定する場合の、アプリの配信設定を行うための画面例である。580、581は、図１１（ａ）に示す画面で説明した通りである。また、図１３（ａ）において、582は、アプリの登録番号を指定することにより、デバイスにインストールされているアプリによってデバイスを絞り込むための検索条件を入力する項目である。582において、アプリの登録番号とパスワードを入力し、「登録番号検索」ボタンを押下することにより、図１３（ｂ）に示す画面へ遷移する。
【０１６１】
図１３（ｂ）に示す画面では、583、584、585へ、アプリの登録番号に対応するアプリ名、バージョン、登録番号が表示される。この状態で、583、584、585に表示された内容で配信対象アプリが指定されたことになる。また、指定されたアプリがインストールされたデバイスを対象として絞り込む検索条件も指定されたことになる。ここで「検索」ボタン586を押下することで、図１４に示す画面へ遷移し、検索条件に一致したデバイス一覧が589に表示される。「リセット」ボタン587を押下すると、580、581、582で設定した検索条件をリセットし、図１３（ａ）の初期画面へ戻る。
【０１６２】
図１４における、580、581、582、586、587の動作は、図１３と同じであり、検索条件を変えながら図１４に表示するデバイス一覧を更新していくことができる。これにより、アプリ配信設定対象のデバイスを試行錯誤で探しながら選択することも可能な操作方法となっている。
また、図１４に示す画面では、図１２で示した内容と同じ情報を表示している。検索種別が登録番号であることだけが違いである。
【０１６３】
図１２又は図１４に示す589において、配信対象のデバイスを複数選択し、「次へ」ボタン588を押下することにより、配信システム10は、選択された各デバイスに対して、配信設定可否の判断を行う。配信設定可否判断は、ＦＷ配信管理テーブル337や定期アップデート設定管理テーブルを参照した種別の異なる配信設定の存在確認、および、図５における435、436に対応するライセンス管理システム40への問い合わせによって行われる。
【０１６４】
ここで、配信不可のデバイスが存在する場合には、配信システム10は、図７（ｃ）の画面に遷移させ、一方、全てのデバイスが配信可能な場合には、図１５に示す画面へ遷移させる。
【０１６５】
図７（ｃ）では、ＦＷ配信の場合と同様に、配信設定が不可と判断されたデバイスの一覧と各デバイスが配信設定不可となったエラー理由が520に表示される。この場合、エラーの内容を確認した後、「戻る」ボタン523を押下することにより、図１４の画面に戻り、デバイスを選択し直すことができる。なお、選択したデバイス群の中に、配信可能なデバイスが存在する場合には、「次へ」ボタン521が有効となり、「次へ」ボタン521を押下することにより、配信可能なデバイス一覧を対象として図１５に示す画面へ遷移する。
【０１６６】
図１５は、選択したデバイス群に対して、アプリの配信設定を行う画面の例である。
アプリの配信設定では、デバイスの選択段階で配信対象アプリが決定しているため、その情報を、アプリケーション名590、バージョン591、登録番号592に表示している。
【０１６７】
596にて、各デバイスについて、デバイスＩＤとそのデバイスにインストールされている対象アプリの名称とバージョンが表示される。さらに、596では、「配信日」、「配信時間」、「配信後状態」を個別に設定することができる。「配信後状態」としては、「起動」、「停止」、「継続」のいずれかを指定することができる。
【０１６８】
これらの設定は、596に一覧表示されるデバイス全体に対して、一括設定することもできる。593で、「配信日」と「配信時間」を設定する。594で、「配信後状態」を設定する。以上を設定した上で、「適用」ボタン595を押下することにより、596に一覧表示されるデバイス全体に同じ値が一括設定される。このようにアプリ配信設定を入力した後、598を押下することで、アプリ配信設定の登録が完了する。すなわち、配信システム10が、入力されたアプリ配信設定をアプリ配信管理テーブル336に登録する。
【０１６９】
なお、597は、前の画面へ戻るための「戻る」ボタンである。「戻る」ボタン597を押下することにより、図７（ａ）の画面に戻り、デバイスを選択し直すことができる。
【０１７０】
また、599は、選択されたデバイスのアプリ配信設定を登録削除するための「登録削除」ボタンである。「登録削除」ボタン599を押下することにより、選択されたデバイス（すなわち596に表示されている各デバイス）のアプリ配信設定の登録を削除することができる。
【０１７１】
図１５に示す画面においてアプリの配信設定が登録されると、アプリ配信管理テーブル336（表１０）のアプリ配信情報のレコードが追加される。
表１０に示したように、アプリ配信情報は、配信ＩＤ、デバイスＩＤ、アプリＩＤ、バージョン、ファイルＩＤ、配信日時、配信後状態、配信状況等の組合せの一覧から成る。配信ＩＤは、アプリ配信情報のレコードが追加される時に一意の識別子が生成されて設定される。
【０１７２】
次に、図１６〜図１８を用いて、配信システムの配信予約処理について説明する。
図１６は、配信システム10によるＦＷ配信予約処理を例示するフローチャートである。なお、図１６に示す処理は、図６のシーケンスにおける460〜461に対応して配信設定制御部314で処理される内容であり、Ｗｅｂブラウザ302に表示制御される画面表示は図７〜図９に示した画面表示に対応する。
また、図１６及び後述する図１７、図１８の処理は、配信システム10を構成するサーバのＣＰＵがＨＤＤ等に記憶されたプログラムを読み出して実行することにより実現されるものである。
【０１７３】
図６のシーケンスにおける460に対応して、配信設定制御部314は、S1000からの処理を開始する。
まず、S1001において、配信設定制御部314は、図７（ａ）の画面における設定種別500の入力に対応する各配信設定種別に基づいて処理を分岐する。ＦＷ配信設定を進める場合には、配信設定制御部314は、S1004へ処理を進める。ＦＷ定期アップデート設定が選択された場合には、配信設定制御部314は、S1200へ処理を進める。なお、S1200以降の処理は図１７にて後述する。また、アプリ配信設定が選択された場合には、配信設定制御部314は、S1400へ処理を進める。なお、S1400以降の処理は図１８にて後述する。
【０１７４】
S1004において、配信設定制御部314は、図７の「検索」ボタン504が押下された（すなわちデバイス検索が指示された）か否かを判定する（S1004）。そして、図７の「検索」ボタン504が押下されていないと判定した場合（S1004でNoの場合）、配信設定制御部314は、「検索」ボタン504が押下されるまで、引き続き、図７（ａ）あるいは図７（ｂ）のような画面において、検索条件の入力を受け付ける。
【０１７５】
一方、「検索」ボタン504が押下されたと判定した場合（S1004でYesの場合）、配信設定制御部314は、S1005へ処理を進める。
S1005において、配信設定制御部314は、図７（ｂ）のように、検索条件に応じたデバイス一覧をＷｅｂブラウザ302に表示するように制御する。ここでは、以前にＦＷの更新が行われた際に図６の477でデバイスから取得した情報に従って検索を行い、対象デバイス一覧を表示する。
【０１７６】
次に、S1006において、配信設定制御部314は、図７（ｂ）のような画面において、デバイス選択の入力を受け付ける。
次に、S1007において、配信設定制御部314は、図７（ｂ）における「次へ」ボタン506が押下されたか否かを判定する。そして、「次へ」ボタン506が押下されていないと判定した場合（S1007でNoの場合）、配信設定制御部314は、S1006に処理を戻し、デバイス選択の入力を受け付ける。
【０１７７】
一方、「次へ」ボタン506が押下されたと判定した場合（S1007でYesの場合）、配信設定制御部314は、S1008に処理を進める。
S1008において、配信設定制御部314は、上記S1006で選択された各デバイスについて、以前にＦＷの更新が行われた際に図６の477でデバイスから取得した情報、および種別の異なる配信設定の有無に従って、配信設定が可能か否かを判断する。例えば、上記の情報が取得できていないデバイスについては配信設定不可と判断する。また、「配信待ち」又は「配信中」のアプリ配信設定又は定期アップデート設定が予約されているデバイスについては配信設定不可と判断する。また、上記以外のデバイスについては配信設定可能と判断する。また、配信設定制御部314は、上記選択されたデバイス群に対して共通に更新可能なＦＷのバージョンを選択する処理も行う。
【０１７８】
S1009において、配信設定制御部314は、上記S1008の判断において、配信設定が不可能なデバイスがあったか否かを判定する。そして、配信設定が不可能なデバイスがあったと判定した場合（S1009でYesの場合）、配信設定制御部314は、S1010へ処理を進める。
【０１７９】
S1010では、配信設定制御部314は、図７（ｃ）の画面に示すように、配信設定が不可能なデバイスについての情報を、Ｗｅｂブラウザ302に表示するように制御する。そして、配信設定制御部314は、図７（ｃ）の画面で、「次へ」ボタン521が押下されたと判定した場合、S1011へ処理を進める。
【０１８０】
一方、配信設定が不可能なデバイスがなかったと判定した場合（S1009でNoの場合）、すなわち選択された全てのデバイスについて配信設定が可能な場合、配信設定制御部314は、そのままS1011へ処理を進める。
【０１８１】
S1011において、配信設定制御部314は、図８のような配信設定画面をＷｅｂブラウザ302に表示するように制御する。この際、配信設定制御部314は、上記選択されたデバイス群に対して共通に更新可能なＦＷのバージョンを、配信するファームウェアのバージョンの候補とするように制御する。
【０１８２】
次に、S1012において、配信設定制御部314は、図８の画面で「登録削除」ボタン548が押下されたか否かを判定する。
上記S1012において、「登録削除」ボタン548が押下されたと判定した場合（S1012でYesの場合）、配信設定制御部314は、S1213に処理を進める。
S1013において、配信設定制御部314は、上記S1006で選択されたデバイスの配信設定の登録を削除する処理を行い、本フローチャートの処理を終了する（S1018）。
【０１８３】
また、上記S1012において、「登録削除」ボタン548が押下されていないと判定した場合（S1012でNoの場合）、配信設定制御部314は、S1214に処理を進める。
S1014において、配信設定制御部314は、配信するＦＷバージョンの入力を受け付け、「検索」ボタン533が押下されると、S1015へ処理を進める。
【０１８４】
S1015において、配信設定制御部314は、図９のような配信設定画面をＷｅｂブラウザ302に表示し、該配信設定画面を介して配信設定の入力を受け付けるように制御する。
また、配信設定制御部314は、「登録」ボタン547が押下されたか否かを判定する（S1016）。「登録」ボタン547が押下されていないと判定した場合（S1016のNoの場合）、配信設定制御部314は、S1012に処理を戻し、引き続き、バージョンの選択、配信設定の入力を受け付ける。
【０１８５】
そして、「登録」ボタン547が押下されたと判定した場合（S1016のYesの場合）、配信設定制御部314は、S1017に処理を進める。
S1017において、配信設定制御部314は、上記S1006で選択されたデバイスに対して、配信するＦＷバージョンの配信設定を登録する処理を行う。なお、選択されたデバイスについて、他の配信設定が存在する場合には、その配信設定をキャンセルしてから改めてここでの配信設定を登録するようにしてもよい。S1017の処理の後、配信設定制御部314は、本フローチャートの処理を終了する（S1018）。
【０１８６】
図１７は、配信システム10によるＦＷ定期アップデート設定処理を例示するフローチャートである。なお、図１７に示す処理は、図６のシーケンスにおける460〜461に対応して配信設定制御部314で処理される内容であり、Ｗｅｂブラウザ302に表示制御される画面表示は図１０Ａ、図１０Ｂに示した画面表示に対応する。
【０１８７】
図１６のS1001からS1200へ処理が進むと、配信設定制御部314は、図１０Ａ（ａ）のような画面をＷｅｂブラウザ302に表示するように制御し、S1201へ処理を進める。なお、図７において説明した通り、図１７からでも、設定種別500を選択することで、図１６あるいは図１８の処理へ進むことができるが、本フローチャートでは省略するものとする。
【０１８８】
図１７のS1201において、配信設定制御部314は、図１０Ａの「検索」ボタン553が押下された（すなわちデバイス検索が指示された）か否かを判定する。そして、図１０Ａの「検索」ボタン553が押下されていないと判定した場合（S1202でNoの場合）、配信設定制御部314は、「検索」ボタン553が押下されるまで、図１０Ａ（ａ）あるいは図１０Ａ（ｂ）の画面において、検索条件の入力を受け付けるように制御する。
【０１８９】
一方、「検索」ボタン553が押下されたと判定した場合（S1201でYesの場合）、配信設定制御部314は、S1202へ処理を進める。
S1202において、配信設定制御部314は、図１０Ａ（ｂ）に示した画面のように、検索条件に応じたデバイス一覧をＷｅｂブラウザ302に表示するように制御する。ここでは、以前にＦＷの更新が行われた際に図６の477でデバイスから取得した情報に従って検索を行い、対象デバイス一覧を表示する。
【０１９０】
次に、S1202において、配信設定制御部314は、図１０Ａ（ｂ）のような画面において、デバイス選択の入力を受け付ける。
次に、S1203において、配信設定制御部314は、図１０Ａ（ｂ）の「次へ」ボタン555が押下されたか否かを判定する。そして、「次へ」ボタン555が押下されていないと判定した場合（S1203でNoの場合）、配信設定制御部314は、1203に処理を戻し、デバイス選択の入力を受け付ける。
【０１９１】
一方、「次へ」ボタン555が押下されたと判定した場合（S1204でYesの場合）、配信設定制御部314は、S1205に処理を進める。
【０１９２】
なお、図示しないが、S1204とS1205の間のステップにおいて、配信設定制御部314が、以下の処理を行うようにしてもよい。
例えば、配信設定制御部314は、上記S1203で選択された各デバイスについて、種別の異なる配信設定の有無に従って定期アップデート設定が可能か否かを判断する。例えば、「配信待ち」又は「配信中」のアプリ配信設定又はＦＷ配信設定が予約されているデバイスについては定期アップデート設定不可と判断し、それらの配信設定が予約されていないデバイスについては定期アップデート設定可能と判断する。そして、定期アップデート設定が不可能なデバイスがあったと判定した場合、配信設定制御部314は、図７（ｃ）の画面に示すように、定期アップデート設定が不可能なデバイスについての情報を、Ｗｅｂブラウザ302に表示するように制御する。そして、配信設定制御部314は、図７（ｃ）のような画面で、「次へ」ボタン521が押下されたと判定した場合、S1205に処理を進める。一方、選択した全デバイスについて定期アップデート設定が可能な場合、そのままS1205に処理を進めるものとする。
【０１９３】
S1205において、配信設定制御部314は、図１０Ｂ（ｃ）のような定期アップデート設定画面をＷｅｂブラウザ302に表示するように制御する。
次に、S1206において、配信設定制御部314は、定期アップデート設定画面で「登録削除」ボタン579が押下されたか否かを判定する。
【０１９４】
上記S1206において、「登録削除」ボタン579が押下されたと判定した場合（S1206でYesの場合）、配信設定制御部314は、S1207に処理を進める。
S1207において、配信設定制御部314は、上記S1203で選択されたデバイスの配信設定の登録を削除する処理を行い、本フローチャートの処理を終了する（S1211）。
【０１９５】
また、上記S1206において、「登録削除」ボタン548が押下されていないと判定した場合（S1206でNoの場合）、配信設定制御部314は、S1208に処理を進める。
S1208において、配信設定制御部314は、図１０Ｂ（ｃ）の画面を介して定期設定の入力を受け付けるように制御する。
また、配信設定制御部314は、「登録」ボタン578が押下されたか否かを判定する（S1209）。「登録」ボタン578が押下されていないと判定した場合（S1209のNoの場合）、配信設定制御部314は、S1206に処理を戻し、引き続き、定期設定の入力を受け付ける。
【０１９６】
そして、「登録」ボタン578が押下されたと判定した場合（S1209のYesの場合）、配信設定制御部314は、S1210に処理を進める。
S1210において、配信設定制御部314は、上記S1203で選択されたデバイスに対して、定期アップデート設定を登録する処理を行う。S1210の処理の後、配信設定制御部314は、本フローチャートの処理を終了する（S1211）。
【０１９７】
図１８は、配信システム10によるアプリ配信予約処理を例示するフローチャートである。なお、図１８に示す処理は、図５のシーケンスにおける440〜445に対応して配信設定制御部314で処理される内容であり、Ｗｅｂブラウザ302に表示制御される画面表示は図１１〜図１５に示した画面表示に対応する。
【０１９８】
図１６のS1001からS1400へ処理が進むと、配信設定制御部314は、図１１（ａ）のような画面をＷｅｂブラウザ302に表示するように制御し、S1401へ処理を進める。なお、図７において説明した通り、図１８からでも、設定種別500を選択することで、図１６あるいは図１７の処理へ進むことができるが、本フローチャートでは省略するものとする。
【０１９９】
S1401において、配信設定制御部314は、図１１の検索種別581の入力に対応する各検索種別の画面処理に分岐する。アプリ名で検索を進める場合には、配信設定制御部314は、S1402へ処理を進める。一方、登録番号で検索を進める場合には、配信設定制御部314は、S1409へ処理を進める。
【０２００】
S1402において、配信設定制御部314は、図１１（ａ）の画面における600でデバイスにインストールされているアプリ名の一覧をメニュー表示する。ここでは、以前にアプリの更新が行われた際等に、図４の418あるいは図５の456でデバイスから取得した情報に従って、アプリ名一覧を表示する。
【０２０１】
次に、S1403において、配信設定制御部314は、600からアプリ名の選択入力を受け付ける。
また、S1404において、配信設定制御部314は、600の「候補検索」が押下されたか否かを判定する。600の「候補検索」が押下されていないと判定した場合（S1404でNoの場合）、配信設定制御部314は、S1403に処理を戻し、引き続き、600からアプリ名の選択入力を受け付ける。
【０２０２】
そして、上記S1404において、600の「候補検索」が押下されたと判定した場合（S1404でYesの場合）、配信設定制御部314は、S1405に処理を進める。
S1405において、配信設定制御部314は、上記S1403で選択されたアプリ名のアプリＩＤを渡して、ライセンス管理システム40へ問い合わせを行い、そのアプリＩＤで別バージョンのアプリの情報を全て取得する。この処理は、図５における431、432に対応する。上記問い合わせに応じて、ライセンス管理システム40は、登録アプリ管理テーブル361から、アプリＩＤの一致するアプリの情報を検索して、配信システム10へ返す。
【０２０３】
次に、S1406において、配信設定制御部314は、図１１（ｂ）の画面における584に、上記S1406の問合わせで取得したバージョンの一覧をメニュー表示し、584で選択されているバージョンに対応するアプリ名を583、登録番号を585へ表示する。
S1407において、配信設定制御部314は、584からバージョンの選択入力を受け付ける。
【０２０４】
また、S1408において、配信設定制御部314は、「検索」ボタン586が押下されたか否かを判定する。「検索」ボタン586が押下されていないと判定した場合（S1408でNoの場合）、配信設定制御部314は、S1407に処理を戻し、引き続き、バージョンの選択を受け付ける。
一方、S1408において、「検索」ボタン586が押下されたと判定した場合（S1408でYesの場合）、配信設定制御部314は、S1414に処理を進める。S1414以降の処理については後述する。
【０２０５】
また、上記S1401において、登録番号で検索を進める場合には、配信設定制御部314は、S1409において、図１３（ａ）のような画面をＷｅｂブラウザ302に表示するように制御し、図１３（ａ）の582からアプリの登録番号とパスワードの入力を受け付ける。
【０２０６】
また、S1410において、配信設定制御部314は、582の「登録番号検索」が押下されたか否かを判定する。582の「登録番号検索」が押下されていないと判定した場合（S1410でNoの場合）、配信設定制御部314は、S1409に処理を戻し、引き続き、582からアプリの登録番号とパスワードの入力を受け付ける。
【０２０７】
そして、582の「登録番号検索」が押下されたと判定した場合（S1410でYesの場合）、配信設定制御部314は、S1411に処理を進める。
S1411において、配信設定制御部314は、指定されたアプリの登録番号とパスワードを渡して、ライセンス管理システム40へ問い合わせ、対応するアプリの情報を取得する。この処理は、図５における431、432に対応する。ライセンス管理システム40は、登録アプリ管理テーブル361から、登録番号とパスワードに一致するアプリの情報を検索して、配信システム10へ返す。
【０２０８】
S1412において、配信設定制御部314は、上記S1411の問合わせで取得したアプリの情報に基づいて、図１３（ｂ）の画面における583に取得したアプリ名、584にバージョン、585に登録番号を表示するように制御する。
【０２０９】
また、S1413において、配信設定制御部314は、「検索」ボタン586が押下されたか否かを判定する。「検索」ボタン586が押下されていないと判定した場合（S1413でNoの場合）、配信設定制御部314は、S1409に処理を戻し、引き続き、登録番号の入力を受け付ける。
一方、S1413において、「検索」ボタン586が押下されたと判定した場合（S1413でYesの場合）、配信設定制御部314は、S1414に処理を進める。
【０２１０】
S1414において、配信設定制御部314は、図１１（ｂ）あるいは図１３（ｂ）で指定された検索条件および指定されたアプリがインストールされているデバイスを検索して絞り込み、図１２あるいは図１４で例示した画面の589へデバイス一覧として表示するように制御する。ここでは、以前にアプリの更新が行われた際に図４の418あるいは図５の456でデバイスから取得した情報に従って検索を行い、対象デバイス一覧を表示する。
【０２１１】
次に、S1415において、配信設定制御部314は、図１２あるいは図１４に例示した画面において、デバイス選択の入力を受け付ける。
また、S1416において、配信設定制御部314は、「次へ」588が押下されたか否かを判定する。「次へ」588が押下されていないと判定した場合（S1416でNoの場合）、配信設定制御部314は、S1415に処理を戻し、引き続き、デバイス選択の入力を受け付ける。
【０２１２】
そして、「次へ」588が押下されたと判定した場合（S1416でYesの場合）、配信設定制御部314は、S1417に処理を進める。
S1417において、配信設定制御部314は、上記S1415で選択された各デバイスについて、種別の異なる配信設定の有無に従って、配信設定が可能か否かを判断する。例えば、「配信待ち」又は「配信中」のＦＷ配信設定又は定期アップデート設定が予約されているデバイスについては、配信設定不可と判断し、「配信待ち」又は「配信中」のＦＷ配信設定又は定期アップデート設定が予約されていないデバイスについては配信設定可能と判断する。
【０２１３】
さらに、S1418において、配信設定制御部314は、配信するアプリの登録番号と選択されたデバイスＩＤの一覧を渡して、ライセンス管理システム40へ問い合わせ、各デバイスＩＤについて配信設定が可能か否かの判断結果を取得する。この処理は、図５における435、436に対応する。ライセンス管理システム40は、上記S1418の問い合わせに応じて、図１９に示す処理を行い、各デバイスＩＤについて配信設定が可能か否かの判断結果を、配信システム10に応答する。
【０２１４】
次に、S1419において、配信設定制御部314は、上記S1417及びS1418の処理結果に基づいて、配信設定が不可能なデバイスがあったか否かを判定する。そして、配信設定が不可能なデバイスがあったと判定した場合（S1419でYesの場合）、配信設定制御部314は、S1420へ処理を進める。
S1420において、配信設定制御部314は、図７（ｃ）の画面に示すように、配信設定が不可能なデバイスについての情報を表示する。ここで、「次へ」ボタン521が押下されたと判定した場合、配信設定制御部314は、S1421へ処理を進める。
【０２１５】
一方、上記S1419において、配信設定が不可能なデバイスがなかったと判定した場合（S1419でYesの場合）、すなわち選択された全てのデバイスについて配信設定が可能な場合、配信設定制御部314は、そのままS1421へ処理を進める。
【０２１６】
S1421において、配信設定制御部314は、図１５に例示したような配信設定画面をＷｅｂブラウザ302に表示するように制御する。
S1422において、配信設定制御部314は、上記配信設定画面で「登録削除」ボタン599が押下されたか否かを判定する。
【０２１７】
上記S1422において、「登録削除」ボタン599が押下されたと判定した場合（S1422でYesの場合）、配信設定制御部314は、S1423に処理を進める。
S1423において、配信設定制御部314は、上記S1415で選択されたデバイスのアプリ配信設定の登録を削除する処理を行い、本フローチャートの処理を終了する（S1427）。
【０２１８】
一方、上記S1422において、「登録削除」ボタン599が押下されていないと判定した場合（S1422でNoの場合）、配信設定制御部314は、S1424に処理を進める。
S1424において、配信設定制御部314は、アプリ配信設定の入力を受け付けるように制御する。
【０２１９】
また、配信設定制御部314は、「登録」ボタン598が押下されたか否かを判定する（S1425）。「登録」ボタン598が押下されていないと判定した場合（S1425のNoの場合）、配信設定制御部314は、S1422に処理を戻し、引き続き、配信設定の入力を受け付ける。
そして、「登録」ボタン598が押下されたと判定した場合（S1425のYesの場合）、配信設定制御部314は、S1426に処理を進める。
【０２２０】
S1426において、配信設定制御部314は、上記S1415で選択されたデバイスに対して、アプリ配信設定を登録する処理を行う。なお、選択された各デバイスについて、他の配信設定が存在する場合には、その配信設定をキャンセルしてから改めてここでの配信設定を登録するようにしてもよい。S1426の処理の後、配信設定制御部314は、本フローチャートの処理を終了する（S1427）。
【０２２１】
図１９は、ライセンス管理システム40によるデバイスへのアプリ配信可否判断を行う処理を例示するフローチャートである。なお、図１９に示す処理は、図１８のS1418の問合わせに対応して、ライセンス管理部353で処理される内容に対する。また、図１９の処理は、ライセンス管理システム40を構成するサーバのＣＰＵがＨＤＤ等に記憶されたプログラムを読み出して実行することにより実現されるものである。
【０２２２】
S1600において、ライセンス管理部353は、配信システム10からの問い合わせで（例えば図１８の1418）、配信するアプリの登録番号とデバイスＩＤのリストを受け取る。ライセンス管理部353は、上記リストで受け取ったデバイスＩＤ全てに対して、S1601〜S1608の処理を繰り返すように制御する。
【０２２３】
S1601において、ライセンス管理部353は、上記リストから順に一つの未処理のデバイスＩＤを取り出し（以下「現在処理中のデバイスＩＤ」）、以降の処理を進める。
S1602において、ライセンス管理部353は、デバイス単位ライセンス管理テーブル365を検索し、現在処理中のデバイスＩＤからライセンスＩＤのリストを取得する。
【０２２４】
次に、S1603において、ライセンス管理部353は、ライセンス管理テーブル364を検索し、上記S1602で取得したライセンスＩＤのリストから、商品ＩＤのリストを取得する。
次に、S1604において、ライセンス管理部353は、インストール可能バージョン管理テーブル363を検索し、上記S1603で取得した商品ＩＤのリストから登録番号のリストを取得する。
【０２２５】
次に、S1605において、ライセンス管理部353は、上記S1604で取得した登録番号のリストに、配信システム10から渡された登録番号が含まれているか否かを判定する。そして、上記登録番号のリストに配信システム10から渡された登録番号が含まれていると判定した場合（S1605でYesの場合）、ライセンス管理部353は、S1606へ処理を進める。
S1606において、ライセンス管理部353は、現在処理中のデバイスＩＤを「配信可能リスト」に追加し、S1608に処理を進める。
【０２２６】
一方、上記登録番号のリストに配信システム10から渡された登録番号が含まれていないと判定した場合（S1605でNoの場合）、ライセンス管理部353は、S1607へ処理を進める。
S1607において、ライセンス管理部353は、現在処理中のデバイスＩＤを「配信不可リスト」に追加し、S1608に処理を進める。
【０２２７】
S1608において、ライセンス管理部353は、全デバイスＩＤについて上記S1601〜S1607の処理を行ったか否かを判定する。そして、まだ上記S1601〜S1607の処理を行っていないデバイスＩＤが存在すると判定した場合（S1608でNoの場合）、ライセンス管理部353は、S1601に処理を戻し、次の未処理のデバイスＩＤに処理を移行する。
【０２２８】
一方、S1608において、全デバイスＩＤについて上記S1601〜S1607の処理を行ったと判定した場合（S1608でYesの場合）、ライセンス管理部353は、S1609へ処理を進め、「配信可能リスト」および「配信不可リスト」を配信システム10へ返却する。
【０２２９】
以上、説明したように、異なるソフトウェア種別の配信設定を受け付ける本実施例の配信システムは、同じ画面の中で複数デバイスを対象デバイスとして選択する構成を有する。しかし、ソフトウェアを配信する対象となるデバイスを選択するためにデバイスの絞り込みを行う検索画面については、ソフトウェア種別ごとに画面切り替える構成である。また、絞り込み検索後のデバイス一覧においては、デバイス毎に、各々のソフトウェア種別の設定状況を表示する構成を有する。このような構成により、いずれのソフトウェア配信設定の種別においても、設定画面が煩雑にならず、かつ、デバイス選択の段階では、異なる配信設定種別間で配信設定が競合しないように考慮することが容易となる。その結果、複数デバイス選択による異なるソフトウェア種別の配信設定の操作性を十分に向上することができる。
【０２３０】
なお、複数デバイスを選択して一括配信設定する場合、各種配信設定の状況が各デバイスで異なるため、配信設定が競合する可能性がある。本実施例の配信システムでは、各種配信設定の状況を配信設定におけるデバイス一覧に表示することにより、配信設定におけるデバイス一覧の表示を確認可能にし、個別に明示的なキャンセル、つまり配信設定登録の削除できるように構成する。このように、本実施例の配信システムでは、デバイスの配信設定状況を適切に判断しながら、配信設定を行うことができる。なお、配信設定が競合した場合には、後から設定した配信設定で上書きすることで既存の配信設定をキャンセルするように構成してよい。
【０２３１】
また、本実施例によれば、アプリのようにデバイス個別に更新可能なバージョンの判断が異なるようなソフトウェアを複数デバイスまとめて配信設定する場合の画面表示パフォーマンスも改善することができる。例えば、デバイスの絞り込み検索を行う中で全デバイスについて配信可否判断を実施すると、デバイスの台数に応じた時間がかかってしまう。しかし、本実施例のように、アプリとバージョンを選択する段階ではデバイス単位の配信可否判断は行わず、デバイスにインストールされているアプリだけで検索を実施することで、対象デバイス選択の画面表示処理の負荷が軽減され操作性を向上することができる。さらに、対象デバイスを選択した後の段階で、各デバイスについての配信可否を判断することで、デバイス選択の操作性を低下させることなく、従来通り配信可能デバイスだけを配信対象とするように設定可能になった。
【０２３２】
なお、上記実施例では、複合機等の画像形成デバイスに対してソフトウェアを配信するシステムを例に説明したが、本発明のシステムがソフトウェアを配信するデバイスは、画像形成デバイスに限定されるものではない。アプリケーションソフトウェア及びファームウェア等の複数種別のソフトウェアの配信を受けることが可能なネットワークデバイスであれば、どのようなデバイスであってもよい。例えば、ネットワーク家電であっても、ナビゲーションシステム、ネットワークカメラ、パーソナルコンピュータ等の情報処理装置等であってもよい。
【０２３３】
以上のように、対象デバイスの絞り込み検索においては、配信するコンテンツ（ソフトウェア等）の種別に応じた条件のみを表示して簡素化する一方、対象デバイス選択の際には、他のコンテンツ種別の配信設定状況を同時に表示する構成を有する。このような構成により、異なるコンテンツ種別の配信が混在する環境であっても、操作性を低下させることなく、複数デバイスに対する配信を競合なく設定することを可能にする。
【０２３４】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【０２３５】
（その他の実施例）
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図１】
2018005565.tif 000015
【図２】
2018005565.tif 000016
【図３】
2018005565.tif 000017
【図４】
2018005565.tif 000018
【図５】
2018005565.tif 000019
【図６】
2018005565.tif 000020
【図７】
2018005565.tif 000021
【図８】
2018005565.tif 000022
【図９】
2018005565.tif 000023
【図１０Ａ】
2018005565.tif 000024
【図１０Ｂ】
2018005565.tif 000025
【図１１】
2018005565.tif 000026
【図１２】
2018005565.tif 000027
【図１３】
2018005565.tif 000028
【図１４】
2018005565.tif 000029
【図１５】
2018005565.tif 000030
【図１６】
2018005565.tif 000031
【図１７】
2018005565.tif 000032
【図１８】
2018005565.tif 000033
【図１９】
2018005565.tif 000034