JP4588682B2 - 配布可能なソフトウエアの自動追跡システム及び方法 - Google Patents

配布可能なソフトウエアの自動追跡システム及び方法 Download PDF

Info

Publication number
JP4588682B2
JP4588682B2 JP2006256380A JP2006256380A JP4588682B2 JP 4588682 B2 JP4588682 B2 JP 4588682B2 JP 2006256380 A JP2006256380 A JP 2006256380A JP 2006256380 A JP2006256380 A JP 2006256380A JP 4588682 B2 JP4588682 B2 JP 4588682B2
Authority
JP
Japan
Prior art keywords
identification code
tracking
computer
software program
software
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
Application number
JP2006256380A
Other languages
English (en)
Other versions
JP2007018532A (ja
Inventor
ツォウ イ−ウェン
寛克 荒木
剛 平尾
忠志 高橋
利治 木戸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2007018532A publication Critical patent/JP2007018532A/ja
Application granted granted Critical
Publication of JP4588682B2 publication Critical patent/JP4588682B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2135Metering

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

本発明は、一般的に、配布ソフトウエアの使用状況を監視、制御する技術に係り、特に、インターネットのようなネットワークからダウンロードされたソフトウエアの使用状況を追跡する方法及び装置に関する。
コンピュータユーザは、コンピュータソフトウエアを獲得する多数の選択肢をもっている。ユーザは、ソフトウエアプリケーションを格納したフロッピー(登録商標)ディスク、或いは、コンパクトディスクを購入し、自分のコンピュータのハードドライブ装置若しくはコンピュータネットワークにソフトウエアプリケーションをロードする。インターネットの出現によって、コンピュータユーザは、ワールド・ワイド・ウェブ(WWW)のウェブサイトからソフトウエアをダウンロードすることにより、コンピュータソフトウエアを獲得する選択肢も得た。特に、インターネットは、遠隔サーバーからソフトウエアをダウンロードするために利用することができる。
ダウンロードされたソフトウエアの普及が進むにつれて、コンピュータソフトウエアベンダーには新たな好機が生ずる。他の電子商取引の形態と同様に、ユーザがインターネットからソフトウエアを取得することができる便利さは、販売を増大させる可能性がある。ユーザは、シェアウエアと称される無料の使用制限されたソフトウエアをダウンロードする。これらの使用制限されたソフトウエアモジュールは、完全な機能のソフトウエアパッケージの販売を促進する。
しかし、インターネットはソフトウエアベンダーに新たな要求を課す。ソフトウエアベンダーに対する一つの要求は、許可されていないソフトウエアの複製と配布を防止することである。ダウンロードされたプログラムの許可されていない複製、或いは、その他の不正使用のような著作権侵害行為は、ライセンス料収入を減少させる可能性がある。また、第三者によって変造されたソフトウエアの不法配布は、企業イメージを汚す。たとえば、屡々クラッシュし、或いは、性能が低下するよう変造されたソフトウエアアプリケーションの不許可の複製物は、ソフトウエアベンダーの評判を害する。
従来の許可されたソフトウエアの管理システムには幾つかの欠点がある。一般的に、ダウンロードされたソフトウエアにライセンスを付与する幾つかの主要な方法がある。一つの方法は、ソフトウエアベンダーがユーザに識別コードを発行し、ユーザがアプリケーションをダウンロードするため、或いは、ダウンロードしたアプリケーションを使用するためには、その識別コードを入力しなければならないようにすることである。別の方法は、所定の期間の経過後若しくは所定回数の使用後に、ダウンロードされたソフトウエアの動作を自動的に停止させる監視及び制御プログラムをソフトウエアアプリケーションに付加することである。
ダウンロードされたプログラムの許可されていない使用を防止する従来の方法は、期待されるよりも複雑であり、ユーザにとって使い難いものである。殆どの場合に、ハッカーがソフトウエアを不正にコピーすることを防止するためかなり複雑なコピー制御ソフトウエアが必要とされる。さらに、一部のシステムでは、許可コードが異なるユーザ間で共有される場合があり、ライセンスシステムには都合が悪い。
ソフトウエアベンダーに対する別の要求は、顧客サービスとダウンロードされたソフトウエアのサポートを効率的に行うことである。ダウンロードされたソフトウエアを購入するコンピュータユーザは、通常の登録カード若しくは調査用紙への記入を厭う場合が多い。また、ベンダーは、典型的に、ソフトウエアの販売後、又は、販売以降に個別のコンピュータユーザと直接に個人的な連絡を取ることがない。したがって、ソフトウエアベンダーは、ユーザがソフトウエアを適切に使用するため適切なサポートを受けているかどうかを判断することが難しい。
ソフトウエアベンダーに対する更に別の要求は、自分の製品の質を向上させ、営業努力を効率的に集約するために必要とされる製品の使用状況に関する量的データ及び質的データを獲得することである。ソフトウエアベンダーが知りたい事項は、実際に使用されている各アプリケーションの本数、各ユーザがソフト上アプリケーションを使用する頻度及び期間、ユーザにとって最も重要な事項、並びに、その他のタイプの人口学的データである。しかし、ソフトウエアベンダーが自分の製品の質を向上させ、営業努力を効率的に集約するために役立つ正確なデータを取得するためには、費用が嵩み、かつ、困難である。
上記従来技術の問題点を解決すべく、ソフトウエアの使用が自動的に監視され、選択的に制御される装置及び方法が求められる。
したがって、本発明は、配布されたソフトウエアの使用状況、特に、インターネット上に存在するサーバーのような遠隔サーバーからダウンロードされたソフトウエアの使用状況を監視し、選択的に制御するシステム及び方法を取り扱う。
本発明の第1の目的は、ソフトウエアアプリケーションの使用状況を監視することである。
本発明の第2の目的は、ダウンロードされたソフトウエアアプリケーションのための顧客サポートを行うことである。
本発明の第3の目的は、ソフトウエア使用状況に関する人口学的データを自動的に作成することである。
本発明の第4の目的は、ダウンロードされたソフトウエアアプリケーションのための登録データを自動的に作成することである。
本発明の一態様による、ダウンロードされたソフトウェアプログラムの使用を追跡するシステムは、遠隔的にソフトウェアプログラムを提供するサーバーであって、前記ソフトウェアプログラムのダウンロード要求に応じて、前記ソフトウェアプログラムのダウンロード要求を一意的に識別する第1の識別コードを生成するように構成されたサーバーを有する。また、前記サーバーからダウンロードされたインストーラモジュールを実行するコンピュータであって、前記インストーラモジュールはダウンロードを要求された前記ソフトウェアプログラムと前記ソフトウェアプログラムの動作を示すトラッキングデータを前記サーバーに送信するように構成されたトラッキングアシスタントとを含み、前記インストーラモジュールは前記コンピュータのユーザによる前記第1の識別コードの入力に応じて前記ソフトウェアプログラムと前記トラッキングアシスタントとを前記コンピュータにインストールし、前記インストールによりユーザは前記コンピュータ上で前記ソフトウェアプログラムを操作可能となり、前記インストーラモジュールは前記ソフトウェアプログラムが前記コンピュータにインストールされた時にインストールされた前記ソフトウェアプログラムを一意的に識別する第2の識別コードを生成し、前記第2の識別コードは前記第1の識別コードと一意的に関連づけられているところのコンピュータを有する。さらに、前記トラッキングアシスタントにより送信されたトラッキングデータを記憶する、前記サーバーに結合したデータベースであって、前記送信されたトラッキングデータは前記第1の識別コードと前記第2の識別コードとを含むところのデータベースを有する。前記サーバーは、前記ソフトウェアプログラムの使用を追跡するために、前記データベースに記憶された前記トラッキングデータを調べるよう構成されたトラッキングアナライザを有する。
そのため、本発明によれば、ソフトウエアアプリケーションの使用状況を監視し、ダウンロードされたソフトウエアアプリケーションのための顧客サポートを行い、ソフトウエア使用状況に関する人口学的データを自動的に作成し、ダウンロードされたソフトウエアアプリケーションのための登録データを自動的に作成することができる。
本発明は、ソフトウエアの使用状況、特に、ダウンロードされたソフトウエアの使用状況を自動的に追跡する装置及び方法を取り扱う。追跡、顧客製品サポート、サービス、及び、調査の機能を実行するため費用効果の優れたやり方が求められる。ソフトウエアをダウンロードした顧客は、典型的に、登録カードや顧客調査票の記入のような伝統的な顧客満足度評価技術に協力しようとする気持ちにはならない。また、このような登録カード又は調査票への記入が行われたとしても、記入された情報が信頼できるとは限らず、実際の製品使用状況を査定するため使用できない場合がある。ソフトウエアベンダーが、自分の品揃えを改良し、かつ、効率的な顧客サポートを行うため要求されるタイプの使用状況情報を獲得することは、時間とコストがかかり、かつ、困難である。
図1は、ソフトウエアモジュールがローカルコンピュータ410にダウンロードされ組み込まれる前の本発明の好ましい一実施例400の概略図である。サーバー455は、インターネットのような開いたネットワーク450を介してコンピュータ410に接続される。コンピュータ410は、たとえば、家庭又はオフィスのパーソナルコンピュータのようなスタンドアローン型パーソナルコンピュータである。しかし、コンピュータ410は、ローカル・エリア・ネットワーク又はワイド・エリア・ネットワークの一部でも構わない。カップリング装置445は、ネットワーク450を介してコンピュータ410とサーバー455の間でネットワークリンクを形成するため使用される。カップリング装置455は、通常のモデム、T−1ライン、或いは、コンピュータ410をネットワーク450に接続する従来の素子の組み合わせなどにより構成される。コンピュータ410は、コンピュータプログラムを格納するためハードドライブ装置430又はその他の記憶ユニットを含む。コンピュータプログラムの中には、通常のコンピュータプログラム及びユーティリティプログラム(図1に示されない)が含まれる。
サーバー455は、サーバー455に格納されたインストーラーモジュール440をダウンロードするよう構成されていればどのようなサーバー(たとえば、通常のウェブサーバー)でもよい。インストーラーモジュール440は、少なくとも一つのアプリケーションモジュール442と、トラッキングアシスタントモジュール444とを含む。サーバー445は、サーバー455の機能を制御するアクセス・制御モジュール470を更に含む。制御モジュール470は、サーバー455の機能を調整するため使用される通常の制御モジュールを含む。データベース460は、第1のデータベーステーブル462及び第2のデータベーステーブル464を含み、サーバー455に電気的に接続される。データベース460は、データベーステーブルを格納するため構成された従来のメモリ若しくはデータ記憶ユニットでもよい。
図1をもう一度参照するに、アプリケーションモジュール442及びトラッキングアシスタントモジュール444は、別個の構成要素として表されていることが分かる。しかし、トラッキングモジュール444の機能は、アプリケーションモジュール442に組み入れてもよく、或いは、トラッキングモジュール444は、従来の方法を用いてアプリケーションモジュール442に接続又はリンクしてもよいことがわかる。また、インストーラーモジュール440は、同図において、サーバー455内に設けられているが、より一般的なインストーラーモジュール440を従来の方法を用いてサーバー455に接続してもよい。
図2には、ソフトウエアがローカルコンピュータ410にダウンロードされ、組み込まれたシステム500のブロック図が示されている。殆どの構成部品は図1に示された構成部品と同様である。しかし、データベース462は、識別シリアル番号D-USNである第1の識別コードを格納し、データベース464は、識別シリアル番号I-USNである第2の識別コードを格納する。好ましい実施例において、D-USNは、ソフトウエアアプリケーションを組み込むため必要とされるシリアル番号(コード)であり、I-USNは、アプリケーションが組み込まれるときにインストーラーによって作成される固有のシリアル番号(コード)である。ユーザのコンピュータのハードドライブ装置430は、ダウンロードされ組み込まれたトラッキングアシスタントモジュール444に対応したトラッキングアシスタント505を格納する。また、ハードドライブ装置430は、ダウンロードされ、組み込まれたアプリケーションモジュール442に対応したアプリケーション510を格納する。図2に示されたファイル515は、以下に詳述されるように、トラッキングデータを記憶するため使用される。ファイル515は、コンピュータ410に常駐するファイルである。WINDOWS(登録商標)オペレーティングシステムの場合、ファイル515は、好ましくは、WINDOWS(登録商標)のユーザレジストリファイルである。
図3乃至6には、本発明を使用する好ましい動作シーケンスが示されている。本発明の好ましい使用方法は、内部開発名"InfoMessenger"又は"IM"によって本願発明者による本願出願時に公知である情報メッセージ管理プログラムをダウンロードすることである。この情報メッセンジャー(InfoMessenger)は、コンピュータユーザがインターネットから獲得されるような電子メールメッセージ及び文書を管理する際に補助するプログラムである。しかし、本発明は、たとえば、インターネットから積極的に情報を獲得しないような他のタイプのソフトウエアアプリケーションモジュールを用いて実施してもよいことが理解されるべきである。
図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は、登録情報を記録済みであることに注意する必要がある。ユーザから取得された他の情報をユーザの名前及び電子メールアドレスと共に入力しても構わない。たとえば、システムは、顧客サービス及びサポートに関する問い合わせ、たとえば、「この製品を使用するため、カスタマーサポートを自動的に受信し、更新しますか」というような問い合わせを行い、応答を記録する。
図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の後、作動可能である。
ユーザが他のユーザとD-USNを共用する場合、アプリケーションが他のユーザのコンピュータに組み込まれるときに、異なるI-USNがインストーラー440によって自動的に作成される。たとえば、あるユーザが、アプリケーション及びD-USNを、そのアプリケーションを自分のコンピュータに組み込んだ他の人と共用する場合、異なるコンピュータに組み込まれた複製物は異なるI-USNを有する。ローカル・エリア・ネットワークの場合、インターネットから1本のアプリケーションしかダウンロードされていなくても、組み込まれた各複製物は、異なるI-USNを有する。
図5は、アプリケーション510の作動後の好ましい動作シーケンスを示す図である。コンピュータ410側のユーザがアプリケーション510を開始するとき、アプリケーション510は、トラッキングアシスタント505を作動させる。図5に示されるように、好ましいトラッキングアシスタントは、"Assistant Zero"という内部開発名で本願発明者によって本願出願時に公開されている。トラッキングアシスタント505は、アプリケーション510の動作を監視し、D-USN及びI-USNを含むトラッキングデータをサーバー455に送信するため使用される。コンピュータソフトウエアモジュールにサーバー455への自動接続を行わせる技術は、関心のある記事を見つけるためウェブサイトを探索するソフトウエアアプリケーションに関して知られている。したがって、トラッキングアシスタント505は、データ通信のためサーバーにネットワークリンクを自動的に形成するソフトウエアモジュールを含む。
トラッキングアシスタント505は、アプリケーション510が実行され、ネットワーク450のリンク(たとえば、インターネットアクセス)が利用可能になると、トラッキングデータを送信することができる。しかし、好ましい一動作方法の場合、トラッキングアシスタント505は、アプリケーション510が動作している日に一回ずつのように、定期的にトラッキングデータを送信する。電子メールメッセージ管理プログラムのようなインターネットに自動的に接続されるアプリケーション510の場合に、プログラムは、アプリケーション510が実行されているとき、インターネットに自動的に接続される。しかし、より一般的なアプリケーション510は、インターネットへのアクセスを必要としないプログラムである。たとえば、アプリケーションは、ユーザによってインターネットに断続的に接続されるノートブック型コンピュータに組み込まれたワードプロセッシングアプリケーションでも構わない。したがって、ユーザのためにインターネットへのアクセスを必要としないアプリケーションの場合に、トラッキングアシスタント505は、好ましくは、インターネットへのアクセスの利用可能性に依存してトラッキングデータを送信するようプログラムされる。たとえば、トラッキングアシスタント505は、1)インターネットコネクションが利用可能であるならば、アプリケーションが実行された日に1回ずつ、又は、2)インターネットへのアクセスが行われることなく1日以上の動作が経過した場合に、コンピュータ410が最初にインターネットに接続された利用可能なときに、記憶されたトラッキングデータを送信するようプログラムされる。
図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と、各インスタンスが受信された時刻と、各インスタンスに対するその他のトラッキングデータを提示するよう構成される。
トラッキングアシスタント505によってサーバー455に通知されたトラッキングデータは、D-USN及びI-USNしか含まないが、トラッキングアシスタント505は、他のタイプのトラッキングデータを収集することに注意する必要がある。特に、トラッキングアシスタント505は、アプリケーション510の動作時に、最も頻繁に使用されるプログラム上の特徴に関する情報、多数のプログラム特徴が使用される頻度、ユーザが典型的に特定のアプリケーションを使用する時間の長さ、又は、アプリケーション510の使用状況に関するその他のデータのような他の情報を記録するようプログラムされる。好ましい一実施例において、トラッキングアシスタント505は、ユーザがアプリケーションを使用する態様に関するデータを含む出力ファイルを生成する。出力ファイルは、好ましくは、ファイル515に格納される。アプリケーション510の使用状況に関するこのトラッキングデータは、ユーザがアプリケーションを使用する頻度及び時間の長さに関するデータ、ユーザの好みの設定値、或いは、出力ファイルに記録されるほかのデータを含む。出力ファイルは、ファイル515に格納されたD-USN及びI-USNと共に、トラッキングアシスタント505によってサーバー455に送信される。これにより、ソフトウエアベンダーは、自分のダウンロードされたアプリケーションが使用される状況に関するデータを自動的に取得することができる。
本発明は、ソフトウエアベンダーに幾つかの利益をもたらす。一つの利益は、データベース460に記憶された情報が、ソフトウエアの重複の有無を判定するため解析されることである。データベース460に蓄積されたこの情報は、不法な複製が行われたかどうか、並びに、不正な複製が行われた場所を判定する際に補助的に使用される情報である。
本発明の別の利点は、多種類の人口学的データを収集できる点である。たとえば、第2のデータベーステーブル464に格納されたトラッキングデータと共に収容されたIPアドレスの記録は、各インスタンスで使用されたインターネットサービスプロバイダを表す情報を与える。本発明の更に別の利点は、製品サポートが容易に行えることである。一例として、本発明は、ベンダーが実際に組み込まれるアプリケーションの複製物の数を決める際に使用される。たとえば、データベース460が、少なくとも一つの対応したインスタンス(すなわち、第2のデータベーステーブル464に記憶された対応したI-USN)をもたない特定のD-USNの記録を保存する場合、ユーザはアプリケーションを巧く組み込むことができないか、又は、巧く実行することができない旨が通知される。この情報は、たとえば、サポートスタッフに転送され、サポートスタッフは、プログラムを組み込む際のヘルプの提示に関して、顧客に連絡を取る。
また、本発明によれば、ベンダーは、組み込まれたソフトウエアが実際に使用される状況に関する情報を取得できる。この情報の中には、使用頻度と、使用日時と、使用された機能と、使用頻度と購入後の経過時間の関係が含まれる。これにより、たとえば、ソフトウエアに関する潜在的な問題点を評価するため、プログラムをそれほど頻繁に使用しないユーザに関する調査若しくはサポートを顧客サービス及び個人サポートの目標とすることができる。或いは、顧客サービス及びサポートは、ユーザがソフトウエアプログラムの中で最も重要な特徴であると考えている特徴を判定するため、頻度の高いユーザに関する調査を目標としてもよい。
図7は、サーバー455がデータベース460に格納されたデータを解析するトラッキングデータアナライザ480を含む本発明の他の実施例を示す図である。データベース460に格納されたデータは、顧客行動パターンを判定し、又は、顧客サービス及びサポートにより使用するための情報を与えるため、トラッキングデータアナライザ480によって自動的に解析される。たとえば、第1のデータベース462は、好ましくは、D-USNだけではなく、ユーザの名前及びユーザがソフトウエアを取得した時刻を格納する。このデータは、保証データベース、又は、製品アップデート及び新製品に関する情報を自動的に受信する顧客のリストを与えるため使用される。さらに、アプリケーションを組み込んでいないユーザ、或いは、アプリケーションを殆ど使用することがないユーザのリストが顧客サポートを行うためデータアナライザ480によって作成される。トラッキングデータアナライザは、好ましくは、顧客サポートメッセージを自動的に送信するようプログラムされる。たとえば、トラッキングデータアナライザは、ユーザが所定の時間経過後にプログラムを巧く組み込むことができなかった場合に、「アプリケーションを組み込む際にトラブルが発生しましたか?無料顧客サポートホットラインは1日24時間オープンしています。1-800 ヘルプインストールに電話してください。」というメッセージを送信するようプログラムされる。
サーバー455は、起こり得る許可されていない使用を表す出力信号を形成するため、トラッキングデータアナライザ480から解析されたデータに応答して動作する不許可使用コントローラ490を含む。不許可使用コントローラ490は、重大な著作権侵害が発生している可能性があるとの警告をソフトウエアベンダーに出力する。たとえば、一つのD-USNが所定数を上回るI-USNと関連付けられている場合、ベンダーによるアクションに対し警告が自動的に送信される。一例として、コントローラ490は、所定数(たとえば、100個)を超えるI-USNが一つのD-USNに対し存在する場合に、警告メッセージを自動的に送信するようプログラムされる。コントローラ490は、許可されていない疑いのあるユーザに対し、電子メール又はその他の手段を用いて、警告メッセージを送信する。
トラッキングアシスタント505及びアプリケーション510は、動作禁止コマンドの受信時、或いは、動作許可コードを再入力しないことによって、アプリケーション510の動作を停止させる通例的なソフトウエア制御プログラム要素を含むことがある。その結果として、コントローラ490は、他の実施例において、アプリケーション510に動作禁止コマンドを送信するか、或いは、アプリケーション510に動作許可コードを送信しないことによって、許可されていないバージョンのアプリケーション510の動作を禁止する機能を実行する従来の制御素子を含む。
一般的に、本発明は、特に、ダウンロードされたソフトウエアに関係するが、トラッキング機能は、インターネットからダウンロードされたソフトウエアだけではなく、他の手段を用いてロードされたソフトウエアに対しても使用される。特に、ソフトウエアアプリケーションモジュール442及びトラッキングアシスタントモジュール444は、フロッピー(登録商標)ディスク若しくはCD-ROMに記録されたインストーラーモジュール440をローディングすることによって組み込むことも可能である。
図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を生成し、記録する。
定期的に使用されるアプリケーション510の実際の複製物の数を追跡する本発明の能力は、ソフトウエアベンダーによって多様な有利な形態で使用される。一例として、ある種のソフトウエア、特に、インターネットの使用に関連したソフトウエアは、ユーザに無料で配布される。無料配布ソフトウエアのソフトウエアベンダーにおける一つの経済的価値は、アプリケーションが実行されるとき、アプリケーションによって起動され、或いは、表示される広告から得られる。たとえば、一部のプログラムは、ユーザがアプリケーションを起動するとき、広告バーナーを表示する。ソフトウエアベンダーは、配布されたアプリケーションの数に基づいて広告主から料金を徴収する。許可されていない複製物が配布されると、アプリケーションの配布数が減少するので、広告収入の損失が生じる。たとえば、平均的に複製物の半分がユーザによって実際に使用され、共用される場合、ソフトウエアベンダーは、最初に、実際に使用中のアプリケーションの複製物の数の半数に基づく広告料金しか得られない。しかし、本発明を用いることにより、ソフトウエアベンダーは、使用中のアプリケーションの複製物の総数を正確に計数することができ、広告収入を著しく増加させることができる。さらに、本発明を使用することにより、ソフトウエアベンダーは、各ユーザによってアプリケーションが実行された回数に基づいて広告料金、すなわち、広告がユーザに提示された回数に基づく料金を徴収することも可能である。このような本発明の用法はインターネット、ローカル・エリア・ネットワーク、或いは、ワイド・エリア・ネットワークに適用される。
無料配布ソフトウエアの別の経済的利益は、ソフトウエアベンダーの販売ツールとしての無料配布ソフトウエアの価値に関係する。ソフトウエアベンダーは、自らが販売する他の製品やサービスのための顧客層を開拓するため、無料配布ソフトウエアを提供する。たとえば、ソフトウエアベンダーは、無料配布ソフトウエアを供与したユーザから登録情報を取得し、他の製品やサービスを販売するために役立てる。さらに、ソフトウエアベンダーが販売する他の製品やサービスの一部のソフトウエア機能のソフトウエア上の特徴を無料配布ソフトウエアに組み入れることによって、潜在的な顧客をそのソフトウエア機能に習熟させることができる。しかし、無料配布ソフトウエアの不許可複製は、誤りを起こし、巧く動作しない無料配布ソフトウエアの改造バージョンを生み出すおそれがある。その上、無料配布ソフトウエアの不許可複製は、ソフトウエアベンダーが他の製品及びサービスのため潜在的な顧客に関する情報の取得する妨げとなる。これに対し、本発明を使用することにより、ソフトウエアベンダーは、無料配布ソフトウエアの使用状況に関する情報を獲得することができ、このような無料配布ソフトウエアを販売ツールとしてより効果的に利用できるようになる。たとえば、トラッキングアシスタント505のプログラミングは、ソフトウエアベンダーによって販売されるほかの製品及びサービスで使用される特徴と類似した製品特徴の使用状況に関する情報を記録し、送信するようプログラミングされる。この情報は、ソフトウエアベンダーが、他の製品及びサービスの販売を促進する無料配布ソフトウエアを設計するために役立つ。さらに、ソフトウエアベンダーは、販売努力をより効率的に集中させるため利用できる人口学的データを獲得することができる。また、無料配布ソフトウエアの不許可複製を監視する能力は、必要があれば、ソフトウエアベンダーが無料配布ソフトウエアの変造された不許可複製物がそのソフトウエアベンダーの評判を低下させることを防止するために役立つ。
本発明の別のアプリケーションは、ローカル・エリア・ネットワークのアプリケーションおけるソフトウエアの使用状況を監視することである。一例として、ソフトウエアアプリケーションは、ローカル・エリア・ネットワーク内で使用されるアプリケーションの複製物の本数に基づいてユーザを統合するためライセンス供与される。1個のD-USNが、インストーラーモジュール440へのアクセス権と共にローカル・エリア・ネットワークのユーザに与えられる。組み込まれた各複製物は、同じD-USNと、異なるI-USNを有する。ソフトウエアベンダーは、共同クライアントがライセンス合意の条件の範囲内に収まっているかどうかを判定するため、作成若しくは使用されたアプリケーションの複製物の本数を追跡することができる。或いは、ローカル・エリア・ネットワークが定期的に使用されるアプリケーションの複製物の本数を所定の閾値よりも増加させた場合、追加料金が自動的に課金される。また、特定のタイプのユーザに関する人口学的データが自動的に収集され、解析される。たとえば、ソフトウエアベンダーが各ローカル・エリア・ネットワークグループに与えたD-USNの記録を保持するならば、トラッキングアシスタント505は、ローカル・エリア・ネットワーク内の各ユーザにトラッキングデータを供与する。これにより、ソフトウエアベンダーは、異なるローカル・エリア・ネットワークサイトでのアプリケーションの使用状況を比較することができる。たとえば、トラッキングアシスタント505によって送信された使用頻度、使用時間の長さ、使用された特徴、及び、ユーザ嗜好に関するデータに関して、法律事務所内で収集されたデータと、エンジニアリング会社内で収集されたデータは異なる。
インターネットユーザグループのようなワイド・エリア・ネットワークの場合に、本発明は、ワイド・エリア・ネットワーク内で使用されるソフトウエア製品の使用状況の追跡を容易に行うため使用される。ワイド・エリア・ネットワークは、典型的に、単一の組織によって運営、管理される。管理組織は、提供したサービスの使用状況を監視若しくは調整することに屡々関心がある。一例として、同じインターネットサービスプロバイダを使用するユーザのグループのようなインターネットユーザのグループは、グループ内でのオンラインチャット又はページングのため共通のソフトウエアアプリケーションを使用する。本発明を使用することにより、インターネットサービスプロバイダは、ソフトウエアアプリケーションの使用状況を追跡することができる。これにより、アプリケーションがどのように使用されているかを判定するため、ソフトウエアアプリケーションの使用状況の追跡が容易に行える。本発明は、会員ユーザが非会員とアプリケーションを共用しているかどうかを判定するため使用することができる。さらに、上述の通り、本発明は、許可されていないアプリケーションのバージョンを停止させるため使用することができる。
D-USN及びI-USNを生成するアルゴリズムは、多様な形で実現される。しかし、D-USNは、好ましくは、擬似乱数属性を有する識別コードである。I-USNは、好ましくは、D-USNと関連し、かつ、擬似乱数属性を有する識別コードである。D-USN及びI-USNを生成するための比較的に簡単かつ効率的な好ましいアルゴリズムは、既に提案した。
ダウンロードされたソフトウエアの場合、第1の識別コードD-USNは、アプリケーションのダウンロードを要求したユーザに自動的に与えられる。第1の識別コードは、好ましくは、長さが9文字長であり、各文字は、0〜9、及び、A〜Zの36個の英数字のいずれかに対応した数値を有する。たとえば、文字Aは値10をとり、文字Bは値11をとり、(中略)、文字Zは値35をとる。D-USNの一例は、識別コード"RHR5D39ET"である。
9文字の英数字コードは、好ましくは、データベースから取得された識別コードの文字の部分と、ダウンロードされた時刻の関数として作成された残りの文字の部分とを含む。好ましい一実施例において、4文字は6桁の識別コードから得られ、残りの5文字はインストーラーがダウンロードされた時刻の関数として導かれる。
データベースの最初の6桁の識別コードを4桁の文字列に変換するため、好ましくは、剰余法が使用される。本例で使用されるように、剰余(=モジュロ)とは、割り算の余りである。一例として、999を36で除算する場合を考えると、
999/36=27 余り17
である。この式は、数学的に、
999%36=17
のように表現される。
本発明における剰余法の一例として、データベース識別コードが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"に変換される。
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
であるならば、インストレーションは有効であり、さもなければ、インストーラーは処理を継続しない。
I-USNコードは、インストーラー440によって生成され、ユーザレジストリに保存される。I-USNコードは、好ましくは、英数字13文字の長さであり、各文字は、値0〜9、或いは、A〜Zのいずれかである。最初の9文字は、好ましくは、D-USNから導出され、最後の4桁は、インストレーション時刻から導出される。D-USNから導出される最初の9文字は、好ましくは、インストレーションプロセスを開始するためユーザがD-USNを入力したときに獲得される。
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"
である。
以上の通り、本発明の好ましい実施例及びその変形例について詳細に説明したが、本発明はこれらの実施例及び変形例に厳密に制限されるものではなく、当業者は、特許請求の範囲に記載されているような本発明の精神並びに範囲を逸脱することなく、上記以外の変形及び変更をなし得ることに注意する必要がある。
以上の説明に関して更に以下のような態様が考えられる。
(付記1) ソフトウエアをダウンロードする要求に応じて、第1の識別コードを生成し、ソフトウエアプログラムを遠隔的に提供するサーバーと、
上記サーバーに接続され、ソフトウエアアプリケーションプログラム、及び、上記ソフトウエアアプリケーションの動作を表すトラッキングデータを自動的に送信するトラッキングアシスタントを有し、上記第1の識別コード及び登録データのエントリーに応じて、ダウンロードソフトウエアをコンピュータに組み込み、上記ソフトウエアアプリケーションプログラムが上記コンピュータに組み込まれたときに第2の識別コードを生成するダウンロード可能なインストーラーモジュールと、
上記サーバーに接続され、上記第1の識別コード及び上記第2の識別コードを含む上記トラッキングデータを記憶するデータベースとを具備し、ダウンロードされたプログラムの使用状況を追跡するシステム。
(付記2) 上記サーバーは上記トラッキングデータが上記サーバーによって受信された時刻を記録する、付記1記載のシステム。
(付記3) 上記トラッキングデータはインターネットを介して送信され、
上記サーバーは上記トラッキングデータが上記サーバーによって受信されたときにインターネットプロトコルアドレスを記録する、付記2記載のシステム。
(付記4) 上記サーバーは、上記ソフトウエアアプリケーションをダウンロードする要求に応じて、上記第1の識別コード及び上記登録データを上位データベースに自動的に記録する、付記1記載のシステム。
(付記5) 上記第2の識別コードは上記第1の識別コード及びインストール時刻の関数である、付記1記載のシステム。
(付記6) 上記トラッキングアシスタントは、所定のスケジュールにしたがって、上記第1の識別コード及び上記第2の識別コードを送信する、付記1記載のシステム。
(付記7) 上記データベースに接続され、上記データベースに記憶されたデータを自動的に解析するデータアナライザを更に有する付記1記載のシステム。
(付記8) 上記データアナライザは、少なくとも一つの顧客サポート機能を自動的に実行する、付記7記載のシステム。
(付記9) 上記データアナライザは、上記ダウンロードされたソフトウエアプログラムアプリケーションの使用状況を解析し、付加的な顧客サポートを必要とするユーザを判定する、付記7記載のシステム。
(付記10) 上記データアナライザに接続され、上記ソフトウエアアプリケーションプログラムの許可されていない複製を表す出力を具備したコントローラを更に有する付記7記載のシステム。
(付記11) 上記ソフトウエアアプリケーションプログラムの動作は上記サーバーによって停止され、
上記コントローラは、上記ソフトウエアアプリケーションプログラムの許可されていない複製物の動作を停止するようプログラムされている、付記10記載のシステム。
(付記12) コンピュータに搭載されたソフトウエアアプリケーションプログラムと、
上記コンピュータに搭載され、上記ソフトウエアアプリケーションプログラムの動作を表すトラッキングデータを自動的に送信するトラッキングアシスタントと、
ネットワークを介して上記トラッキングデータが伝達されるデータベースを備えたサーバーとを有し、
上記トラッキングデータは、第1の識別コードと、上記ソフトウエアアプリケーションプログラムが上記コンピュータに組み込まれたときに上記コンピュータによって生成される第2の識別コードとを含む、ソフトウエアの使用状況を追跡するシステム。
(付記13) 上記トラッキングアシスタントは、上記ソフトウエアアプリケーションプログラムの動作時にトラッキングデータを自動的に記録する、付記12記載のシステム。
(付記14) 上記トラッキングデータは出力ファイルに記録され、
上記出力ファイルは、上記ソフトウエアアプリケーションプログラムが使用さえる頻度と、上記ソフトウエアアプリケーションプログラムが使用される時間の長さと、上記ソフトウエアアプリケーションプログラムのユーザ嗜好と、上記ソフトウエアアプリケーションプログラムの少なくとも一つの使用状況とからなる群より選択されたデータを含む、付記13記載のシステム。
(付記15) 上記トラッキングデータは所定のスケジュールにしたがって上記サーバーへ送信される、付記12記載のシステム。
(付記16) 上記スケジュールは上記ソフトウエアアプリケーションプログラムの動作の関数である、付記15記載のシステム。
(付記17) 上記トラッキングデータは、上記ネットワークへのアクセスに依存したスケジュールで上記サーバーへ送信される、付記12記載のシステム。
(付記18) ソフトウエアアプリケーション、及び、上記ソフトウエアアプリケーションの動作に関するデータを記録し送信するトラッキングアシスタントを含むインストーラーを備え付ける工程と、
第1の識別コードを付与する工程と、
上記ソフトウエアアプリケーション及び上記トラッキングアシスタントを組み込むため上記第1の識別コードを入力する工程と、
第2の識別コードを生成する工程と、
上記第1の識別コード及び上記第2の識別コードをコンピュータのメモリ部に記録する工程と、
上記トラッキングアシスタントを介して、上記第1の識別コード及び上記第2の識別コードを遠隔サーバーのデータベースに定期的に伝達する工程とを有し、
上記トラッキングアシスタントモジュールは上記第1の識別コード及び上記第2の識別コードを上記遠隔サーバーに送信するためネットワークリンクを自動的に作動させる、コンピュータソフトウエアを追跡する方法。
(付記19) 上記インストーラーはインターネットに接続されたウェブサイトからダウンロードされる、付記18記載の方法。
(付記20) 上記第1の識別コードは上記インストーラーがダウンロードされた時刻の関数である、付記18記載の方法。
(付記21) 上記サーバーは上記第1の識別コードを生成し、
上記第1の識別コード、及び、上記インストーラーがダウンロードされた時刻を上記データベースに記録する工程を更に有する付記18記載の方法。
(付記22) 上記第2の識別コードは上記第1の識別コードの関数である付記18記載の方法。
(付記23) 上記サーバーはデータアナライザを具備し、
上記ソフトウエアアプリケーションの重複した複製物が組み込まれたかどうかを判定するため、上記データベース内の上記第1の識別コードのインスタンス及び上記第2の識別コードのインスタンスを解析する工程を更に有する付記18記載の方法。
(付記24) 上記サーバーは上記第1の識別コード及び上記第2の識別コードを受信した時刻を記録し、
上記ソフトウエアアプリケーションが使用される頻度を解析する工程を更に有する付記18記載の方法。
(付記25) 上記データベースに記録されたデータを解析するデータアナライザを備え付ける工程と、
ユーザが上記ソフトウエアアプリケーションを利用する頻度に基づいて、顧客サービスをユーザに提供する工程とを更に有する付記18記載の方法。
(付記26) アプリケーションモジュールが許可なく使用されているかどうかを判定するため、データアナライザ及びコントローラを備え付ける工程と、
上記アプリケーションモジュールの許可されていないバージョンを禁止する工程とを更に有する付記18記載の方法。
(付記27) 上記トラッキングアシスタントは上記ソフトウエアアプリケーションの動作に関するデータを記録し、
上記データを、上記第1の識別コード及び上記第2の識別コードと共に上記サーバーへ送信する工程を更に有する付記18記載の方法。
(付記28) 上記ソフトウエアアプリケーションは広告情報を表示し、
広告主に課金される料金を計算するため上記トラッキングデータを使用する工程を更に有する付記18記載の方法。
(付記29) 上記コンピュータはローカル・エリア・ネットワークに接続され、
上記ローカル・エリア・ネットワーク内に組み込まれたアプリケーションの数を計算する工程を更に有する付記18記載の方法。
(付記30) 上記コンピュータはワイド・エリア・ネットワークに接続され、
上記ワイド・エリア・ネットワークのユーザのグループ内でのアプリケーションの使用状況を監視する工程を更に有する付記18記載の方法。
(付記31) インターネットリンクを介してデータベース及びダウンロード可能なインストーラーを含むサーバーに接続されたウェブサイトにアクセスする工程と、
上記ウェブサイトから第1の識別コードをダウンロードする工程と、
上記ウェブサイトからコンピュータのメモリに、ソフトウエアアプリケーション及びトラッキングアシスタントモジュールを含む上記インストーラーをダウンロードする工程と、
上記ソフトウエアアプリケーション及び上記トラッキングアシスタントモジュールを上記コンピュータに組み込むため、上記第1の識別コードを上記インストーラーに挿入する工程と、
上記ソフトウエアアプリケーションモジュールが組み込まれた時刻の関数である第2の識別コードを生成する工程と、
上記第1の識別コード及び上記第2の識別コードを上記コンピュータの上記メモリに記録する工程と、
上記ソフトウエアアプリケーションの動作の関数であるスケジュールにしたがって、上記第1の識別コード及び上記第2の識別コードを上記サーバーのデータベースへ送信する工程とを有し、
上記トラッキングアシスタントは、上記第1の識別コード及び上記第2の識別コードを上記サーバーへ送信するため、インターネット接続を自動的に作動させる、コンピュータソフトウエアを追跡する方法。
(付記32) 上記第1の識別コード及び上記第2の識別コードは所定のスケジュールにしたがって上記サーバーへ送信され、
上記サーバーは上記第1の識別コード及び上記第2の識別コードが受信された時刻を記録する、付記31記載の方法。
(付記33) 上記ソフトウエアアプリケーションの使用状況に関するデータをトラッキングデータとして記憶する工程と、
上記第1の識別コード及び上記第2の識別コードが送信されたときに、上記トラッキングデータを送信する工程とを更に有する付記31記載の方法。
(付記34) インストーラーモジュールに固有の第1の識別コード及び登録データをデータベースに格納する手段と、
上記インストーラーモジュールによってソフトウエアアプリケーションがコンピュータに組み込まれる際に該インストーラーモジュールに固有の第1の識別コードを基に生成される固有の第2の識別コードを少なくとも含むトラッキングデータをコンピュータから受信する手段と、
上記第1の識別コードと上記受信した第2の識別コードとを用いてソフトウエアアプリケーションの使用状況を管理する手段と、
を具備するサーバー。
(付記35) 上記登録データの通知に応じて、上記ソフトウエアアプリケーションをコンピュータに組み込む際に必要な上記第1の識別コードを上記登録データの通知元に通知する、付記34記載のサーバー。
(付記36) インストーラーモジュールに固有の第1の識別コードを受信する手段と、
上記インストーラーモジュールによるソフトウエアアプリケーションの組み込み時に上記第1の識別コードを基に固有の第2の識別コードを生成する手段と、
上記第1の識別コードと上記第2の識別コードによりソフトウエアアプリケーションの使用状況を管理するサーバーに、少なくとも上記第2の識別コードを含むトラッキングデータを送信する手段と、
を具備するコンピュータ。
(付記37) コンピュータに、
インストーラーモジュールに固有の第1の識別コード及び登録データをデータベースに格納し、
インストーラーモジュールによってソフトウエアアプリケーションが装置に組み込まれる際に該インストーラーモジュールに固有の第1の識別コードを基に生成される固有の第2の識別コードを少なくとも含むトラッキングデータを該装置から受信し、
上記第1の識別コードと上記受信した第2の識別コードとを用いてソフトウエアアプリケーションの使用状況を管理する、
ことを実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体。
(付記38) コンピュータに、
ソフトウエアアプリケーションの組み込み時に固有の第1の識別コードを基に固有の第2の識別コードを生成し、
上記第1の識別コードと上記第2の識別コードによりソフトウエアアプリケーションの使用状況を管理するサーバーに、少なくとも第2の識別コードを含むトラッキングデータを送信する、
ことを実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体。
以上の説明の通り、本発明の配布可能なソフトウエアアプリケーションを追跡する方法及び装置は、ソフトウエアアプリケーションの動作及び配布を監視するため、二つの識別コードとトラッキングアシスタントを使用する。第1のコードは、好ましくは、ユーザがウェブサーバーにアクセスするときに作成されダウンロードされる識別コードである。第1の識別コード及び他の登録データはウェブサーバーに接続されたデータベースに記憶される。第2の固有インストールコードは、ソフトウエアアプリケーションがユーザのコンピュータに組み込まれるときに自動的に作成される。引き続いて、同じ第1のコードを用いてアプリケーションを組み込むと、異なるインストールコードが生成される。トラッキングアシスタントモジュールは、所定のスケジュールにしたがって、ネットワーク(インターネット)を介して両方のコードをデータベースに自動的に送信する。トラッキングアシスタントの一実施例は、アプリケーションの使用状況に関する他のデータ、たとえば、使用頻度或いは一般的に使用される特徴などを収集し、二つのコードと共にトラッキングデータとして送信する。トラッキングデータアナライザは、好ましくは、アプリケーションの許可されていない使用が行われたかどうかを判定し、又は、個別の顧客サポート及びサービス機能の提供を支援するため、データベースに接続される。
本発明の第1実施例の概略図である。 ソフトウエアモジュールがローカルコンピュータにダウンロードされ、組み込まれた本発明のサーバーを表す概略図である。 ウェブサイトからインストーラーモジュールをダウンロードする好ましい一動作シーケンスの説明図である。 アプリケーション及び本発明のトラッキングアシスタントを組み込む好ましい一動作シーケンスの説明図である。 アプリケーションが本発明のトラッキングアシスタントを始動させる好ましい一動作シーケンスの説明図である。 トラッキングアシスタントがサーバーに接続されたデータベースへトラッキングデータを通信する好ましい一動作シーケンスの説明図である。 サーバーが付加的なデータ解析及び制御機能を実行する本発明の第2実施例の概略図である。 トラッキングデータを受信するサーバーがソフトウエアアプリケーションをダウンロードしない本発明の第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の識別コードと前記第2の識別コードとを含むデータベースと、を有し、
    前記サーバーは、前記ソフトウェアプログラムの使用を追跡するために、前記データベースに記憶された前記トラッキングデータを調べるよう構成されたトラッキングアナライザを有することを特徴とするシステム。
  2. ダウンロードされたソフトウェアプログラムの使用を追跡するシステムであって、
    ソフトウェアプログラムと、前記ソフトウェアプログラムの動作を示すトラッキングデータを自動的に送信するトラッキングアシスタントを有するコンピュータと、
    前記トラッキングデータがネットワークを介して送信されるデータベースと、前記ソフトウェアプログラムの使用を追跡するために前記データベースに記憶された前記トラッキングデータを調べるように構成されたトラッキングアナライザとを有するサーバーと、を有し、
    前記トラッキングデータは、前記サーバーからの前記ソフトウェアプログラムのダウンロード要求を一意的に識別する第1の識別コードと、インストールされた前記ソフトウェアプログラムを一意的に識別する第2の識別コードとを含み、前記第2の識別コードは前記ソフトウェアプログラムが前記コンピュータにインストールされた時に前記コンピュータのインストーラにより生成され、前記第2の識別コードは前記第1の識別コードと一意的に関連づけられていることを特徴とするシステム。
  3. ダウンロードされたソフトウェアプログラムの使用を追跡する、コンピュータにより実行される方法であって、
    ソフトウェアプログラムと、前記ソフトウェアプログラムの動作に関するデータを記録して送信するように構成されたトラッキングアシスタントと、前記ソフトウェアプログラムのダウンロード要求を一意的に識別する第1の識別コードとを有するインストーラを受信する段階と、
    前記ソフトウェアプログラムと前記トラッキングアシスタントとをコンピュータにインストールする前記第1の識別コードの入力を受ける段階と、
    前記ソフトウェアプログラムがユーザにより前記コンピュータ上で動作できるように、前記第1の識別コードの入力に応じて、前記ソフトウェアプログラムと前記トラッキングアシスタントとを前記コンピュータに、前記インストーラによりインストールする段階と、
    前記コンピュータにおけるインストールされた前記ソフトウェアプログラムを一意的に識別する第2の識別コードであって、前記第1の識別コードと一意的に関連づけられている第2の識別コードを前記インストーラにより生成する段階と、
    前記コンピュータのメモリに前記第1の識別コードと前記第2の識別コードとを記録する段階と、
    前記ソフトウェアプログラムの使用を追跡するため前記第1と第2の識別コードを調べることができる遠隔サーバーのデータベースに前記第1の識別コードと前記第2の識別コードとを前記トラッキングアシスタントにより定期的に送信する段階と、を有し、
    前記トラッキングアシスタントは自動的にネットワークリンクを起動して前記第1の識別コードと前記第2の識別コードとを前記サーバーに送信することを特徴とする方法。
  4. ダウンロードされたソフトウェアプログラムを追跡する、コンピュータにより実行される方法であって、
    データベースとダウンロード可能なインストーラとを含むサーバーと関連づけられているウェブサイトにインターネットリンクを介してアクセスする段階と、
    ソフトウェアプログラムのダウンロード要求を一意的に識別する第1の識別コードを前記ウェブサイトからダウンロードする段階と、
    ソフトウェアプログラムとトラッキングアシスタントとを有する前記インストーラを前記ウェブサイトから前記コンピュータのメモリにダウンロードする段階と、
    前記ソフトウェアプログラムと前記トラッキングアシスタントとを前記コンピュータにインストールするために、前記第1の識別コードの入力を受ける段階と、
    前記ソフトウェアプログラムがユーザにより前記コンピュータ上で動作可能になるように、前記第1の識別コードの入力に応じて、前記ソフトウェアプログラムと前記トラッキングアシスタントとを前記コンピュータに前記インストーラによりインストールする段階と、
    前記ソフトウェアプログラムがインストールされた時間の関数である、インストールされた前記ソフトウェアプログラムを一意的に識別する第2の識別コードであって、前記第1の識別コードと一意的に関連づけられている第2の識別コードを前記インストーラにより生成する段階と、
    前記コンピュータのメモリの一部に前記第1の識別コードと前記第2の識別コードとを記録する段階と、
    前記ソフトウェアプログラムの動作の関数であるスケジュールにより、前記サーバーのデータベースに前記第1の識別コードと前記第2の識別コードとを送信する段階と、を有し、
    前記トラッキングアシスタントは、前記第1の識別コードと前記第2の識別コードとを前記サーバーに送信するため、インターネット接続を自動的に起動するように構成されていることを特徴とする方法。
