(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-15
(45)【発行日】2024-04-23
(54)【発明の名称】補助方法、制御プログラム及び装置
(51)【国際特許分類】
G06F 8/34 20180101AFI20240416BHJP
【FI】
G06F8/34
(21)【出願番号】P 2020087153
(22)【出願日】2020-05-19
【審査請求日】2023-03-07
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100124039
【氏名又は名称】立花 顕治
(74)【代理人】
【識別番号】100179213
【氏名又は名称】山下 未知子
(74)【代理人】
【識別番号】100170542
【氏名又は名称】桝田 剛
(72)【発明者】
【氏名】小田 利彦
(72)【発明者】
【氏名】廣田 達哉
(72)【発明者】
【氏名】吉川 泰司
(72)【発明者】
【氏名】宮浦 宏之
(72)【発明者】
【氏名】松島 星子
【審査官】円子 英紀
(56)【参考文献】
【文献】特開平11-296417(JP,A)
【文献】特開平01-298434(JP,A)
【文献】特開2003-308207(JP,A)
【文献】特開2000-089944(JP,A)
【文献】特開平04-111122(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/34
(57)【特許請求の範囲】
【請求項1】
入力データに処理を施して出力データを生成するプログラムを開発可能なプログラム開発環境におけるビジュアルプログラミングの補助方法であって、
前記入力データは、複数の入力項目を含み、
前記出力データは、複数の出力項目を含み、
前記プログラム開発環境においては、前記入力項目と前記出力項目とを画面上で接続することによって前記プログラムが開発され、
前記補助方法は、前記複数の入力項目の各々の次元、及び、前記複数の出力項目の各々の次元に基づいて、前記入力項目と前記出力項目との接続関係の候補をプログラム開発者に認識させる画像を表示するステップを含む、補助方法。
【請求項2】
前記複数の入力項目の各々の次元と、前記複数の出力項目の各々の次元との比較を行なうステップをさらに含み、
前記画像は、前記比較結果に基づいて表示される、請求項1に記載の補助方法。
【請求項3】
前記比較結果に基づいて、前記入力項目と前記出力項目との依存関係の強さを判定するステップをさらに含み、
前記依存関係の強さに応じて、異なる種類の前記画像が表示される、請求項2に記載の補助方法。
【請求項4】
前記画像は、前記入力項目と前記出力項目とを結ぶ線である、請求項1から請求項3のいずれか1項に記載の補助方法。
【請求項5】
前記プログラムは、ETL(Extract/Transform/Load)処理を実行するように構成されている、請求項1から請求項4のいずれか1項に記載の補助方法。
【請求項6】
入力データに処理を施して出力データを生成するプログラムを開発可能なプログラム開発環境におけるビジュアルプログラミングの補助動作をコンピュータに実行させる制御プログラムであって、
前記入力データは、複数の入力項目を含み、
前記出力データは、複数の出力項目を含み、
前記プログラム開発環境においては、前記入力項目と前記出力項目とを画面上で接続することによって前記プログラムが開発され、
前記制御プログラムは、前記複数の入力項目の各々の次元、及び、前記複数の出力項目の各々の次元に基づいて、前記入力項目と前記出力項目との接続関係の候補をプログラム開発者に認識させる画像を表示するステップを前記コンピュータに実行させる、制御プログラム。
【請求項7】
入力データに処理を施して出力データを生成するプログラムを開発可能なプログラム開発環境を提供する装置であって、
前記入力データは、複数の入力項目を含み、
前記出力データは、複数の出力項目を含み、
前記プログラム開発環境においては、前記入力項目と前記出力項目とを画面上で接続することによって前記プログラムが開発され、
前記装置は、
表示部と、
前記表示部を制御するように構成された制御部とを備え、
前記制御部は、前記複数の入力項目の各々の次元、及び、前記複数の出力項目の各々の次元に基づいて、前記入力項目と前記出力項目との接続関係の候補をプログラム開発者に認識させる画像を表示するように前記表示部を制御する、装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、補助方法、制御プログラム及び装置に関する。
【背景技術】
【0002】
特開2002-366401号公報(特許文献1)は、データマート構築及び運用支援システムを開示する。このデータマート構築及び運用支援システムにおいては、予め準備されたプログラム構造の雛型を用いることによって、利用者がデータマート作成プログラムを生成する。したがって、このデータマート構築及び運用支援システムによれば、利用者がデータマート作成プログラムを短時間で生成することができる(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ビジュアルプログラミングに対応したプログラム開発環境においては、接続対象(例えば、アイコン)同士を画面上で接続することによってプログラムが開発される。このようなプログラム開発環境においては、例えば、プログラム要素を示すアイコン、プログラム要素への入力データに含まれる複数の入力項目、及び、プログラム要素の出力データに含まれる複数の出力項目が画面上に表示される。例えば、入力項目と出力項目とを画面上で接続することによって、プログラムが開発される。
【0005】
しかしながら、ビジュアルプログラミングの初心者にとって、入力項目と出力項目との正しい接続関係を構築して所望のプログラムを得ることは必ずしも容易ではない。このような問題の解決手段は、上記特許文献1には開示されていない。
【0006】
本発明は、このような問題を解決するためになされたものであって、その目的は、ビジュアルプログラミングによるプログラム開発をより容易にする補助方法、制御プログラム及び装置を提供することである。
【課題を解決するための手段】
【0007】
本発明のある局面に従う補助方法は、入力データに処理を施して出力データを生成するプログラムを開発可能なプログラム開発環境におけるビジュアルプログラミングの補助方法である。入力データは、複数の入力項目を含む。出力データは、複数の出力項目を含む。プログラム開発環境においては、入力項目と出力項目とを画面上で接続することによってプログラムが開発される。補助方法は、複数の入力項目の各々の次元、及び、複数の出力項目の各々の次元に基づいて、入力項目と出力項目との接続関係の候補をプログラム開発者に認識させる画像を表示するステップを含む。
【0008】
入力項目と出力項目との接続関係が構築された場合には、入力側と出力側とで次元が一致する。このような前提があるために、入力項目の次元と出力項目の次元とに基づいて、入力項目と出力項目との接続関係を推定することができる。本発明に従う補助方法においては、複数の入力項目の各々の次元、及び、複数の出力項目の各々の次元に基づいて、入力項目と出力項目との接続関係の候補をプログラム開発者に認識させる画像が表示される。したがって、プログラム開発者は、表示される画像を参照することによって入力項目と出力項目との接続関係の候補を知ることができるため、より容易にプログラム開発を行なうことができる。
【0009】
上記補助方法は、複数の入力項目の各々の次元と、複数の出力項目の各々の次元との比較を行なうステップをさらに含み、画像は、比較結果に基づいて表示されてもよい。
【0010】
上記補助方法は、比較結果に基づいて、入力項目と出力項目との依存関係の強さを判定するステップをさらに含み、依存関係の強さに応じて、異なる種類の画像が表示されてもよい。
【0011】
この補助方法においては、入力項目と出力項目との依存関係の強さに応じて、異なる種類の画像が表示される。したがって、プログラム開発者は、表示される画像を参照することによって入力項目と出力項目との依存関係の強さをも知ることができるため、より容易にプログラム開発を行なうことができる。
【0012】
上記補助方法において、画像は、入力項目と出力項目とを結ぶ線であってもよい。
【0013】
上記補助方法において、プログラムは、ETL(Extract/Transform/Load)処理を実行するように構成されていてもよい。
【0014】
本発明の他の局面に従う制御プログラムは、入力データに処理を施して出力データを生成するプログラムを開発可能なプログラム開発環境におけるビジュアルプログラミングの補助動作をコンピュータに実行させる。入力データは、複数の入力項目を含む。出力データは、複数の出力項目を含む。プログラム開発環境においては、入力項目と出力項目とを画面上で接続することによってプログラムが開発される。制御プログラムは、複数の入力項目の各々の次元、及び、複数の出力項目の各々の次元に基づいて、入力項目と出力項目との接続関係の候補をプログラム開発者に認識させる画像を表示するステップをコンピュータに実行させる。
【0015】
この制御プログラムがコンピュータによって実行されると、複数の入力項目の各々の次元、及び、複数の出力項目の各々の次元に基づいて、入力項目と出力項目との接続関係の候補をプログラム開発者に認識させる画像が表示される。したがって、プログラム開発者は、表示される画像を参照することによって入力項目と出力項目との接続関係の候補を知ることができるため、より容易にプログラム開発を行なうことができる。
【0016】
本発明の他の局面に従う装置は、入力データに処理を施して出力データを生成するプログラムを開発可能なプログラム開発環境を提供する。入力データは、複数の入力項目を含む。出力データは、複数の出力項目を含む。プログラム開発環境においては、入力項目と出力項目とを画面上で接続することによってプログラムが開発される。装置は、表示部と、制御部とを備える。制御部は、表示部を制御するように構成されている。制御部は、複数の入力項目の各々の次元、及び、複数の出力項目の各々の次元に基づいて、入力項目と出力項目との接続関係の候補をプログラム開発者に認識させる画像を表示するように表示部を制御する。
【0017】
この装置においては、複数の入力項目の各々の次元、及び、複数の出力項目の各々の次元に基づいて、入力項目と出力項目との接続関係の候補をプログラム開発者に認識させる画像が表示される。したがって、プログラム開発者は、表示される画像を参照することによって入力項目と出力項目との接続関係の候補を知ることができるため、より容易にプログラム開発を行なうことができる。
【発明の効果】
【0018】
本発明によれば、ビジュアルプログラミングによるプログラム開発をより容易にする補助方法、制御プログラム及び装置を提供することができる。
【図面の簡単な説明】
【0019】
【
図2】装置のハードウェア構成の一例を示す図である。
【
図3】基本的な物理量の次元について説明するための図である。
【
図4】基本的な物理量を組み合わせることで構成された物理量の次元について説明するための図である。
【
図5】製造関連次元の一例について説明するための図である。
【
図6】プログラム開発環境において開発されるプログラムの一例について説明するための図である。
【
図9】入力項目と出力項目との依存関係の強さがどのように決定されるかを説明するための図である。
【
図11】補助画像の表示手順を示すフローチャートである。
【
図12】
図11のステップS120における処理手順を示すフローチャートである。
【
図13】
図11のステップS130における処理手順を示すフローチャートである。
【発明を実施するための形態】
【0020】
以下、本発明の一側面に係る実施の形態(以下、「本実施の形態」とも称する。)について、図面を用いて詳細に説明する。なお、図中同一又は相当部分には同一符号を付してその説明は繰り返さない。また、以下で説明する本実施の形態は、あらゆる点において本発明の例示にすぎない。本実施の形態は、本発明の範囲内において、種々の改良や変更が可能である。すなわち、本発明の実施にあたっては、実施の形態に応じて具体的構成を適宜採用することができる。
【0021】
[1.概要]
図1は、本実施の形態に従う装置100の概要を説明するための図である。
図1を参照して、装置100は、プログラム開発環境を提供するように構成されている。装置100においては、ビジュアルプログラミングによってプログラムが開発される。
【0022】
装置100において開発されるプログラムは、例えば、データにETL(Extract/Transform/Load)処理を施すプログラム(以下、「ETLプログラム」とも称する。)である。ETLプログラムは、例えば、製造分野において有効に活用される。ETLプログラムが実行されると、例えば、製造ライン等の外部装置からデータが読み出され、読み出されたデータに処理が施され、処理後のデータが他の外部装置に提供される。
【0023】
ETLプログラムが製造分野において必要となる理由について次に説明する。製造分野においては、製造装置、検査装置又はセンサ等から出力されるデータが収集される。収集されたデータを活用することによって、製造品質の確認、不良発生の原因解析、装置故障の予測、及び、製造工程の改善等が行なわれる。一方、製造装置、検査装置又はセンサ等から出力されるデータは、いわゆる生データであり、そのまま活用することができないことがある。例えば、生データに不要なデータが多く含まれている場合、生データのデータ品質が悪い場合、生データのデータフォーマットが合っていない場合、又は、生データの物理量が分析や解析に適した物理量になっていない場合には、生データをそのまま活用することができない。こういった生データの問題に対処するために、ETLプログラムが用いられる。ETLプログラムが実行されると、入力データである生データに処理が施され、活用可能な出力データが生成される。装置100においては、例えば、このようなETLプログラムが開発される。
【0024】
装置100で提供されるプログラム開発環境(以下、単に「プログラム開発環境」とも称する。)においては、予め複数種類のプログラム要素が用意されている。複数種類のプログラム要素の各々は、所定の情報処理を実行するように構成されている。プログラム要素に対応付けられたアイコンを画面上で自由に組み合わせることによって、所望のプログラムが開発される。
【0025】
装置100は、表示部140と、制御部110とを含んでいる。表示部140は、例えば、画面200を表示するように構成されている。制御部110は、表示部140を制御するように構成されている。
【0026】
画面200は、例えば、入力データ210を出力データ220に変換するように構成されたプログラム要素における処理内容の編集画面である。入力データ210は複数の入力項目211を含み、出力データ220は複数の出力項目221を含んでいる。プログラム開発者は、複数の入力項目211と複数の出力項目221とを画面200上に配置し、入力項目211と出力項目221とを線230で接続することによってプログラム要素における処理を規定する。
【0027】
例えば、入力項目211と出力項目221とが単純に接続されると、入力項目211の値が接続先の出力項目221の値となる。また、入力項目211と出力項目221とが処理ブロックX1-X4等の処理ブロックを介して接続されると、処理ブロックにおける処理後の入力項目211の値が接続先の出力項目221の値となる。
【0028】
しかしながら、ビジュアルプログラミングの初心者にとって、入力項目211と出力項目221とを正しく接続することは必ずしも容易ではない。本実施の形態に従う装置100においては、入力項目211と出力項目221との接続関係の候補をプログラム開発者に認識させる機能が実装されている。すなわち、装置100においては、複数の入力項目211の各々の次元、及び、複数の出力項目221の各々の次元に基づいて、入力項目211と出力項目221との接続関係の候補をプログラム開発者に認識させる画像(以下、「補助画像」とも称する。)が表示される。なお、「次元」については、後程詳しく説明する。
【0029】
プログラム開発者は、表示される補助画像を参照することによって入力項目211と出力項目221との接続関係の候補を知ることができるため、より容易にプログラム開発を行なうことができる。以下、装置100について詳細に説明する。
【0030】
[2.装置のハードウェア構成]
図2は、装置100のハードウェア構成の一例を示す図である。なお、本実施の形態において、装置100は、例えば、汎用コンピュータによって実現される。
図2の例において、装置100は、制御部110と、通信I/F(interface)130と、表示部140と、受付部150と、記憶部120とを含み、各構成は、バスを介して電気的に接続されている。
【0031】
制御部110は、CPU(Central Processing Unit)111、RAM(Random Access Memory)112及びROM(Read Only Memory)113等を含み、情報処理に応じて各構成要素の制御を行なうように構成されている。
【0032】
通信I/F130は、ネットワークを介して、装置100の外部に設けられた製造ライン等の外部装置と通信するように構成されている。通信I/F130は、例えば、有線LAN(Local Area Network)モジュールや無線LANモジュールで構成される。
【0033】
表示部140は、画面200(
図1)等を表示するように構成されている。表示部140は、例えば、液晶モニタや有機EL(Electro Luminescence)モニタ等のモニタで構成される。
【0034】
受付部150は、プログラム開発者等のユーザからの入力を受け付けるように構成されている。受付部150は、例えば、タッチパネル、キーボード、マウス及びマイクの一部又は全部で構成される。
【0035】
記憶部120は、例えば、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置である。記憶部120は、例えば、開発された複数のETLプログラムを管理するETLプログラムDB101と、制御プログラム102とを記憶するように構成されている。
【0036】
制御部110は、例えば、制御プログラム102を実行することによって、プログラム開発環境を提供する。このプログラム開発環境においては、少なくとも、ETLプログラム作成機能及びETLプログラム実行機能が実現されている。ETLプログラム作成機能は、プログラム開発者による新たなETLプログラムの作成を実現する機能である。ETLプログラム実行機能は、作成されたETLプログラムを実行する機能である。
【0037】
上述のように、このプログラム開発環境においては、ETLプログラムの開発を補助する機能が実装されている。すなわち、制御部110は、入力データ210(
図1)を出力データ220に変換するように構成されたプログラム要素における処理内容の編集時に、複数の入力項目211の各々の次元、及び、複数の出力項目221の各々の次元に基づいて、入力項目211と出力項目221との接続関係の候補をプログラム開発者に認識させる画像(補助画像)を表示するように表示部140を制御する。次に、「次元」について説明する。
【0038】
[3.次元]
「次元」としては、例えば、物理量の「次元」と、製造分野における量の「次元」とが考えられる。ここでは、まず物理量の次元について説明し、その後に製造分野における量の次元(以下、「製造関連次元」とも称する。)について説明する。
【0039】
(3-1.物理量の次元)
様々な物理量は、時間、長さ及び重さ等の基本的な物理量を組み合わせることで構成される。物理量の次元は、単位ではなく、その物理量がどのような基本的な物理量の組合せで構成されているかを示すものである。
【0040】
図3は、基本的な物理量の次元について説明するための図である。
図3に示されるように、例えば、「時間」の次元は「T」で表わされ、「長さ」の次元は「L」で表わされる。また、「質量」の次元は「M」で表わされ、「電流」の次元は「I」で表わされる。また、「熱力学温度」の次元は「Θ」で表わされ、「物質量」の次元は「N」で表わされ、「光度」の次元は「J」で表わされる。
【0041】
図4は、基本的な物理量を組み合わせることで構成された物理量の次元について説明するための図である。
図4に示されるように、例えば「面積」及び「体積」は、基本的物理量である「長さ」の組合せである。「面積」の次元は「L
2」で表わされ、「体積」の次元は「L
3」で表わされる。また、「速度」及び「加速度」は、基本的物理量である「長さ」及び「時間」の組合せである。「速度」の次元は「LT
-1」で表わされ、「加速度」の次元は「LT
-2」で表わされる。
【0042】
物理的な関係を示す数式においては、各辺の次元が一致する。すなわち、入力データ210(
図1)を出力データ220に変換する処理においても、入力側と出力側とで次元が一致する。このような前提があるために、入力データ210に含まれる入力項目211の次元と、出力データ220に含まれる出力項目221の次元とに基づいて、入力項目211と出力項目221との接続関係を推定することができる。
【0043】
(3-2.製造関連次元)
製造関連次元は、生産及び製造に関する様々な物理量及び指標がどのような基本的な物理量の組合せで構成されているかを示すものである。製造分野における基本的な物理量としては、「時間」等の他に、製品個数、従業者人数、及び、金額等が挙げられる。
【0044】
例えば、「生産数」の次元は「製品個数」の次元と等しく、「製品原価」の次元は「金額」の次元と等しい。また、「製造コスト」の次元は「製品原価」の次元と「製品個数」の次元との積で表わされ、「生産工数」の次元は「従業者人数」の次元と「時間」の次元との積で表わされる。
【0045】
図5は、製造関連次元の一例について説明するための図である。
図5に示されるように、例えば、「時間」の次元は「T」で表わされ、「金額」の次元は「M」で表わされる。また、「製品個数」の次元は「Q」で表わされ、「従業者人数」の次元は「N」で表わされる。
【0046】
例えば、「可動率」は、実働時間をスケジュール上の時間で除算することによって算出される。「実働時間」及び「スケジュール上の時間」の各々の次元は「T」で表わされる。したがって、「可動率」の次元は、「TT-1」で表わされる。また、「性能」は、実効率(個数/時)を標準効率(個数/時)で除算することによって算出される。「実効率」及び「標準効率」の各々の次元は「QT-1」で表わされる。したがって、「性能」の次元は、「QTQ-1T-1」で表わされる。また、「品質」は、良品数を開始生産数で除算することによって算出される。「良品数」及び「開始生産数」の各々の次元は「Q」で表わされる。したがって、「品質」の次元は、「QQ-1」で表わされる。
【0047】
また、「総合設備効率」は、可動率、性能及び品質を乗算することによって算出される。可動率、性能及び品質の各々の次元は上述の通りである。したがって、「総合設備効率」の次元は、「(TT-1)(QTQ-1T-1)(QQ-1)」で表わされる。
【0048】
「可動率」、「性能」、「品質」及び「総合設備効率」の各々においては、次元同士が打ち消し合って無次元となる。しかしながら、本実施の形態において、各製造関連次元は、打ち消す前の状態で定義される。すなわち、可動率の次元は「TT-1」と定義され、性能の次元は「QTQ-1T-1」と定義される。また、品質の次元は「QQ-1」で定義され、「総合設備効率」の次元は「(TT-1)(QTQ-1T-1)(QQ-1)」で定義される。これは、製造分野における量を求めるために必要な各パラメータの次元情報を残すためである。次に、本実施の形態に従う装置100における動作の一例について説明する。
【0049】
[4.プログラム作成における補助動作の例]
(4-1.プログラムの例)
図6は、装置100で提供されるプログラム開発環境において開発されるプログラムの一例について説明するための図である。
図6を参照して、この例においては、プログラム240が開発される。プログラム240は、製造ラインから製品の検査結果を示す入力データ210を読み込み、読み込まれた入力データ210に処理を施すことによって出力データ220を生成するプログラムである。なお、入力データ210は複数の入力項目211を含み、出力データ220は複数の出力項目221を含む。
【0050】
プログラム240は、プログラム要素PE1-PE3を含んでいる。プログラム要素PE1は、入力データ210を読み込む処理を実行するように構成されている。プログラム要素PE2は、読み込まれた入力データ210に処理を施し製造ラインの状態分析に用いられる出力データ220を生成する処理を実行するように構成されている。プログラム要素PE3は、生成された出力データ220を書き込む処理を実行するように構成されている。
【0051】
プログラム要素PE2においては、入力データ210に含まれる各入力項目211の値にどのような処理が施され、処理後の値がどの出力項目221の値とされるかが規定される。具体的には、プログラム要素PE2においては、入力項目211と出力項目221とを線230で接続すること等によって処理内容が規定される。本実施の形態に従う装置100においては、プログラム開発の容易化のために、プログラム要素PE2等における処理内容の編集時に、入力項目211と出力項目221との接続関係の候補を示す画像(補助画像)が表示される。補助画像については後程詳しく説明する。なお、補助画像は、複数の入力項目211の各々の次元と、複数の出力項目221の各々の次元との比較結果に基づいて表示される。装置100において、各入力項目211の次元は入力側メタデータ215を参照することによって認識され、各出力項目221の次元は出力側メタデータ225を参照することによって認識される。次に、入力側メタデータ215及び出力側メタデータ225について説明する。
【0052】
(4-2.入力データ及び出力データのメタデータの例)
図7は、入力側メタデータ215の一例を示す図である。
図7に示されるように、入力側メタデータ215は、入力データ210に含まれる各入力項目211の次元の情報を含んでいる。入力側メタデータ215は、例えば、製造ライン等に予め記憶されている。装置100は、例えば、通信I/F130を介して製造ライン等から入力側メタデータ215を受信する。
【0053】
図8は、出力側メタデータ225の一例を示す図である。
図8に示されるように、出力側メタデータ225は、出力データ220に含まれる各出力項目221の次元の情報を含んでいる。出力側メタデータ225は、プログラム開発者によって生成される。すなわち、プログラム開発者は、プログラム240の開発時に、出力データ220にどのような出力項目221を含めるかを決定する。その際に、プログラム開発者は、出力側メタデータ225を生成することによって、各出力項目221の次元を規定する。生成された出力側メタデータ225は、例えば、記憶部120に記憶される。
【0054】
(4-3.入力項目と出力項目との依存関係の判定方法)
装置100においては、入力項目211と出力項目221との依存関係の強さに応じた補助画像が表示される。入力項目211と出力項目221との依存関係の強さは、入力項目211の次元と出力項目221の次元とを比較することによって判定される。
【0055】
図9は、入力項目211と出力項目221との依存関係の強さがどのように判定されるかを説明するための図である。
図9に示されるように、入力項目211の次元と出力項目221の次元とが同一である場合には、入力項目211と出力項目221との依存関係は「強い」と判定される。また、入力項目211の次元と出力項目221の次元とが部分的に一致する場合には、入力項目211と出力項目221との依存関係は「やや強い」と判定される。また、入力項目211の次元と出力項目221の次元とが部分的にも一致しない場合には、入力項目211と出力項目221との依存関係は「弱い」と判定される。
【0056】
(4-4.表示例)
図10は、補助画像の表示イメージを示す図である。
図10を参照して、入力項目211と出力項目221との間に表示されている各線230が本実施の形態における補助画像である。補助画像は、プログラム開発者が入力項目211と出力項目221とを線230で接続する前の段階で表示されている。したがって、プログラム開発者は、表示される補助画像を参照することによって入力項目211と出力項目221との接続関係の候補を知ることができるため、より容易にプログラム開発を行なうことができる。
【0057】
装置100においては、例えば、入力項目211と出力項目221との依存関係の強さに応じて、異なる種類の補助画像が表示される。例えば、入力項目211と出力項目221との依存関係が「強い」場合には入力項目211と出力項目221との間に実線を示す補助画像が表示され、入力項目211と出力項目221との依存関係が「やや強い」場合には入力項目211と出力項目221との間に濃い点線を示す補助画像が表示され、入力項目211と出力項目221との依存関係が「弱い」場合には入力項目211と出力項目221との間に薄い点線を示す補助画像が表示される。したがって、プログラム開発者は、表示される種類の異なる複数の補助画像を参照することによって入力項目211と出力項目221との依存関係の強さをも知ることができるため、より容易にプログラム開発を行なうことができる。
【0058】
[5.装置の動作]
図11は、補助画像の表示手順を示すフローチャートである。このフローチャートに示される処理は、例えば、プログラム開発者から補助画像の表示指示を受け付けた場合に実行されてもよいし、入力データ210を出力データ220に変換するプログラム要素における処理内容の編集時に自動的に実行されてもよい。
【0059】
図11を参照して、制御部110は、製造ライン等の外部装置から取得された入力側メタデータ215を参照することによって各入力項目211の次元を抽出する(ステップS100)。制御部110は、記憶部120等に記憶された出力側メタデータ225を参照することによって各出力項目221の次元を抽出する(ステップS110)。制御部110は、各入力項目211の次元と各出力項目221の次元とを比較する処理を実行する(ステップS120)。
【0060】
図12は、
図11のステップS120における処理手順を示すフローチャートである。
図12を参照して、制御部110は、比較未完了の入力項目211を抽出する(ステップS200)。制御部110は、抽出された入力項目211の次元と、比較未完了の出力項目221の次元とを比較する(ステップS210)。制御部110は、比較結果を記憶部120に記憶させる(ステップS220)。
【0061】
制御部110は、ステップS200において抽出された入力項目211と全出力項目221との比較が完了したか否かを判定する(ステップS230)。比較が完了していないと判定されると(ステップS230においてNO)、制御部110は、再びステップS210-S230の処理を繰り返す。
【0062】
一方、比較が完了したと判定されると(ステップS230においてYES)、制御部110は、全入力項目211に関し比較が完了したか否かを判定する(ステップS240)。全入力項目211に関し比較が完了していないと判定されると(ステップS240においてNO)、制御部110は、再びステップS200-S240の処理を繰り返す。一方、全入力項目211に関し比較が完了したと判定されると(ステップS240においてYES)、
図12に示される処理は完了する。
【0063】
再び
図11を参照して、制御部110は、次元の比較結果に基づいて、入力項目211と出力項目221との依存関係の強さを判定する処理を実行する(ステップS130)。
【0064】
図13は、
図11のステップS130における処理手順を示すフローチャートである。
図13を参照して、制御部110は、記憶部120に記憶されているいずれかの比較結果を抽出する(ステップS300)。制御部110は、抽出された比較結果に基づいて、入力項目211と出力項目221とで次元が同一であるか否かを判定する(ステップS310)。次元が同一であると判定されると(ステップS310においてYES)、制御部110は、入力項目211と出力項目221との依存関係が「強い」と判定する(ステップS320)。なお、各判定結果は、記憶部120に記憶される。
【0065】
一方、次元が同一ではないと判定されると(ステップS310においてNO)、制御部110は、入力項目211と出力項目221とで次元が部分的に一致するか否かを判定する(ステップS330)。次元が部分的に一致すると判定されると(ステップS330においてYES)、制御部110は、入力項目211と出力項目221との依存関係が「やや強い」と判定する(ステップS340)。
【0066】
一方、次元が部分的にも一致しないと判定されると(ステップS330においてNO)、制御部110は、入力項目211と出力項目221との依存関係が「弱い」と判定する(ステップS350)。
図11に示される処理を通じて記憶部120に記憶された全比較結果に関し、
図13に示される処理が実行される。
【0067】
再び
図11を参照して、制御部110は、ステップS130において判定された依存関係の強さに応じた線230を、各入力項目211と各出力項目221との間に表示するように表示部140を制御する(ステップS140)。プログラム開発者は、表示される各線230を参照することによって入力項目211と出力項目221との接続関係の候補を知ることができるため、容易にプログラム開発を行なうことができる。
【0068】
[6.特徴]
以上のように、本実施の形態に従う装置100においては、複数の入力項目211の各々の次元、及び、複数の出力項目221の各々の次元に基づいて、入力項目211と出力項目221との接続関係の候補をプログラム開発者に認識させる補助画像(線230)が表示される。したがって、プログラム開発者は、表示される補助画像(線230)を参照することによって入力項目211と出力項目221との接続関係の候補を知ることができるため、より容易にプログラム開発を行なうことができる。
【0069】
[7.変形例]
以上、実施の形態について説明したが、本発明は、上記実施の形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて、種々の変更が可能である。
【0070】
例えば、入力データ210は必ずしも製造ラインから取得される必要はない。また、プログラム開発環境で開発されるプログラム240はETLプログラムに限定されない。また、補助画像が必ずしも線230である必要はない。例えば、接続関係の候補を示すメッセージが画面200上に表示されてもよい。
【符号の説明】
【0071】
100 装置、101 ETLプログラムDB、102 制御プログラム、110 制御部、111 CPU、112 RAM、113 ROM、120 記憶部、130 通信I/F、140 表示部、150 受付部、200 画面、210 入力データ、211 入力項目、215 入力側メタデータ、220 出力データ、221 出力項目、225 出力側メタデータ、230 線、240 プログラム、PE1,PE2,PE3 プログラム要素、X1,X2,X3,X4 処理ブロック。