JPWO2009066762A1 - ユーザインタフェース認識装置及びユーザインタフェース認識方法 - Google Patents
ユーザインタフェース認識装置及びユーザインタフェース認識方法 Download PDFInfo
- Publication number
- JPWO2009066762A1 JPWO2009066762A1 JP2009542601A JP2009542601A JPWO2009066762A1 JP WO2009066762 A1 JPWO2009066762 A1 JP WO2009066762A1 JP 2009542601 A JP2009542601 A JP 2009542601A JP 2009542601 A JP2009542601 A JP 2009542601A JP WO2009066762 A1 JPWO2009066762 A1 JP WO2009066762A1
- Authority
- JP
- Japan
- Prior art keywords
- information
- user interface
- search
- unit
- tree structure
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
Description
例えば、文献1(特開2004−240759号)では、UIの操作ログ取得のために、文字認識や画像認識、部品の階層構造の取得によってUIの認識を実現する手法を開示している。
また、文献2(特開2001−306358号)では、GUIのテストのために、GUIの論理構造を記録し、保存した論理構造間の比較結果を用いてテスト結果の判定やテスト実行可否判断などを実現する手法を開示している。
また、生成されたUIの認識ではないが、文献3(特表2007−511814号)では、紙などに書かれたUIのイメージ画を認識してUIプログラムを生成する手法を開示している。
まず、本発明のUI認識装置の第一の実施の形態について、要点を説明する。
本発明のUI認識装置の第一の実施の形態では、まずUIからGUI部品と部品間の関係(レイアウト)を抽出し、包含関係や位置関係を反映した木構造情報として表現する。情報の表現方法の好適な例は、エクステンシブルマークアップランゲージ(eXtensible Markup Language:以下XMLという)のデータモデルである。UIが元々APからHTMLやXMLの形式で出力される場合には、この文書をそのまま使用する事ができる。
UI情報収集部101は、APが出力するUIに関する情報(UI情報)を取得する。UI情報とは、UIを構成する部品群を示す情報と、それら部品群の位置関係(レイアウト)を示す情報とを含む。そして、UI情報収集部101は、取得したUI情報に基づいて、UIを木構造で表現した木構造情報を生成する。また、UI情報収集部101は、事前準備段階である場合、UIを構成する部品群の中で検索対象となる部品(特定対象となる部品)を示す情報(検索対象部品情報)と、その部品の検索名(識別子)を示す情報とを合わせて、検索対象部品リストとして取得する。UI情報収集部101は、事前準備段階である場合、生成した木構造情報と、検索対象部品リストとをUI構造推定部102に出力する。一方、UI認識段階である場合、UI情報収集部101は、生成した木構造情報を部品検索部105に出力する。
まず、本発明のUI認識装置の第二の実施の形態について、要点を説明する。
本発明のUI認識装置の第二の実施の形態では、第一の実施の形態に加え、アプリケーションが改変されてUIの構造が変化した時に、事前準備として、改変後のUIの表示サンプルから構造定義情報を生成することに加え、改変前後の構造情報の差分の計算を行って改変前の部品が改変後にどこに移動したかを検出する。そして、この検出結果と改変前の検索ルールを用いて、改変後のUIに対する検索ルールを生成し、改変後の構造情報と検索ルールを保存する事を行う。
まず、本発明のUI認識装置の第三の実施の形態について、要点を説明する。
本発明のUI認識装置の第三の実施の形態では、第一の実施の形態に加えて、実際にUIの認識を行う時に、UIの木構造情報と、予め作成しておいた構造定義情報とが矛盾していないかを検証する。矛盾が無ければ通常通り部品検索を行うが、検証に失敗した場合、認識は行わずに認識失敗を出力する。
まず、本発明のUI認識装置の第四の実施の形態について、要点を説明する。
本発明のUI認識装置の第四の実施の形態では、第一の実施の形態に加えて、UIの木構造情報を詳細化あるいは簡略化する構造変更ルールを持ち、UIの木構造情報を別の木構造情報に変換して、変換された木構造情報を構造の推定や部品の検索に用いる。
図11は、本発明のUI認識装置を用いた情報抽出装置の構成図である。
情報抽出装置1101は、本発明のUI認識装置1102と、自動制御部1103と、抽出情報保存部1104、管理部1105を持ち、UI情報収集部101とAP自動制御部1103はWebブラウザ1110に接続されている。Webブラウザは複数の個人住所情報を保存するWWWアプリケーションである住所録AP1111に接続されている。
情報抽出装置1101は、AP自動制御部1103を用いて自動的に”Next”のリンクをクリックして次々と保存されている住所情報を表示する共に、氏名と会社名の情報を抽出して抽出情報保存部1104に保存する。
次に、本発明のUI認識装置を用いた情報抽出装置の動作の一例について説明する。
[ルール1]
木構造情報の根から該当ノードにいたるパスを兄弟ノード間の位置とともに指定する。
例えば、図15で”次”に該当する’A’タグのノードを指定するXPath式は、”/HTML/A[1]”と記載できる。これは、HTMLタグの中にあるAタグの中で2番目に出現するタグ、という意味である。
[ルール2]
該当ノードの子ノードの中で、該当ノードを一意に特定可能なノードの存在を条件として指定する。
例えば、図15で”次”に該当する’A’タグのノードを指定するXPath式は、”//A[./text()=Next]”と記載できる。これは、任意の場所に現れる 'A’タグの中で、特に要素値が’Next’であるもの、という意味である。
[ルール3]
該当ノードの共通の先祖を持つノードの中で、該当ノードを一意に特定可能なノードの存在を条件として指定する。
例えば、図15で”名前”に該当する要素値のノードを指定するXPath式は、”//text()[../../TD[1]/text()=氏名]”と記載できる。これは、任意の場所に現れる要素値の中で、特に2つ親のノード(TRタグ)の中の1番目に出現するTDタグの要素値が’氏名’であるもの、という意味である。
住所録AP1111が図16のHTMLを出力した場合、UI情報収集部101はWebブラウザ1110からそのDOM表現を取得し、これをUI構造検証部601に渡す。
次に、図17のサンプルには無かった二つの住所を持ったHTMLが出力された場合の動作を説明する。
次に元の構造定義情報(図15)と新構造定義情報(図19)を比較し、差分計算としてノードの対応関係を計算する。
具体例2は、上記具体例1と同様に、本発明のUI認識装置を情報抽出装置に用いた場合であるが、さらにUI構造変換部801と構造変換ルール802を持つ。
[ルール1]
画面上で同じ高さで左右に並ぶ部品があった場合、それらの部品群を包含する行コンテナ部品があると仮定し、親ノードとして行コンテナノードを追加する。
[ルール2]
画面上で同じ幅で上下に並ぶ部品があった場合、それらの部品群を包含する列コンテナ部品があると仮定し、親ノードとして列コンテナノードを追加する。
一つのウィンドウの上に、Nextや終了のボタン部品と、住所、氏名、電話、会社、東京都、佐藤、03-..、日本電気といったテキスト部品が配置されている。
Claims (18)
- ユーザインタフェースを構成する部品群及び前記部品群の位置関係を示すユーザインタフェース情報と、前記部品群の中で検索対象とする部品を示す検索対象部品情報と、前記ユーザインタフェースの構造を定義する構造定義情報とに基づいて、前記検索対象とする部品を検索するための検索ルールを生成する検索ルール生成部と、
新たなユーザインタフェース情報が入力されたときに、前記検索ルール生成部により予め生成された前記検索ルールを用いて、前記新たなユーザインタフェース情報に示される部品群の中から前記検索対象とする部品を検索する部品検索部と、
前記部品検索部による検索結果を出力する出力部と
を備えるユーザインタフェース認識装置。 - 前記検索ルール生成部は、
前記ユーザインタフェース情報を取得し、前記ユーザインタフェース情報に基づいて木構造情報を生成する機能と、前記検索対象部品情報を取得する機能とを備える情報収集部と、
前記情報収集部により生成された前記木構造情報に基づいて前記構造定義情報を生成する機能と、前記木構造情報、前記構造定義情報及び前記検索対象部品情報に基づいて前記検索ルールを生成する機能とを備えた構造推定部と、
前記構造推定部により生成された前記構造定義情報及び前記検索ルールを保存する構造定義情報保存部とを備え、
前記部品検索部は、前記構造定義情報保存部に保存された前記検索ルールを前記木構造情報に適用して前記検索対象とする部品を検索する
請求項1記載のユーザインタフェース認識装置。 - 前記情報収集部が前記新たなユーザインタフェース情報を取得したとき、
前記情報収集部は、前記新たなユーザインタフェース情報に基づいて新たな木構造情報を生成し、
前記部品検索部は、前記構造定義情報保存部に保存されている前記検索ルールを用いて、前記新たな木構造情報から前記検索対象とする部品を検索する
請求項3記載のユーザインタフェース認識装置。 - 二つの構造定義情報間の対応関係を計算する構造差分計算部をさらに備え、
前記ユーザインタフェースの構造が改変されたとき、
前記構造推定部は、改変後のユーザインタフェースの構造定義情報を生成し、
前記構造差分計算部は、前記構造定義情報保存部に保存されている前記構造定義情報と、前記構造推定部により新たに生成された前記改変後のユーザインタフェースの構造定義情報との対応関係を計算して、前記改変後のユーザインタフェースから前記検索対象とする部品を検索するための新たな検索ルールを生成する
請求項3記載のユーザインタフェース認識装置。 - 前記情報収集部により生成された前記新たな木構造情報と、前記構造定義情報保存部に保存されている前記構造定義情報とを比較し、双方の情報が示す構造に矛盾が無いかを検証する構造検証部をさらに備え、
前記構造検証部は、前記部品検索部による検索が行われる前に検証を行う
請求項3記載のユーザインタフェース認識装置。 - 前記情報収集部から出力された前記木構造情報及び前記新たな木構造情報を、変換ルールにしたがって、それぞれ別の木構造情報に変換する構造変換部と、
前記構造変換部により使用される変換ルールを保存する構造変換ルール保存部と
をさらに備え、
前記構造推定部及び前記部品検索部の少なくとも1つは、前記構造変換部により変換された前記別の木構造情報を使用する
請求項3に記載のユーザインタフェース認識装置。 - ユーザインタフェースを構成する部品群及び前記部品群の位置関係を示すユーザインタフェース情報と、前記部品群の中で検索対象とする部品を示す検索対象部品情報と、前記ユーザインタフェースの構造を定義する構造定義情報とに基づいて、前記検索対象とする部品を検索するための検索ルールを生成するステップと、
新たなユーザインタフェース情報が入力されたときに、予め生成された前記検索ルールを用いて、前記新たなユーザインタフェース情報に示される部品群の中から前記検索対象とする部品を検索するステップと、
検索結果を出力するステップと
を備えるユーザインタフェース認識方法。 - 前記検索ルールを生成するステップは、
前記ユーザインタフェース情報を取得するステップと、
前記ユーザインタフェース情報に基づいて木構造情報を生成するステップと、
前記検索対象部品情報を取得するステップと、
前記木構造情報に基づいて前記構造定義情報を生成するステップと、
前記木構造情報、前記構造定義情報及び前記検索対象部品情報に基づいて前記検索ルールを作成するステップと、
前記構造定義情報及び前記検索ルールを保存するステップと
を備える請求項7記載のユーザインタフェース認識方法。 - 前記新たなユーザインタフェース情報を取得するステップと、
前記新たなユーザインタフェース情報に基づいて新たな木構造情報を生成するステップとをさらに備え、
検索するステップは、保存されている前記検索ルールを、前記新たな木構造情報に適用するステップを備える
請求項8記載のユーザインタフェース認識方法。 - 前記ユーザインタフェースの構造が改変されたとき、改変後のユーザインタフェースの構造定義情報を生成するステップと、
保存されている前記構造定義情報と、前記改変後のユーザインタフェースの構造定義情報との対応関係を計算するステップと、
対応関係の計算結果を用いて、前記改変後のユーザインタフェースから前記検索対象とする部品を検索するための新たな検索ルールを生成するステップと
をさらに備える請求項9記載のユーザインタフェース認識方法。 - 検索するステップの前に、前記新たな木構造情報と、保存されている前記構造定義情報とを比較し、双方の情報が示す構造に矛盾が無いかを検証するステップ
をさらに備える請求項9記載のユーザインタフェース認識方法。 - 前記木構造情報及び前記新たな木構造情報を、変換ルールを用いて、それぞれ別の木構造情報に変換するステップをさらに備え、
前記構造定義情報を生成するステップ、前記検索ルールを作成するステップ及び検索するステップのうち少なくとも1は、前記別の木構造情報を使用するステップを備える
請求項9記載のユーザインタフェース認識方法。 - ユーザインタフェースを構成する部品群及び前記部品群の位置関係を示すユーザインタフェース情報と、前記部品群の中で検索対象とする部品を示す検索対象部品情報と、前記ユーザインタフェースの構造を定義する構造定義情報とに基づいて、前記検索対象とする部品を検索するための検索ルールを生成する処理と、
新たなユーザインタフェース情報が入力されたときに、予め生成された前記検索ルールを用いて、前記新たなユーザインタフェース情報に示される部品群の中から前記検索対象とする部品を検索する処理と、
検索結果を出力する処理と
をコンピュータに実行させるプログラム。 - 前記検索ルールを生成する処理として、
前記ユーザインタフェース情報を取得する処理と、
前記ユーザインタフェース情報に基づいて木構造情報を生成する処理と、
前記検索対象部品情報を取得する処理と、
前記木構造情報に基づいて前記構造定義情報を生成する処理と、
前記木構造情報、前記構造定義情報及び前記検索対象部品情報に基づいて前記検索ルールを作成する処理と、
前記構造定義情報及び前記検索ルールを保存する処理と
をコンピュータに実行させる請求項13記載のプログラム。 - 前記新たなユーザインタフェース情報を取得する処理と、
前記新たなユーザインタフェース情報に基づいて新たな木構造情報を生成する処理とをさらにコンピュータに実行させ、
検索する処理の中で、保存されている前記検索ルールを、前記新たな木構造情報に適用する処理をコンピュータに実行させる請求項14記載のプログラム。 - 前記ユーザインタフェースの構造が改変されたとき、改変後のユーザインタフェースの構造定義情報を生成する処理と、
保存されている前記構造定義情報と、前記改変後のユーザインタフェースの構造定義情報との対応関係を計算する処理と、
対応関係の計算結果を用いて、前記改変後のユーザインタフェースから前記検索対象とする部品を検索するための新たな検索ルールを生成する処理と
をさらにコンピュータに実行させる請求項15記載のプログラム。 - 検索する処理の前に、前記新たな木構造情報と、保存されている前記構造定義情報とを比較し、双方の情報が示す構造に矛盾が無いかを検証する処理
をさらにコンピュータに実行させる請求項15記載のプログラム。 - 前記木構造情報及び前記新たな木構造情報を、変換ルールを用いて、それぞれ別の木構造情報に変換する処理をさらにコンピュータに実行させ、
前記構造定義情報を生成する処理、前記検索ルールを作成する処理及び検索する処理のうち少なくとも1の処理の中で、前記別の木構造情報を使用する処理をコンピュータに実行させる請求項15記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009542601A JP5413198B2 (ja) | 2007-11-21 | 2008-11-21 | ユーザインタフェース認識装置、ユーザインタフェース認識方法およびプログラム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007302209 | 2007-11-21 | ||
JP2007302209 | 2007-11-21 | ||
PCT/JP2008/071223 WO2009066762A1 (ja) | 2007-11-21 | 2008-11-21 | ユーザインタフェース認識装置及びユーザインタフェース認識方法 |
JP2009542601A JP5413198B2 (ja) | 2007-11-21 | 2008-11-21 | ユーザインタフェース認識装置、ユーザインタフェース認識方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009066762A1 true JPWO2009066762A1 (ja) | 2011-04-07 |
JP5413198B2 JP5413198B2 (ja) | 2014-02-12 |
Family
ID=40667584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009542601A Expired - Fee Related JP5413198B2 (ja) | 2007-11-21 | 2008-11-21 | ユーザインタフェース認識装置、ユーザインタフェース認識方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20100262598A1 (ja) |
JP (1) | JP5413198B2 (ja) |
WO (1) | WO2009066762A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5408623B2 (ja) * | 2010-02-17 | 2014-02-05 | 株式会社日立製作所 | 検索式提供方法、プログラム、及び、検索式提供システム |
CN102207857B (zh) * | 2010-03-29 | 2014-08-27 | 日电(中国)有限公司 | Gui元素识别方法、装置及系统 |
US8467987B1 (en) * | 2012-05-30 | 2013-06-18 | Google, Inc. | Methods and systems for testing mobile device builds |
JP6212373B2 (ja) * | 2013-12-05 | 2017-10-11 | 日本電信電話株式会社 | 操作ログ管理装置及び方法 |
JP6355768B1 (ja) * | 2017-01-17 | 2018-07-11 | 東日本電信電話株式会社 | 操作自動化装置 |
WO2020222219A1 (en) * | 2019-04-30 | 2020-11-05 | Walkme Ltd. | Gui element acquisition using a plurality of alternative representations of the gui element |
JP7328938B2 (ja) | 2020-06-19 | 2023-08-17 | 株式会社オービック | 画面要素補完装置、画面要素補完方法および画面要素補完プログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4221824B2 (ja) * | 1999-06-17 | 2009-02-12 | ソニー株式会社 | 送受信システムおよび受信装置 |
US6724409B1 (en) * | 2000-11-16 | 2004-04-20 | Hewlett-Packard Development Company L.P. | Tree-based graphical user interface for creating and editing machine control sequences |
US20020163535A1 (en) * | 2000-12-11 | 2002-11-07 | Mitchell Kathryn L. | System and method for generating a graphical user interface from a template |
US7191119B2 (en) * | 2002-05-07 | 2007-03-13 | International Business Machines Corporation | Integrated development tool for building a natural language understanding application |
JP2004272871A (ja) * | 2003-02-20 | 2004-09-30 | Hitachi Software Eng Co Ltd | Webコンテンツ内のデータ抽出配信方法およびシステム |
EP1460533A1 (en) * | 2003-03-17 | 2004-09-22 | Alcatel | Extensible graphical user interface development framework |
US7567964B2 (en) * | 2003-05-08 | 2009-07-28 | Oracle International Corporation | Configurable search graphical user interface and engine |
KR100558952B1 (ko) * | 2005-05-12 | 2006-03-10 | 김길웅 | 인터페이스 화면 설계 중심의 소프트웨어 생산 공정 자동화방법 및 이 방법을 프로그램화하여 수록한 컴퓨터로 읽을수 있는 기록매체 |
-
2008
- 2008-11-21 WO PCT/JP2008/071223 patent/WO2009066762A1/ja active Application Filing
- 2008-11-21 JP JP2009542601A patent/JP5413198B2/ja not_active Expired - Fee Related
- 2008-11-21 US US12/742,833 patent/US20100262598A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP5413198B2 (ja) | 2014-02-12 |
WO2009066762A1 (ja) | 2009-05-28 |
US20100262598A1 (en) | 2010-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103635897B (zh) | 对运行页面进行动态更新的方法 | |
JP5413198B2 (ja) | ユーザインタフェース認識装置、ユーザインタフェース認識方法およびプログラム | |
US7395456B2 (en) | Query-based identification of user interface elements | |
Lin et al. | DSMDiff: a differentiation tool for domain-specific models | |
JP4097263B2 (ja) | ウェブアプリケーションモデル生成装置、ウェブアプリケーション生成支援方法及びプログラム | |
US20030088643A1 (en) | Method and computer system for isolating and interrelating components of an application | |
JP4997749B2 (ja) | 文書処理方法、プログラム及びシステム | |
TW201250492A (en) | Method and system of extracting web page information | |
JP4899971B2 (ja) | テスト仕様書作成プログラム、テスト仕様書作成装置、およびテスト仕様書作成方法 | |
JP4860416B2 (ja) | 文書検索装置、文書検索方法および文書検索プログラム | |
US20110307488A1 (en) | Information processing apparatus, information processing method, and program | |
JPWO2007105759A1 (ja) | 数式記述構造化言語オブジェクト検索システムおよび検索方法 | |
KR20140038469A (ko) | 소스 코드를 실행 요소에 링크시키는 기법 | |
JP2004341671A (ja) | 情報処理システム、制御方法、制御プログラム、及び記録媒体 | |
Morgado et al. | Reverse engineering of graphical user interfaces | |
JP7434867B2 (ja) | ウェブページから情報を抽出する方法、装置及び記憶媒体 | |
JP2005266954A (ja) | 操作情報記録・再生装置 | |
WO2006046323A1 (ja) | インターネット情報収集装置、プログラム及び方法 | |
WO2006046665A1 (ja) | 文書処理装置及び文書処理方法 | |
JP3914081B2 (ja) | アクセス権限設定方法および構造化文書管理システム | |
JP5404721B2 (ja) | シナリオテストのテスト項目生成装置及び方法及びプログラム | |
US9483578B2 (en) | Computer-readable storage medium storing update program, update method, and update device | |
JP4496919B2 (ja) | Web閲覧操作の記録・再生装置及びプログラム及びコンピュータ読み取り可能な記憶媒体 | |
JP4417384B2 (ja) | 文書処理装置および文書処理方法 | |
JP5476867B2 (ja) | マッシュアッププログラム、マッシュアップ装置及びマッシュアップ方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130618 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130816 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131015 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131028 |
|
LAPS | Cancellation because of no payment of annual fees |