WO2021240824A1 - マスキング装置、マスキング方法およびマスキングプログラム - Google Patents

マスキング装置、マスキング方法およびマスキングプログラム Download PDF

Info

Publication number
WO2021240824A1
WO2021240824A1 PCT/JP2020/021498 JP2020021498W WO2021240824A1 WO 2021240824 A1 WO2021240824 A1 WO 2021240824A1 JP 2020021498 W JP2020021498 W JP 2020021498W WO 2021240824 A1 WO2021240824 A1 WO 2021240824A1
Authority
WO
WIPO (PCT)
Prior art keywords
screen
screen data
masking
data
components
Prior art date
Application number
PCT/JP2020/021498
Other languages
English (en)
French (fr)
Inventor
志朗 小笠原
健 増田
有記 卜部
史拓 横瀬
英毅 小矢
Original Assignee
日本電信電話株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2020/021498 priority Critical patent/WO2021240824A1/ja
Priority to US17/925,429 priority patent/US20230185964A1/en
Priority to JP2022527471A priority patent/JP7380870B2/ja
Publication of WO2021240824A1 publication Critical patent/WO2021240824A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

マスキング装置は、基準となる第1の画面データ、および処理対象の1個以上の第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する。また、マスキング装置は、識別した画面と画面構成要素を基に、第2の画面データのうち、第1の画面データと同等である第3の画面データを特定する。また、マスキング装置は、第3の画面データを基に、第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する。

Description

マスキング装置、マスキング方法およびマスキングプログラム
 本発明は、マスキング装置、マスキング方法およびマスキングプログラムに関する。
(1. 画面データ)
(1.1. プログラムの画面データ)
 端末作業では、作業者は、端末内で動作するプログラムの画面を構成するテキストボックス、リストボックス、ボタン、ラベル等(以下、「画面構成要素」と表記)に表示された値を参照し、また、画面構成要素に対し、値の入力や選択等の操作を行う。そのため、端末作業の自動化や支援、作業実態の把握、分析を目的とする一部のプログラムでは、図1に示すような、画面の画像、画面の属性(タイトル、クラス名、表示領域の座標値、表示しているプログラムの名称、等)、画面構成要素の情報(以下、これらをあわせて「画面データ」と表記)あるいはこれらの一部が取得され、利用されている。
 画面構成要素の情報は、UI Automation(以下、「UIA」と表記)やMicrosoft Active Accessibility(以下、「MSAA」と表記)、あるいはプログラムが独自に提供するインタフェースにより取得できる。画面構成要素の情報には、画面構成要素の種類や表示/非表示の状態、表示値、表示領域の座標値等、各画面構成要素単独で利用可能な情報(以下、「属性」と表記)の他、プログラムが内部で保持している、画面構成要素同士の包含関係や所有関係等の関係性を表した情報(以下、「画面構造」と表記)も含まれる。
 異なる時点、異なる端末で表示される画面では、作業者に提供する機能は同じ(以下、「同等」と表記)であっても、表示している案件や、作業の実施状況に応じて、画面構成要素の一部の属性の値が異なる。また、画面構成要素の有無自体も異なる。例えば、案件に含まれる明細の数が異なると、それを表示している一覧表の行数が変わる。あるいは作業の実施状況により、エラーメッセージの表示、非表示が変わることもある。そのため、画面構造も変動する。
(1.2. 画面データの利用方法)
(1.2.1. 少数の見本の画面データとしての利用方法)
 特許文献1および2に記載されているような、端末作業の自動化や支援を目的とするプログラムでは、動作設定時に、特定の端末で見本とする画面データを取得し、それを用いて、表示値の取得や操作の対象(以下、「制御対象」と表記)となる画面構成要素を指定しておく。自動化や支援の処理の実行時には、その時点で、動作設定を行った特定の端末以外も含む任意の端末で表示されている画面から画面データ(以下、「処理対象画面データ」と表記)を取得し、見本画面データ、あるいはそれを加工して得られる画面や画面構成要素の同等性の判定条件と照合する。これにより、その時点の画面データの中から、見本画面データ中の制御対象の画面構成要素と同等の画面構成要素を特定し、表示値の取得や操作の対象とする。
 このため、自動化や支援の処理の実行には、見本画面データが必要である。また、動作設定内容を人が確認、変更するために、ビジュアルに表示する場合にも、見本画面データが必要である。そのため、端末作業の自動化や支援を目的とするプログラムでは、共有サーバに一元的に配置するのか、自動化や支援の処理を実行する端末それぞれに配置するのか、の違いはあるにせよ、見本画面データを保持し続けている。
(1.2.2. 大量の操作ログ中の画面データとしての利用方法)
 業務実態の把握、分析を目的とするプログラムでは、各端末で作業者が画面構成要素に対する操作を行ったタイミングで画面データや操作に関する情報を取得、操作ログとして収集する。収集した大量の操作ログは、人によるパターンや傾向の把握、分析を可能とするため、画面データに、画面構成要素の表示値として含まれている、作業対象の案件情報の一部、例えば、新規/変更/解約等の案件の種別や、その対象となる商品やサービスの種別、地域、時期等によって分類され、集計に用いられる。
(1.3. 画面データ中の要秘匿情報)
 画面には、作業対象の案件情報が表示されることがあり、また、案件情報の中には、顧客情報のように、参照を含めた取り扱いを、最小限の人にとどめる、あるいは許可された一部の人に限定する必要がある情報(以下、「要秘匿情報」と表記)も存在する。
 端末作業の自動化や支援を目的とするプログラムが動作設定として保持している見本画面データには、動作設定時の画面表示内容が、画面構成要素の表示値として含まれるため、要秘匿情報も含まれる場合がある。図2に示すように、自動化や支援の処理の実行、動作設定内容の確認や変更は可能となるよう、データ項目の名称や、自動化や支援の処理での条件判断に用いるデータ項目の値等はそのまま残しつつ、要秘匿情報を除去、非特定化、一般化、あるいはクロッピング等、もとの値がわからないようにする(以下、「マスキング」と表記)必要がある。
 また、業務実態の把握、分析のため収集した操作ログの画面データにも、要秘匿情報が含まれる場合がある。業務実態の把握、分析は可能としつつ、要秘匿情報をマスキングする必要がある。
 ここで、画面表示対象の案件によって値が互いに異なる等、バリエーションの多い情報は、顧客等を直接特定し得る情報であるため、要秘匿情報となる場合が多く、逆に、多数の案件で同じ値となる、バリエーションの少ない情報は、顧客等を直接特定し難い情報であるため、要秘匿情報となる場合は少ない、という傾向がある。
 一方、端末作業の自動化や支援を目的としたプログラムの動作設定は、様々な案件に対して繰り返し適用できる必要があるため、画面表示対象の案件にあまり依存しない、バリエーションの少ない情報が使用される。また、業務実態の把握や分析において分類を行う際にも、分類数が多くなり過ぎないよう、バリエーションの少ない情報が使用される。
 したがって、画面構成要素の表示値が、限られた候補値しか取りえないものはマスキング対象外とし、任意の値をとりうるものをマスキング対象とできれば、端末作業の自動化や支援、業務実態の把握や分析は可能としつつ、要秘匿情報の取り扱いを限定化できると考えられる。
(2. マスキング方法)
(2.1. 画面データの利用方法によらないマスキング方法)
 画面データに画面構成要素の情報が含まれる場合には、画面構成要素の種類が、例えばリストボックスのように限られた候補値しか表示値とならないものであるか、テキストボックスのように任意の値が表示値となり得るものであるか、を調べ、任意の値が表示値となり得る画面構成要素に対し、マスキングする方法が考えられる。
(2.2. 見本画面データのみのマスキングを行う場合のマスキング方法)
 見本画面データに画面構成要素の情報が含まれない場合には、表示値のマスキングが必要な画面画像上の領域自体を、動作設定の作成者に指定させ、指定された領域を黒塗りする等、マスキングする方法が用いられている。
 または、見本画面データに画面構成要素の情報が含まれる場合には、表示値のマスキングが必要な画面構成要素を、動作設定の作成者に指定させ、指定された画面構成要素の表示値を「****」等の所定の文字列、あるいはランダムに生成した文字列に置き換える等、マスキングするとともに、画面構成要素の表示領域の座標値から、画面画像においてその画面構成要素が描画されている領域を特定し、マスキングする方法が用いられている。
(2.3. 操作ログ中の画面データのマスキングを行う場合のマスキング方法)
 操作ログを収集する前に、要秘匿情報が表示される画面の画面データを見本として取得し、その見本画面データにおいて、マスキング対象とする画面構成要素を人が指定する。
 操作ログを収集する際には、その時点で取得された処理対象の画面データが、見本画面データと同等かどうかを判定するとともに、処理対象画面データの画面構成要素の中から、見本画面データにおけるマスキング対象の画面構成要素と同等のものを特定し、表示値のマスキング、画面画像においてその画面構成要素が描画されている領域のマスキングを行う方法が考えられる。
 または、要秘匿情報が表示される画面の限定が困難な場合には、業務実態の把握、分析をする上で必要な情報が表示される画面の画面データを見本として取得し、その見本画面データにおいて、マスキング対象外とする画面構成要素を人が指定する。
 操作ログを収集する際には、その時点で取得された処理対象の画面データが、見本画面データと同等かどうかを判定するとともに、処理対象画面データの画面構成要素の中から、見本画面データにおけるマスキング対象外の画面構成要素と同等のものを特定し、それ以外の画面構成要素に対し、表示値のマスキング、画面画像においてその画面構成要素が描画されている領域のマスキングを行う方法が考えられる。
 あるいは、操作ログの収集後に、収集された操作ログの中から、見本として用いる画面データを選び、その見本画面データに対し、マスキング対象あるいはマスキング対象外の画面構成要素を人が指定した上で、収集された操作ログに含まれる処理対象の画面データそれぞれに対し、見本画面データと同等かを判定するとともに、処理対象画面データの画面構成要素の中から、見本画面データにおけるマスキング対象あるいはマスキング対象外の画面構成要素を特定し、その結果にしたがってマスキングを行う方法が考えられる。
(3. 構成要素の特定(識別)方法)
 いずれの方法においても、図3に示すように、処理対象と見本の画面データが同等かどうかを判定し、また、見本画面データ中の画面構成要素と同等のものを、処理対象画面データの中から特定する(以下、「識別」と表記)ことが必要となる。
 この識別方法として、特許文献1および2には、画面がHTMLで記述されたプログラムにおいて、表示値の取得や操作の対象(以下、「制御対象」と表記)の画面構成要素の種類に相当するタグやそのHTML属性により、画面構成要素を識別する方法(従来の識別技術A)が記載されている。この方法は、画面データを取得する時点、端末によらず、同等の画面内の同等の画面構成要素であれば、値が変わらない属性(以下、「不変属性」と表記)があり、かつ、不変属性あるはそれらの組合せにより、画面内の画面構成要素を一意に特定できることを利用したものである。
 また、非特許文献1には、同様に画面がHTMLで記述されたプログラムを対象に、有向順序木からなる画面構造において、制御対象の画面構成要素の種類に相当するタグやその属性に加え、その祖先のタグや属性に関する情報を用いる方法(従来の識別技術B)が記載されている。
 画面がHTMLでは記述されていないものも含めた一般のプログラムを対象とした識別方法としては、特許文献3に、制御対象の画面構成要素の同等性の判定条件として、画面構成要素同士の、見本画面(二次元平面)における相対的な配置関係の条件を表した「配置パターン」を用意しておき、処理対象画面において、その配置パターンを満たす画面構成要素を探すことで、画面構成要素を識別する方法(従来の識別技術C)が記載されている。
 また、以上の説明では、見本画面データ中の各画面構成要素について、マスキング対象とするかどうかを、人が指定するものとしていたが、これを自動的に行えれば、人による指定の手間を削減できる。
 特許文献4には、画面構成要素の表示値が、限られた候補値しかとりえないのか、任意の値をとりうるのかを、多数の操作ログに基づき判定する方法(従来の画面構成要素種別判定方法)が記載されている。
特開2009-99015号公報 特開2017-72872号公報 特開2018‐77763号公報 特開2018‐185564号公報
W3C Recommendation 21 March 2017, XML Path Language (XPath) 3.1
 しかしながら、従来の方法には、マスキング対象の画面構成要素を、手間を抑えて適切に特定することができない場合があるという問題がある。以下、従来の方法ごとの課題を説明する。
(4. 課題)
(4.1. 画面データの利用方法によらないマスキング方法の課題)
 画面構成要素のうち、ラベルやテキストボックス(特に、表示専用で、編集不可のもの)は、項目名等、表示対象案件によらず固定的で、バリエーションの少ない値を表示する用途に使用される一方で、伝票番号や顧客コード、業務システム利用者名等、端末内で動作するプログラムが自動で採番、あるいは内部的に管理している、表示対象案件ごとに異なり、バリエーションの多い値を表示する用途にも使用される。そのため、画面構成要素の種類のみでは、その画面構成要素の表示値が、限られた候補値しかとりえないのか、任意の値をとりうるのかを、正しく判定できない。
