特許第6805109号(P6805109)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧
<>
  • 特許6805109-分析プログラム 図000002
  • 特許6805109-分析プログラム 図000003
  • 特許6805109-分析プログラム 図000004
  • 特許6805109-分析プログラム 図000005
  • 特許6805109-分析プログラム 図000006
  • 特許6805109-分析プログラム 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6805109
(24)【登録日】2020年12月7日
(45)【発行日】2020年12月23日
(54)【発明の名称】分析プログラム
(51)【国際特許分類】
   G06F 16/215 20190101AFI20201214BHJP
   G06F 16/2458 20190101ALI20201214BHJP
【FI】
   G06F16/215
   G06F16/2458
【請求項の数】5
【全頁数】12
(21)【出願番号】特願2017-212798(P2017-212798)
(22)【出願日】2017年11月2日
(65)【公開番号】特開2019-86896(P2019-86896A)
(43)【公開日】2019年6月6日
【審査請求日】2019年12月4日
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100124844
【弁理士】
【氏名又は名称】石原 隆治
(72)【発明者】
【氏名】神 明夫
(72)【発明者】
【氏名】井上 雅之
【審査官】 原 秀人
(56)【参考文献】
【文献】 特開2015−026188(JP,A)
【文献】 特開2001−282819(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00−16/958
(57)【特許請求の範囲】
【請求項1】
複数の項目を有する複数のデータを、前記複数の項目のうちの第1の項目における値に基づいてソートするソート手順と、
ソート結果において、前記第1の項目の値の配列状態と、前記複数の項目のうちの他の項目の値の配列状態とに基づいて、前記データに関するルールを抽出する抽出手順と、
をコンピュータに実行させることを特徴とする分析プログラム。
【請求項2】
前記抽出手順は、前記第1の項目について同一の値を有するデータの集合と、他の項目について同一の値を有するデータの集合との共通性又は包含関係の有無に基づいて、前記データに関するルールを抽出する、
ことを特徴とする請求項1記載の分析プログラム。
【請求項3】
前記抽出手順は、前記第1の項目について第1の値を有するデータの集合が、第2の項目について第2の値を有するデータの集合の部分集合である場合、前記第1の項目が前記第1の値である場合に、前記第2の項目は前記第2の値であるというルールを抽出する、
ことを特徴とする請求項1又は2記載の分析プログラム。
【請求項4】
前記抽出手順は、前記第1の項目について第3の値を有するデータの集合と第4の値を有すデータの集合が、第2の項目について第5の値を有するデータの集合の部分集合である場合、前記第1の項目が前記第3の値又は前記第4の値である場合に、前記第2の項目は前記第5の値であるというルールを抽出する、
ことを特徴とする請求項1乃至3いずれか一項記載の分析プログラム。
【請求項5】
前記項目ごとに値の種別数を特定し、前記データの数に対する前記種別数の割合が閾値以上である項目について、全ての前記データに同じ値を付与する付与手順を前記コンピュータに実行させ、
全ての前記データに同じ値が付与された項目については、前記付与手順において付与された値に基づいて、前記ソート手順及び前記抽出手順を前記コンピュータに実行させる、
ことを特徴とする請求項1乃至4いずれか一項記載の分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分析プログラムに関する。
【背景技術】
【0002】
現行システムのDB(データベース)ストアデータをデータテーブル単位で入力して分析し、データテーブル内のカラム間のデータ値の組合せによって実際に起こるパタンが保有するルール(規則性)を自動的に検出することを考える。ここでいうルールとは主にビジネスルールを指し、例えば、遊園地のチケット管理システムが保有するビジネスルールとしては、「チケット価格は大人は2600円、子供は1300円」などである。
【0003】
従来、現行システムを使用する業務に関するビジネスルールの検出は、人が現行システムに関するドキュメント類を読み、理解してそこから抽出する方法や関係者からヒアリングを実施して聞き出す方法があった。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2011−154653号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、ドキュメントを理解する方法では、ドキュメントが常に最新化されていなければ正しいルールが抽出できない問題や自動抽出できず大きな稼動がかかるという問題が有る。また、ヒアリングによる方法でも、ヒアリング対象者が忘れているルールや知らないルールは検出できない問題があり、自動抽出できないという稼動問題も有る。
【0006】
一方で、現行システムのプログラムを解析する方法も有る。この方法では、条件分岐等を追跡等することによって、どのような規則性があるかを知ることができるが、分析するために大きな稼動がかかり、分析結果は、プログラムに記述されたルールしか抽出できない、という課題が有る。例えば、プログラムに記述されていないルールとして、「システムの利用は月曜日以外の全ての曜日で実施されている」というルールがあってもプログラム解析によってこのルールを抽出することは困難である。
【0007】
また、一般的に概念データモデルから論理モデルを作成し、更に論理モデルから物理モデルを作成していく方法によってシステムのデータベースを作成するといった方法が有る(例えば、特許文献1参照)。そのため、この方法の逆の方法をたどれば、つまり、物理モデルをインプットとすればそこから論理モデルを生成し、論理モデルから概念データモデルを生成することも可能である。すなわち、現行システムの仕様を概念として抽出することは可能である。ここで抽出できる現行システムの仕様とは、データベースがどのような意味(エンティティ)のデータテーブルを持ち、データテーブル内にはどのような属性(データ項目)を持ち、各テーブル間の関係はどうなっているか、などである。
【0008】
しかし、このような方法でも、各データテーブル内にある規則性、特にビジネスルールに相当する規則性を抽出することは困難である。
【0009】
本発明は、上記の点に鑑みてなされたものであって、データ群からのルールの抽出を可能とすることを目的とする。
【課題を解決するための手段】
【0010】
そこで上記課題を解決するため、分析プログラムは、複数の項目を有する複数のデータを、前記複数の項目のうちの第1の項目における値に基づいてソートするソート手順と、ソート結果において、前記第1の項目の値の配列状態と、前記複数の項目のうちの他の項目の値の配列状態とに基づいて、前記データに関するルールを抽出する抽出手順と、をコンピュータに実行させる。
【発明の効果】
【0011】
データ群からのルールの抽出を可能とすることができる。
【図面の簡単な説明】
【0012】
図1】本発明の実施の形態における分析装置10のハードウェア構成例を示す図である。
図2】本発明の実施の形態における分析装置10の機能構成例を示す図である。
図3】分析装置10が実行する処理手順の一例を説明するためのフローチャートである。
図4】入力データ群の一例を示す図である。
図5】或る項目のラベルに基づくデータ群のソート結果の一例を示す図である。
図6】本実施の形態において導出可能なルールの一例を説明するための図である。
【発明を実施するための形態】
【0013】
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における分析装置10のハードウェア構成例を示す図である。図1の分析装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
【0014】
分析装置10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0015】
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って分析装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
【0016】
図2は、本発明の実施の形態における分析装置10の機能構成例を示す図である。図2において、分析装置10は、データ入力部11、ラベル付与部12、ソート部13、ルール抽出部14及びルール出力部15等を有する。これら各部は、分析装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。
【0017】
データ入力部11は、分析対象の複数のデータを入力する。各データは、共通の複数の項目(カラム)を有する。したがって、当該複数のデータは、テーブルデータ(表形データ)に整形されて入力されてもよい。この場合、1つの行が1つのデータに相当する。依存関係の有る複数のテーブルデータが入力される場合、データ入力部11は、主キーと外部キーとの関係に基づいて依存関係を導出して、1つのテーブルデータに統合してもよい。なお、各項目の値は、数値、記号、文字等のいずれであってもよい。
【0018】
ラベル付与部12は、各データについて、項目ごとに、当該項目における値の種別ごとのラベルを付与する。したがって、或るデータと他のデータとについて、同じ項目の同じ値は、同じラベルが付与される。
【0019】
ソート部13は、項目ごとに、当該項目について同じラベルが連続するようにデータ群を並べ替える(ソートする)。
【0020】
ルール抽出部14は、ソート部13による並べ替えの結果(ソート結果)に基づいて、入力されたデータ群に関する規則性を示すルール(例えば、ビジネスルール)を抽出する。当該ルールとは、例えば、入力されたデータ群の生成の元となった業務又はビジネスに関するルールをいう。
【0021】
ルール出力部15は、ルール抽出部14によって抽出されたルールを出力する。
【0022】
以下、分析装置10が実行する処理手順について説明する。図3は、分析装置10が実行する処理手順の一例を説明するためのフローチャートである。
【0023】
ステップS101において、データ入力部11は、データ群(以下「入力データ群」という。)を入力する。
【0024】
図4は、入力データ群の一例を示す図である。図4において、各データ(各レコード又は各行)は、特定の商品A(例えば、或る遊園地aのチケット)の購買履歴を示し、性別、年齢層、会員フラグ、価格及び住所等の各項目の値を含む。性別は、商品の購買者の性別である。年齢層は、年齢の10の位の異同によって購買者を区別する概念である。会員フラグは、商品Aに関する会員であるか否かを示す情報である。価格は、購買者が商品Aの購入に支払った金額である。なお、商品Aの価格は、全ての購買者に対して均一ではなく、購買者の属性等に応じて変化する。住所は、購買者の住所である。
【0025】
続いて、ラベル付与部12は、入力データ群の項目数Cをカウントする(S102)。本実施の形態において、各データは同じ項目を有するため、1つのデータの項目数がカウントされればよい。データ群がテーブルデータとして入力された場合には、テーブルの項目数がカウントされればよい。
【0026】
続いて、ラベル付与部12は、変数nに1を代入する(S103)。変数nは、処理対象とする項目の順番を示す変数である。
【0027】
続いて、ラベル付与部12は、入力データ群における、n番目の項目(以下、「項目n」という。)の値の種別数Sをカウントする(S104)。例えば、n番目の項目が、性別を示す項目であれば、値の種別数Sは基本的には「男」及び「女」の2になる。但し、n番目の項目が空欄であるデータが有る場合、値の種別数Sは3になる。すなわち、空欄(値が無い状態)も、1つの種別としてカウントされる。
【0028】
続いて、ラベル付与部12は、種別数Sがデータ数(テーブルデータの場合であれば行数)と同じであるか否かを判定する(S105)。種別数Sがデータ数と同じである場合(すなわち、項目nについて全てのデータの値が異なる場合)(S105でYES)、ラベル付与部12は、全データの項目nに共通のラベル「Labeln−1」を付与する(S106)。すなわち、全データに対して同じラベルが付与される。
【0029】
一方、種別数Sがデータ数と異なる場合(S105でNO)、ラベル付与部12は、各データの項目nに、当該データの項目nの値の種別に応じたラベル(Labeln−1〜Labeln−S)を付与する(S107)。すなわち、項目nの値が同じデータに対しては、項目nに関して同じラベルが付与される。
【0030】
なお、ステップS105の趣旨は、項目nの値が、有限の候補の中からの選択的なものであるか否(不特定多数でないか否か)かを判定することにある。したがって、例えば、仮に「氏名」といった項目が有る場合、当該項目については、ステップS105においてYESと判定されることが期待される。しかし、「氏名」については同姓同名の可能性が有り、同姓同名が含まれている場合、ステップS105における判定はNOとなってしまう。そこで、ステップS105では、データ数に対する種別数Sの割合又は比率(すなわち、種別数S/データ数)が、閾値以上であるか否かが判定されるようにしてもよい。当該割合又は比率が閾値以上であればステップS106が実行され、そうでなければ、ステップS107が実行されるようにしてもよい。
【0031】
続いて、ラベル付与部12は、変数nの値が項目数C以上であるか否かを判定する(S108)。変数nの値が項目数C未満である場合(S108でNO)、ラベル付与部12は、変数nに1を加算して(S109)、ステップS104以降を繰り返す。すなわち、全ての項目についてステップS104以降が実行される。その結果、全データの全ての項目に対してラベルが付与される。
【0032】
変数nの値が項目数C以上になると(S108でYES)、ソート部13は、変数nに1を代入する(S110)。続いて、ソート部13は、項目nのラベルに基づいて、入力データ群をソートする(S111)。すなわち、ソート部13は、項目nについて同じラベルが連続するように入力データ群を並べ替える。
【0033】
図5は、或る項目のラベルに基づくデータ群のソート結果の一例を示す図である。図5において、水平方向は、項目の並びに対応し、垂直方向は、データ数(データの並び)に対応する。すなわち、#1〜#7は、それぞれ、項目の識別子である。また、項目#1において、「Label1−1」の高さは、項目#1に「Label1−1」が付与されたデータ数に対応する。
【0034】
ここでは、項目ごとに、同じラベルが付与されたデータの集合を「グループ」という。図5では、項目#1のラベルに基づくソート結果を示す。したがって、項目#1については、グループが明確に区別されている。一方、他の項目は、項目#1に従って並べられているため(すなわち、各データの項目間の関係は維持されているため)、例えば、項目#3のように、1つのグループが複数に分割されて分布している。なお、図5は、説明の便宜上、図4に対して正確には整合していない。
【0035】
続いて、ルール抽出部14は、ソート結果における、項目nのラベルの配列状態と他の項目のラベルの配列情報とに基づいて、項目nが、他のいずれかの項目といずれかの包含関係パタンを有するか否かを判定する(S112)。
【0036】
ここで、包含関係パタンとは、以下の(1)〜()のような関係をいい、例えば、項目間の相関関係の高さを区別する概念である。本実施の形態では、一例として、以下のパタン1〜パタン7までのつの包含関係パタンが定義される。
(1)パタン1:複数グループ同士で完全同期(すなわち、一方の項目と他方の項目との間でグループ数が同じであり、各グループに属するデータの集合が一致する。)
(2)パタン2:一部のグループ同士で同期(すなわち、一部のグループに属するデータの集合が一致する。)
(3)パタン3:双方の項目に複数個のグループが有り、全体的な包含関係(一方の各グループは、他方のいずれかのグループに包含され、当該他方のグループの各グループは、当該一方のグループを1以上包含する)が成立
(4)パタン4:一方の複数のグループの組み合わせが他方のグループに同期(すなわち、一方の複数のグループに属するデータの集合が、他方の一つのグループに属するデータの集合に一致する。)
(5)パタン5:一方の項目の複数のグループが、他方の項目の1つのグループに包含される(すなわち、一の項目の複数のグループに属すデータの集合が、他方の項目の1つのグループの真部分集合である。)
(6)パタン6:一部のグループに包含関係が成立(一方のいずれかのグループに属するデータの集合が、他方のいずれかのグループに属するデータの集合の真部分集合である。)
(7)パタン7:一方の項目が単一グループであるために包含関係が成立
このように、ソート結果において、項目nについて同一の値を有するデータの集合と、他の項目について同一の値を有するデータの集合との共通性又は包含関係の有無に基づいて、項目nと他の項目との包含関係パタン(相関の高さ)が判定される。なお、相関関係の高さは、パタン1>パタン2>パタン3>パタン4>パタン5>パタン6>パタン7の関係に有る。
【0037】
例えば、項目#1の各グループに属するデータの集合と、項目#2の各グループに属するデータの集合とは完全に一致する。としたがって、項目#1は、項目#2との間で、パタン1の包含関係パタンを有する。
【0038】
また、項目#1の「Label1−1」のグループに属するデータの集合と、項目#4の「Label4−1」のグループに属するデータの集合とは完全に一致(同期)しているが、他のグループ間では同期が認められない。したがって、項目#1は、項目#との間でパタン2の包含関係パタンを有する
また、項目#1及び項目#7の双方は、複数のグループを有し、双方の各グループの全ては、他方のいずれかのグループに包含される。具体的には、項目#1の「Label1−1」のグループに属するデータ集合と「Label1−2」のグループに属するデータ集合とが構成するデータ集合は、項目#7の「Label7−1」のグループに属するデータ集合に一致する。また、項目#1の「Label1−3」のグループに属するデータ集合と「Label1−4」のグループに属するデータ集合とが構成するデータ集合は、項目#7の「Label7−2」のグループに属するデータ集合に一致する。したがって、項目#1は、項目#7との間でパタン3の包含関係パタンを有する。なお、包含関係の有無については、項目nのいずれかのグループが他の項目のいずれかの項目のグループを含むか、及び、項目nのいずれかのグループが他の項目のいずれかの項目のグループに含まれるかのいずれか一方のみが判定されてもよい。他方については、他の項目が、項目nとなった際に判定可能だからである。
【0039】
また、項目#1のLabel1−1」のグループに属するデータ集合と「Label1−2」のグループに属するデータ集合とは、項目#8の「Label8−1」のグループに属するデータ集合の真部分集合である。したがって、項目#1は、項目#8との間でパタン4の包含関係パタンを有する。
【0040】
また、項目#1の「Label1−1」のグループに属するデータ集合と「Label1−2」のグループに属するデータ集合とが構成するデータ集合は、項目#6の「Label6−1」のグループに属するデータ集合に一致するが、他のグループに関して包含関係は認められない。したがって、項目#1は、項目#6との間でパタン5の包含関係パタンを有する。
【0041】
また、項目#5のグループは一つである。したがって、項目#1の全てのグループは、項目#5の単一のグループに包含される。よって、項目#1は、項目#5との間でパタン7の包含関係パタンを有する。
【0042】
なお、項目#1と項目#3とは、いずれのグループについても同期又は包含関係が認められない。したがって、項目#1は、項目#3との間において、包含関係パタンを有さない。
【0043】
また、項目#1については、パタン6の包含関係パタンを有する他の項目は存在しないが、例えば、項目#4は、項目#6との間には、パタン6の包含関係パタンが存在する。すなわち、項目#4の「Label4−1」のグループに属するデータ群は、項目#6の「Label6−1」のグループに属するデータ群の真部分集合である。
【0044】
項目nが、全ての項目との間で包含関係パタンを有さない場合(S112でNO)、ステップS114に進む。一方、項目nが、他のいずれかの項目との間で少なくとも1つの包含関係パタンを有する場合(S112でYES)、ルール抽出部14は、項目nが有する包含関係パタンに基づいて、ルールを抽出する(S113)。
【0045】
図5の例に従えば、以下のようなルールが抽出される。
【0046】
パタン1に基づいて、項目#1が「Label1−1」ならば項目#2は「Label2−1」であり(逆方向のルールも成立)、項目#1の「Label1−2」〜「Label1−4」と項目#2の「Label2−2」〜「Label2−4」との間についても同様のルールが成立するといったルールR1が抽出される。
【0047】
パタン2に基づいて、項目#1が「Label1−1」ならば項目#4は「Label4−1」である(逆方向のルールも成立)といったルールR2が抽出される。
【0048】
パタン3に基づいて、項目#1が「Label1−1」又は「Label1−2」ならば、項目#7は「Label7−1」であり、項目#1が「Label1−3」または「Label1−4」ならば、項目#7は「Label7−2」である(逆方向のルールも成立)といったルールR3が抽出される。すなわち、包含されるグループは、選択的な条件とされる。
【0049】
パタン4に基づいて、項目#1が「Label1−1」又は「Label1−2」ならば、項目#6はLabel6−1である(逆方向のルールも成立)といったルールR4が抽出される。
【0050】
パタン5に基づいて、項目1がLabel1−1」又は「Label1−2」ならば、項目#8は「Label8−1」である(逆方向のルールは成立しない)といったルールR5が抽出される。
【0051】
パタン7に基づいて、項目#1の値に関わらず項目#5は「Label5−1」である(逆方向のルールも成立)といったルールR7が抽出される。
【0052】
なお、項目#4が、項目nである場合、例えば、パタン6に基づいて、項目#4が「Label4−1」ならば、項目#6は、「Label6−1」である(逆方向のルールは成立しない)といったルールR6が抽出される。
【0053】
ステップS113に続いてステップS114に進む。ステップS114において、ソート部13は、変数nの値が項目数C以上であるか否かを判定する。変数nの値が項目数C未満である場合(S114でNO)、ソート部13は、変数nに1を加算して(S115)、ステップS111以降を繰り返す。すなわち、全ての項目についてステップS111以降が実行される。この際、ステップS112では、項目n−1以前の項目についても、項目nとの間での包含関係パタンの有無が判定されてよい。上述したように、包含関係について、一方向のみ(包含する又は包含される)が判定される場合、他方向の包含関係を抽出可能とするためである。
【0054】
変数nの値が項目数C以上になると(S114でYES)、ルール出力部15は、各項目に関してステップS112において抽出されたルールを出力する(S116)。例えば、各ルールが表示装置に表示されてもよいし、補助記憶装置102等に記憶されてもよい。なお、出力されるルールが膨大な場合、例えば、ルールR1>ルールR2>ルールR3>ルールR4>ルールR5>ルールR6>ルールR7の優先度の関係に基づいて、出力されるルールの絞り込みや、出力されるルールの重要性の違いの表現等が行われてもよい。
【0055】
ユーザは、出力されたルールを組み合わせることで、例えば、次のようなルールを導出することができる。
【0056】
図6は、本実施の形態において導出可能なルールの一例を説明するための図である。図6は、便宜上、図5に完全には整合しない。また、項目#1について「Null」は、空欄を示す。
【0057】
例えば、図6のデータ群d1に注目すれば、「男性、かつ、40歳代、かつ、会員である購買者について、価格は200円である」というルール(ビジネスルール)を導出することができる。
【0058】
上述したように、本実施の形態によれば、データ群からのルールの抽出を可能とすることができる。当該ルールの抽出は、各項目の値の種別に基づくソート結果における各項目の値の配列状態(すなわち、同一の値を有するデータの集合と、他の項目について同一の値を有するデータの集合との共通性又は包含関係の有無)に基づいて行うことができるため、少ない計算量でのルールの抽出を可能とすることができる。
【0059】
また、データごとに値が異なる項目(又は、データ数に対する種別数Sの割合が閾値以上である項目)については、一つの値(ラベル)が付与されることで、当該項目の特定の値(例えば、特定の住所等)が、ビジネスルールに含まれてしまうこと(すなわち、ビジネスルールに寄与しないルールがビジネスルールに含まれてしまうこと)を回避することができる。
【0060】
また、例えば、或る業務(ビジネス)を行なうためのシステム(サーバ・クライアントシステム)において、サーバにはシステム利用者が実施した業務(ビジネス)の痕跡を表すDBストアデータが蓄積されている。このシステムを利用する業務のビジネスルール(業務ルール)が不明なケースがあり、その場合、現行システムを改善して新システムに作り変える更改開発をする際の妨げとなる。このような場合に、現行システムを用いた業務に関する業務ルールを推定するために本実施の形態を活用することができる。
【0061】
例えば、DBストアデータはテーブルデータ形式で蓄積されている場合が多く、その場合に、1テーブルデータ内の各データレコード(行単位)が持つルールを推定する。この際、推定したいルールは、テーブル内の各項目(列)が保有する値の種別(例えばラベル付けされたデータグループ)の組合せによって構成されているため、これらデータグループの組合せパタンを自動的に検出することによってルールを自動推定できる。その結果、実態に沿ったビジネスルール(事実ベースのビジネスルール)を抽出することができる。そのため、仮に、システム仕様書やユーザマニュアル等の既存ドキュメントにビジネスルールが記載されていて、それが正しく維持管理されず最新化されたビジネスルールとなっていない場合でも、システムのDBストアデータから抽出したビジネスルールが正しいルールであるとしてシステム更改に活用することができる。
【0062】
また、システムを構成するプログラムに記載されていないルールが存在していたとしても、DBストアデータから抽出することもできる。
【0063】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0064】
10 分析装置
11 データ入力部
12 ラベル付与部
13 ソート部
14 ルール抽出部
15 ルール出力部
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
B バス
図1
図2
図3
図4
図5
図6