JP2006256380A 1999-11-12 2006-09-21 配布可能なソフトウエアの自動追跡システム及び方法 Expired - Fee Related JP4588682B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/441,155 US6578199B1 (en) 1999-11-12 1999-11-12 Automatic tracking system and method for distributable software

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000345431A Division JP3905303B2 (ja) 1999-11-12 2000-11-13 配布可能なソフトウエアの自動追跡システム及び方法

Publications (2)

Publication Number Publication Date
JP2007018532A JP2007018532A (ja) 2007-01-25
JP4588682B2 true JP4588682B2 (ja) 2010-12-01

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 Before (1)

Application Number Title Priority Date Filing Date
JP2000345431A Expired - Fee Related JP3905303B2 (ja) 1999-11-12 2000-11-13 配布可能なソフトウエアの自動追跡システム及び方法

Country Status (2)

Country Link
US (1) US6578199B1 (ja)
JP (2) JP3905303B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11042364B2 (en) * 2018-06-29 2021-06-22 Advanced New Technologies Co., Ltd. One click application asset distribution

Families Citing this family (125)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763370B1 (en) * 1998-11-16 2004-07-13 Softricity, Inc. Method and apparatus for content protection in a secure content delivery system
US7017188B1 (en) * 1998-11-16 2006-03-21 Softricity, Inc. Method and apparatus for secure content delivery over broadband access networks
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
US7200632B1 (en) 1999-04-12 2007-04-03 Softricity, Inc. Method and system for serving software applications to client computers
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
US7695363B2 (en) 2000-06-23 2010-04-13 Igt Gaming device having multiple display interfaces
US7699699B2 (en) 2000-06-23 2010-04-20 Igt Gaming device having multiple selectable display interfaces based on player's wagers
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 アプリケーションソフトウエアの使用状況監視装置及びそのソフトウエアプログラム
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
US7047456B2 (en) * 2001-08-28 2006-05-16 Intel Corporation Error correction for regional and dynamic factors in communications
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 汪文虎 一种信息安全方法
KR20040067874A (ko) 2001-11-12 2004-07-30 소니 가부시끼 가이샤 정보 전달 시스템 및 방법, 정보 처리 장치 및 방법
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
US8021230B2 (en) 2004-08-19 2011-09-20 Igt Gaming system having multiple gaming machines which provide bonus awards
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
WO2006026730A2 (en) * 2004-08-30 2006-03-09 Iken Tissue Therapeutics, 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
US7890569B1 (en) * 2005-09-29 2011-02-15 Symantec Corporation Tracking time usage on a disconnected client over a period of time
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
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
US8346223B1 (en) 2005-11-07 2013-01-01 Flurry, Inc. Delivering a customized service to a mobile device using a link
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
US7862430B2 (en) 2006-09-27 2011-01-04 Igt Server based gaming system having system triggered loyalty award sequences
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
US8645948B2 (en) * 2006-12-12 2014-02-04 Qualcomm Incorporated Apparatus and methods for client-driven server-side installation
US20100017505A1 (en) * 2006-12-18 2010-01-21 Access Co., Ltd. Application updating management terminal device, system and program
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
US8868721B2 (en) 2008-05-29 2014-10-21 Red Hat, Inc. Software appliance management using broadcast data
US10657466B2 (en) 2008-05-29 2020-05-19 Red Hat, Inc. Building custom appliances in a cloud-based network
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
US20120265599A1 (en) * 2011-04-14 2012-10-18 Fiksu, Inc. Temporal tracking of mobile user behavior with respect to web-based advertisements associated with temporary and keyed id use in digital media content
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
US9183701B2 (en) 2011-09-30 2015-11-10 Igt Gaming system and method for rewarding players
US8641518B2 (en) 2011-09-30 2014-02-04 Igt Ticket-based trial account
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