(4.2. 見本画面データのみのマスキング方法の課題)
 表示値のマスキングが必要な画面構成要素、あるいは画面画像上の領域を、すべて人が指定する必要があり、多くの手間が必要となる。
(4.3. 操作ログ中の画面データのマスキング方法の課題)
 見本とする画面データを、操作ログの取得前に用意する場合には、把握や分析の対象とする業務において、端末作業でどのような画面が使用されるのかを、あらかじめよく理解している必要があるが、操作ログにより業務実態を把握、分析しようとしている状況において、あらかじめ理解できていることは稀である。あるいは、見本とする画面データを、操作ログの取得後に用意する場合には、大量の操作ログの中から、把握や分析に必要なデータが残されるよう、必要な画面データを選び出すのに多くの手間が必要となる。
 また、見本画面データを選べても、その中で、マスキング対象またはマスキング対象外の画面構成要素をすべて人が指定する必要があり、多くの手間が必要となる。従来の画面構成要素種別判定技術によれば、画面構成要素の表示値が、限られた候補値しかとりえないのか、任意の値をとりうるのかを、多数の操作ログに基づき判定できる。しかし、同等の画面でも画面構造が異なる場合に、表示値のバリエーションを求めるにあたり、複数の異なる時点、異なる端末で取得された操作ログの画面データの中から、互いに同等の画面構成要素を特定する方法は不明であり、現状では同等の画面では画面構造が完全に一致する場合にしか適用できない。
 さらに、見本画面データにおいて、マスキング対象またはマスキング対象外の画面構成要素が、制御対象として指定された上でも、従来の識別技術A~Cでは、それと同等な画面構成要素を処理対象画面データの中から正しく特定できない場合がある。
 画面がHTMLで記述されていないものも含めた一般のプログラムでは、画面構成要素の情報は取得できても、不変属性が少なく、画面構成要素の種類のみの場合もある。そのため、属性あるいは複数の属性の組合せでは、画面内で各画面構成要素を一意に識別できない場合がある。例えば、HTMLで記述された画面において、入力フォームのテキストボックスやリストボックス、ボタン等は、タグやid属性、name属性、あるいはこれらの組合せにより、画面内で各画面構成要素を一意に識別できる場合があるが、MSAAやUIAにより取得可能な画面構成要素の属性には、そのような属性が存在しない(「ID」あるいはそれに類する名称の属性はあっても、その値は、その端末、その時点においてのみ有効であり、別の端末、別の時点で同等の画面構成要素が表示される際には、別の値となるため、一意な識別には利用できない。)。このような画面では、従来の識別技術Aでは、画面や画面構成要素を識別できない。
 また、有向順序木からなる画面構造において、制御対象の画面構成要素とその祖先の属性を用いた識別情報を用いても、複数の画面構成要素で識別情報が同じになり、従来の識別技術Bでは、図4のように、画面や画面構成要素を識別できない場合が多発する。これを回避するため、従来の識別技術Bでは、兄弟や子孫に関する条件を追加することも可能である。しかし、現状では人が、画面や画面構成要素ごとに、処理対象画面に生じうる変動を想定しながら、必要な条件を考え、追加する必要がある。
 一方、従来の識別技術Cでは、一般のプログラムを対象としているが、画面(二次元平面)における画面構成要素の相対的な配置関係は、画面の大きさや表示内容の多寡により変わる場合がある。例えば、図5のように、画面の横幅を小さくすると、右側に隣接して配置されていたボタンが、左斜め下側に離れて配置される。このようなプログラムに対しては、従来の識別技術Cでは、画面や画面構成要素を識別できない。また、動作設定時に指定された画面構成要素同士の、見本画面(二次元平面)における相対的な配置関係から、処理対象画面の識別に用いる配置パターンを自動的に作成する方法、特に、見本画面での相対的な配置関係が、どこまで処理対象画面でも再現されるべきものとして、相対的な配置関係の条件に反映するかを決定する方法は不明であり、現状では人が、画面や画面構成要素ごとに、処理対象画面に生じうる変動を想定しながら、作成する必要がある。
 上述した課題を解決し、目的を達成するために、基準となる第1の画面データ、および処理対象の1個以上の第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する識別部と、識別した画面と画面構成要素を基に、前記第2の画面データのうち、前記第1の画面データと同等である第3の画面データを特定する特定部と、前記第3の画面データを基に、前記第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する判定部と、を有することを特徴とする。
 本発明によれば、マスキング対象の画面構成要素を、手間を抑えて適切に特定することができる。
図1は、画面データの例を示す図である。 図2は、マスキングの例を示す図である。 図3は、画面構成要素の識別方法を説明する図である。 図4は、画面構成要素の識別できない場合の例を示す図である。 図5は、画面構成要素の相対的な配置関係が変わる例を示す図である。 図6は、対応付け方法の評価が最良となる共通部分構造による同等性の判定結果の例を示す図である。 図7は、マスキング装置の構成例(ユースケース(α))を示す図である。 図8は、マスキング装置の構成例(ユースケース(β))を示す図である。 図9は、見本画面データ保持部で保持されるデータの例を示す図である。 図10は、処理対象画面データ蓄積部で保持されるデータの例を示す図である。 図11は、識別結果保持部で保持されるデータの例(ユースケース(α))を示す図である。 図12は、識別結果保持部で保持されるデータの例(ユースケース(β))を示す図である。 図13は、マスキング要否判定対象画面データ列挙結果保持部で保持されるデータの例(ユースケース(α))を示す図である。 図14は、マスキング要否判定対象画面データ列挙結果保持部で保持されるデータの例(ユースケース(β))を示す図である。 図15は、画面構成要素表示値列挙結果保持部で保持されるデータの例を示す図である。 図16は、マスキング要否判定結果保持部で保持されるデータの例を示す図である。 図17は、画面比較規則保持部で保持されるデータの例を示す図である。 図18は、画面構成要素属性比較規則保持部で保持されるデータの例を示す図である。 図19は、画面データ分類結果保持部で保持されるデータの例を示す図である。 図20は、マスキング処理の全体フロー(ユースケース(α))を示す図である。 図21は、マスキング処理の全体フロー(ユースケース(β))を示す図である。 図22は、画面および画面構成要素を識別する処理の全体フロー(ユースケース(α))を示す図である。 図23は、画面および画面構成要素を識別する処理の全体フロー(ユースケース(β))を示す図である。 図24は、画面構造を比較する処理のフローを示す図である。 図25は、対応付け方法を評価する処理のフローを示す図である。 図26は、画面構造の同等性を判定する処理のフローを示す図である。 図27は、マスキング要否判定対象の画面データを列挙する処理の全体フロー(ユースケース(α))を示す図である。 図28は、マスキング要否判定対象の画面データを列挙する処理の全体フロー(ユースケース(β))を示す図である。 図29は、画面構成要素の表示値を列挙する処理の全体フロー(ユースケース(α))を示す図である。 図30は、画面構成要素の表示値を列挙する処理の全体フロー(ユースケース(β))を示す図である。 図31は、マスキング要否を判定する処理の全体フローを示す図である。 図32は、画面データを分類する処理の全体フローを示す図である。 図33は、画面データ間の識別結果から、画面データグループ間の類似度を求める例を示す図である。 図34は、画面データを分類する例を示す図である。 図35は、グループの代表を選ぶ例を示す図である。 図36は、マスキングプログラムを実行するコンピュータの一例を示す図である。
 実施形態は、画面におけるマスキング対象の画面構成要素を、手間を抑えて適切に特定することを目的とする。
 実施形態は、従来の手法では画面構成要素のマスキングが困難であった以下の第1~第5の条件下で、画面構成要素のマスキングをできるようにするものである。すなわち、第1の条件は、画面構成要素の種類のみでは、その画面構成要素の表示値が、限られた候補値しかとりえないのか、任意の値をとりうるのかを、正しく判定できないことである。第2の条件は、同等の画面であっても、表示している案件や、作業の実施状況に応じて、画面構成要素の属性値と画面構造が変動することである。第3の条件は、取得できる画面構成要素の情報において、不変属性が、画面構成要素の種類等に限定されており、マスキング対象またはマスキング対象外の画面構成要素やその祖先の属性あるいは複数の属性の組合せを用いても、画面内において各画面構成要素を一意に識別できないことである。第4の条件は、画面の大きさや、各画面構成要素の表示内容の多寡により、画面構成要素の二次元平面上の配置が変わることである。第5の条件は、画面や画面構成要素ごとに、マスキング対象またはマスキング対象外の画面構成要素の同等性の判定条件を、必ずしも人が作成する必要がないことである。なお、ここで述べた条件は、いずれもマスキングが困難になる条件である。そのため、当然ながら、上記の条件がいずれも成立していない場合や、上記の条件の一部のみが成立している場合には、実施形態によるマスキングは可能である。
[実施形態]
 以下に、本願に係るマスキング装置、マスキング方法およびマスキングプログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
 実施形態のマスキング装置は、主に2種類のユースケースに合わせた動作を行うものとする。以下、見本画面データのみのマスキングを行う場合を、ユースケース(α)と呼ぶ。また、操作ログ中の画面データのマスキングを行う場合を、ユースケース(β)と呼ぶ。なお、マスキング装置は、ユースケース(α)およびユースケース(β)の両方に対応したものであってもよいし、いずれか一方に対応したものであってもよい。
(ユースケース(α)における動作の概要)
 ユースケース(α)において、マスキング装置は、端末作業の自動化や支援を目的とするプログラムの動作設定の作成後、動作確認等、利用者を限定可能な初期段階の動作時に、端末作業の自動化や支援を目的とするプログラムにより取得される複数の処理対象の画面データと、見本の画面データを比較することで、画面と画面構成要素を識別し、同等の画面データをすべて求める。その上で、見本の各画面構成要素について、他の同等な画面データ中に存在する同等の画面構成要素の数や、表示値のバリエーションを求め、所定の閾値と比較することで、マスキング対象とするかどうかの判定とマスキングを行う。
 また、マスキング装置は、画面と画面構成要素の識別においては、同じ属性値を持ち、同等となりうる見本画面データの画面構造(以下、「見本の画面構造」と表記)中の画面構成要素(以下、「見本の画面構成要素」と表記)と処理対象画面データの画面構造(以下、「処理対象の画面構造」と表記)中の画面構成要素(以下、「処理対象の画面構成要素」と表記)の、それぞれの画面構造における、他の画面構成要素との関係性が同じかどうかも考慮し、画面と画面構成要素の同等性を判定する。例えば、マスキング装置は、画面構造が有向木である場合、画面構成要素やその祖先だけでなく、兄弟関係にある画面構成要素の他、祖先-子孫の関係にはなく、ルートとなる画面構成要素からの深さも異なる画面構成要素についても、同じ属性値を持ち、同等となりうるものが、同じ関係性となっているかどうかを考慮する。
 具体的には、図6に示すように、マスキング装置は、見本と処理対象の画面構造同士を比較し、見本の画面構成要素全体のうち、処理対象の画面構成要素に対応付けられるものの数による、対応付け方法の評価が最良となるように共通部分構造を求め、この数が見本の画面構成要素の数に占める割合と、この数が処理対象の画面構成要素の数に占める割合を、所定の閾値と比較することにより、画面と画面構成要素の同等性を判定する。
(ユースケース(β)における動作の概要)
 ユースケース(β)において、マスキング装置は、操作ログ中の各画面データについて、他の残りの画面データとの比較、識別を行い、同等の画面データをすべて求める。その上で、各画面データ中の各画面構成要素について、他の同等な画面データ中に存在する同等の画面構成要素の数や、表示値のバリエーションを求め、所定の閾値と比較することで、マスキング対象とするかどうかの判定とマスキングを行う。また、マスキング装置は、画面と画面構成要素の識別においては、「見本画面データのみのマスキングを行う場合」と同じ方法を用いる。
