JP3905303B2 - 配布可能なソフトウエアの自動追跡システム及び方法 - Google Patents
配布可能なソフトウエアの自動追跡システム及び方法 Download PDFInfo
- Publication number
- JP3905303B2 JP3905303B2 JP2000345431A JP2000345431A JP3905303B2 JP 3905303 B2 JP3905303 B2 JP 3905303B2 JP 2000345431 A JP2000345431 A JP 2000345431A JP 2000345431 A JP2000345431 A JP 2000345431A JP 3905303 B2 JP3905303 B2 JP 3905303B2
- Authority
- JP
- Japan
- Prior art keywords
- identification code
- software
- tracking
- program
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 41
- 230000006870 function Effects 0.000 claims description 20
- 238000009434 installation Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 7
- 238000010348 incorporation Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 238000011900 installation process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 102200006814 rs11229062 Human genes 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2135—Metering
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Description
【発明の属する技術分野】
本発明は、一般的に、配布ソフトウエアの使用状況を監視、制御する技術に係り、特に、インターネットのようなネットワークからダウンロードされたソフトウエアの使用状況を追跡する方法及び装置に関する。
【0002】
【従来の技術】
コンピュータユーザは、コンピュータソフトウエアを獲得する多数の選択肢をもっている。ユーザは、ソフトウエアプリケーションを格納したフロッピーディスク、或いは、コンパクトディスクを購入し、自分のコンピュータのハードドライブ装置若しくはコンピュータネットワークにソフトウエアプリケーションをロードする。インターネットの出現によって、コンピュータユーザは、ワールド・ワイド・ウェブ(WWW)のウェブサイトからソフトウエアをダウンロードすることにより、コンピュータソフトウエアを獲得する選択肢も得た。特に、インターネットは、遠隔サーバーからソフトウエアをダウンロードするために利用することができる。
【0003】
ダウンロードされたソフトウエアの普及が進むにつれて、コンピュータソフトウエアベンダーには新たな好機が生ずる。他の電子商取引の形態と同様に、ユーザがインターネットからソフトウエアを取得することができる便利さは、販売を増大させる可能性がある。ユーザは、シェアウエアと称される無料の使用制限されたソフトウエアをダウンロードする。これらの使用制限されたソフトウエアモジュールは、完全な機能のソフトウエアパッケージの販売を促進する。
【0004】
しかし、インターネットはソフトウエアベンダーに新たな要求を課す。ソフトウエアベンダーに対する一つの要求は、許可されていないソフトウエアの複製と配布を防止することである。ダウンロードされたプログラムの許可されていない複製、或いは、その他の不正使用のような著作権侵害行為は、ライセンス料収入を減少させる可能性がある。また、第三者によって変造されたソフトウエアの不法配布は、企業イメージを汚す。たとえば、屡々クラッシュし、或いは、性能が低下するよう変造されたソフトウエアアプリケーションの不許可の複製物は、ソフトウエアベンダーの評判を害する。
【0005】
従来の許可されたソフトウエアの管理システムには幾つかの欠点がある。一般的に、ダウンロードされたソフトウエアにライセンスを付与する幾つかの主要な方法がある。一つの方法は、ソフトウエアベンダーがユーザに識別コードを発行し、ユーザがアプリケーションをダウンロードするため、或いは、ダウンロードしたアプリケーションを使用するためには、その識別コードを入力しなければならないようにすることである。別の方法は、所定の期間の経過後若しくは所定回数の使用後に、ダウンロードされたソフトウエアの動作を自動的に停止させる監視及び制御プログラムをソフトウエアアプリケーションに付加することである。
【0006】
ダウンロードされたプログラムの許可されていない使用を防止する従来の方法は、期待されるよりも複雑であり、ユーザにとって使い難いものである。殆どの場合に、ハッカーがソフトウエアを不正にコピーすることを防止するためかなり複雑なコピー制御ソフトウエアが必要とされる。さらに、一部のシステムでは、許可コードが異なるユーザ間で共有される場合があり、ライセンスシステムには都合が悪い。
【0007】
ソフトウエアベンダーに対する別の要求は、顧客サービスとダウンロードされたソフトウエアのサポートを効率的に行うことである。ダウンロードされたソフトウエアを購入するコンピュータユーザは、通常の登録カード若しくは調査用紙への記入を厭う場合が多い。また、ベンダーは、典型的に、ソフトウエアの販売後、又は、販売以降に個別のコンピュータユーザと直接に個人的な連絡を取ることがない。したがって、ソフトウエアベンダーは、ユーザがソフトウエアを適切に使用するため適切なサポートを受けているかどうかを判断することが難しい。
【0008】
ソフトウエアベンダーに対する更に別の要求は、自分の製品の質を向上させ、営業努力を効率的に集約するために必要とされる製品の使用状況に関する量的データ及び質的データを獲得することである。ソフトウエアベンダーが知りたい事項は、実際に使用されている各アプリケーションの本数、各ユーザがソフト上アプリケーションを使用する頻度及び期間、ユーザにとって最も重要な事項、並びに、その他のタイプの人口学的データである。しかし、ソフトウエアベンダーが自分の製品の質を向上させ、営業努力を効率的に集約するために役立つ正確なデータを取得するためには、費用が嵩み、かつ、困難である。
【0009】
【発明が解決しようとする課題】
上記従来技術の問題点を解決すべく、ソフトウエアの使用が自動的に監視され、選択的に制御される装置及び方法が求められる。
【0010】
したがって、本発明は、配布されたソフトウエアの使用状況、特に、インターネット上に存在するサーバーのような遠隔サーバーからダウンロードされたソフトウエアの使用状況を監視し、選択的に制御するシステム及び方法を取り扱う。
【0011】
本発明の第1の目的は、ソフトウエアアプリケーションの使用状況を監視することである。
【0012】
本発明の第2の目的は、ダウンロードされたソフトウエアアプリケーションのための顧客サポートを行うことである。
【0013】
本発明の第3の目的は、ソフトウエア使用状況に関する人口学的データを自動的に作成することである。
【0014】
本発明の第4の目的は、ダウンロードされたソフトウエアアプリケーションのための登録データを自動的に作成することである。
【0015】
【課題を解決するための手段】
本発明の装置は、ソフトウエアアプリケーションをダウンロードするためのユーザによる要求に応じて、第1の識別コードを生成するよう構成され、遠隔サーバーからダウンロードされるべきソフトウエアプログラムを提供するサーバー(a)と、
ソフトウエアアプリケーションプログラム(i)と、上記コンピュータ内でのアプリケーションプログラムの動作を表すトラッキングデータを送信するトラッキングアシスタントモジュール(ii)とを有し、上記ユーザから与えられる上記第1の識別コード及び登録データに応じて、ユーザにダウンロードされたプログラムをユーザのコンピュータに組み込み、上記アプリケーションが上記ユーザのコンピュータに組み込まれたときに第2の識別コードを生成する、上記サーバー内に格納されたダウンロード可能なインストーラー(b)と、
上記サーバーに接続され、上記トラッキングアシスタントモジュールによって送信された上記第1の識別コード及び上記第2の識別コードを含む上記トラッキングデータを記憶するデータベース(c)とを具備することを特徴とする。
【0016】
【発明の実施の形態】
本発明は、ソフトウエアの使用状況、特に、ダウンロードされたソフトウエアの使用状況を自動的に追跡する装置及び方法を取り扱う。追跡、顧客製品サポート、サービス、及び、調査の機能を実行するため費用効果の優れたやり方が求められる。ソフトウエアをダウンロードした顧客は、典型的に、登録カードや顧客調査票の記入のような伝統的な顧客満足度評価技術に協力しようとする気持ちにはならない。また、このような登録カード又は調査票への記入が行われたとしても、記入された情報が信頼できるとは限らず、実際の製品使用状況を査定するため使用できない場合がある。ソフトウエアベンダーが、自分の品揃えを改良し、かつ、効率的な顧客サポートを行うため要求されるタイプの使用状況情報を獲得することは、時間とコストがかかり、かつ、困難である。
【0017】
図1は、ソフトウエアモジュールがローカルコンピュータ410にダウンロードされ組み込まれる前の本発明の好ましい一実施例400の概略図である。サーバー455は、インターネットのような開いたネットワーク450を介してコンピュータ410に接続される。コンピュータ410は、たとえば、家庭又はオフィスのパーソナルコンピュータのようなスタンドアローン型パーソナルコンピュータである。しかし、コンピュータ410は、ローカル・エリア・ネットワーク又はワイド・エリア・ネットワークの一部でも構わない。カップリング装置445は、ネットワーク450を介してコンピュータ410とサーバー455の間でネットワークリンクを形成するため使用される。カップリング装置455は、通常のモデム、T−1ライン、或いは、コンピュータ410をネットワーク450に接続する従来の素子の組み合わせなどにより構成される。コンピュータ410は、コンピュータプログラムを格納するためハードドライブ装置430又はその他の記憶ユニットを含む。コンピュータプログラムの中には、通常のコンピュータプログラム及びユーティリティプログラム(図1に示されない)が含まれる。
【0018】
サーバー455は、サーバー455に格納されたインストーラーモジュール440をダウンロードするよう構成されていればどのようなサーバー(たとえば、通常のウェブサーバー)でもよい。インストーラーモジュール440は、少なくとも一つのアプリケーションモジュール442と、トラッキングアシスタントモジュール444とを含む。サーバー445は、サーバー455の機能を制御するアクセス・制御モジュール470を更に含む。制御モジュール470は、サーバー455の機能を調整するため使用される通常の制御モジュールを含む。データベース460は、第1のデータベーステーブル462及び第2のデータベーステーブル464を含み、サーバー455に電気的に接続される。データベース460は、データベーステーブルを格納するため構成された従来のメモリ若しくはデータ記憶ユニットでもよい。
【0019】
図1をもう一度参照するに、アプリケーションモジュール442及びトラッキングアシスタントモジュール444は、別個の構成要素として表されていることが分かる。しかし、トラッキングモジュール444の機能は、アプリケーションモジュール442に組み入れてもよく、或いは、トラッキングモジュール444は、従来の方法を用いてアプリケーションモジュール442に接続又はリンクしてもよいことがわかる。また、インストーラーモジュール440は、同図において、サーバー455内に設けられているが、より一般的なインストーラーモジュール440を従来の方法を用いてサーバー455に接続してもよい。
【0020】
図2には、ソフトウエアがローカルコンピュータ410にダウンロードされ、組み込まれたシステム500のブロック図が示されている。殆どの構成部品は図1に示された構成部品と同様である。しかし、データベース462は、識別シリアル番号D-USNである第1の識別コードを格納し、データベース464は、識別シリアル番号I-USNである第2の識別コードを格納する。好ましい実施例において、D-USNは、ソフトウエアアプリケーションを組み込むため必要とされるシリアル番号(コード)であり、I-USNは、アプリケーションが組み込まれるときにインストーラーによって作成される固有のシリアル番号(コード)である。ユーザのコンピュータのハードドライブ装置430は、ダウンロードされ組み込まれたトラッキングアシスタントモジュール444に対応したトラッキングアシスタント505を格納する。トラッキングアシスタント505は、サーバー455のデータベースからダウンロードされたトラッキングアシスタントモジュール444をローカルコンピュータ410に組み込んだものである。また、ハードドライブ装置430は、ダウンロードされ、組み込まれたアプリケーションモジュール442に対応したアプリケーション510を格納する。図2に示されたファイル515は、以下に詳述されるように、トラッキングデータを記憶するため使用される。ファイル515は、コンピュータ410に常駐するファイルである。WINDOWS(登録商標)オペレーティングシステムの場合、ファイル515は、好ましくは、WINDOWS(登録商標)のユーザレジストリファイルである。
【0021】
図3乃至6には、本発明を使用する好ましい動作シーケンスが示されている。本発明の好ましい使用方法は、内部開発名"InfoMessenger"又は"IM"によって本願発明者による本願出願時に公知である情報メッセージ管理プログラムをダウンロードすることである。この情報メッセンジャー(InfoMessenger)は、コンピュータユーザがインターネットから獲得されるような電子メールメッセージ及び文書を管理する際に補助するプログラムである。しかし、本発明は、たとえば、インターネットから積極的に情報を獲得しないような他のタイプのソフトウエアアプリケーションモジュールを用いて実施してもよいことが理解されるべきである。
【0022】
図3には、ウェブサイトからインストレーションモジュールをダウンロードし、初期登録データを記録するインストレーション方法の第1の動作シーケンスが示されている。ステップ6−1において、ユーザは、ネットワーク450を介してウェブサーバー455にアクセスするためコンピュータ410を利用する。既に説明した通り、ネットワーク450は、好ましくは、インターネットであるが、ローカル・エリア・ネットワーク或いはワイド・エリア・ネットワークでもよい。ステップ6−2において、ウェブサーバー455は、好ましくは、ウェブサイトを介して、ユーザに名前、電子メールアドレス、及び/又は、その他の登録情報を問い合わせる。ユーザは、ステップ6−3に示されるように、この初期登録情報を記入する。サーバー455は、ステップ6−4に示されるように、ダウンロードユニークシリアルナンバー(D-USN)を生成し、ユーザをインストーラーモジュール440ファイルにリンクする。D-USNは、通例的なアルゴリズムを用いて生成される。しかし、以下では、好ましいアルゴリズムを詳細に説明する。D-USNは、ソフトウエアアプリケーションを組み込むため使用される識別コードである。ステップ6−5に示されるように、サーバー455は、好ましくは、ユーザの名前、電子メールアドレス、現在インターネットプロトコル(IP)アドレス、現在時刻(好ましくは、サーバー455で測定された時刻)、及び、D-USNを第1のデータベースファイル462に記録する。ステップ6−5において、第1のデータベース462は、登録情報を記録済みであることに注意する必要がある。ユーザから取得された他の情報をユーザの名前及び電子メールアドレスと共に入力しても構わない。たとえば、システムは、顧客サービス及びサポートに関する問い合わせ、たとえば、「この製品を使用するため、カスタマーサポートを自動的に受信し、更新しますか」というような問い合わせを行い、応答を記録する。
【0023】
図4は、インストーラー440を用いてアプリケーションを組み込む方法の第2の動作シーケンスを示す図である。ステップ7−1に示されるように、ユーザがダウンロードされたインストーラー440を動かすとき、インストーラー440は、ステップ7−2に示されるように、ユーザにD-USNの入力を要求する。次に、ステップ7−3に示されるように、ユーザはD-USNを入力し、インストーラー440は、その有効性を検査する。インストーラー440は、第2の識別コード、好ましくは、D-USN及び現在時刻に基づくインストール固有シリアルナンバー(I-USN)を生成する。I-USNを作成するための好ましいアルゴリズムをより詳細に説明する。I-USNは、好ましくは、ユーザには表示されない点で、隠し識別コードである。インストーラー440は、ステップ7−4において、I-USNとD-USNを共に、好ましくは、ファイル515に保存する。ウィンドウズシステムの場合に、ファイル515は、好ましくは、ウィンドウズのユーザレジストリである。ダウンロードされたアプリケーション510は、ステップ7−4の後、作動可能である。
【0024】
ユーザが他のユーザとD-USNを共用する場合、アプリケーションが他のユーザのコンピュータに組み込まれるときに、異なるI-USNがインストーラー440によって自動的に作成される。たとえば、あるユーザが、アプリケーション及びD-USNを、そのアプリケーションを自分のコンピュータに組み込んだ他の人と共用する場合、異なるコンピュータに組み込まれた複製物は異なるI-USNを有する。ローカル・エリア・ネットワークの場合、インターネットから1本のアプリケーションしかダウンロードされていなくても、組み込まれた各複製物は、異なるI-USNを有する。
【0025】
図5は、アプリケーション510の作動後の好ましい動作シーケンスを示す図である。コンピュータ410側のユーザがアプリケーション510を開始するとき、アプリケーション510は、トラッキングアシスタント505を作動させる。図5に示されるように、好ましいトラッキングアシスタントは、"Assistant Zero"という内部開発名で本願発明者によって本願出願時に公開されている。トラッキングアシスタント505は、アプリケーション510の動作を監視し、D-USN及びI-USNを含むトラッキングデータをサーバー455に送信するため使用される。コンピュータソフトウエアモジュールにサーバー455への自動接続を行わせる技術は、関心のある記事を見つけるためウェブサイトを探索するソフトウエアアプリケーションに関して知られている。したがって、トラッキングアシスタント505は、データ通信のためサーバーにネットワークリンクを自動的に形成するソフトウエアモジュールを含む。
【0026】
トラッキングアシスタント505は、アプリケーション510が実行され、ネットワーク450のリンク(たとえば、インターネットアクセス)が利用可能になると、トラッキングデータを送信することができる。しかし、好ましい一動作方法の場合、トラッキングアシスタント505は、アプリケーション510が動作している日に一回ずつのように、定期的にトラッキングデータを送信する。電子メールメッセージ管理プログラムのようなインターネットに自動的に接続されるアプリケーション510の場合に、プログラムは、アプリケーション510が実行されているとき、インターネットに自動的に接続される。しかし、より一般的なアプリケーション510は、インターネットへのアクセスを必要としないプログラムである。たとえば、アプリケーションは、ユーザによってインターネットに断続的に接続されるノートブック型コンピュータに組み込まれたワードプロセッシングアプリケーションでも構わない。したがって、ユーザのためにインターネットへのアクセスを必要としないアプリケーションの場合に、トラッキングアシスタント505は、好ましくは、インターネットへのアクセスの利用可能性に依存してトラッキングデータを送信するようプログラムされる。たとえば、トラッキングアシスタント505は、1)インターネットコネクションが利用可能であるならば、アプリケーションが実行された日に1回ずつ、又は、2)インターネットへのアクセスが行われることなく1日以上の動作が経過した場合に、コンピュータ410が最初にインターネットに接続された利用可能なときに、記憶されたトラッキングデータを送信するようプログラムされる。
【0027】
図6は、トラッキングアシスタント505の機能を説明する動作シーケンスである。図6に示されるように、ステップ9−1において、トラッキングアシスタント505は、ファイル515に記憶されたデータから、アプリケーション510が予め決められた時間的スケジュール若しくは間隔(たとえば、1日1回)で実行されたかどうかを判定する。ステップ9−2に示されるように、トラッキングアシスタント505は、ファイル515からD-USN及びI-USNを取り出す。トラッキングアシスタント505は、アプリケーションが所定の時間間隔内に実行されたことを指定するためレジストリ鍵値を変更する。トラッキングアシスタント505は、ステップ9-3に示されるように、D-USN及びI-USNをサーバー455に送信する。ステップ9−4に示されるように、サーバー455は、D-USN及びI-USNを含むトラッキングデータを受信する。しかし、以下で詳述するように、トラッキングアシスタント505は、D-USN及びI-USN以外に、他のタイプのトラッキングデータを収集し、サーバー455に送信する。このアプリケーションで使用されるように、サーバー455により受信されたトラッキングデータの出現又はイベントは、トラッキングデータのインスタンスであり、すなわち、1台のコンピュータがD-USN及びI-USNをトラッキングデータとしてサーバー455に100回送信した場合に、100個のインスタンスが、これらの100回の異なるトラッキングデータの送信を受信するサーバー455に関連付けられる。トラッキングアシスタント505によって送信されたトラッキングデータが受信されたインスタンス毎に、このインスタンスと関連した他のデータがデータベーステーブル465に格納される。その中には、好ましくは、インターネットプロトコル(IP)アドレスと、(好ましくは、サーバー455で測定された)タイムスタンプの現在時刻とが含まれる。より一般的には、サーバー455は、受信されたトラッキングデータのインスタンス毎に、コンピュータ410とサーバー455の間に形成されたネットワークリンクを用いて自動的に獲得された任意のタイプの情報を記録する。データベーステーブル464内のデータは、各D-USNに対し、各インスタンスで対応したI-USNと、各インスタンスが受信された時刻と、各インスタンスに対するその他のトラッキングデータを提示するよう構成される。
【0028】
トラッキングアシスタント505によってサーバー455に通知されたトラッキングデータは、D-USN及びI-USNしか含まないが、トラッキングアシスタント505は、他のタイプのトラッキングデータを収集することに注意する必要がある。特に、トラッキングアシスタント505は、アプリケーション510の動作時に、最も頻繁に使用されるプログラム上の特徴に関する情報、多数のプログラム特徴が使用される頻度、ユーザが典型的に特定のアプリケーションを使用する時間の長さ、又は、アプリケーション510の使用状況に関するその他のデータのような他の情報を記録するようプログラムされる。好ましい一実施例において、トラッキングアシスタント505は、ユーザがアプリケーションを使用する態様に関するデータを含む出力ファイルを生成する。出力ファイルは、好ましくは、ファイル515に格納される。アプリケーション510の使用状況に関するこのトラッキングデータは、ユーザがアプリケーションを使用する頻度及び時間の長さに関するデータ、ユーザの好みの設定値、或いは、出力ファイルに記録されるほかのデータを含む。出力ファイルは、ファイル515に格納されたD-USN及びI-USNと共に、トラッキングアシスタント505によってサーバー455に送信される。これにより、ソフトウエアベンダーは、自分のダウンロードされたアプリケーションが使用される状況に関するデータを自動的に取得することができる。
【0029】
本発明は、ソフトウエアベンダーに幾つかの利益をもたらす。一つの利益は、データベース460に記憶された情報が、ソフトウエアの重複の有無を判定するため解析されることである。データベース460に蓄積されたこの情報は、不法な複製が行われたかどうか、並びに、不正な複製が行われた場所を判定する際に補助的に使用される情報である。
【0030】
本発明の別の利点は、多種類の人口学的データを収集できる点である。たとえば、第2のデータベーステーブル464に格納されたトラッキングデータと共に収容されたIPアドレスの記録は、各インスタンスで使用されたインターネットサービスプロバイダを表す情報を与える。本発明の更に別の利点は、製品サポートが容易に行えることである。一例として、本発明は、ベンダーが実際に組み込まれるアプリケーションの複製物の数を決める際に使用される。たとえば、データベース460が、少なくとも一つの対応したインスタンス(すなわち、第2のデータベーステーブル464に記憶された対応したI-USN)をもたない特定のD-USNの記録を保存する場合、ユーザはアプリケーションを巧く組み込むことができないか、又は、巧く実行することができない旨が通知される。この情報は、たとえば、サポートスタッフに転送され、サポートスタッフは、プログラムを組み込む際のヘルプの提示に関して、顧客に連絡を取る。
【0031】
また、本発明によれば、ベンダーは、組み込まれたソフトウエアが実際に使用される状況に関する情報を取得できる。この情報の中には、使用頻度と、使用日時と、使用された機能と、使用頻度と購入後の経過時間の関係が含まれる。これにより、たとえば、ソフトウエアに関する潜在的な問題点を評価するため、プログラムをそれほど頻繁に使用しないユーザに関する調査若しくはサポートを顧客サービス及び個人サポートの目標とすることができる。或いは、顧客サービス及びサポートは、ユーザがソフトウエアプログラムの中で最も重要な特徴であると考えている特徴を判定するため、頻度の高いユーザに関する調査を目標としてもよい。
【0032】
図7は、サーバー455がデータベース460に格納されたデータを解析するトラッキングデータアナライザ480を含む本発明の他の実施例を示す図である。データベース460に格納されたデータは、顧客行動パターンを判定し、又は、顧客サービス及びサポートにより使用するための情報を与えるため、トラッキングデータアナライザ480によって自動的に解析される。たとえば、第1のデータベース462は、好ましくは、D-USNだけではなく、ユーザの名前及びユーザがソフトウエアを取得した時刻を格納する。このデータは、保証データベース、又は、製品アップデート及び新製品に関する情報を自動的に受信する顧客のリストを与えるため使用される。さらに、アプリケーションを組み込んでいないユーザ、或いは、アプリケーションを殆ど使用することがないユーザのリストが顧客サポートを行うためデータアナライザ480によって作成される。トラッキングデータアナライザは、好ましくは、顧客サポートメッセージを自動的に送信するようプログラムされる。たとえば、トラッキングデータアナライザは、ユーザが所定の時間経過後にプログラムを巧く組み込むことができなかった場合に、「アプリケーションを組み込む際にトラブルが発生しましたか?無料顧客サポートホットラインは1日24時間オープンしています。1-800 ヘルプインストールに電話してください。」というメッセージを送信するようプログラムされる。
【0033】
サーバー455は、起こり得る許可されていない使用を表す出力信号を形成するため、トラッキングデータアナライザ480から解析されたデータに応答して動作する不許可使用コントローラ490を含む。不許可使用コントローラ490は、重大な著作権侵害が発生している可能性があるとの警告をソフトウエアベンダーに出力する。たとえば、一つのD-USNが所定数を上回るI-USNと関連付けられている場合、ベンダーによるアクションに対し警告が自動的に送信される。一例として、コントローラ490は、所定数(たとえば、100個)を超えるI-USNが一つのD-USNに対し存在する場合に、警告メッセージを自動的に送信するようプログラムされる。コントローラ490は、許可されていない疑いのあるユーザに対し、電子メール又はその他の手段を用いて、警告メッセージを送信する。
【0034】
トラッキングアシスタント505及びアプリケーション510は、動作禁止コマンドの受信時、或いは、動作許可コードを再入力しないことによって、アプリケーション510の動作を停止させる通例的なソフトウエア制御プログラム要素を含むことがある。その結果として、コントローラ490は、他の実施例において、アプリケーション510に動作禁止コマンドを送信するか、或いは、アプリケーション510に動作許可コードを送信しないことによって、許可されていないバージョンのアプリケーション510の動作を禁止する機能を実行する従来の制御素子を含む。
【0035】
一般的に、本発明は、特に、ダウンロードされたソフトウエアに関係するが、トラッキング機能は、インターネットからダウンロードされたソフトウエアだけではなく、他の手段を用いてロードされたソフトウエアに対しても使用される。特に、ソフトウエアアプリケーションモジュール442及びトラッキングアシスタントモジュール444は、フロッピーディスク若しくはCD-ROMに記録されたインストーラーモジュール440をローディングすることによって組み込むことも可能である。
【0036】
図8には、サーバー455がダウンロードされるべきアプリケーションを格納していない本発明の一実施例が示されている。図8に示された実施例の場合、ユーザは、アプリケーション510及びトラッキングモジュール505を、たとえば、フロッピーディスク若しくはコンパクトディスクに記録されたインストーラーモジュール440のローディングなどの通例的な方法で組み込んでいる。本実施例の場合、D-USNは、従来の方法で配布してもよい。しかし、以下に、ダウンロードされていないソフトウエアに対しD-USNを配布するための多様な方法を提案する。第一に、ソフトウエアは、販売時に印刷されたD-USNシリアル番号が添付され、ユーザは、アプリケーション510及びトラッキングアシスタント505の組み込み処理の一部として、この印刷されたD-USNシリアル番号を入力する。第二に、D-USNは、アプリケーションプログラム内に埋め込まれる。この場合、アプリケーション510とD-USNを一つにまとめるため、いわゆる「パッキングプログラム」が必要である。第三に、D-USNは、ネットワーク450を介してサーバー455から自動的に獲得される。この場合、ユーザがアプリケーションを組み込む際に、ネットワークコネクションが自動的に行われる必要がある。インストーラープログラムは、次に、上述のダウンロードされたプログラムと同様の方法でインストール時に、I-USNを生成し、記録する。
【0037】
定期的に使用されるアプリケーション510の実際の複製物の数を追跡する本発明の能力は、ソフトウエアベンダーによって多様な有利な形態で使用される。一例として、ある種のソフトウエア、特に、インターネットの使用に関連したソフトウエアは、ユーザに無料で配布される。無料配布ソフトウエアのソフトウエアベンダーにおける一つの経済的価値は、アプリケーションが実行されるとき、アプリケーションによって起動され、或いは、表示される広告から得られる。たとえば、一部のプログラムは、ユーザがアプリケーションを起動するとき、広告バーナーを表示する。ソフトウエアベンダーは、配布されたアプリケーションの数に基づいて広告主から料金を徴収する。許可されていない複製物が配布されると、アプリケーションの配布数が減少するので、広告収入の損失が生じる。たとえば、平均的に複製物の半分がユーザによって実際に使用され、共用される場合、ソフトウエアベンダーは、最初に、実際に使用中のアプリケーションの複製物の数の半数に基づく広告料金しか得られない。しかし、本発明を用いることにより、ソフトウエアベンダーは、使用中のアプリケーションの複製物の総数を正確に計数することができ、広告収入を著しく増加させることができる。さらに、本発明を使用することにより、ソフトウエアベンダーは、各ユーザによってアプリケーションが実行された回数に基づいて広告料金、すなわち、広告がユーザに提示された回数に基づく料金を徴収することも可能である。このような本発明の用法はインターネット、ローカル・エリア・ネットワーク、或いは、ワイド・エリア・ネットワークに適用される。
【0038】
無料配布ソフトウエアの別の経済的利益は、ソフトウエアベンダーの販売ツールとしての無料配布ソフトウエアの価値に関係する。ソフトウエアベンダーは、自らが販売する他の製品やサービスのための顧客層を開拓するため、無料配布ソフトウエアを提供する。たとえば、ソフトウエアベンダーは、無料配布ソフトウエアを供与したユーザから登録情報を取得し、他の製品やサービスを販売するために役立てる。さらに、ソフトウエアベンダーが販売する他の製品やサービスの一部のソフトウエア機能のソフトウエア上の特徴を無料配布ソフトウエアに組み入れることによって、潜在的な顧客をそのソフトウエア機能に習熟させることができる。しかし、無料配布ソフトウエアの不許可複製は、誤りを起こし、巧く動作しない無料配布ソフトウエアの改造バージョンを生み出すおそれがある。その上、無料配布ソフトウエアの不許可複製は、ソフトウエアベンダーが他の製品及びサービスのため潜在的な顧客に関する情報の取得する妨げとなる。これに対し、本発明を使用することにより、ソフトウエアベンダーは、無料配布ソフトウエアの使用状況に関する情報を獲得することができ、このような無料配布ソフトウエアを販売ツールとしてより効果的に利用できるようになる。たとえば、トラッキングアシスタント505のプログラミングは、ソフトウエアベンダーによって販売されるほかの製品及びサービスで使用される特徴と類似した製品特徴の使用状況に関する情報を記録し、送信するようプログラミングされる。この情報は、ソフトウエアベンダーが、他の製品及びサービスの販売を促進する無料配布ソフトウエアを設計するために役立つ。さらに、ソフトウエアベンダーは、販売努力をより効率的に集中させるため利用できる人口学的データを獲得することができる。また、無料配布ソフトウエアの不許可複製を監視する能力は、必要があれば、ソフトウエアベンダーが無料配布ソフトウエアの変造された不許可複製物がそのソフトウエアベンダーの評判を低下させることを防止するために役立つ。
【0039】
本発明の別のアプリケーションは、ローカル・エリア・ネットワークのアプリケーションおけるソフトウエアの使用状況を監視することである。一例として、ソフトウエアアプリケーションは、ローカル・エリア・ネットワーク内で使用されるアプリケーションの複製物の本数に基づいてユーザを統合するためライセンス供与される。1個のD-USNが、インストーラーモジュール440へのアクセス権と共にローカル・エリア・ネットワークのユーザに与えられる。組み込まれた各複製物は、同じD-USNと、異なるI-USNを有する。ソフトウエアベンダーは、共同クライアントがライセンス合意の条件の範囲内に収まっているかどうかを判定するため、作成若しくは使用されたアプリケーションの複製物の本数を追跡することができる。或いは、ローカル・エリア・ネットワークが定期的に使用されるアプリケーションの複製物の本数を所定の閾値よりも増加させた場合、追加料金が自動的に課金される。また、特定のタイプのユーザに関する人口学的データが自動的に収集され、解析される。たとえば、ソフトウエアベンダーが各ローカル・エリア・ネットワークグループに与えたD-USNの記録を保持するならば、トラッキングアシスタント505は、ローカル・エリア・ネットワーク内の各ユーザにトラッキングデータを供与する。これにより、ソフトウエアベンダーは、異なるローカル・エリア・ネットワークサイトでのアプリケーションの使用状況を比較することができる。たとえば、トラッキングアシスタント505によって送信された使用頻度、使用時間の長さ、使用された特徴、及び、ユーザ嗜好に関するデータに関して、法律事務所内で収集されたデータと、エンジニアリング会社内で収集されたデータは異なる。
【0040】
インターネットユーザグループのようなワイド・エリア・ネットワークの場合に、本発明は、ワイド・エリア・ネットワーク内で使用されるソフトウエア製品の使用状況の追跡を容易に行うため使用される。ワイド・エリア・ネットワークは、典型的に、単一の組織によって運営、管理される。管理組織は、提供したサービスの使用状況を監視若しくは調整することに屡々関心がある。一例として、同じインターネットサービスプロバイダを使用するユーザのグループのようなインターネットユーザのグループは、グループ内でのオンラインチャット又はページングのため共通のソフトウエアアプリケーションを使用する。本発明を使用することにより、インターネットサービスプロバイダは、ソフトウエアアプリケーションの使用状況を追跡することができる。これにより、アプリケーションがどのように使用されているかを判定するため、ソフトウエアアプリケーションの使用状況の追跡が容易に行える。本発明は、会員ユーザが非会員とアプリケーションを共用しているかどうかを判定するため使用することができる。さらに、上述の通り、本発明は、許可されていないアプリケーションのバージョンを停止させるため使用することができる。
【0041】
D-USN及びI-USNを生成するアルゴリズムは、多様な形で実現される。しかし、D-USNは、好ましくは、擬似乱数属性を有する識別コードである。I-USNは、好ましくは、D-USNと関連し、かつ、擬似乱数属性を有する識別コードである。D-USN及びI-USNを生成するための比較的に簡単かつ効率的な好ましいアルゴリズムは、既に提案した。
【0042】
ダウンロードされたソフトウエアの場合、第1の識別コードD-USNは、アプリケーションのダウンロードを要求したユーザに自動的に与えられる。第1の識別コードは、好ましくは、長さが9文字長であり、各文字は、0〜9、及び、A〜Zの36個の英数字のいずれかに対応した数値を有する。たとえば、文字Aは値10をとり、文字Bは値11をとり、(中略)、文字Zは値35をとる。D-USNの一例は、識別コード"RHR5D39ET"である。
【0043】
9文字の英数字コードは、好ましくは、データベースから取得された識別コードの文字の部分と、ダウンロードされた時刻の関数として作成された残りの文字の部分とを含む。好ましい一実施例において、4文字は6桁の識別コードから得られ、残りの5文字はインストーラーがダウンロードされた時刻の関数として導かれる。
【0044】
データベースの最初の6桁の識別コードを4桁の文字列に変換するため、好ましくは、剰余法が使用される。本例で使用されるように、剰余(=モジュロ)とは、割り算の余りである。一例として、999を36で除算する場合を考えると、
999/36=27 余り17
である。この式は、数学的に、
999%36=17
のように表現される。
【0045】
本発明における剰余法の一例として、データベース識別コードが999987の場合を考える。識別コードは、好ましくは、3桁ずつの2個の文字列に分割され、たとえば、
999987→999 987
のようになる。3桁の各文字列は、その商と剰余を計算することによって、36通りの値をとる文字に変換される。たとえば、999987は、2個の3桁文字列999と987に分割される。商は、各文字列の数値を数値36で割り算することにより計算される。たとえば、999の商は、
999/36=27
である。数値27は、36文字の英数字系の中の文字"R"に対応する。剰余は、割り算の余りから計算される。本例の場合、割り算の余りは、
999-36・27=27
より、27である。すなわち、
剰余=999%36=27
であり、剰余は英数字"R"に対応する。したがって、3桁の文字列"999"は、2文字の英数文字列"RR"に対応する。同じ手法が3桁の文字列"997"にも適用され、その結果として、2文字の英数文字列"RF"が得られる。かくして、初期の識別コードからの6桁のデータベースコード"999987"は、4文字の英数字コード"RRRF"に変換される。
【0046】
D-USNの中の残りの5個の英数文字は、ダウンロード時刻から計算される。9桁の時間コードを作成する好ましい方法は、ダウンロードされた時刻と、他の時刻との差の絶対値をとることである。たとえば、9桁のコードは、ダウンローディング時刻と、2025年12月31日(12/31/2025)の始まりの時刻との差をとり、その差を秒単位に換算することによって得られる。たとえば、1999年6月29日14時51分02秒と、2005年12月31日との差は、836471338秒である。この9桁の文字列は、3桁ずつの3個のグループに分割される。3桁の各文字列は、上記の方法と同じ方法を用いて、36に関する商と剰余を計算することによって、2個の英数字に変換される。これにより、6文字の英数字コードが得られる。同じ方法を用いることによって、836471338から6文字の英数字コード"N8D39E"が導出される。この6文字のコードは、最後の4文字、すなわち、"D39E"だけを選択することによって、4桁で打ち切られる。最後(5番目)の文字は、確認文字として作成される。最後の文字を作成するため、全英数字の数値が加算される。したがって、先行の例の場合、各文字の数値の合計は、
(R+R+R+F)+(D+3+9+E)=135
である。確認数値は、この合計を36で除算した剰余を計算し(115%36=27)、英数確認文字の数値を見つけるためこの数を36から減算することによって選択される。本例の場合、8文字の合計に対する剰余27から、
36-27=9
が確認文字"9"として得られる。したがって、D-USNコードは、"RRRFD39E9"となる。D-USNを確認するため、インストーラーは、9個の文字の数値を加算し、得られた合計が36で割り切れるかどうかを判定する。たとえば、本例のD-USN識別コードの合計、すなわち、
"R+H+R+5+D+3+9+E+T"=144
について、
144%36=0
であるかどうかが検査される。このD-USNの合計値の36を法とした剰余が0であるならば、すなわち、
合計%36=0
であるならば、インストレーションは有効であり、さもなければ、インストーラーは処理を継続しない。
【0047】
I-USNコードは、インストーラー440によって生成され、ユーザレジストリに保存される。I-USNコードは、好ましくは、英数字13文字の長さであり、各文字は、値0〜9、或いは、A〜Zのいずれかである。最初の9文字は、好ましくは、D-USNから導出され、最後の4桁は、インストレーション時刻から導出される。D-USNから導出される最初の9文字は、好ましくは、インストレーションプロセスを開始するためユーザがD-USNを入力したときに獲得される。
【0048】
I-USNの最後の4文字は、インストレーション時刻から獲得される。そのため、好ましくは、(インストレーション中に)時刻のフォーマットを取得し、年月日の部分を切り捨てる。これにより、時、分及び秒だけが残され、通例的なhh:mm:ss(時:分:秒)のディジタル形式で表現される。6桁のコードは、好ましくは、2個の3桁ずつのコードに分割される。すなわち、"hhmmss"は、"hhm"と"mss"に分割される。一例として、04:19:48は、"041"と"948"に分割される。3桁の数値毎に、4文字の英数文字列を生成すべく、上記の剰余法を使用して商と剰余が計算される。本例の場合、
041→"17"
948→"QC"
であるので、時分秒の6桁のコード"04:19:48"は、4文字の英数字コード"17QC"に変換される。かくして、インストーラーが使用された時刻が"12/31/9999,04:19:48"であり、D-USNが"RHR5D39E"であるならば、得られるI-USNは、
"RHR5D39ET-17QC"
である。
【0049】
以上の通り、本発明の好ましい実施例及びその変形例について詳細に説明したが、本発明はこれらの実施例及び変形例に厳密に制限されるものではなく、当業者は、特許請求の範囲に記載されているような本発明の精神並びに範囲を逸脱することなく、上記以外の変形及び変更をなし得ることに注意する必要がある。
【0050】
以上の説明に関して更に以下のような態様が考えられる。
【0051】
(付記1) ソフトウエアをダウンロードする要求に応じて、第1の識別コードを生成し、ソフトウエアプログラムを遠隔的に提供するサーバーと、
上記サーバーに接続され、ソフトウエアアプリケーションプログラム、及び、上記ソフトウエアアプリケーションの動作を表すトラッキングデータを自動的に送信するトラッキングアシスタントを有し、上記第1の識別コード及び登録データのエントリーに応じて、ダウンロードソフトウエアをコンピュータに組み込み、上記ソフトウエアアプリケーションプログラムが上記コンピュータに組み込まれたときに第2の識別コードを生成するダウンロード可能なインストーラーモジュールと、
上記サーバーに接続され、上記第1の識別コード及び上記第2の識別コードを含む上記トラッキングデータを記憶するデータベースとを具備し、ダウンロードされたプログラムの使用状況を追跡するシステム。
【0052】
(付記2) 上記サーバーは上記トラッキングデータが上記サーバーによって受信された時刻を記録する、付記1記載のシステム。
【0053】
(付記3) 上記トラッキングデータはインターネットを介して送信され、上記サーバーは上記トラッキングデータが上記サーバーによって受信されたときにインターネットプロトコルアドレスを記録する、付記2記載のシステム。
【0054】
(付記4) 上記サーバーは、上記ソフトウエアアプリケーションをダウンロードする要求に応じて、上記第1の識別コード及び上記登録データを上位データベースに自動的に記録する、付記1記載のシステム。
【0055】
(付記5) 上記第2の識別コードは上記第1の識別コード及びインストール時刻の関数である、付記1記載のシステム。
【0056】
(付記6) 上記トラッキングアシスタントは、所定のスケジュールにしたがって、上記第1の識別コード及び上記第2の識別コードを送信する、付記1記載のシステム。
【0057】
(付記7) 上記データベースに接続され、上記データベースに記憶されたデータを自動的に解析するデータアナライザを更に有する付記1記載のシステム。
【0058】
(付記8) 上記データアナライザは、少なくとも一つの顧客サポート機能を自動的に実行する、付記7記載のシステム。
【0059】
(付記9) 上記データアナライザは、上記ダウンロードされたソフトウエアプログラムアプリケーションの使用状況を解析し、付加的な顧客サポートを必要とするユーザを判定する、付記7記載のシステム。
【0060】
(付記10) 上記データアナライザに接続され、上記ソフトウエアアプリケーションプログラムの許可されていない複製を表す出力を具備したコントローラを更に有する付記7記載のシステム。
【0061】
(付記11) 上記ソフトウエアアプリケーションプログラムの動作は上記サーバーによって停止され、
上記コントローラは、上記ソフトウエアアプリケーションプログラムの許可されていない複製物の動作を停止するようプログラムされている、付記10記載のシステム。
【0062】
(付記12) コンピュータに搭載されたソフトウエアアプリケーションプログラムと、
上記コンピュータに搭載され、上記ソフトウエアアプリケーションプログラムの動作を表すトラッキングデータを自動的に送信するトラッキングアシスタントと、
ネットワークを介して上記トラッキングデータが伝達されるデータベースを備えたサーバーとを有し、
上記トラッキングデータは、第1の識別コードと、上記ソフトウエアアプリケーションプログラムが上記コンピュータに組み込まれたときに上記コンピュータによって生成される第2の識別コードとを含む、ソフトウエアの使用状況を追跡するシステム。
【0063】
(付記13) 上記トラッキングアシスタントは、上記ソフトウエアアプリケーションプログラムの動作時にトラッキングデータを自動的に記録する、付記12記載のシステム。
【0064】
(付記14) 上記トラッキングデータは出力ファイルに記録され、
上記出力ファイルは、上記ソフトウエアアプリケーションプログラムが使用さえる頻度と、上記ソフトウエアアプリケーションプログラムが使用される時間の長さと、上記ソフトウエアアプリケーションプログラムのユーザ嗜好と、上記ソフトウエアアプリケーションプログラムの少なくとも一つの使用状況とからなる群より選択されたデータを含む、付記13記載のシステム。
【0065】
(付記15) 上記トラッキングデータは所定のスケジュールにしたがって上記サーバーへ送信される、付記12記載のシステム。
【0066】
(付記16) 上記スケジュールは上記ソフトウエアアプリケーションプログラムの動作の関数である、付記15記載のシステム。
【0067】
(付記17) 上記トラッキングデータは、上記ネットワークへのアクセスに依存したスケジュールで上記サーバーへ送信される、付記12記載のシステム。
【0068】
(付記18) ソフトウエアアプリケーション、及び、上記ソフトウエアアプリケーションの動作に関するデータを記録し送信するトラッキングアシスタントを含むインストーラーを備え付ける工程と、
第1の識別コードを付与する工程と、
上記ソフトウエアアプリケーション及び上記トラッキングアシスタントを組み込むため上記第1の識別コードを入力する工程と、
第2の識別コードを生成する工程と、
上記第1の識別コード及び上記第2の識別コードをコンピュータのメモリ部に記録する工程と、
上記トラッキングアシスタントを介して、上記第1の識別コード及び上記第2の識別コードを遠隔サーバーのデータベースに定期的に伝達する工程とを有し、上記トラッキングアシスタントモジュールは上記第1の識別コード及び上記第2の識別コードを上記遠隔サーバーに送信するためネットワークリンクを自動的に作動させる、コンピュータソフトウエアを追跡する方法。
【0069】
(付記19) 上記インストーラーはインターネットに接続されたウェブサイトからダウンロードされる、付記18記載の方法。
【0070】
(付記20) 上記第1の識別コードは上記インストーラーがダウンロードされた時刻の関数である、付記18記載の方法。
【0071】
(付記21) 上記サーバーは上記第1の識別コードを生成し、
上記第1の識別コード、及び、上記インストーラーがダウンロードされた時刻を上記データベースに記録する工程を更に有する付記18記載の方法。
【0072】
(付記22) 上記第2の識別コードは上記第1の識別コードの関数である付記18記載の方法。
【0073】
(付記23) 上記サーバーはデータアナライザを具備し、
上記ソフトウエアアプリケーションの重複した複製物が組み込まれたかどうかを判定するため、上記データベース内の上記第1の識別コードのインスタンス及び上記第2の識別コードのインスタンスを解析する工程を更に有する付記18記載の方法。
【0074】
(付記24) 上記サーバーは上記第1の識別コード及び上記第2の識別コードを受信した時刻を記録し、
上記ソフトウエアアプリケーションが使用される頻度を解析する工程を更に有する付記18記載の方法。
【0075】
(付記25) 上記データベースに記録されたデータを解析するデータアナライザを備え付ける工程と、
ユーザが上記ソフトウエアアプリケーションを利用する頻度に基づいて、顧客サービスをユーザに提供する工程とを更に有する付記18記載の方法。
【0076】
(付記26) アプリケーションモジュールが許可なく使用されているかどうかを判定するため、データアナライザ及びコントローラを備え付ける工程と、
上記アプリケーションモジュールの許可されていないバージョンを禁止する工程とを更に有する付記18記載の方法。
【0077】
(付記27) 上記トラッキングアシスタントは上記ソフトウエアアプリケーションの動作に関するデータを記録し、
上記データを、上記第1の識別コード及び上記第2の識別コードと共に上記サーバーへ送信する工程を更に有する付記18記載の方法。
【0078】
(付記28) 上記ソフトウエアアプリケーションは広告情報を表示し、
広告主に課金される料金を計算するため上記トラッキングデータを使用する工程を更に有する付記18記載の方法。
【0079】
(付記29) 上記コンピュータはローカル・エリア・ネットワークに接続され、
上記ローカル・エリア・ネットワーク内に組み込まれたアプリケーションの数を計算する工程を更に有する付記18記載の方法。
【0080】
(付記30) 上記コンピュータはワイド・エリア・ネットワークに接続され、
上記ワイド・エリア・ネットワークのユーザのグループ内でのアプリケーションの使用状況を監視する工程を更に有する付記18記載の方法。
【0081】
(付記31) インターネットリンクを介してデータベース及びダウンロード可能なインストーラーを含むサーバーに接続されたウェブサイトにアクセスする工程と、
上記ウェブサイトから第1の識別コードをダウンロードする工程と、
上記ウェブサイトからコンピュータのメモリに、ソフトウエアアプリケーション及びトラッキングアシスタントモジュールを含む上記インストーラーをダウンロードする工程と、
上記ソフトウエアアプリケーション及び上記トラッキングアシスタントモジュールを上記コンピュータに組み込むため、上記第1の識別コードを上記インストーラーに挿入する工程と、
上記ソフトウエアアプリケーションモジュールが組み込まれた時刻の関数である第2の識別コードを生成する工程と、
上記第1の識別コード及び上記第2の識別コードを上記コンピュータの上記メモリに記録する工程と、
上記ソフトウエアアプリケーションの動作の関数であるスケジュールにしたがって、上記第1の識別コード及び上記第2の識別コードを上記サーバーのデータベースへ送信する工程とを有し、
上記トラッキングアシスタントは、上記第1の識別コード及び上記第2の識別コードを上記サーバーへ送信するため、インターネット接続を自動的に作動させる、コンピュータソフトウエアを追跡する方法。
【0082】
(付記32) 上記第1の識別コード及び上記第2の識別コードは所定のスケジュールにしたがって上記サーバーへ送信され、
上記サーバーは上記第1の識別コード及び上記第2の識別コードが受信された時刻を記録する、付記31記載の方法。
【0083】
(付記33) 上記ソフトウエアアプリケーションの使用状況に関するデータをトラッキングデータとして記憶する工程と、
上記第1の識別コード及び上記第2の識別コードが送信されたときに、上記トラッキングデータを送信する工程とを更に有する付記31記載の方法。
【0084】
(付記34) インストーラーモジュールに固有の第1の識別コード及び登録データをデータベースに格納する手段と、
上記インストーラーモジュールによってソフトウエアアプリケーションがコンピュータに組み込まれる際に該インストーラーモジュールに固有の第1の識別コードを基に生成される固有の第2の識別コードを少なくとも含むトラッキングデータをコンピュータから受信する手段と、
上記第1の識別コードと上記受信した第2の識別コードとを用いてソフトウエアアプリケーションの使用状況を管理する手段と、
を具備するサーバー。
【0085】
(付記35) 上記登録データの通知に応じて、上記ソフトウエアアプリケーションをコンピュータに組み込む際に必要な上記第1の識別コードを上記登録データの通知元に通知する、付記34記載のサーバー。
【0086】
(付記36) インストーラーモジュールに固有の第1の識別コードを受信する手段と、
上記インストーラーモジュールによるソフトウエアアプリケーションの組み込み時に上記第1の識別コードを基に固有の第2の識別コードを生成する手段と、上記第1の識別コードと上記第2の識別コードによりソフトウエアアプリケーションの使用状況を管理するサーバーに、少なくとも上記第2の識別コードを含むトラッキングデータを送信する手段と、
を具備するコンピュータ。
【0087】
(付記37) コンピュータに、
インストーラーモジュールに固有の第1の識別コード及び登録データをデータベースに格納し、
インストーラーモジュールによってソフトウエアアプリケーションが装置に組み込まれる際に該インストーラーモジュールに固有の第1の識別コードを基に生成される固有の第2の識別コードを少なくとも含むトラッキングデータを該装置から受信し、
上記第1の識別コードと上記受信した第2の識別コードとを用いてソフトウエアアプリケーションの使用状況を管理する、
ことを実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体。
【0088】
(付記38) コンピュータに、
ソフトウエアアプリケーションの組み込み時に固有の第1の識別コードを基に固有の第2の識別コードを生成し、
上記第1の識別コードと上記第2の識別コードによりソフトウエアアプリケーションの使用状況を管理するサーバーに、少なくとも第2の識別コードを含むトラッキングデータを送信する、
ことを実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体。
【0089】
【発明の効果】
以上の説明の通り、本発明の配布可能なソフトウエアアプリケーションを追跡する方法及び装置は、ソフトウエアアプリケーションの動作及び配布を監視するため、二つの識別コードとトラッキングアシスタントを使用する。第1のコードは、好ましくは、ユーザがウェブサーバーにアクセスするときに作成されダウンロードされる識別コードである。第1の識別コード及び他の登録データはウェブサーバーに接続されたデータベースに記憶される。第2の固有インストールコードは、ソフトウエアアプリケーションがユーザのコンピュータに組み込まれるときに自動的に作成される。引き続いて、同じ第1のコードを用いてアプリケーションを組み込むと、異なるインストールコードが生成される。トラッキングアシスタントモジュールは、所定のスケジュールにしたがって、ネットワーク(インターネット)を介して両方のコードをデータベースに自動的に送信する。トラッキングアシスタントの一実施例は、アプリケーションの使用状況に関する他のデータ、たとえば、使用頻度或いは一般的に使用される特徴などを収集し、二つのコードと共にトラッキングデータとして送信する。トラッキングデータアナライザは、好ましくは、アプリケーションの許可されていない使用が行われたかどうかを判定し、又は、個別の顧客サポート及びサービス機能の提供を支援するため、データベースに接続される。
【0090】
そのため、本発明によれば、ソフトウエアアプリケーションの使用状況を監視し、ダウンロードされたソフトウエアアプリケーションのための顧客サポートを行い、ソフトウエア使用状況に関する人口学的データを自動的に作成し、ダウンロードされたソフトウエアアプリケーションのための登録データを自動的に作成することができる。
【図面の簡単な説明】
【図1】本発明の第1実施例の概略図である。
【図2】ソフトウエアモジュールがローカルコンピュータにダウンロードされ、組み込まれた本発明のサーバーを表す概略図である。
【図3】ウェブサイトからインストーラーモジュールをダウンロードする好ましい一動作シーケンスの説明図である。
【図4】アプリケーション及びい本発明のトラッキングアシスタントを組み込む好ましい一動作シーケンスの説明図である。
【図5】アプリケーションが本発明のトラッキングアシスタントを始動させる好ましい一動作シーケンスの説明図である。
【図6】トラッキングアシスタントがサーバーに接続されたデータベースへトラッキングデータを通信する好ましい一動作シーケンスの説明図である。
【図7】サーバーが付加的なデータ解析及び制御機能を実行する本発明の第2実施例の概略図である。
【図8】トラッキングデータを受信するサーバーがソフトウエアアプリケーションをダウンロードしない本発明の第3実施例の概略図である。
【符号の説明】
410 コンピュータ
430 ハードドライブ装置
440 インストーラーモジュール
442 アプリケーションモジュール
444 トラッキングアシスタントモジュール
445 カップリング装置
450 ネットワーク
455 サーバー
460 データベース
462 第1のデータベーステーブル
464 第2のデータベーステーブル
470 アクセス・制御モジュール
480 トラッキングデータアナライザ
490 不許可使用コントローラ
500 システム
505 トラッキングアシスタント
510 アプリケーション
515 ファイル
Claims (4)
- ダウンロードされたソフトウェアプログラムの使用状況を追跡するシステムであって、
ソフトウェアプログラムをダウンロードする要求に応じて、上記ソフトウェアプログラムをダウンロードする要求を一意的に識別する第1の識別コードを生成するように構成された、ソフトウェアプログラムを遠隔的に提供するサーバーと、
ユーザにより入力された上記第1の識別コードの有効性を検査してコンピュータにダウンロードされたソフトウェアプログラムをインストールする、上記サーバーからダウンロードされたインストーラーモジュールを実行するコンピュータと、
上記第1の識別コード及び第2の識別コードを含む上記トラッキングデータを記憶する、上記サーバーに結合したデータベースと、により構成され、
上記サーバーは、ソフトウェアプログラムの使用状況を追跡するために、データベースに記憶されたトラッキングデータを解析するように構成されたトラッキングアナライザを有し、
上記インストーラーモジュールは、ソフトウェアプログラムと、上記ソフトウェアプログラムの動作を表すトラッキングデータを送信するトラッキングアシスタントとを有し、上記ソフトウェアプログラムが上記コンピュータに組み込まれたときに上記ソフトウェアプログラムのインストールを一意的に識別する上記第2の識別コードを、上記第1の識別コードに基づき生成することを特徴とするシステム。 - ダウンロードされたソフトウェアプログラムの使用状況を追跡するシステムであって、
ソフトウェアプログラムと、上記ソフトウェアプログラムの動作を表すトラッキングデータを自動的に送信するトラッキングアシスタントとを有するコンピュータと、
ネットワークを介して上記トラッキングデータが伝達されるデータベースと、ソフトウェアプログラムの使用状況を追跡するために、データベースに記憶されたトラッキングデータを解析するように構成されたトラッキングアナライザとを有するサーバーと、
を有し、
上記トラッキングデータは、ソフトウェアプログラムをサーバーからダウンロードする要求を一意的に識別する第1の識別コードと、上記ソフトウェアプログラムが上記コンピュータに組み込まれたときに上記コンピュータによって生成される、ソフトウェアプログラムの組み込みを一意的に識別する、上記第1の識別コードに基づき生成された第2の識別コードとを含むことを特徴とするシステム。 - ダウンロードされたソフトウェアプログラムの使用状況を追跡する、コンピュータにより実行される方法であって、
ソフトウェアプログラムと、上記ソフトウェアプログラムの動作に関するデータを記録し送信するように構成されたトラッキングアシスタントと、上記ソフトウェアプログラムをダウンロードする要求を一意的に識別する第1の識別コードとを有するインストーラーを受け取る工程と、
上記ソフトウェアプログラム及び上記トラッキングアシスタントを組み込むために、上記第1の識別コードの入力を受け取る工程と、
上記ソフトウェアプログラムのインストールを一意的に識別する第2の識別コードを上記第1の識別コードに基づき生成する工程と、
上記第1の識別コード及び上記第2の識別コードをコンピュータのメモリ部に記録する工程と、
遠隔サーバーのデータベースであって上記第1の識別コードと上記第2の識別コードを解析してソフトウェアプログラムの使用状況を追跡するデータベースに、上記第1の識別コード及び上記第2の識別コードを、上記トラッキングアシスタントにより、定期的に伝達する工程とを有し、
上記トラッキングアシスタントは上記第1の識別コード及び上記第2の識別コードを上記遠隔サーバーに送信するためネットワークリンクを自動的に作動させることを特徴とする方法。 - ダウンロードされたソフトウェアプログラムの使用状況を追跡する、コンピュータにより実行される方法であって、
データベース及びダウンロード可能なインストーラーを含むサーバーに関連したウェブサイトに、インターネットリンクを介してアクセスする工程と、
ソフトウェアプログラムをダウンロードする要求を一意的に識別する第1の識別コードを、上記ウェブサイトからダウンロードする工程と、
上記ウェブサイトから上記コンピュータのメモリに、ソフトウェアプログラム及びトラッキングアシスタントを含む上記インストーラーモジュールをダウンロードする工程と、
上記ソフトウェアプログラム及び上記トラッキングアシスタントを上記コンピュータに組み込むため、上記第1の識別コードの入力を受け取る工程と、
上記ソフトウェアプログラムが組み込まれた時刻の関数である、上記ソフトウェアプログラムの組み込みを一意的に識別する第2の識別コードを生成する工程と、
上記第1の識別コード及び上記第2の識別コードを上記コンピュータの上記メモリに記録する工程と、
上記第1の識別コード及び上記第2の識別コードを解析してソフトウェアプログラムの使用状況を追跡するため、上記ソフトウェアプログラムの動作の関数であるスケジュールにしたがって、上記サーバーのデータベースへ送信する工程とを有し、
上記トラッキングアシスタントは、上記第1の識別コード及び上記第2の識別コードを上記サーバーへ送信するため、インターネット接続を自動的に作動させるように構成されていることを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US441155 | 1999-11-12 | ||
US09/441,155 US6578199B1 (en) | 1999-11-12 | 1999-11-12 | Automatic tracking system and method for distributable software |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006256380A Division JP4588682B2 (ja) | 1999-11-12 | 2006-09-21 | 配布可能なソフトウエアの自動追跡システム及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001202250A JP2001202250A (ja) | 2001-07-27 |
JP3905303B2 true JP3905303B2 (ja) | 2007-04-18 |
Family
ID=23751762
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000345431A Expired - Fee Related JP3905303B2 (ja) | 1999-11-12 | 2000-11-13 | 配布可能なソフトウエアの自動追跡システム及び方法 |
JP2006256380A Expired - Fee Related JP4588682B2 (ja) | 1999-11-12 | 2006-09-21 | 配布可能なソフトウエアの自動追跡システム及び方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006256380A Expired - Fee Related JP4588682B2 (ja) | 1999-11-12 | 2006-09-21 | 配布可能なソフトウエアの自動追跡システム及び方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6578199B1 (ja) |
JP (2) | JP3905303B2 (ja) |
Families Citing this family (126)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7017188B1 (en) * | 1998-11-16 | 2006-03-21 | Softricity, Inc. | Method and apparatus for secure content delivery over broadband access networks |
US6763370B1 (en) * | 1998-11-16 | 2004-07-13 | Softricity, Inc. | Method and apparatus for content protection in a secure content delivery system |
US7200632B1 (en) | 1999-04-12 | 2007-04-03 | Softricity, Inc. | Method and system for serving software applications to client computers |
US6938096B1 (en) * | 1999-04-12 | 2005-08-30 | Softricity, Inc. | Method and system for remote networking using port proxying by detecting if the designated port on a client computer is blocked, then encapsulating the communications in a different format and redirecting to an open port |
US7370071B2 (en) | 2000-03-17 | 2008-05-06 | Microsoft Corporation | Method for serving third party software applications from servers to client computers |
US7730169B1 (en) * | 1999-04-12 | 2010-06-01 | Softricity, Inc. | Business method and system for serving third party software applications |
US8099758B2 (en) | 1999-05-12 | 2012-01-17 | Microsoft Corporation | Policy based composite file system and method |
AU5784600A (en) * | 1999-06-30 | 2001-01-31 | Accenture Llp | A system, method and article of manufacture for software source authentication for return purposes |
KR100385021B1 (ko) * | 1999-11-23 | 2003-05-22 | 삼성전자주식회사 | 운영체계 프로그램의 재설치시 운영체계 프로그램의 제품 인증 코드를 자동으로 입력하는 컴퓨터 시스템 및 그 방법 |
US6832230B1 (en) | 1999-12-22 | 2004-12-14 | Nokia Corporation | Apparatus and associated method for downloading an application with a variable lifetime to a mobile terminal |
US7103598B1 (en) * | 2000-03-03 | 2006-09-05 | Micron Technology, Inc | Software distribution method and apparatus |
JP4086445B2 (ja) * | 2000-03-09 | 2008-05-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報送信方法、ネットワーク・プロバイダ・サーバ、情報端末及び情報端末における方法 |
US7284064B1 (en) | 2000-03-21 | 2007-10-16 | Intel Corporation | Method and apparatus to determine broadcast content and scheduling in a broadcast system |
AUPQ654400A0 (en) * | 2000-03-28 | 2000-04-20 | Optimiser Pty Ltd | Authorising use of a computer program |
US7699699B2 (en) | 2000-06-23 | 2010-04-20 | Igt | Gaming device having multiple selectable display interfaces based on player's wagers |
US7695363B2 (en) | 2000-06-23 | 2010-04-13 | Igt | Gaming device having multiple display interfaces |
US6941353B1 (en) * | 2000-06-29 | 2005-09-06 | Auran Holdings Pty Ltd | E-commerce system and method relating to program objects |
US7140011B2 (en) * | 2000-12-12 | 2006-11-21 | Intel Corporation | Dynamically loading program code over a push-based network |
US6950863B1 (en) | 2000-12-21 | 2005-09-27 | Cisco Technology, Inc. | Method and system for verifying a software upgrade for a communication device |
US20020144265A1 (en) * | 2001-03-29 | 2002-10-03 | Connelly Jay H. | System and method for merging streaming and stored content information in an electronic program guide |
US20020144269A1 (en) * | 2001-03-30 | 2002-10-03 | Connelly Jay H. | Apparatus and method for a dynamic electronic program guide enabling billing broadcast services per EPG line item |
US6912582B2 (en) * | 2001-03-30 | 2005-06-28 | Microsoft Corporation | Service routing and web integration in a distributed multi-site user authentication system |
JP2003005859A (ja) * | 2001-04-16 | 2003-01-08 | Yuichi Sumiya | プログラムやデータの管理方法とコンピュータ |
US20020169738A1 (en) * | 2001-05-10 | 2002-11-14 | Giel Peter Van | Method and system for auditing an enterprise configuration |
US7185352B2 (en) * | 2001-05-11 | 2007-02-27 | Intel Corporation | Method and apparatus for combining broadcast schedules and content on a digital broadcast-enabled client platform |
US20020169849A1 (en) * | 2001-05-14 | 2002-11-14 | Schroath Leonard T. | Method and apparatus for providing software for office equipment at point-of-sale |
JP2002366244A (ja) * | 2001-06-08 | 2002-12-20 | Fuji Photo Film Co Ltd | 使用者数カウントシステム及びロイヤリティー清算システム |
US7328455B2 (en) * | 2001-06-28 | 2008-02-05 | Intel Corporation | Apparatus and method for enabling secure content decryption within a set-top box |
US7363569B2 (en) | 2001-06-29 | 2008-04-22 | Intel Corporation | Correcting for data losses with feedback and response |
JP2003050719A (ja) * | 2001-08-03 | 2003-02-21 | Katsuyoshi Nagashima | アプリケーションソフトウエアの使用状況監視装置及びそのソフトウエアプログラム |
US7047456B2 (en) * | 2001-08-28 | 2006-05-16 | Intel Corporation | Error correction for regional and dynamic factors in communications |
US20030046683A1 (en) * | 2001-08-28 | 2003-03-06 | Jutzi Curtis E. | Server-side preference prediction based on customer billing information to generate a broadcast schedule |
JP3555083B2 (ja) * | 2001-09-03 | 2004-08-18 | 株式会社ブルーユニバーサル | 動画映像デジタル情報再生装置 |
US7231653B2 (en) | 2001-09-24 | 2007-06-12 | Intel Corporation | Method for delivering transport stream data |
US8943540B2 (en) | 2001-09-28 | 2015-01-27 | Intel Corporation | Method and apparatus to provide a personalized channel |
CN1162783C (zh) * | 2001-11-09 | 2004-08-18 | 汪文虎 | 一种信息安全方法 |
CN1278557C (zh) * | 2001-11-12 | 2006-10-04 | 索尼株式会社 | 信息传递系统与方法以及信息处理设备与方法 |
US7685173B2 (en) * | 2001-12-13 | 2010-03-23 | International Business Machines Corporation | Security and authorization development tools |
US7116223B2 (en) * | 2002-01-02 | 2006-10-03 | International Business Machines Corporation | Systems, methods, and apparatus for monitoring a container associated with an item |
US20030135605A1 (en) * | 2002-01-11 | 2003-07-17 | Ramesh Pendakur | User rating feedback loop to modify virtual channel content and/or schedules |
US20030135857A1 (en) * | 2002-01-11 | 2003-07-17 | Ramesh Pendakur | Content discovery in a digital broadcast data service |
US20050144175A1 (en) * | 2002-02-18 | 2005-06-30 | Siemens Aktiengesellschaft | Method and system for administrating use of a service |
US7506313B2 (en) * | 2002-03-04 | 2009-03-17 | International Business Machines Corporation | Debug of code with selective display of data |
US7234158B1 (en) | 2002-04-01 | 2007-06-19 | Microsoft Corporation | Separate client state object and user interface domains |
US7194738B2 (en) * | 2002-04-09 | 2007-03-20 | Synnex Technology International Corporation | Method of creating image files and installing software bundles on target computers |
US8315907B2 (en) * | 2002-04-22 | 2012-11-20 | Hewlett-Packard Development Company, L.P. | Sponsor-based desktop customization as a revenue stream |
US7523490B2 (en) * | 2002-05-15 | 2009-04-21 | Microsoft Corporation | Session key security protocol |
JP2003345641A (ja) * | 2002-05-29 | 2003-12-05 | Ricoh Co Ltd | 記憶媒体及びプログラム |
US7356711B1 (en) | 2002-05-30 | 2008-04-08 | Microsoft Corporation | Secure registration |
US20040117313A1 (en) * | 2002-11-26 | 2004-06-17 | Mattern James M. | System and method for secure downloading |
US7627902B1 (en) | 2003-02-20 | 2009-12-01 | Dell Marketing Usa, L.P. | Method of managing a software item on a managed computer system |
US7146611B1 (en) * | 2003-02-24 | 2006-12-05 | Hewlett-Packard Development Company, L.P. | Method and system for managing memory for software modules |
US8135795B2 (en) * | 2003-04-03 | 2012-03-13 | International Business Machines Corporation | Method to provide on-demand resource access |
US20040215569A1 (en) * | 2003-04-24 | 2004-10-28 | International Business Machines Corporation | Method to ensure a unique machine serial number |
US7493488B2 (en) * | 2003-07-24 | 2009-02-17 | International Business Machines Corporation | Method to disable on/off capacity in demand |
US20050066032A1 (en) * | 2003-08-28 | 2005-03-24 | International Business Machines Corporation | Capacity on demand grace period for incompliant system configurations |
TWI241805B (en) * | 2003-12-12 | 2005-10-11 | Hon Hai Prec Ind Co Ltd | System and method for resuming downloading data from interruptive-point |
US7761569B2 (en) * | 2004-01-23 | 2010-07-20 | Tiversa, Inc. | Method for monitoring and providing information over a peer to peer network |
US7636941B2 (en) * | 2004-03-10 | 2009-12-22 | Microsoft Corporation | Cross-domain authentication |
US7963847B2 (en) | 2004-08-19 | 2011-06-21 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8251791B2 (en) | 2004-08-19 | 2012-08-28 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8021230B2 (en) | 2004-08-19 | 2011-09-20 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
CA2578951A1 (en) * | 2004-08-30 | 2006-03-09 | Theregen, Inc. | Cultured three dimensional tissues and uses thereof |
US8732696B2 (en) * | 2004-09-30 | 2014-05-20 | Sap Aktiengesellschaft | Analytic application model and marketplace |
US7814473B2 (en) * | 2004-10-27 | 2010-10-12 | Oracle International Corporation | Feature usage based target patching |
US8074223B2 (en) * | 2005-01-31 | 2011-12-06 | International Business Machines Corporation | Permanently activating resources based on previous temporary resource usage |
US8645941B2 (en) * | 2005-03-07 | 2014-02-04 | Carhamm Ltd., Llc | Method for attributing and allocating revenue related to embedded software |
US10733666B1 (en) | 2005-06-30 | 2020-08-04 | Sun Microsystems Inc. | System and method for defining a privacy zone within a network |
US9009079B2 (en) * | 2005-07-01 | 2015-04-14 | International Business Machines Corporation | Planning assignment of software licenses |
US8128491B2 (en) | 2005-09-09 | 2012-03-06 | Igt | Server based gaming system having multiple progressive awards |
US8137188B2 (en) | 2005-09-09 | 2012-03-20 | Igt | Server based gaming system having multiple progressive awards |
US7841939B2 (en) | 2005-09-09 | 2010-11-30 | Igt | Server based gaming system having multiple progressive awards |
US8458098B1 (en) * | 2005-09-29 | 2013-06-04 | Qurio Holdings, Inc. | Methods of tracking remote software installations and registrations and related systems and computer program products |
US7890569B1 (en) * | 2005-09-29 | 2011-02-15 | Symantec Corporation | Tracking time usage on a disconnected client over a period of time |
US7516104B1 (en) | 2005-09-29 | 2009-04-07 | Qurio Holdings, Inc. | Methods of providing software over a network and related systems and computer program products |
US9489187B2 (en) | 2005-11-07 | 2016-11-08 | Yahoo, Inc. | Adaptive deployment of applications for mobile devices |
US7840665B1 (en) * | 2005-12-01 | 2010-11-23 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing automated network management |
US7840955B1 (en) * | 2005-12-30 | 2010-11-23 | United Services Automobile Association (Usaa) | Method and system for restoring software |
US20070208673A1 (en) * | 2006-02-28 | 2007-09-06 | Aladdin Knowledge Systems Ltd. | Method and system for increasing sales of digital product modules |
US20070282710A1 (en) * | 2006-05-25 | 2007-12-06 | Motorola, Inc. | Method for demonstrating the features of an application program |
US9471756B2 (en) * | 2006-06-27 | 2016-10-18 | Intuit Inc. | Method and apparatus for authorizing a software product to be used on a computer system |
US8512130B2 (en) | 2006-07-27 | 2013-08-20 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US8616959B2 (en) | 2006-09-27 | 2013-12-31 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7674180B2 (en) | 2006-09-27 | 2010-03-09 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7862430B2 (en) | 2006-09-27 | 2011-01-04 | Igt | Server based gaming system having system triggered loyalty award sequences |
US8645948B2 (en) * | 2006-12-12 | 2014-02-04 | Qualcomm Incorporated | Apparatus and methods for client-driven server-side installation |
JP5048683B2 (ja) * | 2006-12-18 | 2012-10-17 | 株式会社Access | アプリケーション更新管理端末、システム、方法およびプログラム |
AU2008239570B2 (en) * | 2007-02-14 | 2013-11-21 | Igt | Methods and systems for anonymous player profile storage and retrieval |
US9009845B2 (en) * | 2007-02-27 | 2015-04-14 | Red Hat, Inc. | Distributing advertisement-supported software while ensuring certain software freedoms by license |
US7985133B2 (en) | 2007-07-30 | 2011-07-26 | Igt | Gaming system and method for providing an additional gaming currency |
US8900053B2 (en) | 2007-08-10 | 2014-12-02 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US9323519B2 (en) * | 2007-08-31 | 2016-04-26 | Red Hat, Inc. | Packaging an application |
CN101119387B (zh) * | 2007-09-10 | 2012-11-14 | 北京网秦天下科技有限公司 | 一种便利于定制、配置与迁移手机软件业务的方法和系统 |
US9142097B2 (en) | 2007-10-26 | 2015-09-22 | Igt | Gaming system and method for providing play of local first game and remote second game |
US8606765B2 (en) * | 2007-11-30 | 2013-12-10 | Red Hat, Inc. | Systems and methods for updating software appliances |
KR20090081616A (ko) * | 2008-01-24 | 2009-07-29 | 삼성전자주식회사 | 공유 소프트웨어의 관리 방법 및 디바이스 |
US8458658B2 (en) * | 2008-02-29 | 2013-06-04 | Red Hat, Inc. | Methods and systems for dynamically building a software appliance |
US8935687B2 (en) | 2008-02-29 | 2015-01-13 | Red Hat, Inc. | Incrementally updating a software appliance |
US8924920B2 (en) | 2008-02-29 | 2014-12-30 | Red Hat, Inc. | Providing a software appliance based on a role |
US9092243B2 (en) * | 2008-05-28 | 2015-07-28 | Red Hat, Inc. | Managing a software appliance |
US10657466B2 (en) | 2008-05-29 | 2020-05-19 | Red Hat, Inc. | Building custom appliances in a cloud-based network |
US8868721B2 (en) * | 2008-05-29 | 2014-10-21 | Red Hat, Inc. | Software appliance management using broadcast data |
US9032367B2 (en) | 2008-05-30 | 2015-05-12 | Red Hat, Inc. | Providing a demo appliance and migrating the demo appliance to a production appliance |
US8943496B2 (en) * | 2008-05-30 | 2015-01-27 | Red Hat, Inc. | Providing a hosted appliance and migrating the appliance to an on-premise environment |
US9210173B2 (en) * | 2008-11-26 | 2015-12-08 | Red Hat, Inc. | Securing appliances for use in a cloud computing environment |
JP5274284B2 (ja) * | 2009-01-30 | 2013-08-28 | キヤノン株式会社 | 電子機器、ソフトウェアのアップデート方法、及びコンピュータプログラム |
US9039516B2 (en) | 2009-07-30 | 2015-05-26 | Igt | Concurrent play on multiple gaming machines |
US8504443B2 (en) * | 2009-08-31 | 2013-08-06 | Red Hat, Inc. | Methods and systems for pricing software infrastructure for a cloud computing environment |
US20110185354A1 (en) * | 2010-01-26 | 2011-07-28 | Emdigo Inc. | Mobile Application Delivery Management System |
US9183560B2 (en) | 2010-05-28 | 2015-11-10 | Daniel H. Abelow | Reality alternate |
US10217142B1 (en) * | 2010-09-23 | 2019-02-26 | Tribal Technologies, Inc. | Selective solicitation of user feedback for digital goods markets |
US20120254024A1 (en) * | 2011-03-30 | 2012-10-04 | International Business Machines Corporation | Pay-Per-Use License Management for Software Applications |
WO2012142528A2 (en) * | 2011-04-14 | 2012-10-18 | Fiksu, Inc. | Mobile digital media download incentive management |
US8641518B2 (en) | 2011-09-30 | 2014-02-04 | Igt | Ticket-based trial account |
US9183701B2 (en) | 2011-09-30 | 2015-11-10 | Igt | Gaming system and method for rewarding players |
US9005013B2 (en) | 2011-09-30 | 2015-04-14 | Igt | Gaming system and method for rewarding players |
US9022855B2 (en) | 2011-09-30 | 2015-05-05 | Igt | Gaming system and method for rewarding players |
JP5107455B1 (ja) * | 2011-10-03 | 2012-12-26 | 株式会社ファンコミュニケーションズ | ネットワーク広告管理システム及びネットワーク広告管理システム用プログラム |
US10616782B2 (en) | 2012-03-29 | 2020-04-07 | Mgage, Llc | Cross-channel user tracking systems, methods and devices |
US9875618B2 (en) | 2014-07-24 | 2018-01-23 | Igt | Gaming system and method employing multi-directional interaction between multiple concurrently played games |
US9826064B2 (en) * | 2015-02-23 | 2017-11-21 | Lenovo (Singapore) Pte. Ltd. | Securing sensitive data between a client and server using claim numbers |
US9972171B2 (en) | 2015-09-24 | 2018-05-15 | Igt | Gaming system and method for providing a triggering event based on a collection of units from different games |
US10163302B2 (en) | 2016-08-08 | 2018-12-25 | Double Down Interactive Llc | Gaming system and method for providing a variable award in association with a virtual currency purchase |
US10706669B2 (en) | 2018-04-05 | 2020-07-07 | Igt | System and method for managing player data across different gaming entities |
US11113926B2 (en) | 2018-05-03 | 2021-09-07 | Igt | System and method for utilizing mobile device to track gaming data |
US10552136B2 (en) * | 2018-06-29 | 2020-02-04 | Alibaba Group Holding Limited | One click application asset distribution |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2053261A1 (en) * | 1989-04-28 | 1990-10-29 | Gary D. Hornbuckle | Method and apparatus for remotely controlling and monitoring the use of computer software |
US5495610A (en) * | 1989-11-30 | 1996-02-27 | Seer Technologies, Inc. | Software distribution system to build and distribute a software release |
US5103476A (en) | 1990-11-07 | 1992-04-07 | Waite David P | Secure system for activating personal computer software at remote locations |
US5771354A (en) * | 1993-11-04 | 1998-06-23 | Crawford; Christopher M. | Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services |
US5745766A (en) | 1994-09-19 | 1998-04-28 | International Business Machines Corporation | PC product registration and tracking |
JP3366143B2 (ja) * | 1995-01-10 | 2003-01-14 | 富士通株式会社 | ソフトウェア流通システムにおける識別子管理装置および方法ならびにソフトウェア流通管理装置および方法 |
EP1526472A3 (en) | 1995-02-13 | 2006-07-26 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US5819285A (en) | 1995-09-20 | 1998-10-06 | Infonautics Corporation | Apparatus for capturing, storing and processing co-marketing information associated with a user of an on-line computer service using the world-wide-web. |
US5845077A (en) * | 1995-11-27 | 1998-12-01 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
US5708709A (en) | 1995-12-08 | 1998-01-13 | Sun Microsystems, Inc. | System and method for managing try-and-buy usage of application programs |
US5790785A (en) | 1995-12-11 | 1998-08-04 | Customer Communications Group, Inc. | World Wide Web registration information processing system |
JPH09231264A (ja) | 1996-02-23 | 1997-09-05 | Hitachi Ltd | オンラインショッピング支援方法およびシステム |
US5790664A (en) | 1996-02-26 | 1998-08-04 | Network Engineering Software, Inc. | Automated system for management of licensed software |
US5758069A (en) | 1996-03-15 | 1998-05-26 | Novell, Inc. | Electronic licensing system |
US5684951A (en) | 1996-03-20 | 1997-11-04 | Synopsys, Inc. | Method and system for user authorization over a multi-user computer system |
US6151643A (en) * | 1996-06-07 | 2000-11-21 | Networks Associates, Inc. | Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer |
US5919247A (en) | 1996-07-24 | 1999-07-06 | Marimba, Inc. | Method for the distribution of code and data updates |
US6308061B1 (en) * | 1996-08-07 | 2001-10-23 | Telxon Corporation | Wireless software upgrades with version control |
US6005935A (en) * | 1996-11-20 | 1999-12-21 | At&T Corp. | Method and system of using personal information as a key when distributing information |
US5845070A (en) | 1996-12-18 | 1998-12-01 | Auric Web Systems, Inc. | Security system for internet provider transaction |
US5903721A (en) | 1997-03-13 | 1999-05-11 | cha|Technologies Services, Inc. | Method and system for secure online transaction processing |
US5925127A (en) | 1997-04-09 | 1999-07-20 | Microsoft Corporation | Method and system for monitoring the use of rented software |
US5852714A (en) | 1997-05-21 | 1998-12-22 | Eten Information System Co., Ltd. | Real time broadcasting system on an internet |
JPH10326245A (ja) * | 1997-05-26 | 1998-12-08 | Nippon Telegr & Teleph Corp <Ntt> | 情報端末における利用データを取得する方法およびそのプログラムを記録した記録媒体 |
US6067416A (en) * | 1997-06-03 | 2000-05-23 | Fraser; Robert E. | Method for dynamically wrapping files for downloading |
US6247128B1 (en) * | 1997-07-22 | 2001-06-12 | Compaq Computer Corporation | Computer manufacturing with smart configuration methods |
US6009525A (en) * | 1997-08-29 | 1999-12-28 | Preview Systems, Inc. | Multi-tier electronic software distribution |
US6202070B1 (en) * | 1997-12-31 | 2001-03-13 | Compaq Computer Corporation | Computer manufacturing system architecture with enhanced software distribution functions |
US6192518B1 (en) * | 1998-01-22 | 2001-02-20 | Mis Only, Inc. | Method for distributing software over network links via electronic mail |
GB2333864B (en) * | 1998-01-28 | 2003-05-07 | Ibm | Distribution of software updates via a computer network |
US6202207B1 (en) * | 1998-01-28 | 2001-03-13 | International Business Machines Corporation | Method and a mechanism for synchronized updating of interoperating software |
US6189146B1 (en) * | 1998-03-18 | 2001-02-13 | Microsoft Corporation | System and method for software licensing |
US6009401A (en) * | 1998-04-06 | 1999-12-28 | Preview Systems, Inc. | Relicensing of electronically purchased software |
US6066182A (en) * | 1998-11-05 | 2000-05-23 | Platinum Technology Ip, Inc. | Method and apparatus for operating system personalization during installation |
US6418472B1 (en) * | 1999-01-19 | 2002-07-09 | Intel Corporation | System and method for using internet based caller ID for controlling access to an object stored in a computer |
WO2000068851A2 (en) * | 1999-05-07 | 2000-11-16 | Zlectric | Computer-based system and method for delivering and tracking advertisements |
-
1999
- 1999-11-12 US US09/441,155 patent/US6578199B1/en not_active Expired - Lifetime
-
2000
- 2000-11-13 JP JP2000345431A patent/JP3905303B2/ja not_active Expired - Fee Related
-
2006
- 2006-09-21 JP JP2006256380A patent/JP4588682B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001202250A (ja) | 2001-07-27 |
JP4588682B2 (ja) | 2010-12-01 |
JP2007018532A (ja) | 2007-01-25 |
US6578199B1 (en) | 2003-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3905303B2 (ja) | 配布可能なソフトウエアの自動追跡システム及び方法 | |
AU2008206204B2 (en) | System and method for controlling distribution of electronic coupons | |
US8108251B2 (en) | Method of and system for managing promotions for purchase transactions over a network | |
US9292273B2 (en) | Software uninstallation system, method and computer program product | |
US8332277B2 (en) | Method, system and computer readable medium for facilitating a transaction between a customer, a merchant and an associate | |
US20080177603A1 (en) | System and method for controlling distribution of electronic coupons | |
US6826546B1 (en) | Method and system for licensing a copy of a copyright protected work | |
US20040030598A1 (en) | Electronic coupon distribution system | |
US7702536B1 (en) | Method, system, apparatus, and computer-readable medium for tracking referrals and product sell-through | |
US20020128903A1 (en) | Encrypted coupons | |
US20010054026A1 (en) | Method of and system for monitoring an application | |
US5541991A (en) | System for selectively preventing a software program from being operable | |
US20050155012A1 (en) | Application creation system, creation apparatus, creation method, application providing system, providing apparatus, providing method, application operation system, operation apparatus, and operation method | |
JP2010525492A (ja) | 広告供給システム、装置、及びその手順 | |
EP1203281B1 (en) | System for protecting information over the internet | |
US20040093229A1 (en) | System and method for content distribution | |
JP2002149217A (ja) | 管理・維持部品の提供方法およびその提供システム | |
JP3502602B2 (ja) | 電子情報の流通管理方法、システム、記録媒体 | |
US20100042652A1 (en) | System for tracking distribution for internet-distributed works of authorship | |
JP2002236842A (ja) | 電子広告における広告料金課金システム,電子クーポンサーバ,広告料金課金方法および広告料金課金プログラム | |
US20110208577A1 (en) | Online Offer Distribution System And Mehtod | |
JP2003114998A (ja) | 販売促進支援システム及び方法 | |
JP2006106958A (ja) | ソフトウェアライセンス発行システムおよび情報提供方法 | |
KR20000030265A (ko) | 컴퓨터 구매고객을 상대로 한 인터넷 맞춤식 약정 광고방법 | |
JP2002091829A (ja) | データの表示方法及びシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040324 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060731 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060822 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060921 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20061027 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070111 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110119 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110119 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120119 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130119 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130119 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140119 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |