トランザクション計測・監視
ページ遷移が伴うタスク単位で顧客体験の計測・監視
トランザクションとは
トランザクションとは、コンピュータシステムにおける、永続的なデータに対する不可分な一連の処理を云います。
主にデータベースの処理について使われてきた用語ですが、Webにおいてもトランザクション処理があります。
例えば、ECサイトにおける買い物であったり、SaaSなどのサブスクリプションの登録は、ページ単位で抜き出すことはできず、一連の複数のページ遷移で行う不可分な処理です。
SaaSのようなWebアプリケーションも、一つのタスクを実行するのに、複数の画面遷移を経る場合があります。
トランザクション計測・監視とは
トランザクション計測・監視とは、ユーザの典型動線に基づいたシナリオをつくり、そのページ遷移の流れで計測・監視するSynthetic Monitoringの1つの手法です。
単ページ計測とは異なり、ログインや、商品選択など、動的な処理が絡み、都度変化していくWebページについて計測する事が可能で、動線計測とも云います。
現在のWebパフォーマンス計測は、単ページ計測より、トランザクション計測の方が主流です。
Trace Route計測・監視の利用目的は、「何かのタスクを完了する流れの計測・監視」です。
単ページ計測では成し得ない、動的に変化するページにおける遷移をなぞり、目的を達するまでの顧客体験の改善を行うために計測・監視します。
具体例
ECサイトでの商品の購入の例
ECサイトであれば、以下のようなステップで「商品を購入する」というタスクを完了します。
- トップページを訪問
- 商品を検索
- 商品詳細を確認
- 商品をカートに入れる
- ログイン
- 配送日時や配送先を指定
- 決済
- 注文を完了
ECサイトは、その種類にもよりますが、衣類だとサイズや色の指定、在庫状況など、選択肢の組み合わせが増えます。
そのようなサイトの場合は、在庫が常に潤沢にあり、それほど変化がない商品を選んで計測することが多いです。
人気商品とテンプレートが同じであれば、生成されるWebページも同じとなり、計測の結果はほぼ変わらないからです。
航空会社や鉄道会社でのチケットの予約の例
航空会社や鉄道会社のWebサイトであれば、、以下のようなステップで「チケットを予約する」というタスクを完了します。
- トップページを訪問
- 日時、目的地を指定して、空いている便を検索
- 便を選択して、座席を指定
- ログイン
- オプション指定
- 決済
- 予約を完了
時間の推移や混雑状況に応じて、ページに表示される便や座席の状況は変わります。
それに対応して、空いている便と座席を自動で選ぶようにスクリプトを組み、計測を行います。
雑誌社や新聞社、オンラインメディアでの記事を読む例
メディアサイトであれば、以下のようなステップで「記事を読む」というタスクを完了します。
- トップページを訪問
- ページに表示されている1番目の記事をクリック
- 記事の詳細を途中まで読む
- ログイン
- 記事の残りを読む
- 関連する記事をクリックして表示する
時間の推移に伴い、掲載される記事や記事の並び順が変わります。
それに対応して、記事の選択を抽象化して、「ヘッドラインの1番目の記事」というように選択する事によって、タイトルやリンクのURLが変わっても自動で記事を選ぶようにスクリプトを組み、計測を行います。
実装
Catchpointの場合は、Seleniumをベースにした独自拡張でのスクリプトを使用して、計測スクリプトを作成し、計測・監視します。
Seleniumでできることが全てできるわけではありませんので、その点はご注意下さい。
Chromeのプラグインとして「Catchpoint Script Recorder」がリリースされていますが、決して完全ではなく、スクリプトの器ができる程度で捉えてもらった方が良いです。
実務でも使ったりしますが、このツールで出来上がったスクリプトは、いつも手直しして利用しています。
スクラッチで、スクリプトを書くことも多いです。

長所・短所
長所
- 単ページ計測・監視では計測できない、ログインしなければたどり着けないようなページを計測できるようになります。
- SPA(Single Page Application)のサイトも計測可能です。
- Cache-ControlヘッダやExpiresヘッダ、PWA、Web Worker、もしくはデフォルトで使用されるヒューリスティックキャッシュを使ってページ遷移後の表示が行われるので、ブラウザキャッシュの効果も確認可能です。
- ページ遷移時に実行されるJavaScriptの処理による次ページへの影響なども、しっかりと捉える事ができます。
- お客様がされたい事(=タスク単位)での時間管理ができるようになり、真の顧客体験改善に結びつく管理・改善ができます。
短所
- 選択、入力など、各種Webページ上の操作については、XPathを利用してターゲットを定めるため、classやidが変更になったり、DOMツリー構造が変わる都度、スクリプトを修正する必要があります。
- ステップの途中のページがエラーになると、後続のページについては計測・監視ができません。
- 予め決めたシナリオに沿った計測しかできません。違うページ遷移については、別途スクリプトを組んで計測する必要があります。