(各ユースケースの効果)
 本実施形態のユースケース(α)によれば、端末作業の自動化や支援を目的とするプログラムの動作に伴い取得される処理対象の画面データと見本の画面データとの比較、識別により、見本の画面構成要素をマスキング対象とするかどうかを自動的に判定するため、すべて人が指定する必要がなくなり、手間が削減される。
 本実施形態のユースケース(β)によれば、操作ログ中の画面データ同士の比較、識別により、各画面構成要素をマスキング対象とするかどうかを自動的に判定するため、見本とする画面データの選択や、表示値のマスキングが必要な画面構成要素の指定を、すべて人が行う必要がなくなり、手間が削減される。
 なお、いずれの場合においても、本実施形態では、実際の端末作業やその自動実行を通じて取得された、複数の同等の画面データにおける、同等の画面構成要素の表示値のバリエーションを調べるため、限られた候補値しかとりえないのか、任意の値をとりうるのかを、画面構成要素の種類によらず、端末内で動作するプログラムの利用実態や挙動に即して判定できる。
 また、本実施形態では画面データ同士の比較、識別が必要となるが、画面構成要素の属性値として、実用上は最低限、画面構成要素の種類が利用できればよいため、それ以外の属性値の変動の影響を受けない。また、画面構造が完全に一致するかどうかではなく、対応付け方法の評価が最良となる共通部分構造を求め、それを所定の閾値と比較することにより判定するため、画面構造の変動も許容できる。
 不変属性が、画面構成要素の種類等に限定され、画面構成要素やその祖先の属性あるいは複数の属性の組合せを用いても、画面内で各画面構成要素を一意に識別できない場合であっても、本実施形態では、より広く、祖先-子孫の関係にはない画面構成要素についても、同じ属性値をもったものが、同じ関係性となっているかどうかを考慮するため、識別できる場合が多くなる。
 画面構造は、画面の大きさや各画面構成要素の表示内容の多寡によって変化しないため、二次元平面上での配置が変化しても、本実施形態ではその影響を受けない。
 ユースケース(β)で、画面データの中から選択した見本画面データを用いてマスキング対象あるいはマスキング対象外の画面構成要素を指定する場合には、従来の方法によっては、その画面構成要素の同等性の判定条件を人が作成する必要があったが、本実施形態では必ずしもその必要がなくなる。
