(57)【要約】【課題】  アプリケーション実行時において体感待ち時間が長時間化した場合に、容易に導出可能な特徴量を用いてアプリケーションで実施された操作内容に起因するものか否かを効率よく判別する。【解決手段】  本発明は、アプリケーションログから、ユーザの体感待ち時間を推定し、推定体感待ち時間として記憶手段に格納し、アプリケーションログを基に、記憶手段から取得した推定体感待ち時間に対応するログを切り出し、記憶手段に格納し、切り出されたログを記憶手段から取得して特徴量を算出し、記憶手段に格納する。記憶手段から取得した、体感待ち時間の長時間化が、アプリケーションに対して利用者が行った長時間化時操作の内容に起因するものか否かを判別するために予め定められた判別関数と、特徴量と、推定体感待ち時間を基に、待ち時間の長時間化が長時間化操作の内容に起因するのか否かを判別し、判別結果を記憶手段に格納する。【選択図】  図１
2014021796.tif 000002
【特許請求の範囲】
【請求項１】
体感待ち時間の長時間化の要因を判別する品質劣化要因判別装置であって、
アプリケーションログから、ユーザの体感待ち時間を推定し、推定体感待ち時間として記憶手段に格納する体感待ち時間推定手段と、
前記アプリケーションログを基に、前記記憶手段から取得した前記推定体感待ち時間に対応するログを切り出し、前記記憶手段に格納するログ切り出し手段と、
前記ログ切り出し手段によって切り出された前記ログを前記記憶手段から取得して特徴量を算出し、前記記憶手段に格納する特徴量算出手段と、
前記記憶手段から取得した、体感待ち時間の長時間化が、アプリケーションに対して利用者が行った操作（以下、「長時間化時操作」と記す）の内容に起因するものか否かを判別するために予め定められた判別関数と、前記特徴量と、前記推定体感待ち時間を基に、待ち時間の長時間化が長時間化操作の内容に起因するのか否かを判別し、判別結果を前記記憶手段に格納する操作内容起因判別手段と、
前記推定体感待ち時間、前記ログ、前記特徴量、前記判別結果を格納する記憶手段と、
を有することを特徴とする品質劣化要因判別装置。
【請求項２】
前記記憶手段に格納されている過去の特徴量と推定体感待ち時間と判別結果を用いて前記判別関数を算出し、該記憶手段に格納する判別関数算出手段を更に有する
請求項１記載の品質劣化要因判別装置。
【請求項３】
アプリケーションに対し、体感待ち時間の長時間化が、利用者が行った操作（以下、「長時間化時操作」と記す）の内容に起因するものであるか否かを判別する品質劣化要因判別方法であって、
体感待ち時間推定手段と、ログ切り出し手段と、特徴量算出手段と、操作内容起因判別手段と、体感待ち時間の長時間化が、アプリケーションに対して利用者が行った操作（以下、「長時間化時操作」と記す）の内容に起因するものか否かを判別するため、予め定められた判別関数、処理により導出される推定体感待ち時間、ログ、特徴量、判別結果、を格納する記憶手段と、を有する装置において、
前記体感待ち時間推定手段が、アプリケーションログから、ユーザの体感待ち時間を推定し、推定体感待ち時間として前記記憶手段に格納する体感待ち時間推定ステップと、
前記ログ切り出し手段が、前記アプリケーションログを基に、前記記憶手段から取得した前記推定体感待ち時間に対応するログを切り出し、前記記憶手段に格納するログ切り出しステップと、
前記特徴量算出手段が、前記ログ切り出しステップによって切り出された前記ログを前記記憶手段から取得して特徴量を算出し、前記記憶手段に格納する特徴量算出ステップと、
前記操作内容起因判別手段が、前記記憶手段から取得した、前記判別関数と、前記特徴量と、前記推定体感待ち時間を基に、待ち時間の長時間化が長時間化操作の内容に起因するのか否かを判別し、判別結果を前記記憶手段に格納する操作内容起因判別ステップと、
を行うことを特徴とする品質劣化要因判別方法。
【請求項４】
前記記憶手段に格納されている過去の特徴量と推定体感待ち時間と判別結果を用いて前記判別関数を算出し、該記憶手段に格納する判別関数算出ステップを更に行う
請求項３記載の品質劣化要因判別方法。
【請求項５】
コンピュータを、
請求項１または２に記載の品質劣化要因判別装置の各手段として機能させるための品質劣化要因判別プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション実行時における品質劣化要因判別装置及び方法及びプログラムに係り、特に、Webアプリケーションの操作内容に起因するものであるか否かを判別するための品質劣化要因判別装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
近年、Webアプリケーションが普及している。当該アプリケーションは、利用者端末にアプリケーションをインストールすることなく、Webブラウザを介してサーバにアクセスすることで利用できるのが特徴であり、利用者の体感品質は、主にサーバやネットワークに起因する要因に支配されている。また、最近では、動的コンテンツを含むWebアプリケーションも増えてきている。こういったアプリケーションでは、利用者端末での処理量が多くなるため、サーバやネットワークに加え、利用者端末も体感品質の大きな要因となっている。つまり、利用者の体感品質には、サーバ、ネットワーク、利用者端末の3要因が大きく関わっているといえる。しかし、これら３つの提供事業者、すなわち、サーバを提供するサービス提供事業者とネットワークを提供するネットワーク網提供事業者、端末を提供する端末提供事業者の３業者は、それぞれ別の事業者であることが多い。従って、保守の観点としては、利用者の体感品質劣化時に、劣化要因がどの事業者の責任範囲であるかを切り分けられることが望ましい。つまり、体感品質の劣化時の要因を、サーバやネットワーク、利用者端末の３つに切り分けられることが望ましいといえる。例えば、非特許文献１の技術では、Webシステムの中から劣化要因を効率的に探索する手法が提案されている。当該手法は、メトリックの値の相関関係を統計的に評価することで、劣化要因となるメトリックを絞り込むものである。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】池田博和、村瀬敦史、平田俊明、赤津雅晴、「Webシステムにおける性能ボトルネック分析手法の開発」、電子情報通信学会技術研究報告. TM, テレコミュニケーションマネジメント 102(193), 2002
【発明の概要】
【発明が解決しようとする課題】
【０００４】
サーバやネットワーク、利用者端末のいずれにも劣化が生じていない場合でも、アプリケーションで実施した操作によって生じた処理量が多かったり、処理が複雑であるがゆえに１つ１つの処理時間が長くなったりすることにより、利用者の体感待ち時間が長時間化してしまい、その結果、利用者は体感品質が劣化したと感じることがある。従って、劣化要因の探索を行う前に、アプリケーションで実施した操作内容に起因する体感待ち時間が長時間化したケースを切り分けておく必要がある。上記の非特許文献１の手法では、このような切り分けには対応していない。
【０００５】
本発明は、上記の点に鑑みなされたもので、アプリケーション実行時の体感待ち時間が長時間化した際に、アプリケーションで実施された操作（以下、長時間化時操作）の内容に起因するものか否かを、容易に導出可能な特徴量を用いて判別することが可能な品質劣化要因判別装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するため、本発明は、体感待ち時間の長時間化の要因を判別する品質劣化要因判別装置であって、
体感待ち時間の長時間化の要因を判別する品質劣化要因判別装置であって、
アプリケーションログから、ユーザの体感待ち時間を推定し、推定体感待ち時間として記憶手段に格納する体感待ち時間推定手段と、
前記アプリケーションログを基に、前記記憶手段から取得した前記推定体感待ち時間に対応するログを切り出し、前記記憶手段に格納するログ切り出し手段と、
前記ログ切り出し手段によって切り出された前記ログを前記記憶手段から取得して特徴量を算出し、前記記憶手段に格納する特徴量算出手段と、
前記記憶手段から取得した、体感待ち時間の長時間化が、アプリケーションに対して利用者が行った操作（以下、「長時間化時操作」と記す）の内容に起因するものか否かを判別するために予め定められた判別関数と、前記特徴量と、前記推定体感待ち時間を基に、待ち時間の長時間化が長時間化操作の内容に起因するのか否かを判別し、判別結果を前記記憶手段に格納する操作内容起因判別手段と、
前記推定体感待ち時間、前記ログ、前記特徴量、前記判別結果を格納する記憶手段と、を有する。
【発明の効果】
【０００７】
上記のように、本発明では、アプリケーション固有の情報ではなく、アプリケーションログのみを取得し、そのアプリケーションログを用いて、操作内容による体感待ちの長時間化を判別することが可能となる。例えば、Webブラウザのブラウザログのみを取得し、当該ブラウザログを用いて操作内容による体感待ち時間の長時間化を判別可能となる。
【０００８】
また、本発明は、アプリケーション固有の情報を利用しないため、多様なアプリケーション・操作に対して適用が可能である。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施の形態におけるシステム構成例である。
【図２】本発明の一実施の形態におけるログ切り出しまでのフローである。
【図３】本発明の一実施の形態における別のシステム構成例である。
【図４】本発明の第１の実施例のログ取得から操作内容起因判別までの処理のフローチャートである。
【図５】本発明の第１の実施例の端末から取得したブラウザログの例である。
【図６】本発明の第１の実施例の推定体感待ち時間の例である。
【図７】本発明の第１の実施例の切り出されたブラウザログの例である。
【図８】本発明の第１の実施例の判別結果の例である。
【図９】本発明の第２の実施例の品質劣化要因判別装置の構成例である。
【図１０】本発明の第２の実施例の記憶部に保存された特徴量、推定体感待ち時間、及び判別結果のデータの例である。
【図１１】本発明の第２の実施例の判別関数のグラフである。
【発明を実施するための形態】
【００１０】
以下、図面と共に本発明の実施の形態を説明する。
【００１１】
本発明は、アプリケーション実行時において、長時間化時操作を行った際のログから求めた特徴量と体感待ち時間、及び判別関数を用いて、体感待ち時間の長時間化がアプリケーションで実施した操作内容起因であるか否かの判別を行う。
【００１２】
図１は、本発明の一実施の形態におけるシステム構成例を示す。
【００１３】
同図に示すシステムは、品質劣化要因判別装置１０、利用者端末２０、APサーバ３０から構成され、APサーバ３０は、HTTPサーバ３１から利用者端末２０にコンテンツ３２を提供する。利用者端末２０は、Webブラウザ２３を操作したログをログ取得部２２で取得して送信部２１を介して品質劣化要因判別装置１０に送出する。
【００１４】
品質劣化要因判別装置１０は、体感待ち時間推定部１１、ログ切り出し部１２、特徴量算出部１３、操作内容起因判別部１５、記憶部１５から構成される。記憶部１５は、操作内容起因判定部１５で用いられる所与の判別関数、及び各構成要素で算出された結果及び判定結果を格納する、メモリまたは、ハードディスク等の記憶媒体である。
【００１５】
ログ切り出し部１２は、利用者端末２０から取得したログから、長時間化時操作を行った際の利用者体感待ち時間部分のログを切り出す。
【００１６】
具体的には、以下の手順で、長時間化時操作を行った際の体感待ち時間部分のログを切り出す。
【００１７】
図２は、本発明の一実施の形態におけるログ切り出しまでのフローである。
【００１８】
ステップ１０１）  利用者端末２０内のログ取得部２２において、体感待ち時間が長時間化した前後のログを取得する。なおログ取得部２２は、一般的なアプリケーション分析ツール等である。
【００１９】
ステップ１０２）  利用者端末２０の送信部２１は、取得したログを品質劣化要因判別装置１０に送信する。なお、送信部２１は、一般的な装置やプログラム等で代替可能である。
【００２０】
ステップ１０３）  品質劣化要因判別装置１０の体感待ち時間推定部１１は、取得した、ログからユーザの体感待ち時間の開始時刻及び終了時刻を推定し、推定体感待ち時間（開始時刻，終了時刻）として記憶部１５に格納する。本実施の形態においては開始時刻と終了時刻は、ある時点からの経過秒数で表現するものとする。具体的には、Webブラウザ等のアプリケーションで行われた処理の多重度が、閾値を超えている同期処理実行区間を体感待ち時間として推定する。なお、この他に、体感待ち時間の推定方法としては、利用者端末２０とAPサーバ３０間でやり取りされるHTTPメッセージのレスポンスタイム等、利用者体感待ち時間と近い指標を取得して提示する方法（例えば、CA Application Performance Management http://www.ca.com/jp/products/detail/CA-Application-Performance-Management/overview.aspx）や、利用者端末２０とAPサーバ３０間でパケットが連続的に送受信されている期間から、利用者の体感待ち時間を推定する方法（例えば、特開2011-142472号公報）等の既存の技術を用いることが可能である。
【００２１】
ステップ１０４）  ログ切り出し部１２は、体感待ち時間推定部１１で推定した推定体感待ち時間の開始時刻（tstart）以降に始まり、終了時刻(tstop)以前に終了しているログを切り出し、記憶部１５に格納する。
【００２２】
なお、上記のステップ１０２において、利用者端末２０において実際の体感待ち時間を別途推定し、品質劣化要因判別装置１０に送信することで代替してもよい。
【００２３】
特徴量算出部１３は、ログ切り出し部１２で切り出されたログから特徴量としてログの処理数を算出する。なお、特徴量を処理の所要時間の平均値や、９０％値等と定めてもよいし、これらの組み合わせを特徴量としてもよい。算出された特徴量ｘを記憶部１５に格納する。
【００２４】
操作内容起因判別部１４は、記憶部１５から判別関数y=f(x)と、特徴量X、利用者体感待ち時間Yを読み出し、体感待ち時間の長時間化が操作内容に起因するのか否か判別を行う。具体的には、特徴量Xと推定体感待ち時間Yの組（X,Y）をxy平面上にプロットし、この組（X,Y）が判別関数y=f(x)より下にある場合は操作内容起因の長時間化、判別関数より上にある場合は操作内容以外の要因による長時間化が生じていると判別し、その判別結果を記憶部１５に格納する。
【００２５】
なお、上記では、独立した品質劣化要因判別装置１０において品質劣化要因の判別を行う例を示したが、この例に限定されることなく、図３に示すように、品質劣化要因判別装置１０の機能を利用者端末２０に組み込むような構成であってもよい。
【実施例】
【００２６】
[第１の実施例]
本発明の第１の実施例を図１の構成に基づいて説明する。
【００２７】
本実施例では、実行されるアプリケーションとしてWebブラウザを例として説明する。
【００２８】
図４は、本発明の第１の実施例のログ取得から操作内容起因判別までの処理のフローチャートである。
【００２９】
ステップ２０１）  ログ取得：
体感待ち時間推定部１１は、利用者端末２０から図５に示すようなログを取得する。
【００３０】
ステップ２０２）  体感待ち時間推定：
体感待ち時間推定部１１は、取得したログから図６に示すようなユーザの体感待ち時間の開始時刻及び終了時刻を推定し、推定体感待ち時間（開始時刻（秒），終了時刻（秒））として記憶部１５に格納する。
【００３１】
ステップ２０３）ログ切り出し：
ログ切り出し部１２は、記憶部１５から図６に示す推定体感待ち時間（開始時刻（秒），終了時刻（秒））を取得し、取得したログから当該開始時刻から終了時刻までのログを切り出す。例えば、図６に示す取得したログから開始時刻が24.7秒以降かつ終了時刻が29.6秒以前の区間に対応するログを切り出した場合に、図７に示すようなログが切り出される。切り出されたログを記憶部１５に格納する
ステップ２０４）  特徴量算出：
特徴量算出部１３は、ステップ２０３で切り出されたログ（図７）を記憶部１５から読み出し、特徴量を求める。特徴量は、
478 − 306 ＋ 1 ＝173プロセス
と与えられる。算出された特徴量は記憶部１５に格納する。
【００３２】
ステップ２０５）操作内容起因判別：
操作内容起因判別部１４は、記憶部１５から例えば、図６の推定体感待ち時間（29.6−24.7=4.9秒）、特徴量（173）、判別関数（y=y0+t0*s[y0]、但し、y0=0.024x+1.7、x：特徴量、y：体感待ち時間推定値の90%信頼区間の上限値）を読み込んだとする。このとき、図８の実験結果に示すように、長時間化時操作を行った際の特徴量と推定体感待ち時間の組（173，4.9）は、判別関数の下側にプロットされるので、操作内容起因と判別される。なお、上記の判別関数は、予め算出され、記憶部１５に格納されているものとする。
【００３３】
[第２の実施例]
第１の実施の形態では、操作内容起因判別部１４において予め定められた判別関数を用いて起因を判別したが、本実施例では、保存されている過去の特徴量と推定体感待ち時間及び判別結果を用いて判別関数を算出する。
【００３４】
図９は、本発明の第２の実施例の品質劣化要因判別装置の構成例を示す。同図に示す品質劣化要因判別装置は、図１の構成に判別関数算出部１６を付加した構成である。
【００３５】
本実施例では、判別関数算出部１６が、記憶部１５に保存されている過去の特徴量と推定体感待ち時間、及び判別結果を用いて判別関数を算出する。
【００３６】
具体的には、判別関数算出部１５は以下の手順で判別関数を導出する。
【００３７】
（１）記憶部１５に保存されている過去の特徴量と、推定体感待ち時間、判別結果のうち、判別結果が操作内容起因であった特徴量と推定体感待ち時間の組だけを読み出す。
【００３８】
（２）抽出された特徴量と推定体感待ち時間の組を用いて、特徴量を説明変数、推定体感待ち時間を目的変数とした回帰分析を行って回帰式を算出する。
【００３９】
（３）（２）で算出した回帰式によって求められる推定値の９０％信頼区間の上限値を判別関数とし、記憶部１５に格納する。
【００４０】
これにより、操作内容起因判別部１４は、上記のようにして算出された判別関数より下の領域に属する場合は、操作内容起因、上の領域に属する場合はその他の要因による体感待ち時間の長時間化であると判別する。
【００４１】
なお、判別関数として、９５％信頼区間の上限値等を用いても良いし、線形回帰に限定されるものではない。また、操作内容起因のデータと操作内容起因でないデータの判別境界を求め、その判別境界を示す関数を判別関数としてもよい。例えば、操作内容起因の特徴量と体感待ち時間の組と操作内容起因でない特徴量と体感待ち時間の組がそれぞれある分布に従っていると仮定したとき、判別境界は、その２つの分布からのマハラノビス距離が等しくなるような領域として求めてもよい。
【００４２】
判別関数は一定の時間の経過や保存データの一定量増加等により導出が繰り返されることとし、保存されたデータがない場合は、第１の実施例と同様に予め定めておいた判別関数を用いることとする。
【００４３】
記憶部１５から図１０に示す特徴量と推定体感待ち時間及び判別結果のデータを読み出したとすると、例えば、判別関数は以下のように求められる。
【００４４】
y=y0 + t0.05* s [y0]  （但し、y0=0.024x + 1.7）
ここで、各パラメータは以下の意味を持つ。
【００４５】
y0：体感待ち時間の推定値（秒）
y ：上記推定値の90%信頼区間の上限値（秒）
x ：ブラウザログの処理数
t0.05：t分布の右端5%
s[y0]：y0の標準偏差
判定関数の例を図１１に示す。
【００４６】
上記の図１、図３、図９に示す品質劣化要因判別装置の各構成要素の動作をプログラムとして構築し、品質劣化要因判別装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００４７】
本発明は、上記の実施の形態及び実施例に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００４８】
１０  品質劣化要因判別装置
１１  体感待ち時間推定部
１２  ログ切り出し部
１３  特徴量算出部
１４  操作内容起因判別部
１５  記憶部
２０  利用者端末
２１  痩身部
２２  ログ取得部
２３  Webブラウザ
３０  APサーバ
３１  HTTPサーバ
３２  コンテンツ
【図１】
2014021796.tif 000003
【図２】
2014021796.tif 000004
【図３】
2014021796.tif 000005
【図４】
2014021796.tif 000006
【図５】
2014021796.tif 000007
【図６】
2014021796.tif 000008
【図７】
2014021796.tif 000009
【図８】
2014021796.tif 000010
【図９】
2014021796.tif 000011
【図１０】
2014021796.tif 000012
【図１１】
2014021796.tif 000013