実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
以下の説明では、「AAAテーブル」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「AAAテーブル」を「AAA情報」と呼ぶことができる。
また、以下の説明では、「記憶部」は、1以上の主記憶装置(メモリ)又はストレージを含む。少なくとも1つの主記憶装置は、揮発性メモリであってもよいし不揮発性メモリであってもよい。記憶部は、主に、プロセッサ部による処理の際に使用される。
また、以下の説明では、「プロセッサ部」は、1以上のプロセッサを含む。少なくとも1つのプロセッサは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサである。1以上のプロセッサの各々は、シングルコアでもよいしマルチコアでもよい。プロセッサは、処理の一部または全部を行うハードウェア回路を含んでもよい。
図1は、一実施形態に係る計算機システムの全体構成図である。
計算機システム1は、データレイクサーバ2と、複数のデータ収集サーバ3、4と、分析アプリ実行サーバ45、データ選定システムの一例としての分析管理サーバ10とを備える。分析アプリサーバ5は、ネットワーク6を介してデータレイクサーバ2と接続されている。データレイクサーバ2は、ネットワーク8を介して分析管理サーバ10と接続され、ネットワーク7を介して、複数のデータ収集サーバ3,4と接続されている。ネットワーク6,7,8は、例えば、有線LAN(Local Area Network)、無線LAN、インターネットなどである。なお、ネットワーク6,7,8の少なくとも2つを、1つのネットワークとしてもよい。
分析アプリ実行サーバ5は、例えば、記憶部や、プロセッサ部を有する計算機であり、各種分析を実行する分析アプリケーション(分析アプリ)をプロセッサ部が実行することにより、分析対象に対する分析処理を実行する。分析アプリとしては、例えば、検査結果の不良が何の原因によるものかを分析する不良要因分析を行う分析アプリがある。
分析アプリは、アプリケーション用に用意された所定形式のデータ(例えば、後述する不良要因分析テーブル24)を入力として、分析処理を行うことができる。例えば、不良要因分析の分析アプリであれば、分析アプリ実行サーバ5は、データレイクサーバ2から不良要因分析テーブル24を受け取り、不良要因分析を行う。ここで、工場A(第1客体の一例)においては、不良要因分析テーブル24をと、工場Aにおける複数のテーブルとの対応関係が既に認識され、工場Aのテーブルに基づいて、不良要因分析テーブル24を作成することができるようになっている。本実施形態では、工場B(第2客体の一例)と、工場Aとのテーブルの構成等が異なっている場合において、この分析アプリを工場Bのテーブル等を用いても適用できるようにするために、工場Bのテーブルと不良要因分析テーブル24との対応関係を特定する処理を行う。
工場Aデータ収集サーバ3は、分析アプリによる分析の対象とされている適用元の工場A(第1客体)のデータを収集するサーバであり、例えば、記憶部の一例のストレージ31と、プロセッサ部(図示せず)とを備える計算機により構成される。ストレージ31は、工場Aテーブル群32と、工場Aカタログ群(第1カタログ群)33とを格納する。工場Aテーブル群33は、例えば、工場Aにおける各種情報を管理するためのデータベースの複数のテーブルであり、例えば、部品に関するデータを格納する部品テーブル34と、センサから出力されたデータを格納する対象テーブルの一例としてのセンサデータテーブル35と、検査結果のデータを格納する検査結果テーブル36と、工場設備に関する情報を管理する工場設備テーブル37と、工場Aの作業者に関する情報を管理する作業者テーブル38と、工場Aにおけるテーブルのデータと分析アプリ実行サーバ5における不良要因分析に使用する不良要因分析テーブル24との対応関係を示す適用元分析データ対応関係テーブル(第1対応関係情報の一例)39とを含む。工場Aカタログ群33は、工場Aテーブル群32の各テーブルの構成等を示す複数のカタログ(メタ情報の一例)である。
工場Bデータ収集サーバ4は、分析アプリによる分析を新たに適用する適用先の工場B(第2客体)のデータを収集するサーバであり、例えば、記憶部の一例のストレージ41と、プロセッサ部(図示せず)とを備える計算機により構成される。ストレージ41は、工場Bテーブル群42と、工場Bカタログ群(第2カタログ群)43とを格納する。工場Bテーブル群43は、例えば、工場Bにおける各種情報を管理するためのデータベースの複数のテーブルであり、例えば、部品に関するデータを格納する部品テーブル44と、センサから出力されたデータを格納するセンサデータテーブル45と、検査結果のデータを格納する検査結果テーブル46と、工場設備に関する情報を管理する工場設備テーブル47と、工場Bの作業者に関する情報を管理する作業者テーブル48と、作業区を管理するための作業区テーブル49とを含む。工場Bカタログ群43は、工場Bテーブル群42の各テーブルの構成等を示すメタ情報である複数のカタログである。
データレイクサーバ2は、例えば、汎用的な1以上のサーバ装置等で構成され各種情報を格納して管理する。データレイクサーバ2は、ストレージ20を有する。ストレージ20は、テーブル群22と、カタログ群21とを格納する。
テーブル群22は、分析アプリテーブル23と、アプリケーション用テーブルの一例である不良要因分析テーブル24と、工場Aテーブル群25と、工場Bテーブル群26とを含む。工場Aテーブル群25は、工場Aデータ収集サーバ3の工場Aテーブル群32から取得されたテーブル群であり、工場Aテーブル群32の全てのテーブルを含んでいてもよい。工場Bテーブル群26は、工場Bデータ収集サーバ4の工場Bテーブル群42から取得されたテーブル群であり、工場Bテーブル群42の全てのテーブルを含んでいてもよい。
カタログ群21は、分析アプリカタログ27と、工場Aカタログ群28と、工場Bカタログ群29とを含む。分析アプリカタログ27は、分析アプリテーブル23の構成等を示すカタログ(メタ情報の一例)である。工場Aカタログ群28は、工場Aデータ収集サーバ3の工場Aカタログ群33から取得されたカタログ群であり、工場Aテーブル群33の全てのカタログを含んでいてもよい。工場Bカタログ群29は、工場Bデータ収集サーバ4の工場Bカタログ群43から取得されたカタログ群であり、工場Bテーブル群43の全てのカタログを含んでいてもよい。
分析管理サーバ10は、1以上のCPU11と、記憶部の一例としてのメモリ12及びストレージ13と、通信インターフェース(IF)17と、I/Oインターフェース(IF)18とを備える。
通信IF17は、例えば、NIC(Network Interface Card)であり、ネットワーク8を介して、他の装置(データレイクサーバ2等)と通信する。I/O IF18は、例えば、ディスプレイ51等の表示装置、キーボード52、マウス53等の入力装置との間でデータの入出力を行う。
CPU11は、メモリ12及び/又はストレージ13に格納されているプログラムに従って各種処理を実行する。
メモリ12は、例えば、RAM(RANDOM ACCESS MEMORY)であり、CPU11で実行されるプログラム(例えば、分析データ選定プログラム12a)や、必要な情報を記憶する。
ストレージ13は、例えば、ハードディスクやフラッシュメモリなどであり、CPU11で実行されるプログラムや、CPU11に利用されるデータを記憶する。本実施形態では、ストレージ13は、カタログ群14と、管理テーブル15と、テーブル群16とを記憶する。カタログ群14は、データレイクサーバ2のカタログ群21のうちの処理に必要なカタログ群である。本実施形態では、カタログ群14は、例えば、工場Bカタログ群43の全てのカタログを含んでいる。なお、本実施形態では、工場Aデータ収集サーバ3(又は工場Bデータ収集サーバ4)、データレイクサーバ2、分析管理サーバ10のストレージ13のいずれに格納されているものであっても、同じ内容のカタログについては、便宜的に同一の符号を付すこととする。
管理テーブル15は、処理により作成したテーブルである。管理テーブル15は、未検出対応関係テーブル151と、検出済対応関係テーブル152と、抽出対応関係テーブル153と、未解決対応関係テーブル154とを含む(図8参照)。テーブル群16は、データレイクサーバ2のテーブル群22のうちの処理に必要なテーブル群である。本実施形態では、テーブル群16は、適用元分析データ対応関係テーブル39を含む。なお、本実施形態では、工場Aデータ収集サーバ3(又は工場Bデータ収集サーバ4)、データレイクサーバ2、分析管理サーバ10のストレージ13のいずれに格納されているものであっても、同じ内容のテーブルについては、便宜的に同一の符号を付すこととする。
図2は、一実施形態に係る分析管理サーバの機能構成図である。
分析管理サーバ10では、CPU11が分析データ選定プログラム12aを実行することにより、対象分析アプリ選択部121と、分析データカラム読込部122と、対応データカラム抽出部123と、データ対応関係選定部124と、結果表示処理部125とが形成される。結果表示処理部125は、対応関係変更表示部126と、対応関係図表示部127と、結果修正部128とを含む。
対象分析アプリ選択部121は、分析アプリテーブル23の中からユーザによる対象とする分析アプリの選択を受け付ける。
分析データカラム読込部122は、分析アプリテーブル23から対象分析アプリに対応するエントリにおける接続対象とするカラムを読み込む。また、分析データカラム読込部122は、適用元分析データ対応関係テーブル39を読み込む。
対応データカラム抽出部123は、適用先(工場B)のカタログ(適用先カタログ:工場Bカタログ群29に対応)141を取得し、適用元分析データ対応関係テーブル39の中で適用先に同一の対応関係を有するカタログが存在するカタログと、存在しないカタログを抽出し、また、その存在しないカタログを経由するために適用先では接続されなくなるカタログを抽出し、抽出結果に基づいて、未検出対応関係テーブル151と、検出済対応関係テーブル152とを生成する。
データ対応関係選定部124は、未検出対応関係テーブル151に登録された、存在しないカタログ又は接続されないカタログに基づいて、適用先カタログ141を探索することにより、不良要因分析テーブル24のカラムに接続可能なテーブルのカタログの対応関係を抽出し、抽出した対応関係を抽出対応関係テーブル153に出力する。
結果表示処理部125では、未検出対応関係テーブル151と、検出済対応関係テーブル152と、抽出対応関係テーブル153とに含まれる情報とに基づく結果をディスプレイ51に結果確認画面1401(図14参照)として出力する。対応関係変更表示部126は、接続可能なテーブル(カタログ)の対応関係を抽出する前における不良要因分析テーブル24のカラムとテーブルのデータとの対応関係と、抽出した対応関係を含む不良要因分析テーブル24のカラムとテーブルとの対応関係とを表示する。また、対応関係図表示部127は、不良要因分析テーブル24のカラムとテーブルのデータとの対応関係を示す図、例えば、不良要因分析テーブル24のカラムと、対応関係を有するテーブルのカタログとの接続関係を示す図を表示出力する。結果修正部128は、検出済対応関係テーブル152及び抽出対応関係テーブル153に基づく抽出分析データ対応関係テーブル155(図9参照)を出力する。また、結果修正部128は、ユーザから、不良要因分析テーブル24のカラムとテーブルのデータとの対応関係の修正の指示を受け付け、指示に応じて、不良要因分析テーブル24のカラムとテーブルのデータとの対応関係を修正し、抽出分析データ対応関係テーブル155を修正する。なお、結果表示処理部125は、抽出分析データ対応関係テーブル155に基づいて、工場Bテーブル群26のテーブルから工場B用の不良要因分析テーブル24を作成するようにしてもよい。さらに、結果表示処理部125は、作成した工場B用の不良要因分析テーブル24を分析アプリ実行サーバ5に送信して、不良要因分析テーブル24を用いた分析アプリによる分析処理を実行させるようにしてもよい。
図3は、一実施形態に係る工場Aに関するテーブル及びカタログと、分析アプリのテーブル及びカタログと、不良要因分析テーブルとの構成図である。
分析アプリテーブル23は、分析アプリ実行サーバ5が提供するアプリ毎のエントリを格納する。分析アプリテーブル23のエントリは、アプリIDと、アプリ名と、分析テーブルと、説明カラムと、目的カラムとのカラムを有する。アプリIDには、アプリのIDが格納される。アプリ名には、アプリの名前が格納される。分析テーブルには、分析アプリが分析対象とするテーブルの名称が格納される。説明カラムには、分析アプリの入力となるデータのうちで、原因に関わるデータについてのカラムのカラム名が格納される。目的カラムには、分析アプリの入力となるデータのうちで、結果に関わるデータについてのカラムのカラム名が格納される。すなわち、分析アプリは、目的カラムのカラムについて、目的カラム以外の説明カラムのカラムとの関係を分析する。なお、分析アプリテーブル23に、説明カラムと、目的カラムとを含めていたが、例えば、処理対象が分析テーブルの全データや、特定のデータに決まっている場合には、これらカラムを含めなくてもよい。
分析アプリカタログ27は、分析アプリテーブル23を構成するカラム名と、それらのカラムの属性とを含む。
不良要因分析テーブル24は、生産された商品ごとのエントリが格納される。不良要因分析テーブル24のエントリは、商品IDと、工場IDと、工程IDと、装置IDと、製造日時(製造日、工程開始時刻、工程完了時刻)と、センサデータテーブルIDと、作業者IDと、検査結果とのカラムを有する。商品IDには、商品のID(商品ID)が格納される。例えば、商品IDは、同じ商品であれば、個体ごとではなく、共通に振られるものとしている。工場IDには、エントリに対応する商品を製造した工場のIDが格納される。工程IDには、エントリに対応する商品を製造した工程のIDが格納される。製造日時には、エントリに対応する商品の製造日時(製造日、工程開始時刻、工程完了時刻)が格納される。センサデータテーブルIDには、エントリに対応する商品の製造時におけるセンサの情報を格納しているセンサデータテーブルを示すIDが格納される。なお、本実施形態では、センサデータテーブルのIDを格納し、実際のセンサデータを参照可能としているが、不良要因分析テーブル24にセンサデータ自体を格納するようにしてもよい。作業者IDには、エントリに対応する商品の製造の作業者のIDが格納される。検査結果には、エントリに対応する商品の検査結果が格納される。
センサデータテーブル35は、センサデータを格納するテーブルである。各センサデータテーブル35は、センサデータテーブルIDにより識別可能に管理されている。センサデータテーブル35のエントリは、装置IDと、部品IDと、センサ種別と、測定時刻と、センサデータとのカラムを有する。装置IDには、エントリに対応するセンサデータが検出された装置の装置IDが格納される。部品IDには、センサデータが検出された部品の部品IDが格納される。センサ種別には、センサデータの種別が格納される。測定時刻には、センサデータが測定された時刻が格納される。センサデータには、測定されたセンサデータが格納される。
センサデータカタログ301は、センサデータテーブル35を構成するカラム名と、それらのカラムの属性と、単位と、周期と、種別とを含む。なお、単位、周期、及び種別は、センサデータテーブル35には格納されていないセンサについてのメタデータ情報(オントロジ等)が格納される。
工場設備カタログ302は、工場設備テーブル37を構成するカラム名と、それらのカラム属性とを含む。工場設備テーブル37を構成するカラムとしては、例えば、工場IDと、工程IDと、作業区IDと、設備IDと、装置IDとがある。
検査結果カタログ303は、検査結果テーブル36を構成するカラム名と、それらのカラム属性とを含む。検査結果テーブル36を構成するカラムとしては、例えば、商品IDと、製造日時と、検査結果と、不良原因とがある。
作業者カタログ305は、作業者テーブル38を構成するカラム名と、それらのカラム属性とを含む。作業者テーブル38を構成するカラムとしては、例えば、装置IDと、作業者IDと、作成日時とがある。
部品カタログ306は、部品テーブル34を構成するカラム名と、それらのカラム属性とを含む。部品テーブル34を構成するカラムとしては、例えば、商品IDと、商品名と、部品IDとがある。
図4は、一実施形態に係る工場Aに関するテーブル及びカタログと、不良要因分析テーブルとの対応関係を示す図である。
センサデータカタログ301の部品IDは、部品カタログ306の部品IDに接続でき(対応関係があり)、部品カタログ306の商品IDが、不良要因分析テーブル24の商品IDに接続できることがわかる。このことは、センサデータテーブル35の部品IDをキーとして、部品テーブル34を検索し、検索結果のエントリの商品IDの値を不良要因分析テーブル24の商品IDの値とすることができることを意味している。
また、センサデータカタログ301の装置IDは、工場設備カタログ302の装置IDと接続でき、工場設備カタログ302の工場ID、工程ID、及び装置IDが、不良要因分析テーブル24の工場ID、工程ID、及び装置IDに対応することがわかる。このことは、センサデータテーブル35の装置IDをキーとして、工場設備テーブル37を検索し、検索結果のエントリの工場ID、工程ID、及び装置IDの値を不良要因分析テーブル24の工場ID、工程ID、及び装置IDの値とすることができることを意味している。
また、センサデータカタログ301の部品IDは、部品カタログ306の部品IDに接続でき(対応関係があり)、部品カタログ306の商品IDは、検査結果カタログ303の商品IDに接続でき、検査結果カタログ303の製造日時及び検査結果は、不良要因分析テーブル24の製造日時(製造日、工程開始時刻、工程完了時刻)及び検査結果に接続できることがわかる。このことは、センサデータテーブル35の部品IDの値をキーとして、部品テーブル34を検索し、検索結果のエントリの商品IDの値をキーとして、検索結果テーブル36を検索し、検索結果のエントリの製造日時及び検索結果の値を不良要因分析テーブル24の製造日時(製造日、工程開始時刻、工程完了時刻)と検査結果の値とすることができることを意味している。
また、センサデータカタログ301の装置IDは、不良要因分析テーブル24の装置IDに接続でき、センサデータカタログ301の測定時刻は、不良要因分析テーブル24の製造日時に対応付けられることがわかる。測定時刻が、製造日時の工程開始時刻と工程完了時刻との間であれば対応づけられる。このことは、センサデータテーブル35における装置ID及び測定時刻をキーとして、センサデータテーブル35の値を不良要因分析テーブル24の値とすることができることを意味している。
また、センサデータテーブル35のテーブルのID(例えば、X008-3131)を不良要因分析テーブル24のセンサデータテーブルIDの値とすることができることを意味している。
また、センサデータカタログ301の装置IDは、工場設備カタログ302の装置IDと接続でき、工場設備カタログ302の装置IDは、作業者カタログ305の装置IDと接続でき、作業者カタログ305の作業者IDは、不良要因分析テーブル24の作業者IDと接続できることがわかる。このことは、センサデータテーブル35の装置IDをキーとして、工場設備テーブル37を検索し、検索結果のエントリの装置IDをキーとして、作業者テーブル38を検索し、検索結果のエントリの作業者IDの値を不良要因分析テーブル24の作業者IDの値とすることができることを意味している。
図5は、一実施形態に係る工場Aの適用元分析データ対応関係テーブルの構成図である。図5において、Cは、カタログを示し、Tは、テーブルを示す。
適用元分析データ対応関係テーブル39は、適用元(図5では、工場A)でのセンサデータテーブル35と、分析データ(不良要因分析テーブル24)との対応関係、すなわち、センサデータテーブル35から不良要因分析テーブル24を生成するために利用する対応関係を示している。
適用元分析データ対応関係テーブル39は、具体的には、図4に示すカタログ、テーブル等のそれぞれの対応関係を示すエントリを含む。エントリは、接続元(接続元となるカタログ名やテーブル名)と、接続先(接続先となるカタログ名やテーブル名)と、それらを結合する結合キー(カラム名)とを含む。
適用元分析データ対応関係テーブル39は、カタログ、テーブルの構成に基づいて、システムにより設定されてもよく、ユーザにより設定されてもよい。
図6は、一実施形態に係る工場Bに関するテーブル及びカタログと、分析アプリのテーブル及びカタログの構成図である。なお、図4に示すテーブル及びカタログと同一のものは、同じ符号を付して重複する説明を省略する。
センサデータテーブル45は、工場Bにおけるセンサデータを格納するテーブルである。各センサデータテーブル45は、センサデータテーブルIDにより識別可能に管理されている。センサデータテーブル45のエントリは、装置IDと、部品IDと、センサ種別と、測定時刻と、センサデータとのカラムを有する。装置IDには、エントリに対応するセンサデータが検出された装置の装置IDが格納される。部品IDには、センサデータが検出された部品の部品IDが格納される。センサ種別には、センサデータの種別が格納される。測定時刻には、センサデータが測定された時刻が格納される。センサデータには、測定されたセンサデータが格納される。
センサデータカタログ401は、センサデータテーブル45を構成するカラム名と、それらのカラムの属性と、単位と、周期と、種別とを含む。なお、単位、周期、及び種別は、センサデータテーブル45には格納されていないセンサについてのメタデータ情報(オントロジ等)が格納される。
工場設備カタログ402は、工場設備テーブル47を構成するカラム名と、それらのカラム属性とを含む。工場設備テーブル47を構成するカラムとしては、例えば、工場IDと、工程IDと、作業区IDと、設備IDと、装置IDとがある。
検査結果カタログ403は、検査結果テーブル46を構成するカラム名と、それらのカラム属性とを含む。検査結果テーブル46を構成するカラムとしては、例えば、商品IDと、製造日時と、検査結果と、不良原因とがある。
作業者カタログ405は、作業者テーブル48を構成するカラム名と、それらのカラム属性とを含む。作業者テーブル48を構成するカラムとしては、例えば、作業指示IDと、作業者IDと、作成日時とがある。本実施形態では、作業者テーブル48は、工場Aの作業者テーブル38とは、カラム構成が異なっている。
部品カタログ406は、部品テーブル44を構成するカラム名と、それらのカラム属性とを含む。部品テーブル44を構成するカラムとしては、例えば、商品IDと、商品名と、部品IDとがある。
作業区カタログ407は、作業区テーブル49を構成するカラム名と、それらのカラム属性とを含む。作業区テーブル49を構成するカラムとしては、例えば、作業指示IDと、作業区IDと、着手日時と、数量と、生産実績と、装置IDとがある。本実施形態では、工場Aには、作業区テーブル49と同様な構成のテーブルは存在しない。
図7は、一実施形態に係る工場Bに関するテーブル及びカタログと、不良要因分析テーブルとの対応関係を示す図である。なお、図7に示す実線の矢印は、後述する処理により、適用元分析データ対応関係テーブル39により特定された対応関係を示し、破線の矢印は、後述する処理により、工場Bのカタログのデータに基づいて抽出された対応関係を示す。
センサデータカタログ401の部品IDは、部品カタログ406の部品IDに接続でき(対応関係があり)、部品カタログ406の商品IDが、不良要因分析テーブル24の商品IDに接続できることがわかる。このことは、センサデータテーブル45の部品IDをキーとして、部品テーブル44を検索し、検索結果のエントリの商品IDの値を不良要因分析テーブル24の商品IDの値とすることができることを意味している。
また、センサデータカタログ401の装置IDは、工場設備カタログ402の装置IDと接続でき、工場設備カタログ402の工場ID、工程ID、及び装置IDが、不良要因分析テーブル24の工場ID、工程ID、及び装置IDに対応することがわかる。このことは、センサデータテーブル45の装置IDをキーとして、工場設備テーブル47を検索し、検索結果のエントリの工場ID、工程ID、及び装置IDの値を不良要因分析テーブル24の工場ID、工程ID、及び装置IDの値とすることができることを意味している。
また、センサデータカタログ401の部品IDは、部品カタログ406の部品IDに接続でき(対応関係があり)、部品カタログ406の商品IDは、検査結果カタログ403の商品IDに接続でき、検査結果カタログ403の製造日時及び検査結果は、不良要因分析テーブル24の製造日時(製造日、工程開始時刻、工程完了時刻)及び検査結果に接続できることがわかる。このことは、センサデータテーブル45の部品IDの値をキーとして、部品カタログ44を検索し、検索結果のエントリの商品IDの値をキーとして、検索結果テーブル46を検索し、検索結果のエントリの製造日時及び検索結果の値を不良要因分析テーブル24の製造日時(製造日、工程開始時刻、工程完了時刻)と検査結果の値とすることができることを意味している。
また、センサデータテーブル45のテーブルのID(例えば、Y008-6770)を不良要因分析テーブル24のセンサデータテーブルIDの値とすることができることを意味している。
また、センサデータカタログ401の装置IDは、工場設備カタログ402の装置IDと接続できる。また、作業者カタログ405の作業者IDは、不良要因分析テーブル24の作業者IDと接続できる。しかしながら、B工場における作業者カタログ405には、装置IDが含まれておらず、工場設備カタログ402の装置IDとは接続できない。したがって、適用元分析データ対応関係テーブル39を使ったのみでは、工場Bにおける不良要因分析テーブル24の作業者IDの値を設定することができない。
また、センサデータカタログ401の装置IDは、工場設備カタログ402の装置IDと接続でき、工場設備カタログ402の装置IDは、作業区カタログ407の装置IDと接続でき、作業区カタログ407の作業指示IDは、作業者カタログ405の作業指示IDと接続でき、作業者カタログ405の作業者IDは、不良要因分析テーブル24の作業者IDと接続できる。このカラム同士の接続関係は、後述する処理により抽出される関係であり、適用元分析データ対応関係テーブル39からは、把握することができない。この対応関係によると、センサデータテーブル45の装置IDをキーとして、工場設備テーブル47を検索し、検索結果のエントリの装置IDをキーとして作業区テーブル49を検索し、検索結果のエントリの作業指示IDの値をキーとして、作業者テーブル48を検索し、検索結果のエントリの作業者IDの値を不良要因分析テーブル24の作業者IDの値とすることができる。
図8は、一実施形態に係る管理テーブルの構成図である。
管理テーブル15は、未検出対応関係テーブル151と、検出済対応関係テーブル152と、抽出対応関係テーブル153と、未解決対応関係テーブル154とを含む。
未検出対応関係テーブル151は、適用元分析データ対応関係テーブル39の対応関係の中で、センサデータカタログ401のカラムから不良要因分析テーブル24のカラムへと接続されていない対応関係の経路上に存在する各対応関係に対応するエントリを管理するテーブルである。未検出対応関係テーブル151のエントリは、接続元と、接続先と、結合キーと、抽出状態とを含む。
接続元は、接続元となるカタログ名やテーブル名である。接続先は、接続先となるカタログ名やテーブル名である。結合キーは、接続元と接続先とを結合する結合キー(カラム名)である。抽出状態は、エントリに対応する対応関係の状態である。抽出状態には、エントリに対応する対応関係が存在せず、対応関係を検出してしないことを示す「未対応」、エントリに対応する対応関係の接続元又は接続先が、センサデータテーブル又は分析データ(不良要因分析テーブル24)と接続されていることを示す「接続済」、エントリに対応する対応関係の接続元又は接続先が、センサデータテーブル及び分析データ(不良要因分析テーブル24)と接続されていないことを示す「未接続」等がある。また、抽出状態には、他の対応関係との親子関係(ここでは、センサデータテーブル(センサデータカタログ)側が上位(親側)であり、不良要因分析テーブル24側が下位(子側)である。例えば、2番目のエントリの「#1子」は、このエントリの対応関係が、#1(1番目のエントリ)の子となる対応関係、すなわち、接続先に繋がる対応関係であることを示している。
検出済対応関係テーブル152は、適用元分析データ対応関係テーブル39の対応関係の中で、センサデータカタログ401(センサデータテーブル35)のカラムから不良要因分析テーブル24のカラムへと接続されている対応関係の経路上に存在する各対応関係に対応するエントリを管理するテーブルである。検出済対応関係テーブル152のエントリは、接続元と、接続先と、結合キーとを含む。
抽出対応関係テーブル153は、センサデータカタログ401のカラムから不良要因分析テーブル24のカラムへと接続されていない対応関係について、センサデータカタログ401(センサデータテーブル35)のカラムから不良要因分析テーブル24のカラムへと接続するとして抽出された対応関係に対応するエントリを管理するテーブルである。抽出対応関係テーブル153のエントリは、接続元と、接続先と、結合キーとを含む。
未解決対応関係テーブル154は、センサデータカタログ401のカラムから不良要因分析テーブル24のカラムへと接続されていない対応関係について、接続される対応関係が見つかっていない対応関係に対応するエントリを管理するテーブルである。未解決対応関係テーブル154のエントリは、接続元と、接続先と、結合キーとを含む。
図9は、一実施形態に係る工場Bの抽出分析データ対応関係テーブルの構成図である。
図9において、Cは、カタログを示し、Tは、テーブルを示す。
抽出分析データ対応関係テーブル155は、適用先(本実施形態では、工場B)でのセンサデータテーブル45と、分析データ(不良要因分析テーブル24)との対応関係、すなわち、センサデータテーブル45から不良要因分析テーブル24を生成するために利用する対応関係を示している。抽出分析データ対応関係テーブル155は、第2対応関係情報の一例である。
抽出分析データ対応関係テーブル155は、具体的には、図7に示すカタログ、テーブル等のそれぞれの接続関係を示すエントリを含む。エントリは、接続元と、接続先と、それらを結合する結合キーとを含む。
次に、分析管理サーバ10によるデータ選定処理について説明する。
図10は、一実施形態に係るデータ選定処理の第1のフローチャートであり、図11は、一実施形態に係るデータ選定処理の第2のフローチャートであり、図12は、一実施形態に係るデータ選定処理の第3のフローチャートである。
まず、分析管理サーバ10の対象分析アプリ選択部121は、分析アプリテーブル23を読み込み、分析アプリテーブル23に基づいて、分析アプリの情報を選択可能に表示し、ユーザから処理対象とする分析アプリの選択を受け付ける(S101)。
次いで、分析データカラム読込部122は、分析アプリテーブル23を読み込み、選択された分析アプリの説明カラムと目的カラムとを抽出し、更に、適用元分析データ対応関係テーブル39を読み込み、接続関係を抽出する(S102)。
次いで、対応データカラム抽出部123は、適用先(この例では、工場B)のテーブルデータに対応するカタログ群(工場Bカタログ群:各カタログを適用先カタログという)を読み込む(S103)。
次いで、対応データカラム抽出部123は、適用元分析データ対応関係テーブル39の対応関係と同一の対応関係が適用先に存在するか否かを判定する(S104)。ここで、対応関係には、接続元のカタログ(又はテーブル)と、接続先のカタログ(又はテーブル)と、結合キーとが含まれる。したがって、ステップS104では、接続元のカタログに対応するカタログが適用先に存在するか、接続先のカタログに対応するカタログが適用先に存在するか、及び、結合キーが、適用先のカタログ間の結合キーと一致するかを判定することとなる。ここで、対応する適用先のカタログであって、結合キーが存在しないカタログが、未接続カタログである。
対応関係における対応するカタログが存在するか否かを判定する存在判定処理においては、対応データカラム抽出部123は、適用元のカタログと、適用先のカタログとについて、カラム名が一致するか否かを判定する(S110)。ここで、カラム名が一致するとは、両方のカラム名が完全に一致している場合としてもよく、また、カタログにおける全体のカラム数に対するカラム名が一致するものの確度(カラムマッピング確度)が所定以上である場合としてもよい。
この結果、カラム名が一致しない場合(S110:No)には、対応データカラム抽出部123は、対応するカタログが存在しないと判定する。一方、カラム名が一致する場合(S110:Yes)には、対応データカラム抽出部123は、カタログに対応するテーブルを参照し、カラムに格納されているデータが一致するものであるか否かを判定する(S111)。
この結果、カラムに格納されているデータが一致するものでない場合(S111:No)には、対応データカラム抽出部123は、対応するカタログが存在しないと判定する。一方、カラムに格納されているデータが一致するものである場合(S111:Yes)には、対応データカラム抽出部123は、対応するカタログが存在すると判定する。
ステップS104の判定の結果、適用元分析データ対応関係テーブル39の対応関係と同一の対応関係が、適用先に存在する場合(S104:Yes)には、対応データカラム抽出部123は、その対応関係のエントリを検出済対応関係テーブル152に登録し、処理をステップS107に進める。
一方、適用元分析データ対応関係テーブル39の対応関係が、適用先に存在しない場合(S104:No)には、対応データカラム抽出部123は、その対応関係のエントリを未検出対応関係テーブル151に登録し、処理をステップS107に進める。ここで、本実施形態では、工場Bの作業者カタログ405には、装置IDが存在しないので、図5の未検出対応関係テーブル39の7番目のエントリが、適用先に存在しない対応関係(未接続対応関係)に相当する。
ステップS107では、対応データカラム抽出部123は、適用元分析データ対応関係テーブル39の全ての対応関係について確認済みか否かを判定し、全ての対応関係について確認済みでない場合(S107:No)には、処理をステップS103に進めて、他の対応関係についての確認を行う一方、全ての対応関係について確認済みである場合(S107:Yes)には、処理をステップS108に進める。
ステップS108では、データ対応関係選定部124は、未検出対応関係テーブル151にエントリの登録があるか否かを判定する。
この結果、未検出対応関係テーブル151にエントリの登録がない場合(S108:No)には、不良要因分析テーブル24の各カラムについての必要なカラムと、そのカラムの値を取得するためのデータとの対応関係がすべてそろっている、すなわち、不良要因分析テーブル24を生成することができることを意味しているので、データ対応関係選定部124は、処理をステップS208(図11)に進める。
一方、未検出対応関係テーブル151にエントリの登録がある場合(S108:Yes)には、データ対応関係選定部124は、未検出対応関係テーブル124に登録されているエントリが示す対応関係(未接続対応関係)により、センサデータテーブル45のカラムから不良要因分析テーブル201の説明カラム及び目的カラムのカラムへの対応関係が接続されていない対応関係、言い換えれば、センサデータテーブル45のカラムから不良要因分析テーブル201の説明カラム及び目的カラムのカラムへの未接続対応関係が含まれている接続経路を構成する他の対応関係(同一経路対応関係)のエントリを検出済対応関係テーブル152から取り出し、未検出対応関係テーブル151に移動する。この際、データ対応関係選定部124は、この対応関係と未接続対応関係との親子関係などの情報を特定し、特定した情報をこのエントリに含め、処理をステップS201に進める。ここで、本実施形態では、図5に示す未検出対応関係テーブル151の#1のエントリが登録されている場合には、このエントリの接続先のカタログ(作業者カタログ)と不良要因分析テーブル24との間を接続する接続関係のエントリ(適用元分析データ対応関係テーブル39の1行目と8行目とに対応するエントリ)が、図8の未検出対応関係テーブル151の#2及び#3のエントリとして登録される。
ステップS201では、データ対応関係選定部124は、未検出対応関係テーブル151の未対応の対応関係について、適用先(本例では、工場B)のカタログに基づいて、接続する関係性を抽出するための接続関係性抽出処理(図13参照)を実行する。
次いで、データ対応関係選定部124は、全ての未対応の接続関係について接続関係性抽出処理を実行したか否かを判定し、全ての未対応の接続関係について接続関係性抽出処理を実行していない場合(S202:No)には、処理をステップS201に進めて、未処理の未対応の接続関係について接続関係性抽出処理を実行する。
一方、全ての未対応の接続関係についての接続関係性抽出処理を実行した場合(S202:Yes)には、データ対応関係選定部124は、接続関係性抽出処理で抽出した関係性を抽出対応関係テーブル153に登録する(S203)。
次いで、データ対応関係選定部124は、抽出された関係性と、親子にある対応関係のうち、未抽出時(接続関係性抽出処理前)に未接続とされていた対応関係を解決済みとして、抽出対応関係テーブル153に登録する(S204)。
次いで、データ対応関係選定部124は、抽出した関係性と、親子にある対応関係とを組み合わせることにより、センサデータのカラムから説明カラム及び目的カラムに接続できるか否かを判定する(S205)。
この結果、センサデータのカラムから説明カラム及び目的カラムに接続できる場合(S205:Yes)又は、後述するステップS305でYesの場合には、結果表示処理部125は、分析アプリテーブル23の対象とする分析アプリの情報と、未検出対応関係テーブル151と、抽出対応関係テーブル153とを含む結果確認画面(例えば、分析アプリデータマッピング結果確認画面1401(図14参照))を表示する(S206)。これにより、ユーザは、適用先において、未接続である対応関係と、接続するために新たに抽出された対応関係とを容易に把握することができる。これにより、抽出された対応関係が適切であるか否かを把握することができる。また、未検出対応関係テーブルの内容からは、未接続である対応関係があるカタログ自体と、未接続の対応関係により影響を受けている他のカタログとを把握することができる。未接続の対応関係により影響を受けている他のカタログを把握することができると、例えば、ユーザは、このカタログを出発点として、センサデータのカラムから説明カラム及び目的カラムに接続するための新たな対応関係を探索することができるようになる。
次いで、結果表示処理部125は、ユーザから結果確認画面を終了する指示を受け付けたか否かを判定し(S208)、終了する指示を受け付けた場合(S208:Yes)には、検出済対応関係テーブル152と、抽出対応関係テーブル153との全てのエントリを含む抽出分析データ対応関係テーブル155を作成し(S211)、データ選定処理を終了する。
一方、ユーザから結果確認画面を終了する指示を受け付けていない場合(S208:No)には、結果表示処理部125は、結果確認画面において、選定データの展開がユーザにより選択されたか否かを判定し(S209)、選定データの展開がユーザにより選択されていない場合(S209:No)には、処理をステップS208に進める。一方、選定データの展開がユーザにより選択された場合(S209:Yes)には、抽出データ表示部127は、抽出対応関係テーブル153と、検出済対応関係テーブル152との各エントリが示す対応関係に基づいて、センサデータと、不良要因分析テーブル24のカラムとの対応関係を示す対応関係図を含む結果確認画面(例えば、分析アプリデータ選定結果表示画面1501(図15参照))を表示し(S210)、処理をステップS208に進める。これにより、ユーザは、適用先におけるセンサデータテーブル45と不良要因分析テーブル24の説明カラム及び目的カラムとの対応関係を対応関係図により容易に把握することができる。
一方、ステップS205において、センサデータのカラムから説明カラム及び目的カラムに接続できない場合(S205:No)には、データ対応関係選定部124は、解決できていない関係性を未解決対応関係テーブル154に登録する(S207)。
次いで、結果表示処理部125は、分析アプリテーブル23の対象とする分析アプリの情報と、未検出対応関係テーブル151と、抽出対応関係テーブル153と、未解決対応関係テーブル154とを含む結果確認画面(例えば、分析アプリデータマッピング結果修正画面1601(図16参照))を表示する(S301)。
次いで、結果修正部128は、ユーザから抽出対応関係テーブル153、又は未解決対応関係テーブル154から修正となる対象が選択されて、修正指示を受け付けたか否かを判定し(S302)、修正指示を受け付けていない場合(S302:No)には、処理をステップS302に進める。
一方、修正指示を受け付けた場合(S302:Yes)には、結果修正部128は、指示された情報に基づいて、代替となる対応関係を抽出し(S303)、抽出した内容に基づいて、代替となる対応関係について未解決対応関係テーブル154から削除し、抽出対応関係テーブル153に登録する(S304)。
次いで、結果修正部128は、未解決対応関係テーブル154のエントリが残っているか否かを判定し(S305)、エントリが残っている場合(S305:Yes)には、処理をステップS302に進める一方、エントリが残っていない場合(S305:No)には、処理をステップS206に進める。
ステップS302~S305の処理によると、ユーザが適切な対応関係を指定して、センサデータと、不良要因分析テーブル24のカラムとの対応関係を修正することができる。
次に、接続関係性抽出処理(図11のステップS201)について詳細に説明する。
図13は、一実施形態に係る接続関係性抽出処理のフローチャートである。
ここで、未検出の対応関係が存在する理由としては、以下の(1)、(2)のケースが考えられる。
(1):データの管理方法が、工場Aと工場Bとで異なっているため、新しいテーブルが存在し、新しいカタログが存在する。例えば、図6、図7の例では、作業区カタログ407がこれに対応する。
(2):工場Bにおけるカタログにおいて、工場Aと同一の内容を格納するカラム名や、カタログ名が異なっており、工場Aにおける対応関係をそのまま使えない。この場合には、一般的な辞書情報や、適用先(この例では、工場B)で指定された辞書情報などを用いて、工場Aのカラムと、工場Bのカラムとの同一性を判定すればよい。例えば、カラムとして、「作業区ID」と「作業場所ID」とが存在する場合には、一般的な辞書情報を用いて、「区」が場所を表すことから、これらカラムが同一であると判定してもよく、或いは、工場Bの作業場所IDと、工場Aの作業区IDとが同じであるとの適用先で指定された辞書情報(適用先用辞書情報)を用いて、カラムが同一であると判定してもよい。さらに、カラムに格納されている実際のデータ同士の類似度を判定し、その類似度に基づいて、カラムが同一であるかを判定してもよい。なお、データ選定処理において、カラム同士が同一であると特定した場合に、特定したカラムのカラム名同士を対応付けて適用先用辞書情報に格納し、以降のデータ選定処理において再利用するようにしてもよい。
ここで、(1)のケースが存在する場合に対処するための接続関係性抽出処理を以下に説明する。なお、以下の説明においては、工場Aのカタログ等の構成が、図3、図4に示す状態であり、工場Bのカタログ等の構成が、図6、図7に示す状態における具体例を適宜説明する。
まず、データ対応関係選定部124は、未検出対応関係テーブル151から、未接続なカタログ(本具体例では、作成者カタログ405)についての親側(センサデータテーブル35(センサデータカタログ301)側)と、子側(不良要因分析テーブル24側)とのそれぞれについて、未接続なカタログに含まれるカラムを接続可能カラムとしてリスト化する(S401)。本具体例では、親側のカラムである工場設備カタログ402の全てのカラムを含む親側のリスト(親側接続可能カラムリスト)と、子側のカラムである作業者カタログ405の全てのカラムを含む子側のリスト(子側接続可能カラムリスト)とを作成する。ここで、各接続可能カラムリストにおいては、カタログ名とカラム名とを対とした情報が格納される。ここで、処理対象とする親側のカタログとしては、例えば、センサデータカタログ301側の一部の範囲のカタログとしてもよく、センサデータカタログ301を含んでもよい。また、処理対象とする子側のカタログとしては、例えば、不良要因分析テーブル24側の一部の範囲のカタログとしてもよい。
次いで、データ対応関係選定部124は、親側のカタログ又は子側のカタログを処理対象とし、工場Bのカタログの中身(カラム)が、対応する工場Aのカタログと一致しているか否かを判定する(S402)。この結果、工場Bのカタログの中身が、工場Aのカタログと一致している場合(S402:Yes)には、接続に利用できないので、別のカタログ(例えば、子側のカタログを処理対象としている場合には、別の子側のカタログ、又は親側のカタログ)を処理対象とするために、データ対応関係選定部124は、処理をステップS406に進める。
一方、工場Bのカタログの中身が、工場Aのカタログと一致していない場合(S402:No)には、データ対応関係選定部124は、相違しているカラム(差分カラム)を一覧化する(S403)。本具体例では、例えば、作業者カタログ405の「作業指示ID」が相違しているカラムである。
次いで、データ対応関係選定部124は、相違しているカラムを含む、他の工場Bのカタログを探索し、見つかった場合には、見つかったカタログの全カラムを、処理対象のカタログが属する側(親側又は子側)の接続可能カラムリストに追加する(S404)。具体例では、作業指示IDのカラムを含む作業区カタログ407の全てのカラム名を、子側接続可能カラムリストに追加する。
次いで、データ対応関係選定部124は、親側と子側の接続可能カラムリストで一致しているものを特定し、そのカラムを含む親側のカタログとそのカラムを含む子側のカタログとを、そのカラムを結合キーとして接続する関係性(対応関係)として抽出する(S405)。具体例では、親側のカタログとして、工場設備カタログ402が抽出され、子側のカタログとして、作業区カタログ407が抽出され、結合キーとして、装置IDが抽出される。ここで、作業区カタログ407が接続可能カタログに相当する。
次いで、データ対応関係選定部124は、親側と子側とのいずれかに処理対象としていない未処理のカタログがあるか否かを判定し(S406)、未処理のカタログがある場合(S406:Yes)には、処理をステップS402に進め、未処理のカタログがない場合(S406:No)には、処理を終了する。
上記接続関係性抽出処理によると、センサデータテーブル45から不良要因分析テーブル24を求めるためのデータの関係性を容易且つ適切に抽出することができる。
なお、(2)のケースが存在する場合に対処するための接続関係性抽出処理においては、上記した処理のステップS404において、辞書情報を用いて、相違しているカラムとの類似度が高いカラムを含むカタログを探索するようにすればよい。また、上記接続関係性抽出処理により、適切な接続関係を有する関係性が見つからない場合には、代替となるセンサデータテーブルの選択を促したり、選択したりしてもよい。この場合、カラム名の類似度に基づいて代替となるセンサデータテーブルを選択してもよく、カラム中のデータの類似度に基づいて代替となるセンサデータテーブルを選択してもよい。
次に、分析アプリデータ結果確認画面1401について説明する。
図14は、一実施形態に係る分析アプリデータ結果確認画面を示す図である。
分析アプリデータ結果確認画面1401は、ステップS206において表示される画面の一例であり、分析アプリ情報表示領域1402と、対応関係変更結果表示領域1403と、展開ボタン1404と、修正ボタン1405と、OKボタン1406とを含む。
分析アプリ情報表示領域1402には、分析アプリテーブル23に基づく、対象の分析アプリの情報が表示される。対応関係変更結果表示領域1403には、未検出対応関係テーブル151の内容と、抽出対応関係テーブル153の内容と、未解決対応関係テーブル154の内容とが表示される。なお、対応関係変更結果表示領域1403において、未接続の対応関係に対応するカタログ名やカラム名を、例えば、表示色を濃くする等の強調表示を行うようにして、表示態様を異ならせてもよい。この対応関係変更結果表示領域1403の未検出対応関係テーブル151の内容によると、接続されていない対応関係と、その対応関係を含むセンサデータカタログ401のカラムから不良要因分析テーブル24のカラムへと接続されていない対応関係の経路上に存在する各対応関係の情報が含まれるので、ユーザは、これらの経路上の各カタログのいずれかを経由して、センサデータテーブル45から不良要因分析テーブル24へと接続される経路を検討すればよいことがわかる。
展開ボタン1404は、現在表示されている抽出対応関係テーブル153における対応関係を含む、工場Bにおけるセンサデータ45から不良要因分析テーブル24を選定するための各データの対応関係を示す対応関係図を表示させる指示を行うためのボタンである。展開ボタン1404が押下されると、結果表示処理部125により、図15に示す分析アプリデータ選定結果表示画面1501が表示される。
修正ボタン1405は、現在表示されている抽出対応関係テーブル153における対応関係等の修正の指示を行うためのボタンである。修正ボタン1405が押下されると、結果表示処理部125により、図16に示す分析アプリデータ結果修正画面1601が表示される。
OKボタン1406は、現在表示されている抽出対応関係テーブル153における対応関係を確定させるためのボタンである。OKボタン1406が押下されると、その時点における、センサデータ45から不良要因分析テーブル24を選定するための各データの対応関係が確定され、例えば、抽出分析データ対応関係テーブル155が生成される。
次に、分析アプリデータ選定結果表示画面1501について説明する。
図15は、一実施形態に係る分析アプリデータ選定結果表示画面を示す図である。
分析アプリデータ選定結果表示画面1501は、分析アプリデータ結果確認画面1401の展開ボタン1404が押下された場合に表示される画面の一例であり、選定結果表示領域1502と、修正ボタン1503と、CLOSEボタン1504とを含む。
選定結果表示領域1502には、適用先(図の例では、工場B)におけるセンサデータ45から不良要因分析テーブル24を選定するための各データの対応関係を示す対応関係図が表示される領域である。
修正ボタン1503は、現在表示されている対応関係図に対応する対応関係等の修正の指示を行うためのボタンである。修正ボタン1503が押下されると、結果表示処理部125により、図16に示す分析アプリデータ結果修正画面1601が表示される。
CLOSEボタン1504は、分析アプリデータ選定結果表示画面1501を閉じる指示を行うためのボタンである。CLOSEボタン1504が押下されると、結果表示処理部125により、分析アプリデータ選定結果表示画面1501を閉じられる。
次に、分析アプリデータ結果修正画面1601について説明する。
図16は、一実施形態に係る分析アプリデータ結果修正画面を示す図である。
分析アプリデータ結果修正画面1601は、分析アプリデータ結果確認画面1401の修正ボタン1405が押下された場合に表示されたり、ステップS301において表示されたりする画面の一例であり、分析アプリ情報表示領域1402と、対応関係変更結果表示領域1403と、修正対応関係入力領域1602と、Cancelボタン1603と、Submitボタン1604とを含む。
修正対応関係入力領域1602には、対応関係とする接続元のカタログと、接続先のカタログと、これらカタログを接続するカラムである接合キーとを選択入力するために領域である。
Cancelボタン1603は、修正対応関係入力領域1602に入力した対応関係を取り消す指示を行うためのボタンである。Cancelボタン1603が押下されると、結果表示処理部125により、修正対応関係入力領域1602に入力した対応関係が反映されずに、分析アプリデータ結果修正画面1601が閉じられる。
Submitボタン1604は、修正対応関係入力領域1602に入力した対応関係の適応を送信(適用)する指示を行うためのボタンである。Submitボタン1604が押下されると、結果表示処理部125は、修正対応関係入力領域1602に入力した対応関係を、抽出対応関係テーブル153に登録し、未解決対応関係テーブル151から登録した対応関係により解消された対応関係を削除する。
この分析アプリデータ結果修正画面1601によると、ユーザは、工場Bにおける対応関係を適切に入力、修正等することができる。
例えば、図16に示す分析アプリデータ結果修正画面1601に変えて、分析析アプリデータ結果修正画面1701を表示するようにしてもよい。
図17は、変形例に係る分析アプリデータ結果修正画面を示す図である。
分析アプリデータ結果修正画面1701は、分析アプリ情報表示領域1402と、対応関係変更結果表示領域1403と、修正対応関係入力領域1702と、Cancelボタン1603と、Submitボタン1604とを含む。
修正対応関係入力領域1702は、修正対応関係入力領域1602に対して、更に、差分情報表示領域1703を備えるようにした領域である。差分情報表示領域1703には、対象となるカタログと、適用元(例では、工場A)のカタログと適用先(例では、工場B)のカタログとのカラムの相違点(差分情報)を表示する領域である。この差分情報表示領域1703の差分情報をヒントとして、ユーザは、対応関係を検討することができ、対応関係の修正をより容易に行うことができる。
次に、分析析アプリデータ結果修正画面1701における差分情報1703を表示するための差分一覧表示処理について説明する。
図18は、変形例に係る差分一覧表示処理のフローチャートである。なお、図16と同様なステップには、同一符号を付し、重複する説明を省略する。
ステップS501では、結果表示処理部125の結果修正部128が、相違していているカラムの一覧を、分析アプリデータ結果修正画面1701の修正対応関係入力領域1702の差分情報表示領域1703に表示させる。
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で、適宜変形して実施することが可能である。
例えば、上記実施形態では、ユーザから修正指示を受け付けた場合(S302:Yes)に、代替となる対応関係を抽出し(S303)、抽出対応関係テーブル154に登録し(S304)、未解決対応関係があれば(S305:No)、ステップS302に進んで、ユーザからの更なる修正を受け付けるようにしていたが、本発明はこれに限られず、例えば、ステップS304の後に、修正した対応関係を維持させた状態で、ステップS103以降の処理をして、修正後においても存在しない対応関係を見つけるようにしてもよい。
また、上記実施形態において、CPUが行っていた処理の一部又は全部を、ハードウェア回路で行うようにしてもよい。また、上記実施形態におけるプログラムは、プログラムソースからインストールされてよい。プログラムソースは、プログラム配布サーバ又は記憶メディア(例えば可搬型の記憶メディア)であってもよい。