(マスキング装置の構成)
 図7は、マスキング装置の構成例(ユースケース(α))を示す図である。また、図8は、マスキング装置の構成例(ユースケース(β))を示す図である。図7に示すように、マスキング装置10は、端末作業の自動化および支援を行う支援装置20と接続されている。また、マスキング装置10は、支援装置20の一部の機能部として実現されてもよい。また、支援装置20の機能部のうち一部または全部がマスキング装置10に備えられていてもよい。例えば、支援装置20の処理対象画面データ蓄積部204および見本画面データ保持部201がマスキング装置10に備えられていてもよい。また、例えば、画面属性比較規則保持部202および画面構成要素属性比較規則保持部203がマスキング装置10に備えられていてもよい。
 図7に示すように、支援装置20は、見本画面データ保持部201、画面属性比較規則保持部202、画面構成要素属性比較規則保持部203および処理対象画面データ蓄積部204を有する。
 マスキング装置10は、ユースケース(α)における動作を実現するための構成を持つ。 図7に示すように、マスキング装置10は、識別部101、マスキング要否判定対象画面データ列挙部102、画面構成要素表示値列挙部103、マスキング要否判定部104、修正部105、識別結果保持部106、マスキング要否判定対象画面データ列挙結果保持部107、画面構成要素表示値列挙結果保持部108、マスキング要否判定結果保持部109、マスキング実行部110を有する。
 また、マスキング装置10aは、ユースケース(β)における動作を実現するための構成を持つ。図8に示すように、マスキング装置10aは、操作ログ蓄積部101a、処理対象画面データ蓄積部102a、見本画面データ保持部103a、画面属性比較規則保持部104a、画面構成要素属性比較規則保持部105a、識別部106a、画面データ分類部107a、マスキング要否判定対象画面データ列挙部108a、画面構成要素表示値列挙部109a、マスキング要否判定部110a、修正部111a、識別結果保持部112a、画面データ分類結果保持部113a、マスキング要否判定対象画面データ列挙結果保持部114a、画面構成要素表示値列挙結果保持部115a、マスキング要否判定結果保持部116a、マスキング実行部117aを有する。
 図9は、見本画面データ保持部で保持されるデータの例を示す図である。図9に示すように、見本画面データ保持部201および見本画面データ保持部103aは画面データの集合を保持する。
 図10は、処理対象画面データ蓄積部で保持されるデータの例を示す図である。図10に示すように、処理対象画面データ蓄積部204および処理対象画面データ蓄積部102aは画面データの集合を保持する。
 図11は、識別結果保持部で保持されるデータの例(ユースケース(α))を示す図である。図11に示すように、識別結果保持部106には、処理対象画面と見本画面との組合せのそれぞれが「同等」であるか「非同等」であるかが保持される。また、「同等」である組合せについては、対応付けられた画面構成要素の数等が追加で保持される。
 図12は、識別結果保持部で保持されるデータの例(ユースケース(β))を示す図である。図12に示すように、識別結果保持部112aには、処理対象画面と見本画面または他の処理対象画面との組合せのそれぞれが「同等」であるか「非同等」であるかが保持される。また、「同等」である組合せについては、対応付けられた画面構成要素の数等が追加で保持される。
 図13は、マスキング要否判定対象画面データ列挙結果保持部で保持されるデータの例(ユースケース(α))を示す図である。図13に示すように、マスキング要否判定対象画面データ列挙結果保持部107は、マスキング状態が「未実施」の見本画面の画面データIDを保持する。
 図14は、マスキング要否判定対象画面データ列挙結果保持部で保持されるデータの例(ユースケース(β))を示す図である。図14に示すように、各オプションの適用に応じた画面データIDを保持する。ここで、オプションは、各ユースケースに含まれる処理のうち任意で適用可能な処理である。
 オプション(α)1は、修正部105が有効化されるオプションである。また、オプション(α)2-1は、画面属性比較規則保持部202が有効化されるオプションである。また、オプション(α)3は、画面構成要素属性比較規則保持部203が有効化されるオプションである。
 オプション(β)1は、画面データ分類部107a、画面データ分類結果保持部113aが有効化されるオプションである。図14に示すように、オプション(β)1不適用時は、マスキング要否判定対象画面データ列挙結果保持部114aは、マスキング状態が「未実施」の処理対象画面の画面データIDを保持する。一方、オプション(β)1適用時は、マスキング要否判定対象画面データ列挙結果保持部114aは、マスキング状態が「未実施」の処理対象画面データのうち、分類の結果、各グループの代表となった画面データの画面データIDを保持する。
 また、オプション(β)1-1-1適用時は、マスキング要否判定対象画面データ列挙結果保持部114aは、マスキング状態が「未実施」の処理対象画面データのうち、見本画面データと同等ではなく、かつ分類の結果、各グループの代表となった画面データの画面データIDを保持する。なお、オプション(β)1-1-1は、見本画面データ保持部103aが有効化されるオプションである。
 ここで、オプション(β)1-1は、修正部111aが有効化されるオプションである。また、オプション(β)2-1は、画面属性比較規則保持部104aが有効化されるオプションである。また、オプション(β)3は、画面構成要素属性比較規則保持部105aが有効化されるオプションである。
 図15は、画面構成要素表示値列挙結果保持部で保持されるデータの例を示す図である。図15に示すように、画面構成要素表示値列挙結果保持部108および画面構成要素表示値列挙結果保持部115aは、各画面の構成要素ごとの表示値列挙の要否、同等の画面構成要素の数、同等画面構成要素表示値集合を保持する。なお、画面構成要素表示値列挙結果保持部108は、「画面データID」として、見本画面の画面データIDを保持する。一方、画面構成要素表示値列挙結果保持部115aは、「画面データID」として、処理対象画面の画面データIDを保持する。
 図16は、マスキング要否判定結果保持部で保持されるデータの例を示す図である。図16の例は、画面構成要素表示値列挙結果に基づき、以下の条件のもと、要否を判定した結果である。
 同等画面構成要素数の閾値:6
 表示値のバリエーション数の閾値:5
 図17は、画面属性比較規則保持部で保持されるデータの例を示す図である。図17に示すように、画面属性比較規則保持部202および画面属性比較規則保持部104aは、画面の属性ごとの比較規則を保持する。
 図18は、画面構成要素属性比較規則保持部で保持されるデータの例を示す図である。図18に示すように、画面構成要素属性比較規則保持部203および画面構成要素属性比較規則保持部105aは、画面および画面構成要素の属性ごとの比較規則を保持する。
 操作ログ蓄積部101aは、端末作業者が端末で画面に対する操作等を行った際に取得された操作ログを蓄積する。各操作には、画面データが少なくとも1個含まれるものとする。各操作ログには、画面データに加え、操作対象の画面構成要素を識別するための情報や、キーボード入力、ボタンクリック、ウィンドウ状態切り替え、等の操作内容を表すデータが含まれる場合もある。本発明では画面データのみを対象とし、その内容は処理対象画面データ蓄積部で説明済みのため、操作ログ蓄積部101aで保持するデータの例の図示は省略する。
 図19は、画面データ分類結果保持部で保持されるデータの例を示す図である。図19に示すように、画面データ分類結果保持部113aは、画面データごとの分類先グループと、分類先グループごとに代表となる画面データ(のID)を保持する。
 識別部101は、画面データ同士を比較し、同等かどうかを判定し、結果を識別結果保持部106に保存する。また、識別部101は、マスキング要否判定対象画面データ列挙部102を呼び出す。同様に、識別部106aは、画面データ同士を比較し、同等かどうかを判定し、結果を識別結果保持部112aに保存する。また、識別部106aは、マスキング要否判定対象画面データ列挙部108aを呼び出す。
 ユースケース(α)では、比較する画面データの一方は、見本画面データ保持部で保持されている見本画面データとする。識別部101は、画面の同等性の判定にあたり、画面の属性を比較してもよい(オプション(α)2の適用時。)。さらに、識別部101は、画面属性比較規則保持部202で保持されている比較規則を用いてもよい(オプション(α)2-1の適用時。)。識別部101は、画面の同等性判定の一部として行われる、画面構成要素の対応付け可否の判定にあたり、画面構成要素属性比較規則保持部203で保持されている比較規則を用いてもよい(オプション(α)3の適用時。)。
 ユースケース(β)では、比較する画面データは、ともに処理対象画面データ蓄積部で蓄積されている画面データとする。識別部106aは、画面の同等性の判定にあたり、画面の属性を比較してもよい(オプション(β)2の適用時。)。さらに、識別部106aは、画面属性比較規則保持部104aで保持されている比較規則を用いてもよい(オプション(β)2-1の適用時。)。
 識別部106aは、画面の同等性判定の一部として行われる、画面構成要素の対応付け可否の判定にあたり、画面構成要素属性比較規則保持部105aで保持されている比較規則を用いてもよい(オプション(β)3の適用時。)。
 識別部106aは、マスキング要否判定対象画面データ列挙部108aを呼び出す代わりに、画面データ分類部107aを呼び出してもよい(オプション(β)1の適用時。)。見本画面データ保持部103aに見本画面データが存在する場合には、比較する画面データの一方を、見本画面データ保持部で保持されている見本画面データとしてもよい(オプション(β)1-1-1の適用時。)。
 マスキング要否判定対象画面データ列挙部102は、以降の画面構成要素表示値列挙部103、マスキング要否判定部104における処理で、マスキング要否判定の対象とする画面データを、以下により列挙し、結果を、マスキング要否判定対象画面データ列挙結果保持部107に保存する。マスキング要否判定対象画面データ列挙部102は、画面構成要素表示値列挙部103を呼び出す。
 同様に、マスキング要否判定対象画面データ列挙部108aは、以降の画面構成要素表示値列挙部109a、マスキング要否判定部110aにおける処理で、マスキング要否判定の対象とする画面データを、以下により列挙し、結果を、マスキング要否判定対象画面データ列挙結果保持部114aに保存する。マスキング要否判定対象画面データ列挙部108aは、画面構成要素表示値列挙部109aを呼び出す。
 ユースケース(α)では、マスキング要否判定対象の画面データは、見本画面データ保持部で保持されている、マスキング状態が「未実施」の見本画面データとする。
 ユースケース(β)では、マスキング要否判定対象の画面データは、処理対象画面データ蓄積部に保持されている、マスキング状態が「未実施」の画面データとする。また、画面データ分類結果保持部に、分類結果が存在する場合には、マスキング要否判定対象画面データ列挙部108aは、マスキング要否判定対象の画面データを、分類結果において、各グループの代表となっているもののみとする(オプション(β)1の適用時。)。さらに、マスキング要否判定対象画面データ列挙部108aは、識別部106aにより、いずれかの見本画面データと同等と判定された画面データは、マスキング要否判定対象から除外する(オプション(β)1-1-1の適用時。)。
 画面構成要素表示値列挙部103は、マスキング要否判定対象の各画面データについて、画面構成要素の識別結果保持部106で保持されている識別結果に基づき、同等と判定された画面データをすべて取得する。画面構成要素表示値列挙部103は、マスキング要否判定対象の各画面データ中の各画面構成要素について、他の同等な画面データ中に存在する同等の画面構成要素の数や、表示値のバリエーションを求め、結果を、画面構成要素表示値列挙結果保持部108に保存する。また、画面構成要素表示値列挙部103は、マスキング要否判定部104を呼び出す。
 画面構成要素表示値列挙部109aは、マスキング要否判定対象の各画面データについて、画面構成要素の識別結果保持部112aで保持されている識別結果に基づき、同等と判定された画面データをすべて取得する。画面構成要素表示値列挙部109aは、マスキング要否判定対象の各画面データ中の各画面構成要素について、他の同等な画面データ中に存在する同等の画面構成要素の数や、表示値のバリエーションを求め、結果を、画面構成要素表示値列挙結果保持部115aに保存する。また、画面構成要素表示値列挙部109aは、マスキング要否判定部110aを呼び出す。
 なお、リストボックス等、画面構成要素の種類から、表示値が限られた候補値しかとりえないことが明らかな画面構成要素については、同等の画面構成要素の数や表示値のバリエーションを求める処理を省略してもよい(オプション(α)4、オプション(β)4の適用時。)。
 マスキング要否判定部104は、マスキング要否判定対象の各画面データの各画面構成要素について、画面構成要素表示値列挙結果保持部108で保持されている列挙結果を、所定の閾値と比較することで、マスキング対象とするかどうかを判定し、結果を、マスキング要否判定結果保持部109に保存する。また、マスキング要否判定部104は、マスキング実行部110を呼び出す。
 なお、マスキング要否判定部104は、マスキング実行部110を呼び出す代わりに、修正部105を呼び出してもよい(オプション(α)1の適用時。)。また、リストボックス等、画面構成要素の種類から、表示値が限られた候補値しかとりえないことが明らかな画面構成要素については、列挙結果を、所定の閾値と比較することなく、マスキング対象外と判定してもよい(オプション(α)4の適用時。)。
 マスキング要否判定部110aは、マスキング要否判定対象の各画面データの各画面構成要素について、画面構成要素表示値列挙結果保持部115aで保持されている列挙結果を、所定の閾値と比較することで、マスキング対象とするかどうかを判定し、結果を、マスキング要否判定結果保持部116aに保存する。また、マスキング要否判定部110aは、マスキング実行部117aを呼び出す。
 なお、マスキング要否判定部110aは、マスキング実行部117aを呼び出す代わりに、修正部111aを呼び出してもよい(オプション(β)1の適用時。)。また、リストボックス等、画面構成要素の種類から、表示値が限られた候補値しかとりえないことが明らかな画面構成要素については、列挙結果を、所定の閾値と比較することなく、マスキング対象外と判定してもよい(オプション(β)4の適用時。)。
 マスキング実行部110は、マスキング対象の各画面データの各画面構成要素について、マスキング要否判定結果保持部109で保持されている判定結果に基づき、マスキング要否が「要」であれば、その表示値をマスキングする。
 マスキング実行部117aは、マスキング対象の各画面データの各画面構成要素について、マスキング要否判定結果保持部116aで保持されている判定結果に基づき、マスキング要否が「要」であれば、その表示値をマスキングする。
 マスキングの結果は、ユースケース(α)では見本画面データ保持部201に、ユースケース(β)では処理対象画面データ蓄積部102aに反映し、マスキング状態を「実施済み」に変更する。
 ユースケース(α)では、マスキング対象の画面データは、見本画面データ保持部201で保持されている、マスキング状態が「未実施」の見本画面データとする。ユースケース(β)では、マスキング対象の画面データは、処理対象画面データ蓄積部102aに保持されている、マスキング状態が「未実施」の画面データとする。
 マスキング実行部117aは、マスキング要否判定結果保持部116aに、マスキング対象の画面データ自体のマスキング要否判定結果がない場合には、同じグループの代表の画面データのマスキング要否判定結果を用いる。つまり、マスキング実行部117aは、マスキング対象の画面データについて、画面データ分類結果保持部113aで保持されている分類結果に基づき、同じグループの代表の画面データを特定する。
 その上で、マスキング実行部117aは、マスキング対象の画面データ中の各画面構成要素について、画面・画面構成要素の識別結果保持部112aで保持されている識別結果に基づき、同じグループの代表の画面データ中の同等の画面構成要素を特定する。特定できなければ、マスキング実行部117aは、その表示値をマスキングする。特定できた場合には、マスキング実行部117aは、マスキング要否判定結果保持部116aで保持されている判定結果において、代表の画面データのマスキング要否判定結果を調べ、同等の画面構成要素のマスキング要否が「要」であれば、その表示値をマスキングする(オプション(β)1の適用時。)。
 さらに、マスキング対象の画面データが、識別部106aにより、いずれかの見本画面データと同等と判定されている場合には、マスキング実行部117aは、各画面構成要素について、識別結果保持部112aで保持されている識別結果に基づき、見本の同等な画面構成要素を特定する。特定できなければ、マスキング実行部117aは、その表示値をマスキングする。特定できた場合には、マスキング実行部117aは、見本画面データに基づき、見本の同等な画面構成要素がマスキング対象外かどうかを調べ、マスキング対象外でなければ、その表示値をマスキングする(オプション(β)1-1-1の適用時。)。
 修正部105は、マスキング要否判定結果保持部109で保持されている判定結果を、人が容易に理解しやすい形態で表示する。同様に、修正部111aは、マスキング要否判定結果保持部116aで保持されている判定結果を、人が容易に理解しやすい形態で表示する。表示形態としては、例えば図2のように、マスキング要否判定対象の各画面データの画像を表示し、その上で、マスキング対象の画面構成要素の領域を矩形で囲み、図示する、といった方法が考えられる。
 なお、マスキング要否判定対象の各画面データは、ユースケース(α)では見本画面データ保持部201から、ユースケース(β)では処理対象画面データ蓄積部102aから取得する。また、人の操作により、マスキング要否判定部での判定に使用される閾値を変更し、マスキング要否判定部104またはマスキング要否判定部110aを呼び出すことでマスキング要否の判定をやり直し、変更後の判定結果を再度表示してもよい。あるいは、人の操作により、画面構成要素のマスキング要否が個別に変更され、変更結果は、マスキング要否判定結果保持部109マスキング要否判定結果保持部116aに反映されてもよい。
 さらに、マスキング要否判定部110aは、ユースケース(β)において、マスキング要否判定対象の各画面データと、その画面データに対するマスキング要否判定結果を、見本画面データ保持部103aに保存してもよい(オプション(β)1-1-1の適用時。)。
 画面比較規則を人が指定できるようにしてもよい。指定内容は、画面属性比較規則保持部104aに保存される(オプション(β)2-1の適用時。)。また、画面構成要素属性比較規則を人が指定できるようにしてもよい。指定内容は、画面構成要素属性値比較規則保持部に保存される(オプション(β)3の適用時。)。また、画面構造比較個別設定を人が指定できるようにしてもよい。指定内容は、見本画面データ保持部103aで保持されている該当の画面データに反映される(オプション(β)1-1-1-1の適用時。)。
 画面データ分類部107aは、識別結果保持部112aで保持されている識別結果に基づき、同等の画面データが同じグループに分類され、かつ、グループ数がなるべく少なくなるように、画面データをグループに分類する。また、画面データ分類部107aは、各グループにつき、代表とする画面データを1個ずつ選ぶ。さらに、画面データ分類部107aは、マスキング要否判定対象画面データ列挙部108aを呼び出す。画面データ分類部107aは、識別部106aにより、いずれかの見本画面データと同等と判定された画面データは、分類対象から除外する(オプション(β)1-1-1の適用時。)。
 これまで説明したように、マスキング装置の各処理部は以下のような特徴を持つ。識別部は、基準となる第1の画面データ、および処理対象の1個以上の第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する。識別部101および識別部106aが識別部に相当する。例えば、見本の画面データが第1の画面データに相当し、処理対象の画面データが第2の画面データに相当する場合がある。また、例えば、処理対象の画面データが第1の画面データおよび第2の画面データの両方に相当する場合がある。
 特定部は、識別した画面と画面構成要素を基に、第2の画面データのうち、第1の画面データと同等である第3の画面データを特定する。画面構成要素表示値列挙部103および画面構成要素表示値列挙部109aが、が特定部に相当する。
 判定部は、第3の画面データを基に、第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する。例えば、判定部は、第1の画面データに含まれる画面構成要素のうちの、第3の画面データに含まれる画面構成要素と同等である画面構成要素の数、および、第3の画面データに含まれる画面構成要素の表示値に基づく、第1の画面データに含まれる画面構成要素の表示値のバリエーションの数を基に、第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する。マスキング要否判定部104およびマスキング要否判定部110aが、判定部に相当する。
 また、識別部は、見本として用意された第1の画面データ、および処理対象の1個以上の第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する。また、識別部は、操作ログに含まれる第1の画面データ、および操作ログに含まれる画面データのうち、第1の画面データと異なる第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する。これにより、本実施形態は、ユースケース(α)とユースケース(β)の両方に対応する。
 画面データ分類部107aは、操作ログに含まれる画面データを、複数のグループに分類し、グループのそれぞれについて代表の画面データを選択する。このとき、特定部および判定部は、分類結果を用いて処理を行うことができる。また、画面構成要素表示値列挙部109aが特定部に相当する。これにより、代表以外の画面データに対しては、その各画面構成要素について、同じグループに含まれる他の画面データ中の同等の画面構成要素を調べることなく、マスキングまでを行うことができ、計算量が低減される。
 判定部は、第3の画面データが、マスキングの要否の判定結果が保存済みである画面データである場合、当該保存済みの判定結果を基に、第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する。このように、既存のマスキング要否の判定結果を再利用することで、マスキング要否の判定を省略することができる。
 マスキング実行部117aは、判定部によってマスキングが必要と判定された画面構成要素に対し、マスキングを実行する。これにより、マスキング装置は、マスキング対象の特定からマスキングまで一貫して自動的に行うことができる。
 各処理のフローを説明する。以降の説明では処理の主体をマスキング装置として説明する。実際にはユースケース(α)に関する処理はマスキング装置10が実行し、ユースケース(β)に関する処理はマスキング装置10aが実行する。また、ユースケースおよびオプションを指定しない処理は、マスキング装置10およびマスキング装置10aの両方が共通して実行可能であってもよい。また、その他の処理部についても適宜符号を省略する。なお、識別結果保持部は、識別結果保持部106または識別結果保持部112aに相当する。
 図20は、マスキング処理の全体フロー(ユースケース(α))を示す図である。図20に示すように、マスキング装置は、見本画面データ保持部で保持されている各見本画面データと、処理対象画面データ蓄積部に蓄積されている各画面データの各組合せに対し、画面と画面構成要素を識別する(ステップS101)。マスキング装置は、マスキング要否判定対象画面データを列挙する(ステップS102)。
 マスキング装置は、マスキング要否判定対象の各画面データの各画面構成要素に対し、同等の画面構成要素を調べ、表示値を列挙する(ステップS103)。マスキング装置は、マスキング要否判定対象の各画面データの各画面構成要素に対し、表示値の列挙結果に基づき、マスキング要否を判定する(ステップS104)。マスキング装置は、マスキング要否判定結果を表示し、要否判定に使用される閾値や、要否の変更を、要否判定結果に反映する[オプション(α)1](ステップS105)。
 要否判定に使用される閾値が変更された場合(ステップS106、Yes)、マスキング装置は、ステップS104に戻る。要否判定に使用される閾値が変更されていない場合(ステップS106、No)、マスキング装置は、ステップS107へ進む。マスキング装置は、マスキング要否判定結果が「要」である画面構成要素をマスキングする(ステップS107)。
 ステップS105により、処理対象画面データ蓄積部に蓄積されている画面データとの比較により、見本画面データ保持部で保持されている各見本画面データ中の各画面構成要素のマスキング要否を自動で判定した後、実際にマスキングを行う前に、人が確認し、マスキング要否を変更できるようにしてもよい(オプション(α)1の適用時。)。
 図21は、マスキング処理の全体フロー(ユースケース(β))を示す図である。図21に示すように、マスキング装置は、見本画面データ保持部で保持されている各見本画面データと、処理対象画面データ蓄積部に蓄積されている各画面データの各組合せに対し、画面と画面構成要素を識別する[オプション(β)1-1-1](ステップS201)。
 マスキング装置は、処理対象画面データ蓄積部に蓄積されている画面データのうち、見本画面データ保持部で保持されているいずれの見本画面データとも同等と判定されなかったもの同士の各組合せに対し、画面と画面構成要素を識別する(ステップS202)。
 マスキング装置は、処理対象画面データ蓄積部に蓄積されている画面データのうち、見本画面データ保持部で保持されているいずれの見本画面データとも同等と判定されなかったものを分類する[オプション(β)1](ステップS203)。
 マスキング装置は、マスキング要否判定対象画面データを列挙する(ステップS204)。マスキング装置は、マスキング要否判定対象の各画面データの各画面構成要素に対し、同等の画面構成要素を調べ、表示値を列挙する(ステップS205)。マスキング装置は、マスキング要否判定対象の各画面データの各画面構成要素に対し、表示値の列挙結果に基づき、マスキング要否を判定する(ステップS206)。
 マスキング装置は、マスキング要否判定結果を表示し、要否判定に使用される閾値や、要否の変更を、要否判定結果に反映する[オプション(β)1-1](ステップS207)。
 要否判定に使用される閾値が変更された場合(ステップS208、Yes)、マスキング装置は、ステップS206に戻る。要否判定に使用される閾値が変更されていない場合(ステップS208、No)、マスキング装置は、ステップS209へ進む。マスキング装置は、マスキング要否判定結果が「要」である画面構成要素をマスキングする(ステップS209)。
 ステップS203により、処理対象画面データ蓄積部に蓄積されている画面データ同士の比較により、画面が同等かどうかを判定し、同等の画面構成要素を対応付けた後、画面データを分類し、各グループの代表となる画面データを選ぶことにより、マスキング要否判定の対象とする画面データを、代表の画面データのみに限定することで、画面構成要素の表示値のバリエーションを調べ、マスキングの要否を判定するのに要する計算量を低減してもよい(オプション(β)1の適用時。)。
 また、ステップS207により、画面データ中の各画面構成要素のマスキング要否を自動で判定した後、実際にマスキングを行う前に、各グループの代表の画面データを用いて、人がマスキング要否を確認し、変更できるようにしてもよい(オプション(β)1-1の適用時。)。
 さらに、ステップS201により、操作ログを継続して収集し、定期的にあの時点までに新たに収集された操作ログをマスキングする場合等、マスキングが繰り返し行われる場合には、以前にマスキングした際に得られた、各グループの代表の画面データや、そのマスキング要否判定結果を再利用することで、人によるマスキング要否の確認や変更の手間や、処理に要する計算量の低減が可能となる。このため、各グループの代表の画面データを、そのマスキング要否判定結果とともに、見本画面データとして登録するようにしてもよい(オプション(β)1-1-1の適用時。)。その場合、新たに収集された操作ログをマスキングする際には、まずは登録されている見本画面データの中に同等なものが存在するかどうかを調べる。同等なものが存在する場合には、各画面構成要素と同等の見本の画面構成要素がマスキング対象外かどうかに応じて、表示値のマスキングを行う。同等なものが存在しない場合には、その他の同等な見本画面データが存在しない画面データと一緒に、初回のマスキング時同様、分類やマスキング要否の判定等を行った上で、表示値のマスキングを行う。
 図22は、画面および画面構成要素を識別する処理の全体フロー(ユースケース(α))を示す図である。マスキング装置は、見本画面データ保持部に、マスキング状態が「未実施」で識別未実施の見本画面データが存在する場合(ステップS301、Yes)、ステップS302へ進む。存在しない場合(ステップS301、No)、マスキング装置は処理を終了する。
 マスキング装置は、分岐条件に該当する見本画面データを1個選択する(ステップS302)。処理対象画面データ蓄積部に、選択された見本画面データとの識別が未実施の画面データが存在する場合(ステップS303、Yes)、マスキング装置はステップS305へ進む。存在しない場合、マスキング装置は、ステップS304へ進む。
 マスキング装置は、選択された見本画面データを識別実施済みとし(ステップS304)、ステップS301に戻る。
 マスキング装置は、分岐条件に該当する処理対象画面データ1個選択する(ステップS305)。マスキング装置は、選択された見本画面データの画面の属性と、処理対象画面データの画面の属性を比較する[オプション(α)2](ステップS306)。
 画面の属性の比較結果が「一致」である場合(ステップS307、Yes)、マスキング装置は、ステップS308へ進む。画面の属性の比較結果が「一致」でない場合(ステップS307、No)、マスキング装置は、ステップS309へ進む。
 マスキング装置は、選択された見本画面データの画面構造と、処理対象画面データの画面構造を比較する(ステップS308)。マスキング装置は、識別結果保持部に、識別結果データを保存し(ステップS309)、ステップS303に戻る。
 図23は、画面および画面構成要素を識別する処理の全体フロー(ユースケース(β))を示す図である。図23に示すように、処理対象画面データ蓄積部に、マスキング状態が「未実施」で識別未実施の処理対象画面データが存在する場合(ステップS401、Yes)、マスキング装置は、ステップS401へ進む。存在しない場合(ステップS401、No)、マスキング装置は処理を終了する。
 マスキング装置は、分岐条件に該当する処理対象画面データを1個選択する(ステップS402)。マスキング装置は、見本画面データ保持部に、選択された処理対象画面データとの識別が未実施の見本画面データが存在する場合[オプション(β)1-1-1](ステップS403、Yes)、ステップS404へ進む。存在しない場合(ステップS403、No)、マスキング装置はステップS411へ進む。
 マスキング装置は、分岐条件に該当する見本画面データを1個選択する(ステップS404)。マスキング装置は、選択された見本画面データの画面の属性と、処理対象画面データの画面の属性を比較する[オプション(β)2](ステップS405)。
 画面の属性の比較結果が「一致」である場合(ステップS406、Yes)、マスキング装置はステップS407へ進む。画面の属性の比較結果が「一致」でない場合(ステップS406、No)、マスキング装置はステップS408へ進む。
 マスキング装置は、選択された見本画面データの画面構造と、処理対象画面データの画面構造を比較する(ステップS407)。マスキング装置は、識別結果保持部に、識別結果データを保存する(ステップS408)。マスキング装置は、選択された見本画面データを、選択された処理対象画面データとの識別が実施済みとする(ステップS409)。
 画面構造の比較結果が「同等」である場合、マスキング装置はステップS418へ進む。画面構造の比較結果が「同等」でない場合、マスキング装置はステップS403に戻る。
 処理対象画面データ蓄積部に、マスキング状態が「未実施」で、選択された処理対象画面データとの組合せでの識別が未実施の処理対象画面データが存在する場合(ステップS411、Yes)、マスキング装置はステップS412へ進む。存在しない場合(ステップS411、No)マスキング装置はステップS418へ進む。マスキング装置は、選択された処理対象画面データを識別実施済みとし(ステップS418)、ステップS401に戻る。
 マスキング装置は、分岐条件に該当する処理対象画面データ1個選択する(ステップS412)。マスキング装置は、選択された処理対象画面データ同士の画面の属性を比較する[オプション(β)2](ステップS413)。画面の属性の比較結果が「一致」である場合、マスキング装置はステップS415へ進む。画面の属性の比較結果が「一致」でない場合、マスキング装置はステップS416へ進む。
 マスキング装置は、選択された処理対象画面データの画面構造同士を比較する(ステップS415)。マスキング装置は、識別結果保持部に、識別結果データを保存する(ステップS416)。マスキング装置は、選択された処理対象画面データの組合せでの識別を実施済みとし(ステップS417)、ステップS411に戻る。
 図22と図23について補足する。識別処理は、2個の画面データ同士に対して行う。具体的には、ユースケース(α)では、処理対象画面データ蓄積部に蓄積されている各画面データと、見本画面データ保持部で保持されているもののうち、マスキング状態が「未実施」の各見本画面データとのすべての組合せに対し、識別処理を行う。
 ユースケース(β)のオプション(β)1-1-1の適用時には、処理対象画面データ蓄積部に蓄積されている、マスキング状態が「未実施」の各画面データと、見本画面データ保持部で保持されている各見本画面データmとのすべての組合せに対し、識別処理を行う。
 ユースケース(β)のオプション(β)1-1-1の不適用時を含め、いずれの見本画面データとも同等と判定されなかった場合には、処理対象画面データ蓄積部に蓄積されている、マスキング状態が「未実施」の各画面データと、処理対象画面データ蓄積部に蓄積されている、マスキング状態が「未実施」の他の各画面データとのすべての組合せに対し、識別処理を行う。
 以下の説明においては、前者の画面データを、「処理対象画面データn」、後者の画面データを「見本画面データm」と表記する。なお、見本画面データmは、ユースケース(α)の場合、またはユースケース(β)で、見本画面データ保持部で保持されたものではない場合には、その画面データに固有の画面比較規則や画面構造比較個別設定、あるいは画面構成要素比較規則は存在しない。
 画面の属性を比較する場合(オプション(α)2またはオプション(β)2の適用時)は、以下のいずれかの方法により一致、不一致を判定する((2)は、オプション(α)2-1またはオプション(β)2-1の適用時。)。
(1)画面の属性のうち、クラス名を表す属性が一致する場合には「一致」、そうでない場合には「不一致」と判定する。
(2)画面の各属性について、画面属性比較規則保持部で保持する比較規則の中から、適用する比較規則を決定する。見本画面の属性と、処理対象画面の属性の値を比較し、決定された比較規則に応じて表1のように一致、不一致を判定する。すべての属性について、「一致」と判定と判定された場合には、画面の属性が「一致」、そうでない場合には、「不一致」と判定する。
Figure JPOXMLDOC01-appb-T000001
 なお、適用する比較規則は、例えば以下の優先順位で決定する。
 優先順位1:「見本画面データID」「属性名」のいずれも「(任意)」ではなく、比較対象の見本画面データmのID、属性名と一致する比較規則(ユースケース(β)の場合には、オプション(β)1-1-1の適用時。)。
 優先順位2:「見本画面データID」が「(任意)」ではなく、比較対象の見本画面データmのIDと一致する比較規則(ユースケース(β)の場合には、オプション(β)1-1-1の適用時。)。
 優先順位3:「属性名」が「(任意)」ではなく、比較対象の属性名と一致する比較規則。
 優先順位4:優先順位1~3以外で、比較対象の見本画面データmのID、属性名が該当する比較規則。
 図24は、画面構造を比較する処理のフローを示す図である。図24に示すように、マスキング装置は、選択された2個の画面構造に対し、評価の最も良い対応付け方法^f(fの直上に^)を求める(ステップS501)。そして、マスキング装置は、対応付け方法に基づき、画面構造の同等性を判定する(ステップS502)。
 画面構造は、各画面構成要素を頂点、一部の画面構成要素間に存在する直接的な関係性を辺とした、グラフ構造または木構造として表現される。以下の説明では、見本の画面構造における頂点の集合をV、辺の集合をE(⊆V×V)、処理対象の画面構造における頂点の集合をV、辺の集合をE(⊆V×V)と表記することにする。なお、辺に向きがある場合には、それらをEやEの別の元として区別するものとする。また、画面構成要素と頂点は、説明上、区別しない。見本の画面構造、処理対象の画面構造は、それぞれをS=(V,E)、S=(V,E)と表記する。
 見本と処理対象の画面構造の比較では、見本の各画面構成要素に相当する頂点v(∈V)を、処理対象の最大1個の画面構成要素に相当する頂点u(∈V)に、重複しないよう、対応付ける。この頂点同士の対応付け方法は、(1-1)式および(1-2)式に示す単射な部分写像(または全域写像)に相当する。処理対象のいずれかの画面構成要素に対応付けられる、見本の画面構成要素の集合は、Def(fm,n)と表される。また、見本の画面構成要素に対応付けられる、処理対象の画面構成要素の集合は、Img(fm,n)と表される。なお、Def(fm,n)=Img(fn,m)、Def(fn,m)=Img(fm,n)となる。
Figure JPOXMLDOC01-appb-M000002
 画面構造を比較し、共通部分構造を求める場合には、これらの対応付け方法のうち、対応付けられる各頂点の組合せについて、辺の有無が、対応付けの前後で維持される、つまり、(2-1)式および(2-2)式を満たすものに限定する。
Figure JPOXMLDOC01-appb-M000003
 画面構造が有向順序木の場合には、例えば参考文献1に記載の、「有向順序木に対するアルゴリズム」を用いることで、見本の画面構成要素数と処理対象の画面要素数の積の計算オーダで、Def(fm,n)に含まれる画面構成要素の数|Def(fm,n)|と、Def(fn,m)に含まれる画面構成要素の数|Def(fn,m)|が最大となる対応付け方法^fm,nと^fn,mを求めることができる。
 参考文献1:「二つの木の最大共通部分グラフを求めるアルゴリズム」、1994年、増田澄夫他、電子情報通信学会論文誌. A, 基礎・境界 77(3), 460-470, 1994-03-25)
 なお、引用の参考文献1では、他の頂点との関係性を無視した各頂点単体では、すべての頂点を同等なものとして扱っているが、本実施形態においては、画面構成要素は、少なくとも種類を表す属性をもつものとし、異なる種類の画面構成要素は同等にはなり得ない。そのため、同等となり得る画面構成要素同士に対してのみ対応付け可能、という制約条件の下、対応付け方法を求める。
 画面構成要素の対応付け可否は、以下のいずれかの方法により判定する。((2)は、オプション(β)3の適用時)
