(57)【要約】計算デバイスを購入したユーザーによる使用を意図して、この計算デバイス上に、アプリケーション能力サブセットが、購入前に提供される。このアプリケーションの一部は「スターター・アプリケーション」と呼ばれる。スターター・アプリケーションが実行しているときに、スターター・アプリケーションはユーザーからの入力を監視し、ユーザーにアップグレードを知らせる好機を確認し、次いでアップグレードを購入するようにユーザーを勧誘することができる。スターター・アプリケーションは、勧誘を補助してトランザクションを完了させるアクセス制限付きブラウザーを使用してサーバーに連絡することができる。トランザクションを完了すると、アップグレードが計算デバイスに提供される。このアップグレードは、前述のアプリケーションの完全能力バージョン、テンプレート、クリップ・アート、または他のソフトウェアを含むことができる。アップグレードは、このアップグレードを計算デバイスに送信すること、またはコンピューター・デバイス上に既に格納されているアップグレードのロックを解除するための許可キーを提供することを伴うのでもよい。【選択図】図４
2015509243.tif 000002
【特許請求の範囲】
【請求項１】
計算デバイスにおいてアップグレードを提供する方法であって、
前記計算デバイスにおけるプロセッサー上で実行するスターター・アプリケーションによる入力を監視するステップであって、前記入力が前記スターター・アプリケーションのユーザーによって提供される、ステップと、
前記スターター・アプリケーションによって、前記ユーザーからの入力に基づいて、前記スターター・アプリケーションに対するアップグレードを前記ユーザーに提供する好機を確認するステップと、
前記スターター・アプリケーションに対する前記アップグレードを購入するように前記ユーザーを勧誘するステップと、
前記アップグレードを購入するための前記スターター・アプリケーションによるトランザクションを完了するステップと、
前記計算デバイスにおいて前記アップグレードへのアクセスを可能にするステップと、
を含む、方法。
【請求項２】
請求項１記載の方法において、
前記スターター・アプリケーションが、アプリケーションの完全バージョンによって提供される１組の能力のサブセットを提供し、
前記アップグレードが、前記アプリケーションの完全バージョンを含む、方法。
【請求項３】
請求項２記載の方法において、前記アップグレードを購入するように前記ユーザーを勧誘するステップが、前記ユーザーに以前に何回勧誘を提案したかについて判定するステップを含む、方法。
【請求項４】
請求項２記載の方法において、
アップグレードを前記ユーザーに提供する好機を確認するステップが、前記ユーザーによるキーストローク入力を監視し、前記キーストローク入力においてキーワードを識別するステップを含む、方法。
【請求項５】
請求項１記載の方法において、スターター・アプリケーションが、前記計算デバイスの前記ユーザーへの販売前に、前記計算デバイスにおける実行のために提供される、方法。
【請求項６】
命令を格納するコンピューター読み取り可能記憶媒体であって、前記命令が計算デバイスのプロセッサーによって実行されると、前記プロセッサーに、
前記プロセッサー上で実行するスターター・アプリケーションによる入力を監視させ、前記入力が前記スターター・アプリケーションのユーザーによって提供され、前記スターター・アプリケーションが、完全なアプリケーションの機能のサブセットを含み、
前記ユーザーからの入力に基づいて、アップグレードを受けるように前記ユーザーを勧誘する好機を確認させ、
前記スターター・アプリケーションによって、前記アップグレードを購入するように前記ユーザーを促すことによって、前記アップグレードを購入するように前記ユーザーを勧誘させ、
前記アップグレードを購入するためのトランザクションを完了させ、
前記計算デバイスによる前記アップグレードへのアクセスを可能にさせる、コンピューター読み取り可能記憶媒体。
【請求項７】
請求項６記載のコンピューター読み取り可能記憶媒体であって、更に、命令を含み、実行されると前記プロセッサーに、
前記ユーザーが前記アップグレードを購入したことをサーバーに通知させ、
前記プロセッサーにおいて、前記サーバーからの許可キーを受け取らせ、
前記許可キーを処理したことに応答して、前記完全なアプリケーションへのアクセスを前記ユーザーに付与させる、コンピューター読み取り可能記憶媒体。
【請求項８】
請求項６記載のコンピューター読み取り可能記憶媒体において、前記スターター・アプリケーションが、ワード・プロセッシング・アプリケーションの完全バージョンの能力削減セットを含むワード・プロセッシング・アプリケーションであり、更に、命令を含み、実行されると前記プロセッサーに、
前記スターター・アプリケーションを用いて編集されたドキュメントの少なくとも一部を、アクセス制限付きブラウザー・モジュールに提供させ、
前記ドキュメントの少なくとも一部をサーバーに提供するように、前記アクセス制限付きブラウザー・モジュールに指令させ、
前記ドキュメントのタイプのアップグレードの指示を前記サーバーから受けさせる、コンピューター読み取り可能記憶媒体。
【請求項９】
ユーザーにアップグレードを提供するシステムであって、
ワード・プロセッシング・アプリケーションの完全バージョンの能力削減セットを含むスターター・アプリケーションを格納するメモリと、
プロセッサーと、
を含み、前記プロセッサーが、
ワード・プロセッシング・ドキュメントを編集するユーザーから入力を受け、
要求された機能が前記スターター・アプリケーションでは利用できないことを前記ユーザーに知らせ、
前記要求された機能が前記完全バージョンでは利用可能であることを前記ユーザーに知らせ、
前記完全バージョンを購入するように前記ユーザーを勧誘し、
前記ワード・プロセッシング・アプリケーションの完全バージョンへのアクセスを前記ユーザーに付与する、
ように構成される、システム。
【請求項１０】
請求項９記載のシステムであって、更に、
インターネットを通じてサーバーにアクセスするように構成された入力／出力インターフェースを含み、
前記プロセッサーが、更に、
前記ワード・プロセッシング・アプリケーションの完全バージョンを前記ユーザーに提供するために、アクセス制限付きブラウザー・モジュールにアクセスするように構成される、システム。
【発明の詳細な説明】
【背景技術】
【０００１】
ラップトップまたはデスクトップ・コンピューターのような消費者向け計算デバイスの製造業者は、ユーザーが計算デバイスを購入した後に種々の用途のために計算デバイスを直ちに使用することができるように、製造時にソフトウェアを計算デバイスに予めロードしておくことがある。例えば、多くのコンピューターには、あるバージョンのワード・プロセッシング・ソフトウェアが予めロードされているので、ユーザーは手紙または他のそのようなドキュメントを作成するためにコンピューターを直ちに使用することができる。スプレッドシート処理アプリケーションというような他のアプリケーションも同様に含まれることがある。コンピューターの購入者がそのコンピューターを直ちに使用することができると、そのコンピューターにおいて即座の価値を認めることができる。
【０００２】
予めロードされたソフトウェア・アプリケーションは、既存のソフトウェア・アプリケーションの能力削減セットに基づくことがある。このような予めロードされたソフトウェアは、一般に、ソフトウェア・アプリケーションの「完全」バージョンの「スターター」アプリケーションと呼ばれる。つまり、コンピューター上に予めロードされるワード・プロセッシング・スターター・アプリケーションは、このアプリケーションの完全バージョンにおいて利用可能な機構および能力のサブセットを有すればよい。ソフトウェア製造業者は、ソフトウェア・アプリケーションのスターター・アプリケーションを提供することによって、ユーザーがそのソフトウェア・アプリケーションに親しみを覚えることができ、ユーザーが後にそのソフトウェア・アプリケーションの完全バージョンを購入する可能性が高くなることが分かった。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
スターター・アプリケーションのユーザーは、スターター・アプリケーションが彼らの当初の必要性を満たすには十分であると考えることもある。しかしながら、ユーザーがスターター・アプリケーションの使用を習熟していくに連れて、ユーザーはある種の機能を実行しようとするときに機能不足(deficiency)に遭遇するかもしれず、完全バージョンにおける追加能力が有用になり得るときを常に把握してはいないかもしれない。つまり、入手可能な完全バージョンにおける追加機能性をユーザーに適時に知らされないと、完全バージョンが追加の便益をユーザーに与えることをユーザーが認められないこともある。そのため、ユーザーが完全バージョンのアプリケーションを購入する可能性が低くなることもあり得る。
【０００４】
本明細書において本開示が紹介されるのは、これらおよびその他の考慮事項に関してである。
【課題を解決するための手段】
【０００５】
ソフトウェア・アップグレードを購入するためのコンテキスト関連勧誘(contextual solicitation)を提示する概念および技術について説明する。コンテキスト関連勧誘は、アプリケーション・プログラムのスターター・バージョンによって開始されればよく、ソフトウェア・アップグレードは、アプリケーション・プログラムの完全バージョンとすればよい。あるいは、ソフトウェア・アップグレードは、テンプレート、クリップ・アート、あるいはスターター・アプリケーションまたは完全なアプリケーションと対話処理するように設計されたチュートリアル(tutorial)というような、アプリケーションと共に動作する他の関連ソフトウェアを含むのでもよい。
【０００６】
一実施形態では、アップグレードを提供する方法は、計算デバイスにおいてプロセッサー上で実行するスターター・アプリケーションによる入力を監視する動作を含み、入力はスターター・アプリケーションのユーザーによって提供される。更に、この方法は、ユーザーからの入力に基づいて、スターター・アプリケーションに対するアップグレードを提供する好機をスターター・アプリケーションによって確認し、スターター・アプリケーションのアップグレードを購入するようにユーザーを勧誘する動作を含む。更に、この方法は、アップグレードを購入するためのトランザクションをスターター・アプリケーションによって完了し、計算デバイスにおいてアップグレードへのアクセスを可能にする動作も含む。
【０００７】
他の実施形態では、コンピューター読み取り可能記憶媒体が命令を格納し、この命令が計算デバイスのプロセッサーによって実行されると、このプロセッサーに、当該プロセッサー上で実行するスターター・アプリケーションによる入力を監視させる。この入力は、スターター・アプリケーションのユーザーによって供給され、スターター・アプリケーションは完全なアプリケーションの機能のサブセットを含む。更に、命令は、プロセッサーに、ユーザーからの入力に基づいて、アップグレードを受けるようにユーザーを勧誘する好機を確認させ、アップグレードを購入するようにユーザーに促すことによって、アップグレードを購入することをスターター・アプリケーションによってユーザーを勧誘させ、アップグレードを購入するためのトランザクションを完了させ、アップグレードを計算デバイスに供給させる。
【０００８】
他の実施形態では、ユーザーにアップグレードを提供するシステムは、ワード・プロセッシング・アプリケーションの完全バージョンの能力削減セットを含むスターター・アプリケーションを格納するメモリと、プロセッサーとを含む。プロセッサーは、ワード・プロセッシング・ドキュメントを編集するユーザーからの入力を受け、要求された機能がスターター・アプリケーションでは入手できないことをユーザーに知らせるように構成される。更に、プロセッサーは、要求された機能は完全バージョンでは入手可能であることをユーザーに知らせ、完全バージョンを購入するようにユーザーを勧誘し、ワード・プロセッシング・アプリケーションの完全バージョンをユーザーに提供するように構成される。
【０００９】
この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられる。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を限定するために用いられることを意図するのでもない。更に、特許請求される主題は、本開示のいずれかの部分に記されるいずれかの欠点を解決する実施態様にも全ての欠点を解決する実施態様にも限定されない。
【図面の簡単な説明】
【００１０】
【図１】図１は、本明細書において説明する能力(capabilities)を使用する種々の計算デバイスの一コンテキストの図である。
【図２】図２は、コンテキスト関連勧誘を提示し、アップグレードのためにサーバーにアクセスするスターター・アプリケーションのアーキテクチャーの図である。
【図３】図３は、ユーザーにアップグレードを勧誘するスターター・アプリケーションの一実施形態のユーザー・インターフェースである。
【図４Ａ】図４Ａは、いつユーザーにアップグレードを勧誘するか決定するためにユーザー入力を処理するスターター・アプリケーションのプロセス・フローである。
【図４Ｂ】図４Ｂは、いつユーザーにアップグレードを勧誘するか決定するためにユーザー入力を処理するスターター・アプリケーションのプロセス・フローである。
【図５】図５は、ユーザーにアップグレードを勧誘するためにスターター・アプリケーションを実行する計算デバイスのコンピューター・アーキテクチャーの図である。
【発明を実施するための形態】
【００１１】
以下の詳細な説明では、その一部をなす添付図面を参照する。添付図面は、具体的な実施形態または例を例示として示す。これより図面を参照するが、様々な図にわたって同様の番号は同様のエレメントを表し、描画案内(drawing guide)を構成する態様を紹介する。
【００１２】
前述のように、多くのコンピューター製造業者は、販売時に計算デバイス上に予めロードされたソフトウェアを含むようにソフトウェア製造業者との同意を形成することが有益であることが分かった。このため、ソフトウェア製造業者は、コンピューター上に予めロードするために、ソフトウェアをコンピューター製造業者に提供する。ソフトウェアを予めロードしておくと、計算デバイスを購入した後における購入者の生産性を促進することができる。これによって、計算デバイスを購入した後、ユーザーは計算デバイスを直ちに使用して種々の機能を実行することが可能になる。ソフトウェア製造業者は、機能性を抑えたアプリケーションを提供することが多い。このようなアプリケーションは、本明細書に限って、ソフトウェア・アプリケーションの「スターター」バージョンと呼ばれることがある（したがって、本明細書では「スターター・アプリケーション」または「スターター・バージョン」と呼ばれる）。完全な１組の能力を有するソフトウェア・アプリケーションのバージョンは、「完全なアップリーケーション」または「完全バージョン」と呼べばよいであろう。
【００１３】
スターター・アプリケーションを予めロードすることによって、購入者は、そのソフトウェアを直ちに使用し始め、ソフトウェアに親しみを覚えることができる。スターター・アプリケーションは、ワード・プロセッシング・プログラム、ゲーム、スプレッドシート・プログラム、チュートリアル・プログラム等とすることができる。通例、スターター・アプリケーションは、そのスターター・アプリケーションがそれ自体で有用となることを可能にする１組の中核機能を含むが、それよりも進んだ機能や能力は除去される、即ち、ディスエーブルされる。
【００１４】
スターター・アプリケーションと完全なアップリーケーションとの関係は、２つのレベルの機能性、即ち、削減装備組および完全装備組を有する２つのバージョンがあるアプリケーションと見なすことができる。本明細書において説明する概念の他の実施形態は、２つよりも多いレベルの機能性を有するソフトウェア・アプリケーションにも適用することができる。例えば、あるソフトウェア・アプリケーションには、３つの機能性レベル、即ち、スターター・レベル、上級レベル、およびプロ・レベルがパッケージ化されることもある。他の実施形態はこれよりも多いレベルを有することもある。更に、本明細書において開示する概念は、アプリケーションの現行レベル・バージョンからのアップグレードだけに適用される必要はなく、計算デバイス上において予めロードされたバージョンからアップグレードするときだけに適用される必要もない。本明細書における概念は、ユーザーがどのようにして最低レベルのソフトウェア・アプリケーションを入手したかには関係なく、上位バージョンへのアップグレードに適用することもできる。更に、ユーザーは、アプリケーションの中間バージョンを「飛ばして」最新または最上位バージョンにアップグレードすることによって、アップグレードすることもできる。更に、他のタイプのアプリケーションがアップグレードに関連付けられてもよい。しかしながら、例示の目的に限って、本明細書における概念および技術は、主に計算デバイス上に予めロードされたスターター・アプリケーションに関して説明し、更にユーザーが完全バージョンにアップグレードする場合について説明する。
【００１５】
スターター・アプリケーションを使用した後であればいずれの時点でも、ソフトウェア・アプリケーションの最大の生産性または有用性を達成するために、ユーザーは次に高いレベル、または完全アプリケーションを後に購入することができる。しかしながら、ユーザーは、追加の能力が有用になり得るときを認められないかもしれない。言い換えると、ユーザーがスターター・アプリケーションにおいてある機構を使用できない場合、これらの機構は完全なアプリケーションであれば存在し利用可能であることを、ユーザーが知らないのかもしれない。したがって、適切な時点にユーザーに知らせることによって、追加の機構がいつ有用であるかユーザーが知ることを可能にする。適した時点においてユーザーに完全なアプリケーションを得るようを勧誘することによって、ユーザーがアップグレードを購入する可能性を著しく高めることができる。
【００１６】
更に、完全なアプリケーションを得ることだけでなく、現行バージョンのアプリケーションに対する付加価値能力を提供する他のアドオンを得ることもユーザーに勧誘することができる。アドオンは、テンプレート、チュートリアル、クリップ・アート等の形態を取ることができる。「アップグレード」という用語は、本明細書において用いられる場合、ユーザーに提供することができるあらゆる生産性向上モジュールを指し、アプリケーションの機能レベルのアップグレード（完全なアプリケーション）、および／またはスターター・アプリケーションまたは完全なアプリケーションで動作するテンプレート・ライブラリのようなあらゆるアドオンを含む。実施形態では、アップグレードが、他のタイプのアプリケーションであっても、スターター・アプリケーションと統合するものであればよい。例えば、スターター・アプリケーションがワード・プロセッシング・アプリケーションであり、このワード・プロセッシング・アプリケーションが描画オブジェクトを編集しワード・プロセッシング・ドキュメントに挿入することを可能にするのでもよい。ユーザーが描画オブジェクトを編集し挿入する（またそのように繰り返し行う）のを観察した後、ユーザーにアップグレードを促すことができる。この例では、ワード・プロセッシング・アプリケーションが、アップグレードを購入するように、ユーザーを勧誘することができる。このアップグレードは描画アプリケーションである。
【００１７】
アップグレードは、生産性向上モジュールを含む(encompass)ことができ、このモジュールは、どのように既存の機構を使用するかというような、更なる情報をユーザーに提供する。つまり、テキスト、グラフィカル・プレゼンテーション、ビデオ、または他の形態で、既存の機構をどのように使用するかについてのチュートリアルが、拡張機能と共に、好機にユーザーに提供されるのでもよい。アップグレードが、割引を提案する特別な提案を含んでもよい。アップグレードは、無料のまたは割引したお試し版(trial)を含んでもよく、購入トランザクションを完了することを約束せずに、通過の能力を検査し使用することができる。他の実施形態では、制限回数または制限期間だけある種の機構または識別された能力を試すことを、ユーザーに提案するのでもよい。この時間の後、再度アップグレードを得るようにユーザーを勧誘してもよい。
【００１８】
先に注記したように、ユーザーがアップグレードの存在を知らないかもしれない。知っていても、ユーザーは、アップグレードが、ユーザーによって現在実行されている特定の機能またはタスクに関連があることは知らないのかもしれない。適した時点にユーザーを勧誘するには、ユーザーが現在どのようにアプリケーションと対話処理しているのかについて、および何のためにユーザーはアプリケーションを使用しているのかについてのスターター・アプリケーションによるコンテキスト理解を達成することが必要になる。これは、ユーザーの現在のアプリケーション使用にいつアップグレードが関連するか識別し、その時点にしかるべきアップグレードをユーザーに勧誘することが必要となる。
【００１９】
本明細書において開示する能力をどのように使用することができるかという１つのコンテキストを図１に示す。図１は、スマート・フォン１０１、ラップトップ・コンピューター１０２、またはタブレット・コンピューター１０５というような種々の計算デバイスを含むシステム１００を示す。これらの計算デバイスは、計算デバイスに格納された種々のアプリケーションを実行することができる。これらのアプリケーションは、計算デバイスの製造業者によって、既に計算デバイス上にロードされているのでもよい。これらの計算機のタイプは例示であり、本明細書において開示する概念の適用を限定することを意図するのではない。
【００２０】
これらの計算デバイスは、インターネット１０４を通じて、クラウド計算システム１０６によって提供される種々のサービスにアクセスすることができる。計算デバイスは、デスクトップ・コンピューター、パーソナル・ディジタル・アシスタント、電子書籍リーダー等を含むことができる。計算デバイスは、ワイヤレス接続１１５、１１７を利用して、クラウド計算システム１０６と相互作用することができる。これらのデバイスのワイヤレス接続は、一実施形態では、インターネット１０４によってクラウド計算システム１０６に伝達される。ワイヤレス接続は、種々の既に利用可能な技術に基づくことができ、セルラ・サービス・プロバイダーによって提供されるセルラ・インフラストラクチャ１７０に由来する、またはワイヤレス技術（例えば、WiMax、WiFi等）を伴う種々のセルラ系技術（ＣＤＭＡ、ＧＳＭ（登録商標）、４Ｇ、ＥＤＧＥ等）を含む。有線技術は、ＩＳＤＮ、ケーブル・モデム、ＤＳＬ、および他の周知の形態に基づくことができる。
【００２１】
インターネット１０４を通じた有線１０３およびワイヤレス１１５、１１７通信によって得られる接続(connectivity)は、計算デバイスに、クラウド計算システム１０６におけるサービス１０８へのアクセスを付与する。また、計算デバイス上で実行する種々のアプリケーションもサーバー１０８と相互作用することができる。本明細書において例示する概念は、１つのサーバー１０８に言及するのでもよいが、クラウド計算システム１０６における種々のサーバーが関与することもできる。例えば、デバイスによってアクセスされた１つのサーバー１０８が、次に他のサーバー１１３またはデータ・ストア１０９にアクセスしてサービスをユーザーに提供することもできる。このように、ある種の実施形態では、複数のダウンロード・サーバーが使用されてもよい。
【００２２】
サーバー１０８は、ユーザーに代わって、種々のアプリケーション・プログラム１２０を格納および／または実行することができる。これらは、１つ以上のサーバーに跨がって共有または分散型で実行され、計算デバイス１０１、１０２、または１０５と相互作用するのでもよい。アプリケーション・プログラム１２０は、グラフィック向きプログラムを作成し編集するための描画アプリケーション１２１を含むこともできる。画像、ビデオ等を編集するアプリケーションも、描画アプリケーションの範囲内に該当すると見なすことができる。他の形態のオーサリング・アプリケーション１２５も、テキスト・ドキュメントまたはスプレッドシート・ドキュメントというようなドキュメントを作成し編集することができる。
【００２３】
サーバー１０８上で実行する他のアプリケーションは、グループ関係メッセージングおよび通信のためのソーシャル・メディア・アプリケーション１２０を含むことができる。他に存在するアプリケーション・プログラムは、電子メール／メッセージング・アプリケーション１３５であってもよく、インスタント・メッセージングを含む種々のメッセージング能力に対処する(allow for)ことができる。通信アプリケーション１４０は、ビデオ・チャットまたは音声通信に対処することができる。カレンダー・アプリケーション１４５は、会合や催しの計画に対処することができる。交流アプリケーション１５０は、ユーザーに対する連絡先情報の編成に対処することができる。ストリーミング・メディア・アプリケーション１５５は、オーディオまたはビデオ・ファイルというような、デジタル・データのストリーミングに対処することができる。これらのアプリケーションの各々は、サーバー１０８がデータ・ストア１０９に維持することができるデータを格納することができる。一方、データ・ストア１０９は、種々の記憶システムを構成することができる。
【００２４】
一実施形態では、ユーザーが、ラップトップ１０２のような、計算デバイスにおいてアプリケーション・プログラムを実行しているのでもよい。このアプリケーション・プログラムは、スターター・アプリケーションである。実施形態では、スターター・アプリケーションが、起動しインターネット１０４を通じて送られるメッセージを受信することによって、サーバー・コンピューター１０８の内１つと通信することもできる。
【００２５】
更に的を絞ったコンテキストを図２に示す。図２は、クラウド計算システム１０６におけるサービス１０８にアクセスすることができる計算デバイス１０２を含むシステム２００を示す。ラップトップ１０２にはスターター・アプリケーション・パッケージ２１０がロードされ、この例では、スターター・アプリケーション・プログラムのスイート(suite)である。具体的には、スターター・アプリケーション・パッケージ２１０のスイートは、スターター・アプリケーション２１５ａおよび２１５ｂを含む。これらのスターター・アプリケーション２１５ａおよび２１５ｂは、ワード・プロセッシング・プログラム、スプレッドシート・プログラム、スライド・プレゼンテーション・プログラム、ゲーム、チュートリアル等というような、任意のタイプの機能性削減アプリケーション・プログラムとすることができる。図２に示す実施形態では、スターター・アプリケーション２１５ａは、ワード・プロセッシング・アプリケーションであると仮定し、スターター・アプリケーション２１５ｂはスプレッドシート・プログラムであると仮定する。
【００２６】
各スターター・アプリケーション２１５ａおよび２１５ｂは、それぞれ、勧誘ロジック２２０ａ、２２０ｂを組み込むことができる。これは、一実施形態では、勧誘ロジックをスターター・アプリケーションに統合することによって遂行することができ、また他の実施形態では、勧誘ロジックをスターター・アプリケーションと密に結合することによって遂行することができる。勧誘ロジック２２０ａ、２２０ｂは、特定のスターター・アプリケーション毎に設計することができる。つまり、スターター・アプリケーション２１５ａの勧誘ロジック２２０ａは、スターター・アプリケーション２１５ｂの勧誘ロジック２２０ｂとは異なってもよい。何故なら、勧誘ロジック２２０ａはワード・プロセッシングのコンテキストに特化される(center on)からである。しかしながら、後で論ずるように、勧誘ロジック２２０ａ自体をアップグレードすることができる。勧誘ロジック・モジュール２２０ａ、２２０ｂは、通例、同様の機能を実行するが、その機能とはユーザーにアップグレードを勧誘するのに適した時期を確認することである。つまり、勧誘ロジックは、実施形態では、ある種の単語を識別する、またはスターター・アプリケーション２１５ａでは利用できないが完全バージョンのアプリケーションでは利用できるある種の機能を識別する能力というような、共通ロジックを共有してもよい場合もある。勧誘ロジック２２０ａは、スターター・アプリケーション２１５ａと相互作用して、ランタイムにおいてコンテキストを判定することもできる。例えば、勧誘ロジック２２０ａは、どのようなタイプのドキュメントが開いているのか、どれ位頻繁にユーザーはスターター・アプリケーションを用いてこの種のドキュメントと対話処理していたか等を確認することができる。
【００２７】
各スターター・アプリケーション２１５ａおよび２１５ｂは、通例、アクセス制限付きブラウザー２３５ａ、２３５ｂにアクセスする。アクセス制限付きブラウザーは、ウェブ・ブラウザーに組み込まれるとよい機能性のサブセットを組み込むが、そのアクセスが制御され、スターター・アプリケーションに制限される。コンピューター１０２における他のアプリケーションは、この機能性にアクセスできないのでもよく、ブラウザーの機能性における一定の制限が定められてもよい。例えば、サーバー１０８がアクセスできるコンピューター１０２におけるリソースが、ブラウザーによって制限されてもよい。したがって、本明細書ではこれを「アクセス制限付き」ブラウザーと呼ぶ。しかしながら、他の目的で他のアプリケーションがアクセス制限付きブラウザーを組み込むことを排除するものはない。一実施形態では、各アクセス制限付きブラウザー２３５ａおよび２３５ｂは、機能が同一であってもよい。他の実施形態では、スターター・アプリケーション・パッケージ２１０において、１つのアクセス制限付きブラウザー２３５ａが全てのスターター・アプリケーション２１５ａおよび２１５ｂによって共有されるのでもよい。例示の目的のために、以下では１つのスターター・アプリケーション、即ち、ワード・プロセッシングを目的とするスターター・アプリケーション２１５ａに関して概念を説明する。
【００２８】
スターター・アプリケーション２１５ａは、サーバー１０８においてＵＲＬまたは他のアドレス識別子によって識別されるサービスと相互作用するために、アクセス制限付きブラウザー２３５ａにアクセスすることができる。また、サーバー１０８はアプリケーション１２０を実行することもでき、アプリケーション１２０は、ドキュメント・テンプレート、ティップスおよびヘルプ、クリップ・アート、広告グラフィクス（静止およびビデオ）、および当業者には知られている他のアップグレードを提供することもできる。他の実施形態では、勧誘ロジックがスターター・アプリケーション２１５ａと統合されず、サーバー１０８において実行される。この実施形態では、スターター・アプリケーション２１５ａは、外部で実行される勧誘ロジックにトリガーし(trigger)、コンテキスト情報を勧誘ロジックに、トリガーしたときに、渡すことができる。更に、新たな勧誘ロジックをスターター・アプリケーションにダウンロードすることによってまたはサーバーにおいて勧誘ロジックをアップグレードすることによって、勧誘ロジックをときの経過と共にアップグレードすることができる。
【００２９】
一実施形態では、スターター・アプリケーション２１５ａはワード・プロセッシング・プログラムであり、実行されると、ワード・プロセッシング能力の能力削減セットを提供する。勧誘ロジック２２０ａは、ユーザーの活動を監視して、ユーザーを勧誘する好機が来たときを確認することができる。これは、どのアクションをユーザーが現在ドキュメント上で実行しているかについての、スターター・アプリケーション２１５ａと勧誘ロジック２２０ａとの間の通信を伴うことがある。この通信は、機能、キーストローク、あるいは最後の数個の機能またはキーストロークの履歴を含むことができる。また、この通信は、どのタイプのオブジェクトが処理されているか、どれ位の間スターター・アプリケーションが使用されたか、どのヘルプ機能が呼び出されたか等というようなコンテキスト情報を提供することもできる。  
【００３０】
例えば、図３に移ると、ディスプレイ３００は、スターター・アプリケーション２１５ａを用いて編集されるドキュメント３１５を示す。図３において、ユーザーには、ディスプレイ３０５内にユーザー・インターフェース３００が設けられる。ディスプレイ３０５は、種々のワード・プロセッシング機能を表示するスターター・アプリケーション・メニュー・バー３１０、編集ペインにおけるドキュメント３１５の画像(view)、および勧誘ペイン３２０を含む。この実施形態では、勧誘ペイン３２０は、ドキュメント３１５の右側に配置されたエリアである。勧誘ペイン３２０は、ユーザーが行っていることのコンテキストに基づいて、テキスト・メッセージ、画像、および／またはビデオをユーザーに供給することができる。
【００３１】
図３におけるユーザー・インターフェース３００の図は、提供することができる全ての機能および関連するアイコンを図示するのではない。ドキュメントのドキュメント３１５(document 315 of the document)における正確なテキストは、様々に変化することがあり、例示の目的に限って、履歴書の冒頭(beginning)を表す。
【００３２】
勧誘ロジック２２０ａは、ドキュメント３１５の構造を解析することができ、そしてドキュメント３１５が何らかの種類の履歴書であることを確認することができる。スターター・アプリケーションにおける勧誘ロジック２２０ａは、これをドキュメントのフォーマットおよび構造から、例えば、日付の位置、氏名が最初のページの中央に位置すること、および／またはファイル名（例えば、ファイルは「ジョン・スミスの履歴書」と呼ばれるとよい）に基づいて導くことができる。ドキュメントが履歴書であると判定するためには、いずれの数の規則でも使用することができる。
【００３３】
これらの規則は、決定論的または確率論的であることができる。例えば、ユーザーがアップグレードを要求しそうなときを確認するために、モデルを使用することができる。種々のユーザーからのアップグレードに対する集合的情報を維持し分析して、現在のユーザーが辿っているパターンを識別子、ユーザーが現在の状況のコンテキストにおいてアップグレードする可能性を予測することができる。このモデルは、ユーザーのコンピューターにおいて実行するまたはサーバー１０８において実行する勧誘ロジックに基づくことができる。このモデルは、アップグレードに対する様々な好機および関連する確率を識別し、成功の可能性が最も高い好機を選択することができる。たとえば、このモデルは、ユーザーがスターター・アプリケーションにおいてある機能を１０回以上呼び出した後、この機能に関係するあるタイプのアップグレードをユーザーに勧誘することが適当であると予測することができる。
【００３４】
一旦勧誘ロジックが、ユーザーが履歴書を作っていると判断すると、勧誘ロジックは勧誘ペイン３２０において種々のタイプのアップグレードをユーザーに促すことができる。例えば、ドキュメントが履歴書である場合、勧誘ペイン３２０において、代表的な履歴書のテンプレートを見ることまたは履歴書起草指針を受けるようにユーザーに促すことができる。ユーザーには、テンプレートおよび／または指針を見る目的でサーバー１０８に接続するためのリンク３２５が提示され、これを選択することができる。また、ユーザーには、効果的な履歴書の書き方についてのオンライン・チュートリアルを見るためのリンクを提示することもできる。これらの勧誘に対するユーザーの応答を分析し、いつどのように他のタイプの要求に対してユーザーを勧誘するかについてフィードバックを与えることもできる。更に、ユーザーの応答が、勧誘モデルを更新するために使用されてもよい。この勧誘モデルは、このユーザーまたは他のユーザーに対する他の勧誘をトリガーする基準となることができる。勧誘モデルは、ユーザーのコンピューターまたはネットワーク・ベースのサーバーにおける勧誘ロジックにおいて実行することができる。
【００３５】
図２に戻り、スターター・アプリケーション２１５ａは、アクセス制限付きブラウザー２３５ａと相互作用することができる。実施形態では、勧誘ロジック２２０ａは、サーバー１０８における対応する勧誘ロジックと相互作用して、編集されるドキュメントのタイプ（例えば、履歴書、手紙、メモ等）を確認することができる。種々の実施形態において、勧誘ロジック２２０ａは、このドキュメント、ドキュメントの一部、ファイル名、または他の情報に関連付けられたキーストローク履歴をサーバー１０８に供給することもできる。他の実施形態では、勧誘ロジック２２０ａは、アプリケーションのタイプ、インストールした日付、使用頻度、インターネット関連クッキー、および他の使用の側面(aspects)を供給することができる。サーバー１０８は、本ドキュメントに適用可能なアップグレードのタイプに関する情報を提供することによって、応答することができる。
【００３６】
例えば、勧誘ロジック２２０ａは、ある種のドキュメントに対するある種の組み合わせ機能の使用頻度に注目することができる。具体的には、ユーザーがあるタイプのドキュメント・オブジェクトのためにその機能を呼び出す前に「ヘルプ」機能を頻繁に呼び出し、長時間活動がないことと結び付けられると、この状態は、ユーザーがそのタイプのドキュメントに対してその機能を使用するときにユーザーが難問に直面していることを示唆することができる。この１組の状態は、その特定の機能を中心とする指導プログラムの形態とした特定のアップグレードの勧誘をトリガーすることができる。しかしながら、ユーザーがヘルプ機能を頻繁に呼び出さない場合、これはユーザーがその機能の使い方を知っていることを示唆するので、指導機能の勧誘は生産的ではないであろう。
【００３７】
他の実施形態では、勧誘ロジック２２０ａは、サーバー１０８にアクセスすることなく、ドキュメントのタイプを判定することができる。次いで、勧誘ロジック２２０ａは、適用可能でありユーザーにとって有用であると思われるタイプのアップグレードをユーザーに知らせて、このアップグレードを得るようにユーザーを勧誘することができる。次いで、勧誘ロジック２２０ａは、アクセス制限付きブラウザー２３５ａを使用し、サーバー１０８からのアップグレードにアクセスすることができる。次いで、サーバー１０８は、要求されたアップグレードをユーザーに提供することができる。このアップグレードは、テンプレート、指針、または他の形態のアップグレードであってもよい。
【００３８】
アクセス制限付きブラウザー２３５ａが制限されるというのは、そのアクセスがスターター・アプリケーション２１５ａによって制御されることからである。実施形態では、ユーザーまたは他のアプリケーションがアクセス制限付きブラウザー２３５ａに直接アクセスできない場合もある。スターター・アプリケーション２１５ａは、アクセス制限付きブラウザー２３５ａによる計算デバイス上における他のリソースへのアクセスを注意深く制御する。更に、アクセス制限付きブラウザー２３５ａの能力も同様に制限される。例えば、アクセス制限付きブラウザー２３５ａは、計算デバイスのディスク・ドライブにアクセスすること、またはそこに格納されたいずれかのファイルを実行することを限定されるのでもよい。
【００３９】
以前に注記したように、サーバー１０８は勧誘ロジック処理の一形態を実行し、計算デバイスにおいて実行するスターター・アプリケーション２１５ａと相互作用することもできる。スターター・アプリケーション２１５ａは、ドキュメントのコンテンツに関してサーバー１０８に知らせることができ、サーバー１０８における勧誘ロジックはこのコンテンツを分析し、応答して、勧誘ペイン３２０内にしかるべきテキスト応答を供給することができる。いずれの手法でも、ユーザーが勧誘の提案を受け入れる場合、アップグレードを得るためにクエリーがサーバーに対して発せられ(launch)、その中で更に他の情報が勧誘ペイン上に提供される。この更に他の情報は、テンプレート見本、価格情報、アップグレードにおけるテンプレートの数等を含むことができる。
【００４０】
スターター・アプリケーションは、その内部に種々の連番または許可情報がエンコードされていることがあり、アップグレードを入手することと併せて、これらがサーバー１０８に報告されるのでもよい。スターター・アプリケーションによってサーバーに正しくない許可情報が提供された場合、サーバーはアップグレード要求を拒否することができる。他の実施形態では、許可情報が有効である場合、これは、アップグレードと併せて割り引きまたは他の恩恵をサーバーから受ける資格をユーザーに与えることもできる。
【００４１】
スターター・アプリケーションに対してコンテキスト依存勧誘を提示するプロセス・フロー４００の一実施形態を図４Ａに示す。尚、図４Ａおよび他の図に関して本明細書において説明する論理動作は、（１）計算システム上において実行するコンピューター実装アクト(act)またはプログラム・モジュールのシーケンスとして、および／または（２）計算システム内部で相互接続されたマシン・ロジック回路または回路モジュールとして実現されることは認められてしかるべきである。この実施態様は、本発明を実現する計算システムの性能要件に依存する選択事項である。したがって、本明細書において説明する論理動作は、状態、動作、構造的デバイス、アクト(act)、またはモジュールと、様々に呼ばれる。これらの動作、構造的デバイス、アクト、およびモジュールは、ソフトウェア、ファームウェア、特殊目的ディジタル・ロジック、およびそのあらゆる組み合わせで実現することができる。また、図４Ａに示しここで説明するよりも多いまたは少ない動作が実行されてもよいことも認められてしかるべきである。また、これらの動作は、ここで説明するのとは異なる順序で実行されてもよい。図４Ａに示す動作は単なる例示に過ぎず、他の実施形態では他の動作が定められてもよい。
【００４２】
図４Ａは、スターター・アプリケーション２１５ａが実行されユーザーが動作４０２においてドキュメントを編集しているときに、勧誘ロジックによって計算デバイスにおいて実行することができる、規則ベース論理処理の一形態を示す。ここに示す例は、アップグレード勧誘をトリガーするために使用することができる論理処理のタイプを限定するというように解釈してはならない。いつ勧誘をトリガーするか決定するためには、他のもっと複雑なタイプの処理を行うことができる。この処理は、最も適した勧誘を決定するための確率論的モデルを伴うことができる。
【００４３】
ドキュメントは、テキスト系ドキュメント、スプレッドシート、またはスターター・アプリケーションの機能に対応する他の何らかのデータであることができる。勧誘ロジック２２０ａは、使用されるスターター・アプリケーションのタイプを知っており、ユーザーが編集しているドキュメントのタイプを確認することができる。具体的には、この実施形態では、勧誘ロジック２２０ａは、ドキュメントが履歴書であるか否か、動作４０４において確認する。
【００４４】
勧誘ロジック２２０ａは、履歴書に関連付けられた規則を適用することによって（例えば、最初のページの中央にある氏名および住所、ファイル名における「履歴書」という単語の存在、構造化された様式の日付けの存在等）、そのドキュメントが履歴書であることを確認することができる。更に、勧誘ロジック２２０ａは、このドキュメントが履歴書であるか否か判定するための更なる分析のために、ドキュメントの一部をサーバー１０８に供給することもできる。
【００４５】
勧誘ロジック２２０ａが、動作４０４において、ドキュメントが履歴書であることを確認すると、動作４０６において、勧誘ロジック２２０ａは、ユーザーに、履歴書を起稿するためのテンプレートが利用可能であることを知らせることによって、コンテキスト依存勧誘を開始することができる。勧誘プロセスは、利用可能なテンプレートのタイプ、潜在的に可能な履歴書起稿の提案、または他の履歴書に関係する情報をユーザーに知らせることを伴うのでもよい。どの履歴書関係情報をユーザーに提供するかについてのこの決定は、観察されたユーザーのアクションに基づいて精巧なモデルを適用するというような複雑なものから、最も頻繁にダウンロードされる履歴書関係情報を提供するというような単純なものまでが考えられる。
【００４６】
勧誘ロジック２２０ａが、動作４０４において、ドキュメントが履歴書ではないと判定した場合、動作４０８において、勧誘ロジック２２０ａは、ユーザーが、描画オブジェクトを編集するというような、グラフィカル・オブジェクトに関係する機能性を呼び出しているか否か確認することができる。ユーザーは、画像を挿入する、画像を編集する、またはそれ以外で描画オブジェクトに対してアクションを実行しているのでもよい。このアクションは、動作４１０においていわゆる「クリップ・アート」を含む描画アート・オブジェクトが利用可能であることをユーザーに知らせることによって、動作４０８において、ユーザーを勧誘するように、勧誘ロジック２２０ａをトリガーすることができる。
【００４７】
勧誘ロジック２２０ａが、動作４０８において、ユーザーが描画オブジェクトを編集しているのではないと判定した場合、次に、勧誘ロジック２２０ａは、動作４１２において、ユーザーによって要求された機能性が、完全バージョンのアプリケーションでなければ利用できない機能に関係する可能性があるか否か確認することができる。例えば、スプレッドシート・プログラムが表を操作する能力全体を許可しない場合があり、またワード・プロセッシング・プログラムが様式を編集するまたはテンプレートを使用する能力全体を許可しない場合もある。先に注記したように、種々のモデルおよびプロセスが勧誘ロジックに組み込まれてもよい。一旦勧誘ロジック２２０ａが、動作４１２において、現在呼び出されている機能が、完全バージョンでないと利用できない機能に関係すると判定したなら、勧誘ロジック２２０ａは、動作４１４において、これらの機能が完全バージョンでは利用可能であることをユーザーに知らせることができる。
【００４８】
ユーザーにテキスト、ビデオ、グラフィクス、音響等を提示することによって、ユーザーにアップグレードを知らせることもできる。この情報のコンテンツはコンテキストにしたがって変化する可能性があるので、勧誘はユーザーに対して形式的には現れるのではない。つまり、異なるコンテキストの勧誘が同じアップグレードを目標とする場合でも、この勧誘の手法および様式はコンテキスト毎に異なることが可能である。
【００４９】
他のコンテキスト依存勧誘も、以上で開示したものに加えて、またはその代わりに行うことができる。例えば、前述のように、現在のアクションの発生またはドキュメントのコンテキストを検出することによって、勧誘ロジックをトリガーすることができる。あるいは、勧誘ロジックは、アクションまたは関係イベントの履歴を検出することができ、これらが集合的にユーザーにアップグレードを勧誘する好機を示す。具体的には、ユーザーがスターター・アプリケーションにおいてある機構を繰り返し使用する場合、この機構を固定回数、例えば、５回使用した後に、ユーザーを勧誘することもできる。更に、ユーザーに勧誘を数回提示しているがアップグレードを選択しない場合、勧誘ロジックは勧誘を提案するのを中止してもよく、または勧誘のきっかけ(solicitation prompt)を変化させてもよい。これによって、勧誘ロジックがユーザーにとって煩わしいことになるのを回避する。
【００５０】
ユーザーを勧誘するための好機が識別されない場合、即ち、動作４０４、４０８、および４１２において結果が「否定」である場合、本処理は動作４０２に戻り、本プロセスはユーザーによって行われる編集を監視し続ける。ドキュメントを確認するためには、またはコンテキスト依存勧誘好機を十分に識別するには、入力されたテキストが不十分であったのかもしれない。しかしながら、動作４０４、４０８、または４１２のいずれかにおいて勧誘が行われた場合、本プロセスは、４１６において、ユーザーがアップグレードを受けることを選択したか否か判定する。この判定が肯定である場合、動作４１８において、アップグレードをユーザーに提供する。否定である場合、本プロセスは動作４２０において完了する。他の実施形態では、本プロセスは動作４０２に戻り、本プロセスを繰り返すのでもよい。この場合、異なる形態の勧誘を行ってもよい。
【００５１】
動作４１８においてユーザーをアップグレードするプロセスを、図４Ｂに更に詳細に示す。図４Ｂにおいて、動作４４０において、ユーザーに、アップグレードの情報またはプレビューを供給することができる。次いで、動作４４２において、価格、トランザクションの方法、システム能力要件等に関して、これを続けることができる。
【００５２】
動作４４４において、トランザクションを継続するまたはアップグレードを放棄する好機をユーザーに与えることができる。ユーザーが継続する場合、動作４４６において、アップグレード・トランザクションを完了する。実施形態では、動作４４８においてアップグレードをダウンロードする。ユーザーがアップグレードを継続しない場合、動作４５０において、アップグレードを取り消す。次いで、本プロセスは動作４５２において完了する。
【００５３】
動作４１８においてユーザーをアップグレードするための準備(provision)は、異なる方法で行うこともできる。勧誘ロジック２２０ａは、アクセス制限付きブラウザー２３５ａを通じてウェブ・サイトに接続して、要求されたテンプレート、クリップ・アート等を受信することができる。また、支払いを行うためのしかるべきユーザー・インターフェースが、勧誘ロジック２２０ａ、スターター・アプリケーション・パッケージ１０２における他のモジュールのいずれかに含まれ、アクセス制限付きブラウザー２３５ａを用いてサーバー１０８と相互作用してもよい。アップグレードを受信するプロセスは、他のサーバーにおけるソースからユーザーの計算デバイスへのアップグレードの実際の送信を伴うのでもよい。例えば、勧誘がグラフィカル・オブジェクトのためである場合、選択およびドキュメントへの挿入のために、グラフィカル・オブジェクトのライブラリーをユーザーにダウンロードするのでもよい。
【００５４】
スターター・アプリケーションには通常収容されるがロックされている能力にアクセスすることをユーザーに許可する許可キーまたは同様のコードを送信することによって、アップグレードへのアクセスを可能にする他の形態を遂行することもできる。例えば、一実施形態では、アプリケーションのスターター・アプリケーションおよび完全バージョンが、製造時に計算デバイスに予めロードされるが、完全バージョンはロックされる。つまり、ユーザーはスターター・アプリケーションの部分しか使用することはできない。アップグレードするプロセスは、完全バージョンのロックを解除する許可キーを受信し、こうしてユーザーに完全バージョンにアクセスすることを許可することを伴う。このようにすると、アップグレードの恩恵を得るためにユーザーにダウンロードしなければならない情報が減少する。
【００５５】
更に、ユーザーがスターター・アプリケーションのドキュメント内で作業をしている間に、アップグレードを遂行することもできる。完全バージョンへのアクセスは、ドキュメントが編集されている間に付与することができるので、ユーザーはアプリケーションをセーブし閉じて、次いでコンピューターを再起動するまたはドキュメントを再度開く必要がない。これによって、完全バージョンに瞬時にアクセスするための、一層便利な手法をユーザーに提供する。
【００５６】
更に、アップリーケーションの完全バージョンへのアクセスをロック解除するときに、ユーザーに他のアプリケーションへのアクセスを付与することもできる。これは、ユーザーが対応するスターター・アプリケーションを全く有していなかったアプリケーションを含む。例えば、ワード・プロセッシング・スターター・アプリケーションがユーザーに供給される場合、ユーザーは、代わりにワード・プロセッシング・アプリケーションおよびグラフィクス編集アプリケーションの完全バージョンを含む生産性スイートにアップグレードすることができる。
【００５７】
図４におけるプロセス・フローは、ユーザーを勧誘する好機を検出するために勧誘ロジック２２０ａを組み込むことができる潜在的に可能な規則の内数個を表すに過ぎない。尚、勧誘をトリガーする好機を検出するために、多数の規則または条件を定めることができることは認められてしかるべきである。勧誘ロジック２２０ａは、アプリケーションの完全バージョンをユーザーに勧誘するためだけに制限することができ、またはテンプレートのライブラリー、オンライン・チュートリアル等をユーザーに勧誘することも含むのでもよい。
【００５８】
他の実施形態では、アップグレードされたアプリケーションが様々な入手可能なバージョンの内１つを含むこともでき、ユーザーがアップグレードすべきバージョンを選択する。例えば、既に注記したように、ユーザーがスターター・アプリケーションを使用しており、上級バージョンおよびプロ・バージョンというような他の機能レベルが入手可能である場合もある。加えて、上級バージョン１．０およびバージョン２．０がアップグレードに入手可能な場合もある。同様に、プロ・バージョン２．０および３．０がある場合もある。ユーザーには、アップグレードするバージョンの多数の選択肢が提示されてもよい。
【００５９】
更に、アップグレードが１つのアプリケーションに制限されてもよい。ユーザーに提示される選択肢の内１つが、関係アプリケーションのスイートにアップグレードするためであってもよい。つまり、ワード・プロセッシング・アプリケーションをアップグレードするとき、グラフィクス・プレゼンテーション・プログラム、スプレッドシート・プログラム、および他の生産性アプリケーションをアップグレードするというように、他のアプリケーションに対するアップグレードが含まれてもよい。他の実施形態では、アップグレードが、異なるタイプのアプリケーションまたはサービス能力を購入することだけを伴うのでもよい。例えば、ユーザーがスターター・ワード・プロセッシング・アプリケーションを使用しており、このアプリケーションが最小限の描画能力を組み込むという場合もある。ユーザーが描画能力に繰り返しアクセスしたことを検出した後、勧誘ロジックが、グラフィカル編集プログラムへのアクセスを付与するアップグレードを行うことをユーザーに促す。ユーザーはそうすることを選択し、スターター・ワード・プロセッシング・アプリケーションの使用を続けることができる。
【００６０】
既に注記したように、勧誘ロジック自体は、サーバー１０８によってアップグレードおよび管理することができる。勧誘ロジックは必ずしも静的ではない（例えば、スターター・アプリケーションと共に最初に展開されるバージョンに制限される）。勧誘ロジックは、通例、サーバー１０８の指令の下で 動的にアップグレードすることができるが、ユーザーによる直接的な介入や制御はない。
【００６１】
勧誘ロジックの初期バージョンは、スターター・アプリケーションに組み込まれてもよく、このバージョンが勧誘をトリガーするある種のアルゴリズムを組み込んでもよい。時間の経過に連れて、追加の製品またはアプリケーションが入手可能になることもある。これらは、勧誘ロジックが定められたときには入手できなかったものである。更に、ときの経過と共に、勧誘をトリガーするための追加のアルゴリズムが定められてもよい。勧誘ロジック自体をアップグレードしないと、勧誘ロジックが新たに定められた製品を知ることは不可能であろう。このため、勧誘ロジックは、サーバー１０８に示されるバージョン識別番号を組み込むとよく、サーバー１０８は、バージョン管理を行うことができる。具体的には、サーバー１０８は、勧誘ロジックの新バージョンを適宜ダウンロードすることができる。
【００６２】
以上の動作を遂行する計算デバイス１０２の計算アーキテクチャーの一実施形態を図５に示す。図５は、説明したソフトウェア・コンポーネントを実行することができるコンピューター５００の例示的な計算アーキテクチャーを示す。図５に示すコンピューター・アーキテクチャーは、従来のコンピューター、ラップトップ、タブレット、または本明細書において紹介したソフトウェア・コンポーネントのいずれの態様を実行するためにも利用される他のタイプのコンピューターを例示することができる。本明細書において紹介したソフトウェア・コンポーネントを実行するためには、他のアーキテクチャーまたはコンピューターを使用してもよい。
【００６３】
図５に示すコンピューター・アーキテクチャーは、中央処理ユニット５２０（「ＣＰＵ」、本明細書では「プロセッサー」とも呼ばれる）、ランダム・アクセス・メモリ（「ＲＡＭ」）５０６およびリード・オンリー・メモリ（「ＲＯＭ」）５０８を含むシステム・メモリ５０５、ならびにメモリをＣＰＵ５２０に結合するシステム・バス５４０を含む。起動中のように、サーバー５００内部でエレメント間で情報を転送するのに役立つ基本的なルーチンを収容する基本入力／出力システムが、ＲＯＭ５０８に格納される。更に、コンピューター５００は、オペレーティング・システム５２８、アプリケーション・プログラム、および本明細書において説明したような他のプログラム・モジュールを格納する大容量記憶デバイス５２２も含む。
【００６４】
大容量記憶デバイス５２２は、ＣＰＵ５２０に大容量記憶コントローラー（図示せず）を介して接続され、一方、大容量記憶コントローラーはバス５４０に接続される。大容量記憶デバイスおよびその関連するコンピューター読み取り可能媒体は、コンピューター５００に不揮発性ストレージを設ける。本明細書に含まれるコンピューター読み取り可能媒体の説明は、ハード・ディスクまたはＣＤ−ＤＯＭドライブのような大容量記憶デバイスに言及するが、コンピューター読み取り可能媒体は、コンピューター５００によってアクセスすることができる入手可能なあらゆるコンピューター記憶媒体とすることができることは、当業者には認められてしかるべきである。しかしながら、コンピューター読み取り可能媒体は、一時的な信号を含まない。
【００６５】
一例として、そして限定ではなく、コンピューター読み取り可能媒体は、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含み、コンピューター読み取り可能命令、データ構造、プログラム・モジュール、または他のデータというような情報の格納のためのいずれかの方法または技術で実現される。例えば、コンピューター読み取り可能媒体は、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリまたは他のソリッド・ステート・メモリ技術、ＣＤ−ＲＯＭ、ディジタル・バーサタイル・ディスク（「ＤＶＤ」）、ＨＤ−ＤＶＤ、ＢＬＵ−ＲＡＹ（登録商標）、または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたは他の磁気記憶デバイス、あるいは所望の情報を格納するために使用することができコンピューター５００によってアクセスすることができる他のあらゆる媒体を含むが、これらに限定されるのではない。
【００６６】
種々の実施形態によれば、コンピューター５００は、ネットワーク５３３のようなネットワークを通じて、リモート・コンピューターまたはサーバーへの論理接続を用いて、ネットワーク接続環境において動作することもできる。コンピューター５００は、バス５４０に接続されたネットワーク・インターフェース・ユニット５５０を介してネットワーク５５３に接続することができる。尚、ネットワーク・インターフェース・ユニット５５０が、他のタイプのネットワークおよびリモート・コンピューター・システムに接続するために利用されてもよいことは、認められてしかるべきである。
【００６７】
また、コンピューター５００は、無線インターフェース５１４も組み込むことができる。無線インターフェース５１４は、アンテナ５１５を用いて、ワイヤレスでネットワーク５５３と通信することができる。ワイヤレス通信は、セルラ通信技術、あるいはWiMax、WiFi、またはその他のような他の技術のいずれに基づいてもよい。
【００６８】
また、コンピューター５００は、情報を表示するため、そしてタッチ・スクリーンの部分をタッチすることによってユーザー入力を受けるためのタッチ・スクリーン・ディスプレイ５１８も組み込むことができる。これは、通例、タブレット・コンピューターおよびスマート・フォンに基づく実施形態上に存在するが、他の実施形態がタッチ・スクリーン５１８を組み込んでもよい。
【００６９】
また、コンピューター５００は、キーボード、マウス、または電子スタイラス（図５には示されない）を含む多数の他のデバイスからの入力を受けて処理する入力／出力コントローラー５０４も含むことができる。同様に、入力／出力コントローラーは、表示画面、プリンター、または他のタイプの出力デバイス（同様に図５には示されない）に出力を供給することもできる。また、入力／出力コントローラーは、スピーカーのようなオーディオ・デバイスに対するインターフェース、および／またはカメラのようなビデオ・ソース、あるいはケーブル・セット・トップ・ボックス、アンテナ、または他のビデオ信号サービス・プロバイダーに対するインターフェースも設けることができる。
【００７０】
先に端的に述べたように、多数のプログラム・モジュールおよびデータ・ファイルをコンピューター５００の大容量記憶デバイス５２２およびＲＡＭ５０６に格納することができ、プログラム・モジュールは、ネットワーク接続されたデスクトップ、ラップトップ、タブレット、またはサーバー・コンピューターの動作を制御するのに適したオペレーティング・システム５２８を含む。大容量記憶デバイス５２２およびＲＡＭ５０６は、１つ以上のプログラム・モジュールまたはデータ・ファイルも格納することができる。具体的には、大容量記憶デバイス５２２およびＲＡＭ５０６は、勧誘ロジック２２０ａを格納することができる。同じ記憶デバイス５２２およびＲＡＭ５０６がアクセス制限付きブラウザー２３５ａを格納することもできる。また、大容量記憶デバイス５２２およびＲＡＭ５０６は、スターター・アプリケーション・モジュール２１５および種々のアップグレード５２６を含む、他のタイプのアプリケーションおよびデータを格納することもできる。アップグレード５２６は、スターター・アプリケーション２１５においてロックされたアップグレードの例であり、許可キーがアップグレード・プロセスによって得られてからでないとアクセスできない。
【００７１】
尚、本明細書において説明したソフトウェア・コンポーネントは、ＣＰＵ５２０にロードされ実行されると、ＣＰＵ５２０およびコンピューター５００全体を、汎用計算システムから、本明細書において紹介した機能性が容易に得られるようにカスタム化された特殊目的計算システムに変形することは認められてしかるべきである。ＣＰＵ５２０は、いずれの数のトランジスターまたは他のディスクリート回路エレメントで構成されてもよく、これらのエレメントは、いずれの数の状態でも個々にまたは集合的に取ることができる。更に具体的には、ＣＰＵ５２０は、本明細書において開示したソフトウェア・モジュール内に収容された実行可能命令に応答して、有限状態機械として動作することもできる。これらのコンピューター実行可能命令は、ＣＰＵ５２０が状態間でどのように遷移するか指定することによってＣＰＵ５２０を変化させ(transform)、これによって、ＣＰＵ５２０を構成するトランジスターまたは他のディスクリート回路エレメントを変化させることができる。
【００７２】
本明細書において紹介したソフトウェア・モジュールをエンコードすることによっても、本明細書において紹介したコンピューター読み取り可能媒体の物理的構造を変化させることができる。物理的構造の具体的な変化は、本明細書の異なる実施態様における種々の要因に依存する場合もある。このような要因の例には、コンピューター読み取り可能媒体を実現するために用いられる技術、コンピューター読み取り可能媒体が主ストレージまたは副ストレージのどちらとして特徴付けられるか等を含むことができるが、これらに限定されるのではない。例えば、コンピューター読み取り可能媒体が半導体ベース・メモリとして実現される場合、本明細書において開示したソフトウェアは、半導体メモリの物理的状態を変化させることによって、コンピューター記憶媒体上にエンコードすることができる。例えば、ソフトウェアは、半導体メモリを構成するトランジスター、キャパシター、または他のディスクリート回路エレメントの状態を変化させることもできる。また、ソフトウェアは、データを格納するために、このようなコンポーネントの物理的状態を変化させることもできる。
【００７３】
他の例として、本明細書において開示したコンピューター読み取り可能媒体は、磁気または光技術を用いて実現することもできる。このような実施態様では、本明細書において紹介したソフトウェアは、このソフトウェアがエンコードされるときに、磁気媒体または光媒体の物理的状態を変化させることができる。これらの変化は、所与の磁気媒体内の特定の位置の磁気特性を変化させることを含むことができる。また、これらの変化は、所与の光媒体内における特定の位置の物理的特徴または特性を変化させ、これらの位置の光学特性を変化させることも含むことができる。本明細書の範囲および主旨から逸脱することなく、物理媒体の他の変化も可能であり、以上の例はこの論述を容易にするために与えられたに過ぎない。
【００７４】
以上のことを考慮して、本明細書において説明したソフトウェア・コンポーネントを格納および実行するために、コンピューター５００内において多くのタイプの物理的変化が生ずることは認められてしかるべきである。また、コンピューター５００は、ハンドヘルド・コンピューター、埋め込み型コンピューター・システム、パーソナル・ディジタル・アシスタント、および当業者には知られている他のタイプの計算デバイスを含む、他のタイプの計算デバイスを含んでもよいことも認められてしかるべきである。また、コンピューター５００が図５に示すコンポーネントの全てを含まなくてもよいこと、図５には明示的に示されない他のコンポーネントを含んでもよいこと、または図５に示すものとは完全に異なるアーキテクチャーを利用してもよいことも考えられる。例えば、あるデバイスが、主プロセッサーをグラフィクス・ディスプレイ・プロセッサーまたはディジタル信号プロセッサーと共に利用するのでもよい。他の例では、デバイスがキーボード用インターフェースを有してもよく、一方他の実施形態がタッチ・スクリーンを組み込んでもよい。
【００７５】
以上の説明に基づいて、スターター・アプリケーションにおいてアップグレードのコンテキスト依存勧誘を提示するシステムおよび方法が開示されたことは認められてしかるべきである。また、以上で説明した主題は、例示として提示されたのであって、限定と解釈してはならないことも認められてしかるべきである。図示し説明した実施形態例および用途例に従うことなく、そして以下の特許請求の範囲において記載される本発明の真の主旨および範囲から逸脱することなく、種々の修正および変更を本主題に対して行うことができる。
【図１】
2015509243.tif 000003
【図２】
2015509243.tif 000004
【図３】
2015509243.tif 000005
【図４Ａ】
2015509243.tif 000006
【図４Ｂ】
2015509243.tif 000007
【図５】
2015509243.tif 000008
【国際調査報告】
2015509243.tif 000009
2015509243.tif 000010