(57)【特許請求の範囲】
【請求項１】
クライアント計算装置にコンテンツを提供する方法であって、アグリゲータデバイスが、
複数のチャネルソースによって運営される１つまたは複数のチャネルからコンテンツを受信するために、前記チャネルソースに登録することであって、前記チャネルはそれぞれ、チャネルコンテンツおよび前記チャネルコンテンツを定義するチャネル属性を含み、前記チャネル属性は前記チャネルコンテンツの真正性を検証する手順を示すこと、
前記登録に応答して、前記登録されたチャネルソースからコンテンツを受信すること、
前記チャネル属性に基づいて、前記受信したコンテンツの真正性を検証することと、
前記コンテンツを定義する前記チャネル属性に基づいて、前記受信されたコンテンツを収集することであって、前記クライアント装置から提供される当該クライアント装置にインストールされているソフトウェアの記述に基づいて収集した前記受信されたコンテンツを変更することを含むこと、ならびに
前記収集されたコンテンツを前記クライアント計算装置に配布することを含むことを特徴とする方法。
【請求項２】
前記登録されたチャネルソースからコンテンツを受信する際の嗜好を定義することをさらに含み、前記登録されたチャネルソースから受信された前記コンテンツは、前記嗜好に従って受信されることを特徴とする請求項１に記載の方法。
【請求項３】
前記クライアント計算装置にポリシーを展開することをさらに含み、前記ポリシーは、前記クライアント計算装置上に前記収集コンテンツをインストールするインストールプロセスを制御することを特徴とする請求項１に記載の方法。
【請求項４】
前記クライアント計算装置に関連づけられた記述情報を受信することをさらに含み、前記収集コンテンツは、前記記述情報に基づいて前記クライアント計算装置に配布されることを特徴とする請求項１に記載の方法。
【請求項５】
チャネルプロバイダによって、チャネルコンテンツを作成すること、
前記チャネルプロバイダによって、前記作成されたコンテンツを定義するチャネル属性を確立すること、ならびに
前記チャネルプロバイダによって、前記作成されたコンテンツおよび前記チャネル属性を含むチャネルを前記複数のチャネルソースの１つに公開することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
クライアント計算装置にコンテンツを提供するシステムであって、
複数のコンテンツプロバイダと対話して、複数のチャネルを開発し公開するユーザインターフェースであって、前記チャネルはそれぞれ、チャネルコンテンツおよび前記チャネルコンテンツを定義するチャネル属性を含み、前記チャネル属性は前記チャネルコンテンツの真正性を検証する手順を示す、ユーザインターフェースと、
前記複数の公開されたチャネルを運営する配布プロセッサと、
前記配布プロセッサによって運営される指定されたチャネルに対してコンテンツを求めるリクエストを受信し、クライアント計算装置上にインストールするために、前記受信されたリクエストに含まれたクライアント計算装置にインストールされたソフトウェアの記述属性および前記リクエストされたコンテンツを定義する前記チャネル属性に従って、前記チャネルコンテンツを変更され、真正性が検証された前記リクエストされたコンテンツを配布するコンピュータ実行可能命令を実行するように構成されたアグリゲータプロセッサと、
を備えることを特徴とするシステム。
【請求項７】
前記コンテンツは、ソフトウェア製品用の更新を含むことを特徴とする請求項６に記載のシステム。
【請求項８】
リクエストを受信することは、前記リクエストのリクエスト側から識別用情報を受信すること、および前記識別用情報に基づいて前記リクエスト側を認証することを含むことを特徴とする請求項６に記載のシステム。
【請求項９】
チャネル用の前記チャネル属性は、前記チャネルの前記コンテンツプロバイダ、ユーザ認証要件、および前記チャネルに加入する計算装置に適用可能な制約の１つまたは複数を示すことを特徴とする請求項６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンテンツ配布インフラストラクチャに関する。
【背景技術】
【０００２】
電子コンテンツ（これ以降、「コンテンツ」）は、社会によって、サービスを実施するのに、および情報を提供するのにますます使われるようになっている。したがって、サービスがアップグレードされ情報が変わると、コンテンツは更新されなければならない。更新コンテンツは、更新された情報（例えば、ニュース更新、天気予報、在庫更新、新規雑誌記事など）あるいは更新された製品およびサービス（例えば、ソフトウェア更新、バグ修正、新規ソフトウェア製品、最新販売ビデオ、テレビのエピソード、または歌、ｅメールおよびインターネットサービスに対するアップグレード、ウェブサイトによって提供されるコンテンツを視聴し、もしくは使うための加入（subscriptions）など）を含み得る。概して、更新コンテンツは、複数の形のコンピュータ可読媒体のうち１つまたは複数を用いて、クライアント計算装置に配布することができる。例えば、更新されたコンテンツを含むコンピュータ可読記憶媒体は、更新されたコンテンツをクライアント計算装置に配布するのに用いることができる。あるいは、更新コンテンツは、インターネットなど、１つまたは複数のデータ通信ネットワークを介して提供することができる。複数の形のコンピュータ可読媒体それぞれで、更新されたコンテンツを具現化する、いくつかの異なるフォーマット技法が利用可能である。更新されたコンテンツをフォーマットしクライアント計算装置に配布する多数の選択肢がある結果、コンテンツ消費者（例えば、クライアント計算装置のユーザ）は、一貫性のない複数の更新経験を負わせられる（更新コンテンツを受信するために、コンテンツ消費者による対話が要求される）。
【０００３】
ソフトウェアおよびハードウェアは、急速な技術改良に適合するために頻繁に更新されるので、ソフトウェアおよびハードウェア更新に関するコンテンツを提供することは、エンドユーザおよび組織管理者を含むコンテンツ消費者、ならびに、独立ソフトウェアベンダ（ＩＳＶ）、独立ハードウェアベンダ（ＩＨＶ）、および／または相手先商品製造会社（ＯＥＭ）などのコンテンツプロバイダ両方にとって特に負担となる。インターネットは、情報を素早く、地球規模で提供させるので、インターネットはしばしば、コンテンツプロバイダによって、更新または他のコンテンツを多数のコンテンツ消費者に配布するのに使われる。しかし、多くの小規模コンテンツプロバイダは、自社の主力製品の開発に専念しており、インターネット規模で配布システムを管理するのに必要な作業部隊およびサーバインフラストラクチャをもたない。さらに、コンテンツプロバイダがインターネットを介して更新を配布するための資源をもつ場合であっても、コンテンツプロバイダは、コンテンツ消費者が更新されたコンテンツを受信するためにはコンテンツ特有またはプロバイダ特有のソフトウェアプログラムを使うこと、あるいは特定のウェブサイトを訪問することを要求する。したがって、各コンテンツプロバイダによって提供されるコンテンツは、特有の更新経験を伴う。エンドユーザは、ソフトウェアおよびハードウェア更新を異なる複数のコンテンツプロバイダから受信することに関心があるので、コンテンツ消費者は、更新されたソフトウェアおよびハードウェアコンテンツを受信するために、複数の更新経験を経なければならない。同様に、企業コンテンツ消費者は、その組織内で使われるすべての製品向けの、単一の統一自動更新配布システムをもたない。管理者は、各ソフトウェアおよびハードウェア製品用の更新を探し出し、更新を自社のシステムにインポートしなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、すべてのコンテンツプロバイダによって、自社の更新を一度の更新経験によりコンテンツ消費者に提供するのに使うことができる統一配布インフラストラクチャの必要性がある。
【課題を解決するための手段】
【０００５】
本発明の実施形態は、統一配布インフラストラクチャを実現することによって、コンテンツ消費者にコンテンツを提供する既存の策の１つまたは複数の欠陥を克服する。本発明の態様によると、統一配布インフラストラクチャは、複数の多様なコンテンツプロバイダによって使うことができ、有利には、コンテンツ消費者へのコンテンツの配布を容易にする。さらに、統一配布インフラストラクチャの態様は有利には、コンテンツ消費者が、異なるタイプのコンテンツおよび／または複数のコンテンツプロバイダからコンテンツを一度のユーザ経験により選択的に受信することを可能にする。
【０００６】
本概要は、「発明を実施するための形態」において後でさらに説明する概念一式を、簡略化された形で紹介するためのものである。本概要は、本特許請求対象の主要な特徴または本質的な特徴を識別することは意図しておらず、本特許請求対象の範囲を決定する一助として使われることも意図していない。
【０００７】
他の特徴が、これ以降において部分的に明らかになり、部分的に指摘される。
【図面の簡単な説明】
【０００８】
【図１】クライアント計算装置にコンテンツを提供するように本発明の実施形態が実装され得る例示的な環境を示すブロック図である。
【図２】本発明の一実施形態による、サードパーティの配布プロセッサを通してクライアント装置にコンテンツを提供する小規模ソフトウェアベンダを示すブロック図である。
【図３】本発明の一実施形態による、独自の配布プロセッサを通してクライアント装置にコンテンツを提供する大規模ソフトウェアベンダを示すブロック図である。
【図４】本発明の一実施形態による、複数の配布プロセッサからコンテンツを収集するクライアント装置を示すブロック図である。
【図５】本発明の一実施形態による、複数の配布プロセッサから企業の計算装置群用のコンテンツを収集する企業向けアグリゲータプロセッサを示すブロック図である。
【図６】本発明の一実施形態による、複数の配布プロセッサから相手先製品製造会社（ＯＥＭ）によって製造されたコンピュータシステムに配布するコンテンツを収集するＯＥＭを示すブロック図である。
【図７】本発明の一実施形態による、複数の配布プロセッサからクライアント装置上にインストールされたソフトウェアを自動的に更新するコンテンツを収集する収集サービスを示すブロック図である。
【発明を実施するための形態】
【０００９】
対応する参照符号は、図面を通して対応する部分を示す。
【００１０】
本発明の実施形態は、様々なコンテンツプロバイダからコンテンツ消費者に電子コンテンツを１つの連結されたまたは１つの集約された更新経験で提供する。本発明の態様によると、コンテンツプロバイダは、コンテンツをチャネルにまとめ、チャネルを配布プロセッサに公開する。エンドユーザ、サーバ管理者およびコンテンツアグリゲータなどのコンテンツ消費者（広義には「ユーザ」）は、一度の更新経験で配布プロセッサ上で公開される様々なチャネルに加入する。加入チャネルからの更新はしたがって、コンテンツ消費者によって直接処理され、または収集され他のコンテンツ消費者に配布される。
【００１１】
図１を参照すると、ブロック図は、本発明の態様が実装され得る例示的なネットワーク環境を示す。システム１００は、複数のコンテンツプロバイダ（図２〜７を参照）から１つまたは複数のクライアント装置１０６にコンテンツを提供する。概して、システム１００は、コンテンツプロバイダと対話するユーザインターフェースやプログラミングインターフェースなど（例えば、アプリケーションプログラミングインターフェース、プロセスなど）、少なくとも１つのインターフェース１０２および少なくとも１つの配布プロセッサ(distribution processor)１０４を含む。インターフェース１０２および配布プロセッサは、有線（例えば、有線ネットワークや直接有線接続）および／または無線（例えば、音響、高周波（ＲＦ）、赤外線）通信媒体を介して接続される。一実施形態では、入力および出力装置（群）（例えば、モニタ、キーボード、マウス、タッチスクリーン、マイクロホン、スピーカなど）を有する計算装置が、インターフェース１０２および配布プロセッサ１０４を備える。別の実施形態では、インターフェース１０２および配布プロセッサ１０４はそれぞれ、データ通信ネットワーク（例えば、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）など）における計算装置を含む。例えば、配布プロセッサ１０４は、イントラネットに、またはインターネットに接続された１つまたは複数のサーバでよく、インターフェース１０２は、やはりイントラネットに、またはインターネットにそれぞれ接続されたパーソナルコンピュータ（ＰＣ）または他のデジタル装置でよい。
【００１２】
インターフェース１０２は、コンテンツプロバイダと対話して、チャネルを開発する。チャネルは、チャネルコンテンツと、チャネルコンテンツまたはチャネル挙動を定義するチャネル属性とを含む。一実施形態によると、各コンテンツプロバイダは、チャネルに含めるコンテンツを、インターフェース１０２を介して選択し、かつ／または作成する。さらに、各コンテンツプロバイダは、インターフェース１０２と対話して、選択され、かつ／または作成されたコンテンツを定義するチャネル属性を確立する。例えば、インターフェース１０２は、複数のコンテンツプロバイダそれぞれによって、コンテンツを選択／作成するのに、かつチャネル属性を定義するのに使うことができる開発アプリケーションを含み得る。チャネル属性のセットは、複数のコンテンツプロバイダによって、チャネル中のコンテンツを記述するのに一貫して使われる。例示的なチャネル属性セットは、チャネルのコンテンツプロバイダを示す属性、チャネルコンテンツのコンテンツ真正性を検証する手順、コンテンツ消費者認証要件、およびクライアント計算装置に適用可能な制約を含む。他の実施形態では、追加または代替チャネル属性が、チャネルのコンテンツを定義し記述するのに使われる。例えば、コンテンツがそのチャネルからダウンロードされ、またはインストールされるとき、チャネル属性は、後でさらに論じる更新エージェント１１０によって、ユーザ計算装置１０８上でのユーザ経験の画一的インフラストラクチャをカスタマイズするのに用いられる対話経験のための画像、テキスト、または命令などのコンテンツを含み得る。例えば、ユーザ計算装置１０８上での画一的ユーザ経験の実施形態は、商標を表す画像、テキスト、または経験をユーザ経験の一部として表示するための機能性を提供することができ、商標を表す情報は、コンテンツプロバイダによってチャネルの属性として提供される。付加的な例において、ユーザ計算装置上でのユーザ経験は、ユーザをコンテンツプロバイダのウェブサイトまたは他の場所に向けるための便宜をはかることができ、経験および行先は、チャネルの属性として指定される。様々なコンテンツプロバイダによってコンテンツを定義するのに使われるチャネル属性セットを利用することによって、本発明は有利には、クライアント装置１０６にコンテンツを提供する画一的インフラストラクチャを提供する。
【００１３】
インターフェース１０２はさらに、コンテンツプロバイダと対話して、配布プロセッサ１０４にチャネルを公開する。配布プロセッサ１０４は、公開されたチャネルを運営する。コンテンツプロバイダは、インターフェース１０２を介して、運営されるチャネルを管理する。具体的には、コンテンツプロバイダは、新規データを作成し、運営されるチャネルに公開することができる。さらに、または代替的には、コンテンツプロバイダは、運営されるチャネルの属性またはコンテンツを修正（例えば、変更、削除、見直しなどを）することができる。一実施形態では、配布プロセッサ１０４はさらに、プロセッサ１０４に対して公開されるチャネルを、別のコンテンツプロバイダ（群）によって運営する（例えば、配布プロセッサ１０４−Ｂが、異なるコンテンツプロバイダからユーザインターフェース１０２−Ｂ、１０２−Ｃを介して公開されるチャネルを運営する）。
【００１４】
配布プロセッサ１０４は、クライアント装置１０６が配布プロセッサ１０４と通信することができるように、有線（例えば、有線ネットワークや直接有線接続）および／または無線（例えば、音響、高周波（ＲＦ）、赤外線）通信媒体を介してクライアント装置１０６に接続される。配布プロセッサ１０４は、配布プロセッサ１０４によって運営されるチャネルからコンテンツを受信することをリクエストしているクライアント装置１０６（例えば、リクエスト側）が、運営されるチャネルにアクセスすることを、公開されたチャネルの属性に基づいて許可するように構成される。例えば、特定のクライアント装置１０６がチャネルにアクセスするのを制限されることを運営されるチャネル属性が示すとき、配布プロセッサ１０４は、特定のクライアント装置１０６（例えばリクエスト側）がチャネルにアクセスすることを禁止する。具体的には、クライアント装置またはユーザは、識別によって、またはクライアント装置上のハードウェアまたはソフトウェアの記述属性によって制限される場合がある。同様に、ユーザ認証が要求されることを運営されるチャネル属性が示すとき、運営されるチャネルは、クライアント装置１０６のユーザの認証に応じて、クライアント装置１０６（リクエスト側）によるチャネルへのアクセスを許可する。
【００１５】
図１をさらに参照すると、一実施形態によれば、コンテンツプロバイダは、複数のチャネルを開発し公開することができる。さらに、コンテンツプロバイダは、複数のチャネルのいくつかまたはすべてに含まれるコンテンツを選択し、かつ／または作成することができる。例えば、コンテンツプロバイダは、第１の製品（例えば、文書処理アプリケーション）の、かつ第２の製品（例えば、文書処理アプリケーションを他のいくつかのアプリケーションとともに含む業務用ソフトウェアパッケージ）のソフトウェアベンダでよい。ソフトウェアベンダは、インターフェース１０２と対話して、第１の製品をインストールしたことのあるクライアント装置１０６に、文書処理アプリケーションを更新するコンテンツを提供する第１のチャネルを開発することができる。ソフトウェアベンダは、インターフェース１０２と対話して、第２の製品をインストールしたことのあるクライアント装置１０６に、業務用ソフトウェアパッケージを更新するコンテンツを提供する第２のチャネルを開発することもできる。この例では、ソフトウェアベンダは、文書処理アプリケーション用の更新を作成し、更新を第１および第２のチャネル両方に含めることができる。第１および第２のチャネルは、同じ配布プロセッサ１０４にも、別個の配布プロセッサ１０４にも公開することができる。
【００１６】
図１によって示されるように、クライアント装置(client devices)１０６は、エンドユーザコンテンツ消費者（ユーザ）の計算装置（群）１０８（ユーザ計算装置）を含む。概して当該分野において公知であるように、計算装置（例えば、アグリゲータ計算装置１１２、ユーザ計算装置１０８、１１４、インターフェース計算装置１０２、配布計算装置１０４）は、１つまたは複数のプロセッサ、システムメモリ、およびメモリにプロセッサを結合するバスを有する。計算装置は、ユーザと対話する入力装置（例えば、マウス、トラックボール、ペン、パッド、マイクロホンなど）および／または出力装置（例えば、モニタ、スピーカ、プリンタなど）も含み得る。メモリは、様々な機能を実施するのに用いられる情報を格納するコンピュータ可読記憶媒体（例えば、取外し可能、固定式、揮発性、不揮発性メモリ）を含む。ユーザ計算装置１０８のコンピュータ可読記憶媒体は、ユーザと対話し、運営されるチャネルに配布プロセッサ１０４からアクセスし、運営されるチャネルから、ユーザ対話（例えば、ユーザによる特定／リクエスト）に従ってコンテンツを提示する（例えば、ダウンロードする）命令（例えば、更新エージェント１１０）を含む。
【００１７】
一実施形態では、更新エージェント１１０は、ユーザがそれに対してコンテンツを受信したいと思う、ある特定のチャネルをユーザに選択させる。例えば、ユーザがユーザ計算装置上にソフトウェアアプリケーションをインストールすると、更新エージェント１１０は、そのソフトウェアアプリケーションを更新するコンテンツを含むチャネルに加入するよう、ユーザに促す。あるいは、ソフトウェアアプリケーションは、ユーザがユーザ計算装置１０８上にソフトウェアアプリケーションをインストールすると、ソフトウェアアプリケーションが更新エージェント１１０と対話して、ソフトウェアアプリケーションを更新するコンテンツを含むチャネルからの自動更新のための登録を行うように、設計することができる。別の実施形態では、更新エージェント１１０はさらに、または代替的には、コンテンツがどのようにして、またはいつユーザに表示されるかをユーザに指定させる。例えば、ユーザは、ユーザ計算装置１０８に第１のコンテンツセットをダウンロードするのに先立って、ユーザに通知するよう、更新エージェント１１０にリクエストすることができる。ユーザは、ある特定のときに第２のコンテンツセットを自動的にダウンロードし、ダウンロードされたコンテンツを、別のその後の特定のときにユーザに表示するよう、更新エージェント１１０にリクエストすることができる。別の実施形態では、更新エージェント１１０は、チャネルによって要求される、ユーザを認証するためのユーザ情報など（例えば、ログインＩＤ、パスワード、ｅメールアドレス、チャネル加入識別子、ハードウェアまたはソフトウェア識別子など）の識別用情報を格納する。ユーザは、ある特定のチャネルに関して、ユーザを認証する配布プロセッサ１０４に、要求されたユーザ情報を自動的に与えるよう、更新エージェント１１０にリクエストすることができる。
【００１８】
一実施形態では、本発明は、複数のコンテンツプロバイダによって開発され、配布プロセッサ１０４によって運営されるチャネルから、ソフトウェア更新をユーザ計算装置１０８に提供するように実装される。ユーザは、ユーザが加入する（例えば、チャネルに公開された新規コンテンツを引き続き受信する）ことを望む１つまたは複数のチャネルを示すリクエストを更新エージェント１１０に提出する。例えば、更新エージェント１１０は、ユーザによる選択のために、配布プロセッサ１０４によって運営されるチャネルをユーザに示すことができる。それに応答して、ユーザは、示されたチャネルの１つまたは複数を選択することによって、更新エージェント１１０にリクエストを提出する。更新エージェント１１０は、ユーザのリクエストを受信し、リクエストされたチャネル（群）に加入する。更新エージェント１１０は代替的には、ユーザ計算装置上にインストールされているソフトウェアアプリケーションから受信された自動更新を求めるリクエストに応答して、チャネルに加入してもよい。更新エージェント１１０は、配布プロセッサ１０４と通信して、加入されたチャネルのうち１つまたは複数の中にある新規コンテンツを識別する。新規コンテンツは、新規ソフトウェア更新を含み、ユーザ計算装置１０８上にソフトウェア更新をインストールするコンピュータ可読および／または実行可能情報も含み得る。更新エージェント１１０が新規コンテンツを識別すると、更新エージェント１１０は、チャネルにアクセスし、（例えば、ユーザ認証を行い、コンテンツプロバイダを認証する）チャネル属性および／またはユーザからの（例えば、認証情報を自動的に提供する）特定および／または配布プロセッサ１０４に提供される記述情報（例えば、ユーザ計算装置１０８の／に関連づけられた、記述／識別用属性）に基づいて新規コンテンツをダウンロードする。ダウンロードされた新規コンテンツは、ユーザからの特定に基づいてユーザ計算装置１０８上にインストールされる（例えば、インストール時）。有利には、ユーザは、一度の更新経験で複数のコンテンツプロバイダからソフトウェア更新を受信することができる。
【００１９】
別の実施形態では、本発明は、複数のコンテンツプロバイダによって開発され複数の配布プロセッサ１０４（例えば、チャネルソース）によって運営されるチャネルからソフトウェア更新をユーザ計算装置１０８に提供するように実装される。前述したように、更新エージェント１１０は、ユーザおよび／またはインストールされたソフトウェアアプリケーションによってリクエストされたチャネルに加入し、加入チャネル中の新規コンテンツを識別する。更新エージェント１１０は、ユーザ計算装置１０８上で、複数のコンテンツソースから、識別された新規コンテンツを収集する。例えば、更新エージェント１１０は、新規識別された新規コンテンツを定義するチャネル属性に基づいて、識別された新規コンテンツをユーザ計算装置１０８にダウンロードする。更新エージェント１１０は引き続き、ユーザからの特定に従って、ユーザ計算装置１０８上に収集コンテンツをインストールする。
【００２０】
図１でさらに示されるように、クライアント装置１０６はさらに、または代替的には、別のクライアント装置１０６、すなわちエンドユーザの計算装置１１４にコンテンツを伝達するアグリゲータプロセッサ１１２を含み得る。アグリゲータプロセッサ１１２は、サービス管理者によって制御され、あるいはそれと対話して、後で論じるように、ユーザ計算装置１１４を介してエンドユーザにコンテンツを伝達するサービスを提供する。サービスを提供する際、アグリゲータプロセッサ１１２は、更新エージェント１１０によって実施されるものとして前述した機能の多くを実施する。一実施形態では、アグリゲータプロセッサ１１２は、複数のコンテンツソースによって運営されるチャネルに加入し、または登録するためのリクエストをサービス管理者から受信する。別の実施形態では、アグリゲータプロセッサ１１２は、複数のコンテンツソースによって運営されるチャネルに加入し、または登録するためのリクエストを、ユーザ計算装置１１４を介してユーザから受信する。リクエストは、コンテンツソースからコンテンツを受信する際の嗜好を定義することができる。例えば、リクエストは、コンテンツソースからコンテンツを受信する時間を指定することができる。アグリゲータプロセッサ１１２は、リクエストされたチャネルのコンテンツソースと適宜通信して、リクエストされたチャネルに加入／登録するように構成される。登録した結果、アグリゲータプロセッサ１１２は、引き続きチャネルに含められる新規コンテンツを含むコンテンツを、登録チャネルソースから受信する。アグリゲータプロセッサ１１２は、コンテンツを定義するチャネル属性に基づいて、受信コンテンツを収集し、単一のチャネルとして、ユーザ計算装置（群）１１４に収集コンテンツを配布する。一実施形態では、ユーザ計算装置１０８はそれぞれ、アグリゲータプロセッサ１１２から単一のチャネルとして、配布された収集コンテンツを受信し、更新されたコンテンツをユーザ計算装置１１４上にインストールする更新エージェントを含む。
【００２１】
一実施形態では、アグリゲータプロセッサ１１２は、受信されたコンテンツを検査し、検査に基づいて収集コンテンツを変更し、かつ／または配布する。例えば、アグリゲータプロセッサ１１２は、収集データを含む単一のチャネル向けのチャネル属性を定義することができる。さらに、または代替的には、アグリゲータプロセッサ１１２は、潜在受信者ユーザおよび／またはユーザ計算装置１１４の構成要素の嗜好またはニーズに基づいて、収集コンテンツを変更（例えば、修正、削除、捕捉など）することができる。例えば、ある特定のユーザへのマルチメディアコンテンツの配布に先立って、アグリゲータプロセッサ１１２は、現時点でユーザ計算装置１１４上にインストールされているソフトウェアを用いてユーザによってアクセスすることができるようにマルチメディアコンテンツを変更することができる。別の例では、アグリゲータプロセッサ１１２はさらに、または代替的には、収集コンテンツをいくつかのセットにグループ化することができる。例えば、アグリゲータプロセッサ１１２は、基本アンチウィルス保護に関するコンテンツをすべて、第１のセットにグループ化し、拡張アンチウィルス保護に関するコンテンツをすべて、第２のセットにグループ化することができる。アグリゲータプロセッサ１１２は次いで、第１のセットを任意／すべてのユーザ計算装置１１４に配布することができるが、第２のセットは優先されるユーザ計算装置１１４（例えば、１１４−Ａ、１１４−Ｂ）にのみ配布することができる。
【００２２】
図２〜７は、本発明の様々な実施形態を実装する例示的な環境を示す。図２〜５を参照すると、本発明の実施形態は、複数の多様なコンテンツプロバイダが、コンテンツ消費者に一度の更新経験でコンテンツを効率的に提供することを可能にする。図２を参照すると、本発明の実施形態は、コンテンツがコンテンツ消費者に一度の更新経験で提供されるように、コンテンツプロバイダに、チャネルを介して自社のコンテンツを運営させる。図示した実施形態では、大規模ソフトウェアベンダ２０２などのコンテンツプロバイダが、チャネルを開発する。大規模ソフトウェアベンダ２０２は、サーバ１０４などのオンサイト配布プロセッサからの開発チャネルも運営する。特に、大規模ソフトウェアベンダ２０２は、ローカル計算装置１０２上にチャネル開発アプリケーション２０３をインストールして、チャネルを開発し、ローカルサーバ１０４にそのチャネルを公開することができる。サーバ１０４は、チャネルを運営するように構成され、クライアント装置１０８、１１２と通信して、一度の更新経験によりコンテンツ消費者に更新２０４を配布する。
【００２３】
図３で示される本発明の一実施形態によると、配布プロセッサ１０４は、同じエンティティのコンテンツプロバイダによって開発されたチャネルを運営するのに加え、またはその代替として、他のエンティティのコンテンツプロバイダによって開発されたチャネルを運営することができる。したがって、本発明の実施形態は、小規模エンティティ３０２単独ではそうするためのインフラストラクチャをもたない場合であっても、小規模エンティティなどのコンテンツプロバイダ３０２に、コンテンツ３０４−Ａをユーザ計算装置１０８に提供させる。例えば、小規模エンティティ３０２は、歯科業界向けの医療機関用ソフトウェアを生産する小規模独立ソフトウェアベンダでよい。小規模独立ソフトウェアベンダ３０２は、自社のソフトウェアの開発に専念しているので、更新配布システムを管理するための作業部隊およびサーバインフラストラクチャをもたない場合がある。例示した実施形態によると、本発明の態様は、配布プロセッサ１０４が小規模独立ソフトウェアベンダの更新３０４−Ａを有料で運営することになる場合、配布プロセッサ３０４がサービスを供給するように実装することができる。したがって、小規模独立ソフトウェアベンダ３０２は、インターフェース１０２と対話してチャネルを開発する。具体的には、小規模独立ソフトウェアベンダ３０２は、ローカル計算装置１０２上にチャネル開発アプリケーション３０３をインストールして、小規模独立ソフトウェアベンダ３０２がチャネルを効率的に開発し、管理し、公開するのを助けることができる。配布プロセッサ１０４は、チャネルを運営し、エンドユーザ１０８およびアグリゲータ１１２など、コンテンツ消費者へのチャネルコンテンツの配布を管理する。配布プロセッサ１０４は、チャネルユーザの数、新規更新に対する取込み率、消費者によるインストールの成功率、または他の基準を、コンテンツプロバイダに提供されるサービスの一部として追跡することができる。
【００２４】
図４を参照すると、本発明はコンテンツを提供する連結インフラストラクチャを提供するので、エンドユーザ４０２は、一度の更新経験で複数のコンテンツソース（例えば、配布プロセッサ）１０４からコンテンツ４０４を受信することができる。ユーザ計算装置１０８上にインストールされた更新エージェントは、複数のコンテンツソース１０４（例えば、小規模ソフトウェアベンダのチャネルを運営する配布プロセッサ、大規模ソフトウェアベンダのチャネルを運営するオンサイトサーバなど）と通信して、一度の統一更新経験をユーザ４０２に与える。したがって、各コンテンツソース１０４および／またはコンテンツプロバイダと個別に対話するのではなく、ユーザ４０２は、複数のコンテンツソース１０４およびプロバイダから更新を受信するために、更新エージェントと対話することができる。一実施形態によると、ユーザ４０２が新規アプリケーションをインストールすると、更新エージェントは、新規アプリケーション用の更新に加入することをユーザ４０２に選ばせる。さらに、または代替的には、更新エージェントは、インストールされたソフトウェア用の自動更新をセットアップするために、ユーザ計算装置１０８上にインストールされたソフトウェアアプリケーションと対話することができる。更新を提供しスケジュールするのに加え、更新エージェントは、更新情報を集め、好都合にはユーザ４０２に表示する。例えば、更新エージェントはユーザに、インストールされたソフトウェアのリストを調べさせ、自動的にダウンロードされインストールされる更新を見せ、コンテンツ（例えば、アンチウィルス更新）に対する有料の加入がいつ満了するか、および／または入手可能な更新があるかどうかをユーザーに思い出させる。更新エージェントは、更新への加入、ダウンロード、およびインストールに関する値をグローバルに、チャネル単位で、またはその何らかの組合せにより設定できるようにし得る。
【００２５】
図５を参照すると、本発明の連結インフラストラクチャは、企業ＩＴサーバ管理者など、アグリゲータプロセッサの管理者５０２が、コンテンツ５０４を好都合かつ効率的に公開し運営し、複数のコンテンツソース（例えば、配布プロセッサ）１０４からのコンテンツ５０６を受信することを可能にする。例示した実施形態によると、企業ＩＴサーバなどのアグリゲータプロセッサ１１２は、複数の配布プロセッサ１０４と通信するように構成される。例えば、管理者５０２は、企業のエンドユーザ計算装置１１４上にインストールされたソフトウェアへの更新を提供するチャネルに加入するようにサーバ１１２を構成することができる。サーバ１１２は次いで、中間サーバ５０８−Ａ、５０８−Ｂを介して企業のエンドユーザ計算装置１１２に配布を行うチャネルからコンテンツを収集する。一実施形態では、サーバ１１２は、指定されたときに収集コンテンツを自動的にダウンロードし、かつ／またはインストールし、エンドユーザ計算装置を承認済みチャネルセットに制限し、またはエンドユーザに与えられる経験を修正するなど、エンドユーザ計算装置１１４上での更新エージェントの挙動を制御するポリシーを展開するようにも構成される。一実施形態では、サーバ１１２は、コンテンツを展開するのに先立って、企業のエンドユーザによって必要とされ、かつ／または管理者５０２によって明示的に承認された更新のみを含むように、コンテンツをフィルタリングするように構成される。さらに、管理者５０２は、構内アプリケーションを更新する追加コンテンツ５０４を（例えば、ローカル計算装置１０２上にインストールされた開発アプリケーション５０３により）追加することができる。
【００２６】
図５を続けて参照すると、管理者５０２は、エンドユーザ計算装置１１４上に収集コンテンツをインストールするインストールプロセスを指定／制御／定義するポリシーを展開することもできる。例えば、管理者は、ポリシーにより、コンテンツがサーバ１１２にダウンロードされる（例えば、収集される）べきであり、コンテンツが展開されるべきであるときを制御することができる。アグリゲータは、チャネル単位で、すべての加入チャネル向けにグローバルに、またはその何らかの組合せにより、フィルタおよび展開値を設定できるようにする。有利には、管理者５０２は、配布プロセッサ１０４からのコンテンツのダウンロードと、エンドユーザ計算装置１１４への、ダウンロードされたコンテンツの展開とを戦略的にスケジュールすることによって、企業のネットワークの効率を最大限にすることができる。例えば、管理者５０２は、ダウンロードを午前４時にスケジュールし、ダウンロードされたコンテンツをその日中に検査し、かつ／または修正し、コンテンツの展開を午後１１時にスケジュールすることができる。したがって、管理者５０２は、ソフトウェア更新を効果的にスケジュールすることによって、ネットワークの混雑を回避することが可能である。サーバとしての例示的な本実施形態を参照して説明したが、アグリゲータプロセッサ１１２は、配布プロセッサ１０４に対してクライアント計算装置であることを理解されたい。
【００２７】
図６を参照すると、本発明の連結インフラストラクチャは、相手先製品製造会社（ＯＥＭ）などのサービス管理者によって、ＯＥＭコンピュータシステム１０８のユーザに更新を提供するのに使うことができる。例えば、ＯＥＭ計算装置１０８のユーザ６０２は、ＯＥＭによって供給されるＯＥＭ更新プログラムに加入することができる。ＯＥＭは、アグリゲータプロセッサ１１２を管理して、ＯＥＭが自社のコンピュータシステム１０８上にバンドルするドライバおよびアプリケーション用の様々な配布プロセッサ１０４−Ａ、１０４−Ｂ、１０４−Ｃからコンテンツを収集する。ＯＥＭは、収集コンテンツを検査し、承認されたコンテンツをエンドユーザ６０２に配布する。ユーザ計算装置１０８上の更新エージェントは、ＯＥＭ更新ならびに他の配布プロセッサ１０４−Ｎから配布された更新を受信する。更新エージェントは、ユーザの特定に従って、受信された更新をインストールする。
【００２８】
図７を参照すると、本発明の態様による連結されたインフラストラクチャは、更新サービスプロバイダによって、ユーザ計算装置１０８上にインストールされたソフトウェアすべてに対する更新を提供するのに用いることができる。例えば、ユーザ７０２は、ユーザの計算装置１０８におけるソフトウェア更新を管理することを望まない場合がある。そうではなく、ユーザ７０２は、更新サービスプロバイダに加入する場合がある。更新サービスプロバイダは、複数の配布プロセッサ１０４から、ユーザの計算装置１０８上にインストールされたソフトウェアを更新するコンテンツを収集するように構成されたアグリゲータプロセッサ（例えば、アグリゲータプロセッサ１１２）である。更新サービスプロバイダは、ユーザの計算装置１０８に収集された更新を送信し、ユーザの計算装置１０８上にインストールされた更新エージェントは、更新を自動的にインストールする。
【００２９】
本明細書において示し説明した本発明の実施形態における実行の順序または動作の実施は、別段の指定がない限り、本質的でない。つまり、こうした動作は、別段の指定がない限り、どの順序で実施してもよく、本発明の実施形態は、追加動作または本明細書で開示したものより少ない動作を含んでよい。例えば、ある特定の動作を別の動作の前に、それと同時に、またはその後で実行しまたは実施することも、本発明の態様の範囲内であることが企図される。
【００３０】
本発明の実施形態は、コンピュータ実行可能命令を用いて実装することができる。コンピュータ実行可能命令は、１つまたは複数のコンピュータ実行可能コンポーネントまたはモジュールに編成することができる。本発明の態様は、任意の数または編成によるこのようなコンポーネントまたはモジュールで実装することができる。例えば、本発明の態様は、図面に示し本明細書において説明した具体的なコンピュータ実行可能命令あるいは具体的なコンポーネントまたはモジュールに限定されない。本発明の他の実施形態は、本明細書において示し説明したものより多くの、またはより少ない機能性を有する異なるコンピュータ実行可能命令またはコンポーネントを含み得る。
【００３１】
本発明の態様またはその実施形態の要素を引き合いに出した際、冠詞「ａ」、「ａｎ」、「ｔｈｅ」、および「前記」は、要素の１つまたは複数があることを意味することを意図している。「備える」、「含む」、および「有する」という用語は、包含的であるとともに記載した要素以外の追加要素があり得ることを意味することを意図している。
【００３２】
本発明の態様を詳しく説明したが、添付の特許請求の範囲で定義される本発明の態様の範囲から逸脱することなく、修正形態および変形形態が可能であることが明らかであろう。本発明の態様の範囲から逸脱することなく、上記構造、製品、および方法において様々な変更を行うことができるので、上記説明に含まれるとともに添付の図面に示すすべての内容は、例示的であり限定的意味ではないと解釈されるべきであることを意図するものである。
【図１】
0005497638.tif 000002
【図２】
0005497638.tif 000003
【図３】
0005497638.tif 000004
【図４】
0005497638.tif 000005
【図５】
0005497638.tif 000006
【図６】
0005497638.tif 000007
【図７】
0005497638.tif 000008