(1)画面構成要素の属性のうち、種類を表す属性の値が一致する場合には「対応付け可」、そうでない場合には「対応付け不可」と判定する。
(2)画面構成要素の各属性について、画面構成要素属性比較規則保持部で保持する比較規則の中から、適用する比較規則を決定する。見本の画面構成要素の属性と、処理対象の画面構成要素の属性の値を比較し、決定された比較規則に応じて表1のように一致、不一致を判定する。すべての属性について、「一致」と判定と判定された場合には、画面構成要素同士を「対応付け可」、そうでない場合には、画面構成要素同士を「対応付け不可」と判定する。
 なお、適用する比較規則は、例えば以下の優先順位で決定する。ただし、「見本画面データID」と「画面構成要素ID」のどちらかだけが「(任意)」ではない比較規則は許容しない。
 優先順位1:「見本画面データID」「画面構成要素ID」「属性名」のいずれも「(任意)」ではなく、比較対象の見本画面データmのID、画面構成要素のID、属性名と一致する比較規則(オプション(β)1-1-1の適用時。)。
 優先順位2:「見本画面データID」「画面構成要素ID」のいずれも「(任意)」ではなく、比較対象の見本画面データmのID、画面構成要素のIDと一致する比較規則(オプション(β)1-1-1の適用時。)。
 優先順位3:「属性名」が「(任意)」ではなく、比較対象の属性名と一致する比較規則。
 優先順位4:優先順位1~3以外で、比較対象の見本画面データmのID、画面構成要素のID、属性名が該当する比較規則。
 また、本実施形態においては、見本の画面構造のルートの画面構成要素は、処理対象の画面構造のルートの画面構成要素にのみ対応付け可能、という制約条件の下、対応付け方法を求める。
 さらに、引用の参考文献1では、部分構造同士の対応付け方法fm,nを、対応付けられた頂点、すなわち、Def(fm,n)に含まれる画面構成要素の数|Def(fm,n)|の大小により評価している。本実施形態においては、同様に、共通部分構造に含まれる画面構成要素の数の大小により評価してもよいし、以下の観点を反映した評価方法を用いてもよい。
 見本の画面構成要素のうち、マスキング対象外の画面構成要素を、他の画面構成要素よりも優先的に、処理対象の画面構成要素と対応付ける。そのため、マスキング対象外の画面構成要素の集合を~V(⊆V)とすると、|Def(fm,n)∩~V|の大小により対応付け方法fm,nを評価する(オプション(β)1-1-1-2の適用時。)。
 なお、対応付け方法の評価方法は、見本の画面構造全体と、処理対象の画面構造全体を対象とした、最終的な対応付け方法についてだけでなく、それを求める過程で取り扱う、任意のV´⊆V、V´⊆Vを頂点集合とするそれぞれの部分構造を対象とした対応付け方法((1-1)式のf、Vをf´、V´に置き換えたもの。)についても同様であり、引用の参考文献1のアルゴリズムを、評価方法のみ置き換えることで、その評価方法において最も良い評価となる対応付け方法^fm,nを求められる。また、評価方法自体は、画面構図がグラフ構造か木構造であるかに依存しない。
 図25は、対応付け方法を評価する処理のフローを示す図である。図25のステップS601およびS604の分岐により、対応付け方法fm,n とfm,n を比較し、ステップS602またはS603の評価結果を得ることができる。
 見本と処理対象の画面構造が同等かどうかは、比較により求めた最良の対応付け方法^fm,nの各評価観点について、それぞれ、所定の閾値と比較することにより判定する。図26は、画面構造の同等性を判定する処理のフローを示す図である。図26のステップS701、S702、S703の分岐により、同等性を評価し、ステップS704またはS705の結果を得ることができる。
 閾値は、すべての見本画面データに対し、共通のものを用いてもよいし、見本画面データごとに定めておいたものを用いてもよい(オプション(α)5、またはオプション(β)1-1-1-1の適用時。)。
 以上、見本と処理対象の画面構造を比較する処理の説明では、比較により、最良の対応付け方法^fm,nを求めた後、見本と処理対象の画面構造の同等性を判定しているが、閾値を下回ることが判明した時点で、比較処理を打ち切り、「非同等」と判定してもよい。
 図27は、マスキング要否判定対象の画面データを列挙する処理の全体フロー(ユースケース(α))を示す図である。図27に示すように、マスキング装置は、見本画面データ保持部に、マスキング状態が「未実施」でマスキング要否判定対象でない見本画面データが存在する場合(ステップS801、Yes)、ステップS802へ進む。存在しない場合(ステップS801、No)、マスキング装置は処理を終了する。マスキング装置は、分岐条件に該当する見本画面データを1個選択する(ステップS802)。マスキング装置は、選択された見本画面データを、マスキング要否判定対象画面データ保持部に保存し(ステップS803)、ステップS801に戻る。
 ユースケース(α)では、マスキング装置は、見本画面データ保持部で保持されている見本画面データのうち、マスキング状態が「未実施」のものすべてを、マスキング要否判定対象とする。
 図28は、マスキング要否判定対象の画面データを列挙する処理の全体フロー(ユースケース(β))を示す図である。画面データ分類結果保持部に分類結果が存在する場合[オプション(β)1](ステップS901、Yes)、マスキング装置はステップS905へ進む。存在しない場合(ステップS901、No)、マスキング装置はステップS902へ進む。
 処理対象画面データ蓄積部に、マスキング状態が「未実施」でマスキング要否判定対象でない画面データが存在する場合(ステップS902、Yes)、マスキング装置は、ステップS903へ進む。存在しない場合(ステップS902、No)、マスキング装置は処理を終了する。
 マスキング装置は、分岐条件に該当する画面データを1個選択する(ステップS903)。マスキング装置は、選択された画面データを、マスキング要否判定対象画面データ保持部に保存し(ステップS904)、ステップS902に戻る。
 画面データ分類結果保持部に、グループの代表で、マスキング要否判定対象ではない画面データが存在する場合(ステップS905、Yes)、マスキング装置はステップS906へ進む。存在しない場合(ステップS905、No)、マスキング装置は処理を終了する。
 マスキング装置は、分岐条件に該当する画面データを1個選択する(ステップS906)。マスキング装置は、選択された画面データを、マスキング要否判定対象画面データ保持部に保存し(ステップS907)、ステップS905に戻る。
 ユースケース(β)では、マスキング装置は、処理対象画面データ蓄積部に蓄積されている画面データのうち、マスキング状態が「未実施」のものすべてを、マスキング要否判定対象とする。ただし、オプション(β)1の適用時で、画面データ分類部による分類の結果、グループの代表として選ばれなかった画面データは、マスキング要否判定対象から除外する。これは、各画面構成要素について、同じグループの代表の画面データ中に同等の画面構成要素が存在するかどうか、存在する場合には、代表の画面データ中の同等の画面構成要素のマスキング要否判定結果が「要」であるかどうか、を調べることで、マスキング要否を決定できるためである。なお、画面データが、分類の結果、グループの代表として選ばれたかどうかは、画面データ分類結果保持部で保持されている分類結果を調べることで判定する。
 それに加え、オプション(β)1-1-1の適用時で、識別部による識別の結果、見本画面データのいずれかと同等であると判定されている画面データも、マスキング要否判定対象から除外する。これは、各画面構成要素について、同等の見本画面データ中に同等の画面構成要素が存在するかどうか、存在する場合には、見本の同等な画面構成要素がマスキング対象外かどうか、を調べることで、マスキング要否を決定できるためである。なお、画面データが見本画面データのいずれかと同等であると判定されているかどうかは、識別結果保持部で保持されている識別結果を調べることで判定する。
 図29は、画面構成要素の表示値を列挙する処理の全体フロー(ユースケース(α))を示す図である。図29に示すように、マスキング要否判定対象画面データ保持部に、表示値列挙済みでない画面データが存在する場合(ステップS1001、Yes)、マスキング装置はステップS1002へ進む。存在しない場合(ステップS1001、No)、マスキング装置は処理を終了する。
 マスキング装置は、処理対象画面データ蓄積部から、分岐条件に該当する画面データを1個選択する(ステップS1002)。識別結果保持部に、選択された画面データとの識別結果が同等で、表示値列挙済みではない識別結果が存在する場合(ステップS1003、Yes)、マスキング装置はステップS1004へ進む。存在しない場合(ステップS1003、No)、マスキング装置はステップS1007へ進む。マスキング装置は、選択された画面データを、表示値列挙済みにし(ステップS1007)、ステップS1001に戻る。
 マスキング装置は、分岐条件に該当する識別結果を1個選択する(ステップS1004)。マスキング装置は、選択された画面データの各画面構成要素について、選択された識別結果に基づき、同等の画面構成要素が存在するかどうかを調べ、存在する場合には、同等画面構成要素数を増加させ、同等画面構成要素表示値集合に表示値を追加し、画面構成要素表示値列挙結果保持部に保存する(ステップS1005)。マスキング装置は、選択された画面データを、表示値列挙済みにし(ステップS1006)、ステップS1003に戻る。
 図30は、画面構成要素の表示値を列挙する処理の全体フロー(ユースケース(β))を示す図である。図30に示すように、マスキング要否判定対象画面データ保持部に、表示値列挙済みでない画面データが存在する場合(ステップS1101、Yes)、マスキング装置はステップS1102へ進む。存在しない場合(ステップS1101、No)、マスキング装置は処理を終了する。
 マスキング装置は、処理対象画面データ蓄積部から、分岐条件に該当する画面データを1個選択する(ステップS1102)。画面データ分類結果保持部に分類結果が存在する場合[オプション(β)1](ステップS1103、Yes)、マスキング装置はステップS1108へ進む。存在しない場合(ステップS1103、No)、マスキング装置はステップS1104へ進む。
 識別結果保持部に、選択された画面データとの識別結果が同等で、表示値列挙済みではない識別結果が存在する場合(ステップS1104、Yes)、マスキング装置はステップS1105へ進む。存在しない場合(ステップS1104、No)、マスキング装置はステップS1112へ進む。ここで、マスキング装置は、選択された画面データを、表示値列挙済みにし(ステップS1112)、ステップS1101に戻る。
 マスキング装置は、分岐条件に該当する識別結果を1個選択する(ステップS1105)。マスキング装置は、選択された画面データの各画面構成要素について、選択された識別結果に基づき、同等の画面構成要素が存在するかどうかを調べ、存在する場合には、同等画面構成要素数を増加させ、同等画面構成要素表示値集合に表示値を追加し、画面構成要素表示値列挙結果保持部に保存する(ステップS1106)。マスキング装置は、選択された画面データを、表示値列挙済みにし(ステップS1107)、ステップS1104に戻る。
 画面データ分類結果保持部に、選択された画面データと同じグループに属する、表示値列挙済みではない識別結果が存在する場合(ステップS1108、Yes)、マスキング装置はステップS1109へ進む。存在しない場合(ステップS1108、No)、マスキング装置はステップS1112へ進む。
 マスキング装置は、分岐条件に該当する画面データを1個選択し、識別結果保持部で保持された、選択された2個の画面データに関する識別結果を選択する(ステップS1109)。マスキング装置は、選択された画面データの各画面構成要素について、選択された識別結果に基づき、同等の画面構成要素が存在するかどうかを調べ、存在する場合には、同等画面構成要素数を増加させ、同等画面構成要素表示値集合に表示値を追加し、画面構成要素表示値列挙結果保持部に保存する(ステップS1110)。マスキング装置は、画面データ分類結果保持部で選択された画面データを、表示値列挙済みにし(ステップS1111)、ステップS1108に戻る。
 図29と図30について補足する。画面構成要素表示値列挙処理では、まず、マスキング要否判定対象の各画面データについて、それと同等の画面データをすべて求める。これは、識別結果保持部で保持されている識別結果を調べることにより、処理対象画面データ蓄積部に蓄積されている画面データの中から、同等のものを取得することにより実現する。
 ただし、ユースケース(β)で、オプション(β)1の適用時には、代わりに、画面データ分類結果保持部で保持されている分類結果を調べ、処理対象画面データ蓄積部に蓄積されている画面データの中から、同じグループに分類されているものを取得することにより実現する。
 次に、マスキング要否判定対象の各画面データの各画面構成要素について、同等の各画面データに、同等の画面構成要素があるかどうかを調べ、存在する場合には、その数(以下、「同等画面構成要素数」と表記)を増加させるとともに、同等の画面構成要素の表示値を、それを重複なく保持する集合(以下、「同等画面構成要素表示値集合」と表記)に追加する。
 ただし、オプション(α)4、オプション(β)4の適用時には、画面構成要素の種類がリストボックス等のように、表示値が限られた候補値しかとりえないことが明らかな画面構成要素については、この処理を省略する。
 図31は、マスキング要否を判定する処理の全体フローを示す図である。
