(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023099312
(43)【公開日】2023-07-12
(54)【発明の名称】ウェブページにおけるユーザインタフェース要素を識別するソフトウェアの精度をテストするシステム、方法、及びコンピュータプログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20230705BHJP
【FI】
G06Q50/10
【審査請求】有
【請求項の数】21
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022200960
(22)【出願日】2022-12-16
(31)【優先権主張番号】17/566,233
(32)【優先日】2021-12-30
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】100099623
【弁理士】
【氏名又は名称】奥山 尚一
(74)【代理人】
【識別番号】100125380
【弁理士】
【氏名又は名称】中村 綾子
(74)【代理人】
【識別番号】100142996
【弁理士】
【氏名又は名称】森本 聡二
(74)【代理人】
【識別番号】100166268
【弁理士】
【氏名又は名称】田中 祐
(72)【発明者】
【氏名】デニス・ホウ
(72)【発明者】
【氏名】ビル・ヴァシリアディス
(72)【発明者】
【氏名】トラヴィス・コールター
(72)【発明者】
【氏名】ジャイ・チョン
(72)【発明者】
【氏名】アダム・ロス
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC12
(57)【要約】 (修正有)
【課題】ウェブページにおけるユーザインタフェース(UI)要素を識別するソフトウェアの精度をテストするシステム、方法、及びコンピュータプログラムを提供する。
【解決手段】ウェブフォームにおけるオートフィルソフトウェアの精度をテストするのに使用され、また、チェックアウトページにおけるカートスクレイパソフトウェアの精度をテストするのに使用される方法であって、正規化ラベルへのUI要素のマッピングを含むウェブページの正規化仕様を作成することと、自動識別ソフトウェアを使用して、ウェブページにおけるUI要素を識別することと、上記仕様を使用してウェブページに対する自動識別ソフトウェアの性能を評価することと、自動識別ソフトウェアの性能に関する診断を表示することと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ウェブページにおけるUI要素を識別するソフトウェア(「自動識別ソフトウェア」)の精度をテストする、コンピュータシステムによって実行される方法であって、
ユーザがウェブページにおけるUI要素にラベルをタグ付けすることを可能にすることと、
前記ウェブページの正規化仕様であって、正規化ラベルへのUI要素のマッピングを含む仕様を作成することと、
前記自動識別ソフトウェアを使用して、前記ウェブページにおけるUI要素を識別することと、
前記仕様を使用して前記ウェブページに対する前記自動識別ソフトウェアの性能を評価することと、
前記自動識別ソフトウェアの前記性能に関する診断を表示することと、
を含む、方法。
【請求項2】
前記UI要素はフィールドであり、前記自動識別ソフトウェアは、ウェブフォームにおけるフィールドを自動的に入力するように設計される、請求項1に記載の方法。
【請求項3】
前記ウェブフォームはチェックアウトページである、請求項2に記載の方法。
【請求項4】
前記ウェブフォームの前記仕様は、前記ウェブフォームにおける正規化フィールドラベルへのフィールドのマッピングを含む、請求項2に記載の方法。
【請求項5】
前記自動識別ソフトウェアの前記性能を評価することは、前記自動識別ソフトウェアが、該自動識別ソフトウェアがオートフィルをタスクとする前記ウェブフォームにおける前記フィールドを正しく識別し、正しく入力したか否かと、該自動識別ソフトウェアがオートフィルをタスクとしていない前記ウェブフォームにおける前記フィールドを正しく無視したか否かとを判断することを含む、請求項2に記載の方法。
【請求項6】
前記UI要素はテキストマーカであり、前記自動識別ソフトウェアは、チェックアウトカートデータをウェブページから自動的にスクレイピングするように設計される、請求項1に記載の方法。
【請求項7】
前記仕様は、前記ウェブページにおけるカートデータの正規化ラベルへのマッピングを含む、請求項6に記載の方法。
【請求項8】
前記診断を表示することは、前記ウェブフォームにおける前記オートフィルソフトウェアの前記性能に関する統計を表示することを含む、請求項1に記載の方法。
【請求項9】
前記診断を表示することは、複数のウェブページにわたる選択UI要素に対する前記ソフトウェアの前記性能に関する統計を表示することを含む、請求項1に記載の方法。
【請求項10】
前記ユーザがウェブページにおけるUI要素にタグ付けすることを可能にすることは、ユーザがウェブページにおけるUI要素にタグ付けすることを可能にするウェブブラウザのブラウザ拡張を提供することを含む、請求項1に記載の方法。
【請求項11】
前記ブラウザ拡張は、最初に、選択UI要素にラベルを自動的にタグ付けし、次に、前記ユーザが前記ラベルを編集し、追加のUI要素にタグ付けすることを可能にするコードを含む、請求項10に記載の方法。
【請求項12】
コンピュータシステムによって実行されると、該コンピュータシステムが、ウェブページにおけるUI要素を識別するソフトウェア(「自動識別ソフトウェア」)の精度をテストする以下のステップを実行することを可能にするコンピュータプログラムを含む非一時的コンピュータ可読媒体であって、前記ステップは、
ユーザがウェブページにおけるUI要素にラベルをタグ付けすることを可能にすることと、
前記ウェブページの正規化仕様であって、正規化ラベルへのUI要素のマッピングを含む仕様を作成することと、
前記自動識別ソフトウェアを使用して、前記ウェブページにおけるUI要素を識別することと、
前記仕様を使用して前記ウェブページに対する前記自動識別ソフトウェアの性能を評価することと、
前記自動識別ソフトウェアの前記性能に関する診断を表示することと、
を含む、非一時的コンピュータ可読媒体。
【請求項13】
前記UI要素はフィールドであり、前記自動識別ソフトウェアは、ウェブフォームにおけるフィールドを自動的に入力するように設計される、請求項12に記載の非一時的コンピュータ可読媒体。
【請求項14】
前記UI要素はテキストマーカであり、前記自動識別ソフトウェアは、チェックアウトカートデータをウェブページから自動的にスクレイピングするように設計される、請求項12に記載の非一時的コンピュータ可読媒体。
【請求項15】
前記診断を表示することは、前記ウェブフォームにおける前記オートフィルソフトウェアの前記性能に関する統計を表示することを含む、請求項12に記載の非一時的コンピュータ可読媒体。
【請求項16】
前記診断を表示することは、複数のウェブページにわたる選択UI要素に対する前記ソフトウェアの前記性能に関する統計を表示することを含む、請求項12に記載の非一時的コンピュータ可読媒体。
【請求項17】
ウェブページにおけるUI要素を識別するソフトウェア(「自動識別ソフトウェア」)の精度をテストするコンピュータシステムであって、
1つ以上のプロセッサと、
前記1つ以上のプロセッサに結合された1つ以上のメモリユニットと、
を備え、
前記1つ以上のメモリユニットは、前記1つ以上のプロセッサによって実行されると、
ユーザがウェブページにおけるUI要素にラベルをタグ付けすることを可能にすることと、
前記ウェブページの正規化仕様であって、正規化ラベルへのUI要素のマッピングを含む仕様を作成することと、
前記自動識別ソフトウェアを使用して、前記ウェブページにおけるUI要素を識別することと、
前記仕様を使用して前記ウェブページに対する前記自動識別ソフトウェアの性能を評価することと、
前記自動識別ソフトウェアの前記性能に関する診断を表示することと、
を該システムに実行させる命令を記憶する、システム。
【請求項18】
前記UI要素はフィールドであり、前記自動識別ソフトウェアは、ウェブフォームにおけるフィールドを自動的に入力するように設計される、請求項17に記載のコンピュータシステム。
【請求項19】
前記UI要素はテキストマーカであり、前記自動識別ソフトウェアは、チェックアウトカートデータをウェブページから自動的にスクレイピングするように設計される、請求項17に記載のコンピュータシステム。
【請求項20】
前記診断を表示することは、前記ウェブフォームにおける前記オートフィルソフトウェアの前記性能に関する統計を表示することを含む、請求項17に記載のコンピュータシステム。
【請求項21】
前記診断を表示することは、複数のウェブページにわたる選択UI要素に対する前記ソフトウェアの前記性能に関する統計を表示することを含む、請求項17に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、包括的には、プログラム精度テストに関し、より具体的には、ウェブページにおけるユーザインタフェース要素を識別するソフトウェアの精度をテストするシステム及び方法に関する。
【背景技術】
【0002】
我々が住むデジタル世界では、ソフトウェアが、生産性、健康、セキュリティ、教育、レクリエーション、又は商業の局面を問わず、我々の生活のあらゆる局面に浸透している。ソフトウェアの1つの本質的な機能は、フィールド又はテキストマーカを認識して、どの情報がそれぞれと対応しているのかを識別することができることである。これは、オートフィル(auto-fill)ソフトウェア(例えば、ファーストネーム、ラストネーム、電子メールアドレス等の共通情報をウェブフォームフィールド内に自動的に入力する(automatically filling)ソフトウェア)と、カートスクレイパソフトウェア(例えば、ユーザが後払い決済(buy now/pay later)取引を行うことを可能にするチェックアウトカート情報を識別するソフトウェア)との双方において当てはまる。特にこのようなソフトウェアは多くの新たなクライアントに適用されるので、そのようなソフトウェアの品質を保証するために、既存のクライアントを含む全てのクライアントのソフトウェアの精度を継続的に評価し改善することができる必要がある。人が、ウェブサイトの前に座って、ソフトウェアを連続して使用し、そのウェブサイトにおけるソフトウェアの精度を検証することができるが、それは、何千ものウェブサイトが存在するので、効率的でない。したがって、コンピュータがソフトウェアを独立して継続的に実行し、全てのウェブサイトに関するフィードバックを迅速に提供することができる必要がある。ソフトウェアの制約を理解することによって、ソフトウェア設計者は、必要な修正を精査してその修正を行うことができ、ソフトウェア設計者が現在のライブバージョンと比較してソフトウェアの新たなバージョンの精度を保証することができるときにのみ、その新たなバージョンをリリースすることができる。
【発明の概要】
【0003】
本開示は、ウェブページにおけるユーザインタフェース(UI:user interface)要素を識別するソフトウェアの精度をテストするシステム、方法、及びコンピュータプログラムを記載している。本方法は、サーバと、記憶システムと、ネットワークと、オペレーティングシステムと、データベースとを含むコンピュータシステムによって実行される。
【0004】
本発明は、1)ウェブフォームにおける入力可能なフィールドを正しく認識する(すなわち、オートフィルトランザクションを成功させるために、認識する必要があるフィールドを認識するとともに、無視すべきフィールドを無視する)オートフィルソフトウェアの精度をテストし、2)チェックアウトカート情報を抽出するために、適用可能なテキストマーカを正しく認識するカートスクレイパソフトウェアの精度をテストする、内部プロセスを対象としている。オートフィルソフトウェアに関して、これは、ユーザがウェブフォームフィールドにラベルをタグ付けすること(無視すべきフィールドにタグ付けすることを含む)を可能にするソフトウェアツールを提供することと、各タグ付けされたウェブフォームに対応する正規化仕様(normalized specification)を作成することと、ベンチマークテストにおいて使用される入力を識別することと、ベンチマーカテスト環境においてウェブフォームのセットに対してテストされるオートフィルソフトウェアを実行することと、診断を表示することとによって行われる。カートスクレイパソフトウェアに関して、これは、ユーザが、ウェブフォームにおけるテキストマーカ(これらのマーカはチェックアウトカートフィールドに関係している)にタグ付けすることと、各タグ付けされたウェブフォームに対応する仕様を作成することと、ベンチマーカテストにおいて使用される入力を識別することと、ウェブフォームに対してテストされるカートスクレイパソフトウェアのバージョンを実行することと、診断を表示することとを可能にするソフトウェアツールを提供することによって行われる。
【0005】
1つの実施形態において、ウェブページにおけるユーザインタフェース要素を識別するソフトウェアの精度をテストする方法は、以下のステップ、すなわち、
ユーザがウェブページにおけるUI要素にラベルをタグ付けすることを可能にするステップと、
ウェブページの正規化仕様であって、正規化ラベルへのUI要素のマッピングを含む仕様を作成するステップと、
自動識別ソフトウェアを使用して、ウェブページにおけるUI要素を識別するステップと、
仕様を使用してウェブページに対する自動識別ソフトウェアの性能を評価するステップと、
自動識別ソフトウェアの性能に関する診断を表示するステップと、
を含む。
【図面の簡単な説明】
【0006】
【
図1】ウェブページにおけるユーザインタフェース要素を識別するソフトウェアの精度をテストする、1つの実施形態による方法を示すフローチャートである。
【
図2】ウェブフォームにおけるオートフィルソフトウェアの精度をテストする、1つの実施形態による方法を示すフローチャートである。
【
図3】チェックアウトページにおけるカートスクレイパ(cart-scraper)ソフトウェアの精度をテストする、1つの実施形態による方法を示すフローチャートである。
【
図4】1つの実施形態による例示のシステムアーキテクチャを示すブロック図である。
【
図5A】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5B】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5C】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5D】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5E】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5F】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5G】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5H】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5I】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5J】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図5K】正規化仕様を作成する方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図6A】ベンチマーカを使用して変更をテストする方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図6B】ベンチマーカを使用して変更をテストする方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図6C】ベンチマーカを使用して変更をテストする方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【
図6D】ベンチマーカを使用して変更をテストする方法の、1つの実施形態による例示的なユーザインタフェースのスクリーンショットである。
【発明を実施するための形態】
【0007】
本開示は、ウェブページにおけるユーザインタフェース要素を識別するソフトウェアの精度をテストするシステム、方法、及びコンピュータプログラムを記載している。本方法は、サーバと、記憶システムと、ネットワークと、オペレーティングシステムと、データベースとを含むコンピュータシステム(「本システム」)によって実行される。
【0008】
上記方法の例示の実施態様を
図1~
図6Dについてより詳細に説明する。
【0009】
1.ウェブページにおけるユーザインタフェース要素を識別するソフトウェアの精度をテストする方法
図1は、ウェブページにおけるユーザインタフェース(UI)要素を識別するソフトウェア(すなわち、「自動識別(auto-identifier)ソフトウェア」)の精度をテストする方法を示している。いくつかの実施形態において、自動識別ソフトウェアは、共に動作するクライアントソフトウェア及びサーバソフトウェアの双方を含むことができる。本システムは、ユーザ(例えば、アドミニストレータ、従業員、契約者等)がウェブページにおけるUI要素にラベルをタグ付けすることを可能にする(ステップ110)。いくつかの実施形態において、ウェブページは、ブラウザにおけるウェブページであり、ラベリングツールが、ブラウザ拡張として実装される。いくつかの実施形態において、ブラウザにおけるウェブページは、モバイルアプリケーションにおけるウェブビューに対応する。換言すれば、ウェブサイトは、ウェブブラウザにおけるウェブページとモバイルアプリケーションにおけるウェブビューとの間で異なった構造とすることができる。モバイルアプリケーションにおけるウェブビューの精度をテストするために、ブラウザにおけるウェブページは、モバイルアプリケーションにおけるウェブビューを表示するかのように自身を再配置する。
【0010】
本システムは、正規化ラベル(normalized label)へのUI要素のマッピングを含むウェブページの正規化仕様を作成する(ステップ120)。いくつかの実施形態において、仕様は、ウェブページにおける全てのあり得るUI要素に、関連のあるメタデータを加えたものを表したものである(すなわち、スタイリング又は動作に関するメタデータを含まない)。例えば、メタデータは、フィールドのプレースホルダ、クラス名、HTML ID等を含むことができる。いくつかの実施形態において、1つ以上の仕様は、自動識別ソフトウェアによって生成された情報が比較されるようなゴールドスタンダードとして扱われるように、ブラウザ拡張においてユーザによって手動で作成される。いくつかの実施形態において、手動で作成された仕様は、2つのステップで作成される。第1に、ブラウザ拡張がフィールドにラベルを自動的にタグ付けし、第2に、ユーザが1つ以上のラベルを補正するか又はそれらの対応するフィールド(複数の場合もある)に追加することによって作成される(例えば、「ドラッグアンドドロップ」グラフィカルユーザインタフェースを使用して)。本システムは、自動識別ソフトウェアを使用して、ウェブページにおけるUI要素を識別する(ステップ130)。本システムは、仕様を使用してウェブページに対する自動識別ソフトウェアの性能を評価する(ステップ140)。本システムは、自動識別ソフトウェアの性能に関する診断を表示する(ステップ150)。いくつかの実施形態において、表示される診断は、評価されたフィールドの数、正しく又は誤って識別されたフィールドの数(例えば、仕様は、1~7のマークが付けられた7つのフィールドを示すが、自動識別ソフトウェアは、6つのフィールド1~6しか識別しない)、正しく又は誤って入力されたフィールドの数(例えば、仕様は、1~7のマークが付けられ、a~gで入力された7つのフィールドを示し、自動識別ソフトウェアは、1~7のマークが付けられた7つのフィールドを識別するが、フィールド3は、「c」の代わりに「m」で入力されている)、及び正しく又は誤って無視されたフィールドの数等を含む。
【0011】
いくつかの実施形態において、セクション2においてより詳細に論述するように、UI要素はフィールドであり、自動識別ソフトウェアは、ウェブフォームにおけるフィールドに自動的に入力するように設計される。いくつかの実施形態において、ウェブフォームはチェックアウトページである。いくつかの実施形態において、ウェブフォームの仕様は、ウェブフォームにおける正規化フィールドラベルへのフィールドのマッピングを含む。いくつかの実施形態において、自動識別ソフトウェアの性能を評価することは、自動識別ソフトウェアが、該自動識別ソフトウェアがオートフィルをタスクとするウェブフォームにおけるフィールドを正しく識別し、正しく入力したか否かと、該自動識別ソフトウェアがオートフィルをタスクとしていないウェブフォームにおけるフィールドを正しく無視したか否かとを判別することを含む。
【0012】
いくつかの実施形態において、セクション3においてより詳細に論述するように、UI要素はテキストマーカであり、自動識別ソフトウェアは、チェックアウトカートデータをウェブページから自動的にスクレイピングするように設計される。いくつかの実施形態において、仕様は、正規化ラベルへのウェブページにおけるカートデータのマッピングを含む。
【0013】
いくつかの実施形態において、診断を表示することは、ウェブフォームにおけるオートフィルソフトウェアの性能に関する統計を表示することを含む。いくつかの実施形態において、診断を表示することは、複数のウェブページにわたる選択UI要素に対するソフトウェアの性能に関する統計を表示することを含む。例えば、表示される統計は、ウェブフォームにおいて正しく識別されたフィールド及び誤って識別されたフィールドのパーセンテージと、正しく入力されたフィールド及び誤って入力されたフィールドのパーセンテージと、正しく無視されたフィールド及び誤って無視されたフィールドのパーセンテージとに関連したものとすることができる。
【0014】
いくつかの実施形態において、ユーザがウェブページにおけるUI要素にタグ付けすることを可能にすることは、ユーザがウェブページにおけるUI要素にタグ付けすることを可能にするウェブブラウザのブラウザ拡張を提供することを含む。いくつかの実施形態において、ブラウザ拡張は、最初に、選択UI要素にラベルを自動的にタグ付けし、次に、ユーザがラベルを編集し、追加のUI要素にタグ付けすることを可能にするコードを含む。
【0015】
2.ウェブフォームにおけるオートフィルソフトウェアの精度をテストする方法
図2は、ウェブフォームにおけるオートフィルソフトウェアの精度をテストする方法を示している。本システムは、ユーザがウェブフォームにおけるフィールドにラベルをタグ付けすることを可能にする(ステップ210)。いくつかの実施形態において、ウェブフォームは、チェックアウトページとすることができる。本システムは、正規化ラベルへのフィールドのマッピングを含むウェブフォームの正規化仕様を作成する(ステップ220)。いくつかの実施形態において、仕様は、ウェブページにおける全てのあり得る入力可能要素に、それらの要素を入力可能にすることに関連した該当メタデータを加え、それらの要素を入力可能にすることに関連していないあらゆるメタデータ(スタイリング又は動作に関連したメタデータを含む)をウェブページから除いたものを表したものである。本システムは、オートフィルソフトウェアを使用して、ウェブフォームにおけるフィールドをオートコンプリート(auto-complete)する(ステップ230)。チェックアウトページの場合、フィールドは、ユーザ名、発送先住所、請求先住所、支払い情報等を含むことができる。ダミー情報をテスト目的に使用することができる。ダミー情報は、テスト目的で作成され、実際のシステムユーザに対応しない任意の情報である。本システムは、ウェブフォームの仕様を使用して、ウェブフォームにおけるオートフィルソフトウェアの性能を評価する(ステップ240)。これは、ウェブフォームのセット、対応する仕様、及びテストするオートフィルソフトウェアのバージョン等の、評価において必要な入力を識別することを含む。評価は、オートフィルソフトウェアが、入力をタスクとするフィールドを正しく認識したか否かと、入力をタスクとしていないフィールドを正しく無視したか否かとを判別することも含む。本システムは、オートフィルソフトウェアの性能に関する診断を表示する(ステップ250)。いくつかの実施形態において、評価、したがって診断は、ウェブフォーム全体に関するもの、及び/又は、複数のウェブフォームにわたるフィールドについてのオートフィルソフトウェアの性能に関するものとすることができる。
【0016】
3.チェックアウトページにおけるカートスクレイパソフトウェアの精度をテストする方法
図3は、チェックアウトページにおけるカートスクレイパソフトウェアの精度をテストする方法を示している。本システムは、ユーザがチェックアウトページにおけるテキストマーカにラベルをタグ付けすることを可能にする(ステップ310)。ラベルが付けられたテキストマーカは、商品名、商品URL、商品画像、数量、品目価格、小計価格、配送費、税金、及び総額に関連したマーカ等のチェックアウトカートデータに関するものである。本システムは、正規化ラベルへのテキストマーカのマッピングを含むチェックアウトページの正規化仕様を作成する(ステップ320)。本システムは、カートスクレイパソフトウェアを使用して、チェックアウトページからカートデータをスクレイピングする(ステップ330)。カートデータは、商品名、商品URL、商品画像、数量、品目価格、小計価格、配送費、税金、及び総額を含むことができる。本システムは、チェックアウトページの仕様を使用して、チェックアウトページに対するカートスクレイパソフトウェアの性能を評価する(ステップ340)。これは、ウェブフォームのセット、対応する仕様、及びテストするカートスクレイパソフトウェアのバージョン等の、評価において必要な入力を識別することを含む。評価は、カートスクレイパソフトウェアが、スクレイピングをタスクとするカートデータをスクレイピングしたか否かと、無視することをタスクとするデータを無視したか否かとを判別することも含む。本システムは、カートスクレイパソフトウェアの性能に関する診断を表示する(ステップ350)。いくつかの実施形態において、評価、したがって診断は、チェックアウトページ全体に関するもの、及び/又は、複数のチェックアウトページにわたる特定のテキストマーカのカートスクレイパソフトウェアの性能に関するものとすることができる。
【0017】
4.例示のシステムアーキテクチャ
図4は、本明細書に記載の方法を実行するシステムの例示のアーキテクチャを示している。ただし、本明細書に記載の方法は、他のシステムにおいて実施することもでき、図示したシステムに限定されるものではない。
【0018】
図4は、2つの独立したプロセスを示している。第1のプロセスは、1つ以上の手動による仕様を作成することである。第2のプロセスは、ベンチマークテストモジュール(「ベンチマーカ」とも呼ばれる)を使用して、ソフトウェアの精度を、クラウドストレージからダウンロードされた手動で作成された仕様と比較することによってその精度を調べることである。第1のプロセスに関して、ユーザは、クライアントデバイスにおいてクライアントアプリケーション420上でブラウザ拡張/ラベルツール410を使用して、ウェブページ内のUI要素に基づいて1つ以上の仕様を手動で作成する。1つ以上の手動で作成された仕様は、最初はクライアントデバイスに記憶され、その後、クラウドストレージ430(例えば、AMAZON WEB SERVICES)にアップロードされる。このクラウドストレージにおいて、手動で作成された仕様のそれぞれは、売買業者の名称にタグ付けされる。第2のプロセスの間、手動で作成された仕様は、クラウドストレージ430からダウンロードされ、自動識別ソフトウェアから生成された仕様と比較される。
【0019】
第2のプロセスは、手動で作成された仕様をベンチマークテストモジュール460にダウンロードするサーバAPI450を有するサーバ440において行われる。ベンチマークテストモジュール460は、サーバ440におけるメモリ480に記憶された自動識別ソフトウェア470から生成された仕様も受信する。自動識別ソフトウェア470は、ウェブページが動作する方法を模倣し、ウェブページに基づいて仕様の作成を試みる。ベンチマークテストモジュール460は、自動識別ソフトウェアから生成された仕様を、ゴールドスタンダード仕様とみなされる手動で作成された仕様と比較し、診断モジュール490を介して診断データを提供する。いくつかの実施形態において、この診断データは、自動識別ソフトウェアから生成されたどの仕様が手動で作成された仕様と一致していなかったのかと、一致していなかった仕様のどのフィールドが正しく識別されなかったのかとを含む。
【0020】
5.仕様を作成する方法のユーザインタフェースの例示のスクリーンショット
図5A~
図5Kは、本発明による仕様を作成する方法の例示的なユーザインタフェースのスクリーンショットを示している。当業者であれば、本発明の範囲内でより多くの機能又はより少ない機能を有する他のユーザインタフェースにおいて本発明を具現化することができることが分かる。したがって、
図5A~
図5Kは、例示を意図しており、決して限定を意図するものではない。
【0021】
図5Aにおいて、本システムは、ユーザが仕様を作成しているウェブサイトの言語を当該ユーザが選択することを可能にするユーザインタフェースを提供する。本例において、ユーザは、ウェブサイトの言語として英語を選択する。
図5Bにおいて、ユーザは、パラメータをユーザインタフェースにおけるフィールドにドラッグアンドドロップする。
図5Cに見られるように、パラメータ「ContactDetails.Emails.Email.Address」が、フィールド「Email Address(電子メールアドレス)」内にドラッグアンドドロップされている。
【0022】
次のステップは、ラベルをフィールドに追加することである。これは、入力フィールドのラベルを強調表示し、本システムがこのラベルをキャプチャすることを可能にすることによって行うこともできるし、ラベルを手動で入力することによって行うこともできる。
図5D及び
図5Eに示すように、ユーザは、入力フィールドのラベル(すなわち、「Email Address」)を強調表示し、本システムがこのラベルをキャプチャすべきことを確認する。
図5F及び
図5Gに示すように、ユーザは、代わりに、ラベルを手動で入力する選択肢を選択する。
図5Gに見られるように、ポップアップアラートブロックが、ユーザインタフェースにオーバレイとして現れ、ユーザがラベルの名称を入力することを要求する。ユーザは、その後、ラベルの名称を入力し、ラベルを確認する。本システムが、上記方法のいずれかを通じて入力フィールドのラベルを受信すると、ユーザインタフェースは、
図5Hに示すように、入力フィールドボックスをパラメータ名及びラベルとともに緑色で表示することによって、このフィールドが「spec field」(仕様フィールド)であることを示す。
【0023】
図5Iに見られるように、ユーザは、その後、フォーム内の全ての入力可能なフィールドについて、パラメータをドラッグアンドドロップするステップと、フィールドにラベリングするステップとを繰り返し、フォーム全体が完成すると、フォームが完成した「spec」(仕様)フォームとみなされるようにする。
図5J及び
図5Kに見られるように、フォームが、完成した「spec」フォームになると、ユーザは、この完成した仕様をクラウドストレージにアップロードし、アップロードが成功したことの確認を受信する。本システムは、ユーザが、以前の仕様をアップロードして上書きすることによって、完成した仕様に変更を加えることも可能にする。
【0024】
6.ベンチマーカを使用して変更をテストする方法のユーザインタフェースの例示のスクリーンショット
図6A~
図6Dは、本発明によるベンチマーカを使用して変更をテストする方法の例示的なユーザインタフェースのスクリーンショットを示している。当業者であれば、本発明の範囲内でより多くの機能又はより少ない機能を有する他のユーザインタフェースにおいて本発明を具現化することができることが分かる。したがって、
図6A~
図6Dは、例示を意図しており、決して限定を意図するものではない。
【0025】
図6Aにおいて、ユーザは、ベンチマーカの新たな実行を準備している。ベンチマーカは、「マスタ」(すなわち、手動で作成された仕様)と「ベンチマーカフロー例ブランチ(benchmarker-flow-example-branch)」(すなわち、自動識別ソフトウェアから生成された仕様)との間で比較を行い、フォームに何らかの相違があるか否かを判断するツールである。ユーザは、この場合に、全ての仕様を日本語(すなわち、「――lang ja」)で要求するベンチマーク実行用のパラメータを入力する。
図6Bに見られるように、ユーザは、ベンチマーク実行がマスタブランチ及びベンチマーカフロー例ブランチの2つのブランチにおいて行われることを指定する。ここで、ベンチマーカ、ミドルウェア、及びウィジェットの3つのフィールドは、変更を行うことができるコードベースにおける3つの異なるディレクトリを表す。
【0026】
図6Cに見られるように、ベンチマーク実行が開始すべきことを確認した後、本システムは、ベンチマークを実行して、マスタブランチ及びベンチマーカフロー例ブランチにおける日本語仕様の精度を計算し、結果を出力する。この場合には、ベンチマーカフロー例ブランチの精度はマスタブランチよりも低い。その結果、ユーザは、比較オプションをクリックすることによって2つのベンチマーク実行を比較し、何らかの必要な訂正を行いたい場合がある。
【0027】
図6Dは、2つのベンチマーク実行の間のそれらのマッピング結果に関する相違を示している。マスタブランチベンチマーク実行は左列にあり、ベンチマーカフロー例ブランチベンチマーク実行は右列にある。各行は、一意のフィールドと、2つのブランチの間のマッピングの比較とを表している。例えば、パラメータ「ContactDetails.Emails.Email.Address」の場合に、マスタブランチベンチマーク実行は、緑色で示すようにフィールドを正しくマッピングしていたのに対して、ベンチマーカフロー例ブランチベンチマーク実行は、赤色で示すようにフィールドを誤ってマッピングしていた。この比較プロセスによって、ユーザは、オートフィルソフトウェアに対する何らかの変更が、全体的なマッピング精度に対して正味のプラスになるのか又は正味のマイナスになるのかを判断することが可能になる。
【0028】
7.全般
図1~
図6Dに関して説明した方法は、ソフトウェアにおいて具現化され、ソフトウェアを実行するコンピュータシステム(1つ以上のコンピューティングデバイスを備える)によって実行される。当業者であれば、コンピュータシステムが、ソフトウェア命令を記憶する1つ以上のメモリユニット、ディスク又は他の物理的コンピュータ可読ストレージ媒体、及びソフトウェア命令を実行する1つ以上のプロセッサを有することを理解するであろう。
【0029】
当該技術分野に精通した当業者であれば、本発明の趣旨及び本質的な特性から逸脱することなく、本発明を他の特定の形態で具現化することができることを理解するであろう。したがって、上記の開示は、以下の特許請求項に示される本発明の範囲を限定するものではなく、説明するものであることが意図される。
【外国語明細書】