JP6048177B2 - ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム - Google Patents

ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム Download PDF

Info

Publication number
JP6048177B2
JP6048177B2 JP2013018185A JP2013018185A JP6048177B2 JP 6048177 B2 JP6048177 B2 JP 6048177B2 JP 2013018185 A JP2013018185 A JP 2013018185A JP 2013018185 A JP2013018185 A JP 2013018185A JP 6048177 B2 JP6048177 B2 JP 6048177B2
Authority
JP
Japan
Prior art keywords
information
link
information node
relationship
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013018185A
Other languages
English (en)
Other versions
JP2014149683A (ja
Inventor
芳明 野村
芳明 野村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2013018185A priority Critical patent/JP6048177B2/ja
Publication of JP2014149683A publication Critical patent/JP2014149683A/ja
Application granted granted Critical
Publication of JP6048177B2 publication Critical patent/JP6048177B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明はソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラムに関し、特に情報ノード間の関係リンクの正当性検査手法に関する。
企業等が情報システムの設計、構築、運用を行うためには、様々な情報、例えば、情報システム(以下、単にシステムと呼ぶ)が利用される業務の内容(業務プロセス)を定義づける情報(業務定義情報)、システム設計情報、ソースコード、テスト仕様情報、運用仕様情報等が必要である。これらの情報を、総じてソフトウェア資産と呼ぶ。
従来より、このようなソフトウェア資産を管理、活用するための種々のツールが提案されている。
特開2009−276911号公報 国際公開第2009/011056号
企業等は、長期にわたりシステムを利用してゆく中で、企業等の活動の目的等に鑑み、システムの拡張や改造を積み重ねることが多い。その結果、システムは、新旧様々なソフトウェア、ハードウェア及び開発技術が混在して複雑に絡み合った状態となり、ソフトウェア資産全体の把握が困難な状況となる。このことは、システムの拡張や改造等(リニューアル)を難しくしており、企業等は、活動の目的や要求の変化に合わせた最適かつ最善なシステムの変更を迅速に行えず、ビジネス機会を逃す等の問題に直面している。
従来のソフトウェア資産管理ツールは、かかる問題に十分対応できていない。その要因は、例えば以下のとおりである。
業務プロセスと、システムの実装(例えば設計、ソースコード、運用仕様等)との関係は、必ずしも全て文書として明文化されているとは限らず、暗黙知として形成されている場合が多い。これらの暗黙知は、従来のソフトウェア管理ツールでは管理することができない。そのため、システムリニューアルにあたり、例えば改造による業務等への影響範囲を特定するための調査に多大な時間がかかる。さらに、事前に影響範囲を洗い出すことができない場合には、システムリニューアル終盤の評価フェーズで問題が検出されることになり、無駄な時間やコストが発生する。
また、システムの設計仕様と、システムの実装(例えばソースコード、運用仕様等)とが一致していない、あるいは設計書自体が存在しない場合がある。このような場合、システムリニューアルにあたり、ソースコードを直接解読して改造すべき箇所や改造による影響範囲を特定する作業が必要となり、多大な時間や費用を要する。
仮にシステムリニューアルに成功したとしても、従来のソフトウェア管理ツールは、その過程で得られた情報を、再利用可能あるいはメンテナンス可能な形式で保管しておくための有効な手段を用意していない。そのため、後に再びシステムリニューアルが必要になった場合に再度同様の問題が発生する可能性が高い。したがって、長期的に見て、リニューアルコストを十分抑制できていない。
例えば、従来のソフトウェア資産ツールは、既存の大規模システムにかかるソフトウェア資産を管理しようとする場合、すなわち既存の大規模システムを棚卸しする場合、システムの全体像を把握することが困難であることに起因して、情報登録の精度が悪くなりがちである。そのため、ソフトウェア資産の効果的な活用が困難であった。
さらに、従来のソフトウェア管理ツールにおいては、登録する情報が増えるにつれ、新たに登録する情報と、既に登録されている情報と、の関連付けに誤り(不整合)が生じ、これを修正して情報を正規化するるまでに多くの時間や労力を要していた。なお、不整合は、例えば利用者が以下のような誤った情報間の関連付けを行うような場合に生じ得る。実際は設計書が存在しないプログラムを、存在する設計書の中で最もらしいものと誤って紐付けてしまう。ソースコードを流用した際、ソースコード中のコメントの変更漏れがあり、実際の処理内容と異なるコメントが残された場合、そのソースコードを別モジュールのものと誤解する。モジュールを更新し、かつ旧モジュールを削除せず残した場合に、新旧両モジュール残してあることを把握できず、旧モジュールと新モジュールとを取り違える。モジュール同士の依存関係を把握しきれておらず、実際は使われているモジュールを使われていないモジュールと誤解するなど。
本発明は、このような問題点を解決するためになされたものであり、情報ノード間の関係リンクの正当性検査を行うことができるソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラムを提供することを目的とする。
本発明に係るソフトウェア資産活用装置は、抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクによって設定した資産管理マトリクスを保持するリポジトリと、第1の情報ノードを起点として、前記第1の情報ノードと他の前記情報ノードとの間に設定されている前記関係リンクを順に辿ることにより、関係リンクの誤りを検出する情報分析部とを有するものである。
本発明に係るソフトウェア資産活用方法は、抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクによって設定した資産管理マトリクスについて、第1の情報ノードを起点として、前記第1の情報ノードと他の前記情報ノードとの間に設定されている前記関係リンクを順に辿ることにより、関係リンクの誤りを検出する情報分析ステップを有するものである。
本発明に係るプログラムは、上記ソフトウェア資産活用方法を、コンピュータに実行させるためのプログラムである。
本発明により、情報ノード間の関係リンクの正当性検査を行うことができるソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラムを提供できる。
実施の形態1にかかるソフトウェア資産活用装置100の構成を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100の構成を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100の構成を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の管理方法を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における双方向トレース検査の概念を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の概念を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の概念を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における双方向トレース検査の動作を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における双方向トレース検査の動作を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の動作を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の動作を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の動作を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の動作を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における双方向トレース検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるソフトウェア資産の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100におけるノードテーブル及びリンクテーブルの例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における双方向トレース検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における双方向トレース検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における下位情報間の関係リンク検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の例を示す図である。 実施の形態1にかかるソフトウェア資産活用装置100における関係リンクの循環検査の例を示す図である。
<実施の形態1>
以下、図面を参照して本発明の実施の形態について説明する。
図1−1に、本実施の形態にかかるソフトウェア資産活用装置100の基本構成を示す。また、図1−2に、ソフトウェア資産活用装置100のより好ましい構成を示す。ソフトウェア資産活用装置100は、ソフトウェア資産を構成する情報を保持するためのリポジトリ4、リポジトリ4に対する情報の入力、抽出、分析等を行う処理装置3を有する。また、利用者が処理部に対する入力操作を行うための入力装置1、処理装置3の処理結果等を利用者に提示する出力装置2を備えていることが好ましい。
ソフトウェア資産活用装置100は、典型的にはコンピュータであり、制御プログラムに基づいて各種処理を実行する中央制御装置、制御プログラム及びリポジトリ4等を格納する揮発性または不揮発性の記憶装置等により構成される。但し、コンピュータは物理的に単一である必要はなく、複数のコンピュータが各種処理を分散的に処理する構成としてもよい。
入力装置1は、利用者から処理装置3への入力インターフェースであり、例えばリポジトリ4に格納する情報を入力するための手段として機能する。例えば、キーボード、マウス、通信インターフェース等であってよい。
出力装置2は、処理装置3から利用者への出力インターフェースであり、各種処理結果の出力に用いられる。例えば、リポジトリ4に格納された情報を外部へ取り出すための手段として機能する。例えば、ディスプレイ、プリンタ、通信インターフェース等であってよい。
処理装置3は、リポジトリ4に対して情報を格納する情報入力部5、リポジトリ4内の情報を、様々な条件、形式に従って抽出する情報抽出部6、抽出した情報を所定の手法で分析する情報分析部7を有する。
リポジトリ4は、例えば、ソフトウェア資産を構成する情報を格納する情報保持部8、各情報に対して付与されるキーワードを保持するキーワード保持部9、ソフトウェア資産を構成する情報間の関係性に関する情報を格納するリンクテーブル10を有する。リポジトリ4は、ソフトウェア資産活用装置100が有する図示しない記憶装置内に設けられた、論理的な記憶手段である。
(リポジトリ)
ここで、図2−1乃至図2−9を用いて、リポジトリ4が、どのような概念に基づいてソフトウェア資産を管理するかについて説明する。
上述のように、ソフトウェア資産は様々な情報の集合であるが、これらソフトウェア資産を構成する個々の情報単位を情報ノードと呼ぶ。例えば、業務定義情報、システム設計情報、ソースコード、テスト仕様情報、運用仕様情報等を構成する、意味を持つ情報のまとまり(情報単位)が、情報ノードである。文書化されたソフトウェア資産が存在する場合は、その文書データの全部または一部が、情報ノードの実体である。一方、文書化されていない情報についても、文書データ等の実体を有しない情報ノードを作成することができる。例えば、A機能について記載した文書が存在しなくても、情報システムにA機能が必要である場合は、利用者はA機能の名称を冠した、いわば空の情報ノードを作成し、リポジトリ4に格納できる。
(マトリクスとブロック)
リポジトリ4は、これらの情報ノードそれぞれを、「抽象度」と「詳細度」の2つの評価基準により分類したうえで格納する。「抽象度」「詳細度」には、それぞれ複数の段階(レベル)が設けられる。情報ノードは、それら複数のレベルのいずれかに割り当てられる。すなわち、リポジトリ4は、情報ノードを、「抽象度」「詳細度」の2軸によって定義されるマトリクス上のいずれかの位置に割り当てて格納する。
図2−1に、本実施の形態が想定するマトリクスを例示する。この例では、マトリクスの縦軸が「抽象度」、横軸が「詳細度」を示す。「抽象度」「詳細度」は、原点から遠ざかるほど大きくなる。すなわち、より原点から離れた位置には、より抽象的又は詳細な内容を含む情報ノードが格納される。本実施の形態では、「抽象度」「詳細度」のレベルを、レベル番号によって識別することとする。すなわち、「抽象度」「詳細度」の最も小さいレベルを、レベル番号「1」と呼ぶ。以降、「抽象度」「詳細度」が大きくなるに従って、昇順のレベル番号「2」「3」・・で呼称する。
なお、マトリクスの縦横のサイズ(レベル数)は固定的ではなく、管理対象のソフトウェア資産の規模や複雑さ等に応じて、利用者が自由に設定する事が可能である。
情報ノードが割り当てられるマトリクス上の位置を、ブロックと呼ぶ。本実施の形態では、個々のブロックを「抽象度レベル番号−詳細度レベル番号」の形式で、2つの数字の組によって特定する。例えば、図2−1において、情報ノードXが割り当てられたブロックは「1−2」である。
(抽象度と詳細度)
ここで、「抽象度」「詳細度」の意義について説明する。「抽象度」とは、情報ノードを、情報の内容と、システムの実装と、の依存度の強さによって分類する尺度である。例えば、業務定義情報、システム設計情報、ソースコード、テスト仕様情報、運用仕様情報の5種類の情報ノードを、5段階の抽象度レベル1乃至5に分類する場合、実装への依存度が最も低い業務定義情報を、最も高い抽象度レベル(抽象度レベル=5)に割り当てる。以降、実装への依存度が高まる順に、システム設計情報には抽象度レベル=4を、ソースコードには抽象度レベル=3、テスト仕様情報には抽象度レベル=2、運用仕様情報には抽象度レベル=1を割り当てる。
「詳細度」とは、情報ノードを、設計の詳細度によって分類する尺度である。例えば、図2−3に示すように、システム設計情報として、AA機能の概要を自然言語で記述した機能記述と、AA機能におけるデータ遷移を例えばDFD(Data Flow Diagram)等で記述したデータ関連図と、の2種類の情報ノードを、2段階の詳細度レベル1乃至2に割り当てる場合、設計の詳細度が最も高いデータ関連図を、最も高い詳細度レベル(詳細度レベル=2)に割り当てる。一方、設計の詳細度が比較的低い機能記述には詳細度レベル=1を割り当てる。
なお、リポジトリ4においては、詳細度が異なるが、同等の抽象度を有する情報ノードには同じ抽象度レベルを、抽象度が異なるが、同等の詳細度を有する情報ノードには同じ詳細度レベルを割り当てることが好ましい。
図2−2に、リポジトリ4を具体的に実現するためのテーブル構造の一例を示す。ソフトウェア資産活用装置100は、例えば図示しない記憶装置上の記憶領域に、上記テーブル構造を有する情報保持部8を備えることができる。情報保持部8は、リポジトリ4に格納された情報ノードを識別するための情報名、情報ノードの位置を示すブロック、及び情報ノードの実体(情報実体。例えば文書データ等)の実際の保存場所を示す情報実体の場所、を少なくとも要素とする複数のレコードを保持できる。本実施の形態では、情報ノードの実体を、情報保持部8の外部の任意の保存場所に保存することとしている。なお、情報ノードの実体を、情報保持部8のレコード内に保持することとしても構わない。
(キーワード)
リポジトリ4においては、各情報ノードにキーワードを付与することができる。図2−3及び図2−4を用いて、情報ノードとキーワードとの関係について説明する。
図2−3は、情報保持部8の2つのブロック(1−1及び1−2)に、それぞれAA、BB、CC、DDという情報ノードが登録されている様子を示している。ブロック1−1に含まれる情報ノードの情報実体(例えば機能記述)と、ブロック1−2に含まれる情報ノードの情報実体(例えばデータ関連図)とでは、同様の論理構成や用語等が用いられていることが少なくないため、このような事象が生じ得る。ここで、ブロック1−1における情報ノードAAと、ブロック1−2における情報ノードAAとは、何らかの意味的な関連を有していることが多い。そこで、リポジトリ4においては、このような意味的な関連を識別するためのいわばタグとして、これらの情報ノードに対し、同一のキーワードを付与することができる。
図2−4に、情報ノードとキーワードとの関連づけを具体的に実現するためのテーブル構造の一例を示す。図2−4の情報保持部8は、図2−2の情報保持部8に比べ、各情報ノード(レコード)にユニークな番号が与えられ、たとえ同一情報名の情報ノードが複数存在しても、それらを識別可能に構成されている点で相違する。この例では、情報名AAが2か所、BBが2か所、CCが2か所、DDが2か所に存在している。
キーワード保持部9は、少なくともキーワード名と、情報番号リストとを対応付ける1以上のレコードからなるテーブルである。情報番号リストは、キーワードによって関連付けられる複数の情報ノードを、情報保持部8における番号によって特定する。
(関係リンク)
リポジトリ4は、個々の情報ノードの関係性に関する情報を保持することができる。この関係性を、関係リンクと称する。
関係リンクは、ある情報ノードと、当該情報ノードと同一ブロック、抽象度レベルのみが異なるブロック、及び詳細度レベルのみが異なるブロックに存在する他の情報ノードと、の間で設定することができる。
本実施の形態では、少なくとも以下の4種類の関係リンクを設定できる。同格関係は、同一の対象又は事象等を、別の目的や観点等に基づいて表現した情報ノード同士を関係づける関係リンクである。下位関係は、ある上位概念たる情報ノードと、当該情報ノードの下位概念や構成部品である情報ノードを関係づける関係リンクである。詳細化関係は、ある情報ノードと、当該情報ノードをより詳細化した情報ノードとを関係づける関係リンクである。具体化関係は、抽象的な概念を示す情報ノードと、当該情報ノードをより具体化した情報ノードとを関係づける関係リンクである。以上の他、情報ノード間でのデータの関連性や処理順序等を表現するため、任意の関係リンクを設定することもできる。
なお、詳細化関係は、詳細度レベルが異なる情報ノード同士で設定されても良く、同一の詳細度レベルの情報ノード同士で設定されても良い。また、具体化関係は、抽象度レベルが異なる情報ノード同士で設定されても良く、同一の抽象度レベルの情報ノード同士で設定されても良い。なお、リポジトリ4は、詳細化関係又は具体化関係が、詳細度レベル又は抽象度レベルを跨ぐものであるか否かを示すフラグを、それぞれ保持していることが好ましい。
図2−5は、ある仮想の企業の組織構造及び業務構造を、下位関係、及び「関連」の2つの関係リンクを用いて示したものである。ここで、「関連」とは、ある業務に関連する入出力情報を示す関係リンクであるものとする。この図は、以下の事実を示す。この企業は、「業務フロー」に関するソフトウェア資産(例えば文書化されたマニュアル等)を有する。この「業務フロー」の中には、「販売部門」にかかる業務フローが含まれる。「販売部門」の業務フローは、「受注」「在庫確認」「出荷指示」の3つの業務からなる。それぞれの業務における入出力情報は、「注文書」「製造指示」「出荷指示」である。
図2−6は、図2−5の関係リンクを具体的に実現するためのテーブル構造の一例である。図2−6の情報保持部8は、図2−4の情報保持部8と比較して、「出リンク」「入リンク」要素を有している点で相違する。ここで「出リンク」は、その情報ノードを始点とする関係リンクを、リンクテーブル10(後述)で定義された番号によって特定している。また、「入リンク」は、その情報ノードを終点とする関係リンクを、リンクテーブル10(後述)で定義された番号によって特定している。
なお、出リンク及び入リンク要素は、情報保持部8の構成上、必須の要素ではない。当該要素は、後述のリンクテーブル10が有する要素と重複しており、リンクテーブル10を情報ノードの番号で検索すれば取得することが可能である。しかしながら、実際の運用においては、リポジトリ4に登録される情報量が増加するほど、リンクテーブル10の検索時間が増大し、ソフトウェア資産活用装置100全体の性能に大きな影響を及ぼすことが予想される。よって、高速化の手段として、情報保持テーブルに出リンク及び入リンク要素を直接持つことは有効である。
リンクテーブル10は、複数の情報ノード間に張られた関係リンクを定義、保存するためのテーブルである。リンクテーブル10は、少なくとも番号、属性、始点情報、終点情報を要素とする、1以上のレコードを有する。番号は、関係リンクを一意に特定するための識別子である。属性は、関係リンクの種類を示す。始点情報は、関係リンクの始点となる情報ノードを、情報保持部8で定義された番号によって特定している。終点情報は、関係リンクの終点となる情報ノードを、情報保持部8で定義された番号によって特定している。
図2−7は、ある仮想の企業の組織構造及び業務構造を、同格関係、及び詳細化関係の2つの関係リンクを用いて示したものである。両端が矢印の線は、同格関係を示す。同格関係は、同じブロックの中で、本質的に同じ意味内容を有する情報ノード間に設定されている。片方が矢印の線は、詳細化関係を示す。この例において、詳細化関係は、詳細化レベルの異なるブロックに位置する情報ノード間に設定されている。
図2−8は、ある仮想の企業の組織構造及び業務構造を、具体化関係の関係リンクを用いて示したものである。片方が矢印の線は、具体化関係を示す。この例において、具体化関係は、抽象化レベルの異なるブロックに位置する情報ノード間に設定されている。
図2−9は、ある仮想の企業の組織構造及び業務構造に関するソフトウェア資産全体を、リポジトリ4に登録した例を示している。上述の図2−5、図2−7、図2−8は、この図の一部分を抜き出したものである。
利用者は、所定のユーザインタフェースを介し、入力装置1を利用して、処理装置3に、情報ノード、キーワード、関係リンクにかかるデータを入力する。処理装置3の情報入力部5は、これらの入力を受け付けると、リポジトリ4の情報保持部8、キーワード保持部9、リンクテーブル10等に、それぞれデータを格納する処理を行う。
ここで、リポジトリ4に登録される情報が、体系的で、有効な分析に資するものであるためには、情報ノード同士を接続する関係リンクが、矛盾や欠落のないものであることが重要である。
そのため、本実施の形態における情報分析部7は、情報ノードの属するブロックに着目して、関係リンクをトレースする、すなわち関係リンクに矛盾や欠落はないかの正当性検査を、機械的に行う機能を有する。
図3−1乃至図3−3を用いて、本実施の形態で情報分析部7が実行する3つの正当性検査の概念について説明する。
関係リンクの双方向トレース検査(図3−1):ある情報ノードを起点として、詳細化関係、及び具体化関係の関係リンクを順方向に辿り(トレース)、関係リンクで接続された情報ノードを抽出してゆく。その後、抽出された情報ノードを起点として、詳細化関係、及び具体化関係の関係リンクを逆方向にトレースし、抽出される情報ノードが、最初の情報ノードとずれていないかを検査する。ここで、最初の情報ノードと、最後に抽出されたノードが一致していれば、トレースした関係リンクは正しく設定されたものであることがわかる。一方、一致していなければ、トレースした関係リンク内のどこかに、矛盾や欠落がある可能性がある。
例えば、図3−1において、情報ノードAを起点とした場合、まず詳細化関係リンク及び具体化関係リンクを順方向に、A→B→C→C'の順に辿る。その後、C'から、詳細化関係リンク及び具体化関係リンクを逆方向に、C'→B'→X'→Xの順に辿る。XはAと同じブロックに属するため、ここでトレースを終了する。X≠Aであるから、この場合、トレース経路A→B→C→C' →B'→X'→Xのどこかに、矛盾や欠落が存在すると推定できる。
下位情報間の関係リンク検査(図3−2):起点となる情報ノードの下位関係にある情報ノードが、起点となる情報ノードと関係リンクが設定されていない他の情報ノードの下位関係にある情報ノードと、関係付けられていないかを検査する。ここで、下位情報ノード同士に関係リンクが設定されているのに、それらの上位情報ノード間に関係リンクが設定されていなければ、下位情報ノード間の関係リンクに誤りがあるか、上位情報ノード間に関係リンクの欠落がある可能性がある。
例えば、図3−2において、情報ノードB→E間には詳細化関係リンクが設定されているが、B、Eの上位関係にある情報ノードA→D間には、同じ関係リンクは設定されていない。この場合、B→Eが誤りであるか、A→Dの設定漏れであると推定できる。
関係リンクの循環検査(図3−3):単方向の関係リンク、例えば詳細化関係、具体化関係、下位関係の関係リンクに、循環が生じていないかを検査する。ある情報ノードを起点としてこれらの関係リンクをトレースし、起点の情報ノードに達するならば、循環が生じている。この場合、トレースした関係リンク内のどこかに、矛盾がある可能性がある。
図1−3に、これらの3つの検査を実行する情報分析部7のより詳細な構成を示す。本実施の形態における情報分析部7は、関係リンクの双方向トレース検査を実行する双方向トレース検査部711、下位情報間の関係リンク検査を実行する下位情報検査部712、関係リンクの循環検査を実行する循環検査部713からなる。これらの3つの検査は、いずれも関係リンクのトレースを実行する。そこで、上記3つの検査部はいずれも関係リンクトレース部72を利用する。関係リンクトレース部72は、指定された範囲、指定された終了条件のもとで、指定された情報ノードと関係リンクが設定されている情報ノードを順々に辿っていき(トレース)、所定の処理を実行する機能を有する。以下、特に言及のない限り、関係リンクのトレースに係る処理は、関係リンクトレース部が実行するものとする。
つづいて、図3−4乃至図3−6のフローチャートを用いて、ソフトウェア資産活用装置100が、リポジトリ4に格納されたソフトウェア資産の関係リンク正当性検査を実行する際の動作について説明する。本実施例において、リポジトリ4は、図3−8に示すような構造のソフトウェア資産を予め格納しているものとする。具体的には、リポジトリ4は、図3−9に示すようなノードテーブル(情報保持部7)及びリンクテーブル10により、上記ソフトウェア資産を保持している。また、図3−7は、本実施例の正当性検査により判明した関係リンクの矛盾や欠落を修正したソフトウェア資産の状態を示している。
(関係リンクの双方向トレース検査)
まず、図3−4のフローチャートを用いて、関係リンクの双方向トレース検査について説明する。
双方向トレース検査部711は、トレースの起点となる情報ノード(開始情報ノード)、及びトレース範囲(トレースを行う詳細度レベル、抽象度レベルの上限)を設定する。
この設定は、情報入力部1に対する利用者の入力に応じて行うことができる。あるいは、例えば新規に情報ノードが登録された際等の所定のトリガに応じて、機械的に、当該新規な情報ノード等の特定の情報ノードを開始情報ノードとして設定してもよい。また、トレース範囲は、ソフトウェア資産の規模や、システムの負荷状況等に応じて、任意に設定することができる。一般に、トレース範囲が大きいほど、処理時間及び処理負荷は増大するが、より多くの関係リンクの矛盾や欠落を発見しやすい。一方、トレース範囲が小さいほど、利用者にとって、関係リンクの矛盾や欠落が存在する位置を発見することが容易となる。そこで、例えばはじめめはある程度大きなトレース範囲で正当性検査を実施し、そのトレース範囲内に矛盾や欠落が存在することが分かった場合、トレース範囲を徐々に縮小するなどの処理を行うことにより、矛盾や欠落の存在位置を絞り込む等の応用も可能である。
(S1−1)双方向トレース検査部711は、まず、開始情報ノードを起点として、詳細化関係又は具体化関係の関係リンクを順方向、すなわち詳細化又は具体化する方向に辿り、到達した情報ノードを抽出、記録する。
S1−1における順方向トレースの具体的動作(S2)は以下の通りである。まず、双方向トレース検査部711は、開始情報ノードをカレント情報ノードに設定する。
(S2−1)双方向トレース検査部711は、ノードテーブルより、カレント情報ノードの「出リンク」を参照して、詳細化関係又は具体化関係の関係リンクを順方向にひとつ辿って得られる情報ノードを抽出する。なお、検査範囲外の情報ノード、及び既に抽出済みの情報ノードは、抽出対象から除外する。
(S2−2)抽出した情報ノードを起点として、さらにトレースを行う。双方向トレース検査部711は、抽出した情報ノードをカレントノードとして、S2を再帰的に実行する。
(S1−2)つづいて、双方向トレース検査部711は、抽出した情報ノードそれぞれを起点として、詳細化関係又は具体化関係の関係リンクを逆方向、すなわち簡略化又は抽象化する方向に辿り、開始情報ノードと同じブロックの情報ノードに到達した段階で、トレースを終了する。そして双方向トレース検査部711は、このとき到達した情報ノードが、開始情報ノードと一致しているかを検査する。
S1−2における逆方向トレースの具体的動作(S3)は以下の通りである。まず、双方向トレース検査部711は、抽出した情報ノードの1つをカレント情報ノードに設定する。
(S3−1)双方向トレース検査部711は、カレント情報の「入リンク」を参照して、詳細化関係又は具体化関係の関係リンクを逆方向にひとつ辿って得られる情報ノードを抽出する。なお、検査範囲外の情報ノード、及び既に抽出済みの情報ノードは、抽出対象から除外する。
(S3−2、S3−3)双方向トレース検査部711は、開始情報ノードと同じブロックに属する情報ノードが抽出されるまで、再帰的にトレースを進める。開始情報ノードと同じブロックの情報ノードが得られた場合、その情報ノードが開始情報ノードと一致しているかを検査し、その結果を出力する。
図3−10及び図3−11を用いて具体的に説明する。ここでは、開始情報ノードとして「2:販売部門」、検査範囲として詳細度レベル2、抽象度レベル2までの範囲が指定されているものとする。
まず、双方向トレース検査部711は、開始情報ノードを起点として、関係リンクを詳細化方向又は具体化方向にトレースする。その結果、「6:販売部門フロー」、「11:販売システム」、「13:販売システム」、「15:販売システムフロー」が抽出される(図3−10)。
つづいて、双方向トレース検査部711は、抽出した4つの情報ノードそれぞれを起点として、開始情報ノードと同じブロック1−1に到達するまで逆方向のトレースを行う。その結果、「2:販売部門」、「4:物流部門」が抽出される(図3−11)。
ここで、最終的に抽出された2つの情報ノードのうち、「4:物流部門」については、開始情報ノード「2:販売部門」と一致しない。よって、そこに至るトレース経路「2:販売部門」→「6:販売部門フロー」→「15:販売システムフロー」→「12:物流システム」→「4:物流部門」に含まれるいずれかの関係リンクが誤っている可能性がある。よって、双方向トレース検査部711は、上記トレース経路に含まれる関係リンクのいずれかが誤っている可能性がある旨を、出力装置2を介して利用者に通知する。
実際、この例では「15:販売システムフロー」←「12:物流システム」の関係リンクは、「15:販売システムフロー」←「11:販売システム」とするべきであり、確かに上記トレース経路に誤りが含まれている。
(下位情報間の関係リンク検査)
図3−5のフローチャートを用いて、下位情報間の関係リンク検査について説明する。
(S1−1、S1−2)下位情報検査部712は、リンクテーブル10に登録されている全ての関係リンクを対象に、詳細化関係又は具体化関係の関係リンクであって、「始点情報」及び「終点情報」のどちらの情報ノードにも上位情報が存在する関係リンクを、検査対象として抽出する。ここで、上位情報とは、ある情報ノードに着目したとき、当該情報ノードを終点とする下位関係リンクによって接続されている情報ノードを指す。よって、ある情報ノードに上位情報が存在するか否かは、以下の処理(S2)により検査することができる。
(S2−1、S2−2)下位情報検査部712は、ノードテーブルより、対象情報ノードの「入リンク」に下位関係の関係リンクが存在するかを検索し、存在すればそのリンクを関係リンクを逆向きに辿った情報ノードを、上位情報とする。なお、対象情報ノードの「入リンク」に下位関係の関係リンクが存在しなければ、上位情報は存在しないことになる。あるいは、下位情報検査部712は、対象情報ノードを「終点情報」とする下位関係リンクが、リンクテーブルに存在するか否かを調べることにより、上位情報の有無を調べることもできる。
(S1−3、S1−4)下位情報検査部712は、検査対象として抽出された関係リンクの「始点情報」及び「終点情報」の上位情報にあたる情報ノードを抽出する。そして、それらの上位情報間に、下位情報間と同じ属性の関係リンクが存在するかを検査して、結果を出力する。すなわち、例えば下位情報間(検査対象として抽出された関係リンクの両端の情報ノード間)に詳細化関係が設定されていれば、上位情報間にも同様に詳細化関係が設定されているかどうかを検査する。
図3−12及び図3−13を用いて具体的に説明する。
下位情報検査部712は、リンクテーブルより、「始点情報」「終点情報」どちらにも上位情報が存在する詳細化関係リンク又は具体化関係リンクを検査対象として抽出する(図3−12)。そして、これらの検査対象の関係リンクの「始点情報」及び「終点情報」の上位情報間に、下位情報すなわち「始点情報」及び「終点情報」間と同じ属性の関係リンクが存在するかを検査する(図3−13)。
この例では、以下のような検査結果となる。このソフトウェア資産には、「2:販売部門」→「11:販売システム」、「4:物流部門」→「12:物流システム」の具体化関係リンクが存在する。これらの具体化関係リンクの「始点情報」及び「終点情報」の上位情報は、いずれも「1:業務フロー」、「10:システム構成図」である。ここで、これらの上位情報間には「1:業務フロー」→「10:システム構成図」の具体化関係リンクが存在しており、これは下位関係間の関係リンクと同じ属性である。よって、下位情報検査部712は、これらの関係リンクのうちには問題を発見しない。
一方、このソフトウェア資産には、「5:出庫処理」→「7:受注作業」の詳細化関係リンクが存在する。この詳細化関係リンクの「始点情報」及び「終点情報」の上位情報は、「4:物流部門」、「6:販売部門フロー」である。ここで、これらの上位情報間には、「4:物流部門」→「6:販売部門フロー」の詳細化関係リンクが存在していない。よって、下位情報検査部712は、「5:出庫処理」→「7:受注作業」の関係リンクに誤りがあるか、又は「4:物流部門」→「6:販売部門フロー」の関係リンクが欠落している可能性があると判定し、その旨を指摘する出力を行う。
実際、この例では「5:出庫処理」→「7:受注作業」の詳細化関係リンクは誤りであって、正しくは「5:出庫処理」→「9:出庫作業」とするべきものである。このように、下位情報検査部712の指摘箇所のうちに、確かに関係リンクの誤りが含まれている。
(関係リンクの循環検査)
図3−6のフローチャートを用いて、関係リンクの循環検査について説明する。
(S1−1、S1−2)循環検査部713は、ノードテーブルに登録されている全ての情報ノードについて、その情報ノードを起点とする循環構造が存在するかどうかを、指定されたトレース範囲内において検査する。なお、全ての情報ノードを検査しても循環構造が見つからなければその旨を出力する。
なお、情報ノードの循環構造の検査(循環トレース、S2)は、一般的に知られている有向グラフの閉路検出アルゴリズムを本発明のデータ構造に適用することにより実現できる。
(S2−1乃至S2−4)循環検査部713は、ノードテーブルに登録されている情報ノードそれぞれについて、前述の有向グラフの閉路検出アルゴリズムを用いて、当該情報ノードを起点とする関係リンクを順方向にひとつずつ再帰的にトレースする。ここで、循環検査部713は、各情報ノードについて、未検査、検査中、検査済の状態を保持し、上記再帰処理の開始時に状態を未検査から検査中へ、終了時に検査中から検査済へと変化させる(S2−1、S2−4)。そして、もし検査中の状態である情報ノードに対してトレースが行われた場合、循環検査部713は、循環構造を検出した旨を出力する(S2−3)。なお、検査済の状態に情報ノードへはトレースを行わない。トレース中、検査済の情報が再度現れたとしても、それはその情報ノードへのトレース経路が複数存在することを示すにすぎず、循環構造が存在することを示すわけではない。
図3−14、図3−15、図3−16を用いて具体的に説明する。
循環検査部713は、ノードテーブルに存在する各情報ノードを対象に、未検査、検査中、検査済の状態を保持しつつ、各情報ノードを起点とする関係リンクを順方向にひとつずつ再帰的にトレースする処理を行う(図3−14)。この際、再帰処理の開始時又は終了時に、状態を検査中又は検査済へと変化させる。検査済の状態の情報ノードへはトレースを行わない(図3−15)。トレース中、検査中の状態の情報ノードがが現れるのは循環構造が含まれる場合である(図3−16)。
この例では、循環検査部713は、トレース経路「8:物流部門」→「9:出庫作業」→「8:物流部門」に循環構造を発見できる。よって、循環検査部713は、この循環構造に含まれるいずれかの関係リンクが誤っている可能性を、利用者に対して指摘する出力を行う。
実際、この例では「9:出庫作業」→「8:物流部門」の関係リンクは不要である。このように、循環検査部713の指摘箇所のうちに、確かに関係リンクの誤りが含まれている。
本実施の形態によれば、ソフトウェア資産活用装置100は、双方向トレース、怪情報検査、循環検査等の種々の関係リンクの正当性検査処理を実施することができる。これにより、仮にリポジトリ4への情報登録段階における関係リンクの設定精度が低くても、事後的に関係リンクの矛盾や欠落を容易に発見できる手段を提供できる。当該手段により、誤った関係リンク設定の修正機会を利用者に与え、徐々にリポジトリ全体の情報精度を上げていくような、段階的なソフトウェア資産の運用が可能となる。
また、本実施の形態によれば、早い段階で関係リンクの修正の機会を作ることができる。これにより、後々になって大きな手戻りが発生し、時間や労力や金銭面等でのロスが発生する事態を避けることができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、上述の実施の形態では、本発明を主にハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non−transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
100 ソフトウェア資産活用装置
1 入力装置
2 出力装置
3 処理装置
4 リポジトリ
5 情報入力部
6 情報抽出部
7 情報分析部
8 情報保持部
9 キーワード保持部
10 リンクテーブル

Claims (10)

  1. 抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクによって設定した資産管理マトリクスを保持するリポジトリと、
    第1の情報ノードを起点として、前記第1の情報ノードと他の前記情報ノードとの間に設定されている前記関係リンクを順に辿ることにより、関係リンクの誤りを検出する情報分析部とを有する
    ソフトウェア資産活用装置。
  2. 前記関係リンクには、前記抽象度にかかる関係性を示す有向の具体化関係リンクと、前記詳細度にかかる関係を示す有向の詳細化関係リンクと、の少なくとも2種類が存在し、
    前記情報分析部は、前記第1の情報ノードを起点として、前記具体化関係リンク又は前記詳細化関係リンクを順方向に辿って到達する第2の情報ノードを取得し、
    前記第2の情報ノードを起点として、前記具体化関係リンク又は前記詳細化関係リンクを逆方向に辿って到達する第3の情報ノードを取得し、
    前記第1の情報ノードと前記第3の情報ノードが一致するか否かを検査することにより、関係リンクの誤りを検出する
    請求項1記載のソフトウェア資産活用装置。
  3. 前記第3の情報ノードと、前記第1の情報ノードとは、同一の前記抽象度及び前記詳細度に区分けされているものである
    請求項2記載のソフトウェア資産活用装置。
  4. 前記関係リンクには、前記抽象度にかかる関係性を示す有向の具体化関係リンク又は前記詳細度にかかる関係を示す有向の詳細化関係リンクと、上下構造にかかる関係性を示す有向の下位関係リンクと、の少なくとも2種類が存在し、
    前記情報分析部は、前記具体化関係リンク又は前記詳細化関係リンクにより関係付けられた前記第1の情報ノード及び第4の情報ノードをそれぞれ下位として、前記下位関係リンクにより前記第1の情報ノード及び前記第4の情報ノードに関係付けられた第5の情報ノード及び第6の情報ノードを抽出し、
    前記第5の情報ノードと前記第6の情報ノードとの間に、前記第1の情報ノードと前記第4の情報ノードの間に設定された前記関係リンクと同種類の前記関係リンクが設定されているか否かを検査することにより、関係リンクの誤りを検出する
    請求項1乃至3いずれか1項記載のソフトウェア資産活用装置。
  5. 前記情報分析部は、前記第1の情報ノードを起点として、同一種類の関係リンクを順方向に辿って到達する第7の情報ノードが、前記第1の情報ノードと同一であるか否かを検査することにより、関係リンクの誤りを検出する
    請求項1乃至4いずれか1項記載のソフトウェア資産活用装置。
  6. 抽象度及び詳細度によって区分分けされたブロックに対し、ソフトウェア資産を構成する個々の情報単位である情報ノードを配置し、各情報ノード間の関係性を関係リンクによって設定した資産管理マトリクスについて、
    第1の情報ノードを起点として、前記第1の情報ノードと他の前記情報ノードとの間に設定されている前記関係リンクを順に辿ることにより、関係リンクの誤りを検出する情報分析ステップを有する
    ソフトウェア資産活用方法。
  7. 前記関係リンクには、前記抽象度にかかる関係性を示す有向の具体化関係リンクと、前記詳細度にかかる関係を示す有向の詳細化関係リンクと、の少なくとも2種類が存在し、
    前記情報分析ステップは、前記第1の情報ノードを起点として、前記具体化関係リンク又は前記詳細化関係リンクを順方向に辿って到達する第2の情報ノードを取得し、
    前記第2の情報ノードを起点として、前記具体化関係リンク又は前記詳細化関係リンクを逆方向に辿って到達する第3の情報ノードを取得し、
    前記第1の情報ノードと前記第3の情報ノードが一致するか否かを検査することにより、関係リンクの誤りを検出する
    請求項6記載のソフトウェア資産活用方法。
  8. 前記関係リンクには、前記抽象度にかかる関係性を示す有向の具体化関係リンク又は前記詳細度にかかる関係を示す有向の詳細化関係リンクと、上下構造にかかる関係性を示す有向の下位関係リンクと、の少なくとも2種類が存在し、
    前記情報分析ステップは、前記具体化関係リンク又は前記詳細化関係リンクにより関係付けられた前記第1の情報ノード及び第4の情報ノードをそれぞれ下位として、前記下位関係リンクにより前記第1の情報ノード及び前記第4の情報ノードに関係付けられた第5の情報ノード及び第6の情報ノードを抽出し、
    前記第5の情報ノードと前記第6の情報ノードとの間に、前記第1の情報ノードと前記第4の情報ノードの間に設定された前記関係リンクと同種類の前記関係リンクが設定されているか否かを検査することにより、関係リンクの誤りを検出する
    請求項6又は7記載のソフトウェア資産活用方法。
  9. 前記情報分析ステップは、前記第1の情報ノードを起点として、同一種類の関係リンクを順方向に辿って到達する第7の情報ノードが、前記第1の情報ノードと同一であるか否かを検査することにより、関係リンクの誤りを検出する
    請求項6乃至8いずれか1項記載のソフトウェア資産活用方法。
  10. 請求項6乃至9いずれか1項記載のソフトウェア資産活用方法を、コンピュータに実行させるためのプログラム。
JP2013018185A 2013-02-01 2013-02-01 ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム Active JP6048177B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013018185A JP6048177B2 (ja) 2013-02-01 2013-02-01 ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013018185A JP6048177B2 (ja) 2013-02-01 2013-02-01 ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2014149683A JP2014149683A (ja) 2014-08-21
JP6048177B2 true JP6048177B2 (ja) 2016-12-21

Family

ID=51572607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013018185A Active JP6048177B2 (ja) 2013-02-01 2013-02-01 ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6048177B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09223008A (ja) * 1996-02-16 1997-08-26 Hitachi Ltd 影響範囲抽出システム
JPH10105390A (ja) * 1996-09-26 1998-04-24 Nec Corp 仕様書間クロスリファレンス表

Also Published As

Publication number Publication date
JP2014149683A (ja) 2014-08-21

Similar Documents

Publication Publication Date Title
US20200084086A1 (en) Management of computing system alerts
US9098563B2 (en) Comparing versions of a hierarchical object
CN101751333A (zh) 用于支援程序解析的方法、及其计算机程序以及计算机系统
Cao et al. Querying similar process models based on the Hungarian algorithm
CN107003931B (zh) 将测试验证从测试执行分离
Hao et al. Cleaning relations using knowledge bases
WO2016063502A1 (ja) 知識管理装置、知識管理方法、及び、プログラムの記録媒体
US10346450B2 (en) Automatic datacenter state summarization
BR102013001760A2 (pt) sistema de gerenciamento de projeto com base em memória associativa.
CN113434542B (zh) 数据关系识别方法、装置、电子设备及存储介质
Hao et al. Distilling relations using knowledge bases
CN113127460B (zh) 数据清洗框架的评估方法及其装置、设备及存储介质
Idris et al. Managing Data Source quality for data warehouse in manufacturing services
US8892951B2 (en) Fault localization for data-centric programs
JP6048177B2 (ja) ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム
WO2023187524A1 (en) Systems and methods for cybersecurity alert deduplication, grouping, and prioritization
JP2007310762A (ja) 通信性能解析プログラム、通信性能解析装置及び通信性能解析方法
JP2014157598A (ja) ソフトウェア資産管理装置、ソフトウェア資産管理方法、及びソフトウェア資産管理プログラム
US20160224020A1 (en) Systems and methods using an event descriptor framework
JP6737063B2 (ja) ソフトウェア資産管理装置、ソフトウェア資産管理方法、および、ソフトウェア資産管理プログラム
US12073295B2 (en) Machine learning model operation management system and method
US9354870B2 (en) Maintaining integrity of output of code generators
Pramanik et al. Minimum 2‐Tuple Dominating Set of an Interval Graph
JP6209931B2 (ja) ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム
JP6287314B2 (ja) ソフトウェア資産活用装置、ソフトウェア資産活用方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161025

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161107

R150 Certificate of patent or registration of utility model

Ref document number: 6048177

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150