JP6589036B1 - 障害予兆検知システムおよびプログラム - Google Patents

障害予兆検知システムおよびプログラム Download PDF

Info

Publication number
JP6589036B1
JP6589036B1 JP2018212587A JP2018212587A JP6589036B1 JP 6589036 B1 JP6589036 B1 JP 6589036B1 JP 2018212587 A JP2018212587 A JP 2018212587A JP 2018212587 A JP2018212587 A JP 2018212587A JP 6589036 B1 JP6589036 B1 JP 6589036B1
Authority
JP
Japan
Prior art keywords
word
gram
failure
design document
information
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
JP2018212587A
Other languages
English (en)
Other versions
JP2020080024A (ja
Inventor
郁尚 荒木
郁尚 荒木
泰三 星野
泰三 星野
Original Assignee
株式会社大和総研
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 株式会社大和総研 filed Critical 株式会社大和総研
Priority to JP2018212587A priority Critical patent/JP6589036B1/ja
Application granted granted Critical
Publication of JP6589036B1 publication Critical patent/JP6589036B1/ja
Publication of JP2020080024A publication Critical patent/JP2020080024A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】設計書を自動分析し、設計書のレビューの効率化を図ることができる障害予兆検知システムおよびプログラムを提供する。【解決手段】障害情報(現象・原因)の単語列から切り出した単語Nグラムの集合(または単語列)を、障害管理番号と関連付けて障害一覧記憶手段34に記憶するとともに、過去障害に関連するチェック情報を、障害管理番号と関連付けてチェックリスト記憶手段61に記憶しておき、設計書の単語列から切り出した単語Nグラムの各々と、障害一覧記憶手段34に記憶された障害情報の単語Nグラム(または単語列から切り出した単語Nグラム)とのマッチングを行い、一致した障害情報の単語Nグラムに対応する障害管理番号を用いて、チェックリスト記憶手段61に記憶されたチェック情報を取得し、出力する。【選択図】図1

Description

本発明は、設計書の記載内容から障害発生の予兆を検知する処理を実行するコンピュータにより構成された障害予兆検知システムおよびプログラムに係り、例えば、システムの設計開発において作成した設計書の自動分析を行う場合等に利用できる。
一般に、システムの設計開発においては、開発案件の担当者として割り当てられた設計者や開発者が、ユーザの目的に応じた要件定義に基づき設計開発を行い、その設計開発において作成した設計書について、開発担当部署のライン役席等のレビュー者がレビューを行うという体制で開発が行われている。従って、システム設計や開発の品質は、設計者およびレビュー者のスキルに依存している。この際、ライン役席等のレビュー者のスキルは、過去の開発経験、知識として蓄えている障害情報、障害対応経験等がベースになっている。
昨今では、急速な技術革新に伴う情報技術の高度化・複雑化と相まって、システムの設計開発の現場での年度の開発ボリュームが増加し、これを背景に障害件数も増加しており、ライン役席等の通常のレビュー者によるレビューだけではなく、過去の開発経験、障害情報、障害対応経験等が、より豊富な本部(開発担当部署以外の部署)のライン部長以上での第三者レビューも実施されている。
また、本発明に関連する技術として、ソフトウェア開発の際に作成される文書に関して必要事項の記載漏れを効果的に抑制することのできる文書検査方法が知られている(特許文献1参照)。この文書検査方法では、形態素解析を行うが、単語Nグラム(単語N−gram)は利用していない。
さらに、電子文書から知見情報を抽出する知見抽出装置、具体的には、配信されたニュース情報から株取引に関する知見情報を抽出する知見抽出装置が知られ、コンピュータネットワークシステムの障害検知に関する知見情報の抽出をすることも可能であるとされている(特許文献2参照)。この知見抽出装置では、Nグラムや形態素解析を利用しているが、単語Nグラムは利用していない。
なお、単語Nグラムは、単語列を、連続したN個の単語で分割する手法を指すことがあるが、本発明では、その手法により単語列から1単語ずつずらしながら切り出して生成された単語群(連続したN個の単語)を、単語Nグラムと呼ぶものとする。
特開2018−26029号公報 再表2013−179346号公報(段落[0162])
前述したように、従来のシステムの設計開発では、ライン役席等による通常のレビューを行う場合でも、あるいは、より経験や知識が豊富な第三者によるレビューを行う場合でも、開発システムの品質確保は、レビュー者のスキルに依存するという体制であった。
従って、レビュー者の経験や知識に依存するので、レビューの標準化を行うことは困難であった。また、レビュー者の都合もあるので、設計が完了した段階で、即時レビューを実施することが困難な場合があった。さらに、開発ボリュームの増加、開発案件の増加により、レビュー者の時間確保が、より一層困難になってきているので、設計書のレビューの効率化が望まれていた。
なお、システムの設計開発において作成される設計書だけではなく、例えば、家電製品等の製品や商品の設計書、自動車や航空機等の乗り物の設計書、建築物の設計書等の様々な設計書についても、同様な開発体制をとっていれば、同様な問題が生じる可能性がある。
本発明の目的は、設計書を自動分析し、設計書のレビューの効率化を図ることができる障害予兆検知システムおよびプログラムを提供するところにある。
本発明は、設計書の記載内容から障害発生の予兆を検知する処理を実行するコンピュータにより構成された障害予兆検知システムであって、
過去障害についての現象および原因を含む障害情報を、障害管理番号と関連付けて記憶する原障害一覧記憶手段と、
この原障害一覧記憶手段に記憶された障害情報のうちの少なくとも現象および原因を含む部分を用いて、Nを2以上とする単語Nグラム用の障害情報の単語列を生成するか、または、この障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラムの集合を生成する処理を実行する障害情報単語列生成手段と、
この障害情報単語列生成手段により生成した障害情報の単語列または障害情報の単語Nグラムの集合を、障害情報とともに、障害管理番号と関連付けて記憶する障害一覧記憶手段と、
過去障害に関連するチェック項目を含むチェック情報を、障害管理番号と関連付けて記憶するチェックリスト記憶手段と、
障害予兆検知の対象となる設計書のデータから文章を抽出する処理を実行する設計書文章抽出手段と、
この設計書文章抽出手段により抽出した設計書文章を用いて、障害情報の単語NグラムのNと同数のNによる単語Nグラム用の設計書の単語列を生成するか、または、この設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラムの集合を生成する処理を実行する設計書単語列生成手段と、
この設計書単語列生成手段により生成した設計書の単語列または設計書の単語Nグラムの集合を記憶する設計書単語列記憶手段と、
この設計書単語列記憶手段に記憶された設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラム、または設計書の単語Nグラムの集合から取得した設計書の単語Nグラムの各々を、単語Nグラムマッチング検索要求用のクエリに含ませて送出するとともに、クエリに対する検索結果を受け取る単語Nグラムマッチング要求処理を実行する単語Nグラム単位検知処理手段と、
この単語Nグラム単位検知処理手段から送出されたクエリを受け取り、クエリに含まれる設計書の単語Nグラムについて、障害一覧記憶手段に記憶された障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または障害情報の単語Nグラムの集合から取得した障害情報の単語Nグラムの中に一致する障害情報の単語Nグラムがあるか否かを判断し、一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、クエリに対する検索結果として単語Nグラム単位検知処理手段に返す単語Nグラムマッチング検索処理を実行する検索手段と、
この検索手段による検索結果として単語Nグラム単位検知処理手段が受け取った障害管理番号を用いて、チェックリスト記憶手段に記憶されているチェック情報を取得し、取得したチェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する処理を実行する検知結果出力手段と
を備えたことを特徴とするものである。
ここで、「障害管理番号」は、0,1,2,3等の数字により構成されていてもよく、アルファベットやギリシャ文字や日本語(ひらがな、カタカナ、漢字を含む。)等の文字により構成されていてもよく、数字と文字との組合せにより構成されていてもよく、本発明では、障害情報を識別するための識別情報として用いている。
このような本発明の障害予兆検知システムにおいては、過去障害についての障害情報および設計書の記載内容を用いて設計書を自動分析し、過去障害に紐付くチェック項目を含むチェック情報を出力するか、または過去障害についての障害情報とそれに紐付くチェック項目を含むチェック情報とを出力するので、設計書のレビューの自動化を図ることが可能となる。
また、設計書のレビューの自動化の実現により、人に依存した品質確保体制からの脱却を図ることが可能となるので、従来の体制下におけるライン役席等の通常のレビュー者や、第三者レビューを行うレビュー者は、その分だけ、時間的な拘束が少なくなるか、無くなることから、レビュー者の負担を軽減することが可能となるうえ、レビュー者の都合を考慮する必要性が少なくなるか、無くなるため、即時レビューの実施も可能となる。
さらに、設計書のレビューの自動化の実現により、レビュー者の経験や知識に頼る場合に比べ、一定レベルのレビュー品質の確保や、レビューの標準化が図られる。
そして、過去障害に紐付くチェック項目を含むチェック情報が出力されるので、障害発生の未然防止を図ることも可能となる。
また、Nを2以上とする単語Nグラム(連続するN個の単語)によるマッチングを行うので、単なるNグラム(単語ではなく、連続するN個の文字)によるマッチングや、Nを1とする単語Nグラム(単語ユニグラム:単語Uni−gram)によるマッチングを行う場合に比べ、設計書の記載内容の自動分析の精度、すなわち障害予兆検知の精度を向上させることが可能となり、これらにより前記目的が達成される。
<頻出語スキップ処理を実行する構成>
また、前述した障害予兆検知システムにおいて、
障害情報単語列生成手段は、
障害一覧記憶手段に記憶させる障害情報の中から抽出した各単語の累積出現回数を求め、求めた各単語の累積出現回数を単語累積出現回数記憶手段に記憶させる処理も実行する構成とされ、
単語累積出現回数記憶手段に記憶された単語のうち、累積出現回数が閾値を超えるか、または閾値以上となっている頻出語を取得する処理を実行する頻出語取得手段を備え、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理を実行する前に、クエリに含ませて送出する対象となっている設計書の単語Nグラムを構成するN個の単語の中に、頻出語取得手段により取得した頻出語が含まれているか否かを判断し、含まれている場合には、単語Nグラムマッチング要求処理を行わない頻出語スキップ処理を実行する構成とされていることが望ましい。
このように頻出語スキップ処理を実行する構成とした場合には、頻出語をノイズとみなした処理を実現することが可能となり、障害予兆検知の精度を向上させることが可能となる。従って、単語群(連続するN個の単語をその順番を保って並べた状態の単語列)としての単語Nグラムで見た場合に、出現回数の多い単語群は、設計書の記載内容の自動分析を行ううえで重要な要素であると捉える一方、単語群ではなく、1つの単語で見た場合の頻出語は、ノイズであるとみなす取り扱いを実現することが可能となる。このため、Nを2以上とする単語Nグラム(連続するN個の単語)によるマッチングを採用することによる設計書の記載内容の自動分析の精度向上効果、すなわち障害予兆検知の精度向上効果を、より一層顕著なものとすることができる。
<プログラムID・ジョブID基準判断処理を実行する構成>
さらに、前述した障害予兆検知システムにおいて、
障害一覧記憶手段は、
障害情報の単語列または障害情報の単語Nグラムの集合に加え、障害情報として、障害が与える影響の大小を示す障害影響度と、プログラムIDおよび/またはジョブIDとを、障害管理番号と関連付けて記憶する構成とされ、
予め定められた大きな障害影響度と関連付けられて障害一覧記憶手段に記憶されているプログラムIDおよび/またはジョブIDを含む障害情報、並びに、対応する障害管理番号を取得してプログラムID・ジョブID記憶手段に記憶させる処理を実行するプログラムID・ジョブID取得手段を備え、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理に加え、
設計書の単語Nグラムをクエリに含ませて送出する前に、設計書の単語Nグラムの中に、プログラムID・ジョブID記憶手段に記憶されたプログラムIDおよび/またはジョブIDが含まれているか否かを判断し、含まれている場合に、当該プログラムIDおよび/または当該ジョブIDに対応する障害管理番号を、出力対象の障害管理番号として採用するプログラムID・ジョブID基準判断処理を実行する構成とされ、
検知結果出力手段は、
単語Nグラムマッチング要求処理で得られた障害管理番号と、プログラムID・ジョブID基準判断処理で得られた障害管理番号とを用いて、チェックリスト記憶手段に記憶されているチェック情報を取得し、それぞれの障害管理番号を用いて取得したチェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの障害管理番号に対応する障害情報を並べて出力する処理を実行する構成とされていることが望ましい。
ここで、「プログラムIDおよび/またはジョブID」とされているのは、障害一覧記憶手段に記憶される障害情報についての源泉データを管理する障害情報管理システムが、プログラムIDおよびジョブIDの双方を取り扱っている場合(障害情報の管理にプログラムIDおよびジョブIDの双方が使用されている場合)には、プログラムIDとジョブIDとのうちのいずれか一方でもよく、双方でもよいという趣旨であり、また、障害情報管理システムが、元々、プログラムIDとジョブIDとのうちのいずれか一方しか取り扱っていない場合には、取り扱っているほうの一方だけでよい趣旨である。
このようにプログラムID・ジョブID基準判断処理を実行する構成とした場合には、プログラムIDおよび/またはジョブIDを利用し、設計書の記載内容と過去障害とを紐付けることが可能となる。このため、コンピュータシステムの設計開発で作成される設計書の自動分析を、より一層精度よく行うことが可能となり、障害予兆検知の精度を、より一層向上させることが可能となる。
<障害影響度毎の重みを用いてスコアを算出する構成>
また、前述した障害予兆検知システムにおいて、
障害一覧記憶手段は、
障害情報の単語列または障害情報の単語Nグラムの集合に加え、障害情報として、障害が与える影響の大小を示す障害影響度を、障害管理番号と関連付けて記憶する構成とされ、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理として、障害影響度毎の重みを設計書の単語Nグラムとともにクエリに含ませて送出する処理を実行する構成とされ、
検索手段は、
単語Nグラムマッチング検索処理として、クエリに含まれる設計書の単語Nグラムと一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害影響度についての重みを用いて合致度を示すスコアを算出し、算出したスコアを、障害管理番号若しくはこの障害管理番号に加えて対応する障害情報とともに、クエリに対する検索結果として単語Nグラム単位検知処理手段に返す処理を実行する構成とされ、
検知結果出力手段は、
スコアを用いて、チェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する処理を実行する構成とされていることが望ましい。
ここで、「検知結果出力手段」における「スコアを用いて、チェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する」ことには、スコアの大きさに従ってチェック情報等を並べて出力すること、スコアの値とともにチェック情報等を出力すること、スコアの大きさが上位の障害管理番号に対応するチェック情報等を出力すること、スコアの大きさがユーザの指定した順位の障害管理番号に対応するチェック情報等を出力すること、これらの出力を組み合わせることが含まれる。
このように障害影響度毎の重みを用いてスコアを算出する構成とした場合には、クエリに含まれる設計書の単語Nグラムが、障害情報の単語Nグラムと一致したときに、当該障害情報の単語Nグラムが、大きな障害影響度に対応していれば、スコアが相対的に大きくなり、小さな障害影響度に対応していれば、スコアが相対的に小さくなるように調整することができるので、障害予兆検知の精度を、より一層向上させることが可能となる。
<関連単語群を用いてマッチングを行う構成>
さらに、前述した障害予兆検知システムにおいて、
原障害一覧記憶手段に記憶された複数の過去障害についての現象および原因を含む障害情報を用いて生成された単語列から1単語ずつずらしながら切り出した単語群を切り出した順番に並べた単語群の集合を学習データとして用いて、単語群どうしの間の関連性の学習処理を実行する関連単語群学習手段と、
この関連単語群学習手段による学習結果として得られた単語群の分散表現としての単語ベクトルを記憶する学習結果記憶手段とを備え、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理として、学習結果記憶手段に記憶された単語ベクトルを用いて、設計書の単語Nグラムから連想される関連単語群を求め、求めた関連単語群を、設計書の単語Nグラムとともにクエリに含ませて送出する処理を実行する構成とされ、
検索手段は、
単語Nグラムマッチング検索処理として、クエリに含まれる設計書の単語Nグラムと一致する障害情報の単語Nグラムがある場合、クエリに含まれる関連単語群と一致する障害情報の単語Nグラムがある場合、または、クエリに含まれる設計書の単語Nグラムと一致する障害情報の単語Nグラムがあり、かつ、クエリに含まれる関連単語群と一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、クエリに対する検索結果として単語Nグラム単位検知処理手段に返す処理を実行する構成とされていることが望ましい。
このように関連単語群を用いてマッチングを行う構成とした場合には、設計書の単語Nグラムと障害情報の単語Nグラムとのマッチングに加え、関連単語群と障害情報の単語Nグラムとのマッチングを行うことができるので、障害予兆検知の精度を、より一層向上させることが可能となる。
<設計書の単語Nグラムについての重み、および関連単語群についての重みを用いてスコアを算出する構成>
また、関連単語群を用いてマッチングを行う構成とした場合において、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理として、設計書の単語Nグラムについての重み、およびこの重みよりも小さい関連単語群についての重みを、設計書の単語Nグラムおよび関連単語群とともにクエリに含ませて送出する処理を実行する構成とされ、
検索手段は、
単語Nグラムマッチング検索処理として、クエリに含まれる設計書の単語Nグラムと一致する障害情報の単語Nグラムがある場合には、設計書の単語Nグラムについての重みを用いて合致度を示すスコアを算出し、クエリに含まれる関連単語群と一致する障害情報の単語Nグラムがある場合には、関連単語群についての重みを用いて合致度を示すスコアを算出し、クエリに含まれる設計書の単語Nグラムと一致する障害情報の単語Nグラムがあり、かつ、クエリに含まれる関連単語群と一致する障害情報の単語Nグラムがある場合には、設計書の単語Nグラムおよび関連単語群についての双方の重みを用いて合致度を示すスコアを算出し、算出したスコアを、障害管理番号若しくはこの障害管理番号に加えて対応する障害情報とともに、クエリに対する検索結果として単語Nグラム単位検知処理手段に返す処理を実行する構成とされ、
検知結果出力手段は、
スコアを用いて、チェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する処理を実行する構成とされていることが望ましい。
このように設計書の単語Nグラムについての重み、および関連単語群についての重みを用いてスコアを算出する構成とした場合には、クエリに含まれる設計書の単語Nグラムが、障害情報の単語Nグラムと一致したときには、スコアが相対的に大きくなり、クエリに含まれる関連単語群が、障害情報の単語Nグラムと一致したときには、スコアが相対的に小さくなるように調整することができるので、障害予兆検知の精度を、より一層向上させることが可能となる。
<単語群出現頻度および単語群稀少度を用いて、設計書の単語Nグラムについての重み、および関連単語群についての重みを算出決定し、同じ設計書の単語Nグラムを含むクエリの送出の繰り返しを回避する構成>
さらに、前述した設計書の単語Nグラムについての重み、および関連単語群についての重みを用いてスコアを算出する構成とした場合において、
設計書単語列生成手段は、
設計書の単語Nグラムの集合の中で、同じ単語群が出現する頻度を示す単語群出現頻度を求めるとともに、この単語群出現頻度を用いて単語群稀少度を求め、これらの単語群出現頻度および単語群稀少度を、単語群出現頻度記憶手段に記憶させる処理を実行する構成とされ、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理として、設計書の単語Nグラムについての重みを、関連単語群との相対的な重み付けのための基準重みに、当該設計書の単語Nグラムと同じ単語群について単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定するとともに、
関連単語群についての重みを、設計書の単語Nグラムとの相対的な重み付けのための基準重みに、当該関連単語群と同じ単語群について単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定し、
同じ設計書の単語Nグラムを含むクエリを既に送出しているか否かを判断し、未だ送出していない場合には、算出決定した設計書の単語Nグラムについての重み、および関連単語群についての重みを、設計書の単語Nグラムおよび関連単語群とともにクエリに含ませて送出し、既に送出している場合には、クエリを送出しない処理を実行する構成とされていることが望ましい。
このように単語群出現頻度および単語群稀少度を用いて、設計書の単語Nグラムについての重み、および関連単語群についての重みを算出決定し、同じ設計書の単語Nグラムを含むクエリの送出の繰り返しを回避する構成とした場合には、検索手段による同じマッチング処理の繰り返しを回避することができ、演算速度の向上を図ることが可能となる。
<単語Nグラム拡張マッチング要求処理を実行する構成>
また、前述したプログラムID・ジョブID基準判断処理を実行する構成において、
プログラムID・ジョブID記憶手段は、
プログラムID・ジョブID取得手段により障害一覧記憶手段から取得したプログラムIDおよび/またはジョブIDを含む障害情報、障害管理番号、並びに、障害情報の単語列または障害情報の単語Nグラムの集合を関連付けて記憶する構成とされ、
単語Nグラム単位検知処理手段は、
単語Nグラムマッチング要求処理、およびプログラムID・ジョブID基準判断処理に加え、
プログラムID・ジョブID基準判断処理で採用した出力対象の障害管理番号に関連付けられてプログラムID・ジョブID記憶手段に記憶されている障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または障害情報の単語Nグラムの集合から取得した障害情報の単語Nグラムの各々を、単語Nグラム拡張マッチング検索要求用のクエリに含ませて送出するとともに、この単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果を受け取る単語Nグラム拡張マッチング要求処理を実行する構成とされ、
検索手段は、
単語Nグラム単位検知処理手段から送出された単語Nグラム拡張マッチング検索要求用のクエリを受け取り、受け取ったクエリに含まれる障害情報の単語Nグラムについて、障害一覧記憶手段に記憶された障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または障害情報の単語Nグラムの集合から取得した障害情報の単語Nグラムの中に一致する障害情報の単語Nグラムがあるか否かを判断し、一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果として単語Nグラム単位検知処理手段に返す単語Nグラム拡張マッチング検索処理を実行する構成とされ、
検知結果出力手段は、
単語Nグラムマッチング要求処理で得られた障害管理番号と、プログラムID・ジョブID基準判断処理で得られた障害管理番号と、単語Nグラム拡張マッチング検索処理で得られた障害管理番号とを用いて、チェックリスト記憶手段に記憶されているチェック情報を取得し、それぞれの障害管理番号を用いて取得したチェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの障害管理番号に対応する障害情報を並べて出力する処理を実行する構成としてもよい。
このように単語Nグラム拡張マッチング要求処理を実行する構成とした場合には、プログラムID・ジョブID基準判断処理で得られた障害管理番号に対応する障害情報の単語列または障害情報の単語Nグラムの集合を利用し、障害情報の単語Nグラムを含む単語Nグラム拡張マッチング検索要求用のクエリを作成し、そのクエリに含まれる障害情報の単語Nグラムと、障害一覧記憶手段に記憶された障害情報の単語Nグラムとをマッチングさせる。従って、この単語Nグラム拡張マッチング要求処理(障害情報の単語Nグラムどうしのマッチング)は、プログラムID・ジョブID基準判断処理と、単語Nグラムマッチング要求処理(設計書の単語Nグラムと障害情報の単語Nグラムとのマッチング)とを融合した処理であるともいえるので、単語Nグラム単位検知処理手段は、異なる2系統の処理、およびそれらを融合した処理を行うことで、互いに関連する3系統の処理で、出力対象の障害管理番号を得ることが可能となる。
<プログラムの発明>
また、本発明のプログラムは、以上に述べた障害予兆検知システムとして、コンピュータを機能させるためのものである。
なお、上記のプログラムまたはその一部は、例えば、光磁気ディスク(MO)、コンパクトディスク(CD)、デジタル・バーサタイル・ディスク(DVD)、フレキシブルディスク(FD)、磁気テープ、読出し専用メモリ(ROM)、電気的消去および書換可能な読出し専用メモリ(EEPROM)、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、フラッシュディスク等の記録媒体に記録して保存や流通等させることが可能であるとともに、例えば、LAN、MAN、WAN、インターネット、イントラネット、エクストラネット等の有線ネットワーク、あるいは無線通信ネットワーク、さらにはこれらの組合せ等の伝送媒体を用いて伝送することが可能であり、また、搬送波に載せて搬送することも可能である。さらに、上記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。
以上に述べたように本発明によれば、過去障害についての障害情報および設計書の記載内容を用いて設計書を自動分析し、過去障害に紐付くチェック項目を含むチェック情報を出力するか、または過去障害についての障害情報とそれに紐付くチェック項目を含むチェック情報とを出力するので、設計書のレビューの自動化を図ることができるため、人に依存した品質確保体制からの脱却、レビュー者の負担軽減、即時レビューの実施、一定レベルのレビュー品質の確保、レビューの標準化、障害発生の未然防止を図ることができるうえ、Nを2以上とする単語Nグラムによるマッチングを行うので、障害予兆検知の精度の向上を図ることができるという効果がある。
本発明の一実施形態の障害予兆検知システムの全体構成図。 前記実施形態のチェックリスト記憶手段およびその源泉データであるチェックリストの構成図。 前記実施形態の障害一覧記憶手段およびその源泉データである障害一覧ファイルの構成図。 前記実施形態の障害予兆検知結果の出力例を示す図。 前記実施形態のチェックリストの登録処理(準備処理の一部)の流れを示すフローチャートの図。 前記実施形態の障害一覧の登録処理(準備処理の一部)の流れを示すフローチャートの図。 前記実施形態の障害予兆検知処理の流れ(その1)を示すフローチャートの図。 前記実施形態の障害予兆検知処理の流れ(その2)を示すフローチャートの図。 前記実施形態の単語Nグラム(単語3グラム)の生成例を示す図。 前記実施形態のプログラムID・ジョブIDに基づく出力対象の障害管理番号の決定処理の説明図。 前記実施形態の頻出語の処理の詳細説明図。 前記実施形態のクエリ(単語Nグラム単位検知処理手段から検索エンジンへの問合せ)の生成例を示す図。 前記実施形態の検索エンジンによるクエリに対する応答結果の具体例を示す図。 前記実施形態のクエリ(問合せ)に対する応答結果に含まれるスコア(合致度)の処理の詳細説明図。 前記実施形態の関連単語群の学習処理の説明図。 本発明の変形の形態を示す単語Nグラム拡張マッチング要求処理および単語Nグラム拡張マッチング検索処理の説明図。
以下に本発明の一実施形態について図面を参照して説明する。図1には、本実施形態の障害予兆検知システム10の全体構成が示されている。図2には、チェックリスト記憶手段61およびその源泉データであるチェックリストの構成が示され、図3には、障害一覧記憶手段34およびその源泉データである障害一覧ファイルの構成が示されている。また、図4には、検知結果出力手段56による障害予兆検知結果の出力例が示されている。さらに、図5には、チェックリストの登録処理(準備処理の一部)の流れ、図6には、障害一覧の登録処理(準備処理の一部)の流れ、図7および図8には、障害予兆検知処理の流れが、それぞれフローチャートで示されている。また、図9は、単語Nグラム(単語3グラム)の生成処理、図10は、プログラムID・ジョブIDに基づく出力対象の障害管理番号の決定処理、図11は、頻出語の処理の説明図である。図12には、クエリ(単語Nグラム単位検知処理手段55から検索エンジン30への問合せ)の生成例が示され、図13には、検索エンジン30によるクエリに対する応答結果の具体例が示されている。さらに、図14は、クエリ(問合せ)に対する応答結果に含まれるスコア(合致度)の処理、図15は、関連単語群学習手段43による関連単語群の学習処理の説明図である。
<障害予兆検知システム10の全体構成>
図1において、障害予兆検知システム10は、障害予兆検知に関する各種処理を実行するとともに各種処理に必要なデータを記憶する障害予兆検知サーバ20を備え、この障害予兆検知サーバ20には、ネットワーク1を介して共有ファイルサーバ70、障害情報管理システム80、チェックリスト管理システム90、システム管理者が操作する1台または複数台の管理者端末100、利用者が操作する1台または複数台の利用者端末110が接続されている。
ここで、ネットワーク1は、本実施形態では、例えば、社内LANや社内イントラネット等の限定された領域内のネットワークであるが、インターネットのような広域のネットワークでもよく、有線であるか、無線であるか、有線・無線の混在型であるかは問わない。
障害予兆検知サーバ20は、アプリケーションサーバおよびデータベースサーバとして機能するサーバであり、1台または複数台のコンピュータにより構成され、検索エンジン30と、準備処理手段40と、障害予兆検知処理手段50と、チェックリスト記憶手段61と、学習結果記憶手段62と、プログラムID・ジョブID記憶手段63と、頻出語記憶手段64と、設計書単語列記憶手段65と、単語群出現頻度記憶手段66と、設定ファイル記憶手段67と、出力対象記憶手段68とを含んで構成されている。
検索エンジン30は、障害情報単語列生成手段31と、頻出語送信手段32と、検索手段33と、障害一覧記憶手段34と、単語累積出現回数記憶手段35とを含んで構成されている。この検索エンジン30は、既存のオープン・ソース・ソフトウェア(以下、OSSという。)を改造して構築してもよく、あるいは、全機能を自ら構築してもよい。利用できるOSSとしては、例えば、スコアリング機能を有する既存の検索エンジンであるアパッチ・ソーラ(Apache Solr)等がある。
準備処理手段40は、障害予兆検知の対象となる設計書を用いた処理を行う前の準備処理を実行するものであり、チェックリスト登録手段41と、障害一覧登録手段42と、関連単語群学習手段43とを含んで構成されている。
障害予兆検知処理手段50は、障害予兆検知の対象となる設計書を用いた障害予兆検知処理を実行するものであり、設計書文章抽出手段51と、プログラムID・ジョブID取得手段52と、頻出語取得手段53と、設計書単語列生成手段54と、単語Nグラム単位検知処理手段55と、検知結果出力手段56とを含んで構成されている。
そして、検索エンジン30に含まれる各手段31〜33、準備処理手段40に含まれる各手段41〜43、および障害予兆検知処理手段50に含まれる各手段51〜56は、障害予兆検知サーバ20を構成するコンピュータ本体の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する1つまたは複数のプログラム、並びに、主メモリやキャッシュメモリ等の作業用メモリ等により実現される。なお、これらの各手段31〜33,41〜43,51〜56の詳細は、後述する。
また、検索エンジン30に含まれる障害一覧記憶手段34および単語累積出現回数記憶手段35、並びに、チェックリスト記憶手段61、学習結果記憶手段62、および設定ファイル記憶手段67は、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、DVD、CD、MO、磁気テープ等の他の記録媒体を採用してもよい。また、各記憶手段34,35,61,62,67のデータ保存形式は、任意であり、例えば、データベースでもよく、フラットファイルやその他のデータファイル等によるファイル形式でもよい。データベースとする場合には、各記憶手段34,35,61,62,67をそれぞれ別々のデータベースとしてもよく、1つまたは幾つかのデータベース内の異なるテーブルとしてもよい。検索エンジン30として、例えば、既存のツールであるアパッチ・ソーラ(Apache Solr)を改造して利用する場合には、障害一覧記憶手段34および単語累積出現回数記憶手段35は、ファイル形式のライブラリとなる。なお、これらの各記憶手段34,35,61,62,67の詳細は、後述する。
一方、プログラムID・ジョブID記憶手段63、頻出語記憶手段64、設計書単語列記憶手段65、単語群出現頻度記憶手段66、および出力対象記憶手段68は、アプリケーションプログラム(例えば、Java(登録商標)等の言語により記述されたプログラム)で使用する主メモリやキャッシュメモリ等の作業用メモリにより実現される。但し、これらの各記憶手段63,64,65,66,68は、不揮発性メモリにより実現してもよい。なお、これらの各記憶手段63,64,65,66,68の詳細は、後述する。
共有ファイルサーバ70は、障害予兆検知に関する各種処理で用いる各種のファイルを格納するサーバであり、1台または複数台のコンピュータにより構成され、加工後チェックリストファイル記憶手段71と、障害一覧ファイル記憶手段72と、設計書ファイル記憶手段73と、設計書文章ファイル記憶手段74と、障害予兆検知結果ファイル記憶手段75とを含んで構成されている。これらの各記憶手段71〜75は、具体的には、それぞれのファイルを格納するフォルダ(ディレクトリ)であり、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)等により好適に実現される。
障害情報管理システム80は、システム(本システムではなく、過去に開発された多数のシステムのことであるが、その中に本システムが含まれていてもよい。)に発生した過去の障害情報を管理するシステムであり、1台または複数台のコンピュータにより構成され、原障害一覧記憶手段81を備えている。この原障害一覧記憶手段81は、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、DVD、CD、MO、磁気テープ等の他の記録媒体を採用してもよい。また、原障害一覧記憶手段81のデータ保存形式は、任意であり、例えば、データベースでもよく、フラットファイルやその他のデータファイル等によるファイル形式でもよい。なお、原障害一覧記憶手段81の詳細は、図3を用いて後述する。
チェックリスト管理システム90は、例えば、概要設計、詳細設計、開発等の各作業工程におけるチェック項目を含むチェック情報を管理するシステムであり、1台または複数台のコンピュータにより構成され、原チェックリスト記憶手段91を備えている。この原チェックリスト記憶手段91は、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、DVD、CD、MO、磁気テープ等の他の記録媒体を採用してもよい。また、原チェックリスト記憶手段91のデータ保存形式は、任意であり、例えば、データベースでもよく、フラットファイルやその他のデータファイル等によるファイル形式でもよい。なお、原チェックリスト記憶手段91の詳細は、図2を用いて後述する。
管理者端末100および利用者端末110は、コンピュータにより構成され、例えばマウスやキーボード等の入力手段と、例えば液晶ディスプレイ等の表示手段とを備えている。これらの端末100,110は、必要な機能を備えていれば、例えば、スマートフォン、タブレット端末、携帯情報端末(PDA)等の携帯機器でもよい。
また、管理者端末100は、障害関連チェックリスト抽出手段101を備えている。この障害関連チェックリスト抽出手段101は、例えば、表計算ソフトウェアのマクロ機能等により実現することができる。なお、障害関連チェックリスト抽出手段101の詳細は、後述する。
<障害予兆検知サーバ20の詳細構成>
<障害予兆検知サーバ20/検索エンジン30/障害情報単語列生成手段31の構成>
障害情報単語列生成手段31は、障害情報管理システム80の原障害一覧記憶手段81に記憶された障害情報のうちの少なくとも現象および原因を含む部分を用いて、[A]Nを2以上とする単語Nグラム用の障害情報の単語列を生成するか、または、[B]この障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラムの集合を生成し、生成した[A]の場合の「障害情報の単語列」または[B]の場合の「障害情報の単語Nグラムの集合」を、障害一覧記憶手段34に記憶させる処理を実行するものである。本実施形態では、一例として、単語3グラム(単語Tri−gram)とする。また、単語3グラムとするのは、一例として、障害情報のうちの現象および原因だけとするが、顧客向けに記載された現象および原因があれば、それらも含めて単語3グラムとする。
本実施形態では、図6に示すように、管理者が管理者端末100を操作することにより、障害情報管理システム80の原障害一覧記憶手段81に記憶された障害情報が、障害一覧ファイル(例えばCSVファイル)として出力され、管理者端末100を経由して共有ファイルサーバ70の障害一覧ファイル記憶手段72に配置され、そこから障害予兆検知サーバ20の障害一覧登録手段42により障害一覧ファイルが取得され、検索エンジン30への障害一覧の登録処理が行われるので、障害情報単語列生成手段31は、取得した障害一覧ファイル内の障害情報のうちの現象および原因を用いるか、または検索エンジン30の障害一覧記憶手段34に登録された障害情報のうちの現象および原因を用いて、[A]単語列を生成し、若しくは[B]単語3グラムの集合を生成する処理を実行する。
具体的には、障害情報単語列生成手段31は、障害情報のうちの現象および原因(顧客向けに記載された現象および原因がある場合には、それらも含む。)について、[A]形態素解析を行うことにより、名詞のみを抽出し、抽出した名詞のみの単語列を生成し、障害一覧記憶手段34に記憶させるか、または、[B]名詞のみの単語列から1単語(1名詞)ずつずらしながら切り出した障害情報(本実施形態では、障害情報のうちの現象および原因)の単語3グラムの集合を生成し、得られた複数の単語3グラムを切り出した順番に並べて障害一覧記憶手段34に記憶させる処理を実行する。
例えば、図9に示すように、障害一覧の現象・原因についての「条件付信用返済注文入力画面における一部返済指定をMAXASに不正注文…」というテキストデータがある場合には、ここから「条件 付 信用 返済 注文 入力 画面 一部 返済 指定 MAXAS 不正 注文 …」という単語列を生成するか、または、さらにこの単語列から「条件 付 信用」、「付 信用 返済」、「信用 返済 注文」、「返済 注文 入力」、「注文 入力 画面」、…という単語3グラムの順列集合(並び順を保持した集合)を生成する。
また、障害情報単語列生成手段31は、障害一覧記憶手段34に記憶させる障害情報(本実施形態では、障害情報のうちの現象および原因)の中から抽出した各単語(各名詞)の累積出現回数を求め、求めた各単語の累積出現回数を、単語累積出現回数記憶手段35(図11参照)に記憶させる処理も実行する。ここでの累積出現回数は、図11に示すように、障害一覧記憶手段34に記憶させる全ての過去障害(全ての障害管理番号)についての障害情報(本実施形態では、現象および原因)における出現回数の累積値である。
<障害予兆検知サーバ20/検索エンジン30/頻出語送信手段32の構成>
頻出語送信手段32は、頻出語取得手段53からの要求に応じ、単語累積出現回数記憶手段35(図11参照)に記憶されている各単語(各名詞)のうち、累積出現回数が、頻出語取得手段53からの要求として指定されている閾値(例えば100回)以上であるか、または閾値を超える単語(名詞)を、頻出語取得手段53に渡す処理を実行するものである。なお、頻出語送信手段32は、全ての単語(名詞)およびそれらの各単語の累積出現回数を、頻出語取得手段53に渡す処理を実行してもよい。
<障害予兆検知サーバ20/検索エンジン30/検索手段33の構成>
検索手段33は、単語Nグラムマッチング検索処理として、単語Nグラム単位検知処理手段55から送出された単語Nグラムマッチング検索要求用のクエリを受け取り、このクエリに含まれる設計書の単語Nグラムについて、[A]障害一覧記憶手段34に記憶された障害情報(本実施形態では、障害情報のうちの現象および原因)の単語列から1単語ずつずらしながら切り出した障害情報(現象・原因)の単語Nグラムの中に一致する障害情報(現象・原因)の単語Nグラムがあるか否かを判断し、または、[B]障害一覧記憶手段34に記憶された障害情報(現象・原因)の単語Nグラムの集合から順番に取得した障害情報(現象・原因)の単語Nグラムの中に一致する障害情報(現象・原因)の単語Nグラムがあるか否かを判断し、一致する障害情報(現象・原因)の単語Nグラムがある場合に、当該障害情報(現象・原因)の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて障害一覧記憶手段34に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、単語Nグラムマッチング検索要求用のクエリに対する検索結果(応答結果)として単語Nグラム単位検知処理手段55に返す処理を実行するものである。本実施形態では、障害情報(現象・原因)については、一例として単語3グラム(N=3)とするので、これに合わせて、マッチングを行う相手方となる設計書についても、単語3グラム(N=3)とする。
なお、[A]の処理と、[B]の処理との相違は、障害一覧記憶手段34に記憶されているのが、[A]の場合には障害情報(現象・原因)の単語列であり、[B]の場合には障害情報(現象・原因)の単語Nグラムの集合であることから生じる相違である。すなわち、単語列からの単語Nグラムの切り出し処理を、検索手段33により実行するか([A]の場合)、障害情報単語列生成手段31により実行するか([B]の場合)の相違である。
また、検索手段33は、単語Nグラムマッチング検索処理として、単語Nグラムマッチング検索要求用のクエリに、設計書の単語Nグラムから連想される関連単語群が含まれている場合には、その関連単語群と一致する障害情報(現象・原因)の単語Nグラムがあるか否かの判断も行い、一致する障害情報(現象・原因)の単語Nグラムがある場合には、設計書の単語Nグラムとのマッチングの場合と同様にして、検索結果(応答結果)を単語Nグラム単位検知処理手段55に返す処理を実行する。本実施形態では、設計書の単語Nグラムは、単語3グラムとするので、これに合わせて、関連単語群も、3つの単語(名詞)を並び順を考慮して連結した単語群となる。例えば、「国内 株式 買」と「株式 買 国内」とは、3つの単語の並び順が異なるので、異なる関連単語群である。
さらに、検索手段33は、単語Nグラムマッチング検索処理として、設計書の単語Nグラムについてのフレーズあいまい検索も実行する。このフレーズあいまい検索は、設計書の単語Nグラムを構成するN個の単語(本実施形態では、3つの単語)が離れていることも許容しつつ、単語Nグラムの切り出しを行う前の状態の障害情報(現象・原因)の単語列の中に、N個の単語(3つの単語)が含まれるか否かを判断する検索であり、クエリで指定された許容範囲を示す語数(例えば、連続する100単語)の中にN個の単語(3つの単語)が収まっていれば、合致すると判断する検索である。この際、N個の単語(3つの単語)の並び順を考慮する必要はなく、どのような順番でも、N個の単語(3つの単語)が、許容範囲を示す語数(例えば、連続する100単語)の中に収まっていればよい。そして、合致した場合には、その合致した単語列に関連付けられて障害一覧記憶手段34に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、単語Nグラムマッチング検索要求用のクエリに対する検索結果(応答結果)として単語Nグラム単位検知処理手段55に返す処理を実行する。
また、検索手段33は、クエリで指定された重みを用いたスコア(合致度)の算出処理を行い、算出したスコアを、検索された障害管理番号等とともに、単語Nグラムマッチング検索要求用のクエリに対する検索結果(応答結果)として単語Nグラム単位検知処理手段55に返す処理も実行する。検索エンジン30として、例えば、既存のツールであるアパッチ・ソーラ(Apache Solr)を改造して利用する場合には、クエリに含まれる検索対象(本実施形態では、設計書の単語Nグラムや関連単語群)とのマッチングが行われる文章(本実施形態では、障害情報である現象および原因の単語列)の長さが短い程、スコアが高くなり、また、マッチングが行われる文章(本実施形態では、障害情報である現象および原因の単語列)中における検索対象(本実施形態では、設計書の単語Nグラムや関連単語群)の出現回数が多い程、スコアが高くなるが、これを改造し、マッチングが行われる文章の長短に関係なく、かつ、検索対象の出現回数が多いか少ないかに関係なく、基本のスコアが1(1点)になるように調整(変更)している。従って、検索手段33により算出されるスコアの大小は、以下の重みに左右されるように調整している。
先ず、重みには、障害影響度毎の重みがある。障害影響度は、システムに発生した障害が与える影響の大きさを示す指標であり、本実施形態では、大きい方から順に、例えば、S,A,B,C,Dとなっている。図12に示すように、例えば、クエリに含まれる設計書の単語Nグラム(関連単語群の場合や、フレーズあいまい検索の場合も同様)が、障害影響度Sに対応する障害情報(本実施形態では、現象および原因)の単語Nグラムと合致した場合にスコアを10倍にするために、障害影響度Sの重みをWS=10倍とし、障害影響度Aに対応する障害情報(現象・原因)の単語Nグラムと合致した場合にスコアを5倍にするために、障害影響度Aの重みをWA=5倍とし、同様に、障害影響度Bの重みをWB=3倍とし、障害影響度Cの重みをWC=2倍とし、障害影響度Dの重みをWD=1倍とする等の設定を行うことができる。従って、大きな障害影響度に対応する障害情報(現象・原因)に合致する程、スコアが大きくなるように設定することができる。このような障害影響度毎の重みWS,WA,WB,WC,WDは、管理者が管理者端末100を操作して設定変更可能なように設定ファイルに格納されて設定ファイル記憶手段67に記憶されている。図12の例では、クエリに含まれる「impact」は、障害影響度を示し、「^」は、重みを示している。
次に、重みには、クエリに含まれる検索対象の種類に応じた重みがあり、設計書の単語Nグラムについての重みWFと、関連単語群についての重みWRと、フレーズあいまい検索についての重みWVとがある。フレーズあいまい検索を行わない場合には、フレーズあいまい検索についての重みWVの設定は省略してもよい。これらの重みWF,WR,WVは、設計書の単語Nグラムが合致した場合と、関連単語群が合致した場合と、フレーズあいまい検索で合致した場合とで、スコアが異なるようにするための相対的な重み付けである。図12に示すように、例えば、設計書の単語Nグラムが、障害情報(本実施形態では、現象および原因)の単語Nグラムと合致した場合にスコアを2倍にするために、設計書の単語Nグラムについての重みをWF=2倍とし、関連単語群が、障害情報(現象・原因)の単語Nグラムと合致した場合にスコアを1倍にするために、関連単語群についての重みをWR=1倍とする等の設定を行うことができる。図12の例では、1つのクエリの中に、1つの設計書の単語Nグラム、および4つの関連単語群を含ませているが、4つの関連単語群の各々についての重みWRは同じである。図12の例では、クエリに含まれる「impact_cause_ngram」は、検索対象である現象・原因(より正確には、検索対象である設計書の単語Nグラムやその関連単語群とマッチングする対象としての障害情報のうちの現象および原因)を示している。
また、上述した設計書の単語Nグラムについての重みWF、関連単語群についての重みWR、フレーズあいまい検索についての重みWVは、これらの相対的な重み付けのための基準重みだけを考慮した状態であり、実際には、単語Nグラム単位検知処理手段55により、それぞれの基準重みに、単語群の出現頻度を示す指標であるTF(Term Frequency)および単語群の稀少度を示す指標であるIDF(Inverse Document Frequency、逆文書頻度であり、log(単語群の数/TF))が乗じられることにより、それぞれの重みWF,WR,WVが算出決定される。従って、この算出決定処理については、単語Nグラム単位検知処理手段55の構成の説明で後述する。これらのWF,WR,WV算出用の基準重みは、管理者が管理者端末100を操作して設定変更可能なように設定ファイルに格納されて設定ファイル記憶手段67に記憶されている。図12の例では、TFやIDFを省略して基準重みだけとした場合のWF,WRを含むクエリが示されている。
さらに、以上に述べた障害影響度毎の重みWS,WA,WB,WC,WDと、設計書の単語Nグラム・関連単語群・フレーズあいまい検索についての重みWF,WR,WVとは、同時に重複して適用することができる。図12の例でも、クエリの中でANDを使用することにより、同時に重複して適用している。従って、例えば、クエリに含まれる設計書の単語Nグラムが、障害情報(現象・原因)の単語Nグラムと合致した場合には、設計書の単語Nグラムについての重みWFにより、スコアが2倍になり、さらに、合致した障害情報(現象・原因)の単語Nグラムが、障害影響度Sに対応している場合には、障害影響度Sの重みWSにより、スコアが10倍になるので、WF×WS=2×10=20倍になる。また、例えば、クエリに含まれる関連単語群が、障害情報(現象・原因)の単語Nグラムと合致した場合には、関連単語群についての重みWRにより、スコアが1倍になり、さらに、合致した障害情報(現象・原因)の単語Nグラムが、障害影響度Bに対応している場合には、障害影響度Bの重みWBにより、スコアが3倍になるので、1×3=3倍になる。
また、検索手段33は、プログラムID・ジョブID取得手段52により送出されるプログラムID・ジョブID検索要求用のクエリを受け取り、このクエリに含まれる指定された障害影響度(本実施形態では、一例として、障害影響度S,Aの2つを、大きな障害影響度として指定するものとする。)に対応するプログラムIDおよび/またはジョブIDを検索し、障害影響度S,AのプログラムIDおよび/またはジョブID、並びに、対応する障害管理番号、障害情報(現象および原因を含む。)、現象・原因の単語列またはこの単語列から切り出した単語Nグラム(本実施形態では、単語3グラム)の集合を、プログラムID・ジョブID検索要求用のクエリに対する検索結果(応答結果)としてプログラムID・ジョブID取得手段52に返す処理を実行する。
<障害予兆検知サーバ20/検索エンジン30/障害一覧記憶手段34の構成>
障害一覧記憶手段34は、図3に示すように、例えば、障害管理番号、タイトル、現象、原因、現象・原因の単語列またはこの単語列から1単語ずつずらしながら切り出した単語Nグラム(本実施形態では、単語3グラム)の集合、再発防止策、障害影響度、プログラムID、ジョブID等を関連付けて記憶するものである。また、図示は省略されているが、障害一覧記憶手段34には、障害情報として、顧客向けの記載とされた現象や原因も記憶されている。さらに、プログラムIDやジョブIDがないレコードも存在する。ここで、レコードは、必ずしもデータベースのテーブルを構成するレコードという意味ではなく、1つの障害管理番号に関連付けられて管理される情報の記録単位という意味のレコードである。
このうち、現象・原因(顧客向けの現象・原因も含む)の単語列またはこの単語列から1単語ずつずらしながら切り出した単語Nグラム(本実施形態では、単語3グラム)の集合は、障害情報単語列生成手段31により生成されたものであり、その他の情報は、障害情報管理システム80の原障害一覧記憶手段81に記憶された障害情報と同じであり、従って、共有ファイルサーバ70の障害一覧ファイル記憶手段72に記憶される障害一覧ファイルの内容と同じである。
<障害予兆検知サーバ20/検索エンジン30/単語累積出現回数記憶手段35の構成>
単語累積出現回数記憶手段35は、図11に示すように、障害一覧記憶手段34(図3参照)に記憶させる障害情報(本実施形態では、障害情報のうちの現象および原因)の中から障害情報単語列生成手段31により抽出した各単語(各名詞)と、それらの各単語の累積出現回数とを対応させて記憶するものである。
<障害予兆検知サーバ20/準備処理手段40/チェックリスト登録手段41の構成>
チェックリスト登録手段41は、共有ファイルサーバ70の加工後チェックリストファイル記憶手段71に加工後チェックリストファイルが格納されているか否かを監視し、格納されている場合には、その加工後チェックリストファイルをネットワーク1を介して取得し、取得した加工後チェックリストファイルの内容情報を、チェックリスト記憶手段61(図2参照)に記憶させる処理を実行するものである。
<障害予兆検知サーバ20/準備処理手段40/障害一覧登録手段42の構成>
障害一覧登録手段42は、共有ファイルサーバ70の障害一覧ファイル記憶手段72に障害一覧ファイルが格納されているか否かを監視し、格納されている場合には、その障害一覧ファイルをネットワーク1を介して取得し、取得した障害一覧ファイルの内容情報を、検索エンジン34の障害一覧記憶手段34(図3参照)に記憶させるとともに、障害情報(現象・原因)の単語列またはこの単語列から1単語ずつずらしながら切り出した単語Nグラム(単語3グラム)の生成処理を行わせるために、取得した障害一覧ファイルの内容情報を、障害情報単語列生成手段31に渡す処理を実行するものである。
<障害予兆検知サーバ20/準備処理手段40/関連単語群学習手段43の構成>
関連単語群学習手段43は、単語群(並び順を考慮したN個の単語の集合)どうしの間の関連性の学習処理を行い、得られた学習結果のデータを、学習結果記憶手段62に記憶させる処理を実行するものである。本実施形態では、単語3グラムのマッチング処理を行うので、並び順を考慮した3つの単語からなる単語群どうしの間の関連性の学習処理を実行する。
ここで、学習結果として得られるデータは、単語群の分散表現としての単語ベクトルを、重なりのないユニークな単語群の数(ボキャブラリ数)だけ集合させて構成された重み行列である。なお、単語の分散表現ではなく、単語群の分散表現であるため、単語群ベクトルと呼んでもよいものである。従って、単語群の分散表現としての単語ベクトル(単語群ベクトル)を得ることができれば、いずれのアルゴリズムによる機械学習を行ってもよく、例えば、ワード・ツー・ベック(word2vec)であるコンティニュアス・バッグ・オブ・ワード(CBOW)やスキップ・グラム(Skip−gram)、あるいは、グローヴ(GloVe)、リカレント・ニューラル・ネットワーク(RNN)の1種であるロング・ショート・ターム・メモリ(LSTM)によるエルモ(ELMo)等のアルゴリズムを採用することができる。
学習に使用する学習データは、次のようにして用意したものである。先ず、障害情報管理システム80の原障害一覧記憶手段81に記憶された複数(多数)の過去障害についての障害情報(本実施形態では、障害情報のうちの現象および原因であり、顧客向けに記載された現象および原因がある場合には、それらも含む。)を用いて、それぞれの障害情報(現象・原因)についての単語列を生成する。次に、生成した単語列から1単語ずつずらしながら切り出した単語群を、切り出した順番の通りに並べた単語群の集合を形成し、これを学習データとする。なお、検索エンジン30の障害一覧記憶手段34(図3参照)に記憶されている現象・原因(顧客向けを含む)の単語列またはこの単語列から1単語ずつずらしながら切り出した単語群の集合を、学習データとして用いてもよい。
従って、図15に示すように、単語ではなく、単語群(並び順を考慮した3つの単語の集合)を1つの要素とし、この単語群を、ニューラル・ネットワーク(NN)の入力層、出力層の各ノードに対応する要素として用いることにより、機械学習を行っている。このため、ウィンドウサイズである前後の要素数(例えば、前後10個の要素)も、連続する単語群の数(例えば、前後10個の単語群)となる。よって、単語群を構成するN個(本実施形態では、3つ)の単語について、それらの単語の並び順が考慮され、さらに、単語群の集合についても、それらの単語群の並び順を考慮した状態で、学習データとして用いられる。
<障害予兆検知サーバ20/障害予兆検知処理手段50/設計書文章抽出手段51の構成>
設計書文章抽出手段51は、障害予兆検知の対象となる設計書のデータから文章を抽出する処理を実行するものである。具体的には、本実施形態では、設計書文章抽出手段51は、共有ファイルサーバ70の設計書ファイル記憶手段73に設計書ファイルが格納されているか否かを監視し、格納されている場合には、その設計書ファイルをネットワーク1を介して取得し、取得した設計書ファイルの内容データから、文章データを抽出する処理を行い、抽出した文章データを格納した設計書文章ファイルを作成し、作成した設計書文章ファイルを、ネットワーク1を介して共有ファイルサーバ70へ送信し、設計書文章ファイル記憶手段74に配置する処理を実行する。
<障害予兆検知サーバ20/障害予兆検知処理手段50/プログラムID・ジョブID取得手段52の構成>
プログラムID・ジョブID取得手段52は、予め定められた大きな障害影響度(本実施形態では、一例として、障害影響度S,Aとする。)と関連付けられて障害一覧記憶手段34に記憶されているプログラムIDおよび/またはジョブIDを含む障害情報、並びに、対応する障害管理番号を取得してプログラムID・ジョブID記憶手段63に記憶させる処理を実行するものである。
具体的には、本実施形態では、プログラムID・ジョブID取得手段52は、検索エンジン30に向けて、プログラムID・ジョブID検索要求用のクエリ(障害影響度S,Aの指定を含む)を送出し、検索エンジン30から返ってくる検索結果(応答結果)として、障害影響度S,AのプログラムIDやジョブIDを含む障害情報および障害管理番号を受け取る処理を実行する。
なお、プログラムID・ジョブID取得手段52によりプログラムIDやジョブIDとともに取得する障害情報には、検知結果出力手段56による出力対象とされ得る情報(例えば、現象や原因等)が含まれていてもよく、あるいは、ここではプログラムIDやジョブIDとともに障害管理番号を取得するだけとし、検知結果出力手段56による出力処理の段階で、障害管理番号を用いて、障害一覧記憶手段34から出力対象とする情報(例えば、現象や原因等)を取得してもよい。
<障害予兆検知サーバ20/障害予兆検知処理手段50/頻出語取得手段53の構成>
頻出語取得手段53は、検索エンジン30の頻出語送信手段32に対し、単語累積出現回数記憶手段35(図11参照)に記憶された単語のうち、累積出現回数が閾値(例えば、100回等)を超えるか、または閾値以上となっている頻出語の取得要求(閾値の指定を含む)を送るとともに、検索エンジン30から送られてくる頻出語を受け取り、頻出語記憶手段64に記憶させる処理を実行するものである。
なお、頻出語取得手段53は、検索エンジン30の頻出語送信手段32から、単語累積出現回数記憶手段35(図11参照)に記憶された全単語についての累積出現回数を取得し、累積出現回数が閾値(例えば、100回等)を超えるか、または閾値以上となっている単語を、頻出語として決定し、頻出語記憶手段64に記憶させる処理を実行してもよい。
<障害予兆検知サーバ20/障害予兆検知処理手段50/設計書単語列生成手段54の構成>
設計書単語列生成手段54は、設計書文章抽出手段51により抽出した設計書文章(テキストデータ)を用いて、[A]形態素解析を行うことにより、名詞のみを抽出し、抽出した名詞のみの単語Nグラム用の設計書の単語列を生成するか、または、[B]この設計書の単語列から1単語(1名詞)ずつずらしながら切り出した設計書の単語Nグラムの集合を生成し、生成した[A]の場合の設計書の単語列または[B]の場合の設計書の単語Nグラムの集合を、設計書単語列記憶手段65に記憶させる処理を実行するものである。ここで、設計書についての単語NグラムのNは、障害情報(本実施形態では、現象および原因)についての単語NグラムのNと同数であり、本実施形態では、一例として、N=3である。
この際、上記の設計書についての[A]単語列の生成処理または[B]単語Nグラムの集合の生成処理は、図9に示した障害一覧の現象・原因(障害情報のうちの現象および原因のテキストデータ)の場合における[A]単語列の生成処理または[B]単語Nグラムの集合の生成処理と同様である。
具体的には、本実施形態では、設計書単語列生成手段54は、共有ファイルサーバ70の設計書文章ファイル記憶手段74に設計書文章ファイルが格納されているか否かを監視し、格納されている場合には、その設計書文章ファイルをネットワーク1を介して取得し、取得した設計書文章ファイルの内容データ(テキストデータ)を用いて、[A]の場合の設計書の単語列を生成し、または[B]の場合の設計書の単語Nグラムの集合を生成し、設計書単語列記憶手段65に記憶させる処理を実行する。
また、設計書単語列生成手段54は、設計書単語列記憶手段65に記憶させた、若しくは記憶させる設計書の単語Nグラムの集合の中で(または、設計書単語列記憶手段65に記憶させた、若しくは記憶させる設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラムの集合の中で)、同じ単語群が出現する頻度を示す単語群出現頻度TFおよび単語群の稀少度を示す単語群稀少度IDFを求め、これらのTF、IDFを、単語群と関連付けて単語群出現頻度記憶手段66に記憶させる処理も実行する。
<障害予兆検知サーバ20/障害予兆検知処理手段50/単語Nグラム単位検知処理手段55の構成>
単語Nグラム単位検知処理手段55は、プログラムID・ジョブID基準判断処理と、単語Nグラムマッチング要求処理と、頻出語スキップ処理とを実行するものである。
具体的には、単語Nグラム単位検知処理手段55は、プログラムID・ジョブID基準判断処理として、処理対象の設計書の単語Nグラムを単語Nグラムマッチング検索要求用のクエリに含ませて送出する前(単語Nグラムマッチング要求処理の実行前)に、図10に示すように、処理対象の設計書の単語Nグラムの中に、プログラムID・ジョブID取得手段52により取得されてプログラムID・ジョブID記憶手段63に記憶されたプログラムIDおよび/またはジョブIDが含まれているか否かを判断し、含まれている場合に、当該プログラムIDおよび/または当該ジョブIDに対応する障害管理番号を、出力対象の障害管理番号として採用し、出力対象記憶手段68に記憶させる処理を実行する。
この際、単語Nグラム単位検知処理手段55は、プログラムID・ジョブID記憶手段63に障害管理番号と関連付けてプログラムIDやジョブID以外の障害情報(例えば現象・原因等)が記憶されている場合には、障害管理番号とともに、それらの障害情報も出力対象記憶手段68に記憶させる。
また、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理として、検索エンジン30の検索手段33に対し、[A]設計書単語列記憶手段65に記憶された設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラム、または[B]設計書単語列記憶手段65に記憶された設計書の単語Nグラムの集合から取得した設計書の単語Nグラムの各々を、単語Nグラムマッチング検索要求用のクエリに含ませて送出するとともに、検索エンジン30から、このクエリに対する検索結果(応答結果)を受け取る処理を実行する。図13には、クエリに対する応答結果の具体例が示されているが、このような検索エンジン30からの出力内容は、クエリで指定することができる。図13の例の最下行に示されたスコアの出力も、クエリで指定している。
なお、[A]の処理と、[B]の処理との相違は、設計書単語列記憶手段65に記憶されているのが、[A]の場合には設計書の単語列であり、[B]の場合には設計書の単語Nグラムの集合であることから生じる相違である。すなわち、単語列からの単語Nグラムの切り出し処理を、単語Nグラム単位検知処理手段55により実行するか([A]の場合)、設計書単語列生成手段54により実行するか([B]の場合)の相違である。
さらに、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理として、学習結果記憶手段62に記憶された重み行列を構成する単語ベクトル(単語群ベクトル)を用いて、処理対象の1つの設計書の単語Nグラムから連想される1つまたは複数の関連単語群を求め、検索エンジン30の検索手段33に対し、求めた1つまたは複数の関連単語群を、処理対象の設計書の単語Nグラムとともに、単語Nグラムマッチング検索要求用のクエリに含ませて送出するとともに、検索エンジン30から、このクエリに対する検索結果を受け取る処理を実行する。この関連単語群を求める処理は、例えばword2vec等を利用して実行することができる。設定ファイル記憶手段63(図12参照)には、使用する関連単語群の最大数(例えば4つとする。)が記憶されているので、この最大数を、例えばword2vec等に入力すると、処理対象の設計書の単語Nグラムとの類似度(関連性)が高い4つの関連単語群が得られる。
また、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理として、設計書の単語Nグラムについてのフレーズあいまい検索要求をクエリに含ませてもよい。このフレーズあいまい検索については、検索エンジン30の検索手段33による単語Nグラムマッチング検索処理の説明で詳述しているので、ここでは詳しい説明を省略する。
そして、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理として、単語Nグラムマッチング検索要求用のクエリを作成する際には、次のような重みの指定処理を行う。
先ず、設定ファイル記憶手段67に記憶されている障害影響度毎の重みWS,WA,WB,WC,WD、並びに、設計書の単語Nグラムについての重みWF算出用の基準重み、関連単語群についての重みWR算出用の基準重み、およびフレーズあいまい検索についての重みWV算出用の基準重みを取得する。なお、フレーズあいまい検索を行わない場合には、その重みWVは使用しなくてよく、また、関連単語群によるマッチングを行わない場合には、その重みWRは使用しなくてよい。
次に、処理対象の設計書の単語Nグラムと同一の単語群についてのTFおよびIDFを単語群出現頻度記憶手段66から取得する。続いて、処理対象の設計書の単語Nグラムについての重みWF=基準重み×TF×IDFを算出決定し、関連単語群についての重みWR=基準重み×TF×IDFを算出決定し、フレーズあいまい検索についての重みWV=基準重み×TF×IDFを算出決定する。図12の例では、処理対象の設計書の単語3グラム=「条件 付 注文」であり、クエリには、この「条件 付 注文」に対し、「^2」(2倍を示す)という基準重みが付されているが、TF、IDFを考慮すると、「2×TF×IDF」が重みWFとなる。また、図12の例では、関連単語群1=「株式 買 付」であり、クエリには、この「株式 買 付」に対し、「^1」(1倍を示す)という基準重みが付されているが、TF、IDFを考慮すると、「1×TF×IDF」が重みWRとなる。
それから、単語Nグラム単位検知処理手段55は、処理対象の設計書の単語Nグラム、1つまたは複数の関連単語群、障害影響度毎の重みWS,WA,WB,WC,WD、並びに、処理対象の設計書の単語Nグラムについての重みWF、関連単語群についての重みWR、およびフレーズあいまい検索についての重みWVを用いて、図12に示すように、単語Nグラムマッチング検索要求用のクエリを作成する。
また、単語Nグラム単位検知処理手段55は、処理対象の設計書の単語Nグラムについて、同じ設計書の単語Nグラムを含む単語Nグラムマッチング検索要求用のクエリを既に送出しているか否かを判断し、既に送出している場合には、当該クエリを送出しない処理を実行する。この処理は、TFおよびIDFを用いて重みを算出決定していることによるものである。
さらに、単語Nグラム単位検知処理手段55は、図14に示すように、検索エンジン30から、単語Nグラムマッチング検索要求用のクエリに対する検索結果(応答結果)を受け取り、受け取った情報を出力対象記憶手段68に記憶させる場合には、次のようなスコア(合致度)の処理を実行する。
図14において、単語Nグラム単位検知処理手段55は、検索エンジン30から、クエリに対する検索結果(応答結果)として、障害管理番号、検索手段33により算出されたスコア、障害管理番号に紐付けられた障害情報(現象・原因等)を受け取った際に、受け取った障害管理番号と同じ障害管理番号が、出力対象記憶手段68に既に記憶されている場合には、当該障害管理番号とともに受け取ったスコアを、当該障害管理番号と関連付けられて出力対象記憶手段68に記憶されているスコアに加算し、一方、受け取った障害管理番号と同じ障害管理番号が、出力対象記憶手段68に未だ記憶されていない場合には、当該障害管理番号とともに受け取ったスコアを、そのまま出力対象記憶手段68に記憶させる。
図14の例では、検索エンジン30から、先ず、第1番目の単語3グラムによる検索結果(応答結果)として、障害管理番号=AC24651、スコア=200点と、障害管理番号=AC23381、スコア=250点とを受け取ったとすると、これらの障害管理番号は、出力対象記憶手段68に未だ記憶されていないので、これらのスコアをそのまま出力対象記憶手段68に記憶させる。
次に、第2番目の単語3グラムによる検索結果(応答結果)として、障害管理番号=AC11987、スコア=100点と、障害管理番号=AC34765、スコア=300点と、障害管理番号=AC64328、スコア=700点とを受け取ったとすると、これらの障害管理番号も、出力対象記憶手段68に未だ記憶されていないので、これらのスコアをそのまま出力対象記憶手段68に記憶させる。
続いて、第3番目の単語3グラムによる検索結果(応答結果)として、障害管理番号=AC23381、スコア=500点と、障害管理番号=AC38577、スコア=400点とを受け取ったとすると、前者の障害管理番号=AC23381は、出力対象記憶手段68に既に記憶されているので、受け取ったスコア=500点を、既に記憶されている250点に加算することにより、障害管理番号=AC23381のスコアを、250点+500点=750点とする。一方、後者の障害管理番号=AC38577は、出力対象記憶手段68に未だ記憶されていないので、スコア=400点をそのまま出力対象記憶手段68に記憶させる。
その後、第4番目の単語3グラムによる検索結果(応答結果)として、障害管理番号=AC24651、スコア=600点と、障害管理番号=AC64328、スコア=250点とを受け取ったとすると、これらは出力対象記憶手段68に既に記憶されているので、障害管理番号=AC24651については、受け取ったスコア=600点を、既に記憶されている200点に加算することにより、200点+600点=800点とする。また、障害管理番号=AC64328については、受け取ったスコア=250点を、既に記憶されている700点に加算することにより、700点+250点=950点とする。最後に、スコアでソートし、スコアが大きい順に並べる。
また、単語Nグラム単位検知処理手段55は、頻出語スキップ処理として、単語Nグラムマッチング要求処理を実行する前に、単語Nグラムマッチング検索要求用のクエリに含ませて送出する対象となっている処理対象の設計書の単語Nグラムを構成するN個(本実施形態では、3個)の単語の中に、頻出語取得手段53により取得して頻出語記憶手段64に記憶されている頻出語が含まれているか否かを判断し、1つでも含まれている場合には、単語Nグラムマッチング要求処理を行わない処理を実行する。
具体的には、図11に示すように、閾値回数=100回の指定で取得した頻出語が、単語A,E,Hであったとし、処理対象の設計書の単語Nグラムは、第1番目の単語3グラム=「L M Q」、第2番目の単語3グラム=「M Q A」、…という順番で変化していくものとする。
第1番目の単語3グラム=「L M Q」には、単語A,E,Hのいずれも含まれていないので、スキップせずに、単語Nグラムマッチング要求処理(単語Nグラムマッチング検索要求用のクエリを検索エンジン30に送り、検索手段33による単語Nグラムマッチング検索処理を実行させるための処理)を行う。第2番目の単語3グラム=「M Q A」には、単語A,E,HのうちのAが含まれているので、単語Nグラムマッチング要求処理を行わない、すなわち検索をスキップする。第3番目以降の単語3グラムについても同様であり、処理対象の単語3グラムを構成する3つの単語の中に1つでも単語A,E,Hのいずれかが含まれていれば、単語Nグラムマッチング要求処理を行わない、すなわち検索をスキップする。
<障害予兆検知サーバ20/障害予兆検知処理手段50/検知結果出力手段56の構成>
検知結果出力手段56は、単語Nグラム単位検知処理手段55による単語Nグラムマッチング要求処理で得られて出力対象記憶手段68に記憶されている障害管理番号と、プログラムID・ジョブID基準判断処理で得られて出力対象記憶手段68に記憶されている障害管理番号とを用いて、チェックリスト記憶手段61(図2参照)に記憶されているチェック情報(チェック項目等を含む)を取得し、取得したチェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報(現象、原因等を含む)を出力する処理を実行するものである。
この際、検知結果出力手段56は、チェック情報に加えて障害管理番号に対応する障害情報(現象、原因等を含む)を出力する場合には、障害情報(現象、原因等を含む)が、障害管理番号と関連付けられて出力対象記憶手段68に既に記憶されているときには、その障害情報を出力し、出力対象記憶手段68に記憶されていないとき(障害管理番号は記憶されているが、現象、原因等は記憶されていないとき)には、障害管理番号を用いて、検索エンジン30の検索手段33に対し、障害一覧記憶手段34(図3参照)に記憶されている障害情報(現象、原因等を含む)の取得要求を送り、出力対象とする障害情報(現象、原因等を含む)を取得すればよい。
また、検知結果出力手段56は、単語Nグラム単位検知処理手段55による単語Nグラムマッチング要求処理で得られた障害管理番号、並びに、対応する障害情報(現象、原因等を含む)やチェック情報(チェック項目を含む)を出力する際には、スコアの合計値(図14参照)が、例えば、上位10位以内、上位15位以内等のように予め定められた数の上位の過去障害についての障害管理番号等を出力する。従って、これらを出力する際には、チェックリスト記憶手段61(図2参照)からのチェック情報(チェック項目等を含む)の取得は、上位10位以内、上位15位以内等の過去障害についてだけ行えばよい。
さらに、図4に示すように、検知結果出力手段56は、単語Nグラム単位検知処理手段55による単語Nグラムマッチング要求処理で得られた障害管理番号、スコア、並びに、対応する障害情報およびチェック情報を出力するマッチング結果出力部と、プログラムID・ジョブID基準判断処理で得られた障害管理番号、並びに、対応する障害情報およびチェック情報を出力するプログラムID・ジョブID基準判断結果出力部とを、分けて出力(表示・印刷等)するようになっている。前者のマッチング結果出力部は、スコアがあるので、スコアの高い順に並べて出力され、後者のプログラムID・ジョブID基準判断結果出力部は、スコアがないので、便宜上、スコアはゼロと出力されている。
図4の例では、チェックリスト記憶手段61(図2参照)から取得したチェック情報として、過去障害についての障害管理番号と関連付けられた分類1、分類2、チェック項目、チェック項目についての説明・チェック方法等が出力され、検索エンジン30の障害一覧記憶手段34(図3参照)から取得した障害情報として、過去障害についての障害管理番号と関連付けられた障害影響度、タイトル、現象(顧客向けに記載された現象も含む)、原因(顧客向けに記載された原因を含む)、再発防止策等が出力され、さらに、検索エンジン30から得られたスコアが出力されている。
なお、図4は、出力の一例であり、出力の態様はこれに限定されるものではなく、例えば、上部のマッチング結果出力部と、下部のプログラムID・ジョブID基準判断結果出力部とは、出力位置を上下反転させてもよい。また、出力するチェック情報は、例えばチェック項目だけとしてもよく、あるいは、障害情報(障害影響度、タイトル、現象、原因、再発防止策等)を出力せずに、チェック情報を出力するだけとしてもよい。
<障害予兆検知サーバ20/各記憶手段61〜68の構成>
チェックリスト記憶手段61は、図2に示すように、過去障害についての障害管理番号、分類1、分類2、チェック項目、チェック項目についての説明・チェック方法等を関連付けて記憶するものである。
学習結果記憶手段62は、学習結果のデータとして、単語群の分散表現としての複数(多数)の単語ベクトル(単語群ベクトル)により構成された重み行列(モデル)を記憶するものである。
プログラムID・ジョブID記憶手段63は、プログラムID・ジョブID取得手段52により取得した大きな障害影響度(本実施形態では、一例として障害影響度S,A)、プログラムIDおよび/またはジョブID、障害管理番号を関連付けて記憶するものである。なお、プログラムIDやジョブIDに加え、検知結果出力手段56による出力対象となり得る障害情報(例えば、現象や原因等)が記憶されていてもよい。
頻出語記憶手段64は、検索エンジン30から取得した頻出語(累積出現回数が閾値回数(例えば100回)以上または閾値回数を超える単語)を記憶するものである。
設計書単語列記憶手段65は、設計書単語列生成手段54により作成された[A]単語Nグラム(本実施形態では、一例として、N=3)用の設計書の単語列、または、[B]この設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラムの集合を記憶するものである。
単語群出現頻度記憶手段66は、設計書単語列生成手段54により求めた単語群出現頻度TFおよび単語群稀少度IDFを、単語群と関連付けて記憶するものである。
設定ファイル記憶手段67は、障害影響度毎の重みWS,WA,WB,WC,WD、並びに、設計書の単語Nグラムについての重みWF算出用の基準重み、関連単語群についての重みWR算出用の基準重み、およびフレーズあいまい検索についての重みWV算出用の基準重みを格納した設定ファイルを記憶するものである。さらに、設定ファイルには、関連単語群の使用・不使用の選択情報、フレーズあいまい検索の使用・不使用の選択情報、使用する関連単語群の最大数等を格納しておいてもよい。
出力対象記憶手段68は、単語Nグラム単位検知処理手段55による単語Nグラムマッチング要求処理で得られた障害管理番号、スコア(合計スコア)、またはこれらに加えて対応する障害情報(現象、原因、再発防止策等)を記憶するとともに、単語Nグラム単位検知処理手段55によるプログラムID・ジョブID基準判断処理で得られた障害管理番号、またはこれに加えて対応する障害情報(現象、原因、再発防止策等)を記憶するものである。
<障害情報管理システム80/原障害一覧記憶手段81の構成>
原障害一覧記憶手段81は、図3に示すように、例えば、過去障害についての障害管理番号、タイトル、現象(顧客向けに記載された現象を含む)、原因(顧客向けに記載された原因を含む)、再発防止策、障害影響度、プログラムID、ジョブID等を関連付けて記憶するものである。この原障害一覧記憶手段81には、検索エンジン30の障害一覧記憶手段34に記憶させる障害情報の源泉データが記憶され、プログラムIDやジョブIDが関連付けられていない障害管理番号のレコードもある。なお、ここでのレコードは、必ずしもデータベースのテーブルを構成するレコードという意味に限らず、1つの障害管理番号に関連付けられたデータの集合(1組のデータ)という意味で用いている。以下においても同様である。
<チェックリスト管理システム90/原チェックリスト記憶手段91の構成>
原チェックリスト記憶手段91は、図2に示すように、例えば、番号(No.)、分類1、分類2、チェック項目、チェック項目についての説明・チェック方法、障害事例・具体例等を関連付けて記憶するものである。この原チェックリスト記憶手段91には、障害予兆検知サーバ20のチェックリスト記憶手段61に記憶させるチェック情報の源泉データが記憶され、「障害事例・具体例」カラムに障害管理番号が含まれているレコードと、「障害事例・具体例」カラムに障害管理番号が含まれていないレコードとがある。
「障害事例・具体例」カラムに障害管理番号(図2の例では、AC22731)が含まれているレコードについては、「チェック項目」および「説明・チェック方法」等の各カラムに、当該障害管理番号(AC22731)の過去障害に紐付くチェック情報が整理されている。また、「チェック項目」および「説明・チェック方法」等の各カラムには、開発ルールや、ノウハウ集に掲載された情報が含まれている。
なお、原チェックリスト記憶手段91から出力されるチェックリストファイル(概要設計チェックリスト、詳細設計チェックリスト、開発チェックリスト等の各ファイル)には、障害管理番号が含まれていないレコードがあるが、管理者端末100で加工された加工後チェックリストファイルは、障害管理番号を含むレコードだけで構成されている。
<管理者端末100/障害関連チェックリスト抽出手段101の構成>
障害関連チェックリスト抽出手段101は、管理者端末100において、チェックリスト管理システム90の原チェックリスト記憶手段91から取得したチェックリストファイル(表計算ソフトウェアのファイル)について、障害事例・具体例カラムに過去障害についての障害管理番号が含まれているレコードだけを抽出し、障害管理番号とこれに対応するチェック情報(チェック項目、説明・チェック方法等)を含むレコードからなる加工後チェックリストファイル(例えばCSVファイル)を作成して出力する処理を実行するものである。
<障害予兆検知システム10による処理の流れ>
このような本実施形態においては、以下のようにして障害予兆検知システム10により、システム(障害予兆検知システム10とは別のシステム)の設計開発に係る設計書についての障害予兆検知処理が行われる。先ず、障害予兆検知対象の設計書についての処理を行う前に、事前の準備処理として、図5に示すチェックリストの登録処理、および図6に示す障害一覧の登録処理を行う。
<チェックリストの登録処理の流れ:図5参照>
図5において、システム管理者が管理者端末100を操作し、ネットワーク1を介してチェックリスト管理システム90にアクセスし、概要設計チェックリスト、詳細設計チェックリスト、開発チェックリスト等の各種のチェックリストファイルの取得要求を行い、チェックリスト管理システム90からネットワーク1を介して送信されてくるチェックリストファイルを受信する(ステップS1)。チェックリスト管理システム90では、管理者端末100からの取得要求に応じ、原チェックリスト記憶手段91(図2参照)から各種のチェックリストファイルを出力し、ネットワーク1を介して管理者端末100へ送信する(ステップS2)。
続いて、管理者端末100において、障害関連チェックリスト抽出手段101により、原チェックリスト記憶手段91(図2参照)から出力された各種のチェックリストファイルを用いて、過去障害についての障害管理番号が含まれているレコードを抽出し、障害管理番号とこれに対応するチェック情報(チェック項目、説明・チェック方法等)を含むレコードからなる加工後チェックリストファイル(例えばCSVファイル)を作成して出力する(ステップS3)。
それから、作成した加工後チェックリストファイルを、管理者端末100からネットワーク1を介して共有ファイルサーバ70へ送信し、加工後チェックリストファイル記憶手段71(ここでは、専用のディレクトリ)に配置する(ステップS4)。共有ファイルサーバ70では、管理者端末100からネットワーク1を介して送信されてくる加工後チェックリストファイルを受信し、加工後チェックリストファイル記憶手段71に格納する(ステップS5)。
一方、障害予兆検知サーバ20では、チェックリスト登録手段41により、加工後チェックリストファイル記憶手段71に加工後チェックリストファイルが格納されているか否かを監視する(ステップS6)。共有ファイルサーバ70では、この監視による問合せを受け、加工後チェックリストファイル記憶手段71に加工後チェックリストファイルが格納されている場合には、その加工後チェックリストファイルを、ネットワーク1を介して障害予兆検知サーバ20へ送信する(ステップS7)。
障害予兆検知サーバ20では、チェックリスト登録手段41により、共有ファイルサーバ70からネットワーク1を介して送信されてくる加工後チェックリストファイルを受信し(ステップS8)、そのファイルの内容データを、チェックリスト記憶手段61(図2参照)に登録する(ステップS9)。
<障害一覧の登録処理の流れ:図6参照>
図6において、システム管理者が管理者端末100を操作し、ネットワーク1を介して障害情報管理システム80にアクセスし、障害一覧ファイルの取得要求を行い、障害情報管理システム80からネットワーク1を介して送信されてくる障害一覧ファイルを受信する(ステップS21)。障害情報管理システム80では、管理者端末100からの取得要求に応じ、原障害一覧記憶手段81(図3参照)から障害一覧ファイルを出力し、ネットワーク1を介して管理者端末100へ送信する(ステップS22)。
続いて、管理者端末100において、原障害一覧記憶手段81(図3参照)から出力された障害一覧ファイル(例えばCSVファイル)を、管理者端末100からネットワーク1を介して共有ファイルサーバ70へ送信し、障害一覧ファイル記憶手段72(ここでは、専用のディレクトリ)に配置する(ステップS23)。共有ファイルサーバ70では、管理者端末100からネットワーク1を介して送信されてくる障害一覧ファイルを受信し、障害一覧ファイル記憶手段72に格納する(ステップS24)。
一方、障害予兆検知サーバ20では、障害一覧登録手段42により、障害一覧ファイル記憶手段72に障害一覧ファイルが格納されているか否かを監視する(ステップS25)。共有ファイルサーバ70では、この監視による問合せを受け、障害一覧ファイル記憶手段72に障害一覧ファイルが格納されている場合には、その障害一覧ファイルを、ネットワーク1を介して障害予兆検知サーバ20へ送信する(ステップS26)。
障害予兆検知サーバ20では、障害一覧登録手段42により、共有ファイルサーバ70からネットワーク1を介して送信されてくる障害一覧ファイルを受信し、そのファイルの内容データを、検索エンジン30の障害一覧記憶手段34(図3参照)に登録する(ステップS27)。
また、検索エンジン30では、障害情報単語列生成手段31により、障害一覧記憶手段34(図3参照)に記憶されている障害情報のうちの現象(顧客向けに記載された現象を含む)および原因(顧客向けに記載された原因を含む)を用いるか、または、障害一覧登録手段42から受け取った障害一覧ファイルに含まれている障害情報のうちの現象(顧客向けに記載された現象を含む)および原因(顧客向けに記載された原因を含む)を用いて、[A]単語Nグラム(本実施形態では、単語3グラム)用の障害情報の単語列を生成するか、または、[B]この障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム(単語3グラム)の集合を生成し、生成した[A]の場合の「障害情報の単語列」または[B]の場合の「障害情報の単語Nグラムの集合」を、障害一覧記憶手段34(図3参照)の「現象・原因の単語列」カラムに記憶させる(ステップS28)。この処理については、障害情報単語列生成手段31の構成の説明で、図9を用いて既に詳述しているので、ここでは詳しい説明を省略する。
さらに、障害情報単語列生成手段31により、障害一覧記憶手段34(図3参照)に記憶させる障害情報(現象および原因)の中から抽出した各単語(各名詞)の累積出現回数を求め、求めた各単語の累積出現回数を、単語累積出現回数記憶手段35(図11参照)に記憶させる(ステップS29)。
その後、関連単語群学習手段43により、図15に示すように、障害一覧記憶手段34(図3参照)に記憶させた障害情報のうちの現象(顧客向けに記載された現象を含む)および原因(顧客向けに記載された原因を含む)の全データを用いて、単語群(並び順を考慮したN個(本実施形態では3個)の単語の集合)どうしの間の関連性の学習処理を行い、得られた学習結果のデータを、学習結果記憶手段62に記憶させる(ステップS30)。この学習処理については、関連単語群学習手段43の構成の説明で既に詳述しているので、ここでは詳しい説明を省略する。以上により、事前の準備処理を終了する。
<設計書についての障害予兆検知処理の流れ:図7、図8参照>
図7において、利用者は、利用者端末110を操作し、システムの設計開発に係る設計書ファイル(ワード、エクセル、テキスト、ビジオ等の各種のファイル)を、ネットワーク1を介して共有ファイルサーバ70へ送信し、設計書ファイル記憶手段73(ここでは、専用のディレクトリ)に配置する(ステップS41)。共有ファイルサーバ70では、利用者端末110からネットワーク1を介して送信されてくる設計書ファイルを受信し、設計書ファイル記憶手段73に格納する(ステップS42)。
一方、障害予兆検知サーバ20では、設計書文章抽出51により、設計書ファイル記憶手段73に設計書ファイルが格納されているか否かを監視する(ステップS43)。共有ファイルサーバ70では、この監視による問合せを受け、設計書ファイル記憶手段73に設計書ファイルが格納されている場合には、その設計書ファイルを、ネットワーク1を介して障害予兆検知サーバ20へ送信する(ステップS44)。
それから、障害予兆検知サーバ20では、設計書文章抽出51により、共有ファイルサーバ70からネットワーク1を介して送信されてくる設計書ファイルを受信し、その設計書ファイルの内容データから、文章データを抽出する処理を行い、抽出した文章データを格納した設計書文章ファイルを作成し(ステップS45)、作成した設計書文章ファイルを、ネットワーク1を介して共有ファイルサーバ70へ送信し、設計書文章ファイル記憶手段74に配置する(ステップS46)。共有ファイルサーバ70では、障害予兆検知サーバ20からネットワーク1を介して送信されてくる設計書文章ファイルを受信し、設計書文章ファイル記憶手段74に格納する(ステップS47)。
一方、障害予兆検知サーバ20では、プログラムID・ジョブID取得手段52により、設計書文章ファイル記憶手段74に設計書文章ファイルが格納されているか否かを監視する(ステップS48)。共有ファイルサーバ70では、この監視による問合せを受け、設計書文章ファイル記憶手段74に設計書文章ファイルが格納されている場合には、その設計書文章ファイルを、ネットワーク1を介して障害予兆検知サーバ20へ送信する(ステップS49)。なお、設計書文章ファイル記憶手段74に設計書文章ファイルが格納されているか否かの監視処理は、プログラムID・ジョブID取得手段52によるプログラムIDやジョブIDの取得処理の内容とは関係ないが、プログラムIDやジョブIDの取得処理(後述するステップS51の処理)の開始タイミングを定めるという意味で、説明の便宜上、プログラムID・ジョブID取得手段52が行うことにしている。従って、設計書文章ファイルの取得は、設計書単語列生成手段54による処理(後述するステップS55の処理)を行う前に行われていればよい。
続いて、障害予兆検知サーバ20では、プログラムID・ジョブID取得手段52により、共有ファイルサーバ70から送信されてくる設計書文章ファイルを受信し(ステップS50)、その後、検索エンジン30に向けて、プログラムID・ジョブID検索要求用のクエリ(障害影響度S,Aの指定を含む)を送出し、検索エンジン30から返ってくる検索結果(応答結果)として、障害影響度S,AのプログラムIDやジョブIDを含む障害情報および障害管理番号を受け取り、プログラムID・ジョブID記憶手段63に記憶させる(ステップS51)。
検索エンジン30では、プログラムID・ジョブID取得手段52からのプログラムID・ジョブID検索要求用のクエリ(障害影響度S,Aの指定を含む)を受け取り、障害影響度S,Aに関連付けられて障害一覧記憶手段34(図3参照)に記憶されているプログラムIDやジョブID、その他の障害情報(現象や原因等)、および障害管理番号を、プログラムID・ジョブID取得手段52に返す(ステップS52)。
それから、障害予兆検知サーバ20では、頻出語取得手段53により、検索エンジン30の頻出語送信手段32に対し、閾値(例えば、100回等)の指定を含む頻出語の取得要求を送るとともに、検索エンジン30から送信(返信)さてれてくる頻出語を受け取り、頻出語記憶手段64に記憶させる(ステップS53)。検索エンジン30では、頻出語送信手段32により、頻出語取得手段53からの取得要求を受信すると、単語累積出現回数記憶手段35(図11参照)に記憶された単語のうち、累積出現回数が閾値(例えば、100回等)を超えるか、または閾値以上となっている頻出語を取得し、頻出語取得手段53に送信する(ステップS54)。
なお、頻出語取得手段53により、検索エンジン30の頻出語送信手段32から、単語累積出現回数記憶手段35(図11参照)に記憶された全単語についての累積出現回数を取得し、累積出現回数が閾値(例えば、100回等)を超えるか、または閾値以上となっている単語を、頻出語として決定し、頻出語記憶手段64に記憶させてもよい。
その後、設計書単語列生成手段54により、共有ファイルサーバ70の設計書文章ファイル記憶手段74に設計書文章ファイルが格納されているか否かを監視し、格納されている場合には、その設計書文章ファイルをネットワーク1を介して取得し、取得した設計書文章ファイルの内容データを用いて、[A]設計書の単語列を生成し、または[B]この単語列から1単語ずつずらしながら切り出した設計書の単語Nグラムの集合を生成し、設計書単語列記憶手段65に記憶させる(ステップS55)。この処理については、設計書単語列生成手段54の構成の説明で、既に詳述しているので、ここでは詳しい説明を省略する。
さらに、設計書単語列生成手段54により、設計書単語列記憶手段65に記憶させた、若しくは記憶させる設計書の単語Nグラムの集合の中で(または、設計書単語列記憶手段65に記憶させた、若しくは記憶させる設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラムの集合の中で)、同じ単語群が出現する頻度を示す単語群出現頻度TFおよび単語群の稀少度を示す単語群稀少度IDFを求め、これらのTF、IDFを、単語群と関連付けて単語群出現頻度記憶手段66に記憶させる(ステップS56)。
その後、単語Nグラム単位検知処理手段55による単語Nグラム(ここでは、単語3グラム)を単位とするループ処理(後述するステップS57〜S63の処理)に移行する。
図8において、先ず、単語Nグラム単位検知処理手段55により、プログラムID・ジョブID基準判断処理を実行する。すなわち、図10に示すように、処理対象の設計書の単語Nグラム(ループ処理を行うので、処理対象の設計書の単語Nグラムは、入れ替わっていくため、入れ替わっていくうちの1つの処理対象の設計書の単語Nグラムという意味である。)の中に、プログラムID・ジョブID取得手段52により取得されてプログラムID・ジョブID記憶手段63に記憶されているプログラムIDおよび/またはジョブID(本実施形態では、一例として障害影響度S,AのプログラムIDやジョブID)が含まれているか否かを判断し、含まれている場合に、当該プログラムIDおよび/または当該ジョブIDに対応する障害管理番号を、出力対象の障害管理番号として採用し、その障害管理番号を出力対象記憶手段68に記憶させるか、またはその障害管理番号に加えてその障害管理番号に関連付けられた障害情報(現象、原因等)を出力対象記憶手段68に記憶させる(ステップS57)。なお、このプログラムID・ジョブID基準判断処理では、単語Nグラムマッチング要求処理の場合とは異なり、スコアはないので、便宜上、スコアはゼロとするか、NULLまたはNULL相当とする。
次に、単語Nグラム単位検知処理手段55により、頻出語スキップ処理を実行する。すなわち、単語Nグラムマッチング要求処理を実行する前に、単語Nグラムマッチング検索要求用のクエリに含ませて送出する対象となっている処理対象の設計書の単語Nグラムを構成するN個(本実施形態では、3個)の単語の中に、頻出語取得手段53により取得して頻出語記憶手段64に記憶されている頻出語が含まれているか否かを判断し(ステップS58)、1つでも含まれている場合には、単語Nグラムマッチング要求処理を行わずに(検索をスキップし)、次の処理対象の設計書の単語Nグラムへ進む(後述するステップS63の処理へ移行する)。この頻出語スキップ処理については、単語Nグラム単位検知処理手段55の構成の説明で、図11を用いて既に詳述しているので、ここでは詳しい説明を省略する。
一方、上記のステップS58で、頻出語が含まれていないと判断した場合には、次のような単語Nグラムマッチング要求処理(ステップS59)に移行する。この単語Nグラムマッチング要求処理では、ループ処理で入れ替わっていく処理対象の設計書の単語Nグラムについて、同じ単語Nグラムが2度目以降の処理対象となった場合には、その2度目以降の単語Nグラムについては、単語Nグラムマッチング要求処理を行わない。送出するクエリにおいてTF、IDFを用いた重み付けを行っていることによる。
先ず、単語Nグラム単位検知処理手段55により、設定ファイル記憶手段67に記憶されている障害影響度毎の重みWS,WA,WB,WC,WD、並びに、設計書の単語Nグラムについての重みWF算出用の基準重み、関連単語群についての重みWR算出用の基準重み、およびフレーズあいまい検索についての重みWV算出用の基準重みを取得する(ステップS59)。なお、フレーズあいまい検索を行わない場合には、その重みWVは使用しなくてよく、また、関連単語群によるマッチングを行わない場合には、その重みWRは使用しなくてよい。
次に、単語Nグラム単位検知処理手段55により、処理対象の設計書の単語Nグラムと同一の単語群についてのTFおよびIDFを単語群出現頻度記憶手段66から取得する。続いて、処理対象の設計書の単語Nグラムについての重みWF=基準重み×TF×IDFを算出決定し、関連単語群についての重みWR=基準重み×TF×IDFを算出決定し、フレーズあいまい検索についての重みWV=基準重み×TF×IDFを算出決定する(ステップS59)。
それから、単語Nグラム単位検知処理手段55により、学習結果記憶手段62に記憶されたモデル(単語ベクトル(単語群ベクトル)による重み行例)を用いて、処理対象の設計書の単語Nグラム(ここでは、単語3グラム)に対する1つまたは複数の関連単語群(ここでは、3つの単語を連結した単語群)を求める(ステップS59)。
そして、単語Nグラム単位検知処理手段55により、処理対象の設計書の単語Nグラム、1つまたは複数の関連単語群、障害影響度毎の重みWS,WA,WB,WC,WD、並びに、処理対象の設計書の単語Nグラムについての重みWF、関連単語群についての重みWR、およびフレーズあいまい検索についての重みWVを用いて、図12に示すように、単語Nグラムマッチング検索要求用のクエリを作成し、作成したクエリを、検索エンジン30の検索手段33に向けて送出する(ステップS59)。
検索エンジン30では、検索手段33により、単語Nグラム単位検知処理手段55からのクエリを受け取り、このクエリに基づき、障害一覧記憶手段34(図3参照)に記憶されたデータを用いて、単語Nグラムマッチング検索処理を実行する(ステップS60)。すなわち、クエリに含まれる設計書の単語Nグラムや関連単語群と、障害情報(現象および原因)の単語Nグラムとのマッチング検索や、フレーズあいまい検索を行い、スコア(合致度)の算出処理を実行する。この単語Nグラムマッチング検索処理については、検索手段33の構成の説明で既に詳述しているので、ここでは詳しい説明を省略する。なお、フレーズあいまい検索は、省略してもよく、関連単語群とのマッチング検索も必須ということではなく、これらの使用・不使用は、選択することができる。
それから、検索手段33により、クエリに対する検索結果(応答結果)として、クエリに基づく検索条件に合致したレコードの障害管理番号、算出したスコア、またはこれらに加えて障害管理番号に対応する障害情報(現象や原因等)を、単語Nグラム単位検知処理手段55に送信(返信)する(ステップS61)。なお、障害一覧記憶手段34(図3参照)は、データベースに限らず、ファイルによるデータ保存形式でもよいので、ここでのレコードは、必ずしもデータベースのテーブルを構成するレコードではなく、1つの障害管理番号を付されて管理されている、ある過去障害に関するデータの集合という意味である。
続いて、単語Nグラム単位検知処理手段55により、検索エンジン30の検索手段33から返信されてきた検索結果(障害管理番号、スコア、または、これらに加えて現象や原因等の障害情報)を受け取り、受け取った検索結果を、出力対象記憶手段68に記憶させる(ステップS62)。この際、出力対象記憶手段68に既に同じ障害管理番号およびそれに対応するスコアが記憶されている場合には、スコアを加算する。このスコアの処理については、図14を用いて単語Nグラム単位検知処理手段55の構成の説明で既に詳述しているので、ここでは詳しい説明は省略する。
そして、設計書単語列記憶手段65に記憶された[A]単語Nグラム(本実施形態では、単語3グラム)用の設計書の単語列から切り出す単語Nグラムが、まだ在るか否か、または、設計書単語列記憶手段65に記憶された[B]設計書の単語Nグラムの集合から取得する単語Nグラムが、まだ在るか否かを判断し(ステップS63)、まだ在る場合には、次の単語Nグラムの処理に移行するために、ステップS57の処理に戻る。一方、もう無い場合には、単語Nグラム単位検知処理手段55によるループ処理を終了する。
その後、検知結果出力手段56により、単語Nグラム単位検知処理手段55による前述したステップS59の単語Nグラムマッチング要求処理で得られてステップS62で出力対象記憶手段68に記憶された障害管理番号等を、合計スコアでソートし、それらの障害管理番号等の中から、スコアが上位(例えば、上位10位以内、上位15位以内等)の過去障害を選択する(ステップS64)。
続いて、検知結果出力手段56により、上記のステップS64で選択したスコアが上位の過去障害についての障害管理番号と、前述したステップS57のプログラムID・ジョブID基準判断処理で得られて出力対象記憶手段68に記憶されている障害影響度S,AのプログラムIDやジョブIDに係る障害管理番号とを用いて、チェックリスト記憶手段61(図2参照)に記憶されているチェック情報(チェック項目等を含む)を取得し、取得したチェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報(現象、原因等を含む)を出力する(ステップS65)。この障害予兆検知結果の表示等の出力処理については、図4を用いて検知結果出力手段56の構成の説明で既に詳述しているので、ここでは詳しい説明は省略する。なお、本実施形態では、検知結果出力手段56により、出力するチェック情報等を含む障害予兆検知結果ファイルを作成して出力し、共有ファイルサーバ70の障害予兆検知結果ファイル記憶手段75に配置する。共有ファイルサーバ70では、障害予兆検知サーバ20からネットワーク1を介して送信されてくる障害予兆検知結果ファイルを受信し、障害予兆検知結果ファイル記憶手段75に格納する(ステップS66)。
それから、利用者は、利用者端末110を操作し、障害予兆検知結果ファイル記憶手段75に記憶されている障害予兆検知結果ファイルの取得要求を、ネットワーク1を介して共有ファイルサーバ70へ送信し、共有ファイルサーバ70から送信されてくる障害予兆検知結果ファイルを受信し、画面表示や印刷等の出力を行う(ステップS67)。共有ファイルサーバ70では、利用者端末110からの取得要求を受け取ると、障害予兆検知結果ファイル記憶手段75に記憶されている障害予兆検知結果ファイルを、ネットワーク1を介して利用者端末110へ送信する(ステップS68)。
<本実施形態の効果>
このような本実施形態によれば、次のような効果がある。すなわち、障害予兆検知システム10は、過去障害についての障害情報および設計書の記載内容を用いて設計書を自動分析し、過去障害に紐付くチェック項目を含むチェック情報を出力するか、または過去障害についての障害情報とそれに紐付くチェック項目を含むチェック情報とを出力するので、設計書のレビューの自動化を図ることができる。
また、設計書のレビューの自動化の実現により、人に依存した品質確保体制からの脱却を図ることができるので、従来の体制下におけるライン役席等の通常のレビュー者や、第三者レビューを行うレビュー者は、その分だけ、時間的な拘束が少なくなるか、無くなることから、レビュー者の負担を軽減することができる。また、レビュー者の都合を考慮する必要性を少なくするか、無くすことができるため、即時レビューの実施を行うこともできる。
さらに、設計書のレビューの自動化の実現により、レビュー者の経験や知識に頼る場合に比べ、一定レベルのレビュー品質の確保や、レビューの標準化を図ることができる。
そして、過去障害に紐付くチェック項目を含むチェック情報が出力されるので、障害発生の未然防止を図ることもできる。
また、Nを2以上とする単語Nグラム(連続するN個の単語であり、本実施形態では、一例として3個の単語)によるマッチングを行うので、単なるNグラム(単語ではなく、連続するN個の文字)によるマッチングや、Nを1とする単語Nグラム(単語ユニグラム)によるマッチングを行う場合に比べ、設計書の記載内容の自動分析の精度、すなわち障害予兆検知の精度を向上させることができる。
さらに、単語Nグラム単位検知処理手段55は、頻出語スキップ処理(図8のステップS58参照)を実行する構成とされているので、頻出語をノイズとみなした処理を実現することができ、障害予兆検知の精度を向上させることができる。従って、単語群(連続するN個の単語をその順番を保って並べた状態の単語列)としての単語Nグラムで見た場合に、出現回数の多い単語群は、設計書の記載内容の自動分析を行ううえで重要な要素であると捉える一方(マッチングした際のスコアを加算しているので、重要な要素と捉えていることになる。)、単語群ではなく、1つの単語で見た場合の頻出語は、ノイズであるとみなす取り扱いを実現することができる。このため、Nを2以上とする単語Nグラム(連続するN個の単語、本実施形態では、一例として3個の単語)によるマッチングを採用することによる設計書の記載内容の自動分析の精度向上効果、すなわち障害予兆検知の精度向上効果を、より一層顕著なものとすることができる。
また、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理(図8のステップS59〜S62参照)に加え、プログラムID・ジョブID基準判断処理(図8のステップS57参照)を実行する構成とされているので、プログラムIDおよび/またはジョブIDを利用し、設計書の記載内容と過去障害とを紐付けることができる。このため、コンピュータシステムの設計開発で作成される設計書の自動分析を、より一層精度よく行うことができ、障害予兆検知の精度を、より一層向上させることができる。
さらに、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理(図8のステップS59〜S62参照)として、障害影響度S,A,B,C,D毎の重みを設計書の単語Nグラムやその関連単語群とともにクエリに含ませて送出し、検索エンジン30の検索手段33が、それらの障害影響度毎の重みを用いてスコアを算出する構成とされているので、クエリに含まれる設計書の単語Nグラムやその関連単語群が、障害情報(本実施形態では、現象および原因)の単語Nグラムと一致したときに、当該障害情報の単語Nグラムが、大きな障害影響度に対応していれば、スコアが相対的に大きくなり、小さな障害影響度に対応していれば、スコアが相対的に小さくなるように調整することができる。このため、障害予兆検知の精度を、より一層向上させることができる。
そして、単語Nグラム単位検知処理手段55は、関連単語群を用いてマッチングを行う構成とされているので、設計書の単語Nグラムと障害情報(現象および原因)の単語Nグラムとのマッチングに加え、関連単語群と障害情報の単語Nグラムとのマッチングを行うことができるので、障害予兆検知の精度を、より一層向上させることができる。
また、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理として、設計書の単語Nグラムについての重みWF算出用の基準重み、およびこの基準重みよりも小さい関連単語群についての重みWR算出用の基準重みを、設計書の単語Nグラムおよび関連単語群とともにクエリに含ませて送出する構成とされているので、クエリに含まれる設計書の単語Nグラムが、障害情報(現象および原因)の単語Nグラムと一致したときには、スコアが相対的に大きくなり、クエリに含まれる関連単語群が、障害情報の単語Nグラムと一致したときには、スコアが相対的に小さくなるように調整することができるので、障害予兆検知の精度を、より一層向上させることができる。
さらに、単語Nグラム単位検知処理手段55は、フレーズあいまい検索を行うこともできるので、状況に応じた多様な検索を行うことができる。
また、単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理として、単語群出現頻度TFおよび単語群稀少度IDFを用いて、設計書の単語Nグラムについての重みWF、関連単語群についての重みWRを算出決定することにより、同じ設計書の単語Nグラムを含むクエリの送出の繰り返しを回避する構成とされているので、検索手段33による同じマッチング処理の繰り返しを回避することができ、演算速度の向上を図ることができる。
[変形の形態]
なお、本発明は前記実施形態に限定されるものではなく、本発明の目的を達成できる範囲内での変形等は本発明に含まれるものである。
例えば、前記実施形態の障害予兆検知システム10では、ネットワーク1を介して障害予兆検知サーバ20と、その他の装置・システム・端末を接続した構成とされていたが、本発明は、このようなネットワーク構成に限定されるものではなく、スタンドアロンで構成してもよい。
また、前記実施形態の障害予兆検知サーバ20、およびその他の装置・システム・端末は、それぞれ1つまたは複数の機能を有しているが、各機能の配置(各機能がいずれの装置・システム・端末に帰属するか)は、必ずしも前記実施形態の障害予兆検知システム10の状態に限定されるものではなく、各機能の分散または組合せの態様は任意である。
例えば、障害予兆検知サーバ20の中の検索エンジン30は、独立したサーバにより構成してもよく、障害予兆検知サーバ20の中のチェックリスト記憶手段61も、独立したサーバに設置してもよい。また、障害情報管理システム80と、チェックリスト管理システム90とは、1つのシステムであってもよい。さらに、障害予兆検知に必要な各種データの受渡しは、共有ファイルサーバ70を介した各種ファイルの送受信によらずに、直接の送受信としてもよい。
さらに、前記実施形態では、障害予兆検知の対象となる設計書は、システムの開発設計の設計書とされていたが、本発明の障害予兆検知の対象となる設計書は、これに限定されるものではなく、例えば、家電製品等の製品や商品の設計書、自動車や航空機等の乗り物の設計書、建築物の設計書等の様々な設計書でもよい。但し、システムの開発設計の設計書でない場合には、プログラムID・ジョブID基準判断処理は行わない。すなわち、前記実施形態の単語Nグラム単位検知処理手段55は、単語Nグラムマッチング要求処理(図8のステップS59〜S62参照)に加え、プログラムID・ジョブID基準判断処理(図8のステップS57参照)を実行する構成とされていたが、後者の処理は行わないことになる。
また、前記実施形態の単語Nグラム単位検知処理手段55は、プログラムID・ジョブID基準判断処理(図8のステップS57参照)、頻出語スキップ処理(図8のステップS58参照)、単語Nグラムマッチング要求処理(図8のステップS59〜S62参照)を実行する構成とされていたが、本発明の単語Nグラム単位検知処理手段は、図16に示すように、これらの処理に加え、単語Nグラム拡張マッチング要求処理を実行する構成としてもよい。前記実施形態の場合に対し、機能が増えるだけであるので、図16および以下の説明では、前記実施形態と同じ符号を用いるものとする。
図16において、プログラムID・ジョブID記憶手段63は、プログラムID・ジョブID取得手段52により障害一覧記憶手段34(図3参照)から取得した大きな障害影響度(例えば、障害影響度S,A)のプログラムIDおよび/またはジョブIDおよびその他の障害情報(現象、原因、再発防止策等)、障害管理番号、並びに、[A]障害情報(例えば、現象・原因)の単語列または[B]障害情報(例えば、現象・原因)の単語Nグラムの集合を関連付けて記憶する。
図16の例では、単語Nグラム単位検知処理手段55は、単語Nグラム拡張マッチング要求処理として、プログラムID・ジョブID基準判断処理(図8のステップS57参照)で採用した出力対象の障害管理番号に関連付けられてプログラムID・ジョブID記憶手段63に記憶されている[A]障害情報(例えば、現象・原因)の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または[B]障害情報(例えば、現象・原因)の単語Nグラムの集合から取得した障害情報の単語Nグラムの各々を、単語Nグラム拡張マッチング検索要求用のクエリに含ませて送出するとともに、この単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果(応答結果)を受け取る処理を実行する。
そして、単語Nグラム単位検知処理手段55は、単語Nグラム拡張マッチング要求処理においても、単語Nグラムマッチング要求処理の場合と同様に、検索エンジン30から、単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果(応答結果)として、マッチングした過去障害についての障害管理番号若しくはこの障害管理番号に加えて対応する障害情報(現象、原因等)を、スコア(合致度)とともに受け取り、受け取った情報を出力対象記憶手段68に記憶させるが、この際には、図14に示すようなスコアの処理を実行する。すなわち、受け取った障害管理番号が、出力対象記憶手段68に既に記憶されている場合には、その障害管理番号についてスコアを加算する処理を行う。
また、図16の例では、検索エンジン30の検索手段33は、単語Nグラム単位検知処理手段55から送出された単語Nグラム拡張マッチング検索要求用のクエリを受け取り、受け取ったクエリに含まれる障害情報(例えば、現象・原因)の単語Nグラムについて、障害一覧記憶手段34(図3参照)に記憶された[A]障害情報(例えば、現象・原因)の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または[B]障害情報(例えば、現象・原因)の単語Nグラムの集合から取得した障害情報の単語Nグラムの中に一致する障害情報の単語Nグラムがあるか否かを判断し、一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて障害一覧記憶手段34に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報(現象、原因、再発防止策等)を、スコアとともに、単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果(応答結果)として単語Nグラム単位検知処理手段55に返す処理を実行する。
さらに、図16の例では、検知結果出力手段56は、単語Nグラムマッチング要求処理で得られた障害管理番号と、プログラムID・ジョブID基準判断処理で得られた障害管理番号と、単語Nグラム拡張マッチング検索処理で得られた障害管理番号とを用いて、チェックリスト記憶手段61に記憶されているチェック情報を取得し、それぞれの障害管理番号を用いて取得したチェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの障害管理番号に対応する障害情報(現象、原因等)を並べて出力する。
この際、検知結果出力手段56は、単語Nグラムマッチング要求処理の場合と同様に、単語Nグラム拡張マッチング要求処理で得られて出力対象記憶手段68に記憶されている障害管理番号および対応する障害情報(現象、原因等)を、スコア(合計値)でソートし、スコアの合計値(図14参照)が、例えば、上位10位以内、上位15位以内等のように予め定められた数の上位の過去障害についての障害管理番号等を出力する。また、これらを出力する際には、チェックリスト記憶手段61(図2参照)からのチェック情報(チェック項目等を含む)の取得は、上位10位以内、上位15位以内等の過去障害についてだけ行えばよい。なお、出力する上位の過去障害の数(上位何位以内を出力するか)は、単語Nグラムマッチング要求処理の場合と、単語Nグラム拡張マッチング要求処理の場合とで異なっていてもよい。
また、検知結果出力手段56は、単語Nグラムマッチング要求処理で得られた障害管理番号等と、単語Nグラム拡張マッチング検索処理で得られた障害管理番号等とを、分けて別々のエリアに出力してもよく、混在させて出力してもよい。混在させて出力する場合には、単語Nグラムマッチング要求処理で得られた障害管理番号に対応するスコア(合計値)と、単語Nグラム拡張マッチング検索処理で得られた障害管理番号に対応するスコア(合計値)とを混在させた状態で、スコアの順位付けを行うことになるので、これらのスコアの相対的な大きさを調整するため、単語Nグラム拡張マッチング検索処理で得られた障害管理番号に対応するスコア(合計値)をK倍(K>1)することが好ましい。
このように単語Nグラム拡張マッチング要求処理を実行する構成とした場合には、プログラムID・ジョブID基準判断処理(図8のステップS57参照)で得られた障害管理番号に対応する[A]障害情報(例えば現象・原因)の単語列または[B]障害情報(例えば現象・原因)の単語Nグラムの集合を利用し、障害情報(例えば現象・原因)の単語Nグラムを含む単語Nグラム拡張マッチング検索要求用のクエリを作成し、そのクエリに含まれる障害情報(例えば現象・原因)の単語Nグラムと、検索エンジン30の障害一覧記憶手段34(図3参照)に記憶された障害情報(例えば現象・原因)の単語Nグラムとをマッチングさせる。従って、この単語Nグラム拡張マッチング要求処理(障害情報の単語Nグラムどうしのマッチング)は、プログラムID・ジョブID基準判断処理と、単語Nグラムマッチング要求処理(設計書の単語Nグラムと障害情報の単語Nグラムとのマッチング)とを融合した処理であるともいえるので、単語Nグラム単位検知処理手段55は、異なる2系統の処理、およびそれらを融合した処理を行うことで、互いに関連する3系統の処理で、出力対象の障害管理番号を得ることができる。
以上のように、本発明の障害予兆検知システムおよびプログラムは、例えば、システムの設計開発において作成した設計書の自動分析を行う場合等に用いるのに適している。
10 障害予兆検知システム
31 障害情報単語列生成手段
33 検索手段
34 障害一覧記憶手段
35 単語累積出現回数記憶手段
43 関連単語群学習手段
51 設計書文章抽出手段
52 プログラムID・ジョブID取得手段
53 頻出語取得手段
54 設計書単語列生成手段
55 単語Nグラム単位検知処理手段
56 検知結果出力手段
61 チェックリスト記憶手段
62 学習結果記憶手段
63 プログラムID・ジョブID記憶手段
64 頻出語記憶手段
65 設計書単語列記憶手段
66 単語群出現頻度記憶手段
81 原障害一覧記憶手段

Claims (9)

  1. 設計書の記載内容から障害発生の予兆を検知する処理を実行するコンピュータにより構成された障害予兆検知システムであって、
    過去障害についての現象および原因を含む障害情報を、障害管理番号と関連付けて記憶する原障害一覧記憶手段と、
    この原障害一覧記憶手段に記憶された前記障害情報のうちの少なくとも現象および原因を含む部分を用いて、Nを2以上とする単語Nグラム用の障害情報の単語列を生成するか、または、この障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラムの集合を生成する処理を実行する障害情報単語列生成手段と、
    この障害情報単語列生成手段により生成した前記障害情報の単語列または前記障害情報の単語Nグラムの集合を、前記障害情報とともに、前記障害管理番号と関連付けて記憶する障害一覧記憶手段と、
    過去障害に関連するチェック項目を含むチェック情報を、前記障害管理番号と関連付けて記憶するチェックリスト記憶手段と、
    障害予兆検知の対象となる設計書のデータから文章を抽出する処理を実行する設計書文章抽出手段と、
    この設計書文章抽出手段により抽出した設計書文章を用いて、前記障害情報の単語NグラムのNと同数のNによる単語Nグラム用の設計書の単語列を生成するか、または、この設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラムの集合を生成する処理を実行する設計書単語列生成手段と、
    この設計書単語列生成手段により生成した前記設計書の単語列または前記設計書の単語Nグラムの集合を記憶する設計書単語列記憶手段と、
    この設計書単語列記憶手段に記憶された前記設計書の単語列から1単語ずつずらしながら切り出した設計書の単語Nグラム、または前記設計書の単語Nグラムの集合から取得した設計書の単語Nグラムの各々を、単語Nグラムマッチング検索要求用のクエリに含ませて送出するとともに、前記クエリに対する検索結果を受け取る単語Nグラムマッチング要求処理を実行する単語Nグラム単位検知処理手段と、
    この単語Nグラム単位検知処理手段から送出された前記クエリを受け取り、前記クエリに含まれる前記設計書の単語Nグラムについて、前記障害一覧記憶手段に記憶された前記障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または前記障害情報の単語Nグラムの集合から取得した障害情報の単語Nグラムの中に一致する障害情報の単語Nグラムがあるか否かを判断し、一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報を、前記クエリに対する検索結果として前記単語Nグラム単位検知処理手段に返す単語Nグラムマッチング検索処理を実行する検索手段と、
    この検索手段による検索結果として前記単語Nグラム単位検知処理手段が受け取った前記障害管理番号を用いて、前記チェックリスト記憶手段に記憶されている前記チェック情報を取得し、取得した前記チェック情報を出力するか、またはこのチェック情報に加えて前記障害管理番号に対応する前記障害情報を出力する処理を実行する検知結果出力手段と
    を備えたことを特徴とする障害予兆検知システム。
  2. 前記障害情報単語列生成手段は、
    前記障害一覧記憶手段に記憶させる前記障害情報の中から抽出した各単語の累積出現回数を求め、求めた各単語の累積出現回数を単語累積出現回数記憶手段に記憶させる処理も実行する構成とされ、
    前記単語累積出現回数記憶手段に記憶された単語のうち、累積出現回数が閾値を超えるか、または閾値以上となっている頻出語を取得する処理を実行する頻出語取得手段を備え、
    前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理を実行する前に、前記クエリに含ませて送出する対象となっている前記設計書の単語Nグラムを構成するN個の単語の中に、前記頻出語取得手段により取得した前記頻出語が含まれているか否かを判断し、含まれている場合には、前記単語Nグラムマッチング要求処理を行わない頻出語スキップ処理を実行する構成とされている
    ことを特徴とする請求項1に記載の障害予兆検知システム。
  3. 前記障害一覧記憶手段は、
    前記障害情報の単語列または前記障害情報の単語Nグラムの集合に加え、前記障害情報として、障害が与える影響の大小を示す障害影響度と、プログラムIDおよび/またはジョブIDとを、前記障害管理番号と関連付けて記憶する構成とされ、
    予め定められた大きな障害影響度と関連付けられて前記障害一覧記憶手段に記憶されているプログラムIDおよび/またはジョブIDを含む前記障害情報、並びに、対応する前記障害管理番号を取得してプログラムID・ジョブID記憶手段に記憶させる処理を実行するプログラムID・ジョブID取得手段を備え、
    前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理に加え、
    前記設計書の単語Nグラムを前記クエリに含ませて送出する前に、前記設計書の単語Nグラムの中に、前記プログラムID・ジョブID記憶手段に記憶されたプログラムIDおよび/またはジョブIDが含まれているか否かを判断し、含まれている場合に、当該プログラムIDおよび/または当該ジョブIDに対応する前記障害管理番号を、出力対象の障害管理番号として採用するプログラムID・ジョブID基準判断処理を実行する構成とされ、
    前記検知結果出力手段は、
    前記単語Nグラムマッチング要求処理で得られた前記障害管理番号と、前記プログラムID・ジョブID基準判断処理で得られた前記障害管理番号とを用いて、前記チェックリスト記憶手段に記憶されている前記チェック情報を取得し、それぞれの前記障害管理番号を用いて取得した前記チェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの前記障害管理番号に対応する前記障害情報を並べて出力する処理を実行する構成とされている
    ことを特徴とする請求項1または2に記載の障害予兆検知システム。
  4. 前記障害一覧記憶手段は、
    前記障害情報の単語列または前記障害情報の単語Nグラムの集合に加え、前記障害情報として、障害が与える影響の大小を示す障害影響度を、前記障害管理番号と関連付けて記憶する構成とされ、
    前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理として、障害影響度毎の重みを前記設計書の単語Nグラムとともに前記クエリに含ませて送出する処理を実行する構成とされ、
    前記検索手段は、
    前記単語Nグラムマッチング検索処理として、前記クエリに含まれる前記設計書の単語Nグラムと一致する前記障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害影響度についての重みを用いて合致度を示すスコアを算出し、算出したスコアを、前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報とともに、前記クエリに対する検索結果として前記単語Nグラム単位検知処理手段に返す処理を実行する構成とされ、
    前記検知結果出力手段は、
    前記スコアを用いて、前記チェック情報を出力するか、またはこのチェック情報に加えて前記障害管理番号に対応する前記障害情報を出力する処理を実行する構成とされている
    ことを特徴とする請求項1〜3のいずれかに記載の障害予兆検知システム。
  5. 前記原障害一覧記憶手段に記憶された複数の過去障害についての現象および原因を含む障害情報を用いて生成された単語列から1単語ずつずらしながら切り出した単語群を切り出した順番に並べた単語群の集合を学習データとして用いて、単語群どうしの間の関連性の学習処理を実行する関連単語群学習手段と、
    この関連単語群学習手段による学習結果として得られた単語群の分散表現としての単語ベクトルを記憶する学習結果記憶手段とを備え、
    前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理として、前記学習結果記憶手段に記憶された前記単語ベクトルを用いて、前記設計書の単語Nグラムから連想される関連単語群を求め、求めた関連単語群を、前記設計書の単語Nグラムとともに前記クエリに含ませて送出する処理を実行する構成とされ、
    前記検索手段は、
    前記単語Nグラムマッチング検索処理として、前記クエリに含まれる前記設計書の単語Nグラムと一致する前記障害情報の単語Nグラムがある場合、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Nグラムがある場合、または、前記クエリに含まれる前記設計書の単語Nグラムと一致する前記障害情報の単語Nグラムがあり、かつ、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報を、前記クエリに対する検索結果として前記単語Nグラム単位検知処理手段に返す処理を実行する構成とされている
    ことを特徴とする請求項1〜4のいずれかに記載の障害予兆検知システム。
  6. 前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理として、前記設計書の単語Nグラムについての重み、およびこの重みよりも小さい前記関連単語群についての重みを、前記設計書の単語Nグラムおよび前記関連単語群とともに前記クエリに含ませて送出する処理を実行する構成とされ、
    前記検索手段は、
    前記単語Nグラムマッチング検索処理として、前記クエリに含まれる前記設計書の単語Nグラムと一致する前記障害情報の単語Nグラムがある場合には、前記設計書の単語Nグラムについての重みを用いて合致度を示すスコアを算出し、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Nグラムがある場合には、前記関連単語群についての重みを用いて合致度を示すスコアを算出し、前記クエリに含まれる前記設計書の単語Nグラムと一致する前記障害情報の単語Nグラムがあり、かつ、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Nグラムがある場合には、前記設計書の単語Nグラムおよび前記関連単語群についての双方の重みを用いて合致度を示すスコアを算出し、算出したスコアを、前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報とともに、前記クエリに対する検索結果として前記単語Nグラム単位検知処理手段に返す処理を実行する構成とされ、
    前記検知結果出力手段は、
    前記スコアを用いて、前記チェック情報を出力するか、またはこのチェック情報に加えて前記障害管理番号に対応する前記障害情報を出力する処理を実行する構成とされている
    ことを特徴とする請求項5に記載の障害予兆検知システム。
  7. 前記設計書単語列生成手段は、
    前記設計書の単語Nグラムの集合の中で、同じ単語群が出現する頻度を示す単語群出現頻度を求めるとともに、この単語群出現頻度を用いて単語群稀少度を求め、これらの単語群出現頻度および単語群稀少度を、単語群出現頻度記憶手段に記憶させる処理を実行する構成とされ、
    前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理として、前記設計書の単語Nグラムについての重みを、前記関連単語群との相対的な重み付けのための基準重みに、当該設計書の単語Nグラムと同じ単語群について前記単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定するとともに、
    前記関連単語群についての重みを、前記設計書の単語Nグラムとの相対的な重み付けのための基準重みに、当該関連単語群と同じ単語群について前記単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定し、
    同じ設計書の単語Nグラムを含む前記クエリを既に送出しているか否かを判断し、未だ送出していない場合には、算出決定した前記設計書の単語Nグラムについての重み、および前記関連単語群についての重みを、前記設計書の単語Nグラムおよび前記関連単語群とともに前記クエリに含ませて送出し、既に送出している場合には、前記クエリを送出しない処理を実行する構成とされている
    ことを特徴とする請求項6に記載の障害予兆検知システム。
  8. 前記プログラムID・ジョブID記憶手段は、
    前記プログラムID・ジョブID取得手段により前記障害一覧記憶手段から取得したプログラムIDおよび/またはジョブIDを含む前記障害情報、前記障害管理番号、並びに、前記障害情報の単語列または前記障害情報の単語Nグラムの集合を関連付けて記憶する構成とされ、
    前記単語Nグラム単位検知処理手段は、
    前記単語Nグラムマッチング要求処理、および前記プログラムID・ジョブID基準判断処理に加え、
    前記プログラムID・ジョブID基準判断処理で採用した出力対象の前記障害管理番号に関連付けられて前記プログラムID・ジョブID記憶手段に記憶されている前記障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または前記障害情報の単語Nグラムの集合から取得した障害情報の単語Nグラムの各々を、単語Nグラム拡張マッチング検索要求用のクエリに含ませて送出するとともに、この単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果を受け取る単語Nグラム拡張マッチング要求処理を実行する構成とされ、
    前記検索手段は、
    前記単語Nグラム単位検知処理手段から送出された前記単語Nグラム拡張マッチング検索要求用のクエリを受け取り、受け取ったクエリに含まれる前記障害情報の単語Nグラムについて、前記障害一覧記憶手段に記憶された前記障害情報の単語列から1単語ずつずらしながら切り出した障害情報の単語Nグラム、または前記障害情報の単語Nグラムの集合から取得した障害情報の単語Nグラムの中に一致する障害情報の単語Nグラムがあるか否かを判断し、一致する障害情報の単語Nグラムがある場合に、当該障害情報の単語Nグラムまたはこの単語Nグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報を、前記単語Nグラム拡張マッチング検索要求用のクエリに対する検索結果として前記単語Nグラム単位検知処理手段に返す単語Nグラム拡張マッチング検索処理を実行する構成とされ、
    前記検知結果出力手段は、
    前記単語Nグラムマッチング要求処理で得られた前記障害管理番号と、前記プログラムID・ジョブID基準判断処理で得られた前記障害管理番号と、前記単語Nグラム拡張マッチング検索処理で得られた前記障害管理番号とを用いて、前記チェックリスト記憶手段に記憶されている前記チェック情報を取得し、それぞれの前記障害管理番号を用いて取得した前記チェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの前記障害管理番号に対応する前記障害情報を並べて出力する処理を実行する構成とされている
    ことを特徴とする請求項3に記載の障害予兆検知システム。
  9. 請求項1〜8のいずれかに記載の障害予兆検知システムとして、コンピュータを機能させるためのプログラム。