Family Cites Families (36)

* Cited by examiner, † Cited by third party
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 富士通株式会社 ソフトウェア流通システムにおける識別子管理装置および方法ならびにソフトウェア流通管理装置および方法
CA2212574C (en) 1995-02-13 2010-02-02 Electronic Publishing Resources, Inc. 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
US6202207B1 (en) * 1998-01-28 2001-03-13 International Business Machines Corporation Method and a mechanism for synchronized updating of interoperating software
GB2333864B (en) * 1998-01-28 2003-05-07 Ibm Distribution of software updates via a computer network
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
AU5439700A (en) * 1999-05-07 2000-11-21 Zlectric Computer-based system and method for delivering and tracking advertisements

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11042364B2 (en) * 2018-06-29 2021-06-22 Advanced New Technologies Co., Ltd. One click application asset distribution

Also Published As

Publication number Publication date
JP2001202250A (ja) 2001-07-27
JP3905303B2 (ja) 2007-04-18
US6578199B1 (en) 2003-06-10
JP2007018532A (ja) 2007-01-25

Similar Documents

Publication Publication Date Title
JP4588682B2 (ja) 配布可能なソフトウエアの自動追跡システム及び方法
US10796347B2 (en) System and method for controlling distribution of electronic coupons
US7599850B1 (en) Method of and system for managing promotions for purchase transactions over a network
US7702536B1 (en) Method, system, apparatus, and computer-readable medium for tracking referrals and product sell-through
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
JP5848134B2 (ja) 最適化されたエンベッディド・ライブコンテンツを伴う電子メールを作成するためのシステム、方法およびユーザーインターフェース
US20080177603A1 (en) System and method for controlling distribution of electronic coupons
CA2074121C (en) System and method for selectively preventing a software program from being operable
US20100042490A1 (en) Electronic Coupon Distribution System
US20020128903A1 (en) Encrypted coupons
US20080027875A1 (en) System and method for remotely authenticating a device in a reward program
US20080010277A1 (en) Rich media file format and delivery methods
JPH11312274A (ja) 電子ショッピングシステム
US7519543B2 (en) Promotion method and system
EP1203281B1 (en) System for protecting information over the internet
US20040093229A1 (en) System and method for content distribution
JP2002149217A (ja) 管理・維持部品の提供方法およびその提供システム
JP2002109379A (ja) 電子情報の流通管理方法、システム、記録媒体、プログラム信号
US20100042652A1 (en) System for tracking distribution for internet-distributed works of authorship
KR20020007163A (ko) 컴퓨터 네트워크를 통한 쇼핑을 보조하기 위한 가상 희망리스트 생성 시스템 및 방법
JP2002236842A (ja) 電子広告における広告料金課金システム,電子クーポンサーバ,広告料金課金方法および広告料金課金プログラム
WO1999012087A2 (en) System for transmitting with encryption and displaying electronic books
US20050119975A1 (en) Automated licensing and access to distribution information for works of authorship
WO2011106391A9 (en) Online offer distribution system and method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061023

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061023

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100304

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: 20100831

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100908

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: 20130917

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees