(57)【特許請求の範囲】
【請求項１】
移送元データベースからデータを受信するデータ受信部と、前記データ受信部により受信されたデータに対して変換や加工の処理を行うデータ処理部と、前記データ処理部による処理を施されたデータを移送先データベースに送信するデータ送信部と、前記データ受信部、前記データ処理部、および前記データ送信部における処理の順序を制御するスケジュール部とから構成されるデータ連携システムにおける前記データ受信部、前記データ処理部、前記データ送信部、および前記スケジュール部の処理手順を規定するデータ連携定義を作成するためのデータ連携定義作成装置であって、
データ連携定義処理画面をディスプレイに表示し、対話処理に従って、前記データ連携定義処理画面上に、前記データ受信部、前記データ処理部、前記データ送信部、および前記スケジュール部の処理手順を規定するデータ連携定義情報を作成する対話処理手段と、
作成中のデータ連携定義を取得する作成中データ連携定義取得手段と、
前記取得された作成中のデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を取得する代替データ連携定義取得手段と、
前記作成中のデータ連携定義によるデータ連携の処理量と前記代替データ連携定義によるデータ連携の処理量とを推定する処理量推定手段と、
前記代替データ連携定義によるデータ連携の処理量が、前記作成中のデータ連携定義によるデータ連携の処理量に比べて少ない場合、前記データ連携定義処理画面上に、前記代替データ連携定義を代替案として提示する代替案提示手段と
を備えることを特徴とするデータ連携定義作成装置。
【請求項２】
同じ処理結果が得られるデータ連携定義の組合せを記憶する処理組合せ知識ベースを備え、
前記代替データ連携定義取得手段は、前記処理組合せ知識ベースから前記作成中のデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を取得する
ことを特徴とする請求項１に記載のデータ連携定義作成装置。
【請求項３】
前記処理量推定手段は、前記作成中のデータ連携定義によるデータ連携の処理量と前記代替データ連携定義によるデータ連携の処理量とを、ハンドコーディングで実現した場合のプログラムのステップ数に換算して算出する
ことを特徴とする請求項１または２に記載のデータ連携定義作成装置。
【請求項４】
前記代替案提示手段は、前記代替データ連携定義と、前記処理量推定手段により算出された前記作成中のデータ連携定義によるデータ連携の処理量と、前記代替データ連携定義によるデータ連携の処理量とを含むヒント情報を前記データ連携定義処理画面に表示する
ことを特徴とする請求項１乃至３の何れか１項に記載のデータ連携定義作成装置。
【請求項５】
前記対話処理手段によって前記データ連携定義処理画面上に作成されるデータ連携定義は、単位処理に対応するアイコンと、アイコン間の接続とによって表現されている
ことを特徴とする請求項１乃至４の何れか１項に記載のデータ連携定義作成装置。
【請求項６】
対話処理手段と作成中データ連携定義取得手段と代替データ連携定義取得手段と処理量推定手段と代替案提示手段とを備え、移送元データベースからデータを受信するデータ受信部と、前記データ受信部により受信されたデータに対して変換や加工の処理を行うデータ処理部と、前記データ処理部による処理を施されたデータを移送先データベースに送信するデータ送信部と、前記データ受信部、前記データ処理部、および前記データ送信部における処理の順序を制御するスケジュール部とから構成されるデータ連携システムにおける前記データ受信部、前記データ処理部、前記データ送信部、および前記スケジュール部の処理手順を規定するデータ連携定義を作成するためのデータ連携定義作成装置で実行されるデータ連携定義作成方法であって、
前記対話処理手段が、データ連携定義処理画面をディスプレイに表示し、対話処理に従って、前記データ連携定義処理画面上に、前記データ受信部、前記データ処理部、前記データ送信部、および前記スケジュール部の処理手順を規定するデータ連携定義情報を作成し、
前記作成中データ連携定義取得手段が、作成中のデータ連携定義を取得し、
代替データ連携定義取得手段が、前記取得された作成中のデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を取得し、
前記処理量推定手段が、前記作成中のデータ連携定義によるデータ連携の処理量と前記代替データ連携定義によるデータ連携の処理量とを推定し、
前記代替案提示手段が、前記代替データ連携定義によるデータ連携の処理量が、前記作成中のデータ連携定義によるデータ連携の処理量に比べて少ない場合、前記データ連携定義処理画面上に、前記代替データ連携定義を代替案として提示する
ことを特徴とするデータ連携定義作成方法。
【請求項７】
移送元データベースからデータを受信するデータ受信部と、前記データ受信部により受信されたデータに対して変換や加工の処理を行うデータ処理部と、前記データ処理部による処理を施されたデータを移送先データベースに送信するデータ送信部と、前記データ受信部、前記データ処理部、および前記データ送信部における処理の順序を制御するスケジュール部とから構成されるデータ連携システムにおける前記データ受信部、前記データ処理部、前記データ送信部、および前記スケジュール部の処理手順を規定するデータ連携定義を作成するコンピュータを、
データ連携定義処理画面をディスプレイに表示し、対話処理に従って、前記データ連携定義処理画面上に、前記データ受信部、前記データ処理部、前記データ送信部、および前記スケジュール部の処理手順を規定するデータ連携定義情報を作成する対話処理手段と、
作成中のデータ連携定義を取得する作成中データ連携定義取得手段と、
前記取得された作成中のデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を取得する代替データ連携定義取得手段と、
前記作成中のデータ連携定義によるデータ連携の処理量と前記代替データ連携定義によるデータ連携の処理量とを推定する処理量推定手段と、
前記代替データ連携定義によるデータ連携の処理量が、前記作成中のデータ連携定義によるデータ連携の処理量に比べて少ない場合、前記データ連携定義処理画面上に、前記代替データ連携定義を代替案として提示する代替案提示手段と
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ連携システムの処理手順を規定するデータ連携定義を作成するためのデータ連携定義作成装置に関する。
【背景技術】
【０００２】
データ連携システムは、移送元となるシステムのデータベースに蓄積されているデータを移送先となる別のシステムのデータベースに移送することで、複数のシステムの連携を可能にするシステムである。ＥＴＬ（Ｅｘｔｒａｃｔ  Ｔｒａｎｓｆｏｒｍ  Ｌｏａｄ）やＥＡＩ（Ｅｎｔｅｒｐｒｉｓｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｔｅｇｒａｔｉｏｎ）は、データ連携システムの具体例である。
【０００３】
データ連携システムは、移送元となるデータベースからデータを受信するデータ受信部、受信されたデータに対して変換や加工の処理を行うデータ処理部、処理を施されたデータを移送先のデータベースに送信するデータ送信部、およびこれらの各部における処理の順序を制御するスケジュール部とから構成される。そして、データ連携システムにおけるデータ受信部、データ処理部、データ送信部、およびスケジュール部の処理手順は、目的ごとに開発され、バッチ処理などにより運用されるのが一般的である。このため、例えばＮＥＣ製のデータ連携システム構築ツールであるＤａｔａＣｏｏｒｄｉｎａｔｏｒには、データ連携システムの処理手順を規定するデータ連携定義を対話的に作成するためのＤｅｓｉｇｎｅｒと呼ばれるデータ連携定義作成ツールが設けられている。ユーザは、このデータ連携定義作成ツールを使用して、目的に合った処理手順を実行するデータ連携システムを、アイコンのドラッグ＆ドロップなどの簡単なＧＵＩ操作だけで、プログラミングすることなく構築することができるようになっている。
【０００４】
上述したようなデータ連携システムを記載した文献として、特許文献１がある。また特許文献２には、要求処理がどの種類のプログラム処理の組合せで対処できるかを判断し、プログラム開発に必要な総ステップ数を見積もることができる開発工数見積方法が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−３２２１５９
【特許文献２】特開平７−１９１８３９
【発明の概要】
【発明が解決しようとする課題】
【０００６】
移送元システムのデータベースに蓄積されているデータを移送先のシステムのデータベースに移送するデータ連携システムのためのデータ連携定義情報を作成する上で、知識と経験が特に要求される箇所は、移送元のデータベースから抽出したデータに対する変換や加工を施す部分、つまりＥＴＬで言えばＴｒａｎｓｆｏｒｍの箇所である。その理由は、変換や加工を施す手順には、同じ結果をもたらす幾つかの手順があり、これらの中から、処理速度などの性能の良い手順を選択するためには、豊富な知識と経験が定義作成者であるユーザに要求されるためである。
【０００７】
特許文献２には、プログラム開発に必要な総ステップ数を見積もることが記載されている。この技術をデータ連携定義情報の作成に適用し、ユーザが定義したデータ連携定義によるデータ連携処理に要する総ステップ数を見積もるようにすれば、ユーザが定義したデータ連携定義を一定の基準で評価することが可能になる。しかし、同じ結果をもたらす最適な手順に関する知識を持たないユーザの場合、ユーザ自身が考えた手順のステップ数を比較してステップ数最小の手順を選択したところで、最適な手順を選択したことにはならない。
【０００８】
本発明の目的は、上述した課題、すなわち、ユーザに豊富な知識と経験がないと性能の良いデータ連携定義を作成するのは容易でない、という課題を解決するデータ連携定義作成装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一形態にかかるデータ連携定義作成装置は、移送元データベースからデータを受信するデータ受信部と、上記データ受信部により受信されたデータに対して変換や加工の処理を行うデータ処理部と、上記データ処理部による処理を施されたデータを移送先データベースに送信するデータ送信部と、上記データ受信部、上記データ処理部、および上記データ送信部における処理の順序を制御するスケジュール部とから構成されるデータ連携システムにおける上記データ受信部、上記データ処理部、上記データ送信部、および上記スケジュール部の処理手順を規定するデータ連携定義を作成するためのデータ連携定義作成装置であって、データ連携定義処理画面をディスプレイに表示し、対話処理に従って、上記データ連携定義処理画面上に、上記データ受信部、上記データ処理部、上記データ送信部、および上記スケジュール部の処理手順を規定するデータ連携定義情報を作成する対話処理手段と、作成中のデータ連携定義を取得する作成中データ連携定義取得手段と、上記取得された作成中のデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を取得する代替データ連携定義取得手段と、上記作成中のデータ連携定義によるデータ連携の処理量と上記代替データ連携定義によるデータ連携の処理量とを推定する処理量推定手段と、上記代替データ連携定義によるデータ連携の処理量が、上記作成中のデータ連携定義によるデータ連携の処理量に比べて少ない場合、上記データ連携定義処理画面上に、上記代替データ連携定義を代替案として提示する代替案提示手段とを備える。
【発明の効果】
【００１０】
本発明は上述したように構成されているため、知識と経験に乏しいユーザであっても性能の良いデータ連携定義を作成することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態のブロック図である。
【図２】処理組合せ知識ベースの構成例を示す図である。
【図３】処理量見積り知識ベースの構成例を示す図である。
【図４】データ連携定義処理画面の構成例を示す図である。
【図５】本発明の実施形態の動作を示すフローチャートである。
【図６】本発明の実施形態における作成中のデータ連携定義の構成例を示す図である。
【発明を実施するための形態】
【００１２】
図１を参照すると、本発明の実施形態にかかるデータ連携定義作成装置１は、主な機能部として、演算処理部１０、記憶部２０、画面表示部３０、操作入力部４０、および通信インターフェース部（以下、通信Ｉ／Ｆ部という）５０が設けられている。
【００１３】
画面表示部３０は、ＬＣＤやＰＤＰなどの画面表示装置（ディスプレイ）からなり、演算処理部１０からの指示に応じて、データ連携定義処理画面などの各種情報を画面表示する機能を有している。
【００１４】
操作入力部４０は、キーボードやマウスなどの操作入力装置からなり、オペレータの操作を検出して演算処理部１０に出力する機能を有している。
【００１５】
通信Ｉ／Ｆ部５０は、専用のデータ通信回路からなり、通信回線を介して接続された各種装置との間でデータ通信を行う機能を有している。
【００１６】
記憶部２０は、ハードディスクやメモリなどの記憶装置からなり、演算処理部１０での各種処理に必要な処理情報やプログラム２０Ｐを記憶する機能を有している。プログラム２０Ｐは、演算処理部１０に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信Ｉ／Ｆ部５０などのデータ入出力機能を介して外部装置（図示せず）や記憶媒体（図示せず）から予め読み込まれて記憶部２０に保存される。記憶部２０で記憶される主な処理情報として、データ連携定義情報２０Ａ、処理組合せ知識ベース２０Ｂ、処理量見積り知識ベース２０Ｃ、および移送元データ量２０Ｄがある。
【００１７】
データ連携定義情報２０Ａは、データ連携定義作成装置１によって作成されたデータ連携システムの定義情報である。データ連携システムは、移送元データベースからデータを受信するデータ受信部と、このデータ受信部により受信されたデータに対して変換や加工の処理を行うデータ処理部と、このデータ処理部による処理を施されたデータを移送先データベースに送信するデータ送信部と、これらのデータ受信部、データ処理部、およびデータ送信部における処理の順序を制御するスケジュール部とから構成される。データ連携定義情報２０Ａは、このようなデータ連携システムにおけるデータ受信部、データ処理部、データ送信部、およびスケジュール部の処理の手順を規定する情報である。
【００１８】
処理組合せ知識ベース２０Ｂは、データ連携システムのデータ処理部の処理手順を定義する知識に関する知識ベースである。処理組合せ知識ベース２０Ｂには、同じ処理結果が得られるデータ連携定義の組合せが記憶されている。図２（ａ）は、処理組合せ知識ベース２０Ｂの構成例である。この例では、同じ処理結果が得られるデータ連携定義の組合せが１以上、設定されている。図２（ａ）の例では、データ連携定義ａ１とデータ連携定義ａ２とは同じ処理結果が得られるものとして設定されている。また、データ連携定義ｂ１とデータ連携定義ｂ２とは同じ処理結果が得られるものとして設定されている。
【００１９】
図２（ｂ）、（ｃ）は、処理組合せ知識ベース２０Ｂに設定されるデータ連携定義ａ１、ａ２の構成例である。この例のデータ連携定義ａ１は、図２（ｂ）に示すように、表Ａと表Ｂのデータを列結合し、表Ｃとして出力する処理を定義している。また、データ連携定義ａ２は、図２（ｃ）に示すように、表Ａと表Ｂのデータを昇順または降順にソートし、ソート後のデータを列結合して表Ｃとして出力する処理を定義している。
【００２０】
処理量見積り知識ベース２０Ｃは、データ連携定義によるデータ連携の処理量を見積もるための知識ベースである。処理量見積り知識ベース２０Ｂには、データ連携システムのデータ処理部で処理手順を定義するために使用される単位処理ごとに、その単位処理をコンピュータで実行するのに要する単位データ量当たりの基準処理量が記憶されている。図３は、処理量見積り知識ベース２０Ｃの構成例である。この例では、ソート、列結合（ソート無）、列結合（ソート有）、条件抽出などといった単位処理（単位機能）ごとに、単位データ量当たりの処理量（単位処理量）が設定されている。また、この例では、処理量として、当該処理をハンドコーディングで実現した場合のプログラムのステップ数を使用している。図３では、データ件数１００件を単位データ量とし、ソート（例えばクイックソート）の場合、単位データ量当たりのステップ数は２００ステップと設定されている。また、列結合の場合、入力となる２つの表がソート済でないときは、単位データ量当たりのステップ数は１００００ステップ、入力となる２つの表がソート済のときは、単位データ量当たりのステップ数は３００ステップと設定されている。
【００２１】
データ量２０Ｄは、移送元データベースのデータ量を示す。このデータ量２０Ｄは、オペレータによるデータ連携定義の作成前あるいは作成中に、例えばオペレータによって手動で設定される。
【００２２】
演算処理部１０は、ＣＰＵなどのマイクロプロセッサとその周辺回路を有し、記憶部２０からプログラム２０Ｐを読み込んで実行することにより、上記ハードウェアとプログラム２０Ｐとを協働させて各種処理部を実現する機能を有している。演算処理部１０で実現される主な処理部として、対話処理手段１０Ａ、作成中データ連携定義取得手段１０Ｂ、代替データ連携定義取得手段１０Ｃ、処理量推定手段１０Ｄ、および代替案提示手段１０Ｅがある。
【００２３】
対話処理手段１０Ａは、画面表示部３０にデータ連携定義処理画面を表示し、操作入力部４０を操作するオペレータとの対話処理に従って、データ連携定義処理画面上に、データ連携システムの処理手順を規定するデータ連携定義情報を作成する機能を有する。
【００２４】
図４は、データ連携定義処理画面１００の構成例である。データ連携定義処理画面１００は、主に、メニューバー１１０、一覧ビュー１２０、およびフローエディタ領域１３０を有する。メニューバー１１０には、データ連携定義処理画面１００で使える機能の一覧が表示される。一覧ビュー１２０には、移送元データベースの表や移送先データベースの表などの一覧が表示される。フローエディタ領域１３０は、データ連携定義を作成する領域であり、移送元領域１４０、加工領域１５０、および移送先領域１６０から構成される。
【００２５】
移送元領域１４０は、データ連携システムのデータ受信部の処理手順を規定するデータ連携定義を作成する領域である。オペレータは、移送元となるデータベースの表の一覧を一覧ビュー１２０に表示し、その中から所望の表を移送元領域１４０にドラッグ＆ドロップすると、移送元の表に対応するアイコンが表示される。また、そのアイコンをダブルクリックすれば、移送元の表に関する列情報の設定などが行える。
【００２６】
加工領域１５０は、データ連携システムのデータ処理部の処理手順を規定するデータ連携定義を作成する領域である。オペレータは、ツールボックスから所望の機能を選択すると、その機能に対応するアイコンが加工領域１５０に表示される。また、そのアイコンをダブルクリックすれば、その機能の詳細を設定することができる。また、２つのアイコンに対して所定の接続操作を行うことにより、これら２つのアイコンを接続することができる。
【００２７】
移送先領域１６０は、データ連携システムのデータ送信部の処理手順を規定するデータ連携定義を作成する領域である。オペレータは、移送先となるデータベースの表の一覧を一覧ビュー１２０に表示し、その中から所望の表を移送先領域１６０にドラッグ＆ドロップすると、移送先の表に対応するアイコンが表示される。また、そのアイコンをダブルクリックすれば、移送先の表に関する列情報の設定などが行える。
【００２８】
図４の例では、マスタ表Ａ、マスタ表Ｂの各アイコン１４１、１４２が移送元領域１４０に配置され、ソート機能に対応する２つのアイコン１５１、１５２と、列結合の機能に対応するアイコン１５３とが加工領域１５０に配置され、レプリカ表Ｃのアイコン１６１が移送先領域１６０に配置されている。そして、アイコン１４１とアイコン１５１との間、アイコン１４２とアイコン１５２との間、アイコン１５１および１５２とアイコン１５３との間、アイコン１５３とアイコン１６１との間が、それぞれ接続されている。
【００２９】
なお、データ連携システムのスケジュール部の処理手順を規定するデータ連携定義は、データ連携定義処理画面１００から呼び出されるスケジュール定義画面上で行えるようになっている。
【００３０】
作成中データ連携定義取得手段１０Ｂは、対話処理手段１０Ａから作成中のデータ連携定義を取得する機能と、どのような機能を持つアイコンが加工領域１５０に配置されているかを解析する機能とを有する。また、作成中データ連携定義取得手段１０Ｂは、加工領域１５０に１以上のアイコンが配置されている場合、配置されているアイコンによって定義されているデータ連携定義を代替データ連携定義取得手段１０Ｃと処理量推定手段１０Ｄへ通知する機能を有する。
【００３１】
代替データ連携定義取得手段１０Ｃは、作成中データ連携定義取得手段１０Ｂから通知されたデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を取得する機能を有する。具体的には、代替データ連携定義取得手段１０Ｃは、通知されたデータ連携定義に一致するデータ連携定義１またはデータ連携定義２を図２（ａ）の処理組合せ知識ベース２０Ｂから検索する。そして、一致するデータ連携定義が発見されたならば、それと組になっている他方のデータ連携定義２あるいはデータ連携定義１を代替データ連携定義として取得し、処理量推定手段１０Ｄへ通知する。他方、一致するデータ連携定義が発見されなければ、代替データ連携定義が無い旨を処理量推定手段１０Ｄへ通知する。
【００３２】
処理量推定手段１０Ｄは、作成中データ連携定義取得手段１０Ｂからデータ連携定義が通知され、代替データ連携定義取得手段１０Ｃから代替データ連携定義が通知されると、その各々のデータ連携定義によるデータ連携の処理量を推定する機能を有する。具体的には、処理量推定手段１０Ｄは、作成中のデータ連携定義に含まれるアイコン毎に、そのアイコンの機能をコンピュータで実行するのに要する単位データ量当たりのステップ数を処理量見積り知識ベース２０Ｃから取得するとともに、そのアイコンで処理するデータ量をデータ量２０Ｄから取得し、上記取得したステップ数を、上記取得したデータ量と単位データ量との相違の程度に応じて補正することにより、そのアイコンの機能に要するステップ数を算出する。次に、作成中のデータ連携定義に含まれる全てのアイコンのステップ数を合計することで、作成中のデータ連携定義によるデータ連携で必要な総ステップ数を算出する。代替データ連携定義に対しても同様の手順で、代替データ連携定義によるデータ連携で必要な総ステップ数を算出する。そして、処理量推定手段１０Ｄは、作成中のデータ連携定義および代替データ連携定義について算出したステップ数と、代替データ連携定義とを代替案提示手段１０Ｅに通知する。
【００３３】
代替案提示手段１０Ｅは、処理量推定手段１０Ｄから通知された作成中のデータ連携定義のステップ数と、代替データ連携定義のステップ数とを比較する機能と、比較の結果、代替データ連携定義のステップ数が作成中データ連携定義のステップ数に比べて少なければ、データ連携定義処理画面上に、代替データ連携定義を含むヒント情報を表示する機能とを有する。ヒント情報には、代替データ連携定義だけでなく、作成中のデータ連携定義のステップ数と、代替データ連携定義のステップ数を含めることが望ましい。
【００３４】
次に、図５のフローチャートを参照して、本実施形態の動作について説明する。
【００３５】
データ連携定義作成装置１は、起動されると、対話処理手段１０Ａによる対話処理を開始する（Ｓ１０）。対話処理手段１０Ａは、画面表示部３０に図４に示したようなデータ連携定義処理画面１００を表示し、操作入力部４０を操作するオペレータとの対話処理に従って、データ連携定義処理画面１００上に、データ連携システムの処理手順を規定するデータ連携定義情報を作成する。
【００３６】
対話処理手段１０Ａによる対話処理と並行して、作成中データ連携定義取得手段１０Ｂは、作成中のデータ連携定義を取得して解析する（Ｓ１２）。そして、作成中データ連携定義取得手段１０Ｂは、加工領域１５０に１以上のアイコンが配置されていることを検知すると、配置されているアイコンによって定義されているデータ連携定義を代替データ連携定義取得手段１０Ｃと処理量推定手段１０Ｄへ通知する（Ｓ１３でＹＥＳ）。
【００３７】
代替データ連携定義取得手段１０Ｃは、通知された作成中のデータ連携定義と同じ処理結果が得られる代替データ連携定義の候補を処理組合せ知識ベース２０Ｂから探索する（Ｓ１４）。そして、代替データ連携定義取得手段１０Ｃは、代替データ連携定義が存在する場合、この代替データ連携定義を処理量推定手段１０Ｄに通知する（Ｓ１５でＹＥＳ）。
【００３８】
処理量推定手段１０Ｄは、作成中のデータ連携定義によるデータ連携に要する処理量と代替データ連携定義によるデータ連携に要する処理量とを、ステップ数に換算して算出し、代替案提示手段１０Ｅに通知する（Ｓ１６）。代替案提示手段１０Ｅは、通知されてステップ数を比較し、代替データ連携定義の方が作成中のデータ連携定義に比べてステップ数が少なければ（Ｓ１７でＹＥＳ）、代替データ連携定義と上記算出したステップ数とを含むヒント情報をデータ連携定義処理画面１００に表示する（Ｓ１８）。
【００３９】
オペレータは、データ連携定義処理画面１００に表示されたヒント情報を参考に、作成中のデータ連携定義を変更する。そして、データ連携定義の作成作業を続行する。
【００４０】
データ連携定義の作成を終えると（Ｓ１１でＹＥＳ）、対話処理手段１０Ａは、作成されたデータ連携定義を記憶部２０に保存し、処理を終了する。
【００４１】
次に、具体的な例を挙げて、本実施形態の動作を説明する。
【００４２】
例えばオペレータが、対話処理手段１０Ａを使用してデータ連携定義処理画面１００上に図６に示すようなアイコン１４１、１４２、１５３を配置し、アイコン１４１およびアイコン１４２とアイコン１５３とを接続した場面を想定する。作成中データ連携定義取得手段１０Ｂは、このデータ連携定義を取得して解析することにより、加工領域１５０に１以上のアイコンが配置されているので、表Ａと表Ｂという２つの表を列結合する内容のデータ連携定義を作成中データ連携定義として、処理量推定手段１０Ｄと代替データ連携定義取得手段１０Ｃとに通知する。
【００４３】
代替データ連携定義取得手段１０は、通知されたデータ連携定義が図２（ｂ）のデータ連携定義ａ１に一致するため、組となる図２（ｃ）に示すデータ連携定義ａ２を代替データ連携定義として取得し、処理量推定手段１０Ｄへ通知する。
【００４４】
処理量推定手段１０Ｄは、作成中データ連携定義によるデータ連携に要するステップ数と、代替データ連携定義によるデータ連携に要するステップ数とを算出する。作成中データ連携定義は、移送元の表Ａ、表Ｂのデータを入力して列結合する処理であり、一般に移送元の表はソートされていないため、この列結合は列結合（ソート無）に相当する。列結合（ソート無）に要する単位処理量は図３を参照すると、１００００ステップである。また、例えば表Ａ、表Ｂともにデータ件数が１００件とすると、実際のステップ数も１００００ステップになる。
【００４５】
他方、図２（ｃ）の代替データ連携定義は、移送元の表Ａ、表Ｂのデータをそれぞれソートした後に、列結合する処理である。図３を参照すると、ソートに要する単位処理量（１００件）は２００ステップであるため、データ件数１００件の表Ａのソートに要するステップ数は２００ステップ、データ件数１００件の表Ｂのソートに要するステップ数も２００ステップとして算出される。他方、データ件数１００件のＡ表とデータ件数１００件のＢ表の列結合（ソート有）に要する単位処理量は図３を参照すると、３００ステップである。この結果、合計の処理量は、２００＋２００＋３００＝７００ステップになる。
【００４６】
代替案提示手段１０Ｅは、代替データ連携定義の方が作成中データ連携定義よりもステップ数が少ないので、代替データ連携定義と双方のステップ数の情報を含むヒント情報をデータ連携定義処理画面１００に表示する。
【００４７】
オペレータは、データ連携定義処理画面１００に表示されたヒント情報に従って、作成中のデータ連携定義を代替データ連携定義に変更することで、より性能の良いデータ連携定義を作成することが可能となる。
【００４８】
上述した例では、表Ａ、表Ｂのデータ量が１００件と多かったので、図２（ｃ）に示した代替データ連携定義の方が図６の作成中のデータ連携定義に比べて処理量が少ないが、表Ａ、表Ｂのデータ量が極端に少ない場合には、結果は逆になる。若し、図６の作成中のデータ連携定義の方が図２（ｃ）に示した代替データ連携定義に比べて処理量が少ない場合には、図５のステップＳ１７でＮＯと判定されることになる。
【００４９】
このように本実施形態によれば、知識と経験に乏しいオペレータであっても性能の良いデータ連携定義を作成することが可能になる。
【００５０】
また、本実施形態によれば、データ連携定義の作成中に適宜に代替データ連携定義を含むヒント情報をオペレータに提示するため、後戻りによる効率の悪化を防止することができる。これに対して、データ連携定義の作成終了時点で、作成されたデータ連携定義を解析して代替データ連携定義を含むヒント情報を表示する構成では、修正箇所が上流工程であればあるほど、修正量が多くなり効率が悪化する。
【００５１】
また、本実施形態によれば、データ連携定義の作成段階で最適化できるため、データ連携処理の実行時間の最小化と余分な検証時間の削減が可能になる。これに対して、作成したデータ連携定義によるデータ連携処理を実際に実行して性能を検証する方法によれば、検証時間が必要になる上、検証しなければ作成したデータ連携定義が最適か否かが分からないという問題がある。また、検証によって最適でないことが判明した場合、データ連携定義の作成段階まで戻る必要があるため、開発の効率が低下する。
【符号の説明】
【００５２】
１      データ連携定義作成装置
１０Ａ  対話処理手段
１０Ｂ  作成中データ連携定義取得手段
１０Ｃ  代替データ連携定義取得手段
１０Ｄ  処理量推定手段
１０Ｅ  代替案提示手段
２０    記憶部
２０Ａ  データ連携定義情報
２０Ｂ  処理組合せ知識ベース
２０Ｃ  処理量見積り知識ベース
２０Ｄ  データ量
２０Ｐ  プログラム
３０    画面表示部
４０    操作入力部
５０    通信インターフェース部
１００  データ連携定義処理画面
１１０  メニューバー
１２０  一覧ビュー
１３０  フローエディタ領域
１４０  移送元領域
１４１  アイコン
１４２  アイコン
１５０  加工領域
１５１  アイコン
１５２  アイコン
１５３  アイコン
１６０  移送先領域
１６１  アイコン
【図１】
0005477099.tif 000002
【図２】
0005477099.tif 000003
【図３】
0005477099.tif 000004
【図４】
0005477099.tif 000005
【図５】
0005477099.tif 000006
【図６】
0005477099.tif 000007