図31に示すように、画面構成要素表示値列挙結果保持部に、マスキング要否判定結果保持部に存在しない画面構成要素が存在する場合(ステップS1201、Yes)、マスキング装置はステップS1202へ進む。存在しない場合(ステップS1201、No)、マスキング装置は処理を終了する。
 マスキング装置は、分岐条件に該当する画面構成要素を1個選択する(ステップS1202)。選択された画面構成要素が、その種類から、表示値が限られた候補値しかとりえないことが明らかである場合[オプション(α)4、(β)4](ステップS1203、Yes)、マスキング装置はステップS1207へ進む。明らかでない場合(ステップS1203、No)、マスキング装置はステップS1204へ進む。マスキング装置は、選択された画面構成要素のマスキング要否を「否」と判定し(ステップS1207)、ステップS1208へ進む。
 選択された画面構成要素の同等画面構成要素数が、その閾値以上である場合(ステップS1204、Yes)、マスキング装置はステップS1205へ進む。閾値以上でない場合(ステップS1204、No)、マスキング装置はステップS1206へ進む。
 選択された画面構成要素の同等画面構成要素表示値集合の大きさが、その閾値よりも小さい場合(ステップS1205、Yes)、マスキング装置はステップS1207へ進む。閾値よりも小さくない場合(ステップS1205、No)、マスキング装置はステップS1206へ進む。マスキング装置は、選択された画面構成要素のマスキング要否を「要」と判定する(ステップS1206)。マスキング装置は、選択された画面構成要素のマスキング要否判定結果を、マスキング要否判定結果保持部に保存し(ステップS1208)、ステップS1201に戻る。
 マスキング装置は、同等画面構成要素数、同等画面構成要素表示値集合を用いて、その画面構成要素の表示値のマスキング要否を判定する。ここで、画面表示対象の案件によって値が互いに異なる等、バリエーションの多い情報は、顧客等を直接特定し得る情報であるため、要秘匿情報となる場合が多く、逆に、多数の案件で同じ値となる、バリエーションの少ない情報は、顧客等を直接特定し難い情報であるため、要秘匿情報となる場合は少ないと考えられる。一方、端末作業の自動化や支援を目的としたプログラムの動作設定は、様々な案件に対して繰り返し適用できる必要があるため、画面表示対象の案件にあまり依存しない、バリエーションの少ない情報が使用される。また、業務実態の把握や分析において分類を行う際にも、分類数が多くなり過ぎないよう、バリエーションの少ない情報が使用される。
 このような、マスキングを必要とする情報、必要としない情報の性質を利用し、具体的には以下のように表示値のマスキング要否を判定する。
(1)同等画面構成要素数が、所定の閾値λ以上である場合
 同等画面構成要素表示値集合の大きさ、つまり表示値のバリエーション数を調べ、表示値のバリエーション数が、所定の閾値以上である場合、その画面構成要素の表示値のマスキング要否を「要」と判定する。同等画面構成要素表示値集合の大きさ、つまり表示値のバリエーション数を調べ、表示値のバリエーション数が、所定の閾値よりも小さい場合、その画面構成要素の表示値のマスキング要否を「否」と判定する。
(2)同等画面構成要素数が、所定の閾値λよりも小さい場合
 その画面構成要素の表示値のマスキング要否を「要」と判定する。なお、これは、本実施形態の処理を実行する時点で利用可能な画面データからは、表示値のバリエーションを十分に調べられないため、安全のため、マスキング対象とするものである。
 ただし、オプション(α)4、オプション(β)4の適用時には、リストボックス等、画面構成要素の種類から、表示値が限られた候補値しかとりえないことが明らかな画面構成要素については、列挙結果を、所定の閾値と比較することなく、マスキング要否を「否」と判定する。
 図32は、画面データを分類する処理の全体フローを示す図である。図32に示すように、処理対象画面データ蓄積部に、マスキング状態が「未実施」で分類対象チェック未実施の画面データが存在する場合(ステップS1301、Yes)、マスキング装置はステップS1302へ進む。存在しない場合、マスキング装置はステップS1306へ進む。
 マスキング装置は、分岐条件に該当する画面データを1個選択する(ステップS1302)。識別結果保持部で保持されている、選択された画面データに関する識別結果の中に、見本画面データと同等のものが存在する場合[オプション(β)1-1-1](ステップS1303、Yes)、マスキング装置はステップS1305へ進む。存在しない場合(ステップS1303、No)、マスキング装置はステップS1304へ進む。
 マスキング装置は、選択された画面データのみを含む画面データグループを作成し、有効画面データグループ集合に追加する(ステップS1304)。マスキング装置は、選択された画面データの分類対象チェックを実施済みにし(ステップS1305)、ステップ1301に戻る。
 有効画面データグループ集合に含まれる画面データグループの組合せで、類似度を未計算のものが存在する場合(ステップS1306、Yes)、マスキング装置はステップS1307へ進む。存在しない場合(ステップS1306、No)、マスキング装置はステップS1309へ進む。
 マスキング装置は、分岐条件に該当する画面データグループの組合せを1個選択する(ステップS1307)。マスキング装置は、識別結果保持部で保持されている識別結果に基づき、選択された画面データグループの類似度を計算し(ステップS1308)、ステップS1306に戻る。
 マスキング装置は、有効画面データグループ集合に含まれる画面データグループの組合せの中から、類似度が最大のものを1個選択する(ステップS1309)。類似度が、同等性判定の閾値以上である場合(ステップS1310、Yes)、マスキング装置はステップS1311へ進む。閾値以上でない場合(ステップS1310、No)、マスキング装置はステップS1315へ進む。
 マスキング装置は、統合前の画面データグループを、有効画面データグループ集合から削除し、選択された画面データグループの組を統合し、新たな画面データグループを作成し、有効画面データグループ集合に追加する(ステップS1311)。
 有効画面データグループ集合に、新たな画面データグループとの類似度を未計算の画面データグループが存在する場合(ステップS1312、Yes)、マスキング装置はステップS1313へ進む。存在しない場合(ステップS1312、No)、マスキング装置はステップS1309に戻る。
 マスキング装置は、分岐条件に該当する画面データグループを1個選択する(ステップS1313)。マスキング装置は、新たな画面データグループと、選択された画面データグループの類似度を計算し(ステップS1314)、ステップ1312に戻る。
 有効画面データグループ集合に、代表未選出の画面データグループが存在する場合(ステップS1315、Yes)、マスキング装置はステップS1316へ進む。存在しない場合(ステップS1315、No)、マスキング装置はステップ1318へ進む。マスキング装置は、分岐条件に該当する画面データグループを1個選択する(ステップS1316)。マスキング装置は、選択された画面データグループに含まれる画面データの中から、代表とするものを1個選出し(ステップS1317)、ステップS1315に戻る。マスキング装置は、画面データグループへの分類結果と、各画面データグループの代表を、画面データ分類結果保持部に保存する(ステップS1318)。
 画面データ分類処理では、まず、処理対象画面データ蓄積部に蓄積されている画面データのうち、マスキング状態が「未実施」のものを、分類対象とする。ただし、マスキング装置は、識別部により、いずれかの見本画面データと同等と判定された画面データは、分類対象から除外する(オプション(β)1-1-1の適用時。)。なお、いずれかの見本画面データと同等と判定されたかどうかは、識別結果保持部で保持されている識別結果により調べることができる。
 次に、マスキング装置は、分類対象の画面データを1個ずつ含む、画面データグループを作成し、それらを、処理の各時点で有効な画面データグループの集合(以下、「有効画面データグループ集合」と表記)に追加する。また、任意の2個の画面データグループm,nについて、それぞれに画面データm,nが含まれているとして、図33に示すように、画面データグループ間の類似度θm,n(=θn,m)を(3)式により求める。図33は、画面データ間の識別結果から、画面データグループ間の類似度を求める例を示す図である。
Figure JPOXMLDOC01-appb-M000004
 続いて、図34に示すように、マスキング装置は、(1)~(4)の処理を繰り返し行うことで、同じグループ内には同等の画面データのみが含まれるようにグループを統合し、グループ内の画面データを増やしつつ、グループ数を減らしていく。図34は、画面データを分類する例を示す図である。
(1)有効画面データグループ集合に含まれる画面データグループの組合せの中から、画面データグループ間の類似度が最大の組合せを見つける。以下では、類似度が最大となる画面データグループを、画面データグループ^m、^nとする。
(2)θ^m,^nを、画面・画面構成要素識別処理で同等性を判定するときにも使用した閾値θと比較し、閾値よりも小さい(θ^m,^n<θ)場合には、それ以上画面データグループを統合すると、同一のグループ内に同等ではない画面データが含まれるようになることから、以降の処理を打ち切り、後述の代表画面データの選出を行う。閾値以上(θ^m,^n≧θ)の場合には、以降の(3)~(4)の画面データグループを統合する処理を行った後、(1)の処理に戻る。
(3)画面データグループ^m、^nに含まれている画面データを含む、新たな画面データグループm´を作成する。有効画面データグループ集合から画面データグループ^m、^nを削除し、代わりに画面データグループm´を追加する。
(4)画面データグループm´と、有効画面データグループ集合に含まれるその他の任意の画面データグループkの類似度θm´,k(=θk,m´)を、(4)式により求める。
Figure JPOXMLDOC01-appb-M000005
 以上で説明した、画面データをグループに分類する方法は、1から類似度を引いた値を距離とし、クラスタリング手法における凝集型階層的クラスタリングにおいて、クラスタ間距離の計算に最長距離法を使用した方法に相当するが、他の距離の定義や、クラスタ間距離の計算方法を使用したり、他の各種クラスタリング手法を使用したりしてもよい。
 ここまでの処理により、有効画面データグループ集合には、同等の画面データが同じグループに分類され、かつ、グループ数がなるべく少なくなるように分類した結果の画面データグループが含まれる。これら画面データグループの各々について、代表となる画面データを選出する。
 具体的には、例えば、各画面データについて、各画面構成要素について、同じグループに含まれる他の画面データ中の同等の画面構成要素の数、すなわち同等画面構成要素数を数え、さらに同等画面構成要素数が、所定の閾値φ以上である画面構成要素の数(以下、「φ-共通画面構成要素数」と表記)を数える処理を行い、φ-共通画面構成要素数が最大の画面データを、そのグループの代表とする。特に、φをマスキング要否判定処理で用いる所定の閾値λとすれば(以下、「代表画面データ選出方法1」と表記)、本発明の処理を実行する時点で利用可能な画面データからは、表示値のバリエーションを十分に調べられないことを理由にマスキング対象となる画面構成要素を最小限にすることができる。
 あるいはφを1とすれば(以下、「代表画面データ選出方法2」と表記)、修正部で、表示や人による操作の対象とする画面データが、各グループにつき代表の画面データ1個だけであっても、同じグループに含まれる画面データ中の画面構成要素のマスキング要否を最も多く確認したり、個別に変更したりすることが可能となる。
 あるいは、各画面データmについて、同じグループgに含まれる他の各画面データnとの最良の対応付け方法^fm,nにより対応付けられる画面構成要素の数|Def(^fm,n)の和((5)式)を求め、この値が最大の画面データを、そのグループの代表とする。
Figure JPOXMLDOC01-appb-M000006
 これにより、代表以外の画面データに対しては、その各画面構成要素について、同じグループに含まれる他の画面データ中の同等の画面構成要素を調べることなく、マスキングまでを行うことができ、計算量を低減しつつ、「代表画面データ選出方法1」あるいは「代表画面データ選出方法2」の近似が可能となる。図35に、グループの代表を選択する例を示す。
 ここでは、画面表示内容のマスキングに特化して、代表となる画面データを選出する方法を説明したが、画面データをグループに分類する方法として用いる汎用的な他のクラスタリング手法に応じて、別の方法を用いてもよい。
 これまでに説明した実施形態に係るマスキング装置は、以下のような特徴を有する。
(ユースケース(α)におけるマスキング装置の特徴)
 マスキング装置は、端末作業の自動化や支援を目的とするプログラムの動作設定の作成後、動作時に取得される複数の処理対象の画面データと、見本の各画面データを比較することで、見本の各画面構成要素のマスキング要否判定とマスキングを行う。
 また、マスキング装置は、複数の処理対象の画面データと、見本の画面データの比較において、画面と画面構成要素を識別し、同等の画面データをすべて求める。その上で、マスキング装置は、見本の各画面構成要素について、他の同等な画面データ中に存在する同等の画面構成要素の数や、表示値のバリエーションを求め、所定の閾値と比較することで、マスキング要否判定とマスキングを行う。
 また、マスキング装置は、マスキング要否判定結果を、人が容易に理解しやすい形態で表示する。また、マスキング装置は、人の操作により、マスキング要否判定に使用される閾値を変更し、判定をやり直し、変更後の判定結果を再度表示する。あるいは、マスキング装置は、人の操作により、画面構成要素のマスキング要否を個別に変更する。
 また、マスキング装置は、画面と画面構成要素の識別においては、同じ属性値を持ち、同等となりうる見本の画面構造中の画面構成要素と処理対象の画面構造中の画面構成要素の、それぞれの画面構造における、他の画面構成要素との関係性が同じかどうかも考慮し、画面と画面構成要素の同等性を判定する。
 具体的には、マスキング装置は、見本と処理対象の画面構造同士を比較し、見本の画面構成要素全体のうち、処理対象の画面構成要素に対応付けられるものの数による、対応付け方法の評価が最良となるように共通部分構造を求める。その上で、マスキング装置は、この数が、見本の画面構成要素の数に占める割合と、処理対象の画面構成要素の数に占める割合を、所定の閾値と比較することにより、画面と画面構成要素の同等性を判定する。
 また、マスキング装置は、一致、不一致をどのように判定するかを個別に調整する必要のある画面の属性についてのみ、比較規則を指定することにより、適用対象の画面に応じて同等性の判定を制御する。
