(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
以下に、本願に係る情報処理装置、情報処理方法、情報処理プログラム、ユーザ端末、コンテンツ取得方法及びコンテンツ取得プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、情報処理プログラム、ユーザ端末、コンテンツ取得方法及びコンテンツ取得プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0011】
(実施形態1)
〔1−1.割当処理の一例〕
まず、
図1を用いて、実施形態1に係る割当処理の一例について説明する。
図1は、実施形態1に係る割当処理の一例を示す図である。
図1では、本願に係る情報処理装置200が、コンテンツにおける複数のバリエーションから選択された選択バリエーションに関する情報をユーザ端末100から受け付け、ユーザ端末100によってコンテンツの配信要求が送信された場合に、事前に受け付けた選択バリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する処理を実行する例を示す。実施形態1では、ユーザ端末100がウェブブラウザを利用してコンテンツの配信を要求する場合を例に挙げる。
【0012】
図1に示す例において、ユーザ端末100は、サービス毎にバケットIDを選択するための選択画面を表示し、何れかのバケットIDを選択するユーザ操作に応じて、選択されたバケットIDを受け付ける(ステップS11)。バケットIDは「バリエーション」に対応し、選択されたバケットIDは「選択バリエーション」に対応する。具体的には、ユーザ端末100は、バケットIDを選択するための選択画面をウェブブラウザで表示する。ウェブブラウザで表示される選択画面は、情報処理装置200によって提供されても良いし、情報処理装置200と同一のドメインに属する情報処理機器によって提供されても良い。ここで、ユーザ端末100は、選択画面の表示時に、ウェブブラウザからCookieを取得し、ユーザ端末100の記憶領域(
図1に示す「Cookie情報」)に、取得したCookieを登録する。登録されるCookieは「ユーザ識別情報」に対応する。また、Cookieは、ドメイン及びブラウザごとに異なる固有情報である。
【0013】
そして、ユーザ端末100は、表示された選択画面に対するユーザ操作に応じて、選択されたバケットIDを受け付ける。バケットIDの受け付けは、サービス毎に行なわれる。サービスは、提供される情報の種類を表す。例えば、サービスには、天気情報を提供するサービス、スポーツ情報を提供するサービス等の、各種のサービスがある。各種のサービスを識別する識別情報を「サービスID」と呼ぶ。すなわち、ユーザ端末100は、バケットIDが選択されることにより、バケットIDとサービスIDとを受け付けることになる。後述するように、選択されたバケットIDに対応するコンテンツは、ユーザ端末100によるコンテンツの配信要求に応じて配信されるコンテンツとなる。つまり、ユーザは、コンテンツの配信要求時に配信を受けるコンテンツを事前に選択することになる。
【0014】
次に、ユーザ端末100は、Cookie、バケットID、サービスIDを情報処理装置200に送信する(ステップS12)。具体的には、ユーザ端末100は、選択画面に対するユーザ操作によりバケットID及びサービスIDを受け付けた場合に、記憶領域に記憶されたCookieを取得し、取得したCookieと、バケットIDと、サービスIDとを情報処理装置200に送信する。情報処理装置200に対するこれら情報の送信は、Cookie、バケットID及びサービスIDを対応付けて登録させる処理を、情報処理装置200に実行させるための要求に相当する。
【0015】
続いて、情報処理装置200は、Cookie、バケットID及びサービスIDを対応付けて記憶領域(
図1に示す「割当情報」)に登録する(ステップS13)。具体的には、情報処理装置200は、ユーザ端末100によって送信されたCookie、バケットID及びサービスIDを受信する。そして、情報処理装置200は、受信したCookie、バケットID及びサービスIDを対応付けて記憶領域に登録する。記憶領域には、各ユーザ端末100から受信されたCookie、バケットID及びサービスIDが対応付けて登録される。各ユーザ端末100で取得されるCookieは同一ではないため、記憶領域に記憶される割当情報は一意なものとなる。
【0016】
その後、ユーザ端末100は、コンテンツを配信するFE(Front End)サーバ300にアクセスし、コンテンツの配信要求を行なう(ステップS14)。具体的には、ユーザ端末100は、Cookie、バケットID及びサービスIDが情報処理装置200に送信された後、ユーザ操作に応じて、コンテンツの配信要求をFEサーバ300に行なう。このとき、ユーザ端末100は、ウェブブラウザを用いてFEサーバ300に配信要求し、CookieをFEサーバ300に送信する。情報処理装置200とFEサーバ300とは、同一のドメインに属する。このため、FEサーバ300に送信されるCookieは、情報処理装置200に対してバケットIDやサービスIDとともに既に送信されたCookieと同一になる。
【0017】
そして、FEサーバ300は、ユーザ端末100からのコンテンツ配信要求を受け付けると、情報処理装置200に対してバケットIDを要求する(ステップS15)。具体的には、FEサーバ300は、Cookie、バケットID及びサービスIDを情報処理装置200に送信済みのユーザ端末100からのコンテンツ配信要求を受け付ける。そして、FEサーバ300は、ユーザ端末100からの配信要求時に受信したCookieを情報処理装置200に送信し、バケットIDを要求する。このとき、FEサーバ300は、ユーザ端末100からのアクセスによって何れのサービスであるかを認識し、CookieとともにサービスIDを情報処理装置200に送信する。
【0018】
次に、情報処理装置200は、FEサーバ300からのバケットIDの要求に応じて、バケットIDを応答する(ステップS16)。具体的には、情報処理装置200は、CookieやサービスIDを含むバケットIDの要求をFEサーバ300から受け付ける。そして、情報処理装置200は、FEサーバ300から受け付けたCookie及びサービスIDに対応するバケットIDを記憶領域(割当情報)から取得する。すなわち、情報処理装置200は、取得したバケットIDに対応するバリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。その後、情報処理装置200は、取得したバケットIDをFEサーバ300に応答する。
【0019】
続いて、FEサーバ300は、バケットIDに対応するコンテンツをユーザ端末100に配信する(ステップS17)。具体的には、FEサーバ300は、バケットIDの応答を情報処理装置200から受け付ける。そして、FEサーバ300は、バケットIDで示されたバリエーションに対応するコンテンツをユーザ端末100に配信する。これらにより、ユーザ端末100では、選択画面で選択されたバケットIDに対応するバリエーションのコンテンツがウェブブラウザで表示される(ステップS18)。
【0020】
上述したように、情報処理システム1では、コンテンツのバリエーションを示すバケットIDや、ユーザ端末100を識別するためのCookie等を予め登録しておき、コンテンツの配信要求時に、通知されたCookieに対応するバケットIDを特定し、バケットIDに対応するバリエーションのコンテンツを配信する。このような処理は、サービスのリリース後等にも実現することができる。これにより、情報処理システム1では、意図するバリエーションのコンテンツを配信することができる。
【0021】
〔1−2.情報処理システムの構成〕
次に、
図2を用いて、実施形態1に係る情報処理システム1の構成を説明する。
図2は、実施形態1に係る情報処理システム1の構成例を示す図である。
図2に例示するように、実施形態1に係る情報処理システム1には、ユーザ端末100と、情報処理装置200と、FEサーバ300とが含まれる。これらの各装置は、ネットワークNを介して、有線又は無線により通信可能に接続される。なお、
図2に示した情報処理システム1には、複数台のユーザ端末100やFEサーバ300が含まれていても良い。
【0022】
ユーザ端末100は、例えば、スマートフォンやデスクトップ型PC(Personal Computer)、ノート型PC、タブレット型端末、携帯電話機、PDA(Personal Digital Assistant)、ウェアラブルデバイス(Wearable Device)等のクライアント機器である。例えば、ユーザ端末100は、ユーザによる操作に従って、CookieやバケットID、サービスID等を情報処理装置200に送信したうえで、FEサーバ300にアクセスし、コンテンツの配信を要求する。
【0023】
情報処理装置200は、ユーザ端末100に配信するコンテンツを決定するサーバ装置等の情報処理機器である。また、FEサーバ300は、ユーザ端末100にコンテンツを配信するサーバ装置等の情報処理機器である。なお、情報処理装置200とFEサーバ300とは、同一のドメインに属する機器である。
【0024】
〔1−3.情報処理装置の構成〕
次に、
図3を用いて、実施形態1に係る情報処理装置200の構成を説明する。
図3は、実施形態1に係る情報処理装置200の構成例を示す図である。
図3に示すように、情報処理装置200は、通信部210と、記憶部220と、制御部230とを有する。なお、情報処理装置200は、情報処理装置200を利用する管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有していても良い。
【0025】
(通信部210について)
通信部210は、外部の装置と通信する通信インタフェースである。通信部210は、ネットワークインタフェースであっても良いし、機器接続インタフェースであっても良い。例えば、通信部210は、NIC(Network Interface Card)等によって実現されるLAN(Local Area Network)インタフェースであっても良いし、USB(Universal Serial Bus)ホストコントローラ、USBポート等により構成されるUSBインタフェースであっても良い。また、通信部210は、有線インタフェースであっても良いし、無線インタフェースであっても良い。通信部210は、情報処理装置200の通信手段として機能する。通信部210は、制御部230の制御に従って、ユーザ端末100やFEサーバ300との間で情報を送受信する。
【0026】
(記憶部220について)
記憶部220は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。
図3に示すように、記憶部220は、割当情報記憶部221を有する。
【0027】
(割当情報記憶部221について)
割当情報記憶部221は、割当情報を記憶する。
図4は、実施形態1に係る割当情報記憶部221に記憶された情報例を示す図である。
図4に示した例では、割当情報記憶部221は、バケットID、Cookie、サービスIDの各項目の情報を記憶する。例を挙げると、割当情報記憶部221は、バケットID「PatternA」と、Cookie「C0001」と、サービスID「S0003」とを対応付けて記憶する。
【0028】
バケットIDは、コンテンツのバリエーションを示す識別情報である。例えば、バケットIDは、A/Bテストにおいて予め用意される各コンテンツのバリエーションを示す識別情報である。各コンテンツによって表示される各画像は、構成要素の一部又は全てが異なるものとなる。すなわち、各画像は、ボタン等のオブジェクトの色や形、大きさ等、また、テキストの色や大きさ等が少なくとも異なる。
【0029】
Cookieは、ドメイン及びブラウザごとに異なる固有情報であり、ユーザ端末100又はユーザ端末100のユーザを識別する「ユーザ識別情報」に対応する。一般に、Cookieは、あるユーザ端末100があるドメインにアクセスしたことを表す言わば一種の来歴情報である。例えば、本実施形態において、Cookieは、バケットIDを選択するための選択画面の表示時に、ユーザ端末100によって取得される。
【0030】
サービスIDは、サービスの種類を識別する識別情報である。例えば、サービスの種類には、天気情報を提供するサービス、スポーツ情報を提供するサービス、ネットショッピングを提供するサービス等の、各種のサービスがある。サービスIDは、提供されるサービスが複数存在する場合に使用されれば良い。
【0031】
(制御部230について)
制御部230は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置200内部の記憶装置に記憶されている各種プログラム(「情報処理プログラム」の一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部230は、例えば、コントローラであり、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0032】
図3に示すように、制御部230は、受付部231と、決定部232と、応答部233と、配信部234とを有し、以下に説明する情報処理の機能や作用を実現又は実行する。なお、制御部230の内部構成は、
図3に示した構成に限られず、後述する情報処理を行なう構成であれば他の構成であっても良い。
【0033】
(受付部231について)
受付部231は、コンテンツにおける複数のバリエーションから選択されたバリエーションである選択バリエーションに関する情報をユーザ端末100から受け付ける。選択バリエーションに関する情報は、ユーザ端末100においてサービス毎に選択されたバケットID、サービスを識別するサービスID、Cookie等を含み、通信部210によって受信される。より具体的には、受付部231は、ユーザ端末100によって送信されたバケットID、Cookie及びサービスIDを受け付ける。そして、受付部231は、受け付けたバケットID、Cookie及びサービスIDを対応付けて割当情報記憶部221に格納する。
【0034】
(決定部232について)
決定部232は、ユーザ端末へ配信するコンテンツのバリエーションを決定する。より具体的には、決定部232は、ユーザ端末100によってコンテンツの配信要求が送信された場合に、FEサーバ300からバケットIDの要求を受け付ける。FEサーバ300からのバケットIDの要求は、通信部210によって受信される。また、バケットIDの要求には、CookieやサービスIDが含まれる。そして、決定部232は、受け付けられたバケットIDの要求に含まれるCooki及びサービスIDに対応するバケットIDを割当情報記憶部221から取得する。ここで、決定部232は、割当情報記憶部221から取得したバケットIDに対応するバリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。
【0035】
(応答部233について)
応答部233は、バケットIDをFEサーバ300に応答する。バケットIDは、通信部210によって送信される。より具体的には、応答部233は、決定部232によって取得されたバケットIDをFEサーバ300に応答する。これにより、FEサーバ300は、バケットIDに対応するバリエーションのコンテンツをユーザ端末100に配信する。ここで、応答部233は、決定部232によって受け付けられたCookieやサービスIDが割当情報記憶部221に記憶されていない場合に、バケットIDを応答できない旨をFEサーバ300に応答する。FEサーバ300は、予め登録されたCookieではないことから、通常のコンテンツをユーザ端末100に配信する。
【0036】
(配信部234について)
配信部234は、選択画面をユーザ端末100に配信する。選択画面は、通信部210によって送信される。より具体的には、配信部234は、コンテンツのバリエーションを示すバケットIDを選択するための選択画面をユーザ端末100に配信する。
【0037】
〔1−4.ユーザ端末の構成〕
次に、
図5を用いて、実施形態1に係るユーザ端末100の構成を説明する。
図5は、実施形態1に係るユーザ端末100の構成例を示す図である。
図5に示すように、ユーザ端末100は、通信部110と、入力部120と、出力部130と、記憶部140と、制御部150とを有する。
【0038】
(通信部110について)
通信部110は、外部の装置と通信する通信インタフェースである。通信部110は、ネットワークインタフェースであっても良いし、機器接続インタフェースであっても良い。例えば、通信部110は、NIC等によって実現されるLANインタフェースであっても良いし、USBホストコントローラ、USBポート等により構成されるUSBインタフェースであっても良い。また、通信部110は、有線インタフェースであっても良いし、無線インタフェースであっても良い。通信部110は、ユーザ端末100の通信手段として機能する。通信部110は、制御部150の制御に従って、情報処理装置200やFEサーバ300との間で情報を送受信する。
【0039】
(入力部120について)
入力部120は、外部から各種入力を受け付ける入力装置である。例えば、入力部120は、キーボードやマウス、操作キー等、ユーザが各種操作を行なうための操作装置である。入力部120は、ユーザ端末100の入力手段として機能する。なお、ユーザ端末100にタッチパネルが採用される場合には、タッチパネルも入力部120に含まれる。この場合、ユーザは、指やスタイラスで画面をタッチすることにより各種操作を行なう。
【0040】
(出力部130について)
出力部130は、音、光、振動、画像等、外部に各種出力を行なう装置である。出力部130は、ユーザ端末100の出力手段として機能する。出力部130は、各種情報を表示する表示装置を備える。例えば、表示装置は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイである。なお、ユーザ端末100にタッチパネルが採用される場合には、表示装置は、入力部120と一体であっても良い。出力部130は、制御部150の制御に従って、画面に画像を表示する。
【0041】
(記憶部140について)
記憶部140は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。
図5に示すように、記憶部140は、Cookie記憶部141を有する。
【0042】
(Cookie記憶部141について)
Cookie記憶部141は、Cookieを記憶する。例えば、Cookie記憶部141は、ドメイン及びユーザ端末100ごとに異なる固有情報であるCookieを記憶する。Cookie記憶部141に記憶されるCookieは、選択画面の表示時に、ウェブブラウザから取得された情報である。
【0043】
(制御部150について)
制御部150は、コントローラ(controller)であり、例えば、CPUやMPU等によって、ユーザ端末100内部の記憶装置に記憶されている各種プログラム(「コンテンツ取得プログラム」の一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部150は、例えば、コントローラであり、ASICやFPGA等の集積回路により実現される。
【0044】
図5に示すように、制御部150は、第1表示部151と、受付部152と、第1送信部153と、第2送信部154と、取得部155と、第2表示部156と、登録部157とを有し、以下に説明する情報処理の機能や作用を実現又は実行する。なお、制御部150の内部構成は、
図5に示した構成に限られず、後述する情報処理を行なう構成であれば他の構成であっても良い。
【0045】
(第1表示部151について)
第1表示部151は、コンテンツのバリエーションを選択するための選択画面を表示する。より具体的には、第1表示部151は、コンテンツのバリエーションを示すバケットIDをユーザ端末100のユーザに選択させる選択画面を表示する。選択画面は、ウェブブラウザで表示される。また、選択画面は、情報処理装置200によって配信された選択画面が用いられても良い。また、サービス毎にバケットIDが選択される場合、選択画面では、サービスIDを切り替えることも可能である。第1表示部151の制御によって、出力部130は、表示装置に選択画面を出力する。
【0046】
図6は、実施形態1に係る選択画面の例を示す図である。
図6に示すように、選択画面では、A/Bテストでユーザ端末100に提供するコンテンツのバリエーションを割り当てるために、コンテンツのバリエーションを示すバケットIDをユーザに選択させる。
図6に示す「バケット割当」は、サービスで提供されるコンテンツ全てを100パーセントとして、そのバケットIDに対応するコンテンツのバリエーションが占める割合を示す情報である。
図6に示す例では、バケットID「PatternA」、「PatternB」、「PatternC」のバリエーションそれぞれが20パーセントの割合を占め、残りの40パーセントはデフォルトのコンテンツ(テスト対象ではない通常のコンテンツ)に対応する。また、
図6に示す「コントロールバケット」のオブジェクトは、選択中のバケットIDを示すためのものである。ユーザは、各バケットの「詳細を開く」のオブジェクトを操作することで、各バケットの詳細を確認することができる。
【0047】
選択画面には、サービスIDも含まれる。例えば、サービスIDは、
図6に示す「サービス情報を開く」オブジェクトが操作されることで、その詳細を確認したり、切り替えたりすることができる。すなわち、ユーザ端末100のユーザは、サービスID毎(サービス毎)にバケットIDを選択することができる。ユーザは、サービスIDを切り替えつつバケットIDを選択する。これにより、例えば、ユーザは、天気情報を提供するサービス(サービスID)に対するバリエーション(バケットID)や、ネットオークションを提供するサービス(サービスID)に対するバリエーション(バケットID)を選択することになる。
【0048】
(登録部157について)
登録部157は、ウェブブラウザで選択画面が表示されたときに、ウェブブラウザからCookieを取得し、Cookie記憶部141に登録する。ウェブブラウザから取得されるCookieは、情報処理装置200と同一のドメインに対応する固有情報であり、ユーザ端末100又はユーザ端末100のユーザを識別するユーザ識別情報である。
【0049】
(受付部152について)
受付部152は、選択画面において選択されたバケットIDを受け付ける。より具体的には、受付部152は、第1表示部151の制御によって出力部130に出力された選択画面で選択されたバケットIDを受け付ける。バケットIDは、入力部120に対するユーザ操作に応じて受け付けられる。また、受付部152は、サービスIDも受け付ける。
【0050】
(第1送信部153について)
第1送信部153は、選択バリエーションに関する情報を送信する。より具体的には、第1送信部153は、受付部152によってバケットIDやサービスIDが受け付けられた場合に、Cookie記憶部141からCookieを取得する。そして、第1送信部153は、取得したCookieと、受け付けられたバケットID及びサービスIDとを、情報処理装置200に対して送信する。第1送信部153の制御によって、通信部110は、Cookie、バケットID、サービスIDを情報処理装置200に対して送信する。
【0051】
(第2送信部154について)
第2送信部154は、コンテンツの配信要求を送信する。より具体的には、第2送信部154は、コンテンツを配信するFEサーバ300にアクセスし、コンテンツの配信要求を行なう。ここで、第2送信部154は、情報処理装置200と同一のドメインに属するFEサーバ300にアクセスするため、該ドメインに対応するCookieをCookie記憶部141から取得し、取得したCookieをFEサーバ300に対して送信する。第2送信部154の制御によって、通信部110は、CookieをFEサーバ300に送信する。例えば、ユーザ端末100によるFEサーバ300へのアクセスは、ユーザ操作に応じて指定されたURLにアクセスすることで実現する。これにより、FEサーバ300は、ユーザ端末100から受信したCookieと、ユーザ端末100がアクセスしたサービスのサービスIDとを情報処理装置200に送信し、バケットIDを要求する。その後、FEサーバ300は、情報処理装置200からバケットIDの応答を受け付ける。
【0052】
(取得部155について)
取得部155は、配信要求したコンテンツを取得する。より具体的には、取得部155は、第2送信部154によって送信された配信要求に対して、第1送信部153によって送信されたバケットIDに対応するコンテンツをFEサーバ300から取得する。取得部155の制御によって、通信部110は、コンテンツをFEサーバ300から受信する。詳細には、取得部155は、第2送信部154によって送信されたCookieを受信したFEサーバ300がサービスIDとともに情報処理装置200に送信し、応答されたバケットIDに対応するバリエーションのコンテンツがユーザ端末100に送信されることで、配信要求に対するコンテンツを取得する。
【0053】
(第2表示部156について)
第2表示部156は、コンテンツを表示する。より具体的には、第2表示部156は、取得部155によって取得されたコンテンツを表示する。第2表示部156の制御によって、出力部130は、表示装置にコンテンツを出力する。
【0054】
〔1−5.処理手順〕
次に、
図7を用いて、実施形態1に係るユーザ端末100及び情報処理装置200による処理の手順を説明する。
図7は、実施形態1に係る処理手順を示す処理シーケンス図である。上述したように、情報処理装置200とFEサーバ300とは同一のドメインに属する機器である。また、これらの機器は、一つの装置として統合されていても良い。
図7では、FEサーバ300の機能を有する情報処理装置200を例に挙げて説明する。
【0055】
図7に示すように、ユーザ端末100は、ウェブブラウザにより選択画面を表示する(ステップS101)。ユーザ端末100は、情報処理装置200によって配信された選択画面を用いても良い。このとき、ユーザ端末100は、選択画面を表示するウェブブラウザからCookieを取得し、Cookie記憶部141に登録する(ステップS102)。そして、ユーザ端末100は、サービス毎にバケットIDを選択するための選択画面に対するユーザ操作により、サービス毎にバケットIDの選択を受け付ける(ステップS103)。続いて、ユーザ端末100は、選択されたバケットIDと、サービスIDと、取得されたCookieとを情報処理装置200に対して送信する(ステップS104)。情報処理装置200は、ユーザ端末100からバケットID、サービスID及びCookieを受信し、これらを対応付けて割当情報記憶部221に登録する(ステップS105)。
【0056】
その後、ユーザ端末100は、サービスへのアクセスに際して、該当するCookieをCookie記憶部141から取得し、取得したCookieを含むコンテンツの配信要求を情報処理装置200に対して送信する(ステップS106)。情報処理装置200は、ユーザ端末100からCookieを受信し、受信したCookieと、アクセスされたサービスのサービスIDとに対応するバケットIDを割当情報記憶部221から取得し、配信するコンテンツのバリエーションを決定する(ステップS107)。そして、情報処理装置200は、取得したバケットIDに対応するバリエーションのコンテンツをユーザ端末100に配信する(ステップS108)。ユーザ端末100は、情報処理装置200から受信したコンテンツを表示する(ステップS109)。
【0057】
(実施形態2)
〔2−1.割当処理の一例〕
図8を用いて、実施形態2に係る割当処理の一例について説明する。
図8は、実施形態2に係る割当処理の一例を示す図である。実施形態2では、ユーザ端末100aが専用のアプリケーションを利用してバケットIDを選択し、アプリケーションブラウザを利用してコンテンツの配信を要求する場合を例に挙げる。なお、実施形態2では、実施形態1に係る割当処理と同様の処理については詳細な説明を省略する場合がある。
【0058】
図8に示す例において、ユーザ端末100aは、バケットIDを選択するための選択画面を専用のアプリケーション(
図8に示す「専用アプリ」)で表示し、何れかのバケットIDを選択するユーザ操作に応じて、選択されたバケットIDを受け付ける(ステップS21)。具体的には、ユーザ端末100aは、バケットIDを選択するための選択画面を表示する専用アプリをダウンロードし、インストールする。そして、ユーザ端末100aは、バケットIDを選択するための選択画面を専用アプリで表示する。専用アプリは、情報処理装置200によって配信されているものであっても良いし、外部のサーバ装置によって配信されているものであっても良い。但し、専用アプリは、情報処理装置200やFEサーバ300を管理する企業等によって配信されるものである。
【0059】
ここで、ユーザ端末100aは、専用アプリのインストール時に、専用アプリからCookieを取得し、ユーザ端末100aの記憶領域(
図8に示す「Cookie情報」)に、取得したCookieを登録する。登録されるCookieは、情報処理装置200と同一のドメインに対応する情報となる。ユーザ端末100aがスマートフォンやタブレット端末等で実現される場合、記憶領域は、iOS(登録商標)であれば「keychain」、Android(登録商標)であれば「Shared Preferences」と呼ばれる。
【0060】
そして、ユーザ端末100aは、専用アプリで表示された選択画面に対するユーザ操作に応じて、選択されたバケットIDを受け付ける。実施形態1と同様に、バケットIDの受け付けは、サービス毎に行なわれる。従って、ユーザ端末100aは、バケットIDが選択されることにより、バケットIDとサービスIDとを受け付けることになる。
【0061】
次に、ユーザ端末100aは、Cookie、バケットID、サービスIDを情報処理装置200に送信する(ステップS22)。具体的には、ユーザ端末100aは、選択画面に対するユーザ操作によりバケットID及びサービスIDを受け付けた場合に、記憶領域に記憶されたCookieを取得し、取得したCookieと、バケットIDと、サービスIDとを情報処理装置200に送信する。実施形態1と同様に、情報処理装置200に対するこれら情報の送信は、Cookie、バケットID及びサービスIDを対応付けて登録させる処理を、情報処理装置200に実行させるための要求に相当する。
【0062】
続いて、情報処理装置200は、Cookie、バケットID及びサービスIDを対応付けて記憶領域(
図8に示す「割当情報」)に登録する(ステップS23)。具体的には、情報処理装置200は、ユーザ端末100aによって送信されたCookie、バケットID及びサービスIDを受信し、受信したこれらの情報を対応付けて記憶領域に登録する。
【0063】
その後、ユーザ端末100aは、コンテンツを配信するFEサーバ300にアクセスし、コンテンツの配信要求を行なう(ステップS24)。具体的には、ユーザ端末100aは、Cookie、バケットID及びサービスIDが情報処理装置200に送信された後、ユーザ操作に応じて、コンテンツの配信要求をFEサーバ300に行なう。このとき、ユーザ端末100aは、アプリケーションブラウザを用いてFEサーバ300に配信要求し、CookieをFEサーバ300に送信する。FEサーバ300に送信されるCookieは、情報処理装置200に対してバケットIDやサービスIDとともに既に送信されたCookieと同一になる。
【0064】
そして、FEサーバ300は、ユーザ端末100からのコンテンツ配信要求を受け付けると、情報処理装置200に対してバケットIDを要求する(ステップS25)。具体的には、FEサーバ300は、Cookie、バケットID及びサービスIDを情報処理装置200に送信済みのユーザ端末100aからのコンテンツ配信要求を受け付ける。そして、FEサーバ300は、ユーザ端末100aからの配信要求時に受信したCookieを情報処理装置200に送信し、バケットIDを要求する。このとき、FEサーバ300は、ユーザ端末100aからのアクセスによって何れのサービスであるかを認識し、CookieとともにサービスIDを情報処理装置200に送信する。
【0065】
次に、情報処理装置200は、FEサーバ300からのバケットIDの要求に応じて、バケットIDを応答する(ステップS26)。具体的には、情報処理装置200は、CookieやサービスIDを含むバケットIDの要求をFEサーバ300から受け付ける。そして、情報処理装置200は、FEサーバ300から受け付けたCookie及びサービスIDに対応するバケットIDを記憶領域(割当情報)から取得する。すなわち、情報処理装置200は、取得したバケットIDに対応するバリエーションを、ユーザ端末100aへ配信するコンテンツのバリエーションとして決定する。その後、情報処理装置200は、取得したバケットIDをFEサーバ300に応答する。
【0066】
続いて、FEサーバ300は、バケットIDに対応するコンテンツをユーザ端末100aに配信する(ステップS27)。具体的には、FEサーバ300は、バケットIDの応答を情報処理装置200から受け付ける。そして、FEサーバ300は、バケットIDで示されたバリエーションに対応するコンテンツをユーザ端末100aに配信する。これらにより、ユーザ端末100aでは、選択画面で選択されたバケットIDに対応するバリエーションのコンテンツがアプリケーションブラウザで表示される(ステップS28)。
【0067】
〔2−2.ユーザ端末の構成〕
次に、
図9を用いて、実施形態2に係るユーザ端末100aの構成を説明する。
図9は、実施形態2に係るユーザ端末100aの構成例を示す図である。
図9に示すように、ユーザ端末100aは、通信部110と、入力部120と、出力部130と、記憶部140と、制御部150aとを有する。
【0068】
(制御部150aについて)
制御部150aは、コントローラ(controller)であり、例えば、CPUやMPU等によって、ユーザ端末100a内部の記憶装置に記憶されている各種プログラム(「コンテンツ取得プログラム」の一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部150aは、例えば、コントローラであり、ASICやFPGA等の集積回路により実現される。
【0069】
図9に示すように、制御部150aは、第1表示部151aと、受付部152と、第1送信部153と、第2送信部154と、取得部155と、第2表示部156と、登録部157aとを有し、以下に説明する情報処理の機能や作用を実現又は実行する。なお、制御部150aの内部構成は、
図9に示した構成に限られず、後述する情報処理を行なう構成であれば他の構成であっても良い。
【0070】
(第1表示部151aについて)
第1表示部151aは、コンテンツのバリエーションを選択するための選択画面を表示する。より具体的には、第1表示部151aは、コンテンツのバリエーションを示すバケットIDをユーザ端末100aのユーザに選択させる選択画面を表示する。実施形態2において、選択画面は、専用アプリで表示される。専用アプリは、事前にダウンロードされ、ユーザ端末100aにインストールされる。また、専用アプリは、情報処理装置200やFEサーバ300を管理する企業等によって配信されたものであり、情報処理装置200等と同一のドメインに接続する。また、サービス毎にバケットIDが選択される場合、専用アプリで表示された選択画面では、サービスIDを切り替えることも可能である。第1表示部151aの制御によって、出力部130は、表示装置に選択画面を出力する。なお、実施形態2に係る選択画面は、
図6で説明した画面例と同様で良い。
【0071】
(登録部157aについて)
登録部157aは、専用アプリのインストールの際に、専用アプリからCookieを取得し、Cookie記憶部141に登録する。専用アプリから取得されるCookieは、情報処理装置200と同一のドメインに対応する固有情報であり、ユーザ端末100又はユーザ端末100のユーザを識別するユーザ識別情報である。ユーザ端末100aがスマートフォンやタブレット端末等で実現される場合、Cookie記憶部141は、iOS(登録商標)であれば「keychain」、Android(登録商標)であれば「Shared Preferences」と呼ばれる。
【0072】
〔2−3.処理手順〕
次に、
図10を用いて、実施形態2に係るユーザ端末100a及び情報処理装置200による処理の手順を説明する。
図10は、実施形態2に係る処理手順を示す処理シーケンス図である。実施形態1と同様に、
図10では、FEサーバ300の機能を有する情報処理装置200を例に挙げて説明する。
【0073】
図10に示すように、ユーザ端末100aは、選択画面を表示する専用アプリをダウンロードして、インストールする(ステップS201)。このとき、ユーザ端末100aは、専用アプリのインストール時にCookieを取得し、取得したCookieをCookie記憶部141に登録する(ステップS202)。そして、ユーザ端末100aは、ユーザ操作に応じて、専用アプリにより選択画面を表示する(ステップS203)。続いて、ユーザ端末100aは、サービス毎にバケットIDを選択するための選択画面に対するユーザ操作により、サービス毎にバケットIDの選択を受け付ける(ステップS204)。その後、ユーザ端末100aは、選択されたバケットIDと、サービスIDと、取得されたCookieとを情報処理装置200に対して送信する(ステップS205)。情報処理装置200は、ユーザ端末100aからバケットID、サービスID及びCookieを受信し、これらを対応付けて割当情報記憶部221に登録する(ステップS206)。
【0074】
そして、ユーザ端末100aは、アプリケーションブラウザ等を用いたサービスへのアクセスに際して、該当するCookieをCookie記憶部141から取得し、取得したCookieを含むコンテンツの配信要求を情報処理装置200に対して送信する(ステップS207)。情報処理装置200は、ユーザ端末100aからCookieを受信し、受信したCookieと、アクセスされたサービスのサービスIDとに対応するバケットIDを割当情報記憶部221から取得し、配信するコンテンツのバリエーションを決定する(ステップS208)。そして、情報処理装置200は、取得したバケットIDに対応するバリエーションのコンテンツをユーザ端末100aに配信する(ステップS209)。ユーザ端末100aは、情報処理装置200から受信したコンテンツを表示する(ステップS210)。
【0075】
〔3.変形例〕
上述した情報処理システム1は、上記実施形態以外にも種々の異なる形態にて実施されて良い。そこで、以下に、情報処理システム1の他の実施形態について説明する。
【0076】
〔3−1.コンテンツ識別情報の利用〕
上記実施形態では、バケットIDやサービスID、Cookieを予め登録しておき、バケットIDに対応するバリエーションのコンテンツを配信する例を示した。変形例では、さらに、コンテンツを識別するコンテンツID(コンテンツ識別情報)を予め登録して、コンテンツIDに対応するバリエーションのコンテンツを配信しても良い。
【0077】
具体的には、ユーザ端末100は、コンテンツIDをさらに選択するための選択画面を表示し、ユーザ操作に応じて、選択されたコンテンツIDをさらに受け付ける。そして、ユーザ端末100は、コンテンツIDとともに選択バリエーションに関する情報を情報処理装置200に送信する。また、情報処理装置200は、ユーザ端末100からコンテンツIDとともに、選択バリエーションに関する情報を受け付け、コンテンツIDをさらに対応付けて割当情報記憶部221に登録する。その後、情報処理装置200は、コンテンツの配信要求によって要求されたコンテンツのコンテンツIDに対応するバケットIDを割当情報記憶部221から取得し、取得したバケットIDのバリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。コンテンツIDは、特定のコンテンツに対応する識別情報である。例えば、コンテンツIDで示されるコンテンツは、複数のコンテンツ(例えばウェブページ)が1つのサービスに属していて、その中の1つのコンテンツに対応する。
【0078】
〔4.ハードウェア構成〕
上述してきた実施形態に係るユーザ端末100(ユーザ端末100a)や情報処理装置200は、例えば、
図11に示すような構成のコンピュータ1000によって実現される。以下、情報処理装置200を例に挙げて説明する。
図11は、情報処理装置200の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。
【0079】
コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インタフェース1500、入出力インタフェース1600、及び、メディアインタフェース1700を有する。
【0080】
CPU1100は、ROM1300又はHDD1400に記憶されたプログラムに基づいて動作し、各部の制御を行なう。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を記憶する。
【0081】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を記憶する。通信インタフェース1500は、通信網500(
図2に示したネットワークNに対応)を介して他の機器からデータを受信してCPU1100に送り、CPU1100が生成したデータを、通信網500を介して他の機器へ送信する。
【0082】
CPU1100は、入出力インタフェース1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インタフェース1600を介して、入力装置からデータを取得する。また、CPU1100は、入出力インタフェース1600を介して生成されたデータを出力装置へ出力する。
【0083】
メディアインタフェース1700は、記録媒体1800に記憶されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインタフェース1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えば、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto‐Optical Disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、又は、半導体メモリ等である。
【0084】
例えば、コンピュータ1000が実施形態に係る情報処理装置200として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部230の機能を実現する。また、HDD1400には、記憶部220内のデータが記憶される。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から通信網500を介してこれらのプログラムを取得しても良い。
【0085】
〔5.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行なわれるものとして説明した処理の全部または一部を手動的に行なうこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部または一部を公知の方法で自動的に行なうこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0086】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、割当情報記憶部221に記憶される情報は、ネットワークNや接続インタフェースを介して、外部に備えられた所定の記憶装置に記憶されても良い。
【0087】
また、上述してきた実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0088】
〔6.効果〕
上述してきたように、実施形態に係る情報処理装置200は、受付部231と、決定部232とを有する。受付部231は、コンテンツにおける複数のバリエーションから選択されたバリエーションである選択バリエーションに関する情報をユーザ端末100から受け付ける。決定部232は、ユーザ端末100によってコンテンツの配信要求が送信された場合に、受付部231によって受け付けられた選択バリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。
【0089】
これにより、情報処理装置200は、ユーザ端末100で選択されたバケットIDに関する情報を受け付け、ユーザ端末100によってコンテンツの配信要求が送信された場合に、バケットIDに対応するバリエーションを、ユーザ端末100に配信するコンテンツのバリエーションとして決定するので、ユーザ端末100のユーザが意図するバリエーションのコンテンツを配信することができる。
【0090】
また、受付部231は、ユーザ端末100又はユーザ端末100のユーザを識別するユーザ識別情報とともに、選択バリエーションに関する情報を受け付け、受け付けたユーザ識別情報と選択バリエーションとを対応付けて割当情報記憶部221に格納する。決定部232は、配信要求の送信元のユーザ識別情報に対応する選択バリエーションを割当情報記憶部221から取得し、取得した選択バリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。
【0091】
これにより、情報処理装置200は、Cookieとともに、ユーザ端末100で選択されたバケットIDに関する情報を受け付け、CookieとバケットIDとを対応付けて割当情報記憶部221に格納し、配信要求の送信元のユーザ端末100からのCookieに対応するバケットIDを割当情報記憶部221から取得し、取得したバケットIDに対応するバリエーションを、ユーザ端末100に配信するコンテンツのバリエーションとして決定するので、ユーザ端末100のユーザが意図するバリエーションのコンテンツを配信することができる。
【0092】
また、受付部231は、サービス毎に選択バリエーションに関する情報を受け付ける。決定部232は、ユーザ端末100によってコンテンツの配信要求が送信された場合に、当該配信要求によって要求されているコンテンツに対応するサービスの選択バリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。
【0093】
これにより、情報処理装置200は、ユーザ端末100で選択されたバケットIDに関する情報とともにサービスIDを受け付け、ユーザ端末100によってコンテンツの配信要求が送信された場合に、サービスIDに対応するバケットIDで識別されるバリエーションを、ユーザ端末100に配信するコンテンツのバリエーションとして決定するので、ユーザ端末100のユーザが意図するバリエーションのコンテンツを配信することができる。
【0094】
また、情報処理装置200は、配信部234を有する。配信部234は、コンテンツのバリエーションを選択するための選択画面を配信する。受付部231は、選択画面においてユーザに選択された選択バリエーションに関する情報を受け付ける。
【0095】
これにより、情報処理装置200は、バケットIDを選択するための選択画面をユーザ端末100に配信し、ユーザ端末100において選択画面で選択されたバケットIDに関する情報を受け付け、ユーザ端末100によってコンテンツの配信要求が送信された場合に、バケットIDに対応するバリエーションを、ユーザ端末100に配信するコンテンツのバリエーションとして決定するので、ユーザ端末100のユーザが意図するバリエーションのコンテンツを配信することができる。
【0096】
また、受付部231は、コンテンツを識別するコンテンツ識別情報とともに、選択バリエーションに関する情報を受け付け、受け付けたコンテンツ識別情報と選択バリエーションとを対応付けて割当情報記憶部221に格納する。決定部232は、配信要求によって要求されているコンテンツのコンテンツ識別情報に対応する選択バリエーションを割当情報記憶部221から取得し、取得した選択バリエーションを、ユーザ端末100へ配信するコンテンツのバリエーションとして決定する。
【0097】
これにより、情報処理装置200は、複数のコンテンツのうちの1つを識別するコンテンツIDとバケットIDとを対応付けて割当情報記憶部221に格納し、ユーザ端末100によって配信要求が送信された場合に、コンテンツIDに対応するバケットIDで識別されるバリエーションを割当情報記憶部221から取得し、取得したバケットIDに対応するバリエーションを、ユーザ端末100に配信するコンテンツのバリエーションとして決定するので、ユーザ端末100のユーザが意図するバリエーションのコンテンツを配信することができる。
【0098】
また、実施形態に係るユーザ端末100は、第1表示部151と、第1送信部153と、第2送信部154と、取得部155とを有する。第1表示部151は、コンテンツにおける複数のバリエーションの何れかを選択させる選択画面を表示する。第1送信部153は、選択画面において選択さればバリエーションである選択バリエーションに関する情報を送信する。第2送信部154は、コンテンツの配信要求を送信する。取得部155は、第2送信部154による配信要求に対して、第1送信部153によって送信された選択バリエーションに対応するコンテンツを取得する。
【0099】
これにより、ユーザ端末100は、選択画面で選択したバケットIDに関する情報を送信し、コンテンツの配信要求に応じて、バケットIDに対応するバリエーションのコンテンツを取得するので、ユーザ端末100のユーザが意図するバリエーションのコンテンツの配信を受けることができる。
【0100】
以上、本願の実施形態を図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0101】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、応答部は、応答手段や応答回路に読み替えることができる。