JP2018212587A 2018-11-12 2018-11-12 障害予兆検知システムおよびプログラム Active JP6589036B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018212587A JP6589036B1 (ja) 2018-11-12 2018-11-12 障害予兆検知システムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018212587A JP6589036B1 (ja) 2018-11-12 2018-11-12 障害予兆検知システムおよびプログラム

Publications (2)

Publication Number Publication Date
JP6589036B1 true JP6589036B1 (ja) 2019-10-09
JP2020080024A JP2020080024A (ja) 2020-05-28

Family

ID=68159720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018212587A Active JP6589036B1 (ja) 2018-11-12 2018-11-12 障害予兆検知システムおよびプログラム

Country Status (1)

Country Link
JP (1) JP6589036B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021171344A1 (ja) * 2020-02-25 2021-09-02

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005309917A (ja) * 2004-04-23 2005-11-04 Mitsubishi Electric Corp レビュー支援装置
JP6964991B2 (ja) * 2017-02-10 2021-11-10 株式会社日立システムズ 設計書評価装置、設計書評価方法、及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021171344A1 (ja) * 2020-02-25 2021-09-02
WO2021171344A1 (ja) * 2020-02-25 2021-09-02 日本電信電話株式会社 文書作成支援装置、文書作成支援方法、および、文書作成支援プログラム
JP7323846B2 (ja) 2020-02-25 2023-08-09 日本電信電話株式会社 文書作成支援装置、文書作成支援方法、および、文書作成支援プログラム

