(57)【要約】【課題】設計書を自動分析し、設計書のレビューの効率化を図ることができる障害予兆検知システムおよびプログラムを提供する。【解決手段】障害情報（現象・原因）の単語列から切り出した単語Ｎグラムの集合（または単語列）を、障害管理番号と関連付けて障害一覧記憶手段３４に記憶するとともに、過去障害に関連するチェック情報を、障害管理番号と関連付けてチェックリスト記憶手段６１に記憶しておき、設計書の単語列から切り出した単語Ｎグラムの各々と、障害一覧記憶手段３４に記憶された障害情報の単語Ｎグラム（または単語列から切り出した単語Ｎグラム）とのマッチングを行い、一致した障害情報の単語Ｎグラムに対応する障害管理番号を用いて、チェックリスト記憶手段６１に記憶されたチェック情報を取得し、出力する。【選択図】図１
2020080024.tif 000002
【特許請求の範囲】
【請求項１】
設計書の記載内容から障害発生の予兆を検知する処理を実行するコンピュータにより構成された障害予兆検知システムであって、
過去障害についての現象および原因を含む障害情報を、障害管理番号と関連付けて記憶する原障害一覧記憶手段と、
この原障害一覧記憶手段に記憶された前記障害情報のうちの少なくとも現象および原因を含む部分を用いて、Ｎを２以上とする単語Ｎグラム用の障害情報の単語列を生成するか、または、この障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラムの集合を生成する処理を実行する障害情報単語列生成手段と、
この障害情報単語列生成手段により生成した前記障害情報の単語列または前記障害情報の単語Ｎグラムの集合を、前記障害情報とともに、前記障害管理番号と関連付けて記憶する障害一覧記憶手段と、
過去障害に関連するチェック項目を含むチェック情報を、前記障害管理番号と関連付けて記憶するチェックリスト記憶手段と、
障害予兆検知の対象となる設計書のデータから文章を抽出する処理を実行する設計書文章抽出手段と、
この設計書文章抽出手段により抽出した設計書文章を用いて、前記障害情報の単語ＮグラムのＮと同数のＮによる単語Ｎグラム用の設計書の単語列を生成するか、または、この設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラムの集合を生成する処理を実行する設計書単語列生成手段と、
この設計書単語列生成手段により生成した前記設計書の単語列または前記設計書の単語Ｎグラムの集合を記憶する設計書単語列記憶手段と、
この設計書単語列記憶手段に記憶された前記設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラム、または前記設計書の単語Ｎグラムの集合から取得した設計書の単語Ｎグラムの各々を、単語Ｎグラムマッチング検索要求用のクエリに含ませて送出するとともに、前記クエリに対する検索結果を受け取る単語Ｎグラムマッチング要求処理を実行する単語Ｎグラム単位検知処理手段と、
この単語Ｎグラム単位検知処理手段から送出された前記クエリを受け取り、前記クエリに含まれる前記設計書の単語Ｎグラムについて、前記障害一覧記憶手段に記憶された前記障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または前記障害情報の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの中に一致する障害情報の単語Ｎグラムがあるか否かを判断し、一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報を、前記クエリに対する検索結果として前記単語Ｎグラム単位検知処理手段に返す単語Ｎグラムマッチング検索処理を実行する検索手段と、
この検索手段による検索結果として前記単語Ｎグラム単位検知処理手段が受け取った前記障害管理番号を用いて、前記チェックリスト記憶手段に記憶されている前記チェック情報を取得し、取得した前記チェック情報を出力するか、またはこのチェック情報に加えて前記障害管理番号に対応する前記障害情報を出力する処理を実行する検知結果出力手段と
を備えたことを特徴とする障害予兆検知システム。
【請求項２】
前記障害情報単語列生成手段は、
前記障害一覧記憶手段に記憶させる前記障害情報の中から抽出した各単語の累積出現回数を求め、求めた各単語の累積出現回数を単語累積出現回数記憶手段に記憶させる処理も実行する構成とされ、
前記単語累積出現回数記憶手段に記憶された単語のうち、累積出現回数が閾値を超えるか、または閾値以上となっている頻出語を取得する処理を実行する頻出語取得手段を備え、
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理を実行する前に、前記クエリに含ませて送出する対象となっている前記設計書の単語Ｎグラムを構成するＮ個の単語の中に、前記頻出語取得手段により取得した前記頻出語が含まれているか否かを判断し、含まれている場合には、前記単語Ｎグラムマッチング要求処理を行わない頻出語スキップ処理を実行する構成とされている
ことを特徴とする請求項１に記載の障害予兆検知システム。
【請求項３】
前記障害一覧記憶手段は、
前記障害情報の単語列または前記障害情報の単語Ｎグラムの集合に加え、前記障害情報として、障害が与える影響の大小を示す障害影響度と、プログラムＩＤおよび／またはジョブＩＤとを、前記障害管理番号と関連付けて記憶する構成とされ、
予め定められた大きな障害影響度と関連付けられて前記障害一覧記憶手段に記憶されているプログラムＩＤおよび／またはジョブＩＤを含む前記障害情報、並びに、対応する前記障害管理番号を取得してプログラムＩＤ・ジョブＩＤ記憶手段に記憶させる処理を実行するプログラムＩＤ・ジョブＩＤ取得手段を備え、
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理に加え、
前記設計書の単語Ｎグラムを前記クエリに含ませて送出する前に、前記設計書の単語Ｎグラムの中に、前記プログラムＩＤ・ジョブＩＤ記憶手段に記憶されたプログラムＩＤおよび／またはジョブＩＤが含まれているか否かを判断し、含まれている場合に、当該プログラムＩＤおよび／または当該ジョブＩＤに対応する前記障害管理番号を、出力対象の障害管理番号として採用するプログラムＩＤ・ジョブＩＤ基準判断処理を実行する構成とされ、
前記検知結果出力手段は、
前記単語Ｎグラムマッチング要求処理で得られた前記障害管理番号と、前記プログラムＩＤ・ジョブＩＤ基準判断処理で得られた前記障害管理番号とを用いて、前記チェックリスト記憶手段に記憶されている前記チェック情報を取得し、それぞれの前記障害管理番号を用いて取得した前記チェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの前記障害管理番号に対応する前記障害情報を並べて出力する処理を実行する構成とされている
ことを特徴とする請求項１または２に記載の障害予兆検知システム。
【請求項４】
前記障害一覧記憶手段は、
前記障害情報の単語列または前記障害情報の単語Ｎグラムの集合に加え、前記障害情報として、障害が与える影響の大小を示す障害影響度を、前記障害管理番号と関連付けて記憶する構成とされ、
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理として、障害影響度毎の重みを前記設計書の単語Ｎグラムとともに前記クエリに含ませて送出する処理を実行する構成とされ、
前記検索手段は、
前記単語Ｎグラムマッチング検索処理として、前記クエリに含まれる前記設計書の単語Ｎグラムと一致する前記障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害影響度についての重みを用いて合致度を示すスコアを算出し、算出したスコアを、前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報とともに、前記クエリに対する検索結果として前記単語Ｎグラム単位検知処理手段に返す処理を実行する構成とされ、
前記検知結果出力手段は、
前記スコアを用いて、前記チェック情報を出力するか、またはこのチェック情報に加えて前記障害管理番号に対応する前記障害情報を出力する処理を実行する構成とされている
ことを特徴とする請求項１〜３のいずれかに記載の障害予兆検知システム。
【請求項５】
前記原障害一覧記憶手段に記憶された複数の過去障害についての現象および原因を含む障害情報を用いて生成された単語列から１単語ずつずらしながら切り出した単語群を切り出した順番に並べた単語群の集合を学習データとして用いて、単語群どうしの間の関連性の学習処理を実行する関連単語群学習手段と、
この関連単語群学習手段による学習結果として得られた単語群の分散表現としての単語ベクトルを記憶する学習結果記憶手段とを備え、
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理として、前記学習結果記憶手段に記憶された前記単語ベクトルを用いて、前記設計書の単語Ｎグラムから連想される関連単語群を求め、求めた関連単語群を、前記設計書の単語Ｎグラムとともに前記クエリに含ませて送出する処理を実行する構成とされ、
前記検索手段は、
前記単語Ｎグラムマッチング検索処理として、前記クエリに含まれる前記設計書の単語Ｎグラムと一致する前記障害情報の単語Ｎグラムがある場合、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Ｎグラムがある場合、または、前記クエリに含まれる前記設計書の単語Ｎグラムと一致する前記障害情報の単語Ｎグラムがあり、かつ、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報を、前記クエリに対する検索結果として前記単語Ｎグラム単位検知処理手段に返す処理を実行する構成とされている
ことを特徴とする請求項１〜４のいずれかに記載の障害予兆検知システム。
【請求項６】
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理として、前記設計書の単語Ｎグラムについての重み、およびこの重みよりも小さい前記関連単語群についての重みを、前記設計書の単語Ｎグラムおよび前記関連単語群とともに前記クエリに含ませて送出する処理を実行する構成とされ、
前記検索手段は、
前記単語Ｎグラムマッチング検索処理として、前記クエリに含まれる前記設計書の単語Ｎグラムと一致する前記障害情報の単語Ｎグラムがある場合には、前記設計書の単語Ｎグラムについての重みを用いて合致度を示すスコアを算出し、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Ｎグラムがある場合には、前記関連単語群についての重みを用いて合致度を示すスコアを算出し、前記クエリに含まれる前記設計書の単語Ｎグラムと一致する前記障害情報の単語Ｎグラムがあり、かつ、前記クエリに含まれる前記関連単語群と一致する前記障害情報の単語Ｎグラムがある場合には、前記設計書の単語Ｎグラムおよび前記関連単語群についての双方の重みを用いて合致度を示すスコアを算出し、算出したスコアを、前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報とともに、前記クエリに対する検索結果として前記単語Ｎグラム単位検知処理手段に返す処理を実行する構成とされ、
前記検知結果出力手段は、
前記スコアを用いて、前記チェック情報を出力するか、またはこのチェック情報に加えて前記障害管理番号に対応する前記障害情報を出力する処理を実行する構成とされている
ことを特徴とする請求項５に記載の障害予兆検知システム。
【請求項７】
前記設計書単語列生成手段は、
前記設計書の単語Ｎグラムの集合の中で、同じ単語群が出現する頻度を示す単語群出現頻度を求めるとともに、この単語群出現頻度を用いて単語群稀少度を求め、これらの単語群出現頻度および単語群稀少度を、単語群出現頻度記憶手段に記憶させる処理を実行する構成とされ、
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理として、前記設計書の単語Ｎグラムについての重みを、前記関連単語群との相対的な重み付けのための基準重みに、当該設計書の単語Ｎグラムと同じ単語群について前記単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定するとともに、
前記関連単語群についての重みを、前記設計書の単語Ｎグラムとの相対的な重み付けのための基準重みに、当該関連単語群と同じ単語群について前記単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定し、
同じ設計書の単語Ｎグラムを含む前記クエリを既に送出しているか否かを判断し、未だ送出していない場合には、算出決定した前記設計書の単語Ｎグラムについての重み、および前記関連単語群についての重みを、前記設計書の単語Ｎグラムおよび前記関連単語群とともに前記クエリに含ませて送出し、既に送出している場合には、前記クエリを送出しない処理を実行する構成とされている
ことを特徴とする請求項６に記載の障害予兆検知システム。
【請求項８】
前記プログラムＩＤ・ジョブＩＤ記憶手段は、
前記プログラムＩＤ・ジョブＩＤ取得手段により前記障害一覧記憶手段から取得したプログラムＩＤおよび／またはジョブＩＤを含む前記障害情報、前記障害管理番号、並びに、前記障害情報の単語列または前記障害情報の単語Ｎグラムの集合を関連付けて記憶する構成とされ、
前記単語Ｎグラム単位検知処理手段は、
前記単語Ｎグラムマッチング要求処理、および前記プログラムＩＤ・ジョブＩＤ基準判断処理に加え、
前記プログラムＩＤ・ジョブＩＤ基準判断処理で採用した出力対象の前記障害管理番号に関連付けられて前記プログラムＩＤ・ジョブＩＤ記憶手段に記憶されている前記障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または前記障害情報の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの各々を、単語Ｎグラム拡張マッチング検索要求用のクエリに含ませて送出するとともに、この単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果を受け取る単語Ｎグラム拡張マッチング要求処理を実行する構成とされ、
前記検索手段は、
前記単語Ｎグラム単位検知処理手段から送出された前記単語Ｎグラム拡張マッチング検索要求用のクエリを受け取り、受け取ったクエリに含まれる前記障害情報の単語Ｎグラムについて、前記障害一覧記憶手段に記憶された前記障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または前記障害情報の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの中に一致する障害情報の単語Ｎグラムがあるか否かを判断し、一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて前記障害一覧記憶手段に記憶されている前記障害管理番号若しくはこの障害管理番号に加えて対応する前記障害情報を、前記単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果として前記単語Ｎグラム単位検知処理手段に返す単語Ｎグラム拡張マッチング検索処理を実行する構成とされ、
前記検知結果出力手段は、
前記単語Ｎグラムマッチング要求処理で得られた前記障害管理番号と、前記プログラムＩＤ・ジョブＩＤ基準判断処理で得られた前記障害管理番号と、前記単語Ｎグラム拡張マッチング検索処理で得られた前記障害管理番号とを用いて、前記チェックリスト記憶手段に記憶されている前記チェック情報を取得し、それぞれの前記障害管理番号を用いて取得した前記チェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの前記障害管理番号に対応する前記障害情報を並べて出力する処理を実行する構成とされている
ことを特徴とする請求項３に記載の障害予兆検知システム。
【請求項９】
請求項１〜８のいずれかに記載の障害予兆検知システムとして、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計書の記載内容から障害発生の予兆を検知する処理を実行するコンピュータにより構成された障害予兆検知システムおよびプログラムに係り、例えば、システムの設計開発において作成した設計書の自動分析を行う場合等に利用できる。
【背景技術】
【０００２】
一般に、システムの設計開発においては、開発案件の担当者として割り当てられた設計者や開発者が、ユーザの目的に応じた要件定義に基づき設計開発を行い、その設計開発において作成した設計書について、開発担当部署のライン役席等のレビュー者がレビューを行うという体制で開発が行われている。従って、システム設計や開発の品質は、設計者およびレビュー者のスキルに依存している。この際、ライン役席等のレビュー者のスキルは、過去の開発経験、知識として蓄えている障害情報、障害対応経験等がベースになっている。
【０００３】
昨今では、急速な技術革新に伴う情報技術の高度化・複雑化と相まって、システムの設計開発の現場での年度の開発ボリュームが増加し、これを背景に障害件数も増加しており、ライン役席等の通常のレビュー者によるレビューだけではなく、過去の開発経験、障害情報、障害対応経験等が、より豊富な本部（開発担当部署以外の部署）のライン部長以上での第三者レビューも実施されている。
【０００４】
また、本発明に関連する技術として、ソフトウェア開発の際に作成される文書に関して必要事項の記載漏れを効果的に抑制することのできる文書検査方法が知られている（特許文献１参照）。この文書検査方法では、形態素解析を行うが、単語Ｎグラム（単語Ｎ−ｇｒａｍ）は利用していない。
【０００５】
さらに、電子文書から知見情報を抽出する知見抽出装置、具体的には、配信されたニュース情報から株取引に関する知見情報を抽出する知見抽出装置が知られ、コンピュータネットワークシステムの障害検知に関する知見情報の抽出をすることも可能であるとされている（特許文献２参照）。この知見抽出装置では、Ｎグラムや形態素解析を利用しているが、単語Ｎグラムは利用していない。
【０００６】
なお、単語Ｎグラムは、単語列を、連続したＮ個の単語で分割する手法を指すことがあるが、本発明では、その手法により単語列から１単語ずつずらしながら切り出して生成された単語群（連続したＮ個の単語）を、単語Ｎグラムと呼ぶものとする。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１８−２６０２９号公報
【特許文献２】再表２０１３−１７９３４６号公報（段落［０１６２］）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
前述したように、従来のシステムの設計開発では、ライン役席等による通常のレビューを行う場合でも、あるいは、より経験や知識が豊富な第三者によるレビューを行う場合でも、開発システムの品質確保は、レビュー者のスキルに依存するという体制であった。
【０００９】
従って、レビュー者の経験や知識に依存するので、レビューの標準化を行うことは困難であった。また、レビュー者の都合もあるので、設計が完了した段階で、即時レビューを実施することが困難な場合があった。さらに、開発ボリュームの増加、開発案件の増加により、レビュー者の時間確保が、より一層困難になってきているので、設計書のレビューの効率化が望まれていた。
【００１０】
なお、システムの設計開発において作成される設計書だけではなく、例えば、家電製品等の製品や商品の設計書、自動車や航空機等の乗り物の設計書、建築物の設計書等の様々な設計書についても、同様な開発体制をとっていれば、同様な問題が生じる可能性がある。
【００１１】
本発明の目的は、設計書を自動分析し、設計書のレビューの効率化を図ることができる障害予兆検知システムおよびプログラムを提供するところにある。
【課題を解決するための手段】
【００１２】
本発明は、設計書の記載内容から障害発生の予兆を検知する処理を実行するコンピュータにより構成された障害予兆検知システムであって、
過去障害についての現象および原因を含む障害情報を、障害管理番号と関連付けて記憶する原障害一覧記憶手段と、
この原障害一覧記憶手段に記憶された障害情報のうちの少なくとも現象および原因を含む部分を用いて、Ｎを２以上とする単語Ｎグラム用の障害情報の単語列を生成するか、または、この障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラムの集合を生成する処理を実行する障害情報単語列生成手段と、
この障害情報単語列生成手段により生成した障害情報の単語列または障害情報の単語Ｎグラムの集合を、障害情報とともに、障害管理番号と関連付けて記憶する障害一覧記憶手段と、
過去障害に関連するチェック項目を含むチェック情報を、障害管理番号と関連付けて記憶するチェックリスト記憶手段と、
障害予兆検知の対象となる設計書のデータから文章を抽出する処理を実行する設計書文章抽出手段と、
この設計書文章抽出手段により抽出した設計書文章を用いて、障害情報の単語ＮグラムのＮと同数のＮによる単語Ｎグラム用の設計書の単語列を生成するか、または、この設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラムの集合を生成する処理を実行する設計書単語列生成手段と、
この設計書単語列生成手段により生成した設計書の単語列または設計書の単語Ｎグラムの集合を記憶する設計書単語列記憶手段と、
この設計書単語列記憶手段に記憶された設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラム、または設計書の単語Ｎグラムの集合から取得した設計書の単語Ｎグラムの各々を、単語Ｎグラムマッチング検索要求用のクエリに含ませて送出するとともに、クエリに対する検索結果を受け取る単語Ｎグラムマッチング要求処理を実行する単語Ｎグラム単位検知処理手段と、
この単語Ｎグラム単位検知処理手段から送出されたクエリを受け取り、クエリに含まれる設計書の単語Ｎグラムについて、障害一覧記憶手段に記憶された障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または障害情報の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの中に一致する障害情報の単語Ｎグラムがあるか否かを判断し、一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、クエリに対する検索結果として単語Ｎグラム単位検知処理手段に返す単語Ｎグラムマッチング検索処理を実行する検索手段と、
この検索手段による検索結果として単語Ｎグラム単位検知処理手段が受け取った障害管理番号を用いて、チェックリスト記憶手段に記憶されているチェック情報を取得し、取得したチェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する処理を実行する検知結果出力手段と
を備えたことを特徴とするものである。
【００１３】
ここで、「障害管理番号」は、０，１，２，３等の数字により構成されていてもよく、アルファベットやギリシャ文字や日本語（ひらがな、カタカナ、漢字を含む。）等の文字により構成されていてもよく、数字と文字との組合せにより構成されていてもよく、本発明では、障害情報を識別するための識別情報として用いている。
【００１４】
このような本発明の障害予兆検知システムにおいては、過去障害についての障害情報および設計書の記載内容を用いて設計書を自動分析し、過去障害に紐付くチェック項目を含むチェック情報を出力するか、または過去障害についての障害情報とそれに紐付くチェック項目を含むチェック情報とを出力するので、設計書のレビューの自動化を図ることが可能となる。
【００１５】
また、設計書のレビューの自動化の実現により、人に依存した品質確保体制からの脱却を図ることが可能となるので、従来の体制下におけるライン役席等の通常のレビュー者や、第三者レビューを行うレビュー者は、その分だけ、時間的な拘束が少なくなるか、無くなることから、レビュー者の負担を軽減することが可能となるうえ、レビュー者の都合を考慮する必要性が少なくなるか、無くなるため、即時レビューの実施も可能となる。
【００１６】
さらに、設計書のレビューの自動化の実現により、レビュー者の経験や知識に頼る場合に比べ、一定レベルのレビュー品質の確保や、レビューの標準化が図られる。
【００１７】
そして、過去障害に紐付くチェック項目を含むチェック情報が出力されるので、障害発生の未然防止を図ることも可能となる。
【００１８】
また、Ｎを２以上とする単語Ｎグラム（連続するＮ個の単語）によるマッチングを行うので、単なるＮグラム（単語ではなく、連続するＮ個の文字）によるマッチングや、Ｎを１とする単語Ｎグラム（単語ユニグラム：単語Ｕｎｉ−ｇｒａｍ）によるマッチングを行う場合に比べ、設計書の記載内容の自動分析の精度、すなわち障害予兆検知の精度を向上させることが可能となり、これらにより前記目的が達成される。
【００１９】
＜頻出語スキップ処理を実行する構成＞
【００２０】
また、前述した障害予兆検知システムにおいて、
障害情報単語列生成手段は、
障害一覧記憶手段に記憶させる障害情報の中から抽出した各単語の累積出現回数を求め、求めた各単語の累積出現回数を単語累積出現回数記憶手段に記憶させる処理も実行する構成とされ、
単語累積出現回数記憶手段に記憶された単語のうち、累積出現回数が閾値を超えるか、または閾値以上となっている頻出語を取得する処理を実行する頻出語取得手段を備え、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理を実行する前に、クエリに含ませて送出する対象となっている設計書の単語Ｎグラムを構成するＮ個の単語の中に、頻出語取得手段により取得した頻出語が含まれているか否かを判断し、含まれている場合には、単語Ｎグラムマッチング要求処理を行わない頻出語スキップ処理を実行する構成とされていることが望ましい。
【００２１】
このように頻出語スキップ処理を実行する構成とした場合には、頻出語をノイズとみなした処理を実現することが可能となり、障害予兆検知の精度を向上させることが可能となる。従って、単語群（連続するＮ個の単語をその順番を保って並べた状態の単語列）としての単語Ｎグラムで見た場合に、出現回数の多い単語群は、設計書の記載内容の自動分析を行ううえで重要な要素であると捉える一方、単語群ではなく、１つの単語で見た場合の頻出語は、ノイズであるとみなす取り扱いを実現することが可能となる。このため、Ｎを２以上とする単語Ｎグラム（連続するＮ個の単語）によるマッチングを採用することによる設計書の記載内容の自動分析の精度向上効果、すなわち障害予兆検知の精度向上効果を、より一層顕著なものとすることができる。
【００２２】
＜プログラムＩＤ・ジョブＩＤ基準判断処理を実行する構成＞
【００２３】
さらに、前述した障害予兆検知システムにおいて、
障害一覧記憶手段は、
障害情報の単語列または障害情報の単語Ｎグラムの集合に加え、障害情報として、障害が与える影響の大小を示す障害影響度と、プログラムＩＤおよび／またはジョブＩＤとを、障害管理番号と関連付けて記憶する構成とされ、
予め定められた大きな障害影響度と関連付けられて障害一覧記憶手段に記憶されているプログラムＩＤおよび／またはジョブＩＤを含む障害情報、並びに、対応する障害管理番号を取得してプログラムＩＤ・ジョブＩＤ記憶手段に記憶させる処理を実行するプログラムＩＤ・ジョブＩＤ取得手段を備え、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理に加え、
設計書の単語Ｎグラムをクエリに含ませて送出する前に、設計書の単語Ｎグラムの中に、プログラムＩＤ・ジョブＩＤ記憶手段に記憶されたプログラムＩＤおよび／またはジョブＩＤが含まれているか否かを判断し、含まれている場合に、当該プログラムＩＤおよび／または当該ジョブＩＤに対応する障害管理番号を、出力対象の障害管理番号として採用するプログラムＩＤ・ジョブＩＤ基準判断処理を実行する構成とされ、
検知結果出力手段は、
単語Ｎグラムマッチング要求処理で得られた障害管理番号と、プログラムＩＤ・ジョブＩＤ基準判断処理で得られた障害管理番号とを用いて、チェックリスト記憶手段に記憶されているチェック情報を取得し、それぞれの障害管理番号を用いて取得したチェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの障害管理番号に対応する障害情報を並べて出力する処理を実行する構成とされていることが望ましい。
【００２４】
ここで、「プログラムＩＤおよび／またはジョブＩＤ」とされているのは、障害一覧記憶手段に記憶される障害情報についての源泉データを管理する障害情報管理システムが、プログラムＩＤおよびジョブＩＤの双方を取り扱っている場合（障害情報の管理にプログラムＩＤおよびジョブＩＤの双方が使用されている場合）には、プログラムＩＤとジョブＩＤとのうちのいずれか一方でもよく、双方でもよいという趣旨であり、また、障害情報管理システムが、元々、プログラムＩＤとジョブＩＤとのうちのいずれか一方しか取り扱っていない場合には、取り扱っているほうの一方だけでよい趣旨である。
【００２５】
このようにプログラムＩＤ・ジョブＩＤ基準判断処理を実行する構成とした場合には、プログラムＩＤおよび／またはジョブＩＤを利用し、設計書の記載内容と過去障害とを紐付けることが可能となる。このため、コンピュータシステムの設計開発で作成される設計書の自動分析を、より一層精度よく行うことが可能となり、障害予兆検知の精度を、より一層向上させることが可能となる。
【００２６】
＜障害影響度毎の重みを用いてスコアを算出する構成＞
【００２７】
また、前述した障害予兆検知システムにおいて、
障害一覧記憶手段は、
障害情報の単語列または障害情報の単語Ｎグラムの集合に加え、障害情報として、障害が与える影響の大小を示す障害影響度を、障害管理番号と関連付けて記憶する構成とされ、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理として、障害影響度毎の重みを設計書の単語Ｎグラムとともにクエリに含ませて送出する処理を実行する構成とされ、
検索手段は、
単語Ｎグラムマッチング検索処理として、クエリに含まれる設計書の単語Ｎグラムと一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害影響度についての重みを用いて合致度を示すスコアを算出し、算出したスコアを、障害管理番号若しくはこの障害管理番号に加えて対応する障害情報とともに、クエリに対する検索結果として単語Ｎグラム単位検知処理手段に返す処理を実行する構成とされ、
検知結果出力手段は、
スコアを用いて、チェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する処理を実行する構成とされていることが望ましい。
【００２８】
ここで、「検知結果出力手段」における「スコアを用いて、チェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する」ことには、スコアの大きさに従ってチェック情報等を並べて出力すること、スコアの値とともにチェック情報等を出力すること、スコアの大きさが上位の障害管理番号に対応するチェック情報等を出力すること、スコアの大きさがユーザの指定した順位の障害管理番号に対応するチェック情報等を出力すること、これらの出力を組み合わせることが含まれる。
【００２９】
このように障害影響度毎の重みを用いてスコアを算出する構成とした場合には、クエリに含まれる設計書の単語Ｎグラムが、障害情報の単語Ｎグラムと一致したときに、当該障害情報の単語Ｎグラムが、大きな障害影響度に対応していれば、スコアが相対的に大きくなり、小さな障害影響度に対応していれば、スコアが相対的に小さくなるように調整することができるので、障害予兆検知の精度を、より一層向上させることが可能となる。
【００３０】
＜関連単語群を用いてマッチングを行う構成＞
【００３１】
さらに、前述した障害予兆検知システムにおいて、
原障害一覧記憶手段に記憶された複数の過去障害についての現象および原因を含む障害情報を用いて生成された単語列から１単語ずつずらしながら切り出した単語群を切り出した順番に並べた単語群の集合を学習データとして用いて、単語群どうしの間の関連性の学習処理を実行する関連単語群学習手段と、
この関連単語群学習手段による学習結果として得られた単語群の分散表現としての単語ベクトルを記憶する学習結果記憶手段とを備え、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理として、学習結果記憶手段に記憶された単語ベクトルを用いて、設計書の単語Ｎグラムから連想される関連単語群を求め、求めた関連単語群を、設計書の単語Ｎグラムとともにクエリに含ませて送出する処理を実行する構成とされ、
検索手段は、
単語Ｎグラムマッチング検索処理として、クエリに含まれる設計書の単語Ｎグラムと一致する障害情報の単語Ｎグラムがある場合、クエリに含まれる関連単語群と一致する障害情報の単語Ｎグラムがある場合、または、クエリに含まれる設計書の単語Ｎグラムと一致する障害情報の単語Ｎグラムがあり、かつ、クエリに含まれる関連単語群と一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、クエリに対する検索結果として単語Ｎグラム単位検知処理手段に返す処理を実行する構成とされていることが望ましい。
【００３２】
このように関連単語群を用いてマッチングを行う構成とした場合には、設計書の単語Ｎグラムと障害情報の単語Ｎグラムとのマッチングに加え、関連単語群と障害情報の単語Ｎグラムとのマッチングを行うことができるので、障害予兆検知の精度を、より一層向上させることが可能となる。
【００３３】
＜設計書の単語Ｎグラムについての重み、および関連単語群についての重みを用いてスコアを算出する構成＞
【００３４】
また、関連単語群を用いてマッチングを行う構成とした場合において、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理として、設計書の単語Ｎグラムについての重み、およびこの重みよりも小さい関連単語群についての重みを、設計書の単語Ｎグラムおよび関連単語群とともにクエリに含ませて送出する処理を実行する構成とされ、
検索手段は、
単語Ｎグラムマッチング検索処理として、クエリに含まれる設計書の単語Ｎグラムと一致する障害情報の単語Ｎグラムがある場合には、設計書の単語Ｎグラムについての重みを用いて合致度を示すスコアを算出し、クエリに含まれる関連単語群と一致する障害情報の単語Ｎグラムがある場合には、関連単語群についての重みを用いて合致度を示すスコアを算出し、クエリに含まれる設計書の単語Ｎグラムと一致する障害情報の単語Ｎグラムがあり、かつ、クエリに含まれる関連単語群と一致する障害情報の単語Ｎグラムがある場合には、設計書の単語Ｎグラムおよび関連単語群についての双方の重みを用いて合致度を示すスコアを算出し、算出したスコアを、障害管理番号若しくはこの障害管理番号に加えて対応する障害情報とともに、クエリに対する検索結果として単語Ｎグラム単位検知処理手段に返す処理を実行する構成とされ、
検知結果出力手段は、
スコアを用いて、チェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報を出力する処理を実行する構成とされていることが望ましい。
【００３５】
このように設計書の単語Ｎグラムについての重み、および関連単語群についての重みを用いてスコアを算出する構成とした場合には、クエリに含まれる設計書の単語Ｎグラムが、障害情報の単語Ｎグラムと一致したときには、スコアが相対的に大きくなり、クエリに含まれる関連単語群が、障害情報の単語Ｎグラムと一致したときには、スコアが相対的に小さくなるように調整することができるので、障害予兆検知の精度を、より一層向上させることが可能となる。
【００３６】
＜単語群出現頻度および単語群稀少度を用いて、設計書の単語Ｎグラムについての重み、および関連単語群についての重みを算出決定し、同じ設計書の単語Ｎグラムを含むクエリの送出の繰り返しを回避する構成＞
【００３７】
さらに、前述した設計書の単語Ｎグラムについての重み、および関連単語群についての重みを用いてスコアを算出する構成とした場合において、
設計書単語列生成手段は、
設計書の単語Ｎグラムの集合の中で、同じ単語群が出現する頻度を示す単語群出現頻度を求めるとともに、この単語群出現頻度を用いて単語群稀少度を求め、これらの単語群出現頻度および単語群稀少度を、単語群出現頻度記憶手段に記憶させる処理を実行する構成とされ、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理として、設計書の単語Ｎグラムについての重みを、関連単語群との相対的な重み付けのための基準重みに、当該設計書の単語Ｎグラムと同じ単語群について単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定するとともに、
関連単語群についての重みを、設計書の単語Ｎグラムとの相対的な重み付けのための基準重みに、当該関連単語群と同じ単語群について単語群出現頻度記憶手段に記憶されている単語群出現頻度および単語群稀少度を乗じることにより算出決定し、
同じ設計書の単語Ｎグラムを含むクエリを既に送出しているか否かを判断し、未だ送出していない場合には、算出決定した設計書の単語Ｎグラムについての重み、および関連単語群についての重みを、設計書の単語Ｎグラムおよび関連単語群とともにクエリに含ませて送出し、既に送出している場合には、クエリを送出しない処理を実行する構成とされていることが望ましい。
【００３８】
このように単語群出現頻度および単語群稀少度を用いて、設計書の単語Ｎグラムについての重み、および関連単語群についての重みを算出決定し、同じ設計書の単語Ｎグラムを含むクエリの送出の繰り返しを回避する構成とした場合には、検索手段による同じマッチング処理の繰り返しを回避することができ、演算速度の向上を図ることが可能となる。
【００３９】
＜単語Ｎグラム拡張マッチング要求処理を実行する構成＞
【００４０】
また、前述したプログラムＩＤ・ジョブＩＤ基準判断処理を実行する構成において、
プログラムＩＤ・ジョブＩＤ記憶手段は、
プログラムＩＤ・ジョブＩＤ取得手段により障害一覧記憶手段から取得したプログラムＩＤおよび／またはジョブＩＤを含む障害情報、障害管理番号、並びに、障害情報の単語列または障害情報の単語Ｎグラムの集合を関連付けて記憶する構成とされ、
単語Ｎグラム単位検知処理手段は、
単語Ｎグラムマッチング要求処理、およびプログラムＩＤ・ジョブＩＤ基準判断処理に加え、
プログラムＩＤ・ジョブＩＤ基準判断処理で採用した出力対象の障害管理番号に関連付けられてプログラムＩＤ・ジョブＩＤ記憶手段に記憶されている障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または障害情報の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの各々を、単語Ｎグラム拡張マッチング検索要求用のクエリに含ませて送出するとともに、この単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果を受け取る単語Ｎグラム拡張マッチング要求処理を実行する構成とされ、
検索手段は、
単語Ｎグラム単位検知処理手段から送出された単語Ｎグラム拡張マッチング検索要求用のクエリを受け取り、受け取ったクエリに含まれる障害情報の単語Ｎグラムについて、障害一覧記憶手段に記憶された障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または障害情報の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの中に一致する障害情報の単語Ｎグラムがあるか否かを判断し、一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて障害一覧記憶手段に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果として単語Ｎグラム単位検知処理手段に返す単語Ｎグラム拡張マッチング検索処理を実行する構成とされ、
検知結果出力手段は、
単語Ｎグラムマッチング要求処理で得られた障害管理番号と、プログラムＩＤ・ジョブＩＤ基準判断処理で得られた障害管理番号と、単語Ｎグラム拡張マッチング検索処理で得られた障害管理番号とを用いて、チェックリスト記憶手段に記憶されているチェック情報を取得し、それぞれの障害管理番号を用いて取得したチェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの障害管理番号に対応する障害情報を並べて出力する処理を実行する構成としてもよい。
【００４１】
このように単語Ｎグラム拡張マッチング要求処理を実行する構成とした場合には、プログラムＩＤ・ジョブＩＤ基準判断処理で得られた障害管理番号に対応する障害情報の単語列または障害情報の単語Ｎグラムの集合を利用し、障害情報の単語Ｎグラムを含む単語Ｎグラム拡張マッチング検索要求用のクエリを作成し、そのクエリに含まれる障害情報の単語Ｎグラムと、障害一覧記憶手段に記憶された障害情報の単語Ｎグラムとをマッチングさせる。従って、この単語Ｎグラム拡張マッチング要求処理（障害情報の単語Ｎグラムどうしのマッチング）は、プログラムＩＤ・ジョブＩＤ基準判断処理と、単語Ｎグラムマッチング要求処理（設計書の単語Ｎグラムと障害情報の単語Ｎグラムとのマッチング）とを融合した処理であるともいえるので、単語Ｎグラム単位検知処理手段は、異なる２系統の処理、およびそれらを融合した処理を行うことで、互いに関連する３系統の処理で、出力対象の障害管理番号を得ることが可能となる。
【００４２】
＜プログラムの発明＞
【００４３】
また、本発明のプログラムは、以上に述べた障害予兆検知システムとして、コンピュータを機能させるためのものである。
【００４４】
なお、上記のプログラムまたはその一部は、例えば、光磁気ディスク（ＭＯ）、コンパクトディスク（ＣＤ）、デジタル・バーサタイル・ディスク（ＤＶＤ）、フレキシブルディスク（ＦＤ）、磁気テープ、読出し専用メモリ（ＲＯＭ）、電気的消去および書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）、フラッシュディスク等の記録媒体に記録して保存や流通等させることが可能であるとともに、例えば、ＬＡＮ、ＭＡＮ、ＷＡＮ、インターネット、イントラネット、エクストラネット等の有線ネットワーク、あるいは無線通信ネットワーク、さらにはこれらの組合せ等の伝送媒体を用いて伝送することが可能であり、また、搬送波に載せて搬送することも可能である。さらに、上記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。
【発明の効果】
【００４５】
以上に述べたように本発明によれば、過去障害についての障害情報および設計書の記載内容を用いて設計書を自動分析し、過去障害に紐付くチェック項目を含むチェック情報を出力するか、または過去障害についての障害情報とそれに紐付くチェック項目を含むチェック情報とを出力するので、設計書のレビューの自動化を図ることができるため、人に依存した品質確保体制からの脱却、レビュー者の負担軽減、即時レビューの実施、一定レベルのレビュー品質の確保、レビューの標準化、障害発生の未然防止を図ることができるうえ、Ｎを２以上とする単語Ｎグラムによるマッチングを行うので、障害予兆検知の精度の向上を図ることができるという効果がある。
【図面の簡単な説明】
【００４６】
【図１】本発明の一実施形態の障害予兆検知システムの全体構成図。
【図２】前記実施形態のチェックリスト記憶手段およびその源泉データであるチェックリストの構成図。
【図３】前記実施形態の障害一覧記憶手段およびその源泉データである障害一覧ファイルの構成図。
【図４】前記実施形態の障害予兆検知結果の出力例を示す図。
【図５】前記実施形態のチェックリストの登録処理（準備処理の一部）の流れを示すフローチャートの図。
【図６】前記実施形態の障害一覧の登録処理（準備処理の一部）の流れを示すフローチャートの図。
【図７】前記実施形態の障害予兆検知処理の流れ（その１）を示すフローチャートの図。
【図８】前記実施形態の障害予兆検知処理の流れ（その２）を示すフローチャートの図。
【図９】前記実施形態の単語Ｎグラム（単語３グラム）の生成例を示す図。
【図１０】前記実施形態のプログラムＩＤ・ジョブＩＤに基づく出力対象の障害管理番号の決定処理の説明図。
【図１１】前記実施形態の頻出語の処理の詳細説明図。
【図１２】前記実施形態のクエリ（単語Ｎグラム単位検知処理手段から検索エンジンへの問合せ）の生成例を示す図。
【図１３】前記実施形態の検索エンジンによるクエリに対する応答結果の具体例を示す図。
【図１４】前記実施形態のクエリ（問合せ）に対する応答結果に含まれるスコア（合致度）の処理の詳細説明図。
【図１５】前記実施形態の関連単語群の学習処理の説明図。
【図１６】本発明の変形の形態を示す単語Ｎグラム拡張マッチング要求処理および単語Ｎグラム拡張マッチング検索処理の説明図。
【発明を実施するための形態】
【００４７】
以下に本発明の一実施形態について図面を参照して説明する。図１には、本実施形態の障害予兆検知システム１０の全体構成が示されている。図２には、チェックリスト記憶手段６１およびその源泉データであるチェックリストの構成が示され、図３には、障害一覧記憶手段３４およびその源泉データである障害一覧ファイルの構成が示されている。また、図４には、検知結果出力手段５６による障害予兆検知結果の出力例が示されている。さらに、図５には、チェックリストの登録処理（準備処理の一部）の流れ、図６には、障害一覧の登録処理（準備処理の一部）の流れ、図７および図８には、障害予兆検知処理の流れが、それぞれフローチャートで示されている。また、図９は、単語Ｎグラム（単語３グラム）の生成処理、図１０は、プログラムＩＤ・ジョブＩＤに基づく出力対象の障害管理番号の決定処理、図１１は、頻出語の処理の説明図である。図１２には、クエリ（単語Ｎグラム単位検知処理手段５５から検索エンジン３０への問合せ）の生成例が示され、図１３には、検索エンジン３０によるクエリに対する応答結果の具体例が示されている。さらに、図１４は、クエリ（問合せ）に対する応答結果に含まれるスコア（合致度）の処理、図１５は、関連単語群学習手段４３による関連単語群の学習処理の説明図である。
【００４８】
＜障害予兆検知システム１０の全体構成＞
【００４９】
図１において、障害予兆検知システム１０は、障害予兆検知に関する各種処理を実行するとともに各種処理に必要なデータを記憶する障害予兆検知サーバ２０を備え、この障害予兆検知サーバ２０には、ネットワーク１を介して共有ファイルサーバ７０、障害情報管理システム８０、チェックリスト管理システム９０、システム管理者が操作する１台または複数台の管理者端末１００、利用者が操作する１台または複数台の利用者端末１１０が接続されている。
【００５０】
ここで、ネットワーク１は、本実施形態では、例えば、社内ＬＡＮや社内イントラネット等の限定された領域内のネットワークであるが、インターネットのような広域のネットワークでもよく、有線であるか、無線であるか、有線・無線の混在型であるかは問わない。
【００５１】
障害予兆検知サーバ２０は、アプリケーションサーバおよびデータベースサーバとして機能するサーバであり、１台または複数台のコンピュータにより構成され、検索エンジン３０と、準備処理手段４０と、障害予兆検知処理手段５０と、チェックリスト記憶手段６１と、学習結果記憶手段６２と、プログラムＩＤ・ジョブＩＤ記憶手段６３と、頻出語記憶手段６４と、設計書単語列記憶手段６５と、単語群出現頻度記憶手段６６と、設定ファイル記憶手段６７と、出力対象記憶手段６８とを含んで構成されている。
【００５２】
検索エンジン３０は、障害情報単語列生成手段３１と、頻出語送信手段３２と、検索手段３３と、障害一覧記憶手段３４と、単語累積出現回数記憶手段３５とを含んで構成されている。この検索エンジン３０は、既存のオープン・ソース・ソフトウェア（以下、ＯＳＳという。）を改造して構築してもよく、あるいは、全機能を自ら構築してもよい。利用できるＯＳＳとしては、例えば、スコアリング機能を有する既存の検索エンジンであるアパッチ・ソーラ（Apache Solr）等がある。
【００５３】
準備処理手段４０は、障害予兆検知の対象となる設計書を用いた処理を行う前の準備処理を実行するものであり、チェックリスト登録手段４１と、障害一覧登録手段４２と、関連単語群学習手段４３とを含んで構成されている。
【００５４】
障害予兆検知処理手段５０は、障害予兆検知の対象となる設計書を用いた障害予兆検知処理を実行するものであり、設計書文章抽出手段５１と、プログラムＩＤ・ジョブＩＤ取得手段５２と、頻出語取得手段５３と、設計書単語列生成手段５４と、単語Nグラム単位検知処理手段５５と、検知結果出力手段５６とを含んで構成されている。
【００５５】
そして、検索エンジン３０に含まれる各手段３１〜３３、準備処理手段４０に含まれる各手段４１〜４３、および障害予兆検知処理手段５０に含まれる各手段５１〜５６は、障害予兆検知サーバ２０を構成するコンピュータ本体の内部に設けられた中央演算処理装置（ＣＰＵ）、およびこのＣＰＵの動作手順を規定する１つまたは複数のプログラム、並びに、主メモリやキャッシュメモリ等の作業用メモリ等により実現される。なお、これらの各手段３１〜３３，４１〜４３，５１〜５６の詳細は、後述する。
【００５６】
また、検索エンジン３０に含まれる障害一覧記憶手段３４および単語累積出現回数記憶手段３５、並びに、チェックリスト記憶手段６１、学習結果記憶手段６２、および設定ファイル記憶手段６７は、例えばハードディスクドライブ（ＨＤＤ）やソリッドステートドライブ（ＳＳＤ）等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、ＤＶＤ、ＣＤ、ＭＯ、磁気テープ等の他の記録媒体を採用してもよい。また、各記憶手段３４，３５，６１，６２，６７のデータ保存形式は、任意であり、例えば、データベースでもよく、フラットファイルやその他のデータファイル等によるファイル形式でもよい。データベースとする場合には、各記憶手段３４，３５，６１，６２，６７をそれぞれ別々のデータベースとしてもよく、１つまたは幾つかのデータベース内の異なるテーブルとしてもよい。検索エンジン３０として、例えば、既存のツールであるアパッチ・ソーラ（Apache Solr）を改造して利用する場合には、障害一覧記憶手段３４および単語累積出現回数記憶手段３５は、ファイル形式のライブラリとなる。なお、これらの各記憶手段３４，３５，６１，６２，６７の詳細は、後述する。
【００５７】
一方、プログラムＩＤ・ジョブＩＤ記憶手段６３、頻出語記憶手段６４、設計書単語列記憶手段６５、単語群出現頻度記憶手段６６、および出力対象記憶手段６８は、アプリケーションプログラム（例えば、Ｊａｖａ（登録商標）等の言語により記述されたプログラム）で使用する主メモリやキャッシュメモリ等の作業用メモリにより実現される。但し、これらの各記憶手段６３，６４，６５，６６，６８は、不揮発性メモリにより実現してもよい。なお、これらの各記憶手段６３，６４，６５，６６，６８の詳細は、後述する。
【００５８】
共有ファイルサーバ７０は、障害予兆検知に関する各種処理で用いる各種のファイルを格納するサーバであり、１台または複数台のコンピュータにより構成され、加工後チェックリストファイル記憶手段７１と、障害一覧ファイル記憶手段７２と、設計書ファイル記憶手段７３と、設計書文章ファイル記憶手段７４と、障害予兆検知結果ファイル記憶手段７５とを含んで構成されている。これらの各記憶手段７１〜７５は、具体的には、それぞれのファイルを格納するフォルダ（ディレクトリ）であり、例えばハードディスクドライブ（ＨＤＤ）やソリッドステートドライブ（ＳＳＤ）等により好適に実現される。
【００５９】
障害情報管理システム８０は、システム（本システムではなく、過去に開発された多数のシステムのことであるが、その中に本システムが含まれていてもよい。）に発生した過去の障害情報を管理するシステムであり、１台または複数台のコンピュータにより構成され、原障害一覧記憶手段８１を備えている。この原障害一覧記憶手段８１は、例えばハードディスクドライブ（ＨＤＤ）やソリッドステートドライブ（ＳＳＤ）等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、ＤＶＤ、ＣＤ、ＭＯ、磁気テープ等の他の記録媒体を採用してもよい。また、原障害一覧記憶手段８１のデータ保存形式は、任意であり、例えば、データベースでもよく、フラットファイルやその他のデータファイル等によるファイル形式でもよい。なお、原障害一覧記憶手段８１の詳細は、図３を用いて後述する。
【００６０】
チェックリスト管理システム９０は、例えば、概要設計、詳細設計、開発等の各作業工程におけるチェック項目を含むチェック情報を管理するシステムであり、１台または複数台のコンピュータにより構成され、原チェックリスト記憶手段９１を備えている。この原チェックリスト記憶手段９１は、例えばハードディスクドライブ（ＨＤＤ）やソリッドステートドライブ（ＳＳＤ）等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、ＤＶＤ、ＣＤ、ＭＯ、磁気テープ等の他の記録媒体を採用してもよい。また、原チェックリスト記憶手段９１のデータ保存形式は、任意であり、例えば、データベースでもよく、フラットファイルやその他のデータファイル等によるファイル形式でもよい。なお、原チェックリスト記憶手段９１の詳細は、図２を用いて後述する。
【００６１】
管理者端末１００および利用者端末１１０は、コンピュータにより構成され、例えばマウスやキーボード等の入力手段と、例えば液晶ディスプレイ等の表示手段とを備えている。これらの端末１００，１１０は、必要な機能を備えていれば、例えば、スマートフォン、タブレット端末、携帯情報端末（ＰＤＡ）等の携帯機器でもよい。
【００６２】
また、管理者端末１００は、障害関連チェックリスト抽出手段１０１を備えている。この障害関連チェックリスト抽出手段１０１は、例えば、表計算ソフトウェアのマクロ機能等により実現することができる。なお、障害関連チェックリスト抽出手段１０１の詳細は、後述する。
【００６３】
＜障害予兆検知サーバ２０の詳細構成＞
【００６４】
＜障害予兆検知サーバ２０／検索エンジン３０／障害情報単語列生成手段３１の構成＞
【００６５】
障害情報単語列生成手段３１は、障害情報管理システム８０の原障害一覧記憶手段８１に記憶された障害情報のうちの少なくとも現象および原因を含む部分を用いて、［Ａ］Ｎを２以上とする単語Ｎグラム用の障害情報の単語列を生成するか、または、［Ｂ］この障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラムの集合を生成し、生成した［Ａ］の場合の「障害情報の単語列」または［Ｂ］の場合の「障害情報の単語Ｎグラムの集合」を、障害一覧記憶手段３４に記憶させる処理を実行するものである。本実施形態では、一例として、単語３グラム（単語Ｔｒｉ−ｇｒａｍ）とする。また、単語３グラムとするのは、一例として、障害情報のうちの現象および原因だけとするが、顧客向けに記載された現象および原因があれば、それらも含めて単語３グラムとする。
【００６６】
本実施形態では、図６に示すように、管理者が管理者端末１００を操作することにより、障害情報管理システム８０の原障害一覧記憶手段８１に記憶された障害情報が、障害一覧ファイル（例えばＣＳＶファイル）として出力され、管理者端末１００を経由して共有ファイルサーバ７０の障害一覧ファイル記憶手段７２に配置され、そこから障害予兆検知サーバ２０の障害一覧登録手段４２により障害一覧ファイルが取得され、検索エンジン３０への障害一覧の登録処理が行われるので、障害情報単語列生成手段３１は、取得した障害一覧ファイル内の障害情報のうちの現象および原因を用いるか、または検索エンジン３０の障害一覧記憶手段３４に登録された障害情報のうちの現象および原因を用いて、［Ａ］単語列を生成し、若しくは［Ｂ］単語３グラムの集合を生成する処理を実行する。
【００６７】
具体的には、障害情報単語列生成手段３１は、障害情報のうちの現象および原因（顧客向けに記載された現象および原因がある場合には、それらも含む。）について、［Ａ］形態素解析を行うことにより、名詞のみを抽出し、抽出した名詞のみの単語列を生成し、障害一覧記憶手段３４に記憶させるか、または、［Ｂ］名詞のみの単語列から１単語（１名詞）ずつずらしながら切り出した障害情報（本実施形態では、障害情報のうちの現象および原因）の単語３グラムの集合を生成し、得られた複数の単語３グラムを切り出した順番に並べて障害一覧記憶手段３４に記憶させる処理を実行する。
【００６８】
例えば、図９に示すように、障害一覧の現象・原因についての「条件付信用返済注文入力画面における一部返済指定をＭＡＸＡＳに不正注文…」というテキストデータがある場合には、ここから「条件  付  信用  返済  注文  入力  画面  一部  返済  指定  ＭＡＸＡＳ  不正  注文  …」という単語列を生成するか、または、さらにこの単語列から「条件  付  信用」、「付  信用  返済」、「信用  返済  注文」、「返済  注文  入力」、「注文  入力  画面」、…という単語３グラムの順列集合（並び順を保持した集合）を生成する。
【００６９】
また、障害情報単語列生成手段３１は、障害一覧記憶手段３４に記憶させる障害情報（本実施形態では、障害情報のうちの現象および原因）の中から抽出した各単語（各名詞）の累積出現回数を求め、求めた各単語の累積出現回数を、単語累積出現回数記憶手段３５（図１１参照）に記憶させる処理も実行する。ここでの累積出現回数は、図１１に示すように、障害一覧記憶手段３４に記憶させる全ての過去障害（全ての障害管理番号）についての障害情報（本実施形態では、現象および原因）における出現回数の累積値である。
【００７０】
＜障害予兆検知サーバ２０／検索エンジン３０／頻出語送信手段３２の構成＞
【００７１】
頻出語送信手段３２は、頻出語取得手段５３からの要求に応じ、単語累積出現回数記憶手段３５（図１１参照）に記憶されている各単語（各名詞）のうち、累積出現回数が、頻出語取得手段５３からの要求として指定されている閾値（例えば１００回）以上であるか、または閾値を超える単語（名詞）を、頻出語取得手段５３に渡す処理を実行するものである。なお、頻出語送信手段３２は、全ての単語（名詞）およびそれらの各単語の累積出現回数を、頻出語取得手段５３に渡す処理を実行してもよい。
【００７２】
＜障害予兆検知サーバ２０／検索エンジン３０／検索手段３３の構成＞
【００７３】
検索手段３３は、単語Ｎグラムマッチング検索処理として、単語Ｎグラム単位検知処理手段５５から送出された単語Ｎグラムマッチング検索要求用のクエリを受け取り、このクエリに含まれる設計書の単語Ｎグラムについて、［Ａ］障害一覧記憶手段３４に記憶された障害情報（本実施形態では、障害情報のうちの現象および原因）の単語列から１単語ずつずらしながら切り出した障害情報（現象・原因）の単語Ｎグラムの中に一致する障害情報（現象・原因）の単語Ｎグラムがあるか否かを判断し、または、［Ｂ］障害一覧記憶手段３４に記憶された障害情報（現象・原因）の単語Ｎグラムの集合から順番に取得した障害情報（現象・原因）の単語Ｎグラムの中に一致する障害情報（現象・原因）の単語Ｎグラムがあるか否かを判断し、一致する障害情報（現象・原因）の単語Ｎグラムがある場合に、当該障害情報（現象・原因）の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて障害一覧記憶手段３４に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、単語Ｎグラムマッチング検索要求用のクエリに対する検索結果（応答結果）として単語Ｎグラム単位検知処理手段５５に返す処理を実行するものである。本実施形態では、障害情報（現象・原因）については、一例として単語３グラム（Ｎ＝３）とするので、これに合わせて、マッチングを行う相手方となる設計書についても、単語３グラム（Ｎ＝３）とする。
【００７４】
なお、［Ａ］の処理と、［Ｂ］の処理との相違は、障害一覧記憶手段３４に記憶されているのが、［Ａ］の場合には障害情報（現象・原因）の単語列であり、［Ｂ］の場合には障害情報（現象・原因）の単語Ｎグラムの集合であることから生じる相違である。すなわち、単語列からの単語Ｎグラムの切り出し処理を、検索手段３３により実行するか（［Ａ］の場合）、障害情報単語列生成手段３１により実行するか（［Ｂ］の場合）の相違である。
【００７５】
また、検索手段３３は、単語Ｎグラムマッチング検索処理として、単語Ｎグラムマッチング検索要求用のクエリに、設計書の単語Ｎグラムから連想される関連単語群が含まれている場合には、その関連単語群と一致する障害情報（現象・原因）の単語Ｎグラムがあるか否かの判断も行い、一致する障害情報（現象・原因）の単語Ｎグラムがある場合には、設計書の単語Ｎグラムとのマッチングの場合と同様にして、検索結果（応答結果）を単語Ｎグラム単位検知処理手段５５に返す処理を実行する。本実施形態では、設計書の単語Ｎグラムは、単語３グラムとするので、これに合わせて、関連単語群も、３つの単語（名詞）を並び順を考慮して連結した単語群となる。例えば、「国内  株式  買」と「株式  買  国内」とは、３つの単語の並び順が異なるので、異なる関連単語群である。
【００７６】
さらに、検索手段３３は、単語Ｎグラムマッチング検索処理として、設計書の単語Ｎグラムについてのフレーズあいまい検索も実行する。このフレーズあいまい検索は、設計書の単語Ｎグラムを構成するＮ個の単語（本実施形態では、３つの単語）が離れていることも許容しつつ、単語Ｎグラムの切り出しを行う前の状態の障害情報（現象・原因）の単語列の中に、Ｎ個の単語（３つの単語）が含まれるか否かを判断する検索であり、クエリで指定された許容範囲を示す語数（例えば、連続する１００単語）の中にＮ個の単語（３つの単語）が収まっていれば、合致すると判断する検索である。この際、Ｎ個の単語（３つの単語）の並び順を考慮する必要はなく、どのような順番でも、Ｎ個の単語（３つの単語）が、許容範囲を示す語数（例えば、連続する１００単語）の中に収まっていればよい。そして、合致した場合には、その合致した単語列に関連付けられて障害一覧記憶手段３４に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報を、単語Ｎグラムマッチング検索要求用のクエリに対する検索結果（応答結果）として単語Ｎグラム単位検知処理手段５５に返す処理を実行する。
【００７７】
また、検索手段３３は、クエリで指定された重みを用いたスコア（合致度）の算出処理を行い、算出したスコアを、検索された障害管理番号等とともに、単語Ｎグラムマッチング検索要求用のクエリに対する検索結果（応答結果）として単語Ｎグラム単位検知処理手段５５に返す処理も実行する。検索エンジン３０として、例えば、既存のツールであるアパッチ・ソーラ（Apache Solr）を改造して利用する場合には、クエリに含まれる検索対象（本実施形態では、設計書の単語Ｎグラムや関連単語群）とのマッチングが行われる文章（本実施形態では、障害情報である現象および原因の単語列）の長さが短い程、スコアが高くなり、また、マッチングが行われる文章（本実施形態では、障害情報である現象および原因の単語列）中における検索対象（本実施形態では、設計書の単語Ｎグラムや関連単語群）の出現回数が多い程、スコアが高くなるが、これを改造し、マッチングが行われる文章の長短に関係なく、かつ、検索対象の出現回数が多いか少ないかに関係なく、基本のスコアが１（１点）になるように調整（変更）している。従って、検索手段３３により算出されるスコアの大小は、以下の重みに左右されるように調整している。
【００７８】
先ず、重みには、障害影響度毎の重みがある。障害影響度は、システムに発生した障害が与える影響の大きさを示す指標であり、本実施形態では、大きい方から順に、例えば、Ｓ，Ａ，Ｂ，Ｃ，Ｄとなっている。図１２に示すように、例えば、クエリに含まれる設計書の単語Ｎグラム（関連単語群の場合や、フレーズあいまい検索の場合も同様）が、障害影響度Ｓに対応する障害情報（本実施形態では、現象および原因）の単語Ｎグラムと合致した場合にスコアを１０倍にするために、障害影響度Ｓの重みをＷＳ＝１０倍とし、障害影響度Ａに対応する障害情報（現象・原因）の単語Ｎグラムと合致した場合にスコアを５倍にするために、障害影響度Ａの重みをＷＡ＝５倍とし、同様に、障害影響度Ｂの重みをＷＢ＝３倍とし、障害影響度Ｃの重みをＷＣ＝２倍とし、障害影響度Ｄの重みをＷＤ＝１倍とする等の設定を行うことができる。従って、大きな障害影響度に対応する障害情報（現象・原因）に合致する程、スコアが大きくなるように設定することができる。このような障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤは、管理者が管理者端末１００を操作して設定変更可能なように設定ファイルに格納されて設定ファイル記憶手段６７に記憶されている。図１２の例では、クエリに含まれる「ｉｍｐａｃｔ」は、障害影響度を示し、「＾」は、重みを示している。
【００７９】
次に、重みには、クエリに含まれる検索対象の種類に応じた重みがあり、設計書の単語Ｎグラムについての重みＷＦと、関連単語群についての重みＷＲと、フレーズあいまい検索についての重みＷＶとがある。フレーズあいまい検索を行わない場合には、フレーズあいまい検索についての重みＷＶの設定は省略してもよい。これらの重みＷＦ，ＷＲ，ＷＶは、設計書の単語Ｎグラムが合致した場合と、関連単語群が合致した場合と、フレーズあいまい検索で合致した場合とで、スコアが異なるようにするための相対的な重み付けである。図１２に示すように、例えば、設計書の単語Ｎグラムが、障害情報（本実施形態では、現象および原因）の単語Ｎグラムと合致した場合にスコアを２倍にするために、設計書の単語Ｎグラムについての重みをＷＦ＝２倍とし、関連単語群が、障害情報（現象・原因）の単語Ｎグラムと合致した場合にスコアを１倍にするために、関連単語群についての重みをＷＲ＝１倍とする等の設定を行うことができる。図１２の例では、１つのクエリの中に、１つの設計書の単語Ｎグラム、および４つの関連単語群を含ませているが、４つの関連単語群の各々についての重みＷＲは同じである。図１２の例では、クエリに含まれる「ｉｍｐａｃｔ＿ｃａｕｓｅ＿ｎｇｒａｍ」は、検索対象である現象・原因（より正確には、検索対象である設計書の単語Ｎグラムやその関連単語群とマッチングする対象としての障害情報のうちの現象および原因）を示している。
【００８０】
また、上述した設計書の単語Ｎグラムについての重みＷＦ、関連単語群についての重みＷＲ、フレーズあいまい検索についての重みＷＶは、これらの相対的な重み付けのための基準重みだけを考慮した状態であり、実際には、単語Ｎグラム単位検知処理手段５５により、それぞれの基準重みに、単語群の出現頻度を示す指標であるＴＦ（Term Frequency）および単語群の稀少度を示す指標であるＩＤＦ（Inverse Document Frequency、逆文書頻度であり、ｌｏｇ（単語群の数／ＴＦ））が乗じられることにより、それぞれの重みＷＦ，ＷＲ，ＷＶが算出決定される。従って、この算出決定処理については、単語Ｎグラム単位検知処理手段５５の構成の説明で後述する。これらのＷＦ，ＷＲ，ＷＶ算出用の基準重みは、管理者が管理者端末１００を操作して設定変更可能なように設定ファイルに格納されて設定ファイル記憶手段６７に記憶されている。図１２の例では、ＴＦやＩＤＦを省略して基準重みだけとした場合のＷＦ，ＷＲを含むクエリが示されている。
【００８１】
さらに、以上に述べた障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤと、設計書の単語Ｎグラム・関連単語群・フレーズあいまい検索についての重みＷＦ，ＷＲ，ＷＶとは、同時に重複して適用することができる。図１２の例でも、クエリの中でＡＮＤを使用することにより、同時に重複して適用している。従って、例えば、クエリに含まれる設計書の単語Ｎグラムが、障害情報（現象・原因）の単語Ｎグラムと合致した場合には、設計書の単語Ｎグラムについての重みＷＦにより、スコアが２倍になり、さらに、合致した障害情報（現象・原因）の単語Ｎグラムが、障害影響度Ｓに対応している場合には、障害影響度Ｓの重みＷＳにより、スコアが１０倍になるので、ＷＦ×ＷＳ＝２×１０＝２０倍になる。また、例えば、クエリに含まれる関連単語群が、障害情報（現象・原因）の単語Ｎグラムと合致した場合には、関連単語群についての重みＷＲにより、スコアが１倍になり、さらに、合致した障害情報（現象・原因）の単語Ｎグラムが、障害影響度Ｂに対応している場合には、障害影響度Ｂの重みＷＢにより、スコアが３倍になるので、１×３＝３倍になる。
【００８２】
また、検索手段３３は、プログラムＩＤ・ジョブＩＤ取得手段５２により送出されるプログラムＩＤ・ジョブＩＤ検索要求用のクエリを受け取り、このクエリに含まれる指定された障害影響度（本実施形態では、一例として、障害影響度Ｓ，Ａの２つを、大きな障害影響度として指定するものとする。）に対応するプログラムＩＤおよび／またはジョブＩＤを検索し、障害影響度Ｓ，ＡのプログラムＩＤおよび／またはジョブＩＤ、並びに、対応する障害管理番号、障害情報（現象および原因を含む。）、現象・原因の単語列またはこの単語列から切り出した単語Ｎグラム（本実施形態では、単語３グラム）の集合を、プログラムＩＤ・ジョブＩＤ検索要求用のクエリに対する検索結果（応答結果）としてプログラムＩＤ・ジョブＩＤ取得手段５２に返す処理を実行する。
【００８３】
＜障害予兆検知サーバ２０／検索エンジン３０／障害一覧記憶手段３４の構成＞
【００８４】
障害一覧記憶手段３４は、図３に示すように、例えば、障害管理番号、タイトル、現象、原因、現象・原因の単語列またはこの単語列から１単語ずつずらしながら切り出した単語Ｎグラム（本実施形態では、単語３グラム）の集合、再発防止策、障害影響度、プログラムＩＤ、ジョブＩＤ等を関連付けて記憶するものである。また、図示は省略されているが、障害一覧記憶手段３４には、障害情報として、顧客向けの記載とされた現象や原因も記憶されている。さらに、プログラムＩＤやジョブＩＤがないレコードも存在する。ここで、レコードは、必ずしもデータベースのテーブルを構成するレコードという意味ではなく、１つの障害管理番号に関連付けられて管理される情報の記録単位という意味のレコードである。
【００８５】
このうち、現象・原因（顧客向けの現象・原因も含む）の単語列またはこの単語列から１単語ずつずらしながら切り出した単語Ｎグラム（本実施形態では、単語３グラム）の集合は、障害情報単語列生成手段３１により生成されたものであり、その他の情報は、障害情報管理システム８０の原障害一覧記憶手段８１に記憶された障害情報と同じであり、従って、共有ファイルサーバ７０の障害一覧ファイル記憶手段７２に記憶される障害一覧ファイルの内容と同じである。
【００８６】
＜障害予兆検知サーバ２０／検索エンジン３０／単語累積出現回数記憶手段３５の構成＞
【００８７】
単語累積出現回数記憶手段３５は、図１１に示すように、障害一覧記憶手段３４（図３参照）に記憶させる障害情報（本実施形態では、障害情報のうちの現象および原因）の中から障害情報単語列生成手段３１により抽出した各単語（各名詞）と、それらの各単語の累積出現回数とを対応させて記憶するものである。
【００８８】
＜障害予兆検知サーバ２０／準備処理手段４０／チェックリスト登録手段４１の構成＞
【００８９】
チェックリスト登録手段４１は、共有ファイルサーバ７０の加工後チェックリストファイル記憶手段７１に加工後チェックリストファイルが格納されているか否かを監視し、格納されている場合には、その加工後チェックリストファイルをネットワーク１を介して取得し、取得した加工後チェックリストファイルの内容情報を、チェックリスト記憶手段６１（図２参照）に記憶させる処理を実行するものである。
【００９０】
＜障害予兆検知サーバ２０／準備処理手段４０／障害一覧登録手段４２の構成＞
【００９１】
障害一覧登録手段４２は、共有ファイルサーバ７０の障害一覧ファイル記憶手段７２に障害一覧ファイルが格納されているか否かを監視し、格納されている場合には、その障害一覧ファイルをネットワーク１を介して取得し、取得した障害一覧ファイルの内容情報を、検索エンジン３４の障害一覧記憶手段３４（図３参照）に記憶させるとともに、障害情報（現象・原因）の単語列またはこの単語列から１単語ずつずらしながら切り出した単語Ｎグラム（単語３グラム）の生成処理を行わせるために、取得した障害一覧ファイルの内容情報を、障害情報単語列生成手段３１に渡す処理を実行するものである。
【００９２】
＜障害予兆検知サーバ２０／準備処理手段４０／関連単語群学習手段４３の構成＞
【００９３】
関連単語群学習手段４３は、単語群（並び順を考慮したＮ個の単語の集合）どうしの間の関連性の学習処理を行い、得られた学習結果のデータを、学習結果記憶手段６２に記憶させる処理を実行するものである。本実施形態では、単語３グラムのマッチング処理を行うので、並び順を考慮した３つの単語からなる単語群どうしの間の関連性の学習処理を実行する。
【００９４】
ここで、学習結果として得られるデータは、単語群の分散表現としての単語ベクトルを、重なりのないユニークな単語群の数（ボキャブラリ数）だけ集合させて構成された重み行列である。なお、単語の分散表現ではなく、単語群の分散表現であるため、単語群ベクトルと呼んでもよいものである。従って、単語群の分散表現としての単語ベクトル（単語群ベクトル）を得ることができれば、いずれのアルゴリズムによる機械学習を行ってもよく、例えば、ワード・ツー・ベック（ｗｏｒｄ２ｖｅｃ）であるコンティニュアス・バッグ・オブ・ワード（ＣＢＯＷ）やスキップ・グラム（Ｓｋｉｐ−ｇｒａｍ）、あるいは、グローヴ（ＧｌｏＶｅ）、リカレント・ニューラル・ネットワーク（ＲＮＮ）の１種であるロング・ショート・ターム・メモリ（ＬＳＴＭ）によるエルモ（ＥＬＭｏ）等のアルゴリズムを採用することができる。
【００９５】
学習に使用する学習データは、次のようにして用意したものである。先ず、障害情報管理システム８０の原障害一覧記憶手段８１に記憶された複数（多数）の過去障害についての障害情報（本実施形態では、障害情報のうちの現象および原因であり、顧客向けに記載された現象および原因がある場合には、それらも含む。）を用いて、それぞれの障害情報（現象・原因）についての単語列を生成する。次に、生成した単語列から１単語ずつずらしながら切り出した単語群を、切り出した順番の通りに並べた単語群の集合を形成し、これを学習データとする。なお、検索エンジン３０の障害一覧記憶手段３４（図３参照）に記憶されている現象・原因（顧客向けを含む）の単語列またはこの単語列から１単語ずつずらしながら切り出した単語群の集合を、学習データとして用いてもよい。
【００９６】
従って、図１５に示すように、単語ではなく、単語群（並び順を考慮した３つの単語の集合）を１つの要素とし、この単語群を、ニューラル・ネットワーク（ＮＮ）の入力層、出力層の各ノードに対応する要素として用いることにより、機械学習を行っている。このため、ウィンドウサイズである前後の要素数（例えば、前後１０個の要素）も、連続する単語群の数（例えば、前後１０個の単語群）となる。よって、単語群を構成するＮ個（本実施形態では、３つ）の単語について、それらの単語の並び順が考慮され、さらに、単語群の集合についても、それらの単語群の並び順を考慮した状態で、学習データとして用いられる。
【００９７】
＜障害予兆検知サーバ２０／障害予兆検知処理手段５０／設計書文章抽出手段５１の構成＞
【００９８】
設計書文章抽出手段５１は、障害予兆検知の対象となる設計書のデータから文章を抽出する処理を実行するものである。具体的には、本実施形態では、設計書文章抽出手段５１は、共有ファイルサーバ７０の設計書ファイル記憶手段７３に設計書ファイルが格納されているか否かを監視し、格納されている場合には、その設計書ファイルをネットワーク１を介して取得し、取得した設計書ファイルの内容データから、文章データを抽出する処理を行い、抽出した文章データを格納した設計書文章ファイルを作成し、作成した設計書文章ファイルを、ネットワーク１を介して共有ファイルサーバ７０へ送信し、設計書文章ファイル記憶手段７４に配置する処理を実行する。
【００９９】
＜障害予兆検知サーバ２０／障害予兆検知処理手段５０／プログラムＩＤ・ジョブＩＤ取得手段５２の構成＞
【０１００】
プログラムＩＤ・ジョブＩＤ取得手段５２は、予め定められた大きな障害影響度（本実施形態では、一例として、障害影響度Ｓ，Ａとする。）と関連付けられて障害一覧記憶手段３４に記憶されているプログラムＩＤおよび／またはジョブＩＤを含む障害情報、並びに、対応する障害管理番号を取得してプログラムＩＤ・ジョブＩＤ記憶手段６３に記憶させる処理を実行するものである。
【０１０１】
具体的には、本実施形態では、プログラムＩＤ・ジョブＩＤ取得手段５２は、検索エンジン３０に向けて、プログラムＩＤ・ジョブＩＤ検索要求用のクエリ（障害影響度Ｓ，Ａの指定を含む）を送出し、検索エンジン３０から返ってくる検索結果（応答結果）として、障害影響度Ｓ，ＡのプログラムＩＤやジョブＩＤを含む障害情報および障害管理番号を受け取る処理を実行する。
【０１０２】
なお、プログラムＩＤ・ジョブＩＤ取得手段５２によりプログラムＩＤやジョブＩＤとともに取得する障害情報には、検知結果出力手段５６による出力対象とされ得る情報（例えば、現象や原因等）が含まれていてもよく、あるいは、ここではプログラムＩＤやジョブＩＤとともに障害管理番号を取得するだけとし、検知結果出力手段５６による出力処理の段階で、障害管理番号を用いて、障害一覧記憶手段３４から出力対象とする情報（例えば、現象や原因等）を取得してもよい。
【０１０３】
＜障害予兆検知サーバ２０／障害予兆検知処理手段５０／頻出語取得手段５３の構成＞
【０１０４】
頻出語取得手段５３は、検索エンジン３０の頻出語送信手段３２に対し、単語累積出現回数記憶手段３５（図１１参照）に記憶された単語のうち、累積出現回数が閾値（例えば、１００回等）を超えるか、または閾値以上となっている頻出語の取得要求（閾値の指定を含む）を送るとともに、検索エンジン３０から送られてくる頻出語を受け取り、頻出語記憶手段６４に記憶させる処理を実行するものである。
【０１０５】
なお、頻出語取得手段５３は、検索エンジン３０の頻出語送信手段３２から、単語累積出現回数記憶手段３５（図１１参照）に記憶された全単語についての累積出現回数を取得し、累積出現回数が閾値（例えば、１００回等）を超えるか、または閾値以上となっている単語を、頻出語として決定し、頻出語記憶手段６４に記憶させる処理を実行してもよい。
【０１０６】
＜障害予兆検知サーバ２０／障害予兆検知処理手段５０／設計書単語列生成手段５４の構成＞
【０１０７】
設計書単語列生成手段５４は、設計書文章抽出手段５１により抽出した設計書文章（テキストデータ）を用いて、［Ａ］形態素解析を行うことにより、名詞のみを抽出し、抽出した名詞のみの単語Ｎグラム用の設計書の単語列を生成するか、または、［Ｂ］この設計書の単語列から１単語（１名詞）ずつずらしながら切り出した設計書の単語Ｎグラムの集合を生成し、生成した［Ａ］の場合の設計書の単語列または［Ｂ］の場合の設計書の単語Ｎグラムの集合を、設計書単語列記憶手段６５に記憶させる処理を実行するものである。ここで、設計書についての単語ＮグラムのＮは、障害情報（本実施形態では、現象および原因）についての単語ＮグラムのＮと同数であり、本実施形態では、一例として、Ｎ＝３である。
【０１０８】
この際、上記の設計書についての［Ａ］単語列の生成処理または［Ｂ］単語Ｎグラムの集合の生成処理は、図９に示した障害一覧の現象・原因（障害情報のうちの現象および原因のテキストデータ）の場合における［Ａ］単語列の生成処理または［Ｂ］単語Ｎグラムの集合の生成処理と同様である。
【０１０９】
具体的には、本実施形態では、設計書単語列生成手段５４は、共有ファイルサーバ７０の設計書文章ファイル記憶手段７４に設計書文章ファイルが格納されているか否かを監視し、格納されている場合には、その設計書文章ファイルをネットワーク１を介して取得し、取得した設計書文章ファイルの内容データ（テキストデータ）を用いて、［Ａ］の場合の設計書の単語列を生成し、または［Ｂ］の場合の設計書の単語Ｎグラムの集合を生成し、設計書単語列記憶手段６５に記憶させる処理を実行する。
【０１１０】
また、設計書単語列生成手段５４は、設計書単語列記憶手段６５に記憶させた、若しくは記憶させる設計書の単語Ｎグラムの集合の中で（または、設計書単語列記憶手段６５に記憶させた、若しくは記憶させる設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラムの集合の中で）、同じ単語群が出現する頻度を示す単語群出現頻度ＴＦおよび単語群の稀少度を示す単語群稀少度ＩＤＦを求め、これらのＴＦ、ＩＤＦを、単語群と関連付けて単語群出現頻度記憶手段６６に記憶させる処理も実行する。
【０１１１】
＜障害予兆検知サーバ２０／障害予兆検知処理手段５０／単語Ｎグラム単位検知処理手段５５の構成＞
【０１１２】
単語Ｎグラム単位検知処理手段５５は、プログラムＩＤ・ジョブＩＤ基準判断処理と、単語Ｎグラムマッチング要求処理と、頻出語スキップ処理とを実行するものである。
【０１１３】
具体的には、単語Ｎグラム単位検知処理手段５５は、プログラムＩＤ・ジョブＩＤ基準判断処理として、処理対象の設計書の単語Ｎグラムを単語Ｎグラムマッチング検索要求用のクエリに含ませて送出する前（単語Ｎグラムマッチング要求処理の実行前）に、図１０に示すように、処理対象の設計書の単語Ｎグラムの中に、プログラムＩＤ・ジョブＩＤ取得手段５２により取得されてプログラムＩＤ・ジョブＩＤ記憶手段６３に記憶されたプログラムＩＤおよび／またはジョブＩＤが含まれているか否かを判断し、含まれている場合に、当該プログラムＩＤおよび／または当該ジョブＩＤに対応する障害管理番号を、出力対象の障害管理番号として採用し、出力対象記憶手段６８に記憶させる処理を実行する。
【０１１４】
この際、単語Ｎグラム単位検知処理手段５５は、プログラムＩＤ・ジョブＩＤ記憶手段６３に障害管理番号と関連付けてプログラムＩＤやジョブＩＤ以外の障害情報（例えば現象・原因等）が記憶されている場合には、障害管理番号とともに、それらの障害情報も出力対象記憶手段６８に記憶させる。
【０１１５】
また、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理として、検索エンジン３０の検索手段３３に対し、［Ａ］設計書単語列記憶手段６５に記憶された設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラム、または［Ｂ］設計書単語列記憶手段６５に記憶された設計書の単語Ｎグラムの集合から取得した設計書の単語Ｎグラムの各々を、単語Ｎグラムマッチング検索要求用のクエリに含ませて送出するとともに、検索エンジン３０から、このクエリに対する検索結果（応答結果）を受け取る処理を実行する。図１３には、クエリに対する応答結果の具体例が示されているが、このような検索エンジン３０からの出力内容は、クエリで指定することができる。図１３の例の最下行に示されたスコアの出力も、クエリで指定している。
【０１１６】
なお、［Ａ］の処理と、［Ｂ］の処理との相違は、設計書単語列記憶手段６５に記憶されているのが、［Ａ］の場合には設計書の単語列であり、［Ｂ］の場合には設計書の単語Ｎグラムの集合であることから生じる相違である。すなわち、単語列からの単語Ｎグラムの切り出し処理を、単語Ｎグラム単位検知処理手段５５により実行するか（［Ａ］の場合）、設計書単語列生成手段５４により実行するか（［Ｂ］の場合）の相違である。
【０１１７】
さらに、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理として、学習結果記憶手段６２に記憶された重み行列を構成する単語ベクトル（単語群ベクトル）を用いて、処理対象の１つの設計書の単語Ｎグラムから連想される１つまたは複数の関連単語群を求め、検索エンジン３０の検索手段３３に対し、求めた１つまたは複数の関連単語群を、処理対象の設計書の単語Ｎグラムとともに、単語Ｎグラムマッチング検索要求用のクエリに含ませて送出するとともに、検索エンジン３０から、このクエリに対する検索結果を受け取る処理を実行する。この関連単語群を求める処理は、例えばｗｏｒｄ２ｖｅｃ等を利用して実行することができる。設定ファイル記憶手段６３（図１２参照）には、使用する関連単語群の最大数（例えば４つとする。）が記憶されているので、この最大数を、例えばｗｏｒｄ２ｖｅｃ等に入力すると、処理対象の設計書の単語Ｎグラムとの類似度（関連性）が高い４つの関連単語群が得られる。
【０１１８】
また、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理として、設計書の単語Ｎグラムについてのフレーズあいまい検索要求をクエリに含ませてもよい。このフレーズあいまい検索については、検索エンジン３０の検索手段３３による単語Ｎグラムマッチング検索処理の説明で詳述しているので、ここでは詳しい説明を省略する。
【０１１９】
そして、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理として、単語Ｎグラムマッチング検索要求用のクエリを作成する際には、次のような重みの指定処理を行う。
【０１２０】
先ず、設定ファイル記憶手段６７に記憶されている障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤ、並びに、設計書の単語Ｎグラムについての重みＷＦ算出用の基準重み、関連単語群についての重みＷＲ算出用の基準重み、およびフレーズあいまい検索についての重みＷＶ算出用の基準重みを取得する。なお、フレーズあいまい検索を行わない場合には、その重みＷＶは使用しなくてよく、また、関連単語群によるマッチングを行わない場合には、その重みＷＲは使用しなくてよい。
【０１２１】
次に、処理対象の設計書の単語Ｎグラムと同一の単語群についてのＴＦおよびＩＤＦを単語群出現頻度記憶手段６６から取得する。続いて、処理対象の設計書の単語Ｎグラムについての重みＷＦ＝基準重み×ＴＦ×ＩＤＦを算出決定し、関連単語群についての重みＷＲ＝基準重み×ＴＦ×ＩＤＦを算出決定し、フレーズあいまい検索についての重みＷＶ＝基準重み×ＴＦ×ＩＤＦを算出決定する。図１２の例では、処理対象の設計書の単語３グラム＝「条件  付  注文」であり、クエリには、この「条件  付  注文」に対し、「＾２」（２倍を示す）という基準重みが付されているが、ＴＦ、ＩＤＦを考慮すると、「２×ＴＦ×ＩＤＦ」が重みＷＦとなる。また、図１２の例では、関連単語群１＝「株式  買  付」であり、クエリには、この「株式  買  付」に対し、「＾１」（１倍を示す）という基準重みが付されているが、ＴＦ、ＩＤＦを考慮すると、「１×ＴＦ×ＩＤＦ」が重みＷＲとなる。
【０１２２】
それから、単語Ｎグラム単位検知処理手段５５は、処理対象の設計書の単語Ｎグラム、１つまたは複数の関連単語群、障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤ、並びに、処理対象の設計書の単語Ｎグラムについての重みＷＦ、関連単語群についての重みＷＲ、およびフレーズあいまい検索についての重みＷＶを用いて、図１２に示すように、単語Ｎグラムマッチング検索要求用のクエリを作成する。
【０１２３】
また、単語Ｎグラム単位検知処理手段５５は、処理対象の設計書の単語Ｎグラムについて、同じ設計書の単語Ｎグラムを含む単語Ｎグラムマッチング検索要求用のクエリを既に送出しているか否かを判断し、既に送出している場合には、当該クエリを送出しない処理を実行する。この処理は、ＴＦおよびＩＤＦを用いて重みを算出決定していることによるものである。
【０１２４】
さらに、単語Ｎグラム単位検知処理手段５５は、図１４に示すように、検索エンジン３０から、単語Ｎグラムマッチング検索要求用のクエリに対する検索結果（応答結果）を受け取り、受け取った情報を出力対象記憶手段６８に記憶させる場合には、次のようなスコア（合致度）の処理を実行する。
【０１２５】
図１４において、単語Ｎグラム単位検知処理手段５５は、検索エンジン３０から、クエリに対する検索結果（応答結果）として、障害管理番号、検索手段３３により算出されたスコア、障害管理番号に紐付けられた障害情報（現象・原因等）を受け取った際に、受け取った障害管理番号と同じ障害管理番号が、出力対象記憶手段６８に既に記憶されている場合には、当該障害管理番号とともに受け取ったスコアを、当該障害管理番号と関連付けられて出力対象記憶手段６８に記憶されているスコアに加算し、一方、受け取った障害管理番号と同じ障害管理番号が、出力対象記憶手段６８に未だ記憶されていない場合には、当該障害管理番号とともに受け取ったスコアを、そのまま出力対象記憶手段６８に記憶させる。
【０１２６】
図１４の例では、検索エンジン３０から、先ず、第１番目の単語３グラムによる検索結果（応答結果）として、障害管理番号＝ＡＣ２４６５１、スコア＝２００点と、障害管理番号＝ＡＣ２３３８１、スコア＝２５０点とを受け取ったとすると、これらの障害管理番号は、出力対象記憶手段６８に未だ記憶されていないので、これらのスコアをそのまま出力対象記憶手段６８に記憶させる。
【０１２７】
次に、第２番目の単語３グラムによる検索結果（応答結果）として、障害管理番号＝ＡＣ１１９８７、スコア＝１００点と、障害管理番号＝ＡＣ３４７６５、スコア＝３００点と、障害管理番号＝ＡＣ６４３２８、スコア＝７００点とを受け取ったとすると、これらの障害管理番号も、出力対象記憶手段６８に未だ記憶されていないので、これらのスコアをそのまま出力対象記憶手段６８に記憶させる。
【０１２８】
続いて、第３番目の単語３グラムによる検索結果（応答結果）として、障害管理番号＝ＡＣ２３３８１、スコア＝５００点と、障害管理番号＝ＡＣ３８５７７、スコア＝４００点とを受け取ったとすると、前者の障害管理番号＝ＡＣ２３３８１は、出力対象記憶手段６８に既に記憶されているので、受け取ったスコア＝５００点を、既に記憶されている２５０点に加算することにより、障害管理番号＝ＡＣ２３３８１のスコアを、２５０点＋５００点＝７５０点とする。一方、後者の障害管理番号＝ＡＣ３８５７７は、出力対象記憶手段６８に未だ記憶されていないので、スコア＝４００点をそのまま出力対象記憶手段６８に記憶させる。
【０１２９】
その後、第４番目の単語３グラムによる検索結果（応答結果）として、障害管理番号＝ＡＣ２４６５１、スコア＝６００点と、障害管理番号＝ＡＣ６４３２８、スコア＝２５０点とを受け取ったとすると、これらは出力対象記憶手段６８に既に記憶されているので、障害管理番号＝ＡＣ２４６５１については、受け取ったスコア＝６００点を、既に記憶されている２００点に加算することにより、２００点＋６００点＝８００点とする。また、障害管理番号＝ＡＣ６４３２８については、受け取ったスコア＝２５０点を、既に記憶されている７００点に加算することにより、７００点＋２５０点＝９５０点とする。最後に、スコアでソートし、スコアが大きい順に並べる。
【０１３０】
また、単語Ｎグラム単位検知処理手段５５は、頻出語スキップ処理として、単語Ｎグラムマッチング要求処理を実行する前に、単語Ｎグラムマッチング検索要求用のクエリに含ませて送出する対象となっている処理対象の設計書の単語Ｎグラムを構成するＮ個（本実施形態では、３個）の単語の中に、頻出語取得手段５３により取得して頻出語記憶手段６４に記憶されている頻出語が含まれているか否かを判断し、１つでも含まれている場合には、単語Ｎグラムマッチング要求処理を行わない処理を実行する。
【０１３１】
具体的には、図１１に示すように、閾値回数＝１００回の指定で取得した頻出語が、単語Ａ，Ｅ，Ｈであったとし、処理対象の設計書の単語Ｎグラムは、第１番目の単語３グラム＝「Ｌ  Ｍ  Ｑ」、第２番目の単語３グラム＝「Ｍ  Ｑ  Ａ」、…という順番で変化していくものとする。
【０１３２】
第１番目の単語３グラム＝「Ｌ  Ｍ  Ｑ」には、単語Ａ，Ｅ，Ｈのいずれも含まれていないので、スキップせずに、単語Ｎグラムマッチング要求処理（単語Ｎグラムマッチング検索要求用のクエリを検索エンジン３０に送り、検索手段３３による単語Ｎグラムマッチング検索処理を実行させるための処理）を行う。第２番目の単語３グラム＝「Ｍ  Ｑ  Ａ」には、単語Ａ，Ｅ，ＨのうちのＡが含まれているので、単語Ｎグラムマッチング要求処理を行わない、すなわち検索をスキップする。第３番目以降の単語３グラムについても同様であり、処理対象の単語３グラムを構成する３つの単語の中に１つでも単語Ａ，Ｅ，Ｈのいずれかが含まれていれば、単語Ｎグラムマッチング要求処理を行わない、すなわち検索をスキップする。
【０１３３】
＜障害予兆検知サーバ２０／障害予兆検知処理手段５０／検知結果出力手段５６の構成＞
【０１３４】
検知結果出力手段５６は、単語Ｎグラム単位検知処理手段５５による単語Ｎグラムマッチング要求処理で得られて出力対象記憶手段６８に記憶されている障害管理番号と、プログラムＩＤ・ジョブＩＤ基準判断処理で得られて出力対象記憶手段６８に記憶されている障害管理番号とを用いて、チェックリスト記憶手段６１（図２参照）に記憶されているチェック情報（チェック項目等を含む）を取得し、取得したチェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報（現象、原因等を含む）を出力する処理を実行するものである。
【０１３５】
この際、検知結果出力手段５６は、チェック情報に加えて障害管理番号に対応する障害情報（現象、原因等を含む）を出力する場合には、障害情報（現象、原因等を含む）が、障害管理番号と関連付けられて出力対象記憶手段６８に既に記憶されているときには、その障害情報を出力し、出力対象記憶手段６８に記憶されていないとき（障害管理番号は記憶されているが、現象、原因等は記憶されていないとき）には、障害管理番号を用いて、検索エンジン３０の検索手段３３に対し、障害一覧記憶手段３４（図３参照）に記憶されている障害情報（現象、原因等を含む）の取得要求を送り、出力対象とする障害情報（現象、原因等を含む）を取得すればよい。
【０１３６】
また、検知結果出力手段５６は、単語Ｎグラム単位検知処理手段５５による単語Ｎグラムマッチング要求処理で得られた障害管理番号、並びに、対応する障害情報（現象、原因等を含む）やチェック情報（チェック項目を含む）を出力する際には、スコアの合計値（図１４参照）が、例えば、上位１０位以内、上位１５位以内等のように予め定められた数の上位の過去障害についての障害管理番号等を出力する。従って、これらを出力する際には、チェックリスト記憶手段６１（図２参照）からのチェック情報（チェック項目等を含む）の取得は、上位１０位以内、上位１５位以内等の過去障害についてだけ行えばよい。
【０１３７】
さらに、図４に示すように、検知結果出力手段５６は、単語Ｎグラム単位検知処理手段５５による単語Ｎグラムマッチング要求処理で得られた障害管理番号、スコア、並びに、対応する障害情報およびチェック情報を出力するマッチング結果出力部と、プログラムＩＤ・ジョブＩＤ基準判断処理で得られた障害管理番号、並びに、対応する障害情報およびチェック情報を出力するプログラムＩＤ・ジョブＩＤ基準判断結果出力部とを、分けて出力（表示・印刷等）するようになっている。前者のマッチング結果出力部は、スコアがあるので、スコアの高い順に並べて出力され、後者のプログラムＩＤ・ジョブＩＤ基準判断結果出力部は、スコアがないので、便宜上、スコアはゼロと出力されている。
【０１３８】
図４の例では、チェックリスト記憶手段６１（図２参照）から取得したチェック情報として、過去障害についての障害管理番号と関連付けられた分類１、分類２、チェック項目、チェック項目についての説明・チェック方法等が出力され、検索エンジン３０の障害一覧記憶手段３４（図３参照）から取得した障害情報として、過去障害についての障害管理番号と関連付けられた障害影響度、タイトル、現象（顧客向けに記載された現象も含む）、原因（顧客向けに記載された原因を含む）、再発防止策等が出力され、さらに、検索エンジン３０から得られたスコアが出力されている。
【０１３９】
なお、図４は、出力の一例であり、出力の態様はこれに限定されるものではなく、例えば、上部のマッチング結果出力部と、下部のプログラムＩＤ・ジョブＩＤ基準判断結果出力部とは、出力位置を上下反転させてもよい。また、出力するチェック情報は、例えばチェック項目だけとしてもよく、あるいは、障害情報（障害影響度、タイトル、現象、原因、再発防止策等）を出力せずに、チェック情報を出力するだけとしてもよい。
【０１４０】
＜障害予兆検知サーバ２０／各記憶手段６１〜６８の構成＞
【０１４１】
チェックリスト記憶手段６１は、図２に示すように、過去障害についての障害管理番号、分類１、分類２、チェック項目、チェック項目についての説明・チェック方法等を関連付けて記憶するものである。
【０１４２】
学習結果記憶手段６２は、学習結果のデータとして、単語群の分散表現としての複数（多数）の単語ベクトル（単語群ベクトル）により構成された重み行列（モデル）を記憶するものである。
【０１４３】
プログラムＩＤ・ジョブＩＤ記憶手段６３は、プログラムＩＤ・ジョブＩＤ取得手段５２により取得した大きな障害影響度（本実施形態では、一例として障害影響度Ｓ，Ａ）、プログラムＩＤおよび／またはジョブＩＤ、障害管理番号を関連付けて記憶するものである。なお、プログラムＩＤやジョブＩＤに加え、検知結果出力手段５６による出力対象となり得る障害情報（例えば、現象や原因等）が記憶されていてもよい。
【０１４４】
頻出語記憶手段６４は、検索エンジン３０から取得した頻出語（累積出現回数が閾値回数（例えば１００回）以上または閾値回数を超える単語）を記憶するものである。
【０１４５】
設計書単語列記憶手段６５は、設計書単語列生成手段５４により作成された［Ａ］単語Ｎグラム（本実施形態では、一例として、Ｎ＝３）用の設計書の単語列、または、［Ｂ］この設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラムの集合を記憶するものである。
【０１４６】
単語群出現頻度記憶手段６６は、設計書単語列生成手段５４により求めた単語群出現頻度ＴＦおよび単語群稀少度ＩＤＦを、単語群と関連付けて記憶するものである。
【０１４７】
設定ファイル記憶手段６７は、障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤ、並びに、設計書の単語Ｎグラムについての重みＷＦ算出用の基準重み、関連単語群についての重みＷＲ算出用の基準重み、およびフレーズあいまい検索についての重みＷＶ算出用の基準重みを格納した設定ファイルを記憶するものである。さらに、設定ファイルには、関連単語群の使用・不使用の選択情報、フレーズあいまい検索の使用・不使用の選択情報、使用する関連単語群の最大数等を格納しておいてもよい。
【０１４８】
出力対象記憶手段６８は、単語Ｎグラム単位検知処理手段５５による単語Ｎグラムマッチング要求処理で得られた障害管理番号、スコア（合計スコア）、またはこれらに加えて対応する障害情報（現象、原因、再発防止策等）を記憶するとともに、単語Ｎグラム単位検知処理手段５５によるプログラムＩＤ・ジョブＩＤ基準判断処理で得られた障害管理番号、またはこれに加えて対応する障害情報（現象、原因、再発防止策等）を記憶するものである。
【０１４９】
＜障害情報管理システム８０／原障害一覧記憶手段８１の構成＞
【０１５０】
原障害一覧記憶手段８１は、図３に示すように、例えば、過去障害についての障害管理番号、タイトル、現象（顧客向けに記載された現象を含む）、原因（顧客向けに記載された原因を含む）、再発防止策、障害影響度、プログラムＩＤ、ジョブＩＤ等を関連付けて記憶するものである。この原障害一覧記憶手段８１には、検索エンジン３０の障害一覧記憶手段３４に記憶させる障害情報の源泉データが記憶され、プログラムＩＤやジョブＩＤが関連付けられていない障害管理番号のレコードもある。なお、ここでのレコードは、必ずしもデータベースのテーブルを構成するレコードという意味に限らず、１つの障害管理番号に関連付けられたデータの集合（１組のデータ）という意味で用いている。以下においても同様である。
【０１５１】
＜チェックリスト管理システム９０／原チェックリスト記憶手段９１の構成＞
【０１５２】
原チェックリスト記憶手段９１は、図２に示すように、例えば、番号（Ｎｏ．）、分類１、分類２、チェック項目、チェック項目についての説明・チェック方法、障害事例・具体例等を関連付けて記憶するものである。この原チェックリスト記憶手段９１には、障害予兆検知サーバ２０のチェックリスト記憶手段６１に記憶させるチェック情報の源泉データが記憶され、「障害事例・具体例」カラムに障害管理番号が含まれているレコードと、「障害事例・具体例」カラムに障害管理番号が含まれていないレコードとがある。
【０１５３】
「障害事例・具体例」カラムに障害管理番号（図２の例では、ＡＣ２２７３１）が含まれているレコードについては、「チェック項目」および「説明・チェック方法」等の各カラムに、当該障害管理番号（ＡＣ２２７３１）の過去障害に紐付くチェック情報が整理されている。また、「チェック項目」および「説明・チェック方法」等の各カラムには、開発ルールや、ノウハウ集に掲載された情報が含まれている。
【０１５４】
なお、原チェックリスト記憶手段９１から出力されるチェックリストファイル（概要設計チェックリスト、詳細設計チェックリスト、開発チェックリスト等の各ファイル）には、障害管理番号が含まれていないレコードがあるが、管理者端末１００で加工された加工後チェックリストファイルは、障害管理番号を含むレコードだけで構成されている。
【０１５５】
＜管理者端末１００／障害関連チェックリスト抽出手段１０１の構成＞
【０１５６】
障害関連チェックリスト抽出手段１０１は、管理者端末１００において、チェックリスト管理システム９０の原チェックリスト記憶手段９１から取得したチェックリストファイル（表計算ソフトウェアのファイル）について、障害事例・具体例カラムに過去障害についての障害管理番号が含まれているレコードだけを抽出し、障害管理番号とこれに対応するチェック情報（チェック項目、説明・チェック方法等）を含むレコードからなる加工後チェックリストファイル（例えばＣＳＶファイル）を作成して出力する処理を実行するものである。
【０１５７】
＜障害予兆検知システム１０による処理の流れ＞
【０１５８】
このような本実施形態においては、以下のようにして障害予兆検知システム１０により、システム（障害予兆検知システム１０とは別のシステム）の設計開発に係る設計書についての障害予兆検知処理が行われる。先ず、障害予兆検知対象の設計書についての処理を行う前に、事前の準備処理として、図５に示すチェックリストの登録処理、および図６に示す障害一覧の登録処理を行う。
【０１５９】
＜チェックリストの登録処理の流れ：図５参照＞
【０１６０】
図５において、システム管理者が管理者端末１００を操作し、ネットワーク１を介してチェックリスト管理システム９０にアクセスし、概要設計チェックリスト、詳細設計チェックリスト、開発チェックリスト等の各種のチェックリストファイルの取得要求を行い、チェックリスト管理システム９０からネットワーク１を介して送信されてくるチェックリストファイルを受信する（ステップＳ１）。チェックリスト管理システム９０では、管理者端末１００からの取得要求に応じ、原チェックリスト記憶手段９１（図２参照）から各種のチェックリストファイルを出力し、ネットワーク１を介して管理者端末１００へ送信する（ステップＳ２）。
【０１６１】
続いて、管理者端末１００において、障害関連チェックリスト抽出手段１０１により、原チェックリスト記憶手段９１（図２参照）から出力された各種のチェックリストファイルを用いて、過去障害についての障害管理番号が含まれているレコードを抽出し、障害管理番号とこれに対応するチェック情報（チェック項目、説明・チェック方法等）を含むレコードからなる加工後チェックリストファイル（例えばＣＳＶファイル）を作成して出力する（ステップＳ３）。
【０１６２】
それから、作成した加工後チェックリストファイルを、管理者端末１００からネットワーク１を介して共有ファイルサーバ７０へ送信し、加工後チェックリストファイル記憶手段７１（ここでは、専用のディレクトリ）に配置する（ステップＳ４）。共有ファイルサーバ７０では、管理者端末１００からネットワーク１を介して送信されてくる加工後チェックリストファイルを受信し、加工後チェックリストファイル記憶手段７１に格納する（ステップＳ５）。
【０１６３】
一方、障害予兆検知サーバ２０では、チェックリスト登録手段４１により、加工後チェックリストファイル記憶手段７１に加工後チェックリストファイルが格納されているか否かを監視する（ステップＳ６）。共有ファイルサーバ７０では、この監視による問合せを受け、加工後チェックリストファイル記憶手段７１に加工後チェックリストファイルが格納されている場合には、その加工後チェックリストファイルを、ネットワーク１を介して障害予兆検知サーバ２０へ送信する（ステップＳ７）。
【０１６４】
障害予兆検知サーバ２０では、チェックリスト登録手段４１により、共有ファイルサーバ７０からネットワーク１を介して送信されてくる加工後チェックリストファイルを受信し（ステップＳ８）、そのファイルの内容データを、チェックリスト記憶手段６１（図２参照）に登録する（ステップＳ９）。
【０１６５】
＜障害一覧の登録処理の流れ：図６参照＞
【０１６６】
図６において、システム管理者が管理者端末１００を操作し、ネットワーク１を介して障害情報管理システム８０にアクセスし、障害一覧ファイルの取得要求を行い、障害情報管理システム８０からネットワーク１を介して送信されてくる障害一覧ファイルを受信する（ステップＳ２１）。障害情報管理システム８０では、管理者端末１００からの取得要求に応じ、原障害一覧記憶手段８１（図３参照）から障害一覧ファイルを出力し、ネットワーク１を介して管理者端末１００へ送信する（ステップＳ２２）。
【０１６７】
続いて、管理者端末１００において、原障害一覧記憶手段８１（図３参照）から出力された障害一覧ファイル（例えばＣＳＶファイル）を、管理者端末１００からネットワーク１を介して共有ファイルサーバ７０へ送信し、障害一覧ファイル記憶手段７２（ここでは、専用のディレクトリ）に配置する（ステップＳ２３）。共有ファイルサーバ７０では、管理者端末１００からネットワーク１を介して送信されてくる障害一覧ファイルを受信し、障害一覧ファイル記憶手段７２に格納する（ステップＳ２４）。
【０１６８】
一方、障害予兆検知サーバ２０では、障害一覧登録手段４２により、障害一覧ファイル記憶手段７２に障害一覧ファイルが格納されているか否かを監視する（ステップＳ２５）。共有ファイルサーバ７０では、この監視による問合せを受け、障害一覧ファイル記憶手段７２に障害一覧ファイルが格納されている場合には、その障害一覧ファイルを、ネットワーク１を介して障害予兆検知サーバ２０へ送信する（ステップＳ２６）。
【０１６９】
障害予兆検知サーバ２０では、障害一覧登録手段４２により、共有ファイルサーバ７０からネットワーク１を介して送信されてくる障害一覧ファイルを受信し、そのファイルの内容データを、検索エンジン３０の障害一覧記憶手段３４（図３参照）に登録する（ステップＳ２７）。
【０１７０】
また、検索エンジン３０では、障害情報単語列生成手段３１により、障害一覧記憶手段３４（図３参照）に記憶されている障害情報のうちの現象（顧客向けに記載された現象を含む）および原因（顧客向けに記載された原因を含む）を用いるか、または、障害一覧登録手段４２から受け取った障害一覧ファイルに含まれている障害情報のうちの現象（顧客向けに記載された現象を含む）および原因（顧客向けに記載された原因を含む）を用いて、［Ａ］単語Ｎグラム（本実施形態では、単語３グラム）用の障害情報の単語列を生成するか、または、［Ｂ］この障害情報の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム（単語３グラム）の集合を生成し、生成した［Ａ］の場合の「障害情報の単語列」または［Ｂ］の場合の「障害情報の単語Ｎグラムの集合」を、障害一覧記憶手段３４（図３参照）の「現象・原因の単語列」カラムに記憶させる（ステップＳ２８）。この処理については、障害情報単語列生成手段３１の構成の説明で、図９を用いて既に詳述しているので、ここでは詳しい説明を省略する。
【０１７１】
さらに、障害情報単語列生成手段３１により、障害一覧記憶手段３４（図３参照）に記憶させる障害情報（現象および原因）の中から抽出した各単語（各名詞）の累積出現回数を求め、求めた各単語の累積出現回数を、単語累積出現回数記憶手段３５（図１１参照）に記憶させる（ステップＳ２９）。
【０１７２】
その後、関連単語群学習手段４３により、図１５に示すように、障害一覧記憶手段３４（図３参照）に記憶させた障害情報のうちの現象（顧客向けに記載された現象を含む）および原因（顧客向けに記載された原因を含む）の全データを用いて、単語群（並び順を考慮したＮ個（本実施形態では３個）の単語の集合）どうしの間の関連性の学習処理を行い、得られた学習結果のデータを、学習結果記憶手段６２に記憶させる（ステップＳ３０）。この学習処理については、関連単語群学習手段４３の構成の説明で既に詳述しているので、ここでは詳しい説明を省略する。以上により、事前の準備処理を終了する。
【０１７３】
＜設計書についての障害予兆検知処理の流れ：図７、図８参照＞
【０１７４】
図７において、利用者は、利用者端末１１０を操作し、システムの設計開発に係る設計書ファイル（ワード、エクセル、テキスト、ビジオ等の各種のファイル）を、ネットワーク１を介して共有ファイルサーバ７０へ送信し、設計書ファイル記憶手段７３（ここでは、専用のディレクトリ）に配置する（ステップＳ４１）。共有ファイルサーバ７０では、利用者端末１１０からネットワーク１を介して送信されてくる設計書ファイルを受信し、設計書ファイル記憶手段７３に格納する（ステップＳ４２）。
【０１７５】
一方、障害予兆検知サーバ２０では、設計書文章抽出５１により、設計書ファイル記憶手段７３に設計書ファイルが格納されているか否かを監視する（ステップＳ４３）。共有ファイルサーバ７０では、この監視による問合せを受け、設計書ファイル記憶手段７３に設計書ファイルが格納されている場合には、その設計書ファイルを、ネットワーク１を介して障害予兆検知サーバ２０へ送信する（ステップＳ４４）。
【０１７６】
それから、障害予兆検知サーバ２０では、設計書文章抽出５１により、共有ファイルサーバ７０からネットワーク１を介して送信されてくる設計書ファイルを受信し、その設計書ファイルの内容データから、文章データを抽出する処理を行い、抽出した文章データを格納した設計書文章ファイルを作成し（ステップＳ４５）、作成した設計書文章ファイルを、ネットワーク１を介して共有ファイルサーバ７０へ送信し、設計書文章ファイル記憶手段７４に配置する（ステップＳ４６）。共有ファイルサーバ７０では、障害予兆検知サーバ２０からネットワーク１を介して送信されてくる設計書文章ファイルを受信し、設計書文章ファイル記憶手段７４に格納する（ステップＳ４７）。
【０１７７】
一方、障害予兆検知サーバ２０では、プログラムＩＤ・ジョブＩＤ取得手段５２により、設計書文章ファイル記憶手段７４に設計書文章ファイルが格納されているか否かを監視する（ステップＳ４８）。共有ファイルサーバ７０では、この監視による問合せを受け、設計書文章ファイル記憶手段７４に設計書文章ファイルが格納されている場合には、その設計書文章ファイルを、ネットワーク１を介して障害予兆検知サーバ２０へ送信する（ステップＳ４９）。なお、設計書文章ファイル記憶手段７４に設計書文章ファイルが格納されているか否かの監視処理は、プログラムＩＤ・ジョブＩＤ取得手段５２によるプログラムＩＤやジョブＩＤの取得処理の内容とは関係ないが、プログラムＩＤやジョブＩＤの取得処理（後述するステップＳ５１の処理）の開始タイミングを定めるという意味で、説明の便宜上、プログラムＩＤ・ジョブＩＤ取得手段５２が行うことにしている。従って、設計書文章ファイルの取得は、設計書単語列生成手段５４による処理（後述するステップＳ５５の処理）を行う前に行われていればよい。
【０１７８】
続いて、障害予兆検知サーバ２０では、プログラムＩＤ・ジョブＩＤ取得手段５２により、共有ファイルサーバ７０から送信されてくる設計書文章ファイルを受信し（ステップＳ５０）、その後、検索エンジン３０に向けて、プログラムＩＤ・ジョブＩＤ検索要求用のクエリ（障害影響度Ｓ，Ａの指定を含む）を送出し、検索エンジン３０から返ってくる検索結果（応答結果）として、障害影響度Ｓ，ＡのプログラムＩＤやジョブＩＤを含む障害情報および障害管理番号を受け取り、プログラムＩＤ・ジョブＩＤ記憶手段６３に記憶させる（ステップＳ５１）。
【０１７９】
検索エンジン３０では、プログラムＩＤ・ジョブＩＤ取得手段５２からのプログラムＩＤ・ジョブＩＤ検索要求用のクエリ（障害影響度Ｓ，Ａの指定を含む）を受け取り、障害影響度Ｓ，Ａに関連付けられて障害一覧記憶手段３４（図３参照）に記憶されているプログラムＩＤやジョブＩＤ、その他の障害情報（現象や原因等）、および障害管理番号を、プログラムＩＤ・ジョブＩＤ取得手段５２に返す（ステップＳ５２）。
【０１８０】
それから、障害予兆検知サーバ２０では、頻出語取得手段５３により、検索エンジン３０の頻出語送信手段３２に対し、閾値（例えば、１００回等）の指定を含む頻出語の取得要求を送るとともに、検索エンジン３０から送信（返信）さてれてくる頻出語を受け取り、頻出語記憶手段６４に記憶させる（ステップＳ５３）。検索エンジン３０では、頻出語送信手段３２により、頻出語取得手段５３からの取得要求を受信すると、単語累積出現回数記憶手段３５（図１１参照）に記憶された単語のうち、累積出現回数が閾値（例えば、１００回等）を超えるか、または閾値以上となっている頻出語を取得し、頻出語取得手段５３に送信する（ステップＳ５４）。
【０１８１】
なお、頻出語取得手段５３により、検索エンジン３０の頻出語送信手段３２から、単語累積出現回数記憶手段３５（図１１参照）に記憶された全単語についての累積出現回数を取得し、累積出現回数が閾値（例えば、１００回等）を超えるか、または閾値以上となっている単語を、頻出語として決定し、頻出語記憶手段６４に記憶させてもよい。
【０１８２】
その後、設計書単語列生成手段５４により、共有ファイルサーバ７０の設計書文章ファイル記憶手段７４に設計書文章ファイルが格納されているか否かを監視し、格納されている場合には、その設計書文章ファイルをネットワーク１を介して取得し、取得した設計書文章ファイルの内容データを用いて、［Ａ］設計書の単語列を生成し、または［Ｂ］この単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラムの集合を生成し、設計書単語列記憶手段６５に記憶させる（ステップＳ５５）。この処理については、設計書単語列生成手段５４の構成の説明で、既に詳述しているので、ここでは詳しい説明を省略する。
【０１８３】
さらに、設計書単語列生成手段５４により、設計書単語列記憶手段６５に記憶させた、若しくは記憶させる設計書の単語Ｎグラムの集合の中で（または、設計書単語列記憶手段６５に記憶させた、若しくは記憶させる設計書の単語列から１単語ずつずらしながら切り出した設計書の単語Ｎグラムの集合の中で）、同じ単語群が出現する頻度を示す単語群出現頻度ＴＦおよび単語群の稀少度を示す単語群稀少度ＩＤＦを求め、これらのＴＦ、ＩＤＦを、単語群と関連付けて単語群出現頻度記憶手段６６に記憶させる（ステップＳ５６）。
【０１８４】
その後、単語Ｎグラム単位検知処理手段５５による単語Ｎグラム（ここでは、単語３グラム）を単位とするループ処理（後述するステップＳ５７〜Ｓ６３の処理）に移行する。
【０１８５】
図８において、先ず、単語Ｎグラム単位検知処理手段５５により、プログラムＩＤ・ジョブＩＤ基準判断処理を実行する。すなわち、図１０に示すように、処理対象の設計書の単語Ｎグラム（ループ処理を行うので、処理対象の設計書の単語Ｎグラムは、入れ替わっていくため、入れ替わっていくうちの１つの処理対象の設計書の単語Ｎグラムという意味である。）の中に、プログラムＩＤ・ジョブＩＤ取得手段５２により取得されてプログラムＩＤ・ジョブＩＤ記憶手段６３に記憶されているプログラムＩＤおよび／またはジョブＩＤ（本実施形態では、一例として障害影響度Ｓ，ＡのプログラムＩＤやジョブＩＤ）が含まれているか否かを判断し、含まれている場合に、当該プログラムＩＤおよび／または当該ジョブＩＤに対応する障害管理番号を、出力対象の障害管理番号として採用し、その障害管理番号を出力対象記憶手段６８に記憶させるか、またはその障害管理番号に加えてその障害管理番号に関連付けられた障害情報（現象、原因等）を出力対象記憶手段６８に記憶させる（ステップＳ５７）。なお、このプログラムＩＤ・ジョブＩＤ基準判断処理では、単語Ｎグラムマッチング要求処理の場合とは異なり、スコアはないので、便宜上、スコアはゼロとするか、ＮＵＬＬまたはＮＵＬＬ相当とする。
【０１８６】
次に、単語Ｎグラム単位検知処理手段５５により、頻出語スキップ処理を実行する。すなわち、単語Ｎグラムマッチング要求処理を実行する前に、単語Ｎグラムマッチング検索要求用のクエリに含ませて送出する対象となっている処理対象の設計書の単語Ｎグラムを構成するＮ個（本実施形態では、３個）の単語の中に、頻出語取得手段５３により取得して頻出語記憶手段６４に記憶されている頻出語が含まれているか否かを判断し（ステップＳ５８）、１つでも含まれている場合には、単語Ｎグラムマッチング要求処理を行わずに（検索をスキップし）、次の処理対象の設計書の単語Ｎグラムへ進む（後述するステップＳ６３の処理へ移行する）。この頻出語スキップ処理については、単語Ｎグラム単位検知処理手段５５の構成の説明で、図１１を用いて既に詳述しているので、ここでは詳しい説明を省略する。
【０１８７】
一方、上記のステップＳ５８で、頻出語が含まれていないと判断した場合には、次のような単語Ｎグラムマッチング要求処理（ステップＳ５９）に移行する。この単語Ｎグラムマッチング要求処理では、ループ処理で入れ替わっていく処理対象の設計書の単語Ｎグラムについて、同じ単語Ｎグラムが２度目以降の処理対象となった場合には、その２度目以降の単語Ｎグラムについては、単語Ｎグラムマッチング要求処理を行わない。送出するクエリにおいてＴＦ、ＩＤＦを用いた重み付けを行っていることによる。
【０１８８】
先ず、単語Ｎグラム単位検知処理手段５５により、設定ファイル記憶手段６７に記憶されている障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤ、並びに、設計書の単語Ｎグラムについての重みＷＦ算出用の基準重み、関連単語群についての重みＷＲ算出用の基準重み、およびフレーズあいまい検索についての重みＷＶ算出用の基準重みを取得する（ステップＳ５９）。なお、フレーズあいまい検索を行わない場合には、その重みＷＶは使用しなくてよく、また、関連単語群によるマッチングを行わない場合には、その重みＷＲは使用しなくてよい。
【０１８９】
次に、単語Ｎグラム単位検知処理手段５５により、処理対象の設計書の単語Ｎグラムと同一の単語群についてのＴＦおよびＩＤＦを単語群出現頻度記憶手段６６から取得する。続いて、処理対象の設計書の単語Ｎグラムについての重みＷＦ＝基準重み×ＴＦ×ＩＤＦを算出決定し、関連単語群についての重みＷＲ＝基準重み×ＴＦ×ＩＤＦを算出決定し、フレーズあいまい検索についての重みＷＶ＝基準重み×ＴＦ×ＩＤＦを算出決定する（ステップＳ５９）。
【０１９０】
それから、単語Ｎグラム単位検知処理手段５５により、学習結果記憶手段６２に記憶されたモデル（単語ベクトル（単語群ベクトル）による重み行例）を用いて、処理対象の設計書の単語Ｎグラム（ここでは、単語３グラム）に対する１つまたは複数の関連単語群（ここでは、３つの単語を連結した単語群）を求める（ステップＳ５９）。
【０１９１】
そして、単語Ｎグラム単位検知処理手段５５により、処理対象の設計書の単語Ｎグラム、１つまたは複数の関連単語群、障害影響度毎の重みＷＳ，ＷＡ，ＷＢ，ＷＣ，ＷＤ、並びに、処理対象の設計書の単語Ｎグラムについての重みＷＦ、関連単語群についての重みＷＲ、およびフレーズあいまい検索についての重みＷＶを用いて、図１２に示すように、単語Ｎグラムマッチング検索要求用のクエリを作成し、作成したクエリを、検索エンジン３０の検索手段３３に向けて送出する（ステップＳ５９）。
【０１９２】
検索エンジン３０では、検索手段３３により、単語Ｎグラム単位検知処理手段５５からのクエリを受け取り、このクエリに基づき、障害一覧記憶手段３４（図３参照）に記憶されたデータを用いて、単語Ｎグラムマッチング検索処理を実行する（ステップＳ６０）。すなわち、クエリに含まれる設計書の単語Ｎグラムや関連単語群と、障害情報（現象および原因）の単語Ｎグラムとのマッチング検索や、フレーズあいまい検索を行い、スコア（合致度）の算出処理を実行する。この単語Ｎグラムマッチング検索処理については、検索手段３３の構成の説明で既に詳述しているので、ここでは詳しい説明を省略する。なお、フレーズあいまい検索は、省略してもよく、関連単語群とのマッチング検索も必須ということではなく、これらの使用・不使用は、選択することができる。
【０１９３】
それから、検索手段３３により、クエリに対する検索結果（応答結果）として、クエリに基づく検索条件に合致したレコードの障害管理番号、算出したスコア、またはこれらに加えて障害管理番号に対応する障害情報（現象や原因等）を、単語Ｎグラム単位検知処理手段５５に送信（返信）する（ステップＳ６１）。なお、障害一覧記憶手段３４（図３参照）は、データベースに限らず、ファイルによるデータ保存形式でもよいので、ここでのレコードは、必ずしもデータベースのテーブルを構成するレコードではなく、１つの障害管理番号を付されて管理されている、ある過去障害に関するデータの集合という意味である。
【０１９４】
続いて、単語Ｎグラム単位検知処理手段５５により、検索エンジン３０の検索手段３３から返信されてきた検索結果（障害管理番号、スコア、または、これらに加えて現象や原因等の障害情報）を受け取り、受け取った検索結果を、出力対象記憶手段６８に記憶させる（ステップＳ６２）。この際、出力対象記憶手段６８に既に同じ障害管理番号およびそれに対応するスコアが記憶されている場合には、スコアを加算する。このスコアの処理については、図１４を用いて単語Ｎグラム単位検知処理手段５５の構成の説明で既に詳述しているので、ここでは詳しい説明は省略する。
【０１９５】
そして、設計書単語列記憶手段６５に記憶された［Ａ］単語Ｎグラム（本実施形態では、単語３グラム）用の設計書の単語列から切り出す単語Ｎグラムが、まだ在るか否か、または、設計書単語列記憶手段６５に記憶された［Ｂ］設計書の単語Ｎグラムの集合から取得する単語Ｎグラムが、まだ在るか否かを判断し（ステップＳ６３）、まだ在る場合には、次の単語Ｎグラムの処理に移行するために、ステップＳ５７の処理に戻る。一方、もう無い場合には、単語Ｎグラム単位検知処理手段５５によるループ処理を終了する。
【０１９６】
その後、検知結果出力手段５６により、単語Ｎグラム単位検知処理手段５５による前述したステップＳ５９の単語Ｎグラムマッチング要求処理で得られてステップＳ６２で出力対象記憶手段６８に記憶された障害管理番号等を、合計スコアでソートし、それらの障害管理番号等の中から、スコアが上位（例えば、上位１０位以内、上位１５位以内等）の過去障害を選択する（ステップＳ６４）。
【０１９７】
続いて、検知結果出力手段５６により、上記のステップＳ６４で選択したスコアが上位の過去障害についての障害管理番号と、前述したステップＳ５７のプログラムＩＤ・ジョブＩＤ基準判断処理で得られて出力対象記憶手段６８に記憶されている障害影響度Ｓ，ＡのプログラムＩＤやジョブＩＤに係る障害管理番号とを用いて、チェックリスト記憶手段６１（図２参照）に記憶されているチェック情報（チェック項目等を含む）を取得し、取得したチェック情報を出力するか、またはこのチェック情報に加えて障害管理番号に対応する障害情報（現象、原因等を含む）を出力する（ステップＳ６５）。この障害予兆検知結果の表示等の出力処理については、図４を用いて検知結果出力手段５６の構成の説明で既に詳述しているので、ここでは詳しい説明は省略する。なお、本実施形態では、検知結果出力手段５６により、出力するチェック情報等を含む障害予兆検知結果ファイルを作成して出力し、共有ファイルサーバ７０の障害予兆検知結果ファイル記憶手段７５に配置する。共有ファイルサーバ７０では、障害予兆検知サーバ２０からネットワーク１を介して送信されてくる障害予兆検知結果ファイルを受信し、障害予兆検知結果ファイル記憶手段７５に格納する（ステップＳ６６）。
【０１９８】
それから、利用者は、利用者端末１１０を操作し、障害予兆検知結果ファイル記憶手段７５に記憶されている障害予兆検知結果ファイルの取得要求を、ネットワーク１を介して共有ファイルサーバ７０へ送信し、共有ファイルサーバ７０から送信されてくる障害予兆検知結果ファイルを受信し、画面表示や印刷等の出力を行う（ステップＳ６７）。共有ファイルサーバ７０では、利用者端末１１０からの取得要求を受け取ると、障害予兆検知結果ファイル記憶手段７５に記憶されている障害予兆検知結果ファイルを、ネットワーク１を介して利用者端末１１０へ送信する（ステップＳ６８）。
【０１９９】
＜本実施形態の効果＞
【０２００】
このような本実施形態によれば、次のような効果がある。すなわち、障害予兆検知システム１０は、過去障害についての障害情報および設計書の記載内容を用いて設計書を自動分析し、過去障害に紐付くチェック項目を含むチェック情報を出力するか、または過去障害についての障害情報とそれに紐付くチェック項目を含むチェック情報とを出力するので、設計書のレビューの自動化を図ることができる。
【０２０１】
また、設計書のレビューの自動化の実現により、人に依存した品質確保体制からの脱却を図ることができるので、従来の体制下におけるライン役席等の通常のレビュー者や、第三者レビューを行うレビュー者は、その分だけ、時間的な拘束が少なくなるか、無くなることから、レビュー者の負担を軽減することができる。また、レビュー者の都合を考慮する必要性を少なくするか、無くすことができるため、即時レビューの実施を行うこともできる。
【０２０２】
さらに、設計書のレビューの自動化の実現により、レビュー者の経験や知識に頼る場合に比べ、一定レベルのレビュー品質の確保や、レビューの標準化を図ることができる。
【０２０３】
そして、過去障害に紐付くチェック項目を含むチェック情報が出力されるので、障害発生の未然防止を図ることもできる。
【０２０４】
また、Ｎを２以上とする単語Ｎグラム（連続するＮ個の単語であり、本実施形態では、一例として３個の単語）によるマッチングを行うので、単なるＮグラム（単語ではなく、連続するＮ個の文字）によるマッチングや、Ｎを１とする単語Ｎグラム（単語ユニグラム）によるマッチングを行う場合に比べ、設計書の記載内容の自動分析の精度、すなわち障害予兆検知の精度を向上させることができる。
【０２０５】
さらに、単語Ｎグラム単位検知処理手段５５は、頻出語スキップ処理（図８のステップＳ５８参照）を実行する構成とされているので、頻出語をノイズとみなした処理を実現することができ、障害予兆検知の精度を向上させることができる。従って、単語群（連続するＮ個の単語をその順番を保って並べた状態の単語列）としての単語Ｎグラムで見た場合に、出現回数の多い単語群は、設計書の記載内容の自動分析を行ううえで重要な要素であると捉える一方（マッチングした際のスコアを加算しているので、重要な要素と捉えていることになる。）、単語群ではなく、１つの単語で見た場合の頻出語は、ノイズであるとみなす取り扱いを実現することができる。このため、Ｎを２以上とする単語Ｎグラム（連続するＮ個の単語、本実施形態では、一例として３個の単語）によるマッチングを採用することによる設計書の記載内容の自動分析の精度向上効果、すなわち障害予兆検知の精度向上効果を、より一層顕著なものとすることができる。
【０２０６】
また、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理（図８のステップＳ５９〜Ｓ６２参照）に加え、プログラムＩＤ・ジョブＩＤ基準判断処理（図８のステップＳ５７参照）を実行する構成とされているので、プログラムＩＤおよび／またはジョブＩＤを利用し、設計書の記載内容と過去障害とを紐付けることができる。このため、コンピュータシステムの設計開発で作成される設計書の自動分析を、より一層精度よく行うことができ、障害予兆検知の精度を、より一層向上させることができる。
【０２０７】
さらに、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理（図８のステップＳ５９〜Ｓ６２参照）として、障害影響度Ｓ，Ａ，Ｂ，Ｃ，Ｄ毎の重みを設計書の単語Ｎグラムやその関連単語群とともにクエリに含ませて送出し、検索エンジン３０の検索手段３３が、それらの障害影響度毎の重みを用いてスコアを算出する構成とされているので、クエリに含まれる設計書の単語Ｎグラムやその関連単語群が、障害情報（本実施形態では、現象および原因）の単語Ｎグラムと一致したときに、当該障害情報の単語Ｎグラムが、大きな障害影響度に対応していれば、スコアが相対的に大きくなり、小さな障害影響度に対応していれば、スコアが相対的に小さくなるように調整することができる。このため、障害予兆検知の精度を、より一層向上させることができる。
【０２０８】
そして、単語Ｎグラム単位検知処理手段５５は、関連単語群を用いてマッチングを行う構成とされているので、設計書の単語Ｎグラムと障害情報（現象および原因）の単語Ｎグラムとのマッチングに加え、関連単語群と障害情報の単語Ｎグラムとのマッチングを行うことができるので、障害予兆検知の精度を、より一層向上させることができる。
【０２０９】
また、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理として、設計書の単語Ｎグラムについての重みＷＦ算出用の基準重み、およびこの基準重みよりも小さい関連単語群についての重みＷＲ算出用の基準重みを、設計書の単語Ｎグラムおよび関連単語群とともにクエリに含ませて送出する構成とされているので、クエリに含まれる設計書の単語Ｎグラムが、障害情報（現象および原因）の単語Ｎグラムと一致したときには、スコアが相対的に大きくなり、クエリに含まれる関連単語群が、障害情報の単語Ｎグラムと一致したときには、スコアが相対的に小さくなるように調整することができるので、障害予兆検知の精度を、より一層向上させることができる。
【０２１０】
さらに、単語Ｎグラム単位検知処理手段５５は、フレーズあいまい検索を行うこともできるので、状況に応じた多様な検索を行うことができる。
【０２１１】
また、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理として、単語群出現頻度ＴＦおよび単語群稀少度ＩＤＦを用いて、設計書の単語Ｎグラムについての重みＷＦ、関連単語群についての重みＷＲを算出決定することにより、同じ設計書の単語Ｎグラムを含むクエリの送出の繰り返しを回避する構成とされているので、検索手段３３による同じマッチング処理の繰り返しを回避することができ、演算速度の向上を図ることができる。
【０２１２】
［変形の形態］
【０２１３】
なお、本発明は前記実施形態に限定されるものではなく、本発明の目的を達成できる範囲内での変形等は本発明に含まれるものである。
【０２１４】
例えば、前記実施形態の障害予兆検知システム１０では、ネットワーク１を介して障害予兆検知サーバ２０と、その他の装置・システム・端末を接続した構成とされていたが、本発明は、このようなネットワーク構成に限定されるものではなく、スタンドアロンで構成してもよい。
【０２１５】
また、前記実施形態の障害予兆検知サーバ２０、およびその他の装置・システム・端末は、それぞれ１つまたは複数の機能を有しているが、各機能の配置（各機能がいずれの装置・システム・端末に帰属するか）は、必ずしも前記実施形態の障害予兆検知システム１０の状態に限定されるものではなく、各機能の分散または組合せの態様は任意である。
【０２１６】
例えば、障害予兆検知サーバ２０の中の検索エンジン３０は、独立したサーバにより構成してもよく、障害予兆検知サーバ２０の中のチェックリスト記憶手段６１も、独立したサーバに設置してもよい。また、障害情報管理システム８０と、チェックリスト管理システム９０とは、１つのシステムであってもよい。さらに、障害予兆検知に必要な各種データの受渡しは、共有ファイルサーバ７０を介した各種ファイルの送受信によらずに、直接の送受信としてもよい。
【０２１７】
さらに、前記実施形態では、障害予兆検知の対象となる設計書は、システムの開発設計の設計書とされていたが、本発明の障害予兆検知の対象となる設計書は、これに限定されるものではなく、例えば、家電製品等の製品や商品の設計書、自動車や航空機等の乗り物の設計書、建築物の設計書等の様々な設計書でもよい。但し、システムの開発設計の設計書でない場合には、プログラムＩＤ・ジョブＩＤ基準判断処理は行わない。すなわち、前記実施形態の単語Ｎグラム単位検知処理手段５５は、単語Ｎグラムマッチング要求処理（図８のステップＳ５９〜Ｓ６２参照）に加え、プログラムＩＤ・ジョブＩＤ基準判断処理（図８のステップＳ５７参照）を実行する構成とされていたが、後者の処理は行わないことになる。
【０２１８】
また、前記実施形態の単語Ｎグラム単位検知処理手段５５は、プログラムＩＤ・ジョブＩＤ基準判断処理（図８のステップＳ５７参照）、頻出語スキップ処理（図８のステップＳ５８参照）、単語Ｎグラムマッチング要求処理（図８のステップＳ５９〜Ｓ６２参照）を実行する構成とされていたが、本発明の単語Ｎグラム単位検知処理手段は、図１６に示すように、これらの処理に加え、単語Ｎグラム拡張マッチング要求処理を実行する構成としてもよい。前記実施形態の場合に対し、機能が増えるだけであるので、図１６および以下の説明では、前記実施形態と同じ符号を用いるものとする。
【０２１９】
図１６において、プログラムＩＤ・ジョブＩＤ記憶手段６３は、プログラムＩＤ・ジョブＩＤ取得手段５２により障害一覧記憶手段３４（図３参照）から取得した大きな障害影響度（例えば、障害影響度Ｓ，Ａ）のプログラムＩＤおよび／またはジョブＩＤおよびその他の障害情報（現象、原因、再発防止策等）、障害管理番号、並びに、［Ａ］障害情報（例えば、現象・原因）の単語列または［Ｂ］障害情報（例えば、現象・原因）の単語Ｎグラムの集合を関連付けて記憶する。
【０２２０】
図１６の例では、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラム拡張マッチング要求処理として、プログラムＩＤ・ジョブＩＤ基準判断処理（図８のステップＳ５７参照）で採用した出力対象の障害管理番号に関連付けられてプログラムＩＤ・ジョブＩＤ記憶手段６３に記憶されている［Ａ］障害情報（例えば、現象・原因）の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または［Ｂ］障害情報（例えば、現象・原因）の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの各々を、単語Ｎグラム拡張マッチング検索要求用のクエリに含ませて送出するとともに、この単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果（応答結果）を受け取る処理を実行する。
【０２２１】
そして、単語Ｎグラム単位検知処理手段５５は、単語Ｎグラム拡張マッチング要求処理においても、単語Ｎグラムマッチング要求処理の場合と同様に、検索エンジン３０から、単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果（応答結果）として、マッチングした過去障害についての障害管理番号若しくはこの障害管理番号に加えて対応する障害情報（現象、原因等）を、スコア（合致度）とともに受け取り、受け取った情報を出力対象記憶手段６８に記憶させるが、この際には、図１４に示すようなスコアの処理を実行する。すなわち、受け取った障害管理番号が、出力対象記憶手段６８に既に記憶されている場合には、その障害管理番号についてスコアを加算する処理を行う。
【０２２２】
また、図１６の例では、検索エンジン３０の検索手段３３は、単語Ｎグラム単位検知処理手段５５から送出された単語Ｎグラム拡張マッチング検索要求用のクエリを受け取り、受け取ったクエリに含まれる障害情報（例えば、現象・原因）の単語Ｎグラムについて、障害一覧記憶手段３４（図３参照）に記憶された［Ａ］障害情報（例えば、現象・原因）の単語列から１単語ずつずらしながら切り出した障害情報の単語Ｎグラム、または［Ｂ］障害情報（例えば、現象・原因）の単語Ｎグラムの集合から取得した障害情報の単語Ｎグラムの中に一致する障害情報の単語Ｎグラムがあるか否かを判断し、一致する障害情報の単語Ｎグラムがある場合に、当該障害情報の単語Ｎグラムまたはこの単語Ｎグラムを切り出した単語列に関連付けられて障害一覧記憶手段３４に記憶されている障害管理番号若しくはこの障害管理番号に加えて対応する障害情報（現象、原因、再発防止策等）を、スコアとともに、単語Ｎグラム拡張マッチング検索要求用のクエリに対する検索結果（応答結果）として単語Ｎグラム単位検知処理手段５５に返す処理を実行する。
【０２２３】
さらに、図１６の例では、検知結果出力手段５６は、単語Ｎグラムマッチング要求処理で得られた障害管理番号と、プログラムＩＤ・ジョブＩＤ基準判断処理で得られた障害管理番号と、単語Ｎグラム拡張マッチング検索処理で得られた障害管理番号とを用いて、チェックリスト記憶手段６１に記憶されているチェック情報を取得し、それぞれの障害管理番号を用いて取得したチェック情報を並べて出力するか、またはこれらのチェック情報に加えてそれぞれの障害管理番号に対応する障害情報（現象、原因等）を並べて出力する。
【０２２４】
この際、検知結果出力手段５６は、単語Ｎグラムマッチング要求処理の場合と同様に、単語Ｎグラム拡張マッチング要求処理で得られて出力対象記憶手段６８に記憶されている障害管理番号および対応する障害情報（現象、原因等）を、スコア（合計値）でソートし、スコアの合計値（図１４参照）が、例えば、上位１０位以内、上位１５位以内等のように予め定められた数の上位の過去障害についての障害管理番号等を出力する。また、これらを出力する際には、チェックリスト記憶手段６１（図２参照）からのチェック情報（チェック項目等を含む）の取得は、上位１０位以内、上位１５位以内等の過去障害についてだけ行えばよい。なお、出力する上位の過去障害の数（上位何位以内を出力するか）は、単語Ｎグラムマッチング要求処理の場合と、単語Ｎグラム拡張マッチング要求処理の場合とで異なっていてもよい。
【０２２５】
また、検知結果出力手段５６は、単語Ｎグラムマッチング要求処理で得られた障害管理番号等と、単語Ｎグラム拡張マッチング検索処理で得られた障害管理番号等とを、分けて別々のエリアに出力してもよく、混在させて出力してもよい。混在させて出力する場合には、単語Ｎグラムマッチング要求処理で得られた障害管理番号に対応するスコア（合計値）と、単語Ｎグラム拡張マッチング検索処理で得られた障害管理番号に対応するスコア（合計値）とを混在させた状態で、スコアの順位付けを行うことになるので、これらのスコアの相対的な大きさを調整するため、単語Ｎグラム拡張マッチング検索処理で得られた障害管理番号に対応するスコア（合計値）をＫ倍（Ｋ＞１）することが好ましい。
【０２２６】
このように単語Ｎグラム拡張マッチング要求処理を実行する構成とした場合には、プログラムＩＤ・ジョブＩＤ基準判断処理（図８のステップＳ５７参照）で得られた障害管理番号に対応する［Ａ］障害情報（例えば現象・原因）の単語列または［Ｂ］障害情報（例えば現象・原因）の単語Ｎグラムの集合を利用し、障害情報（例えば現象・原因）の単語Ｎグラムを含む単語Ｎグラム拡張マッチング検索要求用のクエリを作成し、そのクエリに含まれる障害情報（例えば現象・原因）の単語Ｎグラムと、検索エンジン３０の障害一覧記憶手段３４（図３参照）に記憶された障害情報（例えば現象・原因）の単語Ｎグラムとをマッチングさせる。従って、この単語Ｎグラム拡張マッチング要求処理（障害情報の単語Ｎグラムどうしのマッチング）は、プログラムＩＤ・ジョブＩＤ基準判断処理と、単語Ｎグラムマッチング要求処理（設計書の単語Ｎグラムと障害情報の単語Ｎグラムとのマッチング）とを融合した処理であるともいえるので、単語Ｎグラム単位検知処理手段５５は、異なる２系統の処理、およびそれらを融合した処理を行うことで、互いに関連する３系統の処理で、出力対象の障害管理番号を得ることができる。
【産業上の利用可能性】
【０２２７】
以上のように、本発明の障害予兆検知システムおよびプログラムは、例えば、システムの設計開発において作成した設計書の自動分析を行う場合等に用いるのに適している。
【符号の説明】
【０２２８】
１０  障害予兆検知システム
３１  障害情報単語列生成手段
３３  検索手段
３４  障害一覧記憶手段
３５  単語累積出現回数記憶手段
４３  関連単語群学習手段
５１  設計書文章抽出手段
５２  プログラムＩＤ・ジョブＩＤ取得手段
５３  頻出語取得手段
５４  設計書単語列生成手段
５５  単語Nグラム単位検知処理手段
５６  検知結果出力手段
６１  チェックリスト記憶手段
６２  学習結果記憶手段
６３  プログラムＩＤ・ジョブＩＤ記憶手段
６４  頻出語記憶手段
６５  設計書単語列記憶手段
６６  単語群出現頻度記憶手段
８１  原障害一覧記憶手段
【図１】
2020080024.tif 000003
【図２】
2020080024.tif 000004
【図３】
2020080024.tif 000005
【図４】
2020080024.tif 000006
【図５】
2020080024.tif 000007
【図６】
2020080024.tif 000008
【図７】
2020080024.tif 000009
【図８】
2020080024.tif 000010
【図９】
2020080024.tif 000011
【図１０】
2020080024.tif 000012
【図１１】
2020080024.tif 000013
【図１２】
2020080024.tif 000014
【図１３】
2020080024.tif 000015
【図１４】
2020080024.tif 000016
【図１５】
2020080024.tif 000017
【図１６】
2020080024.tif 000018