(57)【要約】【課題】  本発明は、複数の入出力処理の構成要素（内部処理とオブジェクト）間の関係を管理することで、共通処理の重複開発を排除し、維持管理を実現するシステム管理装置を提供する。【解決手段】  システム管理装置は、オブジェクト情報管理部、プログラム設計部、対応情報管理部、管理情報表示編集処理部、プログラム生成部、の５つの処理部と、オブジェクト情報管理データベース、プログラム設計情報管理データベース、初期状態管理データベース、結果状態管理データベース、対応情報管理データベース、処理情報管理データベース、の６つのデータベースを組み合わせてプログラムの重複排除をする。【選択図】  図１
2005174018.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトの継承関係の最上位のオブジェクトとそのメソッドを格納し管理するメソッド情報管理データベースと、オブジェクトとそのメソッドが与えられたときそれを上記メソッド情報管理データベースに格納されたオブジェクトとそのメソッドとをマッチングさせる対応情報管理部と、を有し、該対応情報管理部は、設計情報としてオブジェクトとそのメソッドを入力したとき、該入力したオブジェクトとそのメソッドと上記メソッド情報管理データベースに管理されているオブジェクトとそのメソッドとマッチングさせ、マッチングしない場合には、入力したオブジェクトの継承関係の最上位のオブジェクトとそのメソッドを上記メソッド情報管理データベースに登録することを特徴とするリポジトリを有するシステム管理装置。
【請求項２】
初期状態のオブジェクトの情報を格納し管理する初期状態管理データベースと、結果状態のオブジェクトの情報を格納し管理する結果状態管理データベースと、初期状態のオブジェクトの継承関係の最上位のオブジェクトとそのメソッドを格納し管理するメソッド情報管理データベースと、初期状態のオブジェクトと結果状態のオブジェクトとの間の対応情報を格納し管理する対応情報管理データベースと、初期状態及び結果状態のオブジェクトが与えられたときそれを上記初期状態管理データベース及び上記結果状態管理データベースに格納されたオブジェクトとをマッチングさせる対応情報管理部と、を有し、該対応情報管理部は、設計情報として初期状態と結果状態の間で状態が変化するオブジェクトを入力したとき、該入力した初期状態及び結果状態のオブジェクトを上記初期状態管理データベース及び上記結果状態管理データベースに格納されたと初期状態及び結果状態のオブジェクトとそれぞれマッチングさせ、マッチングしない場合には、上記入力した初期状態及び結果状態のオブジェクトを上記初期状態管理データベース及び上記結果状態管理データベースにそれぞれ追加登録し、上記入力した初期状態及び結果状態のオブジェクトと上記初期状態管理データベース及び上記結果状態管理データベースに格納されたオブジェクトとの対応情報を上記対応情報管理データベースに登録することを特徴とするリポジトリを有するシステム管理装置。
【請求項３】
請求項２記載のシステム管理装置において、マッチングする場合には、上記入力した初期状態及び結果状態のオブジェクトと上記初期状態管理データベース及び上記結果状態管理データベースに既に格納されているオブジェクトとの対応情報を上記対応情報管理データベースに登録することを特徴とするリポジトリを有するシステム管理装置。
【請求項４】
上記請求項１、２又は３記載のシステム管理装置において、上記リポジトリの情報を画面上に表示する管理情報表示編集処理部を有することを特徴とするシステム管理装置。
【請求項５】
初期状態と結果状態のオブジェクト、該オブジェクトの継承関係、該オブジェクトに付帯するメソッドを管理するオブジェクト情報管理部、上記オブジェクト情報管理部によって管理されているオブジェクトのうち初期状態と結果状態の間で状態が変化するものについて、初期状態のオブジェクトと結果状態のオブジェクトとの対応づけを行い、初期状態のオブジェクトのメソッドの抽出を行い、状態変化プログラムを設計し、その結果を格納し管理するプログラム設計部、該プログラム設計部によって管理されている情報に基いて、初期状態のオブジェクトと結果状態のオブジェクトとの対応、及び、初期状態及び結果状態のオブジェクトの情報とメソッドの情報との対応をそれぞれ格納し管理する対応情報管理部、該対応情報管理部に管理されている情報を表示する管理情報表示編集処理部、及び、上記対応情報管理部に管理されている情報に基いてプログラムを自動生成するプログラム生成部を有するシステム管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシステム管理装置に関し、特に、複数のオブジェクトとオブジェクトに関わるメソッドを管理する機能を有するシステム管理装置に関する。
【背景技術】
【０００２】
企業内の異なるシステムを連携させるエンタープライズアプリケーションインテグレーションでは、異なるシステム間のデータインテグレーションが行われる。データインテグレーションでは、通常、ＥＴＬ（Extract Transform Load）ツール等の簡易開発ツールが使用される。企業の基幹系システム等に蓄積されたデータを利用してデータウエアハウスを構築する場合にも、ＥＴＬツールが使用される。
【０００３】
ＥＴＬツールは、ＧＵＩ（Graphical User Interface）を使用してデータの流れを視覚的に表示するツール、データの修正、統合、要約、計算、変換、ロード等の機能を有し、プログラム言語による開発に比べて、生産性が高く大量の開発に向いているといわれている。
【０００４】
特許文献１には、プログラムとデータ属性、機能分類の関係を管理することにより、プログラムの維持管理を実現するシステムが記載されている。
【０００５】
【特許文献１】特開平8-314701号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来の簡易開発ツールでは、類似した処理がある場合、類似性を人が判断し、比較して共通化候補を検索しなければならないため、効率的でない。また、共通性のある処理を抽出することを助長するため、拡張性、柔軟性が低い欠点がある。
【０００７】
特許文献１に記載された発明では、類似機能が存在するプログラムを検索するだけであり、同一あるいは同じ属性（データ型等）を有するデータ項目を管理し、検索可能としているわけではない。
【０００８】
本発明の目的は、共通処理の重複開発を排除し、開発作業の工数を削減することができるシステム管理装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明では、オブジェクト情報管理部、プログラム設計部、対応情報管理部、管理情報表示編集処理部、プログラム生成部、の５つの処理部と、オブジェクト情報管理データベース、プログラム設計情報管理データベース、初期状態管理データベース、結果状態管理データベース、対応情報管理データベース、処理情報管理データベース、の６つのデータベースを組み合わせてプログラムの重複排除をするためのシステムを構成する。
【００１０】
本発明によると、対応情報管理部によって、オブジェクトの初期状態、結果状態、メソッド、及び、それぞれの対応関係を管理し、共通処理の抽出、維持管理を実現する。
【発明の効果】
【００１１】
本発明によると、共通処理の重複開発を排除し、開発作業の工数を削減することができる。
【発明を実施するための最良の形態】
【００１２】
図１を参照して本発明によるシステム管理装置の例を説明する。本例のシステム管理装置は、オブジェクト情報管理部１１、プログラム設計部１２、対応情報管理部１３、管理情報表示編集処理部１４、及び、プログラム生成部１５を有する。
【００１３】
オブジェクト情報管理部１１は、オブジェクト情報管理データベース１１０を管理する。オブジェクト情報管理データベース１１０には、初期状態の複合オブジェクト１１１と結果状態の複合オブジェクト１１２が格納され、それぞれ、１つ又は複数のオブジェクトから構成される複合オブジェクト、各オブジェクト又は各複合オブジェクトの継承関係、各オブジェクト又は各複合オブジェクトに付帯するメソッドが格納されている。尚、本願の明細書及び請求の範囲にて、オブジェクトは複合オブジェクトを含むものとして説明する。
【００１４】
プログラム設計部１２は、開発者の指示によりプログラムを設計する機能を有し、オブジェクト情報管理データベース１１０によって管理されているオブジェクトのうち、初期状態と結果状態の間で状態が変化するものについて、初期状態のオブジェクトと結果状態のオブジェクトとの対応づけを行い、初期状態のオブジェクトのメソッドの抽出を行い、状態変化プログラムを設計し、それらの結果を、プログラム設計情報管理データベース１２０に格納する。
【００１５】
対応情報管理部１３は、初期状態管理データベース１３１、結果状態管理データベース１３２、処理情報管理データベース１３３、及び、対応情報管理データベース１３４を管理するリポジトリである。対応情報管理部１３は以下に説明するように、２つのマッチングと対応関係の登録を行う。
【００１６】
初期状態管理データベース１３１は、初期状態のオブジェクトの情報を格納し管理する。結果状態管理データベース１３２は、結果状態のオブジェクトの情報を格納し管理する。処理情報管理データベース１３３は、初期状態及び結果状態のオブジェクトの、継承関係の最上位のオブジェクトとそのメソッドを格納し管理する。
【００１７】
対応情報管理データベース１３４は、初期状態のオブジェクトと結果状態のオブジェクトとの対応、初期状態管理データベース１３１に格納されているオブジェクトの情報と処理情報管理データベース１３３に格納されているメソッドの情報との対応、結果状態管理データベース１３２に格納されているオブジェクトの情報と処理情報管理データベース１３３に格納されているメソッドの情報との対応、をそれぞれ格納し管理する。
【００１８】
対応情報管理部１３による第１のマッチングを説明する。対応情報管理部１３は、初期状態の複合オブジェクトの、継承関係の最上位の複合オブジェクトとそのメソッドを、処理情報管理データベース１３３に格納されている複合オブジェクトとそのメソッドとそれぞれマッチングさせる。マッチングしない場合には、即ち、初期状態の複合オブジェクトの、継承関係の最上位の複合オブジェクトとそのメソッドが、処理情報管理データベース１３３に存在しない場合には、それを処理情報管理データベース１３３に格納する。
【００１９】
同様に、対応情報管理部１３は、結果状態の複合オブジェクトの、継承関係の最上位の複合オブジェクトとそのメソッドを、処理情報管理データベース１３３に格納されている複合オブジェクトとそのメソッドとそれぞれマッチングさせる。マッチングしない場合には、即ち、結果状態の複合オブジェクトの、継承関係の最上位の複合オブジェクトとそのメソッドが、処理情報管理データベース１３３に存在しない場合には、それを処理情報管理データベース１３３に格納する。
【００２０】
対応情報管理部１３による第２のマッチングを説明する。対応情報管理部１３は、オブジェクト情報管理データベース１１０に登録されている複合オブジェクトのうち、初期状態と結果状態の間で状態が変化するものについて、初期状態の複合オブジェクトを、初期状態管理データベース１３１に管理されている複合オブジェクトとマッチングさせる。マッチングしない場合には、即ち、その初期状態の複合オブジェクトが、初期状態管理データベース１３１に登録されていない場合には、その初期状態の複合オブジェクトを初期状態管理データベース１３１に登録する。
【００２１】
また、対応情報管理部１３は、オブジェクト情報管理データベース１１０に登録されている複合オブジェクトのうち、初期状態と結果状態の間で状態が変化するものについて、結果状態の複合オブジェクトを、結果状態管理データベース１３２に管理されている複合オブジェクトとマッチングさせる。マッチングしない場合には、即ち、その結果状態の複合オブジェクトが、結果状態管理データベース１３２に登録されていない場合には、その結果状態の複合オブジェクトを結果状態管理データベース１３２に登録する。
【００２２】
対応情報管理部１３は、第２のマッチングにおいて、初期状態の複合オブジェクトと初期状態管理データベース１３１に登録されている複合オブジェクトの対応情報を、メソッド情報と共に、対応情報管理データベース１３４に登録する。即ち、マッチングする場合には、初期状態の複合オブジェクトと初期状態管理データベース１３１に既に登録されている複合オブジェクトとの間の対応情報とメソッド情報を対応情報管理データベース１３４に登録する。マッチングしない場合には、初期状態の複合オブジェクトを、初期状態管理データベース１３１に登録した後、登録した複合オブジェクトと初期状態の複合オブジェクトとの対応情報とメソッド情報を対応情報管理データベース１３４に登録する。
【００２３】
対応情報管理部１３は、同様に、第２のマッチングにおいて、結果状態の複合オブジェクトと結果状態管理データベース１３２に登録されている複合オブジェクトの対応情報を、メソッド情報と共に、対応情報管理データベース１３４に登録する。
【００２４】
対応情報管理部１３は、更に、初期状態の複合オブジェクトと結果状態の複合オブジェクトとの対応情報も対応情報管理データベース１３４に登録する。
【００２５】
図１には、対応情報管理データベース１３４に格納された対応表１３４１、１３４２が図示されている。図示のように、初期状態のデータ群（１）（２）（３）及び結果状態のデータ群（Ａ）（Ｂ）（Ｃ）の各々に対して対応表が作成されている。上側の初期状態のデータ群（１）（２）（３）に対する対応表を説明する。対応表の各行は、初期状態管理データベース１３１に登録されたオブジェクトＡ、Ｂ、Ｃ、Ｄ等に対応しており、各列には、処理情報管理データベース１３３に登録されたメソッド１、メソッド２、メソッド３等が表示されている。下側の結果状態のデータ群（Ａ）（Ｂ）（Ｃ）も同様である。上側の初期状態のデータ群（１）（２）（３）の各々は、下側の結果状態のデータ群（Ａ）（Ｂ）（Ｃ）の各々に対応している。
【００２６】
管理情報表示編集処理部１４は、初期状態管理データベース１３１、結果状態管理データベース１３２、処理情報管理データベース１３３、及び、対応情報管理データベース１３４に格納されている情報を標準出力に出力、表示し、開発者が、情報を編集することを支援する。プログラム生成部１５は、初期状態管理データベース１３１、結果状態管理データベース１３２、処理情報管理データベース１３３、及び、対応情報管理データベース１３４の情報から、プログラムを自動生成する。
【００２７】
以下、オブジェクトを「データ項目」、複合オブジェクトを「複数のデータ項目の集合」、継承関係の最上位のオブジェクトを「ドメイン」、メソッドを「データの処理」（抽出、変換、集計等）、初期状態の複合オブジェクトを「Inputデータ」、結果状態の複合オブジェクトを「outputデータ」、と想定して、説明する。また、オブジェクト情報管理部１１については、以下を前提とする。オブジェクト情報管理部１１には、Inputデータ、及び、Outputデータが存在し、それぞれの中に、データ項目又はデータ項目の集合体が含まれる。また、ドメインは、Inputデータ、及び、Outputデータとは別に存在し、全てのInputデータ、及び、Outputデータに含まれるデータ項目は、データ型、桁数等の属性を、ドメインから継承する。
【００２８】
図２を参照して、本例のシステム管理装置の全体の処理を説明する。まず、ステップＳ０１にて、プログラム設計部１２は、その設計機能を用いて、開発者の入力データに基づいて、データの入出力プログラムを設計する。プログラム設計部１２は、設計した入出力プログラムの設計情報をプログラム設計情報管理データベース１２０に格納する。この設計情報には、Inputデータ、Inputデータを構成するデータ項目（又はデータ項目の集合）、処理、Outputデータ、Outputデータを構成するデータ項目（又はデータ項目の集合）が含まれる。
【００２９】
次にステップＳ０２にて、対応情報管理部１３は、開発者の入力命令に基づいて、マッチング・登録処理を実行する。開発者は、例えば、画面上のマッチング・登録実行ボタンを押下することにより入力命令を生成する。ステップＳ０２のマッチング・登録処理の詳細は、以下に、図３を参照して説明する。
【００３０】
次に、ステップＳ０３にて、管理情報表示編集処理部１４は、マッチング・登録処理の結果を画面に表示する。それによって、開発者は画面で内容を確認することができる。ステップＳ０４にて、管理情報表示編集処理部１４は、開発者からの修正命令の有無を判定する。開発者は、不具合等の修正の必要があれば、修正命令を入力する。開発者からの修正命令があれば、ステップＳ０５に進み、開発者からの修正命令に従って修正する。修正が終了したとき、又は修正命令が無かった場合には、ステップＳ０６にて、プログラム生成部１５は、開発者のプログラム生成命令を入力し、プログラムを自動的に生成する。開発者は、例えば、画面上のプログラム生成ボタンを押すことにより、プログラム生成命令を入力する。
【００３１】
図３を参照して図２のステップＳ０２のマッチング・登録処理の詳細を説明する。まず、ステップＳ１１にて、対応情報管理部１３は、処理情報管理データベース１３３を検索し、処理が存在するかどうかを検索する。処理が存在しない場合は、ステップＳ１２に進み、処理が存在する場合は、ステップＳ１５に進む。
【００３２】
ステップＳ１２にて、対応情報管理部１３は、プログラム設計情報管理データベース１２０にInputデータのデータ項目が存在するかどうかを検索する。Inputデータのデータ項目が存在しない場合は、処理は終了し、存在する場合は、ステップＳ１３に進む。ステップＳ１３にて、処理情報管理データベース１３３に、Inputデータのドメインの識別子（IDやドメイン名称等）と処理の識別子（処理IDや処理名称等）を登録する。ステップＳ１４にて、初期状態管理データベース１３１に、Inputデータの識別子（IDやデータ項目名称等）を登録する。
【００３３】
全てのInputデータのデータ項目に対して処理が終了すると、ステップＳ１１に戻る。ステップ１１では、対応情報管理部１３は、処理情報管理データベース１３３に処理が存在するかどうかを検索する。ステップＳ１３及びステップＳ１４の処理が実行された後であれば、処理情報管理データベース１３３に処理が存在するから、ステップＳ１５に進む。ステップＳ１５にて、対応情報管理部１３は、Inputデータのデータ項目が存在するかどうかを検索する。Inputデータが存在しない場合は、処理は終了し、存在する場合は、ステップＳ１６に進む。
【００３４】
ステップ１６とステップ１７は上述の第１のマッチングに相当する。ステップＳ１６にて、対応情報管理部１３は、Inputデータの処理が処理情報管理データベース１３３に存在するかどうかを検索する。Inputデータの処理が存在する場合は、ステップＳ１８に進み、Inputデータの処理が存在しない場合は、ステップＳ１７に進む。ステップＳ１７にて、対応情報管理部１３は、処理情報管理データベース１３３に、Inputデータのドメインの識別子（IDやドメイン名称等）と処理の識別子（処理IDや処理名称等）を登録し、ステップＳ１８に進む。
【００３５】
ステップ１８とステップ１９は上述の第２のマッチングに相当する。ステップＳ１８にて、対応情報管理部１３は、Inputデータのうち、初期状態と結果状態の間で状態が変化するものについて、Inputデータの項目が初期状態管理データベース１３１に存在するかどうかを検索する。Inputデータの項目が存在する場合は、ステップＳ２０に進み、Inputデータの項目が存在しない場合は、ステップＳ１９に進む。ステップＳ１９にて、対応情報管理部１３は、初期情報管理データベース１３１に、Inputデータの項目の識別子（IDやデータ項目名称等）を登録し、ステップＳ２０に進む。
【００３６】
ステップＳ２０にて、対応情報管理部１３は、プログラム設計情報管理データベース１２０に登録されているInputデータの次のデータ項目に進み、ステップＳ１５に戻る。
【００３７】
こうして、全てのデータ項目に対するマッチングが終了すると、このInputデータに対するマッチングが終了する。対応するOutputデータに関しても同様の処理を行う。このようなマッチングを全てのInputデータ及びOutputデータに対して実行し、処理情報管理データベース１３３への登録と初期情報管理データベース１３１及び結果情報管理データベース１３２への登録が完了すると、次に、対応関係を対応情報管理データベース１３４へ登録する。勿論、対応関係の登録は、マッチングと同時に行ってもよい。InputデータとOutputデータの対応関係、初期状態管理データベース１３１に登録されたInputデータと処理情報管理データベース１３３に登録されたデータ処理情報の対応関係、結果状態管理データベース１３２に登録されたOutputデータと処理情報管理データベース１３３に登録されたデータ処理情報の対応関係等を求め、それを対応情報管理データベース１３４へ登録する。
【００３８】
図４は、上述の処理によって得られた初期状態管理データベース１３１、結果状態管理データベース１３２、処理情報管理データベース１３３、及び、対応情報管理データベース１３４の内容の例を示す。本例では、ｎ個の設計情報（１）〜（ｎ）が与えられ、これらの設計情報は、オブジェクト情報管理データベース１１０及びプログラム設計情報管理データベース１２０に格納されている。上述のステップＳ１６及びＳ１７によって、処理情報管理データベース１３３に、処理が追加登録され、上述のステップＳ１８及びＳ１９によって、初期状態管理データベース１３１に、データ項目が追加登録され、結果状態管理データベース１３２は、データ項目が追加登録される。対応情報管理データベース１３４には、設計情報（１）〜（ｎ）の各々ついて、Inputデータの対応表１３４１とOutputデータの対応表１３４２が登録されている。
【００３９】
対応情報管理データベース１３４に管理されているInputデータの対応表１３４１について説明する。Inputデータの対応表１３４１の各行は初期状態管理データベース１３１に登録されたデータ項目Ａ、Ｂ、Ｃ、Ｄ等に対応しており、１列目には、Outputデータの対応する項目ａ、ｂ、ｃ、ｄ等が表示され、２列目には、処理情報管理データベース１３３に登録された処理１、処理２、処理３等が表示されている。Outputデータの対応表１３４２も同様である。
【００４０】
先ず、InputデータとOutputデータの対応関係について説明する。対応情報管理データベース１３４には、上側の対応表１３４１の各々と下側の対応表１３４２の各々が対応して表示されている。例えば、設計情報（１）のInputデータは、その下側に表示されたOutputデータ（７）に対応している。設計情報（２）のInputデータは、その下側に表示されたOutputデータ（１５）に対応している。
【００４１】
次に、初期状態管理データベース１３１に登録されたInputデータと処理情報管理データベース１３３に登録された処理情報の対応関係を説明する。Inputデータの対応表１３４１の各行は初期状態管理データベース１３１に登録されたデータ項目Ａ、Ｂ、Ｃ、Ｄ等に対応しており、例えば、Inputデータ（１）の場合、初期状態管理データベース１３１に登録されたInputデータのデータ項目Ａは、処理情報管理データベース１３３に登録された処理１に対応している。例えば、初期状態管理データベース１３１に登録されたInputデータのデータ項目Ｂは、処理情報管理データベース１３３に登録された処理２に対応している。
【００４２】
結果状態管理データベース１３２に登録されたOutputデータと処理情報管理データベース１３３に登録されたデータ処理情報の対応関係も同様である。例えば、結果状態管理データベース１３２に登録されたOutputデータ（１５）のデータ項目dは、処理情報管理データベース１３３に登録された処理５に対応している。
【００４３】
本発明では、複数の入出力処理の構成要素（内部処理とオブジェクト）間の関係を管理し、その結果をユーザに表示する。従って、ユーザは、各Inputデータ、Outputデータの構成要素で、どのデータ定義、処理が使われているのかがわかり、仕様を把握し、修正ができる。
【００４４】
本発明によると、共通処理の重複開発を排除し、維持管理局面の保守工数削減、拡張性・柔軟性の確保が可能となる。その結果、開発作業の工数削減効果が大きくなる。
【００４５】
本発明は、既存のデータベースからデータを抽出、変換し、異なるデータベースにデータを格納する、簡易開発ツール（ＥＴＬツール）において利用されることができる。
【００４６】
以上本発明の例を説明したが、本発明は上述の例に限定されるものではなく、特許請求の範囲に記載された発明の範囲にて様々な変更が可能であることは当業者に理解されよう。
【図面の簡単な説明】
【００４７】
【図１】本発明によるシステム管理装置の構成を示す図である。
【図２】本発明によるシステム管理装置の全体の処理を示す流れ図である。
【図３】図２の流れ図のうち対応情報管理部の処理を示す流れ図である。
【図４】本発明によるシステム管理装置の対応情報管理部の詳細を示す図である。
【符号の説明】
【００４８】
１１…オブジェクト情報管理部、１２…プログラム設計部、１３…対応情報管理部、１４…管理情報表示編集処理部、１５…プログラム生成部
【図１】
2005174018.tif 000003
【図２】
2005174018.tif 000004
【図３】
2005174018.tif 000005
【図４】
2005174018.tif 000006