(実施形態1)
以下、本発明の実施形態1に従った評価システム(ラベル有無評価装置、単位表記有無評価装置、配列表抽出装置、評価方法およびプログラムを含む)を説明する。
まず、実施形態1のGUI評価システム(以下、「評価システム」という)の構成について、図1を参照して説明する。
図1に示すように、評価システムは、ラベル有無評価装置1と、GUI情報データベース2と、単位表記有無評価装置3と、単位表記データベース4と、評価結果記録装置5と、出力装置6とから構成されている。
ラベル有無評価装置1(以下、「ラベル評価装置1」という)は、入力部11を有する。
入力部11は、ユーザビリティの評価対象となるウィンドウ画面WNDのなかに示されている「配列表MTX」(例えば、表やリスト)を指定する入力を利用者から受付ける。入力部11としては、マウスやキーボードなどが挙げられる。
ここでいう「配列表MTX」とは、罫線によって行方向と列方向とのそれぞれに区切られて配列されたデータ格納用のセルのなかにデータがそれぞれ記述された構造を有するデータである。配列表MTXを構成する行の数および列の数については、特に限定しない。
なお、評価システムがユーザビリティを行うウィンドウ画面WNDは、図2に一例として示すウィンドウAのように、配列表(この例では、配列表MTX−1)を含むように構成されている。
GUI情報データベース2(以下、「GUI情報DB2」という)は、GUI情報21を記憶している。
ここで、GUI情報21とは、ウィンドウ画面WNDを構成するデータを含むとともに、該ウィンドウ画面WNDのなかに示される配列表MTX(表やリスト)を含む情報である。
また、ラベル評価装置1は、入力部11が指定を受付けた配列表MTXをGUI情報DB2から読出す。そして、ラベル評価装置1は、当該配列表MTX(例えば、図2に示したMTX−1)の「行方向」について、該配列表MTXのなかの1行目(「特定の行」)に含まれている各セル同士の表現を比較する。
ここでいう「セルの表現」とは、例えば、セルに記述されているデータを表す文字の種類、文字位置および該データの背景色などである。
続いて、ラベル評価装置1は、指定を受付けた配列表MTXの1行目(特定の行)と2行目以降の行(「特定の行以外の行」)とのそれぞれにおいて同一の列(例えば、1列目)に位置している各セル同士の表現の比較を行う。
さらに、ラベル評価装置1は、指定を受付けた配列表MTXの2行目以降の各行(特定の行以外の互いに異なる行それぞれ)において同一の列(例えば、1列目)に位置している各セル同士の表現の比較を行う。
当該比較の結果、指定を受付けた配列表MTXの1行目に配列されている各セル同士の表現が互いに同じであって、かつ、互いに同一の列に位置する1行目のセルの表現のみが2行目以降の行すべてのセルの表現と異なっている場合、ラベル評価装置1は、2行目以降の行方向(縦方向)に並べられたデータに対して付与されたラベルVLB(以下、「縦ラベルVLB」という)が存在すると判別する。
ここでいう縦ラベルVLBには、1行目において横方向(列方向)に配列された各セルのなかに記述されているデータそれぞれが相当する。
なお、ラベル評価装置1は、1行目に配列されている各セルの表現が、そのうちの一部のセルを除いて同じとなる場合、2行目以降の行方向(縦方向)に記述されたデータに対するラベル(縦ラベルVLB)は存在すると判別する。そして、ラベル評価装置1は、1行目のうちの一部のセルがその表現に誤りのある誤り候補である旨のラベル評価結果LBLを評価結果記録装置5へ出力する。
一方、行方向における比較の結果、1行目の行以外にも互いに同一の列に位置するセルの表現が相互に異なる2行目以降の行が存在する場合(例えば、1行目と2行目と3行目との各セル同士の表現すべてが相互に異なっている場合など)、ラベル評価装置1は、2行目以降の行方向に並べられたデータに対して付与された縦ラベルVLBが存在しないと判別する。
また、ラベル評価装置1は、入力部11が指定を受付けた配列表MTXの「列方向」について、まず、1列目(「特定の列」)に含まれている各セル同士の表現を比較する。
続いて、ラベル評価装置1は、指定を受付けた配列表MTXの1列目(特定の列)と2列目以降の列(「特定の列以外の列」)とのそれぞれにおいて同一の行(例えば、1行目)に位置している各セル同士の表現の比較を行う。
さらに、ラベル評価装置1は、指定を受付けた配列表MTXの1列目に配列されている各セル同士の表現が互いに同じであって、かつ、互いに同一の行に位置する1列目のセルの表現のみが2列目以降の列すべてのセルの表現と異なっている場合、ラベル評価装置1は、2列目以降の列方向(横方向)に並べられたデータに対して付与されたラベルHLB(以下、「横ラベルHLB」という)が存在すると判別する。
ここでいう横ラベルHLBには、1列目において縦方向(行方向)に配列された各セルのなかに記述されているデータそれぞれが相当する。
また、ラベル評価装置1は、指定された配列表MTXにおける行方向および列方向それぞれについてのラベルの有無の判別結果を示す「ラベル評価結果LBL」を、評価結果記録装置5へ出力する。
なお、ラベル評価装置1は、1列目に配列されている各セルの表現が、そのうちの一部のセルを除いて同じとなる場合、2列目以降の列方向に記述されたデータに対するラベル(横ラベルHLB)は存在すると判別する。そして、ラベル評価装置1は、1列目のうちの一部のセルがその表現に誤りのある誤り候補である旨のラベル評価結果LBLを評価結果記録装置5へ出力する。
一方、列方向における比較の結果、1列目の列以外にも互いに同一の行に位置するセルの表現が相互に異なる2列目以降の列が存在する場合(例えば、1列目と2列目と3列目との各セル同士の表現すべてが相互に異なっている場合など)、ラベル評価装置1は、2列目以降の列方向に並べられたデータに対して付与された横ラベルHLBが存在しないと判別する。
行方向および列方向についての比較の結果、配列表MTXのなかに縦ラベルVLBおよび横ラベルHLBがともに存在しないと判別した場合、ラベル評価装置1は、配列表MTXにおけるラベルの有無について「欠陥あり」を示すラベル評価結果LBLを評価結果記録装置5へ出力する。
単位表記有無評価装置3(以下、「単位評価装置3」という)は、入力部11が指定を受付けた配列表MTXのなかに数字を含むデータが記述されている場合、該数字に対する単位表記の有無を評価する。
単位評価装置3は、まず、指定された配列表MTXのなかから数字を含んでいるデータを特定する。そして、単位評価装置3は、特定した数字を含んでいるデータに対して、該データが含まれているセル内、もしくは、該データに対応して付与されているラベル(縦ラベルVLBまたは横ラベルHLB)内に、単位表記データベース4が記憶している単位表記が記述されているかどうかを判別する。
なお、配列表MTXのなかに縦ラベルVLBおよび横ラベルHLBがともに存在しないとラベル評価装置1が判別した場合、単位評価装置3は、特定した数字を含んでいるデータに対して、該データが含まれているセル内に、単位表記データベース4が記憶している単位表記が記述されているかどうかを判別する。
単位評価装置3は、単位が記述されていると判別した際に単位表記が記述されており「欠陥なし」である旨の単位評価結果UNTを出力して、単位が記述されていないと判別した際に単位表記が記述されておらず「欠陥あり」である旨の「単位評価結果UNT」を出力する。
単位表記データベース4(以下、「単位DB4」という)は、単位表記情報41を記憶するデータベースである。
ここで、単位表記情報41とは、単位表記を示す表現を記憶している情報である。ここでいう「単位表記」とは、例えば、記憶媒体に記憶されているファイルのデータ容量(サイズ)についての単位であればkB(キロバイト)などであり、電流についての単位であればA(アンペア)である。
以下では、単位表記情報41のなかに、年月日(年、月、日、yyyy/mm/dd[yyyyは“年”を表す数字、mmは“月”を表す数字、ddは“日”を表す数字]、・・・)と、時間(時、秒、分、HH:MM[HHは“時”を表す数字、MMは“分”を表す数字]、・・・)と、データ容量(KB、・・・)と、通貨(円、¥、・・・)と、比率(%、・・・)と、物理的な長さ/質量/容量/電流値などの国際単位系(SI)と、その他の単位(回、個、画素、・・・)との単位表記が記憶されている場合を例に挙げて説明する。
評価結果記録装置5は、ラベル評価装置1から出力されてきたラベル評価結果LBLと、単位評価装置3から出力されてきた単位評価結果UNTとを用いて、ウィンドウ画面WNDのユーザビリティの評価結果RSTを生成する。
ここで、「評価結果RST」とは、配列表MTXにおけるラベルの有無と、配列表MTXに記述されているデータに対する単位表記の有無とを示す結果である。
そして、評価結果記録装置5は、生成した評価結果RSTを出力装置6へ出力する。
出力装置6は、評価結果記録装置5から出力されてきた評価結果RSTを表示する。また、出力装置6は、GUI情報DB2が記憶しているGUIのウィンドウ画面WNDを表示する。出力装置6としては、ディスプレイなどが挙げられる。
次に、実施形態1の評価システムにおいて、ラベル評価装置1がウィンドウ画面WNDに示されている配列表MTXにおけるラベルの有無と、単位評価装置3が配列表MTXに記述されているデータに対する単位表記の有無とを評価する動作についてそれぞれ詳細に説明する。
まず、ラベル評価装置1がウィンドウ画面WNDに示されている配列表MTXにおけるラベルの有無を評価する動作を、図3を参照して説明する。
まず、ラベル評価装置1の入力部11が、GUI情報DB2内のGUI情報21が記憶しているうちから評価の対象とする配列表MTX(表やリスト)を指定する入力を利用者から受け付ける(ステップS11)。
すると、ラベル評価装置1は、入力部11が指定を受付けた配列表MTXをGUI情報DB2から読出す。そして、ラベル評価装置1は、読出した配列表MTXの行方向について、各セル同士の表現(文字種、文字位置、背景色、・・・)を比較する(ステップS12)。
より具体的には、ステップS12にて、まず、ラベル評価装置1は、1行目に配列されている各セル同士の表現を比較する。続いて、ラベル評価装置1は、互いに同じ列(例えば、1列目)に位置している1行目のセルの表現と、2行目以降の各行のセルの表現とを比較する。さらに、ラベル評価装置1は、2行目以降の互いに異なる各行(例えば、2行目と3行目)において互いに同じ列(例えば、1列目)に位置しているセル同士の表現を比較する。
ステップS12における行方向についての比較の結果、1行目の各セル同士の表現が互いに同じであって、かつ、互いに同一の列に位置する1行目のセルの表現のみが2行目以降の行すべてのセルの表現と異なっている場合、ラベル評価装置1は、2行目以降の行方向(縦方向)に配列されたデータに対して付与された「縦ラベルVLB」が存在すると判別する。
また、ステップS12において、1行目の各セルの表現がそのうちの一部のセルを除いて同じである場合、ラベル評価装置1は、2行目以降の行方向に記述されたデータに対する縦ラベルVLBは存在すると判別する。そして、ラベル評価装置1は、1行目のうちの一部のセルがその表現に誤りのある誤り候補である旨のラベル評価結果LBLを評価結果記録装置5へ出力する。
なお、この説明例では、ラベル評価装置1は、2行目以降の各セル同士についても表現の一部が所定の規則性に従って変化している場合(例えば、背景色が1行毎に異なる場合など)、行の識別のし易さのための効果と判断し、2行目以降の行方向(縦方向)に並べられたデータに対して付与された「縦ラベルVLB」が存在すると判別する。
行方向についての比較が完了した後、ラベル評価装置1は、指定を受付けた配列表MTXの列方向について、各セル同士の表現(文字種、文字位置、背景色、・・・)を比較する(ステップS13)。
より具体的には、ステップS13にて、まず、ラベル評価装置1は、1列目の各セル同士の表現を比較する。続いて、ラベル評価装置1は、互いに同じ行(例えば、2行目)に位置している1列目のセルの表現と、2列目以降の各列のセルの表現とを比較する。さらに、ラベル評価装置1は、2列目以降の互いに異なる各列(例えば、2列目と3列目)において互いに同じ行に位置しているセル同士の表現を比較する。
ステップS13における列方向についての比較の結果、1列目の各セル同士が同じ、かつ2列目以降の各セルと異なる表現となっている場合、列に対応して付与された横ラベルHLBが存在すると判別する。
このとき、1列目の各セルの表現がそのうちの一部のセルを除いて同じである場合、2列目以降の列方向(横方向)に記述されたデータに対するラベル(横ラベルHLB)は存在すると判別する。そして、ラベル評価装置1は、1列目のうちの一部のセルがその表現に誤りのある誤り候補である旨のラベル評価結果LBLを評価結果記録装置5へ出力する。
なお、この説明例では、2列目以降の列同士についても、表現の一部が所定の規則性に従って変化している場合(例えば、背景色が1列毎に異なる場合など)、列の識別のし易さのための効果と判断し、列方向(横方向)に配列されているデータに対応して付与された横ラベルHLBが存在すると判別する。
該判別の結果、縦ラベルVLBおよび横ラベルHLBがともに存在しない場合、ラベル評価装置1は、配列表MTXのラベル有無について「欠陥あり」と判別する(ステップS14)。
なお、上述した手法を適用することにより、縦ラベルおよび横ラベルがそれぞれ1行1列を除くと存在すると特定できる場合、配列表MTXを構成すると判別することも可能である。
つぎに、単位評価装置3が、配列表MTXに記述されているデータに対する単位表記の有無を評価する動作について、図4に示すフローチャートを参照して説明する。
まず、単位評価装置3は、配列表MTXのなかから数字を含んでいるデータを特定する(ステップS21)。
単位評価装置3が配列表MTXから数字を含んでいるデータを特定できない場合、評価結果記録装置5は、ラベル評価装置1から出力されてきたラベル評価結果LBLを用いて、ウィンドウ画面WNDのユーザビリティの評価結果RSTを生成する。そして、評価結果記録装置5は、生成した評価結果RSTを出力装置6へ出力する。出力装置6は、評価結果記録装置5から出力されてきた評価結果RSTを表示する。
一方、単位評価装置3は、配列表MTXのなかから数字を含んでいるデータを特定した場合、該特定した数字を含んでいるデータについて単位表記の有無を評価する(ステップS22)。
単位評価装置3は、単位表記DB16に記憶されている単位表記が、数字が含まれていると判別されたデータに記述されているかどうかを判別する。当該判別を行う箇所は、数字を含むデータが記述されているセル内、および、当該セルに対応して付与されているラベル(縦ラベルVLBまたは横ラベルHLB)である。
ある列(例えば、2列目)に配列されているセルすべてに数字のみを含んでいるデータが記述されている場合、単位評価装置3は、当該列方向のデータに対応して付与された縦ラベルVLBのみについて、単位表記の有無の判別を行う。また、ある行(例えば、3行目)に配列されているセルすべてに数字のみを含んでいるデータが記述されている場合、単位評価装置3は、当該行方向のデータに対応して付与された横ラベルHLBのみについて、単位表記の有無の判別を行う。
評価結果記録装置5は、ラベル評価装置1から出力されてきたラベル評価結果LBLと、単位評価装置3から出力されてきた単位評価結果UNTとを用いて、ウィンドウ画面WNDのユーザビリティの評価結果RSTを生成する。そして、評価結果記録装置5は、生成した評価結果RSTを出力装置6へ出力する。出力装置6は、評価結果記録装置5から出力されてきた評価結果RSTを表示する。
次に、実施形態1の評価システム1によるラベルの有無の評価の、具体的な適用例について説明する。
以下では、図2に示したウィンドウ画面WND(ウィンドウA)および図5に示すウィンドウ画面WND(ウィンドウB)に対して、ラベル有無評価装置1がラベルの有無の評価を行う場合を例に挙げて説明する。
まず、ウィンドウAにおけるラベルの有無の評価を行う例について説明する。
図2に示したウィンドウAに含まれている配列表MTX−1においては、「1行目(1行1列〜1行3列)」に配列されているセルそれぞれの表現は、セルそれぞれの文字種はすべて漢字および数字であり、セルそれぞれの文字位置はすべてセンタリングされており、セルそれぞれの背景色はすべてグレーとなっている。
そのため、ラベル評価装置1は、ウィンドウAの配列表MTX−1のなかの1行目の各セル同士の表現が互いに同じであると判別する。
続いて、ラベル評価装置1は、互いに同じ列(例えば、2列目)に位置している1行目に配列されているセルの表現と、2行目以降の行それぞれ(図2に示した例では、2行目〜5行目)に配列されているセルの表現とを比較する。
図2に示した配列表MTX−1の例では、互いに同じ1列目に位置している2行目〜5行目のセルの表現はすべて文字種が英字(アルファベット)で、文字位置が左揃えで、背景色が白である。
また、この例では、互いに同じ2列目に位置している2行目〜5行目のセルの表現はすべて文字種がひらがなで、文字位置が左揃えで、背景色が白である。
さらに、この例では、互いに同じ3列目に位置している2行目〜5行目のセルの表現はすべて文字種が数字で、文字位置が右揃えで、背景色が白である。
そのため、当該比較の結果、ラベル評価装置1は、1行目のセルの表現のみが2行目以降の行(2行目〜5行目)のセルの表現と異なっていると判別する。
続いて、ラベル評価装置1は、図2に示した配列表MTX−1の列方向について、各セル同士の表現を比較する。
まず、ラベル評価装置1は、当該配列表MTX−1の1列目(1行1列〜5行1列)に配列された各セル同士の表現を比較する。図2に示した例では、1列目に配列されているセルのうちで1行1列のセルの表現は、文字種が漢字および数字で、文字位置はセンタリングで、背景色はグレーである。
一方、1列目に配列されているセルのうちの2行1列〜5行1列のセルの表現はすべて文字種がアルファベットで、文字位置が左揃えで、背景色が白である。
そのため、ラベル評価装置1は、図2に示した配列表MTX−1の1列目について、当該1列目(1行1列〜5行1列)の各セル同士の表現は互いに同じでないと判別する。
さらに、ラベル評価装置1は、配列表MTX−1の1列目と2列目以降の列(図2の例では、2列目〜3列目)とのそれぞれにおいて同一の行に位置している各セル同士の表現の比較を行う。
図2に示した配列表MTX−1の例では、互いに同じ1行目に位置している1列目のセルの表現と、2列目〜3列目の各セルの表現とはすべて漢字および数字で、文字位置はセンタリングで、背景色はグレーである。
また、配列表MTX−1の例では、2行目に位置している「1列目」のセルの表現は、文字種がアルファベットで、文字位置が左揃えで、背景色が白である。一方、同じ2行目に位置している「2列目」のセルの表現は、文字種がひらがなで、文字位置は左揃えで、背景色は白である。さらに、同じ2行目に位置している「3列目」のセルの表現は、文字種が数字で、文字位置は右揃えで、背景色は白である。つまり、1列目と2列目と3列目との各セルの表現は相互に異なっており、1列目のセルの表現だけが2列目以降の列のセルの表現よりも異なってはいない。
該比較の結果、ラベル評価装置1は、配列表MTX−1においては1列目のセルの表現のみが2列目以降の行のセルの表現よりも異なってはいないと判別して、ラベル評価装置1は、ウィンドウAにおいては縦ラベルVLBが存在しないと判別する。
以上により、ラベル評価装置1は、ウィンドウAに含まれている配列表MTX−1にはその1列目に横ラベルHLBが記述されている旨を示すラベル評価結果LBLを出力する。
つぎに、ウィンドウBにおけるラベルの有無の評価を行う例について説明する。
また、図5に示したウィンドウBは、1行目(1行1列〜1行3列)に配列されている各セル同士の表現は、1行1列では文字種がアルファベットであり、1行2列では文字種がひらがなであり、1行3列では数字であり、互いに異なっている。
そのため、ラベル評価装置1は、ウィンドウBの配列表MTX−2のなかの1行目の各セル同士の表現が互いに同じでないと判別する。
続いて、ラベル評価装置1は、互いに同じ列に位置している1行目(1行1列〜1行3列)に配列されているセルの表現と、2行目以降の行それぞれ(図5に示した例では、2行目〜4行目)に配列されているセルの表現とを比較する。
図5に示した配列表MTX−2の例では、互いに同じ1列目に位置している1行目〜4行目のセルの表現はすべて文字種が英字(アルファベット)で、文字位置が左揃えで、背景色が白である。
また、この例では、互いに同じ2列目に位置している1行目〜4行目のセルの表現はすべて文字種がひらがなで、文字位置が左揃えで、背景色が白である。
さらに、この例では、互いに同じ3列目に位置している1行目〜4行目のセルの表現はすべて文字種が数字で、文字位置が右揃えで、背景色が白である。
上述した行方向についての比較の結果、ラベル評価装置1は、配列表MTX−2においては1行目のセルの表現のみが2行目以降の行のセルの表現よりも異なってはいないと判別する。該判別の結果、ラベル評価装置1は、ウィンドウBにおいては横ラベルHLBが存在しないと判別する。
図5に示した配列表MTX−2の行方向についての比較が完了すると、ラベル評価装置1は、該配列表MTX−2の列方向について、各セル同士の表現を比較する。
また、1列目(1行1列〜4行1列)の各セル同士の表現は、すべて文字種がアルファベットで、文字位置が左揃えで、背景色が白である。そのため、ラベル評価装置1は、ウィンドウBの配列表MTX−2のなかの1列目の各セル同士の表現が互いに同じであると判別する。
その後、ラベル評価装置1は、配列表MTX−2の1列目と2列目以降の列(図5の例では、2列目〜3列目)とのそれぞれにおいて同一の行に位置している各セル同士の表現の比較を行う。
配列表MTX−2の例では、互いに同じ1行目に位置している「1列目」のセルの表現は文字種が英字(アルファベット)で、文字位置が左揃えで、背景色が白である。
また、この例では、互いに同じ1行目に位置している「2列目」のセルの表現は文字種がひらがなで、文字位置が左揃えで、背景色が白である。
さらに、この例では、互いに同じ1行目に位置している「3列目」のセルの表現はすべて文字種が数字で、文字位置が右揃えで、背景色が白である。つまり、「1列目」のセルの表現と、「2列目」のセルの表現と、「3列目」のセルの表現とが相互に異なっている。
上述した列方向についての比較の結果、ラベル評価装置1は、配列表MTX−2においては1行目のセルの表現のみが2行目以降の行のセルの表現よりも異なってはいないと判別する。該判別の結果、ラベル評価装置1は、ウィンドウBにおいては縦ラベルVLBが存在しないと判別する。
以上により、ラベル評価装置1は、ウィンドウBにおいてはラベル(横ラベルHLBおよび縦ラベルVLB)が存在しないと判別し、該判別結果(欠陥あり)を示すラベル評価結果LBLを評価結果記録装置5へ出力する。
なお、評価結果記録装置5は、ラベル評価装置1から出力されてきたラベル評価結果LBLを用いて、ウィンドウ画面WNDのユーザビリティの評価結果RSTを生成する。
図2に示したウィンドウAおよび図5に示したウィンドウBに対するラベル有無の評価を行った場合、評価結果記録装置5は、例えば、図6に示す評価結果RSTを生成する。図6に示した例では、ウィンドウAについては、2行目以降の行方向に記述されているデータに対応して付与された横ラベルHLBが1行目(1行1列〜1行3列)に存在しているため「欠陥なし」と判別されており、ウィンドウBについては横ラベルHLBおよび縦ラベルVLBがともに存在しないため「欠陥あり」と判別されている。
次に、実施形態1の評価システム1による単位表記の有無の評価の、具体的な適用例について説明する。
以下では、図7、図8および図9それぞれに示す3つの各ウィンドウ画面WND(ウィンドウC、ウィンドウDおよびウィンドウE)に対して、単位評価装置3が単位表記の有無の評価を行う場合を例に挙げて説明する。
単位評価装置3は、まず、ウィンドウC内の配列表MTX−3と、ウィンドウD内の配列表MTX−4と、ウィンドウE内の配列表MTX−5とのそれぞれについて、数字を含むデータが記述されているかどうかを判別する。
図7〜図9それぞれに示した配列表MTX−3〜MTX−5それぞれのなかには数字を含むデータが記述されている。そのため、単位評価装置3は、配列表MTX−3〜MTX−5それぞれのなかから数字を含んでいるデータを特定する。
そして、単位評価装置3は、特定した数字を含んでいるデータに対して、該データが含まれているセル内、もしくは、該データに対応して付与されているラベル(縦ラベルVLBまたは横ラベルHLB)内に、単位表記データベース4が記憶している単位表記が記述されているかどうかを判別する。
図7に示した配列表MTX−3には、数字を含むデータ(762および1520)に対応して付与されている縦ラベルVLB(サイズ(KB))のなかに、単位DB4が記憶している「KB」が記述されている。そのため、単位評価装置3は、配列表MTX−3には単位が表記されていると判別する。そして、単位評価装置3は、単位表記が記述されており「欠陥なし」である旨を示す単位評価結果UNTを評価結果記録装置5へ出力する。
また、図8に示した配列表MTX−4には、数字を含むデータ(762kBおよび1520kB)それぞれが記述されているセルのなかに、単位DB4が記憶している「KB」が記述されている。そのため、単位評価装置3は、配列表MTX−4には単位が表記されていると判別する。そして、単位表記が記述されており「欠陥なし」である旨を示す単位評価結果UNTを評価結果記録装置5へ出力する。
一方、図9に示した配列表MTX−5には、数字を含むデータ(762および1520)それぞれが記述されているセル内と、該データに対応して付与されている縦ラベルVLB(サイズ)内とのいずれにも、単位DB4が記憶している単位表記が記述されていない。そのため、単位評価装置3は、配列表MTX−5には単位が表記されていないと判別する。そして、単位表記が記述されておらず「欠陥あり」である旨を示す単位評価結果UNTを評価結果記録装置5へ出力する。
評価結果記録装置5は、単位評価装置3から出力されてきた単位評価結果UNTを用いて、ウィンドウ画面WNDのユーザビリティの評価結果RSTを生成する。図7に示したウィンドウCと図8に示したウィンドウDと図9に示したウィンドウEとに対する単位表記の有無の評価については、評価結果記録装置5は、例えば、図10に示す評価結果RSTを生成する。図10に示した例では、ウィンドウCについては単位が1行目の縦ラベルVLBに記述されているため、「欠陥なし」と判別されている。また、ウィンドウDについても、数字を含むデータが記述されているセルのなかに単位表記が記述されているため、「欠陥なし」と判別されている。一方、ウィンドウEについては単位表記が存在しないため、「欠陥あり」と判別されている。
以上説明したように、本発明の実施形態1によれば、ラベル評価装置1は、入力部11が評価者から指定を受付けたウィンドウ画面WNDに含まれている配列表MTX(表やリスト)のなかにラベルが記述されているかどうかを判別し、該判別結果を示すラベル評価結果LBLを出力する。
また、実施形態1によれば、単位評価装置3は、数字を含むデータがセルに記述されている場合、当該数字の単位が表記されているかどうかを示す単位評価結果UNTを出力する。
これにより、評価者は評価対象とするウィンドウ画面WNDを指定することで、当該ウィンドウ画面WNDのなかに示されている配列表MTXにおけるラベルの有無や、該配列表MTXのなかの数字を含むデータが記述されている場合に当該数字に対する単位表記の有無についてユーザビリティの評価を正確に行うことができる。
(実施形態2)
つぎに、実施形態2の評価システムについて説明する。
図11に示すように、実施形態2の評価システムの構成は、図1に示した構成要素に加えて配列表抽出装置7Aが含まれている点で、実施形態1の評価システムと異なる。
配列表抽出装置7Aは、表示されたウィンドウ画面WNDに含まれている空白部分(例えば、ブランク記号)に基づいて、ウィンドウ画面WNDから配列表MTXを抽出し、該配列表MTXをGUI情報DB2へ記憶させる。
配列表MTXを抽出する際、配列表抽出装置7Aは、表示されたウィンドウ画面WNDのなかで行方向または列方向に互いに一定間隔以上離れて隣接している文字列の組を、前記ラベルの候補または前記データの候補として決定する。
なお、配列表抽出装置7Aは、ウィンドウ画面WNDのなかの文字と文字との間の行方向または列方向における間隔が一定間隔未満である場合、当該文字は互いに1つの文字列を構成すると判別してもよい。また、ここでいう「文字列」は、1つ以上の文字で構成されるものを指す。
つぎに、配列表抽出装置7Aは、決定した組に含まれる文字列同士を互いに区切るために該文字列同士の間に罫線を引く。より具体的には、配列表抽出装置7Aは、決定した組に含まれる文字列同士の間に位置している空白部分(例えば、ブランク記号)を、該文字列それぞれを含むセル同士を互いに区切るための罫線の候補として決定する。
続いて、配列表抽出装置7Aは、罫線により行方向または列方向において区切られたセルが配列されている構造を有する仮配列表TNTを抽出する。つまり、仮配列表TNTは、決定した組に含まれる一方の文字列を含むセルと、該組に含まれる他方の文字列を含むセルとが、罫線の候補として決定した空白部分により行方向または列方向において区切られて配列されている構造を有するデータである。
その後、配列表抽出装置7Aは、抽出した仮配列表TNTのなかに、データが記述されておらず空白となっている「空白セルEMP」が存在するかどうかを判別する。なお、当該判別を行う場合、配列表抽出装置7Aは、抽出した仮配列表TNTのなかに、1行1列目のセル以外にも「空白セルEMP」が存在するかどうかを判別してもよい。これは、配列表MTXが、行方向と列方向とにセルがそれぞれ配列されていて、かつ、1行目における2列目以降および1列目における2行目以降それぞれからラベルが付与されている構造を有している場合に有効な手法である。
該判別の結果、仮配列表TNTのなかには空白セルEMPが存在しないと判別した場合、配列表抽出装置7Aは、抽出した仮配列表TNTを配列表MTXとして決定し、該配列表MTXをGUI情報DB2へ書込む。
一方、仮配列表TNTのなかに空白セルEMPが存在すると判別した場合、配列表抽出装置7Aは、仮配列表TNTのなかに存在する空白セルEMPの数を最小(例えば、「0」)とするように、罫線の候補とする空白部分(例えば、ブランク記号)を変更する。
なお、当該変更を行う場合、該変更に先立って決定した罫線の候補によってそれぞれ区切られたセルを変更する回数が最も小さくなるように、新たな罫線の候補を決定する。
さらに、一旦定めた罫線の候補によって区切られたセルの変更回数を最小とする場合には、新たな罫線の決定を行うのみに限らず、該空白セルが、該空白セルと行方向または列方向に隣接しているセルとの間の罫線を削除するようにしてもよい。
そして、セルの変更回数を最小に抑えつつ新たに決定した罫線の候補によってそれぞれセルが区切られた構造の仮配列表TNTをGUI情報DB2へ書込む。
次に、実施形態2の評価システムにおいて、配列表抽出装置7Aが配列表MTXを抽出する際の、具体的な適用例について説明する。
以下では、図12に示すウィンドウ画面WND(ウィンドウF)のなかから配列表MTXの抽出を行う場合を例に挙げて説明する。
図12に示したウィンドウFのなかには、罫線によって区切られてはいないものの行方向または列方向において一定間隔以上離れて隣接している文字列で構成されている表が存在する。
まず、配列表抽出装置7Aは、一定間隔以上離れて配置されている文字列の組を、ラベルの候補またはデータの候補として決定する。
続いて、配列表抽出装置7Aは、ラベルの候補またはデータの候補として決定した組に含まれる文字列同士の間に位置する空白部分を、図13に示す罫線の候補として決定する。
さらに、配列表抽出装置7Aは、決定した組に含まれる一方の文字列を含むセルと、該組に含まれる他方の文字列を含むセルとが、罫線の候補として決定した空白部分により行方向または列方向において区切られて配列されている構造を有するデータを、図13に示した仮配列表TNTとして抽出する。
その後、配列表抽出装置7Aは、抽出した仮配列表TNTのなかに、データが記述されておらず空白となっている空白セルEMPが存在するかどうかを判別する。
なお、空白セルEMPの有無の判別を行う場合、配列表抽出装置7Aは、抽出した仮配列表TNTのなかに、1行1列目のセル以外にも空白セルEMPが存在するかどうかを判別してもよい。
図13に示した例では、配列表抽出装置7Aは、1行1列目のセル以外には仮配列表TNTのなかに空白セルが存在しないと判別する。そのため、配列表抽出装置7Aは、抽出した仮配列表TNTを、配列表MTXとして決定する。そして、配列表抽出装置7Aは、決定した配列表MTXを、GUI情報DB2が記憶しているGUI情報21へ書込む。
すると、ラベル評価装置1は、図3に示したステップS11〜S14の処理を実行することにより、配列表抽出装置7Aがウィンドウ画面WNDから抽出した配列表MTXにおけるラベルの有無を評価する。
さらに、単位評価装置3は、図4に示したステップS21〜S22の処理を実行することにより、配列表抽出装置7Aがウィンドウ画面WNDから抽出した配列表MTXにおける単位表記の有無を評価する。
以上説明したように、実施形態2によれば、配列表抽出装置7Aは、ウィンドウ画面WNDのなかの行方向または列方向において一定間隔以上離れて隣接している文字列同士の間の空白部分を罫線の候補として決定する。続いて、配列表抽出装置7Aは、決定した組に含まれる一方の文字列を含むセルと、該組に含まれる他方の文字列を含むセルとが、罫線の候補として決定した空白部分により行方向または列方向において区切られて配列されている構造を有するデータを、仮配列表TNTとして抽出する。そして、抽出した仮配列表TNTのなかに空白セルEMPが存在しないと判別した場合、該仮配列表TNTを配列表MTXとしてGUI情報DB2へ書き込む。なお、配列表抽出装置7Aは、抽出した仮配列表TNTのなかに空白セルEMPが存在すると判別した場合、仮配列表TNTにおいて文字列を含まない空白セルEMPが存在しないように罫線の候補となる空白部分の新たな選択を繰り返し実行する。なお、新たに空白部分を選択する場合、該選択に先立って決定した罫線の候補によってそれぞれ区切られたセルを変更する回数が最も小さくなるように、新たな罫線の候補を決定する。
これにより、ウィンドウ画面WNDのなかの各データ同士が罫線によって区切られていない場合でも、当該ウィンドウ画面WNDから配列表MTXを抽出した上で、該抽出した配列表MTXにおけるラベルや単位表記の有無を評価することが可能となる。
(実施形態3)
次に、実施形態3の評価システムについて説明する。
図14に示すように、実施形態3の評価システムの構成は、図1に示した構成要素に加えて配列表抽出装置7Bが含まれている点で、実施形態1の評価システムと異なる。
配列表抽出装置7Bは、ウィンドウ画面WNDのなかのデータが存在するセル内の位置に基づいて当該ウィンドウ画面WNDから配列表MTXを抽出し、該配列表MTXをGUI情報DB2へ記憶させる。
配列表MTXを抽出する際、配列表抽出装置7Bは、まず、表示されたウィンドウ画面WNDにおいて罫線を含むことなく行方向または列方向に互いに一定間隔以上離れて隣接している文字列の組を、配列表MTXを構成するラベルの候補またはデータの候補として決定する。
続いて、配列表抽出装置7Bは、決定した組の一方の文字列が記述されるセルの大きさが最大となるように該決定した組に含まれる文字列同士の間を区切る。
つまり、配列表抽出装置7Bは、決定した組の一方の文字列を「配置可能な矩形の領域R3」を、該組の他方の文字列の位置に基づいて決定する。
この説明例では、配列表抽出装置7Bは、データの候補として決定した文字列が記述されているセル内で左上に位置している場合の当該セルの領域R1と、当該データの候補として決定した文字列が記述されているセル内で右下に位置している場合の当該セルの領域R2とを決定する。なお、「配置可能な矩形の領域R3」を決定する際、セルと文字列との相対位置は、「左上と右下」に限らず、「右上と左下」でもよい。
そして、配列表抽出装置7Bは、決定した領域R1およびR2により定まる最大のセル位置に基づいて、当該データの候補として決定した文字列を含むセルに対応して付与されたラベルが記述されているべき領域を特定する。
この説明例では、配列表抽出装置7Bは、決定した領域R1およびR2を構成する矩形が有する辺に基づいて、当該データの候補として決定した文字列を含むセルに対応して付与されたラベルが記述されているべき領域を特定する。
さらに、配列表抽出装置7Bは、特定したラベルが記述されているべき領域のなかにその全体が含まれている文字列をラベルとして決定する。
すると、配列表抽出装置7Bは、一方の文字列および該一方の文字列が配置されている行または列に配列されている各セルが含む文字列に対応して、決定したラベルが付与されている構造を有するデータを、仮配列表TNTとして抽出する。そして、抽出した仮配列表TNTを配列表MTXとしてGUI情報DB2へ書込む。
なお、以下では、セルが配列された構造を有する配列表MTXのうちから、横ラベルHLBおよび縦ラベルVLBが記述される領域を除いた残りの領域を「データ領域」という。
評価対象のウィンドウ画面WNDのなかに示されている画像において、配列表抽出装置7Bは、データ領域のデータの候補がセル内の左上の位置に記述されている場合の該セルの領域と、当該データがセル内の右下の位置に記述されている場合の該セルの領域とを決定する。
続いて、配列表抽出装置7Bは、データ領域の1行目のデータの候補に対応して付与されている横ラベルHLBと、データ領域の1列目のデータの候補に対応して付与されている縦ラベルVLBとを特定するため、データ領域の1行1列のデータが含まれるセル領域を特定する。
図15に示したウィンドウFの例では、図17に示すように、配列表抽出装置7Bは、データ領域における1行1列(配列表MTX全体では2行2列)のセルに記述されているデータの候補(「11」)がセルの左上に偏って位置している場合における、データ領域の1行1列のデータが記述されているセルの領域R1を特定する。この場合、配列表抽出装置7Bは、当該1行1列のデータの候補を囲むうちで面積が最小である矩形の最小領域MNR−1−1の上辺を含む直線と、当該矩形の最小領域MNR−1−1の左辺を含む直線と、データ領域の1行2列のデータ(「12」)を囲むうちで面積が最小の矩形の領域MNR−1−2の左辺を含む直線と、データ領域の2行1列のデータ(「21」)を囲む矩形領域の上辺を含む直線とで囲まれる領域を、データ領域の1行1列のデータが記述されているセルの領域R1として決定する。
また、図18に示すように、配列表抽出装置7Bは、図15に示したウィンドウFにおいてデータ領域の1行1列のデータの候補(「11」)がセルの右下に偏って位置している場合における、当該1行1列のデータの候補が記述されているセルの領域R2を特定する。
この場合、領域R2の下辺EG1は、データ領域の1行1列のデータの候補(「11」)を囲む最小領域MNR−1−1の下辺の右側の端点を、当該下辺EG1の右側の端点として有し、かつ、該最小領域MNR−1−1の右辺RS−1−1とデータ領域の1行2列のデータ(「12」)を囲む最小領域MNR−1−2の右辺RS−1−2との間の距離を長さとして有する直線となる。
また、当該領域R2の右辺EG2は、最小領域MNR−1−1の右辺の下側の端点を、当該右辺の下側の端点として有し、かつ、当該最小領域MNR−1−1の下辺とデータ領域の2行1列のデータの候補(「21」)を囲む最小領域MNR−2−1の下辺DS−2−1との間の距離を長さとする直線となる。
そして、このような下辺EG1および右辺EG2と、当該下辺EG1および該右辺EG2それぞれに平行な上辺および左辺とが構成する矩形で囲まれる領域R2が、データ領域の1行1列のデータの候補が記述されているセルの領域となる。
従って、配列表抽出装置7Bは、データ領域の1行1列目のデータが記述されているセルの領域R3として、領域R1の下辺を含む直線と、領域R1の右辺を含む直線と、領域R2の上辺を含む直線と、領域R2の左辺を含む直線とで囲まれた領域を特定する。
これにより、データ領域の1行目(1行1列および1行2列)のデータ(「11」および「12」)に対応して付与されている横ラベルHLBが含まれる領域H1は、領域R3の上辺を含む直線より下方に位置するとともに、当該領域R3の下辺を含む直線よりも上方に位置している。さらに、データ領域の1行目のデータ(「11」および「12」)に対応する横ラベルHLBが含まれる領域H1は、データ領域の1行1列目のデータ(「11」)を囲む最小領域MNR−1−1の左辺よりも左側の領域となる。
そして、配列表抽出装置7Bは、領域H1のなかに文字列を囲む最小領域全体が含まれているような当該文字列(図19の例では「横ラベル1」)を、横ラベルHLBとして決定する。
また、図19に示したウィンドウGにおいて、1列目のデータに対応して付与されている縦ラベルVLBを含んでいるセルの領域V1は、領域R3の左辺を含む直線よりも右側に位置しているとともに、該領域R3の右辺を含む直線よりも左側に位置している。さらに、1列目のデータに対応する縦ラベルVLBを含んでいるセルの領域V1は、1行1列のデータ(「11」)を囲む最小領域MNR−1−1の上辺を含む直線よりも上側の領域となる。
そして、配列表抽出装置7Bは、領域V1のなかに文字列を囲む最小領域全体が含まれているような当該文字列(図19の例では「縦ラベル1」)を、縦ラベルHLBとして決定する。
続いて、配列表抽出装置7Bは、データ領域のその他の各データ(「12」、「21」、「22」)に対しても上述した処理を実行する。そして、配列表抽出装置7Bは、各データ(「12」、「21」、「22」)と隣接する他のデータとの位置関係に基づいて、該データ(「12」、「21」、「22」)を含むセルの領域を確定する。さらに、配列表抽出装置7Bは、各データ(「12」、「21」、「22」)に対応して付与されているラベルを含むセル領域と、ラベルとを特定する。
次に、実施形態3の評価システムにおいて、配列表抽出装置7Bが配列表MTXの抽出を行う際の、具体的な適用例について説明する。
以下では、図15に示すウィンドウ画面WND(ウィンドウG)のなかから配列表MTXの抽出を行う場合を例に挙げて説明する。
図15に示したウィンドウGのなかには、罫線によって区切られてはいないものの行方向または列方向において一定間隔以上離れて隣接している文字列が存在する。
なお、実施形態2の配列表抽出装置7Aにより、ラベルの候補やデータの候補の間に位置する空白部分に基づいて、図15に示したウィンドウGから配列表を抽出した場合、図16に示すような配列表MTX−BRKが抽出される。しかしながら、この場合は、「横ラベル2」と「ラベル2補足」との両方を2行目に対して横方向に並べられたデータのラベルの候補として決定するのが好適であり、空白部分を単純に罫線の候補として決定する場合、このような誤りが発生してしまうおそれがある。
一方、実施形態3の配列表抽出装置7Bは、データの候補として決定した文字列が記述されているセル内で左上に位置している場合の当該セルの領域R1と、当該データの候補として決定した文字列が記述されているセル内で右下に位置している場合の当該セルの領域R2とを決定する。そして、決定した領域R1およびR2に基づいて、当該データの候補として決定した文字列を含むセルに対応して付与されたラベルが記述されているセル領域を特定する。さらに、該特定したラベルが記述されているセル領域のなかに位置している文字列を、ラベルとして特定する。
図17に示すウィンドウ画面WNDにおいては、1行1列目のデータがセルの左上に記述されている場合の矩形のセルの領域R1を囲んだものである。
図18に示すウィンドウ画面WNDにおいては、1行1列目のデータがセルの右下にあるときの矩形のセルの領域R2を囲んだものである。そのため、配列表抽出装置7Bは、図17および図18に示したウィンドウ画面WNDにおいては、横ラベルHLBを含むセル領域として、図19に示した領域H1を決定する。その結果、配列表抽出装置7Bは、データ領域の1行目(図18の例では、1行1列〜1行2列)に配列されたデータに対応して付与されている横ラベルHLBとして、「横ラベル1」を特定する。
また、配列表抽出装置7Bは、図17および図18に示したウィンドウ画面WNDにおいては、縦ラベルVLBを含むセル領域として、図19に示した領域V1を決定する。その結果、配列表抽出装置7Bは、データ領域の1列目(図18の例では、1行1列〜2行1列)に配列されたデータに対応して付与されている縦ラベルVLBとして、「縦ラベル1」を特定する。
さらに、配列表抽出装置7Bは、図20に示す領域H2を、データ領域の2行目(2行1列〜2行2列)に配列されているデータに対応する横ラベルHLBを含むセル領域として決定する。その結果、配列表抽出装置7Bは、データ2行目(図20の例では、2行1列〜2行2列)のデータの候補に対応して付与されている横ラベルHLBとして、「横ラベル2」と「ラベル2補足」とを抽出する。
該抽出の結果、実施形態3の「配列表抽出装置7Bは、図21に示すような適正な構成を有する配列表MTX−POSをウィンドウGのなかから抽出する。そして、配列表抽出装置7Bは、抽出した配列表MTX−POSをGUI情報DB2へ書込む。
すると、ラベル評価装置1は、図3に示したステップS11〜S14の処理を実行することにより、配列表抽出装置7Bがウィンドウ画面WNDから抽出した配列表MTX−POSにおけるラベルの有無を評価する。
さらに、単位評価装置3は、図4に示したステップS21〜S22の処理を実行することにより、配列表抽出装置7Bがウィンドウ画面WNDから抽出した配列表MTX−POSにおける単位表記の有無を評価する。
以上説明したように、実施形態3によれば、配列表抽出装置7Bは、データの候補として決定した文字列が記述されているセル内で左上に位置している場合の当該セルの領域R1と、当該データの候補として決定した文字列が記述されているセル内で右下に位置している場合の当該セルの領域R2とを決定する。そして、配列表抽出装置7Bは、決定した領域R1およびR2に基づいて、当該データの候補として決定した文字列を含むセルに対応して付与されたラベルが記述されているセル領域を特定する。さらに、配列表抽出装置7Bは、該特定したラベルが記述されているセル領域のなかに位置している文字列を、ラベルとして特定する。
これにより、ウィンドウ画面WNDのなかの各データ同士が罫線によって区切られていない場合に、当該ウィンドウ画面WNDから配列表MTXを抽出して当該配列表MTXにおけるラベルや単位表記の有無を評価する際に、単純に空白部分を罫線の候補として決定し、本来同一のセルを別々のセルとして抽出されるという誤りを削減して、データと当該データに付与されているべきラベルとが正しく対応付けされた配列表MTXを抽出することができる。
なお、本発明においては、ラベル有無評価装置1内の処理は上述の専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムをラベル有無評価装置1にて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムをラベル有無評価装置1に読み込ませ、実行するものであってもよい。ラベル有無評価装置1にて読取可能な記録媒体とは、フロッピーディスク(登録商標)、光磁気ディスク、DVD、CDなどの移設可能な記録媒体の他、ラベル有無評価装置1に内蔵されたHDD等を指す。この記録媒体に記録されたプログラムは、例えば、ラベル有無評価装置1が有する制御部(図示せず)にて読み込まれ、制御部(図示せず)の制御によって、上述したものと同様の処理が行われる。
ここで、評価装置1が有する制御部(図示せず)は、プログラムが記録された記録媒体から読み込まれたプログラムを実行するコンピュータとして動作するものである。なお、上述したプログラムは、単位表記有無評価装置3、配列表抽出装置7Aおよび7Bそれぞれに対しても同様に適用可能である。
以上、実施形態1〜3を参照して本発明を説明したが、本発明は上記実施形態1〜3に限定されるものではない。本発明の構成や詳細には、本発明の要旨を逸脱しない範囲で当業者が理解し得る各種の変形が可能である。