(ユースケース(β)におけるマスキング装置の特徴)
 マスキング装置は、操作ログ中の各画面データと、他の残りの画面データの比較において、画面と画面構成要素を識別し、同等の画面データをすべて求める。その上で、マスキング装置は、各画面データの各画面構成要素について、他の同等な画面データ中に存在する同等の画面構成要素の数や、表示値のバリエーションを求め、所定の閾値と比較することで、マスキング要否判定とマスキングを行う。
 マスキング装置は、操作ログ中の画面データを、同等の画面データが同じグループに分類され、かつ、グループ数がなるべく少なくなるように、画面データをグループに分類する。また、マスキング装置は、各グループにつき、代表とする画面データを1個ずつ選ぶ。マスキング装置は、マスキング要否判定を、各画面データの各画面構成要素に対して行う代わりに、各グループの代表の画面データの各画面構成要素に対してのみ行う。マスキング装置は、代表以外の画面データについては、同じグループの代表の画面データ関するマスキング要否判定結果に基づき、マスキング対象とする画面構成要素を特定する。
 マスキング装置は、マスキング要否判定結果を、人が容易に理解しやすい形態で表示する。また、マスキング装置は、人の操作により、マスキング要否判定に使用される閾値を変更し、判定をやり直し、変更後の判定結果を再度表示する。あるいは、マスキング装置は、人の操作により、画面構成要素のマスキング要否を個別に変更する。
 マスキング装置は、マスキングが繰り返し行われる場合に、画面データと、それに関するマスキング要否判定結果、および人による個別の変更結果を、見本の画面データとして保存しておき、以降のマスキングを行う際に再利用する。つまり、マスキング装置は、以降のマスキングでは、操作ログ中の各画面データを、他の残りの画面データと比較する前に見本の画面データと比較し、同等である場合には、見本の画面データに関するマスキング要否判定結果に基づき、マスキング対象とする画面構成要素を特定する。
 マスキング装置は、画面と画面構成要素の識別においては、同じ属性値を持ち、同等となりうる一方の画面構造中の画面構成要素ともう一方の画面構造中の画面構成要素の、それぞれの画面構造における、他の画面構成要素との関係性が同じかどうかも考慮し、画面と画面構成要素の同等性を判定する。
 具体的には、マスキング装置は、一方ともう一方の画面構造同士を比較し、一方の画面構成要素全体のうち、もう一方の画面構成要素に対応付けられるものの数や、一方が見本である場合に、見本のマスキング対象外の画面構成要素のうち、もう一方の画面構成要素に対応付けられるものの数等による、対応付け方法の評価が最良となるように共通部分構造を求める。その上で、マスキング装置は、これらの数が、一方の画面構成要素の数に占める割合と、もう一方の画面構成要素に占める割合、さらに一方が見本である場合には、見本のマスキング対象外の画面構成要素の数に占める割合を、所定の閾値と比較することにより、画面と画面構成要素の同等性を判定する。
 マスキング装置は、一致、不一致をどのように判定するかを個別に調整する必要のある画面、画面構成要素やそれらの属性についてのみ、比較規則を指定することにより、適用対象の画面に応じて同等性の判定を制御する。
 また、実施形態によれば、以下のような効果が得られる。すなわち、従来の技術では対応が困難な以下の条件下であっても、見本とする画面データの選択や、表示値のマスキングが必要な画面構成要素の指定を、必ずしも人手で行わなくても、マスキングを行えるようになる。
 同等の画面であっても、表示している案件や、作業の実施状況に応じて、画面構成要素の属性値と画面構造が変動する。取得できる画面構成要素の情報において、不変属性が、画面構成要素の種類等に限定されており、マスキング対象またはマスキング対象外の画面構成要素やその祖先の属性あるいは複数の属性の組合せを用いても、画面内において各画面構成要素を一意に識別できない。画面の大きさや、各画面構成要素の表示内容の多寡により、画面構成要素の二次元平面上の配置が変わる。画面や画面構成要素ごとに、マスキング対象またはマスキング対象外の画面構成要素の同等性の判定条件を、必ずしも人が作成する必要がない。
[システム構成等]
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 一実施形態として、マスキング装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記のマスキング処理を実行するマスキングプログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記のマスキングプログラムを情報処理装置に実行させることにより、情報処理装置をマスキング装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
 また、マスキング装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記のマスキング処理に関するサービスを提供するマスキングサーバ装置として実装することもできる。例えば、マスキングサーバ装置は、操作ログを入力とし、マスキング結果を出力とするマスキングサービスを提供するサーバ装置として実装される。この場合、マスキングサーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記のマスキング処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
 図36は、マスキングプログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(BASIC Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、マスキング装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、マスキング装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSDにより代替されてもよい。
 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093およびプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093およびプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 10、10a マスキング装置
 20 支援装置
 101a 操作ログ蓄積部
 102a、204 処理対象画面データ蓄積部
 103a、201 見本画面データ保持部
 104a、202 画面属性比較規則保持部
 105a、203 画面構成要素属性比較規則保持部
 101、106a 識別部
 107a 画面データ分類部
 102、108a マスキング要否判定対象画面データ列挙部
 103、109a 画面構成要素表示値列挙部
 104、110a マスキング要否判定部
 105、111a 修正部
 106、112a 識別結果保持部
 113a 画面データ分類結果保持部
 107、114a マスキング要否判定対象画面データ列挙結果保持部
 108、115a 画面構成要素表示値列挙結果保持部
 109、116a マスキング要否判定結果保持部
 110、117a マスキング実行部

Claims (7)

  1.  基準となる第1の画面データ、および処理対象の1個以上の第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する識別部と、
     識別した画面と画面構成要素を基に、前記第2の画面データのうち、前記第1の画面データと同等である第3の画面データを特定する特定部と、
     前記第3の画面データを基に、前記第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する判定部と、
     を有することを特徴とするマスキング装置。
  2.  前記判定部は、前記第1の画面データに含まれる画面構成要素のうちの、前記第3の画面データに含まれる画面構成要素と同等である画面構成要素の数、および、前記第3の画面データに含まれる画面構成要素の表示値に基づく、前記第1の画面データに含まれる画面構成要素の表示値のバリエーションの数を基に、前記第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定することを特徴とする請求項1に記載のマスキング装置。
  3.  前記識別部は、見本として用意された第1の画面データ、および処理対象の1個以上の第2の画面データ、または、操作ログに含まれる第1の画面データ、および前記操作ログに含まれる画面データのうち、前記第1の画面データと異なる第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別することを特徴とする請求項1または2に記載のマスキング装置。
  4.  前記第2の画面データを、複数のグループに分類し、前記グループのそれぞれについて代表の画面データを選択する分類部をさらに有し、
     前記特定部および前記判定部は、前記分類部による分類結果を用いて処理を行うことを特徴とする請求項3に記載のマスキング装置。
  5.  前記判定部は、前記第3の画面データが、マスキングの要否の判定結果が保存済みである画面データである場合、当該保存済みの判定結果を基に、前記第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定することを特徴とする請求項1に記載のマスキング装置。
  6.  マスキング装置が実行するマスキング方法であって、
     基準となる第1の画面データ、および処理対象の1個以上の第2の画面データについて、各画面データに含まれる画面と画面構成要素を識別する識別工程と、
     識別した画面と画面構成要素を基に、前記第2の画面データのうち、前記第1の画面データと同等である第3の画面データを特定する特定工程と、
     前記第3の画面データを基に、前記第1の画面データに含まれる画面構成要素のそれぞれのマスキングの要否を判定する判定工程と、
     を含むことを特徴とするマスキング方法。
  7.  コンピュータを、請求項1から5のいずれか1項に記載のマスキング装置として機能させるためのマスキングプログラム。
PCT/JP2020/021498 2020-05-29 2020-05-29 マスキング装置、マスキング方法およびマスキングプログラム WO2021240824A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2020/021498 WO2021240824A1 (ja) 2020-05-29 2020-05-29 マスキング装置、マスキング方法およびマスキングプログラム
US17/925,429 US20230185964A1 (en) 2020-05-29 2020-05-29 Masking device, masking method, and masking program
JP2022527471A JP7380870B2 (ja) 2020-05-29 2020-05-29 マスキング装置、マスキング方法およびマスキングプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/021498 WO2021240824A1 (ja) 2020-05-29 2020-05-29 マスキング装置、マスキング方法およびマスキングプログラム

Publications (1)

Publication Number Publication Date
WO2021240824A1 true WO2021240824A1 (ja) 2021-12-02

Family

ID=78744182

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/021498 WO2021240824A1 (ja) 2020-05-29 2020-05-29 マスキング装置、マスキング方法およびマスキングプログラム

Country Status (3)

Country Link
US (1) US20230185964A1 (ja)
JP (1) JP7380870B2 (ja)
WO (1) WO2021240824A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005251173A (ja) * 2004-01-28 2005-09-15 Microsoft Corp ユーザインタフェース中の動的な領域をマスキングしてユーザインタフェースの整合性のテストを可能にする方法およびシステム
JP2016173619A (ja) * 2015-03-16 2016-09-29 三菱電機株式会社 アプリケーション試験装置
WO2016170618A1 (ja) * 2015-04-22 2016-10-27 三菱電機株式会社 自動試験装置
JP2018160003A (ja) * 2017-03-22 2018-10-11 日本電信電話株式会社 画面差異検出装置及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005251173A (ja) * 2004-01-28 2005-09-15 Microsoft Corp ユーザインタフェース中の動的な領域をマスキングしてユーザインタフェースの整合性のテストを可能にする方法およびシステム
JP2016173619A (ja) * 2015-03-16 2016-09-29 三菱電機株式会社 アプリケーション試験装置
WO2016170618A1 (ja) * 2015-04-22 2016-10-27 三菱電機株式会社 自動試験装置
JP2018160003A (ja) * 2017-03-22 2018-10-11 日本電信電話株式会社 画面差異検出装置及びプログラム

Also Published As

Publication number Publication date
JPWO2021240824A1 (ja) 2021-12-02
US20230185964A1 (en) 2023-06-15
JP7380870B2 (ja) 2023-11-15

Similar Documents

Publication Publication Date Title
US10848501B2 (en) Real time pivoting on data to model governance properties
TWI549006B (zh) 資料集和資料服務的上下文趨向
US10872029B1 (en) System, apparatus and method for deploying infrastructure to the cloud
CN100492316C (zh) 测试自动化的系统和方法
US8209742B2 (en) Computer-implemented method for obtaining a minimum biclique cover in a bipartite dataset
US9251295B2 (en) Data filtering using filter icons
Wagner et al. Problem characterization and abstraction for visual analytics in behavior-based malware pattern analysis
US20230161746A1 (en) Data pipeline branching
JP2012098797A (ja) 構造化文書を分類するためのルールを生成するための方法、並びにそのコンピュータ・プログラム及びコンピュータ
EP2849114B1 (en) System and method for automated management of user accounts
CN107301179A (zh) 数据库读写分离的方法和装置
US20120046937A1 (en) Semantic classification of variable data campaign information
CN109725958A (zh) 对资源管理器管理的文件进行处理的方法及装置
US20210110108A1 (en) Document tracking through version hash linked graphs
Huang et al. Efficient and exact query of large process model repositories in cloud workflow systems
US20120275714A1 (en) Determination of an image selection representative of a storyline
US11809593B2 (en) Sensitive data compliance manager
WO2021240824A1 (ja) マスキング装置、マスキング方法およびマスキングプログラム
JP4630691B2 (ja) データベース装置とその処理方法
CN109800147B (zh) 一种测试案例生成方法及终端设备
CN110990834A (zh) 一种android恶意软件的静态检测方法、系统及介质
US10528899B2 (en) Cladistics data analyzer for business data
CN110941638A (zh) 应用分类规则库构建方法、应用分类方法及装置
US20120016890A1 (en) Assigning visual characteristics to records
KR102274333B1 (ko) 분석 장비에서 출력된 결과데이터의 통합 관리 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20937980

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022527471

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20937980

Country of ref document: EP

Kind code of ref document: A1