JP2023116135A - 過去障害情報検索装置 - Google Patents
過去障害情報検索装置 Download PDFInfo
- Publication number
- JP2023116135A JP2023116135A JP2022018745A JP2022018745A JP2023116135A JP 2023116135 A JP2023116135 A JP 2023116135A JP 2022018745 A JP2022018745 A JP 2022018745A JP 2022018745 A JP2022018745 A JP 2022018745A JP 2023116135 A JP2023116135 A JP 2023116135A
- Authority
- JP
- Japan
- Prior art keywords
- failure information
- search
- past
- group
- past failure
- 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.)
- Pending
Links
- 238000013461 design Methods 0.000 claims description 69
- 238000000034 method Methods 0.000 claims description 37
- 238000011835 investigation Methods 0.000 claims description 30
- 238000011161 development Methods 0.000 claims description 9
- 238000010845 search algorithm Methods 0.000 claims description 2
- 239000000284 extract Substances 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 47
- 230000006870 function Effects 0.000 description 25
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 230000018109 developmental process Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 239000000470 constituent Substances 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- UWNXGZKSIKQKAH-UHFFFAOYSA-N Cc1cc(CNC(CO)C(O)=O)c(OCc2cccc(c2)C#N)cc1OCc1cccc(c1C)-c1ccc2OCCOc2c1 Chemical compound Cc1cc(CNC(CO)C(O)=O)c(OCc2cccc(c2)C#N)cc1OCc1cccc(c1C)-c1ccc2OCCOc2c1 UWNXGZKSIKQKAH-UHFFFAOYSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】目的に応じた情報の取得が可能な過去障害情報検索装置を提供する。【解決手段】過去障害情報群に対して、構造を表す特徴的な複数の要素を抽出し、階層構造化した過去障害情報要素群を生成する過去障害情報構造化部と、複数の要素に対し、キーワードの集まりである複数のキーワード群との照合を行い、意味的に最も近いキーワード群を割り当てるように整理された複数の関連要素群を生成する過去障害情報要素整理部と、複数の関連要素群のそれぞれに参照情報を付加して複数の関連参照群とする過去障害情報データベース生成部と、複数の関連参照群に対し、入力された検索対象についての検索を行い検索結果を出力する過去障害情報検索部と、を備えている。【選択図】図1
Description
本開示は、製品開発において発生した障害情報の活用のための過去障害情報検索装置に関する。
製品のソフトウェア開発コスト削減のため、ソフトウェア開発のリードタイム短縮が求められている。近年のソフトウェア開発は過去に作成された様々な情報が蓄積されて大規模化しており、リードタイム短縮のためには、新たに発生する様々な検討作業において、過去の膨大な情報の中から参考となる情報の取得を効率化することが重要となってくる。
ソフトウェア開発において蓄積されていく情報のうち、特に着目すべき情報として、過去に発生したソフトウェアの障害に関する記録である過去障害情報が挙げられる。過去障害情報は、実際に発生した現象に基づいた詳細が含まれることから、活用する有効性が高いと考えられる。
過去障害情報の活用の例としては、例えば、新たに何らかの障害が発生した際の原因調査において過去同様の現象が発生した障害情報を確認したい場合、詳細把握が困難な設計要素を流用した開発を行う際に、その詳細や修正時の影響範囲を把握できる障害情報を確認したい場合および流用しようとしている設計要素が過去どのような障害原因に関わってきたかを把握するために障害情報を確認したい場合など、様々な状況が考えられる。
しかしながら、障害情報は、通常は自然言語の文章により作成されており、厳格なフォーマットに則って記載されているとは限らない。また、緊急性の高い障害対応の状況下で記載されることから十分に検討された文章とならず、書くべき内容が書くべき場所とは異なる場所に書かれている、といったことが発生しやすい。そのため、そのままの形で障害情報に対して何らかの検索を行っても、必要としている参考となる情報への到達が困難な場合が多いと考えられる。
大量の自然言語による情報に対する検索性を向上させる先行技術として、例えば、特許文献1に開示されるように、自然言語による文章の構造を把握しやすくするために、パターンマッチングなどの手法を用いて文章を細分化して階層構造として表現する技術が挙げられる。
特許文献1に開示される技術を用いて、細分化および階層構造化した状態の文章に対して検索を実行すると、ヒットした要素、ツリーの上位および下位の要素に焦点を絞って確認しやすく、必要な情報に到達しやすくなり、情報活用のリードタイム削減につながると考えられる。
しかし、障害情報においては、先述のとおり、書くべき内容が書くべき場所とは異なる場所に書かれている場合が多く、細分化および階層構造化だけでは対応できないとの問題があった。
本開示は上記のような問題を解決するためになされたものであり、目的に応じた情報の取得が可能な過去障害情報検索装置を提供することを目的とする。
本開示に係る過去障害情報検索装置は、ソフトウェアにおいて過去に発生した自然言語で記述された障害情報を蓄積した過去障害情報群に対して、構造を表す特徴的な複数の要素を抽出し、階層構造化した過去障害情報要素群を生成する過去障害情報構造化部と、前記過去障害情報要素群に含まれる前記複数の要素に対し、予め準備したキーワードの集まりである複数のキーワード群との照合を行い、意味的に最も近いキーワード群を割り当てるように分類して整理し、整理された整理済み過去障害情報の集まりである複数の関連要素群を生成する過去障害情報要素整理部と、前記複数の関連要素群のそれぞれに参照情報を付加して複数の関連参照群として生成する過去障害情報データベース生成部と、前記複数の関連参照群に対し、入力された検索対象についての検索を行い検索結果を出力する過去障害情報検索部と、を備え、前記過去障害情報検索部は、検索目的に合わせた複数の検索部を有し、前記複数の検索部は、前記過去障害情報データベース生成部で生成された前記複数の関連参照群とそれぞれ対応付けされて設けられ、前記複数の検索部のそれぞれは、前記検索対象について対応する関連参照群に対して検索を行う。
本開示に係る過去障害情報検索装置によれば階層構造化した過去の障害情報の複数の要素に対して、障害情報が持つ特有の意味に応じた分類を行い、それぞれの分類に対して検索目的に合わせた検索を行うことで、目的に応じた情報の取得の効率化を図ることができる。
<実施の形態1>
<装置構成>
図1は、本開示に係る実施の形態1の過去障害情報検索装置1の構成を示すブロック図である。図1に示すように、過去障害情報検索装置1は、過去障害情報構造化部3、過去障害情報要素整理部10、過去障害情報データベース生成部16および過去障害情報検索部23を備え、外部から入力される障害関連キーワード情報5に基づいて、外部から入力される過去障害情報群2に対する検索対象22の検索を行い、検索結果28を生成して出力する。
<装置構成>
図1は、本開示に係る実施の形態1の過去障害情報検索装置1の構成を示すブロック図である。図1に示すように、過去障害情報検索装置1は、過去障害情報構造化部3、過去障害情報要素整理部10、過去障害情報データベース生成部16および過去障害情報検索部23を備え、外部から入力される障害関連キーワード情報5に基づいて、外部から入力される過去障害情報群2に対する検索対象22の検索を行い、検索結果28を生成して出力する。
過去障害情報群2は、ある製品におけるソフトウェアの障害について、発生した現象、原因調査、判明した原因、暫定処置・恒久処置・再発防止策・水平展開といった対策などの内容を何らかの様式で記載した自然言語の文章の集まりである。過去障害情報群2の一例201を図2に示す。
図2に示す一例201においては、障害の識別記号である障害情報ID:1234で区別される情報として、(1)障害の発生経緯、(1-1)障害が発生した状況、[発生前の状態]「・・・が××だった」、[障害を発生させた操作]「○○を××した」、(1-2)障害の事象「△△が☆になる現象が発生」、(2)障害の調査などの自然言語による記述がなされている。
過去障害情報構造化部3は、過去障害情報群2の構造を表す特徴的な要素を抽出することで、過去障害情報要素ツリー群4を生成する。例えば、「(1)、(2)、(3)・・・」、「(1-1)、(1-2)、(1-3)・・・」、「[ 」などの記号を最初に持つ行をタイトル行として1つの要素とみなし、それ以降の行は、同じ種類の記号が現れる、または文章が終了するまでは、その子要素とみなす、といった処理を繰り返し行うことで実現することができる。過去障害情報要素ツリー群4の一例301を図3に示す。
図3に示す一例301においては、障害情報ID:1234で識別される情報のツリーとして、記号(1)の「障害の発生経緯」に対して、記号(1-1)の「障害が発生した状況」、「発生前の状態」、「障害を発生させた操作」が階層構造化されてツリー状に記載されている。
障害関連キーワード情報5は、過去障害情報群2に含まれることが想定される各キーワードおよびそのキーワードに近い意味の確からしさに関する情報を有し、現象関連キーワード群6、調査関連キーワード群7、原因関連キーワード群8および対策関連キーワード群9で構成されている。障害関連キーワード情報5の一例401を図4に示す。
図4に示す一例401においては、対象となる自然言語の文章を「現象」、「調査」、「原因」および「対策」の4つの何れかに分類する場合を想定し、「現象関連キーワード群」、「調査関連キーワード群」、「原因関連キーワード群」および「対策関連キーワード群」が記載されている。
現象関連キーワード群6は、障害として発生した現象に関連するキーワードと、その関連性の確からしさを表す値との組を1つ以上有しており、図4では、「現象関連キーワード群」には、キーワードとして「現象」、「事象」および[経緯]が記載され、それぞれ分類される確からしさの値の増加分として、「10pt(ポイント)」、「10pt」および[8pt]が割り当てられている。
調査関連キーワード群7は、障害の原因を把握するための調査に関連するキーワードと、その関連性の確からしさを表す値との組を1つ以上有しており、図4では、「調査関連キーワード群」には、キーワードとして「調査」、「絞り込み」および「切り分け」が記載され、それぞれ分類される確からしさの値の増加分として、「10pt」、「9pt」および[8pt]が割り当てられている。
原因関連キーワード群8は、調査の結果判明した障害の原因に関連するキーワードと、その関連性の確からしさを表す値の組を1つ以上有しており、図4では、「原因関連キーワード群」には、キーワードとして「原因」、「要因」および「メカニズム」が記載され、それぞれ分類される確からしさの値の増加分として、「10pt」、「10pt」および[8pt]が割り当てられている。
対策関連キーワード群9は、障害の原因に対する暫定処置、恒久処置、再発防止策、水平展開といった対策に関連するキーワードと、その関連性の確からしさを表す値の組を1つ以上有しており、図4では、「対策関連キーワード群」には、キーワードとして「対策」、「処置」および「再発防止処置」が記載され、それぞれ分類される確からしさの値の増加分として、「10pt」、「9pt」および[6pt]が割り当てられている。
「その関連性の確からしさを表す値」は、過去障害情報検索装置1のユーザーによって予め定義されている。例えば「事象」というキーワードが対象となる自然言語の文章に入っていた場合は、「現象」に分類される確からしさが増加するものとユーザーが考えて、その増加分を表した値を「10pt」と設定する。
ユーザーがキーワードを決定する方法としては、ユーザーが過去障害情報群を確認し、その中での様々なキーワードの出現状況に基づいて、分類するのに有効そうなキーワードを選んだり、ノイズになりそうなキーワードを除外したりして決定することができる。
過去障害情報要素整理部10は、過去障害情報要素ツリー群4の各要素に対し、障害関連キーワード情報5に基づいて意味の分類を行うことで、整理済み過去障害情報群11を生成する。整理済み過去障害情報群11は、現象関連要素群12、調査関連要素群13、原因関連要素群14および対策関連要素群15で構成されている。
<動作>
過去障害情報要素整理部10の処理のフローチャートを図5に示す。また、過去障害情報要素整理部10での処理の一例を説明する概念図を図6に示す。
過去障害情報要素整理部10の処理のフローチャートを図5に示す。また、過去障害情報要素整理部10での処理の一例を説明する概念図を図6に示す。
以下、図5および図6を用いて、過去障害情報要素整理部10の処理について説明する。処理を開始すると、まず、過去障害情報要素ツリー群4の各障害情報から各要素を取得する(ステップS1)。
次に、障害関連キーワード情報5から、全ての「××関連キーワード群」を取得する(ステップS2)。
次に、取得した「××関連キーワード群」から、全ての「キーワード」を取得する(ステップS3)。
次に、ステップS1で取得した過去障害情報要素ツリー群4の要素と、ステップS3で取得した「キーワード」との照合を行いマッチングを確認する(ステップS4)。
そして、マッチした場合(Yesの場合)は、点数を加算する(ステップS5)。なお、マッチしなかった場合(Noの場合)は、ステップS6に移行する。
以上のステップS1~S5の処理について、図6を用いて概念的に説明する。図6においては、過去障害情報要素ツリー群4の障害情報から取得した各要素の一例として、「(1)(1-2)障害の事象 △△が☆になる現象が発生」を選択した場合を示している。
これに対し、「現象関連キーワード群」から取得した「キーワード」として、「事象10pt」とのマッチングを確認し、マッチしたことを確認した場合は、点数10ptを加算する。なお「マッチした」とは、「意味的に最も近い」ことと定義する。
ここで、図4に示した障害関連キーワード情報5の一例401を例に採ると、図6に示すような点数計算表510を用いて、各関連キーワード群に点数を加算する。点数計算表510においては、最初は「現象関連キーワード群」、「調査関連キーワード群」、「原因関連キーワード群」および「対策関連キーワード群」の何れも「0pt」であるが、ステップS5で「事象」に対応する点数「10pt」が加算された場合は、点数計算表510の「現象関連キーワード群」に「10pt」が加算される。
ここで、図5のフローチャートの説明に戻り、ステップS5で点数を加算した後は、ステップS3で取得した全ての「キーワード」を処理したかを確認し(ステップS6)、全ての「キーワード」を処理した場合(Yesの場合)は、ステップS7に移行し、未処理の「キーワード」がある場合は、ステップS4以下の処理を繰り返す。
ステップS7では、ステップS2で取得した全ての「××関連キーワード群」を処理したかを確認し、全ての「××関連キーワード群」を処理した場合(Yesの場合)は、ステップS8に移行し、未処理の「××関連キーワード群」がある場合は、ステップS4の処理を繰り返す。
以上のステップS6~S7の処理を行った結果、全ての「××関連キーワード群」を処理した場合の点数計算表510は、図6に示されるように、「現象関連キーワード群」に「50pt」が加算され、「調査関連キーワード群」に「20pt」が加算され、「原因関連キーワード群」に「10pt」が加算され、「対策関連キーワード群」は加算がなく「0pt」を維持する結果となる。
ここで、図5のフローチャートの説明に戻り、ステップS8では、各要素について点数が最も大きくなる関連キーワード群を特定し、整理済み過去障害情報群11の特定した関連キーワード群に対応する関連要素群に関連要素として追加する要素割り当てを行う。
このステップS8の要素割り当ての処理を図6を用いて概念的に説明する。図6の最終的な点数計算表510に示されるように、「現象関連キーワード群」の点数が最も大きかった場合、要素割り当てにより、要素「(1)(1-2)障害の事象 △△が☆になる現象が発生」は、整理済み過去障害情報群11の現象関連要素群12に追加される。このように、マッチの回数に合わせて数値を加算する方法を採ることで、比較的簡単に要素割り当てを行うことができる。
ここで、図5のフローチャートの説明に戻り、過去障害情報要素ツリー群4の各障害情報から取得した各要素について、ステップS2~ステップS8の処理を実行したかを確認し(ステップS9)、全ての要素について処理を実行した場合(Yesの場合)は、過去障害情報要素整理部10の処理を終了し、未処理の要素がある場合は、ステップS4以下の処理を繰り返す。
このようにして過去障害情報要素整理部10で作成された整理済み過去障害情報群11の一例601を図7に示す。
図7に示す一例601においては、障害情報ID:1234で識別される過去障害情報として、「現象関連要素群」、「調査関連要素群」、「原因関連要素群」および「対策関連要素群」が記載され、「現象関連要素群」には、要素「(1)(1-1)[]発生前の状態 ・・・が×××だった」、要素「(1)(1-1)[]障害を発生させた操作 ○○を××した」が記載されている。
「調査関連要素群」には、要素「(2)(2-1)[]発生要素の絞り込み □□がある場合のみ発生」が記載されている。
「原因関連要素群」には、要素「(4)(4-1)[]発生メカニズム ●●のタイミングで××になるため・・・」が記載されている。
「対策関連要素群」には、要素「(6)(6-1)[]修正対応 モジュールhogeの処理fooに待機処理を追加」が記載されている。
ここで、図1の説明に戻る。過去障害情報データベース生成部16は、整理済み過去障害情報群11の各要素群に対して参照情報を付加して過去障害情報データベース17を生成する。
過去障害情報データベース生成部16の処理のフローチャートを図8に示す。過去障害情報データベース生成部16での処理の一例を説明する概念図を図9に示す。
以下、図8および図9を用いて、過去障害情報データベース生成部16の処理について説明する。処理を開始すると、まず、整理済み過去障害情報群11から各障害情報を取得する(ステップS11)。
次に、ステップS11で取得した障害情報から各「××関連要素群」を取得する(ステップS12)。「××関連要素群」としては、例えば「現象関連要素群」、「調査関連要素群」、「原因関連要素群」および「対策関連要素群」が挙げられる。
次に、ステップS12で取得した「××関連要素群」から各要素を取得する(ステップS13)。
次に、ステップS12で取得した要素を参照するための参照情報を生成する(ステップS14)。
以上のステップS11~S14の処理について、図9を用いて概念的に説明する。図9においては、障害情報から「現象関連要素群」を取得し、「現象関連要素群」から要素「(1)(1-2)障害の事象 △△が☆になる現象が発生」を取得した場合を示している。
この要素を参照するために「ID:1234」の参照情報を生成して要素「(1)(1-2)障害の事象 △△が☆になる現象が発生」の情報に付加することで、「現象関連参照群」を生成する。
ここで、図8のフローチャートの説明に戻り、ステップS14で参照情報を生成した後は、ステップS13で取得した各要素を全て処理したかを確認し(ステップS15)、全ての要素を処理した場合(Yesの場合)は、ステップS16に移行し、未処理の要素がある場合は、ステップS14以下の処理を繰り返す。
ステップS16では、ステップS12で取得した各「××関連要素群」を全て処理したかを確認し、全ての「××関連要素群」を処理した場合(Yesの場合)は、ステップS7に移行し、未処理の「××関連要素群」がある場合は、ステップS14の処理を繰り返す。
ステップS17では、ステップS11で取得した各障害情報を全て処理したかを確認し、全ての障害情報を処理した場合(Yesの場合)は、過去障害情報データベース生成部16の処理を終了し、未処理の障害情報がある場合は、ステップS14の処理を繰り返す。
このようにして過去障害情報データベース生成部16で作成された過去障害情報データベース17の一例801を図10に示す。
図10に示す一例801においては、「現象関連参照群」、「調査関連参照群」、「原因関連参照群」および「対策関連参照群」が記載されている。なお、各参照群の参照情報は、図7に示した各要素の先頭に「ID:1234」として付加されている。
ここで、図1の説明に戻る。過去障害情報検索部23は、過去障害情報データベース17に対し、検索対象22の検索を行い、検索結果28を出力する。過去障害情報データベース17は、現象関連参照群18、調査関連参照群19、原因関連参照群20および対策関連参照群21で構成されている。
過去障害情報検索部23は、現象関連検索部24、調査関連検索部25、原因関連検索部26および対策関連検索部27で構成され、それぞれ過去障害情報データベース17の現象関連参照群18、調査関連参照群19、原因関連参照群20および対策関連参照群21と対応付けされている。
過去障害情報検索部23は、自然言語の文章に対する検索のアルゴリズムを有している。当該アルゴリズムとしては、形態素解析およびN-Gramのような自然言語の文章を文字列の配列にして文章を分割するアルゴリズム、およびDoc2Vecのような文章を数値として評価可能にするアルゴリズムなどの既知のアルゴリズムを用いることができ、アルゴリズムを開発する必要がないので、コストを削減することができる。
検索対象22としては、開発において新規に発生した障害の発生現象を表す新規障害現象および流用設計における流用元の設計に関する情報を表す流用設計要素などが挙げられる。
流用設計は、過去に作ったソフトウェアの構成要素を流用した設計であり、流用元の設計に関する情報とは、流用する構成要素の設計に関する情報であり、仕様書、設計書、ソースコードの一部などが該当する。
検索対象22の一例901を図11に示す。図11に示す一例901においては、「新規障害現象」として「△△が☆に変わった」が記載され、「流用設計要素」として「●●機能の○○処理」が記載されている。
現象関連検索部24は、検索対象22として主に新規障害現象を入力し、現象関連参照群18に対して検索を行うことで、入力された新規障害現象と類似した発生現象を持つ類似障害情報の集まりである類似障害情報群29を抽出する。類似障害情報群29の一例1001を図12に示す。
図12に示す一例1001においては、新規障害現象が「△△が☆に変わった」である場合、現象関連参照群18から「△△が☆になる現象が発生」が検索され、類似障害情報として、「ID:1234 (1)(1-2)障害の事象 △△が☆になる現象が発生」と記載された例を示している。このように、検索対象22として新規障害現象を使用し、現象関連検索部24で検索することで、新規障害現象に対する分析をしたい場合に有用である。
調査関連検索部25は、検索対象22として主に流用設計要素を入力し、調査関連参照群19に対して検索を行うことで、入力された流用設計要素に近い設計要素に対する詳細調査を行った記録である詳細調査方法の集まりである詳細調査方法群30を抽出する。調査関連検索部25は、例えば、仕様書、設計書、ソースコードの内容および構造を理解しづらいときに、過去にその要素について調査した記録を検索する場合に有用である。詳細調査方法群30の一例1101を図13に示す。
図13に示す一例1101においては、流用設計要素が「●●機能の○○処理」である場合、調査関連参照群19から「●●機能における○○処理には××が使用されており」が検索され、詳細調査方法として「ID:1234 (2)(2-1)調査内容詳細 ●●機能における○○処理には××が使用されており」と記載された例を示している。
原因関連検索部26は、検索対象22として主に流用設計要素を入力し、原因関連参照群20に対して検索を行うことで、入力された流用設計要素に近い設計要素が他の設計要素に対して及ぼしてきた影響を表す記録である品質影響要素の集まりである品質影響要素群31を抽出する。原因関連検索部26は、例えば、仕様書、設計書、ソースコードの修正を検討しているときに、影響度を調査するため、過去にその要素が他の要素にどの程度影響を与えたかを調べたい場合に有用である。品質影響要素群31の一例1201を図14に示す。
図14に示す一例1201においては、流用設計要素が「●●機能の○○処理」である場合、原因関連参照群20から「●●機能において○○処理の遅延のため××が停止し」が検索され、品質影響要素として「ID:1234 (4)(4-2)障害発生のメカニズム ●●機能において○○処理の遅延のため××が停止し」と記載された例を示している。
対策関連検索部27は、検索対象22として主に流用設計要素を入力し、対策関連参照群21に対して検索を行うことで、入力された流用設計要素に近い設計要素がこれまでどのような障害によって修正されたかを表す記録である設計意図の集まりである設計意図群32を抽出する。対策関連検索部27は、例えば、仕様書、設計書、ソースコードの内容および構造が判っても、どのような意図で設計されたのかを理解できないときに、その設計意図に関わる障害情報を調べたい場合に有用である。設計意図群32の一例1301を図15に示す。
図15に示す一例1301においては、流用設計要素が「●●機能の○○処理」である場合、対策関連参照群21から「このため●●機能で○○処理に冗長な処理を付加して」が検索され、設計意図として「ID:1234 (7)(7-1)修正箇所 このため●●機能で○○処理に冗長な処理を付加して」と記載された例を示している。
<効果>
実施の形態1の過去障害情報検索装置1における障害情報に対する検索の正確さを説明するために、一般的な検索方法で検索した場合と、過去障害情報検索装置1で検索した場合のそれぞれの検索の流れの一例を図16および図17に示す。
実施の形態1の過去障害情報検索装置1における障害情報に対する検索の正確さを説明するために、一般的な検索方法で検索した場合と、過去障害情報検索装置1で検索した場合のそれぞれの検索の流れの一例を図16および図17に示す。
図16に示す検索の流れ1401は、一般的な検索手法として、連続して一致する文字の数が最も多いものを選ぶ検索方法を説明しており、過去障害情報群2に対する検索を直接行う方法を示している。
図16においては、検索対象として「△△が☆に変わった」との新規障害現象1402を検索する場合、類似した障害現象が発生した記録を持つ過去障害情報1403と、類似した文言が障害発生原因として記録された過去障害情報1404とが検索結果として抽出された例を示している。
すなわち過去障害情報1403は、障害情報ID:1234で識別される過去障害情報として「(1)障害の発生経緯」、「(1-2)障害の事象 △△が☆になる現象が発生」が記録されており、「△△が☆に変わった」との新規障害現象1402とは5文字が一致する。
一方、過去障害情報1404は、障害情報ID:4321で識別される過去障害情報として「(4)障害の原因」、「(4-2)発生原因詳細 △△が☆に変わった影響で・・・」が記録されており、「△△が☆に変わった」との新規障害現象1402とは9文字が一致する。
この結果、「△△が☆に変わった」との検索結果1405が得られ、類似した文言が障害発生原因として記録された障害情報ID:4321の過去障害情報1404が抽出される。
このように、文章の類似性が文言の一致度合いだけで判定される場合、類似した障害現象が発生した記録を持つ過去障害情報1403が検索結果として抽出されず、抽出されるべきでない過去障害情報1404が検索結果1405となってしまう可能性がある。
図17に示す検索の流れ1402は、過去障害情報検索部23が、過去障害情報データベース17に対して検索対象22の検索を行う方法を示している。
図17においては、検索対象として「△△が☆に変わった」との新規障害現象1502を検索する場合、類似した障害現象が発生した記録を持つ過去障害情報1503が検索結果として抽出され、類似した文言が障害発生原因として記録された過去障害情報1504は検索結果として抽出されない例を示している。
すなわち、図17においては、過去障害情報データベース17の現象関連参照群1505に対して検索を実行することにより、現象関連参照群1505に含まれる過去障害情報1503の「ID:1234 (1)(1-2)障害の事象 △△が☆になる現象が発生」が検索結果1507として抽出されることが示されている。
これは、過去障害情報検索部23による検索において、現象関連検索部24を意図して選んで利用しているためであり、現象関連検索部24は現象関連参照群18、すなわちそこから参照される現象関連要素群12のみを検索対象にするためである。
一方、原因関連参照群1506に含まれる過去障害情報1504の「ID:4321 (4)(4-2)発生原因詳細 △△が☆に変わった影響で・・・」は検索対象外となり、検索結果として抽出されない。
このように、実施の形態1の過去障害情報検索装置1によれば、検索結果1507として抽出されるべき過去障害情報1503が出力され、障害情報に対する検索が正確であることが判る。
<流用設計要素を用いた例>
図16および図17を用いて説明した検索の流れは、新規障害現象を検索対象とした場合を示したが、流用設計要素を検索対象とした場合も同様の結果が得られる。
図16および図17を用いて説明した検索の流れは、新規障害現象を検索対象とした場合を示したが、流用設計要素を検索対象とした場合も同様の結果が得られる。
図18には一般的な検索方法で検索した場合の検索の流れの一例を示し、図19には過去障害情報検索装置1で検索した場合の検索の流れの一例を示している。
図18においては、検索対象として「●●機能の○○処理」との流用設計要素1602を検索する場合、流用設計要素の修正についての記録を持つ過去障害情報1603と、流用設計要素の詳細についての記録を持つ過去障害情報1604とが検索結果として抽出された例を示している。
すなわち過去障害情報1603は、障害情報ID:4567で識別される過去障害情報として「(7)障害の発生経緯」、「(7-2)修正箇所 ●●機能の○○に冗長な処理を付加して・・・」が記録されており、「●●機能の○○処理」との流用設計要素1602とは7文字が一致する。
一方、過去障害情報1604は、障害情報ID:2345で識別される過去障害情報として「(2)障害の調査」、「(2-1)調査内容詳細 ●●機能の○○処理には××が使用されており・・・」が記録されており、「●●機能の○○処理」との流用設計要素1602とは9文字が一致する。
この結果、「●●機能の○○処理」との検索結果1605が得られ、流用設計要素の詳細についての記録を持つ障害情報ID:2345の過去障害情報1604が抽出される。
このように、文章の類似性が文言の一致度合いだけで判定される場合、流用設計要素の修正についての記録を持つ過去障害情報1603が検索結果として抽出されず、流用設計要素の詳細について記録されているに過ぎない過去障害情報1604が検索結果1605となってしまう可能性がある。
図19に示す検索の流れ1701は、過去障害情報検索部23が、過去障害情報データベース17に対して検索対象22の検索を行う方法を示している。
図19においては、検索対象として「●●機能の○○処理」との流用設計要素1702を検索する場合、流用設計要素の修正についての記録を持つ過去障害情報1703が検索結果として抽出され、流用設計要素の詳細について記録された過去障害情報1704は検索結果として抽出されない例を示している。
すなわち、図19においては、過去障害情報データベース17の対策関連参照群1705に対して検索を実行することにより、対策関連参照群1705に含まれる過去障害情報1703の「ID:4567 (7)(7-1)修正箇所 ●●機能の○○に冗長な処理を付加」が検索結果1707として抽出されることが示されている。
これは、過去障害情報検索部23による検索において、対策関連検索部27を意図して選んで利用しているためであり、対策関連検索部27は対策関連参照群21、すなわちそこから参照される対策関連要素群15のみを検索対象にするためである。
一方、調査関連参照群1706に含まれる過去障害情報1704の「ID:2345 (2)(2-1)調査内容詳細 ●●機能の○○処理には××が使用」は検索対象外となり、検索結果として抽出されない。
このように、実施の形態1の過去障害情報検索装置1によれば、検索結果1707として抽出されるべき過去障害情報1703が出力され、障害情報に対する検索が正確であることが判る。
以上に説明したように、実施の形態1の過去障害情報検索装置1によれば、過去の障害情報に対して細分化および階層構造化を行った各要素に対して、障害情報が持つ特有の意味に応じた分類を行い、それぞれの分類に対して目的に合わせた検索を行うことで、目的に応じた情報の取得の効率化を図ることができる。
例えば、現象に関連する要素に対して検索を行うことで、現在発生したばかりの障害において、原因調査および対策検討の参考にするため、過去発生した類似の障害の事例を調べることが可能となり、障害対応の作業効率化を図ることが可能となる。
また、調査に関連する要素に対して検索を行うことで、詳細把握が困難な要素に対して、過去詳細を調査した事例を調べることが可能となり、調査作業の効率化を図ることが可能となる。
また、原因に関連する要素に対して検索を行うことで、ある要素の品質および他要素へ及ぼしてきた影響を調べることが可能となり、設計要素のリスク分析、流用判断、修正見積りなどの効率化を図ることが可能となる。
また、対策に関連する要素に対して検索を行うことで、ある要素の設計意図および修正時の他要素への影響などを調べることが可能となり、デグレード防止などを図ることが可能となる。
<過去障害情報検索装置のハードウェア構成>
過去障害情報検索装置1の各構成要素は、コンピュータを用いて構成することができ、コンピュータがプログラムを実行することで実現される。すなわち、過去障害情報検索装置1は、例えば図20に示す処理回路1000により実現される。処理回路1000には、CPU(Central Processing Unit)、DSP(Digital Signal Processor)などのプロセッサが適用され、記憶装置に格納されるプログラムを実行することで各部の機能が実現される。
過去障害情報検索装置1の各構成要素は、コンピュータを用いて構成することができ、コンピュータがプログラムを実行することで実現される。すなわち、過去障害情報検索装置1は、例えば図20に示す処理回路1000により実現される。処理回路1000には、CPU(Central Processing Unit)、DSP(Digital Signal Processor)などのプロセッサが適用され、記憶装置に格納されるプログラムを実行することで各部の機能が実現される。
なお、処理回路1000には、専用のハードウェアが適用されても良い。処理回路1000が専用のハードウェアである場合、処理回路1000は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、またはこれらを組み合わせたもの等が該当する。
過去障害情報検索装置1は、構成要素の各々の機能が個別の処理回路で実現されても良いし、それらの機能がまとめて1つの処理回路で実現されても良い。
また、図21には、処理回路1000がプロセッサを用いて構成されている場合におけるハードウェア構成を示している。この場合、過去障害情報検索装置1の各部の機能は、ソフトウェア等(ソフトウェア、ファームウェア、またはソフトウェアとファームウェア)との組み合わせにより実現される。ソフトウェア等はプログラムとして記述され、メモリ1200に格納される。処理回路1000として機能するプロセッサ1100は、メモリ1200(記憶装置)に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、このプログラムは、過去障害情報検索装置1の構成要素の動作の手順および方法をコンピュータに実行させるものであると言える。
ここで、メモリ1200は、例えば、RAM、ROM、フラッシュメモリー、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)等の、不揮発性または揮発性の半導体メモリ、HDD(Hard Disk Drive)、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disc)およびそのドライブ装置等、または、今後使用されるあらゆる記憶媒体であっても良い。
以上、過去障害情報検索装置1の各構成要素の機能が、ハードウェアおよびソフトウェア等の何れか一方で実現される構成について説明した。しかしこれに限ったものではなく、過去障害情報検索装置1の一部の構成要素を専用のハードウェアで実現し、別の一部の構成要素をソフトウェア等で実現する構成であっても良い。例えば、一部の構成要素については専用のハードウェアとしての処理回路1000でその機能を実現し、他の一部の構成要素についてはプロセッサ1100としての処理回路1000がメモリ1200に格納されたプログラムを読み出して実行することによってその機能を実現することが可能である。
なお、本開示は、その開示の範囲内において、実施の形態を適宜、変形、省略することが可能である。
1 過去障害情報検索装置、2 過去障害情報群、3 過去障害情報構造化部、4 過去障害情報要素ツリー群、5 障害関連キーワード群、10 整理済み過去障害情報群、11 整理済み過去障害情報群、16 過去障害情報データベース生成部、17 過去障害情報データベース、22 検索対象、23 過去障害情報検索部。
Claims (7)
- ソフトウェアにおいて過去に発生した自然言語で記述された障害情報を蓄積した過去障害情報群に対して、構造を表す特徴的な複数の要素を抽出し、階層構造化した過去障害情報要素群を生成する過去障害情報構造化部と、
前記過去障害情報要素群に含まれる前記複数の要素に対し、予め準備したキーワードの集まりである複数のキーワード群との照合を行い、意味的に最も近いキーワード群を割り当てるように分類して整理し、整理された整理済み過去障害情報の集まりである複数の関連要素群を生成する過去障害情報要素整理部と、
前記複数の関連要素群のそれぞれに参照情報を付加して複数の関連参照群として生成する過去障害情報データベース生成部と、
前記複数の関連参照群に対し、入力された検索対象についての検索を行い検索結果を出力する過去障害情報検索部と、を備え、
前記過去障害情報検索部は、
検索目的に合わせた複数の検索部を有し、
前記複数の検索部は、
前記過去障害情報データベース生成部で生成された前記複数の関連参照群とそれぞれ対応付けされて設けられ、前記複数の検索部のそれぞれは、前記検索対象について対応する関連参照群に対して検索を行う、過去障害情報検索装置。 - 前記過去障害情報検索部は、
前記自然言語の文章に対する検索のアルゴリズムを有し、
前記アルゴリズムは、
前記自然言語の前記文章を文字列の配列にして分割するアルゴリズム、および前記文章を数値として評価可能にするアルゴリズムを含む、請求項1記載の過去障害情報検索装置。 - 前記複数のキーワード群は、
障害として発生した現象に関連するキーワードと、その関連性の確からしさを表す値との組を1つ以上有する現象関連キーワード群と、
前記障害の原因を把握するための調査に関連するキーワードと、その関連性の確からしさを表す値との組を1つ以上有する調査関連キーワード群と、
前記調査の結果判明した前記障害の前記原因に関連するキーワードと、その関連性の確からしさを表す値の組を1つ以上有する原因関連キーワード群と、
前記障害の前記原因に対する暫定処置、恒久処置、再発防止策、水平展開を少なくとも含む対策に関連するキーワードと、その関連性の確からしさを表す値の組を1つ以上有する対策関連キーワード群と、を有し、
前記過去障害情報要素整理部は、
前記複数の要素と前記複数のキーワード群との前記照合において、マッチした場合は、前記複数のキーワード群がそれぞれ有する前記関連性の確からしさを表す値を加算することで、前記意味的に最も近いキーワード群を割り当てる、請求項1記載の過去障害情報検索装置。 - 前記検索対象は、
前記ソフトウェアの開発において新規に発生した障害の発生現象を表す新規障害現象を含み、
前記過去障害情報検索部は、前記複数の検索部の1つとして、
前記新規障害現象に対する前記検索結果として、前記新規障害現象と類似した発生現象を持つ類似障害情報の集まりである類似障害情報群を抽出する検索部を有する、請求項1記載の過去障害情報検索装置。 - 前記検索対象は、
前記ソフトウェアの開発の流用設計における流用元の設計に関する情報を表す流用設計要素を含み、
前記過去障害情報検索部は、前記複数の検索部の1つとして、
前記流用設計要素に対する検索結果として、前記流用設計要素に近い設計要素に対する詳細調査を行った記録である詳細調査方法の集まりである詳細調査方法群を抽出する検索部を有する、請求項1記載の過去障害情報検索装置。 - 前記検索対象は、
前記ソフトウェアの開発の流用設計における流用元の設計に関する情報を表す流用設計要素を含み、
前記過去障害情報検索部は、前記複数の検索部の1つとして、
前記流用設計要素に対する検索結果として、前記流用設計要素に近い設計要素が他の設計要素に対して及ぼしてきた影響を表す記録である品質影響要素の集まりである品質影響要素群を抽出する検索部を有する、請求項1記載の過去障害情報検索装置。 - 前記検索対象は、
前記ソフトウェアの開発の流用設計における流用元の設計に関する情報を表す流用設計要素を含み、
前記過去障害情報検索部は、前記複数の検索部の1つとして、
前記流用設計要素に対する検索結果として、前記流用設計要素に近い設計要素がこれまでどのような障害によって修正されたかを表す記録である設計意図の集まりである設計意図群を抽出する検索部を有する、請求項1記載の過去障害情報検索装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022018745A JP2023116135A (ja) | 2022-02-09 | 2022-02-09 | 過去障害情報検索装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022018745A JP2023116135A (ja) | 2022-02-09 | 2022-02-09 | 過去障害情報検索装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023116135A true JP2023116135A (ja) | 2023-08-22 |
Family
ID=87579540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022018745A Pending JP2023116135A (ja) | 2022-02-09 | 2022-02-09 | 過去障害情報検索装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023116135A (ja) |
-
2022
- 2022-02-09 JP JP2022018745A patent/JP2023116135A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020192401A1 (en) | System and method for generating answer based on clustering and sentence similarity | |
JP3143079B2 (ja) | 辞書索引作成装置と文書検索装置 | |
CN112579155B (zh) | 代码相似性检测方法、装置以及存储介质 | |
US20080059498A1 (en) | System and method for document section segmentation | |
KR20070089449A (ko) | 문서 분류방법 및 그 문서 분류방법을 컴퓨터에서 실행시키기 위한 프로그램을 포함하는 컴퓨터로 읽을 수있는 기록매체. | |
CN109885641B (zh) | 一种数据库中文全文检索的方法及系统 | |
CN109471889B (zh) | 报表加速方法、系统、计算机设备和存储介质 | |
CN110851559A (zh) | 数据元自动识别方法和识别系统 | |
US20040122660A1 (en) | Creating taxonomies and training data in multiple languages | |
CN116720515A (zh) | 基于大语言模型的敏感词审核方法、存储介质及电子设备 | |
US8676831B2 (en) | Master pattern generation and utilization | |
CN114153496B (zh) | 一种基于区块链的高速可并行代码相似度对比方法和系统 | |
Neysiani et al. | Automatic interconnected lexical typo correction in bug reports of software triage systems | |
KR20020009583A (ko) | 색인키 데이터 필드를 추출하기 위한 시스템 및 방법 | |
CN114579693B (zh) | 一种nlp文本安全审核多级检索系统 | |
US11361565B2 (en) | Natural language processing (NLP) pipeline for automated attribute extraction | |
CN111191430B (zh) | 自动建表方法、装置、计算机设备和存储介质 | |
Souza et al. | Automatic identification of best attributes for indexing in data deduplication | |
JP2023116135A (ja) | 過去障害情報検索装置 | |
Endalie et al. | Hybrid feature selection for Amharic news document classification | |
CN112395881A (zh) | 物料标签的构建方法、装置、可读存储介质及电子设备 | |
Chou et al. | On the Construction of Web NER Model Training Tool based on Distant Supervision | |
Canales et al. | Evaluation of entity recognition algorithms in short texts | |
CN117725087B (zh) | 一种基于重排序的代码搜索去偏差方法及系统 | |
US20240062015A1 (en) | Natural language processing for descriptive language analysis |