Also Published As

Publication number Publication date
JP2020080024A (ja) 2020-05-28

Similar Documents

Publication Publication Date Title
US9613166B2 (en) Search suggestions of related entities based on co-occurrence and/or fuzzy-score matching
KR101109236B1 (ko) 복수-의미 질의에 대한 관련 용어 제안
KR102334064B1 (ko) 음성 입력에 기초한 테이블형 데이터에 관한 연산의 수행 기법
US7680778B2 (en) Support for reverse and stemmed hit-highlighting
CN103064956B (zh) 用于搜索电子内容的方法、计算系统和计算机可读介质
US7480667B2 (en) System and method for using anchor text as training data for classifier-based search systems
US20170124091A1 (en) Query Rewriting Using Session Information
US20120203584A1 (en) System and method for identifying potential customers
US20110179026A1 (en) Related Concept Selection Using Semantic and Contextual Relationships
WO2015084759A1 (en) Systems and methods for in-memory database search
CN108572971B (zh) 一种用于挖掘与检索词相关的关键词的方法和装置
JP4631795B2 (ja) 情報検索支援システム、情報検索支援方法および情報検索支援プログラム
WO2015084757A1 (en) Systems and methods for processing data stored in a database
JP2009122807A (ja) 連想検索システム
US20120317141A1 (en) System and method for ordering of semantic sub-keys
US20170075915A1 (en) Search suggestions using fuzzy-score matching and entity co-occurrence
US9875298B2 (en) Automatic generation of a search query
JP6589036B1 (ja) 障害予兆検知システムおよびプログラム
JP4912384B2 (ja) 文書検索装置、文書検索方法、および文書検索プログラム
WO2024059593A1 (en) Interactive tool for determining a headnote report
KR20120038418A (ko) 탐색 방법 및 디바이스
JP2010055164A (ja) 文章検索装置、文章検索方法、文章検索プログラムおよびその記録媒体
JP2009086903A (ja) 検索サービス装置
Rahimi et al. Building a multi-domain comparable corpus using a learning to rank method
JP6773861B1 (ja) 不適合事例検索システムおよび不適合事例検索方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190218

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: 20190909

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190913

R150 Certificate of patent or registration of utility model

Ref document number: 6589036

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250