(57)【要約】  ローミングの有無を判定する。コンピュータに、コンピュータの位置情報を取得する位置情報取得手順と、位置情報が取得された位置においてコンピュータが接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得手順と、位置情報と、接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成手順とを実行させる。
2015181855.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
前記コンピュータの位置情報を取得する位置情報取得手順と、
前記位置情報が取得された位置において前記コンピュータが接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得手順と、
前記位置情報と、前記接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成手順と、
を実行させるためのプログラム。
【請求項２】
前記コンピュータに、
前記コンピュータに通信サービスを提供する契約を締結している通信キャリアを識別する契約キャリア識別情報を取得する契約キャリア情報取得手順をさらに実行させるためのプログラムであって、
前記ログ情報生成手順は、前記位置情報と、前記接続キャリア識別情報と、契約キャリア情報とが対応付けられたログ情報を生成する手順を有する、
請求項１に記載のプログラム。
【請求項３】
前記コンピュータに、
前記位置情報が取得された位置における通信環境に関する情報を取得する通信環境情報取得手順をさらに実行させるためのプログラムであって、
前記ログ情報生成手順は、前記位置情報と、前記接続キャリア識別情報と、前記通信環境に関する情報とが対応付けられたログ情報を生成する手順を有する、
請求項１又は請求項２に記載のプログラム。
【請求項４】
前記コンピュータに、
予め定められたイベントが発生した場合に、前記通信環境に関する情報を取得する第１の通信環境情報取得手順と、
前記第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、前記通信環境に関する情報を取得する第２の通信環境情報取得手順と、
をさらに実行させるためのプログラムであって、
前記予め定められたイベントは、（ｉ）前記通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）前記プログラムがバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、前記通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであり、
前記第１の期間は、前記第２の期間又は前記第３の期間よりも短い、
請求項３に記載のプログラム。
【請求項５】
前記コンピュータに、
前記ログ情報を収集するサーバに、前記ログ情報を送信するログ情報送信手順をさらに実行させるための、
請求項１から請求項３までの何れか一項に記載のプログラム。
【請求項６】
通信ネットワークに接続する通信制御部と、
位置情報を取得する位置情報取得部と、
前記位置情報が取得された位置において前記通信制御部が接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得部と、
前記位置情報と、前記接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成部と、
を備える情報処理装置。
【請求項７】
コンピュータに、
予め定められたイベントが発生した場合に、通信環境に関する情報を取得する第１の通信環境情報取得手順と、
前記第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、前記通信環境に関する情報を取得する第２の通信環境情報取得手順と、
を実行させるためのプログラムであって、
前記予め定められたイベントは、（ｉ）前記通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）前記プログラムがバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、前記通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであり、
前記第１の期間は、前記第２の期間又は前記第３の期間よりも短い、
プログラム。
【請求項８】
前記コンピュータに、
前記第１の通信環境情報取得手順が実行されてから、予め定められた第４の期間が経過した場合に、前記第２の通信環境情報取得手順を実行させる手順を実行させるためのプログラムであって、
前記第４の期間は、前記第１の期間と等しいか、前記第１の期間よりも短い、
請求項７に記載のプログラム。
【請求項９】
第１の通信環境情報取得手順及び第２の通信環境情報取得手順の少なくとも一方は、
外部の情報処理装置に対して、要求を送信する手順と、
前記外部の情報処理装置から、前記要求に対する応答を受信する手順と、
予め定められた第５の期間の間に前記応答を受信しなかった場合に、通信不能であると判断する手順と、
を有する、
請求項７又は請求項８に記載のプログラム。
【請求項１０】
前記コンピュータに、
前記コンピュータの通信環境に関する情報が取得された位置の位置情報を取得する位置情報取得手順と、
前記位置情報と、前記通信環境に関する情報とが対応付けられたログ情報を生成するログ情報生成手順と、
をさらに実行させるための、
請求項７から請求項９までの何れか一項に記載のプログラム。
【請求項１１】
通信ネットワークに接続する通信制御部と、
通信環境に関する情報を取得する通信環境情報取得部と、
を備え、
前記通信環境情報取得部は、
予め定められたイベントが発生した場合に、前記通信環境に関する情報を取得する第１の通信環境情報取得手順と、
前記第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、前記通信環境に関する情報を取得する第２の通信環境情報取得手順と、
を実行し、
前記予め定められたイベントは、（ｉ）前記通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）前記通信環境情報取得部がバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、前記通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであり、
前記第１の期間は、前記第２の期間又は前記第３の期間よりも短い、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム及び情報処理装置に関する。
【背景技術】
【０００２】
携帯電話などの無線通信端末を利用して、移動体通信ネットワークの回線速度などを測定することが知られている（例えば、特許文献１を参照。）。
（先行技術文献）
（特許文献）
（特許文献１）特開２００３−２４９８８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
近年、通信キャリア間の提携により、利用者の端末が当該利用者の契約している通信キャリアのサービスエリア外に存在する場合であっても、当該端末がサービスエリア内に存在する場合と同様のサービスを提供するローミング・サービスが利用されるようになってきた。しかし、ローミングに関する情報の地理的分布を効率よく取得する方法は知られていない。
【課題を解決するための手段】
【０００４】
本発明の第１の態様においては、プログラムが提供される。上記のプログラムを記憶するコンピュータ読み取り可能な媒体が提供されてもよい。上記のプログラムは、コンピュータに、コンピュータの位置情報を取得する位置情報取得手順を実行させるためのプログラムであってよい。上記のプログラムは、コンピュータに、位置情報が取得された位置においてコンピュータが接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得手順を実行させるためのプログラムであってよい。上記のプログラムは、コンピュータに、位置情報と、接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成手順を実行させるためのプログラムであってよい。【０００５】
上記のプログラムは、コンピュータに、コンピュータに通信サービスを提供する契約を締結している通信キャリアを識別する契約キャリア識別情報を取得する契約キャリア情報取得手順をさらに実行させるためのプログラムであってよい。上記のプログラムにおいて、ログ情報生成手順は、位置情報と、接続キャリア識別情報と、契約キャリア情報とが対応付けられたログ情報を生成する手順を有してよい。【０００６】
上記のプログラムは、コンピュータに、位置情報が取得された位置における通信環境に関する情報を取得する通信環境情報取得手順をさらに実行させるためのプログラムであってよい。上記のプログラムにおいて、ログ情報生成手順は、位置情報と、接続キャリア識別情報と、通信環境に関する情報とが対応付けられたログ情報を生成する手順を有してよい。【０００７】
上記のプログラムは、コンピュータに、予め定められたイベントが発生した場合に、通信環境に関する情報を取得する第１の通信環境情報取得手順を実行させるためのプログラムであってよい。上記のプログラムは、コンピュータに、第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、通信環境に関する情報を取得する第２の通信環境情報取得手順を実行させるためのプログラムであってよい。【０００８】
上記のプログラムにおいて、予め定められたイベントは、（ｉ）通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）プログラムがバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであってよい。上記のプログラムにおいて、第１の期間は、第２の期間又は第３の期間よりも短くてよい。上記のプログラムは、コンピュータに、ログ情報を収集するサーバに、ログ情報を送信するログ情報送信手順をさらに実行させるためのプログラムであってよい。【０００９】
本発明の第２の態様においては、情報処理装置が提供される。上記の情報提供装置は、上記の情報提供装置は、通信ネットワークに接続する通信制御部を備えてよい。上記の情報提供装置は、位置情報を取得する位置情報取得部を備えてよい。上記の情報提供装置は、位置情報が取得された位置において通信制御部が接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得部を備えてよい。上記の情報提供装置は、位置情報と、接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成部を備えてよい。【００１０】
本発明の第３の態様においては、プログラムが提供される。上記のプログラムを記憶するコンピュータ読み取り可能な媒体が提供されてもよい。上記のプログラムは、コンピュータに、予め定められたイベントが発生した場合に、通信環境に関する情報を取得する第１の通信環境情報取得手順を実行させるためのプログラムであってよい。上記のプログラムは、第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、通信環境に関する情報を取得する第２の通信環境情報取得手順実行させるためのプログラムであってよい。【００１１】
上記のプログラムにおいて、予め定められたイベントは、（ｉ）通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）プログラムがバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであってよい。上記のプログラムにおいて、第１の期間は、第２の期間又は第３の期間よりも短くてよい。【００１２】
上記のプログラムは、コンピュータに、第１の通信環境情報取得手順が実行されてから、予め定められた第４の期間が経過した場合に、第２の通信環境情報取得手順を実行させる手順を実行させるためのプログラムであってよい。上記のプログラムにおいて、第４の期間は、第１の期間と等しいか、第１の期間よりも短くてよい。【００１３】
上記のプログラムにおいて、第１の通信環境情報取得手順及び第２の通信環境情報取得手順の少なくとも一方は、外部の情報処理装置に対して、要求を送信する手順と、外部の情報処理装置から、要求に対する応答を受信する手順と、予め定められた第５の期間の間に応答を受信しなかった場合に、通信不能であると判断する手順とを有してよい。上記のプログラムは、コンピュータに、コンピュータの通信環境に関する情報が取得された位置の位置情報を取得する位置情報取得手順をさらに実行させるためのプログラムであってよい。上記のプログラムは、コンピュータに、位置情報と、通信環境に関する情報とが対応付けられたログ情報を生成するログ情報生成手順をさらに実行させるためのプログラムであってよい。【００１４】
本発明の第４の態様においては、情報処理装置が提供される。上記の情報処理装置は、通信ネットワークに接続する通信制御部を備えてよい。上記の情報処理装置は、通信環境に関する情報を取得する通信環境情報取得部を備えてよい。上記の情報処理装置において、通信環境情報取得部は、予め定められたイベントが発生した場合に、通信環境に関する情報を取得する第１の通信環境情報取得手順と、第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、通信環境に関する情報を取得する第２の通信環境情報取得手順とを実行してよい。【００１５】
上記の情報処理装置において、予め定められたイベントは、（ｉ）通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）通信環境情報取得部がバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであってよい。上記の情報処理装置において、第１の期間は、第２の期間又は第３の期間よりも短くてよい。【００１６】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１７】
【図１】通信状況解析システム１００の一例を概略的に示す。
【図２】通信端末１１０の一例を概略的に示す。
【図３】ログ情報のデータテーブル３００の一例を概略的に示す。
【図４】通信端末１１０の動作の一例を概略的に示す。
【図５】通信端末１１０の動作の他の例を概略的に示す。
【図６】通信端末６１０の一例を概略的に示す。
【図７】通信端末６１０の動作の一例を概略的に示す。
【発明を実施するための形態】
【００１８】
以下、発明の実施の形態を通じて本発明の一側面を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、図面において、同一または類似の部分には同一の参照番号を付して、重複する説明を省く場合がある。
【００１９】
図１は、通信状況解析システム１００の一例を概略的に示す。本実施形態において、通信状況解析システム１００は、通信端末１１０と、情報収集サーバ１２０とを備える。通信状況解析システム１００及び通信端末１１０は、情報処理装置の一例であってよい。通信端末１１０は、通信機能を有するコンピュータの一例であってよい。
【００２０】
通信端末１１０及び情報収集サーバ１２０は、通信ネットワーク１０を介して情報を送受する。通信端末１１０及び情報提供サーバ２０は、通信ネットワーク１０を介して情報を送受する。通信ネットワーク１０は、無線通信の伝送路であってもよく、無線通信の伝送路及び有線通信の伝送路の組み合わせであってもよい。通信ネットワーク１０は、携帯電話回線網などの移動体通信網、無線パケット通信網、インターネッ及び専用回線又はそれらの組み合わせであってもよい。
【００２１】
情報提供サーバ２０及び情報収集サーバ１２０のそれぞれは、一般的な構成の情報処理装置において、情報提供サーバ２０及び情報収集サーバ１２０のそれぞれの各部の動作を規定したソフトウエア又はプログラムを起動することにより実現されてよい。情報提供サーバ２０及び情報収集サーバ１２０として用いられる情報処理装置は、ＣＰＵ等のプロセッサ、ＲＯＭ、ＲＡＭ、通信インターフェースなどを有するデータ処理装置と、キーボード、タッチパネル、マイクなどの入力装置と、表示装置、スピーカなどの出力装置と、メモリ、ＨＤＤなどの記憶装置とを備えてよい。データ処理装置又は記憶装置は、上記のソフトウエア又はプログラムを記憶してよい。情報提供サーバ２０及び情報収集サーバ１２０は、プロセッサと、プロセッサによって実行される命令又はプログラムを記憶する記憶装置とを備えた情報処理装置の一例であってよい。上記の命令又はプログラムは、プロセッサによって実行されることにより、当該情報処理装置に、当該命令又はプログラムによって規定された動作を実行させる。
【００２２】
情報提供サーバ２０及び情報収集サーバ１２０のそれぞれは、仮想サーバ又はクラウドシステムであってもよい。また、情報提供サーバ２０及び情報収集サーバ１２０のそれぞれの機能が、複数のサーバによって実現されてもよい。
【００２３】
情報提供サーバ２０は、通信ネットワーク１０を介して、通信端末１１０に情報を提供することで、通信端末１１０のユーザにサービスを提供する。情報提供サーバ２０により提供されるサービスとしては、情報検索サービス、地図上でのナビゲーションサービス、メールサービス、映像・音楽データ配信サービス、電子書籍配信サービスなどを例示することができる。情報提供サーバ２０は、通信端末１１０から、通信端末１１０のユーザにより指定された情報に関する送信要求を受信する。情報提供サーバ２０は、通信端末１１０からの送信要求に応じて、通信端末１１０に情報を送信する。
【００２４】
通信端末１１０は、通信機能を有する。通信端末１１０は、無線通信機能を有してよい。通信端末１１０は、複数の通信方式に対応してもよい。例えば、通信端末１１０は、３Ｇ方式、ＬＴＥ方式、４Ｇ方式などの移動体通信方式と、ＷｉＦｉ（登録商標）、ＷｉＭＡＸ（登録商標）などの無線通信方式との両方の通信方式に対応する。通信端末１１０は、情報提供サーバ２０及び情報収集サーバ１２０と情報を送受することができる装置であればよく、Ｗｅｂブラウザソフトが導入されたパーソナルコンピュータ、携帯電話、携帯端末（ＰＤＡ、タブレット又はノートブック・コンピュータ若しくはラップトップ・コンピュータなどを例示することができる。）、無線端末などであってよい。
【００２５】
通信端末１１０は、一般的な構成の情報処理装置において、通信端末１１０の各部の動作を規定したソフトウエア又はプログラムを起動することにより実現されてよい。通信端末１１０として用いられる情報処理装置は、ＣＰＵ等のプロセッサ、ＲＯＭ、ＲＡＭ、通信インターフェースなどを有するデータ処理装置と、キーボード、タッチパネル、マイク、ＧＰＳ情報取得装置、加速度センサ、ジャイロセンサなどの入力装置と、表示装置、スピーカ、振動装置などの出力装置と、メモリ、ＨＤＤなどの記憶装置とを備えてよい。データ処理装置又は記憶装置は、上記のソフトウエア又はプログラムを記憶してよい。通信端末１１０は、通信機能を有し、プロセッサと、プロセッサによって実行される命令又はプログラムを記憶する記憶装置とを備えた情報処理装置の一例であってよい。上記の命令又はプログラムは、プロセッサによって実行されることにより、当該情報処理装置に、当該命令又はプログラムによって規定された動作を実行させる。
【００２６】
通信端末１１０は、ユーザ指示を受け付け、ユーザ指示によって指示された処理を実行する。ユーザ指示は、通信端末１１０に対して、通信環境に関する情報を取得するための処理以外の処理を実行することを指示する指示であってよい。通信端末１１０は、ユーザ指示を受け付けた場合に、通信端末１１０の通信環境に関する情報（通信環境情報と称する場合がある。）と、通信環境情報を取得した位置を示す位置情報とを取得する。通信端末１１０は、ユーザ指示によって指示された処理が実行される場合に、通信環境情報及び位置情報を取得してもよい。位置情報は、緯度及び経度に関する情報であってよく、さらに高度に関する情報を含んでもよい。通信端末１１０は、少なくとも通信環境情報及び位置情報が対応付けられた情報（ログ情報と称する場合がある。）を、情報収集サーバ１２０に送信する。
【００２７】
通信環境情報としては、通信の可否、電波状況（電波受信レベル、電波強度、ＲＳＣＰ（Ｒｅｃｅｉｖｅｄ  Ｓｉｇｎａｌ  Ｃｏｄｅ  Ｐｏｗｅｒ）、ＣＩＤ（Ｃｅｌｌ  ＩＤ）などを例示することができる。）、通信品質（通信速度、データ通信のスループット、データ通信のレイテンシなどを例示することができる。）、通信方式、通信キャリアなどに関する情報を例示することができる。通信環境情報は、電波に関連する情報以外のネットワークに関する情報を含んでもよい。通信の可否は、例えば、電波受信レベルが予め定められたレベルよりも小さい場合（例えば、圏外である場合）に、通信が可能でない（通信不可と称する場合がある。）と判断される。
【００２８】
通信の可否は、特定の電波状況又は通信品質に関する情報を取得する処理（試行と称する場合がある。）を複数回繰り返した結果に基づいて、判断されてもよい。例えば、予め定められた回数の試行のうち、電波状況又は通信品質が予め定められた第１の閾値よりも良好であった試行の割合が、予め定められた第２の閾値よりも大きい場合に、通信が可能である（通信可能と称する場合がある。）と判断される。それ以外の場合は、通信が可能でない（通信不能と称する場合がある。）と判断される。
【００２９】
ログ情報は、通信環境情報と、位置情報と、通信環境情報を取得した時刻を示す情報、位置情報を取得したときのＧＰＳ強度を示す情報及び通信端末１１０に関する情報の少なくとも１つとが対応づけられた情報であってもよい。通信端末１１０に関する情報としては、通信端末１１０のそれぞれを識別する端末識別情報、通信端末１１０の機種を示す情報、通信端末１１０のＯＳを示す情報などを例示することができる。
【００３０】
通信環境情報を取得した時刻を示す情報は、通信端末１１０が通信環境情報の取得処理を開始した時刻であってもよく、通信端末１１０が通信環境情報の取得処理を完了した時刻であってもよく、通信端末１１０がユーザ指示を受け付けた時刻であってもよい。端末識別情報は、コンピュータを識別する識別情報の一例であってよい。
【００３１】
端末識別情報は、通信端末１１０のそれぞれを識別することができる情報であれば特に限定されないが、ユーザを特定することなく、通信端末１１０を識別することができる情報であることが好ましい。これにより、情報収集サーバ１２０は、ユーザを特定することなく、ログ情報の時間的な関連性を考慮して、ログ情報を解析することができる。
【００３２】
例えば、特定の通信端末１１０の端末識別情報として、ランダムに選択された符号列が付与される。符号列は、１以上の通信端末１１０のそれぞれに固有の符号列であってもよく、複数の通信端末１１０の間で再利用されてもよい。端末識別情報は、予め定められた期間ごとに更新されてもよく、任意のタイミングで更新されてもよい。
【００３３】
情報収集サーバ１２０は、１以上の通信端末１１０のそれぞれからログ情報を受け取る。情報収集サーバ１２０は、受け取ったログ情報を記憶装置に格納してよい。情報収集サーバ１２０は、ログ情報を用いて通信状況を解析してよい。
【００３４】
図２は、通信端末１１０の一例を概略的に示す。図２の説明において、図１に関連した説明と重複する部分については説明を省略する場合がある。本実施形態において、通信端末１１０は、入力部２１２と、処理実行部２１４と、環境情報取得部２１６と、位置情報取得部２１８と、出力部２２２と、識別情報取得部２２４と、ログ情報生成部２２６と、通信制御部２２８とを備える。通信端末１１０の各部は、互いに情報を送受する。環境情報取得部２１６は、通信環境情報取得部の一例であってよい。識別情報取得部２２４は、端末情報取得部、接続キャリア情報取得部及び契約キャリア情報取得部の少なくとも１つの一例であってよい。
【００３５】
通信端末１１０の各部は、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよく、ハードウエアとソフトウエアとの組み合わせにより実現されてもよい。また、プログラムが実行されることにより、コンピュータが、通信端末１１０の一部として機能してもよい。プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリ、ハードディスクなどのコンピュータ読み取り可能な媒体に記憶されていてもよく、ネットワークに接続された記憶装置に記憶されていてもよい。プログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、通信端末１１０のコンピュータにインストールされてよい。
【００３６】
コンピュータを通信端末１１０の一部として機能させるプログラムは、通信端末１１０の各部の動作を規定したモジュールを備えてよい。これらのプログラム又はモジュールは、プロセッサ、通信インターフェース、ＧＰＳ情報取得装置等に働きかけて、コンピュータを通信端末１１０の各部として機能させたり、コンピュータに通信端末１１０における情報処理方法を実行させたりする。
【００３７】
これらのプログラムに記述された情報処理は、コンピュータに読込まれることにより、ソフトウエアと、通信端末１１０の各種のハードウエア資源とが協働した具体的手段として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータの使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた通信端末１１０を構築することができる。
【００３８】
入力部２１２は、ユーザから、ユーザ指示を受け付ける。入力部２１２は、キーボード、タッチパネル又はマイクであってよい。ユーザ指示は、通信端末１１０に対して、通信環境に関する情報を取得するための処理以外の処理を実行することを指示する。したがって、専ら回線速度又は通信速度を測定するための情報を取得することを要求する指示、専ら回線速度又は通信速度を測定するサービスを提供するサーバにアクセスすることを要求する指示などは、ユーザ指示に含まれない。入力部２１２は、ユーザ要求受付部の一例であってよい。
【００３９】
処理実行部２１４は、ユーザ指示によって指示された処理を実行する。ユーザ指示によって指示された処理は、通信機能を利用する処理であってもよく、通信機能を利用しない処理であってもよい。
【００４０】
ユーザ指示によって指示された処理は、通信端末１１０がユーザ指示を受け付けた時点で実行される処理であってもよい。ユーザ指示によって指示された処理は、ユーザの設定により、予め定められた時刻に又は予め定められた時間が経過するごとに自動的に実行される処理であってもよく、通信端末１１０の初期設定又は通信端末１１０上で動作するプログラムの初期設定により、予め定められた時刻に又は予め定められた時間が経過するごとに自動的に実行される処理であってもよい。
【００４１】
ユーザ指示によって指示された処理は、ユーザ指示によって指示された情報を、ユーザが知覚することができる形態で出力する処理であってよい。このような処理としては、通信端末１１０の表示画面をスクロールして、表示画面に表示される画像の表示位置を変更する処理、情報提供サーバ２０にアクセスして、情報提供サーバ２０からユーザが指示した情報を取得して、取得した情報を通信端末１１０の表示画面に表示する処理などを例示することができる。
【００４２】
ユーザ指示によって指示された処理は、通信端末１１０のボタンの押下又はスイッチの切替えに対応づけられた処理であってよい。ユーザ指示によって指示された処理は、通信端末１１０の電源をＯＦＦにする処理であってもよい。ユーザ指示によって指示された処理は、通信端末１１０からログオフする処理であってもよく、通信端末１１０をスリープ状態にする処理であってもよい。
【００４３】
環境情報取得部２１６は、通信端末１１０の通信環境情報を取得する（通信環境情報取得手順を実行すると称する場合がある。）。環境情報取得部２１６は、予め定められたイベントが発生した場合に、通信端末１１０の通信環境情報を取得してよい。予め定められたイベントとしては、（ｉ）通信環境情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）環境情報取得部２１６がバックグラウンドで動作する状態に移行してから予め定められた期間（第２の期間の一例であってよい。）が経過したこと、（ｉｉｉ）以前に、通信環境情報を取得するための処理が実行されてから予め定められた期間（第３の期間の一例であってよい。）が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つを例示することができる。
【００４４】
環境情報取得部２１６は、例えば、ユーザ指示を受け付けた場合に、ユーザ指示によって指示された処理とは別に、通信端末１１０の通信環境情報を取得する。環境情報取得部２１６は、処理実行部２１４がユーザ指示によって指示された処理を実行する場合に、ユーザ指示によって指示された処理とは別に、通信環境情報を取得してもよい。環境情報取得部２１６は、予め定められた時刻に又は予め定められた時間が経過するごとに（通信環境情報を取得するタイミングと称する場合がある。）、通信環境情報を取得してもよい。
【００４５】
環境情報取得部２１６は、上記の予め定められたイベントが発生した場合に、通信環境に関する情報を取得する第１の通信環境情報取得手順と、第１の通信環境情報取得手順が実行されてから、予め定められた期間（第１の期間の一例であってよい。第１の期間は、第２の期間又は第３の期間よりも短くてよい。）の間に、通信環境に関する情報を取得する第２の通信環境情報取得手順とを実行してよい。環境情報取得部２１６は、第１の通信環境情報取得手順が実行されてから、上記の予め定められた期間よりも短い期間（第４の期間の一例であってよい。第４の期間は、第１の期間と等しくてもよく、第１の期間より短くてもよい。）が経過した場合に、第２の通信環境情報取得手順を実行してもよい。
【００４６】
なお、上記の予め定められた期間の間に、通信環境情報取得手順をさらに繰り返してよい。環境情報取得部２１６は、通信セッションの切替処理、ネットワークの切替処理、ハンドオーバ処理などを検出した場合に、上記の予め定められた期間の間に、通信環境情報取得手順を複数回実行してもよい。第１の通信環境情報取得手順が実行されてから、第２の通信環境情報取得手順が実行されるまでの間の期間は、５分以下であってもよく、３分以下であってもよく、２分以下であってもよく、１分以下であってもよく、３０秒以下であってもよく、２０秒以下であってもよく、１５秒以下であってもよく、１０秒以下であってもよく、５秒以下であってもよい。
【００４７】
第１の通信環境情報取得手順及び第２の通信環境情報取得手順の少なくとも一方は、情報提供サーバ２０（外部の情報処理装置の一例であってよい。）に対して、要求を送信する手順と、情報提供サーバ２０から、上記の要求に対する応答を受信する手順と、予め定められた期間（第５の期間の一例であってよい。第５の期間は、第４の期間よりも短くてよい。）の間に上記の応答を受信しなかった場合に、通信不能であると判断する手順とを有してよい。また、情報提供サーバ２０に対して情報を送信するよう要求した後、情報提供サーバ２０から当該情報を取得するまでの時間と、当該情報の情報量とに基づいて、通信速度などの通信環境情報を取得する手順を有してもよい。
【００４８】
環境情報取得部２１６が、通信環境情報取得手順を実行するときに、通信セッションの切替処理、ネットワークの切替処理、ハンドオーバ処理などが発生する場合がある。通信セッションの切替処理は、例えば、通話セッションとデータ通信セッションとを切り替える場合に発生する。ネットワークの切替処理は、例えば、２Ｇ方式、３Ｇ方式、ＬＴＥ方式などの通信方式間で通信方式を変更する場合、又は、他の通信キャリアの通信ネットワークにローミングする場合に発生する。
【００４９】
通信セッションの切替処理、ネットワークの切替処理、ハンドオーバ処理などが発生した場合、通信環境情報の測定結果に影響を与える可能性がある。例えば、情報提供サーバ２０に対して情報を送信するよう要求した後、情報提供サーバ２０から当該情報を取得するまでの時間と、当該情報の情報量とに基づいて、通信速度を測定する場合において、通信セッションの切替処理、ネットワークの切替処理、ハンドオーバ処理などが発生すると、通信速度の測定結果が、実際の通信速度よりも小さくなってしまう。通信セッションの切替処理、ネットワークの切替処理、ハンドオーバ処理などの実行時間によっては、通信不能と判断される可能性もある。このような場合であっても、予め定められた期間の間に、通信環境情報取得手順を複数回実行することにより、通信環境情報をより正確に測定することができる。
【００５０】
一実施形態によれば、入力部２１２がＧＰＳロガーの起動を指示するユーザ指示を受け付けた場合、環境情報取得部２１６は、ＧＰＳロガーが一定の時間間隔でログ情報を取得するたびに、通信環境情報を取得する。他の実施形態によれば、入力部２１２がメールソフトの起動を指示するユーザ指示を受け付けた場合、環境情報取得部２１６は、メールソフトがバックグラウンドでメールサーバにアクセスするたびに、通信環境情報を取得する。さらに他の実施形態によれば、入力部２１２が目覚まし機能の設定を指示するユーザ指示を受け付けた場合、環境情報取得部２１６は、目覚まし機能の設定時または作動時に、通信環境情報を取得する。
【００５１】
環境情報取得部２１６は、情報提供サーバ２０に対してユーザが指示した情報を送信するよう要求してから、当該情報を情報提供サーバ２０から取得するまでの時間と、当該情報の情報量とに基づいて、通信環境情報を取得してもよい。通信環境情報を取得する処理は、バックグラウンドで実行されてよい。
【００５２】
これにより、ユーザが通信端末１１０を操作している間に、通信環境情報を取得することができる。また、通信端末１１０が通信機能を利用しない処理を実行している場合であっても、通信環境情報を取得することができる。さらに、ユーザが通信環境情報を取得するために特別な操作を実施しなくても、通信環境情報を取得することができる。その結果、広いエリアにわたって、ユーザの使用実態に近い通信状況を把握することができる。また、通信状況の経時変化などを把握することができる。
【００５３】
位置情報取得部２１８は、ユーザ指示を受け付けた場合に、ユーザ指示によって指示された処理とは別に、通信端末１１０の位置情報を取得する。位置情報取得部２１８は、処理実行部２１４がユーザ指示によって指示された処理を実行する場合に、ユーザ指示によって指示された処理とは別に、位置情報を取得してもよい。位置情報取得部２１８は、環境情報取得部２１６が通信環境情報を取得する場合に、位置情報を取得してよい。これにより、通信環境情報を位置情報に対応付けることができる。位置情報を取得する処理は、バックグラウンドで実行されてよい。
【００５４】
位置情報取得部２１８は、ＧＰＳ情報と、無線通信網又は移動体通信網のアクセスポイントからの電波情報との少なくとも一方の情報に基づいて、位置情報を取得してよい。位置情報取得部２１８は、ＧＰＳ情報取得装置であってもよく、通信端末１１０に配されたＧＰＳ情報取得装置から位置情報を取得してもよい。位置情報取得部２１８は、位置情報とともに、ＧＰＳ精度に関する情報を取得してもよい。
【００５５】
出力部２２２は、ユーザ指示によって指示された情報を、ユーザが知覚することができる形態で出力する。出力部２２２は、液晶ディスプレイ、有機ＥＬディスプレイなどの表示装置、スピーカなどの音声出力装置又はバイブレータなどの振動装置であってよい。
【００５６】
例えば、出力部２２２は、ユーザからの指示に応じて、画面上に画像を表示したり、画面上に表示される画像の表示位置を変更したりする。出力部２２２は、通信ネットワーク１０を介して情報提供サーバ２０から取得した情報又は通信端末１１０の記憶装置に格納されている情報に基づいて、画像を表示してよい。また、出力部２２２は、通信ネットワーク１０を介して情報提供サーバ２０から取得した情報又は通信端末１１０の記憶部に格納されている情報を、音声情報としてスピーカから出力してもよい。これにより、ユーザは、情報を知覚することができる。
【００５７】
一方、特定の処理がバックグラウンドで実行されている場合、当該処理で利用される情報は出力部２２２から、ユーザが知覚することができる形態で出力されない。そのため、ユーザは、情報を知覚することができない。
【００５８】
識別情報取得部２２４は、通信端末１１０のそれぞれを識別する端末識別情報を取得してよい。識別情報取得部２２４は、通信端末１１０のそれぞれに対する端末識別情報を生成してもよく、端末識別情報を情報収集サーバ１２０から受信してもよい。端末識別情報は、例えば乱数を用いてランダムに定められてもよい。端末識別情報は、予め定められた時刻に又は予め定められた時間が経過するごとに更新されてもよい。識別情報取得部２２４は、通信端末１１０の機種を示す情報、通信端末１１０のＯＳを示す情報などの通信端末１１０に関する情報を取得してもよい。
【００５９】
識別情報取得部２２４は、通信端末１１０が接続している通信ネットワーク１０の通信キャリア（通信事業者と称される場合もある。）を識別する識別情報（接続キャリア識別情報と称する場合がある。）を取得してよい。識別情報取得部２２４は、位置情報が取得された位置において通信端末１１０が接続している通信ネットワーク１０の接続キャリア識別情報を取得してよい。通信キャリアを識別する識別情報としては、１以上の通信キャリアのそれぞれに割り当てられたコード、１以上の通信キャリアのそれぞれの名称などを例示することができる。
【００６０】
一実施形態において、識別情報取得部２２４は、通信パケットを解析して、通信パケットに含まれる接続キャリア識別情報を抽出してよい。通信パケットに含まれる接続キャリア識別情報としては、ＳＩＤ（Ｓｙｓｔｅｍ  ＩＤ）、Ｎｅｔｗｏｒｋ  Ｏｐｅｒａｔｏｒ  ＰＬＭＮ（Ｐｕｂｌｉｃ  Ｌａｎｄ  Ｍｏｂｉｌｅ  Ｎｅｔｗｏｒｋ）、Ｎｅｔｗｏｒｋ  Ｏｐｅｒａｔｏｒ  Ｃａｒｒｉｅｒなどを例示することができる。識別情報取得部２２４は、通信パケットを解析して、ＮＩＤ（Ｎｅｔｗｏｒｋ  ＩＤ）、ＭＣＣ（Ｍｏｂｉｌｅ  ｃｏｕｎｔｒｙ  ｃｏｄｅ）、ＭＮＣ（ｍｏｂｉｌｅ  ｎｅｔｗｏｒｋ  ｃｏｄｅ）等の情報を取得してもよい。接続キャリア識別情報は、通信パケットに含まれる複数の情報の組み合わせであってもよい。他の実施形態において、識別情報取得部２２４は、ＯＳにアクセスして、接続キャリア識別情報を取得してよい。ＯＳは、例えば、通信パケットを解析して、通信パケットに含まれる接続キャリア識別情報を取得する。
【００６１】
なお、位置情報取得部２１８による位置情報の取得処理と、識別情報取得部２２４による接続キャリア識別情報の取得処理との間に関連があれば、位置情報取得部２１８により取得された位置情報により示される位置と、識別情報取得部２２４が接続キャリア識別情報を取得した位置とは、正確に一致していなくてもよい。例えば、通信端末１１０が移動している場合、位置情報取得部２１８により取得された位置情報により示される位置と、識別情報取得部２２４が接続キャリア識別情報を取得した位置とが正確に一致しない場合がある。
【００６２】
このような場合であっても、位置情報取得部２１８による位置情報の取得処理と、識別情報取得部２２４による接続キャリア識別情報の取得処理との間に関連がある場合には、当該接続キャリア識別情報を、位置情報が取得された位置における接続キャリア識別情報として取り扱ってよい。位置情報取得部２１８による位置情報の取得処理と、識別情報取得部２２４による接続キャリア識別情報の取得処理との間に関連があれる場合としては、位置情報取得部２１８が位置情報を取得することに伴って、識別情報取得部２２４が接続キャリア識別情報を取得した場合、識別情報取得部２２４が接続キャリア識別情報を取得することに伴って、位置情報取得部２１８が位置情報を取得した場合、位置情報取得部２１８による位置情報の取得処理と、識別情報取得部２２４による接続キャリア識別情報の取得処理とが同一のトリガ（イベントと称する場合がある。）に基づいて実行された場合などを例示することができる。
【００６３】
本実施形態において、識別情報取得部２２４は、通信端末１１０又は通信端末１１０のユーザに通信サービスを提供する契約を締結している通信キャリアを識別する識別情報（契約キャリア識別情報と称する場合がある。）を取得してよい。識別情報取得部２２４は、通信端末１１０のＳＩＭカード（Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ  Ｍｏｄｕｌｅ  Ｃａｒｄ）に記録された契約キャリア識別情報を取得してよい。
【００６４】
ＳＩＭカードに記録された契約キャリア識別情報としては、ＰＬＭＮ（Ｐｕｂｌｉｃ  Ｌａｎｄ  Ｍｏｂｉｌｅ  Ｎｅｔｗｏｒｋ）コード、ＭＮＣ（ｍｏｂｉｌｅ  ｎｅｔｗｏｒｋ  ｃｏｄｅ）、Ｃａｒｒｉｅｒを例示することができる。Ｃａｒｒｉｅｒは、通信キャリアの名称を記録するための記憶領域の名称であってよい。契約キャリア識別情報は、ＳＩＭカードに記録された複数の情報の組み合わせであってもよい。識別情報取得部２２４は、ＳＩＭカードにアクセスしてＰＬＭＮコードを取得してもよく、ＯＳにアクセスしてＰＬＭＮコードを取得してもよい。
【００６５】
ログ情報生成部２２６は、環境情報取得部２１６から、通信環境情報を取得する。ログ情報生成部２２６は、環境情報取得部２１６から、通信環境情報を取得した時刻を示す情報を取得してよい。ログ情報生成部２２６は、位置情報取得部２１８から、通信環境情報を取得した位置を示す位置情報を取得する。ログ情報生成部２２６は、位置情報取得部２１８から、位置情報を取得したときのＧＰＳ精度に関する情報を取得してよい。ログ情報生成部２２６は、識別情報取得部２２４から端末識別情報、接続キャリア識別情報及び契約キャリア識別情報の少なくとも１つを取得してよい。
【００６６】
ログ情報生成部２２６は、ログ情報を生成する。ログ情報を生成する処理はバックグラウンドで実行されてよい。ログ情報生成部２２６は、通信環境情報と、位置情報と、通信環境情報を取得した時刻を示す情報と、位置情報を取得したときのＧＰＳ強度を示す情報と、通信端末１１０に関する情報と、接続キャリア識別情報と、契約キャリア識別情報とからなる群から選択される少なくとも２つを対応づけて、ログ情報を生成してよい。
【００６７】
ログ情報生成部２２６は、少なくとも、通信環境情報と位置情報とを対応付けて、ログ情報を生成してよい。ログ情報生成部２２６は、位置情報と、接続キャリア識別情報とを対応付けて、ログ情報を生成してよい。ログ情報生成部２２６は、位置情報と、接続キャリア識別情報と、通信環境に関する情報とを対応付けて、ログ情報を生成してよい。ログ情報生成部２２６は、位置情報と、接続キャリア識別情報と、契約キャリア情報とを対応付けて、ログ情報を生成してよい。
【００６８】
これにより、接続キャリア識別情報と、位置情報とを含むログ情報を解析することにより、ローミングに関する情報の地理的分布に関する情報を取得することができる。ローミングに関する情報としては、ローミングの有無、ローミングに関する情報、ローミング先の通信キャリア、ローミング元の通信キャリアに関する情報を例示することができる。また、各通信キャリアの基地局の配置に関する統計情報の地理的分布に関する情報を取得することができる。
【００６９】
ログ情報生成部２２６は、接続キャリア識別情報と、契約キャリア情報とを比較して、ローミングの有無を検出してよい。ログ情報生成部２２６は、接続キャリア識別情報が取得された位置を示す位置情報と、ローミングの有無とを対応付けて、ログ情報を生成してもよい。
【００７０】
ログ情報生成部２２６は、通信環境情報に含まれるデータ通信のレイテンシに関する情報に基づいて、通信環境情報が取得されたときに使用されていた通信方式を決定してよい。例えば、レイテンシが予め定められた値より小さい場合、ログ情報生成部２２６は、環境情報取得部２１６が取得した通信環境情報は、通信端末１１０が第１の通信方式（ＬＴＥ方式、４Ｇ方式などを例示することができる。）により通信していた場合の情報であると判断する。一方、レイテンシが予め定められた値以上である場合、ログ情報生成部２２６は、環境情報取得部２１６が取得した通信環境情報は、通信端末１１０が第２の通信方式（３Ｇ方式などを例示することができる。）により通信していた場合の情報であると判断する。ログ情報生成部２２６は、通信環境情報が取得されたときに使用されていた通信方式に関する情報と、通信環境情報及び位置情報とを対応付けて、ログ情報を生成してよい。
【００７１】
ログ情報生成部２２６は、通信端末１１０上で動作するＯＳの内部関数を取得してよい。ログ情報生成部２２６は、取得した内部関数に基づいて、通信環境情報が取得されたときに使用されていた通信方式を決定してもよい。
【００７２】
ログ情報生成部２２６は、入力部２１２がユーザ指示を受け付けるごとに、ログ情報を生成してよい。ログ情報生成部２２６は、ユーザ指示によって指示された処理が実行されるごとに、ログ情報を生成してよい。ログ情報生成部２２６は、予め定められた時刻に又は予め定められた時間が経過するごとに（ログ情報を生成するタイミングと称する場合がある。）、ログ情報を生成してもよい。ログ情報を生成するタイミングは、通信環境情報を取得するタイミングとほぼ同一であってもよく、異なってもよい。
【００７３】
ログ情報生成部２２６は、生成されたログ情報を情報収集サーバ１２０に送信してよい。ログ情報生成部２２６は、ログ情報が生成されるごとに、ログ情報を情報収集サーバ１２０に送信してもよい。ログ情報生成部２２６は、予め定められた時刻に又は予め定められた時間が経過するごとに（ログ情報を送信するタイミングと称する場合がある。）、生成したログ情報を情報収集サーバ１２０に送信してよい。ログ情報を送信するタイミングは、ログ情報を生成するタイミングとほぼ同一であってもよく、異なってもよい。
【００７４】
ログ情報生成部２２６は、通信端末１１０の起動時、通信端末１１０のスリープ状態からの復帰時及びコンピュータを通信端末１１０の一部として機能させるためのプログラムの起動時の少なくとも一方のタイミングにおいて、生成したログ情報を情報収集サーバ１２０に送信してもよい。ログ情報生成部２２６は、ログ情報を送信してから、次回のログ情報を送信するまでの間、生成したログ情報を格納しておいてよい。
【００７５】
通信制御部２２８は、通信端末１１０と、通信ネットワーク１０、情報提供サーバ２０及び情報収集サーバ１２０との間の通信を制御する。通信制御部２２８は、通信インターフェースであってよい。通信制御部２２８は、複数の通信方式に対応していてもよい。
【００７６】
本実施形態において、情報収集サーバ１２０が情報提供サーバ２０とは異なるサーバであり、通信端末１１０が通信環境情報を情報収集サーバ１２０に送信する場合について説明した。しかし、通信状況解析システム１００は本実施形態に限定されない。他の実施形態によれば、通信端末１１０は、通信環境情報を情報提供サーバ２０に送信する。情報提供サーバ２０は、通信端末１１０から受け取った通信環境情報を記憶装置に格納する。情報収集サーバ１２０は、情報提供サーバ２０に格納された通信環境情報に基づいて、通信状況を解析する。また、通信端末１１０の各部の機能は厳密に区別されるものではなく、通信端末１１０の各部の機能は上記の実施形態に限定されない。
【００７７】
以上の実施形態においては、通信端末１１０が、通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けた場合に、通信環境情報及び位置情報を取得することで、広いエリアにわたって、ユーザの使用実態に近い通信状況を把握する場合について説明した。しかしながら、広いエリアにわたって、ユーザの使用実態に近い通信状況を把握する方法は、上記の実施形態に限定されない。
【００７８】
他の実施形態において、通信端末１１０は、ユーザから、処理を開始する旨の入力を受け付けた後、予め定められた時刻に又は予め定められた時間が経過するごとに、通信環境に関する情報を自動的に取得してよい。ユーザは、通信環境情報を取得するたびに、通信環境情報を取得するための操作を実施する必要がないので、広いエリアにわたって、ユーザの使用実態に近い通信状況を把握することができる。また、通信状況の経時変化などを把握することができる。
【００７９】
この場合において、通信端末１１０は、通信環境情報を取得するごとに、通信環境情報を情報収集サーバ１２０に送信してよい。通信端末１１０は、取得した通信環境情報を記憶しておき、予め定められた条件に従って、記憶した通信環境情報を情報収集サーバ１２０に送信してもよい。例えば、予め定められた条件としては、通信環境情報の取得回数が予め定められた回数に到達した場合、記憶した通信環境情報の情報量が予め定められた容量に到達した場合、予め定められた時刻に到達した場合、予め定められた時間が経過した場合などを例示することができる。通信端末１１０は、情報収集サーバ１２０に通信環境情報を送信するタイミングにおいて、通信を実施することができない場合、取得した通信環境情報を送信せずに記憶しておき、次回の送信のタイミングにおいて送信してもよい。
【００８０】
図３は、ログ情報のデータテーブル３００の一例を概略的に示す。データテーブル３００は、端末ＩＤ３１０と、通信環境情報が取得された日時３２０に関する情報と、通信環境情報が取得された位置を示す位置情報３３０と、位置情報３３０が取得されたときのＧＰＳ精度３４０に関する情報と、通信環境情報３５０とを対応付けて格納する。通信環境情報３５０は、通信可否３５２に関する情報と、データ通信のスループット３５４に関する情報と、データ通信のレイテンシ３５６に関する情報とを含んでよい。端末ＩＤ３１０は、コンピュータを識別する識別情報の一例であってよい。
【００８１】
本実施形態において、端末ＩＤ３１０は、ランダムに選択された符号列であり、１日おきに更新される。これにより、情報収集サーバ１２０は、ユーザを特定することなく、ログ情報の時間的な関連性を考慮して、ログ情報を解析することができる。
【００８２】
図４は、通信端末１１０の動作の一例を概略的に示す。図４を用いて、ユーザ指示により指示された処理が通信機能を利用しない処理であり、通信端末１１０が情報提供サーバ２０にアクセスしない場合に、通信端末１１０がログ情報を生成する動作について説明する。
【００８３】
本実施形態によれば、ステップ４０２（ステップをＳと省略して表記する場合がある。）において、入力部２１２が、ユーザから、通信端末１１０の操作に関するユーザ指示を受け付ける。例えば、画面をスクロールさせるためのユーザ指示を受け付ける。Ｓ４０４において、処理実行部２１４が、ユーザ指示により指示された操作に応じた処理を実行する。
【００８４】
一方、Ｓ４１２において、Ｓ４０４のバックグラウンドで、環境情報取得部２１６が通信環境情報を取得する。環境情報取得部２１６は、入力部２１２がユーザ指示を受け付けたことに応じて、予め定められた期間の間に、通信環境情報取得手順を複数回実行してもよい。ユーザ指示により指示された処理が通信機能を利用しない処理である場合、環境情報取得部２１６は、少なくとも、通信の可否に関する情報を取得する。可能であれば、環境情報取得部２１６は、電波強度、通信方式及び通信キャリアの少なくとも１つに関する情報を取得してよい。このとき、識別情報取得部２２４が、通信パケットを解析して、通信パケットに含まれる接続キャリア識別情報を抽出してもよい。なお、識別情報取得部２２４は、ＯＳにアクセスして、接続キャリア識別情報を取得してもよい。
【００８５】
Ｓ４１４において、Ｓ４０４のバックグラウンドで、位置情報取得部２１８が位置情報を取得する。Ｓ４１４の後、Ｓ４１６において、Ｓ４０４のバックグラウンドで、ログ情報生成部２２６がログ情報を生成して処理を終了する。なお、本実施形態において、各ステップを実施する順序及びタイミングは、技術的に矛盾が生じない範囲において、適宜、変更することができる。
【００８６】
図５は、通信端末１１０の動作の他の例を概略的に示す。図５を用いて、ユーザ指示により指示された処理が通信機能を利用する処理であり、通信端末１１０が情報提供サーバ２０にアクセスして情報を取得する場合に、通信端末１１０がログ情報を生成する動作について説明する。
【００８７】
本実施形態によれば、Ｓ５０２において、入力部２１２が、ユーザから、情報提供サーバ２０にアクセスして、情報提供サーバ２０からユーザが指示した情報を取得するためのユーザ指示を受け付ける。例えば、検索条件に一致する飲食店に関する情報を取得するためのユーザ指示を受け付ける。Ｓ５０４において、処理実行部２１４が、ユーザ指示により指示された処理を実行して、情報提供サーバ２０から該当するコンテンツをダウンロードする。
【００８８】
Ｓ５０６において、環境情報取得部２１６が通信環境情報を取得する。環境情報取得部２１６は、入力部２１２がユーザ指示を受け付けたことに応じて、予め定められた期間の間に、通信環境情報取得手順を複数回実行してもよい。このとき、識別情報取得部２２４が、通信パケットを解析して、通信パケットに含まれる接続キャリア識別情報を抽出してもよい。なお、識別情報取得部２２４は、ＯＳにアクセスして、接続キャリア識別情報を取得してもよい。Ｓ５０６の処理は、バックグラウンドで実行されてよい。
【００８９】
環境情報取得部２１６は、少なくとも通信の可否に関する情報を取得してよい。ユーザ指示により指示された処理が通信機能を利用する処理である場合、環境情報取得部２１６は、さらに、電波状況、電波強度、通信速度、データ通信のスループット、データ通信のレイテンシ、通信方式及び通信キャリアの少なくとも１つに関する情報を取得してよい。環境情報取得部２１６は、情報提供サーバ２０に対してユーザが指示した情報を送信するよう要求してから、当該情報を情報提供サーバ２０から取得するまでの時間と、当該情報の情報量とに基づいて、通信環境情報を取得してもよい。
【００９０】
一方、Ｓ５１２において、Ｓ５０４及びＳ５０６の少なくとも一方のバックグラウンドで、位置情報取得部２１８が位置情報を取得する。Ｓ５０６及びＳ５１２の後、Ｓ５２０において、ログ情報生成部２２６がログ情報を生成して処理を終了する。Ｓ５２０の処理は、バックグラウンドで実行されてよい。なお、本実施形態において、各ステップを実施する順序及びタイミングは、技術的に矛盾が生じない範囲において、適宜、変更することができる。
【００９１】
図６は、通信端末６１０の一例を概略的に示す。通信端末６１０は、通信端末１１０に代わって又は通信端末１１０とともに、通信状況解析システム１００の一部を構成してよい。通信端末６１０は、プログラム管理部６３２、移行判断部６３４及びタイミング決定部６３６を備える点で、通信端末１１０と相違する。通信端末６１０は、上記の相違点以外の点については、通信端末１１０と同様の構成を有してよい。
【００９２】
通信端末１１０に関連して、環境情報取得部２１６は、通信環境を取得する処理をバックグラウンドで実行してもよく、位置情報取得部２１８は、位置情報を取得する処理をバックグラウンドで実行してもよい旨を説明した。しかし、通信端末のＯＳ（Operating System）によっては、バックウラウンド状態におけるプログラムの動作を制限している場合がある。
【００９３】
例えば、Ａｐｐｌｅ社が提供するｉＯＳ（商標）においては、フォアグラウンド状態及びバックグラウンド状態のそれぞれに、２つの起動状態が存在する。具体的には、フォアグラウンド状態には、プログラムはフォアグラウンドにあるが、利用されていない状態（Ｉｎａｃｔｉｖｅと称される場合がある。）と、プログラムがフォアグラウンドにあり、利用されている状態（Ａｃｔｉｖｅと称される場合がある。）という２つの起動状態がある。バックグラウンド状態には、プログラムはバックグラウンドにあるが、まだ動作している状態（Ｂａｃｋｇｒｏｕｎｄ又はＢａｃｋｇｏｒｕｎｄ  Ｒｕｎｎｉｎｇと称される場合がある。）と、プログラムがバックグラウンドにあり、動作していない状態（Ｓｕｓｐｅｎｄｅｄと称される場合がある）という２つの起動状態がある。
【００９４】
ｉＯＳにおいては、プログラムの起動状態が「Ｂａｃｋｇｒｏｕｎｄ  Ｒｕｎｎｉｎｇ」に移行した後、予め定められた時間が経過すると、一部の例外的な処理を除いて、強制的に、プログラムの起動状態を「Ｓｕｓｐｅｎｄｅｄ」に移行させる。プログラムの起動状態が「Ｓｕｓｐｅｎｄｅｄ」になると、当該プログラムは処理を続行することができなくなるので、例えば、環境情報取得部２１６を実現するためのプログラムの起動状態が「Ｓｕｓｐｅｎｄｅｄ」になると、通信環境を取得する処理をバックグラウンドで実行することができなくなる。
【００９５】
通信端末６１０によれば、ＯＳによって、バックウラウンド状態におけるプログラムの動作が制限される場合であっても、通信端末６１０の位置が予め定められた程度を超えて変化した場合に、通信環境を取得する処理を実行することができる情報処理装置、方法及びプログラムが提供される。この場合において、通信端末６１０は、通信環境を取得する処理をバックグラウンドで実行してもよい。
【００９６】
通信端末６１０の各部は、通信端末１１０の各部と同様に、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよく、ハードウエアとソフトウエアとの組み合わせにより実現されてもよい。また、プログラムが実行されることにより、コンピュータが、通信端末６１０の一部として機能してもよい。プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリ、ハードディスクなどのコンピュータ読み取り可能な媒体に記憶されていてもよく、ネットワークに接続された記憶装置に記憶されていてもよい。プログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、通信端末６１０のコンピュータにインストールされてよい。通信端末６１０は、通信機能を有し、プロセッサと、プロセッサによって実行される命令又はプログラムを記憶する記憶装置とを備えた情報処理装置の一例であってよい。
【００９７】
プログラム管理部６３２は、通信端末６１０上で動作するプログラムの起動状態を管理する。本実施形態において、プログラム管理部６３２は、通信端末６１０の通信環境に関する情報を取得するためのプログラムの起動状態を管理する。通信端末６１０の通信環境に関する情報を取得するためのプログラムは、通信端末６１０のコンピュータを、少なくとも環境情報取得部２１６として機能させるためのプログラムであってよい。通信端末６１０の通信環境に関する情報を取得するためのプログラムは、通信端末６１０のコンピュータを、通信端末６１０の各部として機能させるためのプログラムであってもよい。プログラム管理部６３２は、通信端末６１０のＯＳによって提供される機能の一部であってもよく、通信端末６１０のＯＳのモジュールが、通信端末６１０のコンピュータに読み込まれることにより、プログラム管理部６３２として機能してよい。
【００９８】
プログラム管理部６３２は、予め定められた種類のイベントが発生したことを示す情報を取得した場合に、バックグラウンドで動作を停止している１以上のプログラムに対して、当該イベントが発生したことを示す情報を送信する。プログラム管理部６３２は、上記の情報を受信したプログラムから、当該プログラムの起動状態を変更するための要求を受信すると、当該要求に応じて、当該プログラムの起動状態を変更する。プログラム管理部６３２は、位置変更情報を取得する位置変更情報取得部の一例であってよい。
【００９９】
本実施形態において、プログラム管理部６３２は、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報を取得した場合に、バックグラウンドで動作を停止している１以上のプログラムに対して、当該情報又は当該情報を取得したことを示す情報（これらの情報は、位置変更情報の一例であってよい。）を送信する。プログラム管理部６３２は、上記の情報を受信した１以上のプログラムのいずれかから、当該プログラムの起動状態を変更するための要求を受信すると、当該プログラムの起動状態を変更する。これにより、例えば、通信端末６１０の通信環境に関する情報を取得するためのプログラムは、「Ｓｕｓｐｅｎｄｅｄ」のように、プログラムがバックグラウンドで動作を停止する状態から、「Ｂａｃｋｇｒｏｕｎｄ  Ｒｕｎｎｉｎｇ」のように、プログラムがバックグラウンドで動作する状態に移行する。
【０１００】
プログラム管理部６３２は、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報を、通信ネットワーク１０を介して外部のサーバ（図示していない。）から取得してもよい。例えば、通信端末６１０は、通信端末６１０上で動作するプログラムの起動状態に関わらず、基地局又はアクセスポイント（基地局等と称する場合がある。）からの電波を受信している。基地局等からの電波には、基地局又はアクセスポイントを識別する識別情報が含まれる。通信端末６１０は、基地局識別情報と当該基地局の位置情報とを対応付けて格納しているサーバに対して、基地局からの電波に含まれる基地局識別情報を定期的に送信する。
【０１０１】
サーバは、通信端末６１０の位置の変化が予め定められた条件を満足した場合に、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報を、通信端末６１０に送信する。プログラム管理部６３２は、例えば通信制御部２２８を介して、上記の情報を取得する。これにより、通信端末６１０の消費電力を抑制しながら、通信端末６１０の位置が大幅に変更した場合に、特定のプログラムの起動状態を変更することができる。
【０１０２】
本実施形態においては、プログラム管理部６３２が、外部のサーバから、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報を取得する場合について説明した。しかし、プログラム管理部６３２は本実施形態に限定されない。例えば、プログラム管理部６３２は、位置情報取得部２１８から通信端末６１０の位置情報を取得して、通信端末６１０の位置の変化量が予め定められた値を超えたか否かを判断する。プログラム管理部６３２は、通信端末６１０の位置の変化量が予め定められた値を超えたと判断した場合、バックグラウンドで動作を停止している１以上のプログラムに対して、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報（当該情報は、位置変更情報の一例であってよい。）を送信してもよい。
【０１０３】
移行判断部６３４は、プログラム管理部６３２からイベントが発生したことを示す情報を受信する。移行判断部６３４は、プログラムの起動状態を移行させるか否かを判断する。移行判断部６３４は、受信した情報に含まれる上記のイベントが、プログラムの起動状態を移行させるための予め定められたイベントである場合に、プログラムの起動状態を移行させることを決定する。移行判断部６３４は、プログラムの起動状態を移行させることを決定すると、プログラム管理部６３２に対して、プログラムの起動状態を移行させるための要求を送信する。移行判断部６３４は、位置変更情報を取得する位置変更情報取得部の一例であってよい。
【０１０４】
本実施形態において、移行判断部６３４は、通信端末６１０の通信環境に関する情報を取得するためのプログラムのモジュールであり、プログラム管理部６３２から、予め定められた種類のイベントが発生したことを示す情報を受信すると、通信端末６１０の通信環境に関する情報を取得するためのプログラムの起動状態を移行させるか否かを判断する。移行判断部６３４は、プログラム管理部６３２から受信した情報に、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報又は当該情報を取得したことを示す情報が含まれている場合に、通信端末６１０の通信環境に関する情報を取得するためのプログラムの起動状態を、バックグラウンドで動作を停止する状態から、バックグラウンドで動作する状態に移行させることを決定する。
【０１０５】
本実施形態によれば、通信端末６１０の通信環境に関する情報を取得するためのプログラムが、バックグラウンドで動作を停止する状態になっている場合であっても、当該プログラムは、通信端末６１０がある程度の距離を移動した場合には、バックグラウンドで動作する状態に移行することができる。これにより、通信端末６１０は、通信環境に関する情報を取得する処理をバックグラウンドで実行することができる。
【０１０６】
タイミング決定部６３６は、通信端末６１０が、通信端末６１０の通信環境に関する情報を取得する処理を実行するタイミングを決定する。タイミング決定部６３６によって決定されるタイミングは、通信端末６１０の通信環境に関する情報を取得するためのプログラムが、フォアグラウンド状態又はバックグラウンドで動作を停止する状態からバックグラウンドで動作する状態に移行した後の予め定められた期間が経過するまでの間の任意のタイミングであってよい。
【０１０７】
タイミング決定部６３６は、予め定められた規則に従って、上記のタイミングを決定してよい。一実施形態において、タイミング決定部６３６は、乱数表、乱数発生アルゴリズムなどを用いて、上記のタイミングをランダムに決定してよい。これにより、データの偏りを防止することができる。他の実施形態において、タイミング決定部６３６は、上記のタイミングを決定するごとに、決定されたタイミングを記憶しておき、上記のプログラムがバックグラウンドで動作する状態に移行した後、通信環境に関する情報を取得する処理を実行するまでの時間が予め定められた分布に従うように、上記のタイミングを決定してよい。これにより、データの偏りを防止しつつ、データの用途に応じたデータを収集することができる。
【０１０８】
図７は、通信端末６１０の動作の一例を概略的に示す。本実施形態において、通信端末６１０の通信環境に関する情報を取得するためのプログラムが、通信端末６１０のコンピュータを、入力部２１２、処理実行部２１４、環境情報取得部２１６、位置情報取得部２１８、出力部２２２、識別情報取得部２２４、ログ情報生成部２２６、移行判断部６３４及びタイミング決定部６３６として機能させ、通信端末６１０のＯＳが、通信端末６１０のコンピュータを、通信制御部２２８及びプログラム管理部６３２として機能させる場合を例として、通信端末６１０の各部の動作について説明する。
【０１０９】
ステップ７０２（ステップをＳと表記する場合がある。）において、通信端末６１０の通信環境に関する情報を取得するためのプログラムは、フォアグラウンドで処理を実行する。例えば、入力部２１２は、ユーザ指示を受け付けるユーザ指示受付手順を実行する。処理実行部２１４は、ユーザ指示によって指示された処理を実行する処理実行手順を実行する。環境情報取得部２１６は、ユーザ指示を受け付けた場合又はユーザ指示によって指示された処理が実行される場合に、通信端末６１０の通信環境に関する情報を取得する通信環境情報取得手順を実行する。また、位置情報取得部２１８は、ユーザ指示を受け付けた場合又はユーザ指示によって指示された処理が実行される場合に、通信端末６１０の位置情報を取得する位置情報取得手順を実行する。
【０１１０】
Ｓ７０４において、プログラム管理部６３２は、入力部２１２が、ユーザから、通信端末６１０の通信環境に関する情報を取得するためのプログラムをバックグラウンド状態に移行させるための移行指示を受信したか否かを判断する。ここで、バックグラウンド状態とは、「Ｂａｃｋｇｒｏｕｎｄ  Ｒｕｎｎｉｎｇ」のようなバックグラウンドで動作する状態と、「Ｓｕｓｐｅｎｄｅｄ」のようなバックグラウンドで動作を停止する状態とを含む。
【０１１１】
Ｓ７０４において、プログラム管理部６３２が、ユーザからの移行指示を受信したと判断した場合（Ｓ７０４のＹｅｓの場合）、Ｓ７０６において、プログラム管理部６３２は、通信端末６１０の通信環境に関する情報を取得するためのプログラムを、バックグラウンドで動作する状態に移行させる。Ｓ７０８において、タイミング決定部６３６は、環境情報取得部２１６が通信端末６１０の通信環境に関する情報を取得する処理を実行するタイミングを決定する。
【０１１２】
Ｓ７１０において、環境情報取得部２１６は、タイミング決定部６３６によって決定されたタイミングで、通信端末６１０の通信環境に関する情報を取得する処理をバックグラウンドで実行する。Ｓ７１０の処理において取得される通信環境情報としては、通信の可否及び電波状況（電波受信レベル、電波強度、ＲＳＣＰ（Ｒｅｃｅｉｖｅｄ  Ｓｉｇｎａｌ  Ｃｏｄｅ  Ｐｏｗｅｒ）、ＣＩＤ（Ｃｅｌｌ  ＩＤ）などを例示することができる。）、通信方式、通信キャリアなどに関する情報を例示することができる。なお、環境情報取得部２１６が処理を実行するタイミングにおいて、位置情報取得部２１８、識別情報取得部２２４及びログ情報生成部２２６も、それぞれの処理を実行してよい。
【０１１３】
Ｓ７１２において、プログラム管理部６３２は、通信端末６１０の通信環境に関する情報を取得するためのプログラムが、バックグラウンドで動作する状態に移行した後、予め定められた時間が経過したか否かを判断する。Ｓ７１２において、プログラム管理部６３２が、予め定められた時間が経過したと判断した場合（Ｓ７１２のＹｅｓの場合）、Ｓ７１４において、プログラム管理部６３２は、通信端末６１０の通信環境に関する情報を取得するためのプログラムを、バックグラウンドで動作を停止する状態に移行させる。
【０１１４】
Ｓ７１６において、プログラム管理部６３２は、予め定められた種類のイベントの発生を検知すると、当該イベントが発生したことを示す情報を移行判断部６３４に送信する。本実施形態において、プログラム管理部６３２は、外部のサーバ（図示していない。）から、通信ネットワーク１０及び通信制御部２２８を介して、通信端末６１０の位置の変化量が予め定められた値を超えたことを示す情報を受信して、当該情報又は当該情報を取得したことを示す情報を移行判断部６３４に送信する。
【０１１５】
移行判断部６３４は、通信端末６１０の通信環境に関する情報を取得するためのプログラムがバックグラウンドで動作を停止する状態において、予め定められた種類のイベントが発生したことを示す情報を取得する。移行判断部６３４が、プログラム管理部６３２から受信した情報に含まるイベントが、プログラムの起動状態を移行させるための予め定められたイベントであると判断した場合（Ｓ７１６のＹｅｓの場合）、移行判断部６３４は、プログラム管理部６３２に対して、プログラムの起動状態を移行させるための要求を送信する。プログラムの起動状態を移行させるための予め定められたイベントは、通信端末６１０の位置の変化量が予め定められた値を超えたことであってよい。プログラム管理部６３２は、プログラムの起動状態を移行させるための要求を受信すると、通信端末６１０の通信環境に関する情報を取得するためのプログラムを、バックグラウンドで動作する状態に移行させる。
【０１１６】
一方、移行判断部６３４が、プログラムの起動状態を移行させるための予め定められたイベントが発生していないと判断した場合（Ｓ７１６のＮｏの場合）、Ｓ７１８の処理に進む。Ｓ７１８において、プログラム管理部６３２は、入力部２１２が、ユーザから、通信端末６１０の通信環境に関する情報を取得するためのプログラムをフォアグラウンド状態に移行させるための移行指示を受信したか否かを判断する。
【０１１７】
Ｓ７１８において、プログラム管理部６３２が、ユーザからの移行指示を受信したと判断した場合（Ｓ７１８のＹｅｓの場合）、通信端末６１０の通信環境に関する情報を取得するためのプログラムをフォアグラウンド状態に移行させる。一方、Ｓ７１８において、プログラム管理部６３２が、ユーザからの移行指示を受信していないと判断した場合（Ｓ７１８のＮｏの場合）、Ｓ７２０の処理に進む。
【０１１８】
Ｓ７２０において、プログラム管理部６３２は、入力部２１２が、ユーザから、通信端末６１０の通信環境に関する情報を取得するためのプログラムの終了指示を受信したか否かを判断する。Ｓ７２０において、プログラム管理部６３２が、ユーザからの終了指示を受信したと判断した場合（Ｓ７２０のＹｅｓの場合）、プログラム管理部６３２が、通信端末６１０の通信環境に関する情報を取得するためのプログラムを終了させて、処理を完了する。
【０１１９】
本実施形態においては、Ｓ７０４において、プログラム管理部６３２が、ユーザからの移行指示を受信したと判断した場合、Ｓ７０６において、プログラム管理部６３２が、通信端末６１０の通信環境に関する情報を取得するためのプログラムを、一旦、バックグラウンドで動作する状態に移行させ、通信端末６１０が、Ｓ７０８〜Ｓ７１２における処理を実行する場合について説明した。しかし、通信端末６１０の動作は、本実施形態に限定されない。他の実施形態において、Ｓ７０４において、プログラム管理部６３２が、ユーザからの移行指示を受信したと判断した場合、Ｓ７０８〜Ｓ７１２の処理をスキップして、プログラム管理部６３２が、通信端末６１０の通信環境に関する情報を取得するためのプログラムを、バックグラウンドで動作を停止する状態に移行させてもよい。
【０１２０】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。また、技術的に矛盾しない範囲において、特定の実施形態について説明した事項を、他の実施形態に適用することができる。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
【０１２１】
請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
［項目１］
通信環境に関する情報を取得するためのプログラムであって、
通信機能を有するコンピュータに、
通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けるユーザ指示受付手順と、
上記ユーザ指示によって指示された処理を実行する処理実行手順と、
上記ユーザ指示を受け付けた場合又は上記ユーザ指示によって指示された処理が実行される場合に、上記コンピュータの通信環境に関する情報を取得する通信環境情報取得手順を実行する手順と、
上記ユーザ指示を受け付けた場合又は上記ユーザ指示によって指示された処理が実行される場合に、上記コンピュータの位置情報を取得する位置情報取得手順を実行する手順と、
を実行させるためのプログラム。
［項目２］
上記コンピュータに、
画像を表示する表示手順を、さらに実行させるためのプログラムであって、
上記通信環境に関する情報を取得するための処理以外の処理は、表示された上記画像の表示位置を変更する処理である、
項目１に記載のプログラム。
［項目３］
上記コンピュータに、
上記コンピュータとネットワークを介して接続されるサーバから取得した情報を、上記コンピュータのユーザが知覚することができる形態で出力する出力手順を、さらに実行させるためのプログラムであって、
上記通信環境に関する情報を取得するための処理以外の処理は、上記ユーザが指示した情報を、上記サーバから取得する処理であり、
上記通信環境情報取得手順は、
上記サーバに対して上記ユーザが指示した情報を送信するよう要求してから、上記ユーザが指示した情報を上記サーバから取得するまでの時間と、上記ユーザが指示した情報の情報量とに基づいて、上記通信環境に関する情報を取得する手順を含む、
項目１又は項目２に記載のプログラム。
［項目４］
上記コンピュータに、
上記コンピュータの通信環境に関する情報と、上記コンピュータの位置情報とが対応づけられたログ情報を生成するログ情報生成手順を、さらに実行させるための、
項目１から項目３までの何れか一項に記載のプログラム。
［項目５］
上記位置情報取得手順は、少なくともＧＰＳ情報に基づいて、上記コンピュータの位置情報と、ＧＰＳ精度に関する情報とを取得する手順を含み、
上記ログ情報は、上記ＧＰＳ精度に関する情報と、上記コンピュータの通信環境に関する情報と、上記コンピュータの位置情報とが対応づけられた情報である、
項目４に記載のプログラム。
［項目６］
上記コンピュータに、
上記コンピュータを識別する識別情報を取得する識別情報取得手順をさらに実行させるためのプログラムであって、
上記ログ情報は、上記識別情報と、上記コンピュータの通信環境に関する情報と、上記コンピュータの位置情報とが対応づけられた情報である、
項目４又は項目５に記載のプログラム。
［項目７］
上記コンピュータに、
上記プログラムがバックグラウンドで動作を停止する状態において、上記コンピュータの位置の変化量が予め定められた値を超えたことを示す位置変更情報を取得する位置変更情報取得手順と、
上記位置変更情報を取得した場合に、上記プログラムがバックグラウンドで動作する状態に移行する移行手順と、
上記プログラムがバックグラウンドで動作する状態において、上記コンピュータの通信環境に関する情報を取得する通信環境情報取得手順を実行する手順と、
をさらに実行させるための、
項目１から項目６までの何れか一項に記載のプログラム。
［項目８］
上記コンピュータに、
上記プログラムが、フォアグラウンド状態又はバックグラウンドで動作を停止する状態からバックグラウンドで動作する状態に移行した後の予め定められた期間が経過するまでの間の任意のタイミングであって、上記コンピュータに上記通信環境情報取得手順を実行させるタイミングを、ランダムに決定する実行タイミング決定手順をさらに実行させるための、
項目１から項目７までの何れか一項に記載のプログラム。
［項目９］
通信環境に関する情報を取得するためのプログラムであって、
通信機能を有するコンピュータに、
上記コンピュータの通信環境に関する情報を取得する通信環境情報取得手順と、
上記コンピュータの位置情報を取得する位置情報取得手順と、
上記プログラムが、フォアグラウンド状態又はバックグラウンドで動作を停止する状態からバックグラウンドで動作する状態に移行した後の予め定められた期間が経過するまでの間の任意のタイミングであって、上記コンピュータに上記通信環境情報取得手順を実行させるタイミングを、ランダムに決定する実行タイミング決定手順と、
を実行させるためのプログラム。
［項目１０］
上記コンピュータに、
上記位置情報が取得された位置において上記コンピュータが接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得手順と、
上記位置情報と、上記接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成手順と、
をさらに実行させるための、
項目１から項目９までの何れか一項に記載のプログラム。
［項目１１］
通信環境に関する情報を取得するためのプログラムであって、
通信機能を有するコンピュータに、
上記プログラムがバックグラウンドで動作を停止する状態において、上記コンピュータの位置の変化量が予め定められた値を超えたことを示す位置変更情報を取得する位置変更情報取得手順と、
上記位置変更情報を取得した場合に、上記プログラムがバックグラウンドで動作する状態に移行する移行手順と、
上記プログラムがバックグラウンドで動作する状態において、上記コンピュータの通信環境に関する情報を取得する通信環境情報取得手順を実行する手順と、
を実行させるためのプログラム。
［項目１２］
上記コンピュータに、
上記プログラムが、フォアグラウンド状態又はバックグラウンドで動作を停止する状態からバックグラウンドで動作する状態に移行した後の予め定められた期間が経過するまでの間の任意のタイミングであって、上記コンピュータに上記通信環境情報取得手順を実行させるタイミングを、ランダムに決定する実行タイミング決定手順をさらに実行させるための、
項目１１に記載のプログラム。
［項目１３］
上記コンピュータに、
上記コンピュータの位置情報を取得する位置情報取得手順と、
上記位置情報が取得された位置において上記コンピュータが接続している通信ネットワークの通信キャリアを識別する接続キャリア識別情報を取得する接続キャリア情報取得手順と、
上記位置情報と、上記接続キャリア識別情報とが対応付けられたログ情報を生成するログ情報生成手順と、
をさらに実行させるための、
項目１１又は項目１２に記載のプログラム。
［項目１４］
上記コンピュータに、
予め定められたイベントが発生した場合に、上記通信環境に関する情報を取得する第１の通信環境情報取得手順と、
上記第１の通信環境情報取得手順が実行されてから、予め定められた第１の期間の間に、上記通信環境に関する情報を取得する第２の通信環境情報取得手順と、
をさらに実行させるためのプログラムであって、
上記予め定められたイベントは、（ｉ）上記通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けたこと、（ｉｉ）上記プログラムがバックグラウンドで動作する状態に移行してから予め定められた第２の期間が経過したこと、（ｉｉｉ）以前に、上記通信環境に関する情報を取得するための処理が実行されてから予め定められた第３の期間が経過したこと、及び、（ｉｖ）予め定められた時刻が到来したこと、からなる群から選択される少なくとも１つであり、
上記第１の期間は、上記第２の期間又は上記第３の期間よりも短い、
項目１から項目１３までの何れか一項に記載のプログラム。
［項目１５］
通信環境に関する情報を取得する情報処理装置であって、
通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けるユーザ指示受付部と、
上記ユーザ指示によって指示された処理を実行する処理実行部と、
上記ユーザ指示を受け付けた場合又は上記ユーザ指示によって指示された処理が実行される場合に、上記情報処理装置の通信環境に関する情報を取得する通信環境情報取得部と、
上記ユーザ指示を受け付けた場合又は上記ユーザ指示によって指示された処理が実行される場合に、上記情報処理装置の位置情報を取得する位置情報取得部と、
を備える情報処理装置。
［項目１６］
情報処理装置の通信環境に関する情報を取得する方法であって、
通信環境に関する情報を取得するための処理以外の処理を実行することを指示するユーザ指示を受け付けるユーザ指示受付段階と、
上記ユーザ指示によって指示された処理を実行する処理実行段階と、
上記ユーザ指示を受け付けた場合又は上記ユーザ指示によって指示された処理が実行される場合に、上記情報処理装置の通信環境に関する情報を取得する通信環境情報取得段階と、
上記ユーザ指示を受け付けた場合又は上記ユーザ指示によって指示された処理が実行される場合に、上記情報処理装置の位置情報を取得する位置情報取得段階と、
を有する方法。
【符号の説明】
【０１２２】
１０  通信ネットワーク、２０  情報提供サーバ、１００  通信状況解析システム、１１０  通信端末、１２０  情報収集サーバ、２１２  入力部、２１４  処理実行部、２１６  環境情報取得部、２１８  位置情報取得部、２２２  出力部、２２４  識別情報取得部、２２６  ログ情報生成部、２２８  通信制御部、３００  データテーブル、３１０  端末ＩＤ、３２０  日時、３３０  位置情報、３４０  ＧＰＳ精度、３５０  通信環境情報、３５２  通信可否、３５４  スループット、３５６  レイテンシ、６１０  通信端末、６３２  プログラム管理部、６３４  移行判断部、６３６  タイミング決定部
【図１】
2015181855.tif 000003
【図２】
2015181855.tif 000004
【図３】
2015181855.tif 000005
【図４】
2015181855.tif 000006
【図５】
2015181855.tif 000007
【図６】
2015181855.tif 000008
【図７】
2015181855.tif 000009
【国際調査報告】
2015181855.tif 000010
2015181855.tif 000011
2015181855.tif 000012
2015181855.tif 000013