(57)【要約】【課題】事前に準備するコスト（費用と時間）をかけずに、不要な語句や記号を含む仕様テキスト間の整合性を高精度に計算する。【解決手段】システム開発における仕様テキスト間の関連性を判定する関連性判定システム（１）において、語句変換部（１０２）は、２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する。関連性計算部（１０３）は、変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連性を計算する。【選択図】図１
2014229069.tif 000002
【特許請求の範囲】
【請求項１】
システム開発における仕様テキスト間の関連性を判定するシステムであって、
２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて、不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換部と、
変換された仕様テキストに基づいて、集合間の個々の仕様テキスト間の関連性を計算する関連性計算部と、
を備えることを特徴とする関連性判定システム。
【請求項２】
前記関連性計算部は、前記関連性を、コルモゴロフ複雑性の概算を用いて類似度として計算する、ことを特徴とする請求項１に記載の関連性判定システム。
【請求項３】
前記語句変換部は、推定された不要語句を、予め定めた特殊記号に変換する、ことを特徴とする請求項１または２に記載の関連性判定システム。
【請求項４】
前記語句変換部は、集合間における偏りとして、相互情報量、情報利得や情報利得比、カイ二乗統計量のいずれか１つまたはそれらの組合せを用い、集合間の偏りが予め定めた閾値より大きい語句を不要語句と推定する、ことを特徴とする請求項１乃至３のいずれか１項に記載の関連性判定システム。
【請求項５】
前記語句変換部は、集合内における偏りとして、逆文書頻度を用い、集合内の偏りが予め定めた閾値より小さい語句を不要語句と推定する、ことを特徴とする請求項１乃至４のいずれか１項に記載の関連性判定システム。
【請求項６】
前記語句変換部は、２つの集合間の仕様テキストの予め定めた閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合間における偏り、及びそれぞれの集合内における仕様テキスト間の偏りの少なくとも１つに基づいて、語句を変換し処理済みとする処理を、処理済みの文字列がなくなるまで繰り返す、ことを特徴とする請求項１乃至３のいずれか１項に記載の関連性判定システム。
【請求項７】
前記語句変換部は、それぞれの集合内で２つ以上の仕様テキストに出現する閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合内における偏りに基づいて、語句を変換し処理済みとする処理を、処理済の文字列がなくなるまで繰り返す、ことを特徴とする請求項１乃至３および６のいずれか１項に記載の関連性判定システム。
【請求項８】
前記仕様テキストは、仕様テキストの構造を示す構造情報と、仕様テキストの内容を示す仕様本文とに分割されており、
前記語句変換部は、前記構造情報のテキストを変換し、
前記関連性計算部は、前記変換された構造情報と前記仕様本文とを連結したテキストに基づいて、仕様テキスト間の関連性を計算する、
ことを特徴とする請求項１乃至７のいずれか１項に記載の関連性判定システム。
【請求項９】
システム開発における仕様テキスト間の関連性を判定する方法であって、
語句変換部が、２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換ステップと、
関連性計算部が、変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連性を計算する関連性計算ステップと、
を備えることを特徴とする関連性判定方法。
【請求項１０】
コンピュータに、システム開発における仕様テキスト間の関連性を判定させるプログラムであって、
２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換処理と、
変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連性を計算する関連性計算処理と、
を前記コンピュータに実行させる関連性判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、関連性判定システム、方法およびプログラムに関し、特に、システム開発における仕様テキスト間の関連性を判定する関連性判定システム、方法およびプログラムに関する。
【背景技術】
【０００２】
従来、システム・ソフトウェア開発における仕様書は、人手でレビューして整合性を確認していた。しかしながら、量が多く重複した記載のある文書の検査には、コスト（費用と時間）がかかり、また、人手では見逃す場合があるという問題があった。
【０００３】
そこで従来から、仕様テキスト間の関連性を抽出する技術思想が種々提案されている。
【０００４】
例えば、特許文献１は、トレース情報を抽出する方法（以下、「先行技術１」と呼ぶ）を開示している。この特許文献１に開示された先行技術１では、要件定義書に含まれる要件要素の項目と、基本設計書に含まれる設計要素の項目とを比較し、所定割合以上（閾値以上）含まれていた場合に、要件要素と設計要素との組をトレース情報として抽出する。たとえば、要件定義書の要件要素“顧客管理”の項目が“区分”、“顧客コード”、“顧客名”、“住所”、“顧客分類”などであり、設計要素“顧客情報管理”の項目が“区分”、“顧客コード”、“顧客名”などであり、別の設計要素“顧客情報登録”の項目が“顧客コード”、“住所”、“顧客分類”などであるとする。この場合、先行技術１は、要件要素“顧客管理”の項目と、２つの設計要素“顧客情報管理”と“顧客情報登録”との組合せの項目とに、一致が多いことから、要件要素““顧客管理”に対し、２つの設計要素“顧客情報管理”及び“顧客情報登録”をトレース情報として抽出する。
【０００５】
また、特許文献２は、要件定義書や設計書から仕様テキスト（言明）を抽出し、漏れなどを検出する方法（以下、「先行技術２」と呼ぶ）を記載している。特許文献２に開示された先行技術２では、仕様テキストを文脈と内容の組で構成しており、文脈の例は、章や節、図表の表題である。ここで、文脈としてはフォルダ名やファイル名、Excelのシート名などの構造情報も考えられる。
【０００６】
また、特許文献３は、仕様間の関連性を判定する方法（以下、「先行技術３」と呼ぶ）を記載している。特許文献３に開示された先行技術３では、語句変換部が、変換語句記憶部に記憶された変換語句に基づいて初期仕様を変換した後、関連性有無判定部や関連性計算部が、仕様間の関連性を計算している。ここで、先行技術３を用いると、不要な語句や記号を特殊記号に変換することを事前に変換語句記憶部に記憶しておき、不要な語句や記号を含む仕様テキスト間の整合性を高精度に計算することが可能である。
【０００７】
さらに、仕様テキスト間に限定せず、一般的な自然言語処理においても、不要語句であるストップワードを事前に登録しておき、削除するという方法（以下、「先行技術４」と呼ぶ）がある。
【０００８】
また、一般的な自然言語処理において、単語の出現頻度（Term Frequency、ＴＦ）と逆文書頻度（Inverse Document Frequency、ＩＤＦ）を用いて、多くのテキストに出現する単語は重要でないなどと重み付ける方法（以下、「先行技術５」と呼ぶ）がある。
【０００９】
さらに、一般的な自然言語処理において、複数の集合に分類されたテキストデータに対し、集合ごとに出現頻度が偏らない単語を集合への分類で重要でないとして削除するという方法（以下、「先行技術６」と呼ぶ）がある。ここでの単語の重要性は、集合への分類に重要な単語であり、極端にいえば、先行技術６は、ある集合のみに出現する単語は重要であると判定する。
【００１０】
また、関連性を抽出する技術思想ではないが、本発明に関連する他の先行技術も知られている。
【００１１】
例えば、特許文献４は、コミュニティ内のメンバーの発言をもとに、一般用語を除外して個人を特徴づけるキーワードを抽出する方法（以下、「先行技術７」と呼ぶ）を開示している。先行技術７では、偏りスコア計算部は、形態素解析部において処理された形態素解析結果を用いて、各文書においてどのような単語が出現したかを、共起リスト一時記憶部および出現数一時記憶部に記憶する。偏りスコア計算部は、単語間や、単語とカテゴリとの間のカイ二乗値やシンプソン値を偏りスコアとして計算する。一般用語抽出部は、偏りスコア計算部で計算された結果を用いて、偏りが少ない単語を一般用語として抽出する。一般用語抽出部は、偏りスコア一時記憶部に記憶されたレコードについて、所定の条件を満たすレコードを抽出する。インデックス抽出部は、偏りスコア計算部で計算された偏りスコア値をもとに、カテゴリと単語の間の偏りスコアと、単語間の偏りスコアから、各カテゴリのインデックス（個人の特徴を特徴づけるキーワード）を抽出する。単語間の関連の強さを算出するために、相互情報量などを用いている。
【００１２】
また、特許文献５は、文字の並びの出現頻度に偏りがあるような文字列に対して効率的にハッシングを行なう方法（以下、「先行技術８」と呼ぶ）を開示している。先行技術８では、ブラウザから与えられたＵＲＬに含まれる部分文字列を、文字列リストを参照して、より短い長さの所定のコードに変換している。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２０１３−００８２３７号公報
【特許文献２】ＷＯ２０１１／１２９１９８
【特許文献３】ＷＯ２０１２／１２４３０１
【特許文献４】特開２０１１−１０３０５９号公報
【特許文献５】特開平１１−３０６１９４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
上述した先行技術１〜６には、それぞれ、以下に述べるような問題がある。
【００１５】
先行技術１では、単に項目の一致数を調べているので、要件要素“顧客管理”の項目が“IDコード”、“名前”、“住所”などであり、設計要素“顧客情報管理”の項目が“IDコード”、“名前”、“住所”であり、別の設計要素“従業員情報管理”の項目が“IDコード”、“名前”、“住所”などと一致する場合、先行技術１は、要件要素“顧客管理”と設計要素“従業員管理”とのトレース情報も誤って抽出してしまうという問題がある。また、項目に表記揺れが多い場合、先行技術１ではトレースが困難になると同時に、要件要素の項目と設計要素の項目とを個別にトレースすることができない。たとえば、要件要素“顧客管理”の項目“名前”に対し、設計要素“顧客情報管理”の項目“氏名”があった場合に、先行技術１は、項目“名前”に対し、項目“氏名”をトレースすることはできない。
【００１６】
構造情報には、不要な用語や記号が含まれているため、先行技術２のように単に仕様テキストに構造情報を追加したのでは、関連性計算の精度が低くなってしまうという問題がある。たとえば、要件定義書が“C:\要件定義\要件定義書.docx”であるとする。この場合、設計書のフォルダが“C”であるか“D”であるかは仕様テキストを関連付けるかどうかに関係ないはずであるが、単にフォルダ名を仕様テキストに追加すると、“C”の方が“D”より関連性が高いと判定してしまう。他の用語や記号も同様である。したがって、先行技術２のように、不要な用語や記号が含まれている構造情報を単に仕様テキストに追加することは、関連性計算の精度が低くなってしまうという問題がある。
【００１７】
案件ごとに不要な語句や記号は異なるため、案件ごとに変換語句を事前に準備する必要がある。したがって、先行技術３では、コスト（費用と時間）がかかるという問題がある。
【００１８】
前述したように、案件ごとに不要な語句や記号は異なるため、先行技術４では、案件ごとにストップワードを事前に準備する必要があり、コスト（費用と時間）がかかるという問題がある。
【００１９】
一方の集合だけに出現し、もう一方の集合には出現しない単語は、集合間の仕様テキスト間を関連付けるのに不要であるが、最初の集合の仕様テキスト数が少ない場合、全体的にはその単語の含まれる仕様テキスト数が少ない。そのため、先行技術５では、その単語が重要と判定されてしまうという問題がある。
【００２０】
仕様テキスト間の整合性を判定する場合、ある集合（たとえば、要件要素）だけに出現し、別の集合（たとえば、設計要素）に出現しない単語は、先行技術６では重要と判定されるが、集合間の仕様を関連付けるのに不要である。したがって、先行技術６は、システム開発における仕様テキスト間の関連性判定には適さない。
【００２１】
なお、先行技術７は、単語間や、単語とカテゴリとの間のカイ二乗値やシンプソン値、相互情報量を偏りスコアとして計算し、その計算された結果を用いて、偏りが少ない単語を一般用語として抽出し、抽出された一般用語を文書から除いて、個人の特徴を示すキーワードを抽出する技術思想を開示しているに過ぎない。すなわち、先行技術７は、単に、単語間や単語のカテゴリとの間の偏りスコアを計算する方法を開示しているに過ぎない。換言すれば、先行技術７では、仕様テキストを２つの集合に分類した場合に、どのようにして偏りスコアを計算するのかについて、何ら示唆も考慮もしていない。
【００２２】
また、先行技術８は、ＵＲＬのように、文字の並びの出現頻度に偏りがあるような文字列に対して効率的にハッシングを行なえる方法を開示しているに過ぎない。
【００２３】
本発明は、上記の事情に鑑みてなされたものであって、その目的は、システム開発において、事前に準備するコスト（費用と時間）をかけずに、不要な語句や記号を含む仕様テキスト間の整合性を高精度に計算することができる、関連性判定システム、方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００２４】
本発明の関連性判定システムは、システム開発における仕様テキスト間の関連性を判定する関連性判定システムであって、２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、または、それぞれの集合内における語句の出現頻度の仕様テキスト間における偏りのいずれかまたは両方に基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換部と；変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連付けを計算する関連性計算部と；を備えることを特徴とする。
【発明の効果】
【００２５】
本発明によれば、不要な語句や記号を含む仕様テキスト間の整合性を高精度に計算することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の第１の実施形態に係る関連性判定システムの構成例を示すブロック図である。
【図２】図１に示した関連性判定システムに使用される、初期仕様記憶部に記憶された初期仕様の例を示す説明図である。
【図３】構造情報と仕様本文とを区別した初期仕様の例を示す説明図である。
【図４】図１に示した関連性判定システムに使用される、変換仕様記憶部に記憶された変換仕様の例を示す説明図である。
【図５】構造情報と仕様本文とを区別し、構造情報のみを変換した変換仕様の例を示す説明図である。
【図６】不要語句の例を示す説明図である。
【図７】本発明の第1の実施形態に係る関連性判定システムの処理経過の例を示すフローチャートである。
【図８】本発明の第２の実施形態に係る関連性判定システムの構成例を示すブロック図である。
【図９】図８に示した関連性判定システムに使用される、初期仕様記憶部に記憶された初期仕様の例を示す説明図である。
【図１０】図１に示した関連性判定システムに基づいて変換され、変換語句記憶部に記憶された変換語句の例を示す説明図である。
【図１１】図８に示した関連性判定システムに基づいて変換され、変換語句記憶部に記憶された変換語句の例を示す説明図である。
【図１２】本発明の第２の実施形態に係る関連性判定システムの語句変換部の処理経過の例を示すフローチャートである。
【図１３】集合間ＬＣＳを用いた処理により変換仕様記憶部に記憶された変換仕様の例を示す説明図である。
【図１４】集合間ＬＣＳと集合内ＬＣＳを用いて判定した語句を特殊記号に変換した変換仕様の例を示す説明図である。
【発明を実施するための形態】
【００２７】
（第１の実施形態）
次に、本発明の第１の実施形態による関連性判定システムについて図面を参照して詳細に説明する。
【００２８】
図１を参照すると、本第１の実施形態に係る関連性判定システム１は、情報を記憶する記憶部１１と、プログラム制御により動作する計算部１２とから構成されている。
【００２９】
記憶部１１は、初期仕様記憶部１００と、変換仕様記憶部１０１とを備える。
【００３０】
初期仕様記憶部１００は、仕様の内容を示すテキスト（仕様テキスト）を初期仕様として予め記憶する。ここで、仕様は、複数の集合に予め分割されているものとする。初期仕様は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。
【００３１】
図２は、初期仕様記憶部１００に記憶された初期仕様の例を示す説明図である。図２では、１つの仕様を１行で示している。図２において、１列目の「集合」は、仕様の属する集合を示し、２列目の「ＩＤ」は、集合内での仕様の番号を示し、３列目の「仕様テキスト」は、仕様の構造を示す構造情報と仕様の内容を示す仕様本文を連結したテキストを示す。
【００３２】
ここで、「構造情報」とは、フォルダを含むファイル名、Excelならばシート名、Wordならば章・節のタイトルなどである。たとえば、要件定義集合の“C:￥tmp￥プロジェクトA￥要件定義￥要件定義一覧.xls”は、フォルダを含むファイル名であり、“一覧。”はシート名である。以降では、説明のため、ＩＤがｉの仕様テキストを仕様テキストｉと呼ぶことにする。
【００３３】
なお、ここでは、本実施形態に適した例として、仕様テキストに構造情報を含む場合を例として説明するが、仕様テキストが仕様の内容を示す仕様本文のみの場合に本発明を適用することとしてもよい。また、ここでは、構造情報と仕様本文とをまとめて変換する場合を例として説明するが、本発明は、構造情報のみを変換し、仕様本文は変換しないこととしてもよい。
【００３４】
図３は、構造情報と仕様本文とを区別した初期仕様の例を示す説明図である。初期仕様を図３のように記憶することで、本実施形態では、構造情報のみを変換することも可能となる。
【００３５】
変換仕様記憶部１０１は、初期仕様記憶部１００に記憶された初期仕様に対し、後述する語句変換部１０２で変換した結果の変換仕様を記憶する。
【００３６】
図４は、変換仕様記憶部１０１に記憶された変換仕様の例を示す説明図である。図４では、図２の初期仕様に対し、不要語句を特殊記号である空白に変換した仕様を示している。なお、空白は見えないので、“(空)”で示している。本発明では、構造情報のみを変換することとしてもよい。
【００３７】
図５は、構造情報と仕様本文とを区別し、構造情報のみを変換した変換仕様の例を示す説明図である。図５で示すように、構造情報の不要語句は特殊記号に変換し、仕様本文はそのまま変換せずに残すこととしてもよい。
【００３８】
図１に戻って、計算部１２は、語句変換部１０２と、関連性計算部１０３とを備える。
【００３９】
語句変換部１０２は、初期仕様記憶部１００に記憶された初期仕様に基づいて、語句の出現頻度の集合間での偏り、または、語句の出現頻度の集合内での偏りのいずれかまたは両方を計算し、偏りに基づいて、初期仕様を変換し、変換した変換仕様を変換仕様記憶部１０１に記憶する。ここで、「偏りに基づいて初期仕様を変換する」とは、たとえば、偏りに基づいて不要語句を判定し、初期仕様にある不要語句を特殊記号などに変換することである。
【００４０】
図６は、不要語句の例を示す説明図である。図６では、１つの不要語句を１行で記述している。たとえば、“C”や“：”は不要語句である。
【００４１】
関連性計算部１０３は、変換仕様記憶部１０１に記憶された変換仕様に基づいて、関連性を計算する。関連性の計算は、例えば、コルモゴロフ複雑性に基づいて概算することができる。計算結果は、すぐにディスプレイ装置や印刷装置などを介して出力してもよいし、記憶しておいてシステムのユーザからのリクエストなどに応じて出力してもよいし、それ以外の様態で出力してもよい。仕様テキストを、構造情報と仕様本文とに分割していた場合、関連性計算部１０３は、それぞれの構造情報と仕様本文とを連結して仕様テキストを作成し、作成した仕様テキスト間の関連性を計算すればよい。
【００４２】
次に、図７のフローチャートを参照して、本第１の実施形態による関連性判定システム１の全体の動作について詳細に説明する。
【００４３】
まず、語句変換部１０２は、初期仕様記憶部１００に記憶された初期仕様を、意味を示す最小単位である語句に分割する(ステップＡ１）。語句への分割は、たとえば、形態素解析エンジンを用いてテキストを単語に分割し、分割した単語を語句としてもよい。形態素エンジンとしては、たとえば、ChaSenやMeCabがある。
【００４４】
「形態素解析」とは、例えば、"東京都にいる"という入力文（テキスト）に対し、"東京"、"都"、"に"、"いる"、という形態素の出力系列を選ぶことである。ここで、別の出力系列の例は、"東"、"京都"、"に"、"いる"である。形態素解析では、一般的な大量の文書を用意し、それらの文書から、それぞれの名詞や動詞などの形態素の出現しやすさや連結しやすさのスコアを求めておく。そして、ある入力文に対しては、最もスコアの高くなる分割を選択すればよい。
【００４５】
例えば、一般的な大量の文書では、"東"と"京都"とが連結する場合より、"東京"と"都"とが連結する場合が多い。そのため、"東京"と"都"との連結しやすさのスコアの方が"東"と"京都"との連結しやすさのスコアより高くなり、入力文"東京都にいる"に対して、"東京"、"都"、"に"、"いる"という単語（語句）へ分割することができる。
【００４６】
たとえば、図２の集合“要件定義”の仕様テキスト1“C:\\tmp\\プロジェクトA\\要件定義\\要件定義一覧.xls。一覧。顧客情報。区分。”というテキストを、語句変換部１０２は、“C”、“:”、“\”、“プロジェクト”、“A”、“\”、“要件”、“定義”、“\”、“要件”、“定義”、“一覧”、“.”、“xls”、“。”、“一覧”、“。”、“顧客”、“情報、“。”、“区分”、“。”という単語（語句）に分割する。
【００４７】
次に、語句変換部１０２は、語句ごとに、集合間での出現頻度の偏りを計算する(ステップＡ２）。語句変換部１０２は、その偏りを、たとえば、相互情報量、情報利得や情報利得比、カイ二乗統計量などを用いて計算することができる。
【００４８】
「相互情報量」とは、２つの確率変数の相互依存の尺度を示す量である。２つの集合をＣ１、Ｃ２とし、語句ｗの有無を{０,１}とすると、集合ｘ ∈Ｘ＝ {ｃ１,ｃ２}と語句ｗの有無ｙ∈Ｙ＝{０,１}との相互情報量（Mutual Information）は、下記の式（１）で計算することができる。 
Σｘ∈ＸΣｙ∈Ｙ [p(ｘ,ｙ)×log{p(ｘ,ｙ) / (p(ｘ)×p(ｙ)) }]    （１）
ここで、p(ｘ,ｙ)は、ＸとＹの同時分布関数、p(ｘ)とp(ｙ)は、それぞれＸとＹの確率分布関数である。ここで、logの底は２とする。
【００４９】
情報利得（Information Gain）は、下記の式（２）で計算することができる。 
−Σｘ∈Ｘ p(ｘ)×log{p(ｘ)}
＋Σｘ∈ＸΣｙ∈Ｙ [ p(ｘ|ｙ)log {p(ｘ|ｙ) }]              （２）
【００５０】
情報利得は、カルバック・ライブラー情報量（Kullback-Leibler Divergence）とも呼ばれる。
【００５１】
情報利得比（Information Gain Ratio）は、情報利得を分割情報量で割ったものである。
【００５２】
「カイ二乗統計量」とは、語句と２つの集合の依存度合いが大きいかどうかを判定することで計算することができる。具体的には、カイ二乗統計量は、下記の式（３）で計算することができる。 
Σｘ∈ＸΣｙ∈Ｙ  (Ｎxy − Ｅxy)２ / Ｅxy          （３）
ここで、Ｎxyは、集合ｘで語句ｙを含む仕様テキスト数であり、Ｅxyは、下記の式（４）で表される。 
Ｅxy ＝（Ｎx0＋Ｎx1)×（Ｎc1y＋Ｎc2y) ／ 全仕様テキスト数  （４）
Ｅxyは、集合ｘと語句ｙが独立であると仮定したときに期待される仕様テキスト数である。
【００５３】
たとえば、図２では、“C”は、集合“要件定義”においても集合“設計”においてもすべての仕様テキストに出現するため、語句変換部１０２は、“C”の集合間での出現頻度の偏りは小さいと計算する。逆に、“要件”は、集合“要件定義”に出現するが、集合“設計”に出現しないため、語句変換部１０２は、“要件”の集合間での出現頻度の偏りは大きいと計算する。
【００５４】
次に、語句変換部１０２は、初期仕様に対し、偏りの値が閾値以上の語句を不要語句と判定して特殊記号に変換し、変換した仕様を変換仕様記憶部１０１に記憶する(ステップＡ３）。
【００５５】
閾値は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。特殊記号も、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。
【００５６】
特殊記号は、たとえば、空白（“  ”）とする。その際、複数の変換された特殊記号が連続した場合は、１つの特殊記号に変換してもよい。特殊記号は、空文字列（“”）としてもよい。空文字列とは、長さが０の文字列であり、語句を空文字列に変換するとは、その語句を削除することと同様である。
【００５７】
語句変換部１０２は、集合間の出現頻度の偏りの計算で、相互情報量、情報利得や情報利得比、カイ二乗統計量などのいずれか1つの計算方法を用いて、閾値以上かどうかを調べてもよい。または、語句変換部１０２は、２つ以上の計算方法による偏りすべてが、それぞれの閾値以上であることかを調べてもよい。あるいは、語句変換部１０２は、２つ以上の計算方法による偏りのいずれかが、それぞれの閾値以上であるかを調べてもよい。
【００５８】
たとえば、図２では、“C”は集合間の偏りが小さいため、語句変換部１０２は、“C”を不要語句と判定せず、“C”を特殊記号に変換しない。逆に、“要件”は、集合間の偏りが大きいため、語句変換部１０２は、“要件”を不要語句と判定し、“要件”を特殊記号に変換する。
【００５９】
次に、語句変換部１０２は、語句ごとに、集合内での出現頻度の偏りを計算する(ステップＡ４）。偏りは、たとえば、逆文書頻度を用いて計算することができる。
【００６０】
「語句ｔの逆文書頻度（Inverse Document Frequency）」は、下記の式（５）で計算することができる。 
log（｜Ｄ｜/|{d:t∈d}|）                          （５）
ここで、|Ｄ|は、集合内の仕様テキスト総数、|{d:t∈d}|は、集合内で語句ｔを含む仕様テキスト数である。
【００６１】
たとえば、図２では、“C”は集合“要件定義”内で、すべての仕様テキストに出現するため、|Ｄ|=|{d:t∈d}|となり、語句変換部１０２は、“C”の集合内での出現頻度の偏り（逆文書頻度）をlog(１)＝０と計算する。
【００６２】
次に、語句変換部１０２は、変換仕様に対し、集合内での偏りの値が閾値未満の語句を不要語句と判定して特殊記号に変換し、変換した仕様を変換仕様記憶部１０１に記憶する(ステップＡ５）。
【００６３】
閾値は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。特殊記号は、たとえば、空白（“  ”）とする。その際、複数の変換された特殊記号が連続した場合は、１つの特殊記号に変換してもよい。特殊記号は、空文字列（“”）としてもよい。
【００６４】
たとえば、図２では、“C”の集合内での出現頻度の偏りが０であるため、語句変換部１０２は、“C”を不要語句と判定し、特殊記号に変換する。
【００６５】
次に、関連性計算部１０３は、変換仕様記憶部１０１に記憶された変換仕様間の関連性を計算する(ステップＡ６）。
【００６６】
結果は、すぐにディスプレイ装置や印刷装置などを介して出力してもよいし、記憶しておいてシステムのユーザからのリクエストなどに応じて出力してもよいし、それ以外の様態で出力してもよい。
【００６７】
関連性の計算は、例えば、コルモゴロフ複雑性に基づいて概算することができる。例えば、対象を圧縮するアルゴリズムを予め定めると、対象ｉと対象ｊとの間の類似度d(i,j)は、対象ｉを圧縮した場合のサイズをC(i)、対象ｊを圧縮した場合のサイズをC(j)、対象ｉとｊとを連結させた新たな対象を圧縮した場合のサイズをC(i,j)とすると、例えば、下記の式（６）あるいは下記の式（７）によって計算することができる。 
d(i,j)＝１−C(i,j) /{ C(i)＋C(j)}                        （６）
d(i,j)＝１−[C(i,j)−min{C(i),C(j)}]/max{C(i),C(j)}      （７）
【００６８】
指定される圧縮アルゴリズムは、例えば、gip、gzipなどである。圧縮アルゴリズムでは、例えば、文字列に対し、文字である記号あるいは以前の部分文字列との（一致長、一致位置）のペアで符号化する。符号化では、例えば、文字列に出現する記号の個数を求め、個数の多い記号ほど短い符号を割り当てる。したがって、コルモゴロフ複雑性の概算を用いると、助詞も含めて単語順を考慮してデータ間の類似度を計算することができる。
【００６９】
本実施形態によれば、集合間や集合内での偏りに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換するため、事前に準備するコスト（費用と時間）をかけずに、不要な語句を含む仕様テキスト間の整合性を高精度で判定することができる。
【００７０】
（第２の実施形態）
次に、本発明の第２の実施形態による関連性判定システムについて図面を参照して詳細に説明する。なお、第１の実施形態と同様の構成要素については、同一の符号を付し、詳細な説明を省略する。
【００７１】
図８を参照すると、本第２の実施形態に係る関連性判定システム２は、情報を記憶する記憶部２１と、プログラム制御により動作する計算部２２とから構成されている。
【００７２】
記憶部２１は、初期仕様記憶部１００と、変換仕様記憶部１０１とを備える。
【００７３】
初期仕様記憶部１００は、上述した第１の実施形態と同様である。
【００７４】
変換仕様記憶部１０１は、上述した第１の実施形態と同様である。
【００７５】
計算部２２は、語句変換部２００と、関連性計算部１０３とを備える。
【００７６】
語句変換部２００は、初期仕様記憶部１００に記憶された初期仕様及び変換仕様記憶部１０１に記憶された変換仕様に対し、集合間や集合内の最長共通部分列に基づいて語句を判定し、変換仕様に基づいて語句が不要語句であるか否かを判定する。そして、語句変換部２００は、不要語句であるならば、変換仕様のその不要語句を変換し、不要語句でないならば、その語句を処理済みと設定することを、繰り返す。
【００７７】
「最長共通部分文字列（longest common substring）」とは、共通した連続部分文字列のうち、最長のものをいう。以降では、最長共通部分文字列をＬＣＳと略すこととする。本実施の形態の必要性を、図面を用いて説明する。
【００７８】
図９は、初期仕様記憶部１００に記憶された初期仕様の例を示す説明図である。図９の例は、集合“要件定義”の仕様テキスト１と集合“設計”の仕様テキスト１とが関連し、集合“要件定義”の仕様テキスト２と集合“設計”の仕様テキスト２とが関連し、集合“要件定義”の仕様テキスト１００と集合“設計”の仕様テキスト１００とが関連する例である。
【００７９】
第１の実施形態で示すように、MeCabなどの従来技術を用いて単語に分割し単語を語句とみなす場合には、語句変換部１０２は次のように動作する。
【００８０】
語句変換部１０２は、たとえば、集合“要件定義”の仕様テキスト１の語句は、“A”、“00”、“-”、“00”、“_”、“登録”、“A”と推定する。次に、語句変換部１０２は、“A”、“00”、“B”、“01”を不要語句と推定する。なぜなら、これらの語句は、集合“要件定義”と集合“設計”との間で出現頻度に偏りのあるためである。次に、語句変換部１０２は、“-”、“_”を不要語句と推定する。なぜなら、これらの語句は、集合“要件定義”内で出現頻度に偏りがない語句だからである。次に、語句変換部１０２は、初期仕様の不要語句を特殊記号である空白に変換し、変換仕様記憶部１０１に記憶する。
【００８１】
図１０は、第１の実施形態に基づいて変換され、変換仕様記憶部１０１に記憶された変換語句の例を示す説明図である。図１０で示すように、集合“要件定義”の仕様テキスト１と集合“要件定義”の仕様テキスト２とは区別できなくなり、関連性計算部１０３は、集合“要件定義”の仕様テキスト１は集合“設計”の仕様テキスト１とだけでなく集合“設計”の仕様テキスト２とも関連性があると計算してしまう。
【００８２】
この問題を解決するため、語句変換部２００は、集合間や集合内の最長共通部分列を用いて語句を判定し、判定した順に不要語句かどうかを判定し、不要語句に基づいて、初期仕様を変換する。詳細な動作は、以降で示す。
【００８３】
図１１は、第２の実施形態に基づいて変換され、変換仕様記憶部１０１に記憶された変換語句の例を示す説明図である。図１１に示すように、第２の実施形態に基づくと、集合“要件定義”の仕様テキスト１と集合“要件定義”の仕様テキスト２とは区別可能となる。
【００８４】
関連性計算部１０３は、上記第１の実施形態と同様である。
【００８５】
次に、図１２のフローチャートを参照して、本第２の実施形態の語句変換部２００の動作について詳細に説明する。
【００８６】
まず、語句変換部２００は、初期仕様記憶部１００に記憶された初期仕様をすべて変換仕様として変換仕様記憶部１０１にコピーする(ステップＡ７）。なお、ここでは、分かりやすさのため、初期仕様をすべて変換仕様としてコピーする場合を例として説明するが、初回のみは初期仕様を変換仕様とみなして処理することとしてもよい。
【００８７】
次に、語句変換部２００は、集合間の変換仕様の仕様テキストで共通する最長の連続部分文字列であるＬＣＳ（集合間ＬＣＳ）を１つ抽出する(ステップＡ８）。ただし、仕様テキストを変換する際に用いる特殊記号は、ＬＣＳには含まないこととする。また、以降で設定する処理済みの部分列も、ＬＣＳには含まないこととする。
【００８８】
なお、変換する際や処理済みを設定する際に用いる特殊記号は、初期仕様の仕様テキストに含まれない特殊記号を選択してもよい。または、変換する際や処理済みを設定する際に用いる特殊記号が初期仕様の仕様テキストに予め含まれていた場合、それらを区別するために、初期仕様の仕様テキストに予め含まれる特殊記号を、別の予め指定する別の特殊記号に変換しておき、語句変換部２００の処理の最後に、別の特殊記号を元の特殊記号に戻すこととしてもよい。
【００８９】
次に、語句変換部２００は、抽出した集合間ＬＣＳの長さと閾値とを比較する(ステップＡ９）。閾値は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。閾値は、たとえば、２、３、４などとする。長さが閾値以上であるならば、次のステップに移行する。長さが閾値未満であるならば、ステップＡ１５に移行する。
【００９０】
次に、語句変換部２００は、抽出した集合間ＬＣＳの集合間の偏りを計算し、予め定めた閾値と比較する(ステップＡ１０）。閾値は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。偏りが閾値以上であるならば、ステップＡ１４に移行する。偏りが閾値未満であるならば、次のステップに移行する。
【００９１】
次に、語句変換部２００は、２つの集合のうちの1つ目の集合において、抽出した集合間ＬＣＳの仕様間の偏りを計算し、予め定めた閾値と比較する(ステップＡ１１）。偏りが閾値未満であるならば、ステップＡ１４に移行する。偏りが閾値以上であるならば、次のステップに移行する。
【００９２】
次に、語句変換部２００は、２つの集合のうちの２つ目の集合において、抽出した集合間ＬＣＳの仕様間の偏りを計算し、予め定めた閾値と比較する(ステップＡ１２）。偏りが閾値未満であるならば、ステップＡ１４に移行する。偏りが閾値以上であるならば、次のステップに移行する。
【００９３】
次に、語句変換部２００は、変換仕様に含まれる抽出した集合間ＬＣＳを処理済みの文字列と設定する(ステップＡ１３）。処理済みと設定するには、たとえば、周囲に特殊記号（““＜＜”と““＞＞”）などを追加する。追加する特殊記号は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。そして、ステップＡ８に移行する。
【００９４】
語句変換部２００は、変換仕様にある集合間ＬＣＳを特殊記号に変換する(ステップＡ１４）。特殊記号は、上記第１の実施形態と同様に、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。特殊記号は、たとえば、空白とする。そして、ステップＡ８に移行する。
【００９５】
次に、ステップＡ８からステップＡ１４までの動作について、図９を例として説明する。省略している集合“要件定義”の仕様テキスト３から仕様テキスト９９までと、集合“設計”の仕様テキスト３から仕様テキスト９９までを除くとする。
【００９６】
まず、語句変換部２００は、ステップＡ８で、集合“要件定義”の仕様テキストと、集合“設計”の仕様テキストとの間のＬＣＳとして、“-00_登録A”を抽出する。次に、語句変換部２００は、ステップＡ９で、閾値を２とすると、集合間ＬＣＳの長さは７なので、ステップＡ１０に移行する。
【００９７】
ステップＡ１０では、“-00_登録A”は集合“要件定義”の仕様テキスト１件と集合“設計”の仕様テキスト１件とに出現しており、集合間での出現頻度の偏りが小さいため、語句変換部２００は、ステップＡ１１に移行する。ステップＡ１１では、“-00_登録A”は集合“要件定義”の仕様テキスト１件のみに出現しており、集合内での出現頻度の偏りが大きいため、語句変換部２００は、ステップＡ１２に移行する。
【００９８】
ステップＡ１２では、“-00_登録A”は集合“設計”の仕様テキスト１件のみに出現しており、集合内での出現頻度の偏りが大きいため、語句変換部２００は、ステップＡ１３に移行する。そして、ステップＡ１３で、語句変換部２００は、“-00_登録A”を、処理済みを示す“＜＜-00_登録A＞＞”に変換する。
【００９９】
次に、語句変換部２００は、ステップＡ８で、集合間ＬＣＳとして、“-01_登録B”を抽出する。次に、語句変換部２００は、ステップＡ９では、集合間ＬＣＳの長さが７なので、ステップＡ１０に移行する。次に、語句変換部２００は、“-01_登録B”が集合間での出現頻度の偏りが小さいため、ステップＡ１１に移行する。
【０１００】
次に、語句変換部２００は、“-01_登録B”が集合“要件定義”内での出現頻度の偏りが大きいため、ステップＡ１２に移行し、“-01_登録B”が集合“設計”内での出現頻度の偏りが大きいため、ステップＡ１３に移行する。そして、ステップＡ１３で、語句変換部２００は、“-01_登録B”を、処理済みを示す“＜＜-01_登録B＞＞”に変換する。
【０１０１】
次に、語句変換部２００は、ステップＡ８で、集合間ＬＣＳとして、“-100_”を抽出する。次に、語句変換部２００は、ステップＡ９で、集合間ＬＣＳの長さが５なので、ステップＡ１０に移行する。そして、語句変換部２００は、ステップＡ１１、ステップＡ１２、ステップＡ１３と移行し、ステップＡ１３で、“-100_”を、処理済みを示す“＜＜-100_＞＞”に変換する。
【０１０２】
次に、語句変換部２００は、ステップＡ８で、集合間ＬＣＳとして、“0”を抽出する。次に、語句変換部２００は、ステップＡ９で、集合間ＬＣＳの長さが１なので、ステップＡ１５に移行する。
【０１０３】
図１３は、集合間ＬＣＳを用いた処理により変換仕様記憶部１０１に記憶された変換仕様の例を示す説明図である。
【０１０４】
次に、語句変換部２００は、集合を１つ選択する(ステップＡ１５）。ここで、語句変換部２００は、既に選択した集合でなく、未選択の集合のうちの１つを選択するものとする。
【０１０５】
次に、語句変換部２００は、集合内の変換仕様の仕様テキスト間のＬＣＳを抽出する(ステップＡ１６）。ここで、ＬＣＳは、集合内のすべての仕様テキストで共通に出現する必要はなく、集合内の２つ以上の仕様テキストで共通するものでよい。また、集合間ＬＣＳの場合と同様に、集合内ＬＣＳには特殊記号及び処理済みの文字列を含まないものとする。
【０１０６】
次に、語句変換部２００は、集合内のＬＣＳの長さと閾値とを比較する(ステップＡ１７）。閾値は、ステップＡ９と同じでもよいし、異なってもよい。異なる場合は、システムのユーザがキーボードなどを介して入力することで指定してもよいし、システムにデフォルトとして記憶しておいてもよいし、それ以外の様態で指定してもよい。長さが閾値以上であるならば、次のステップに移行する。長さが閾値未満であるならば、ステップＡ１９に移行する。
【０１０７】
次に、語句変換部２００は、抽出した集合内ＬＣＳの集合内での偏りを計算する(ステップＡ１８）。偏りが閾値未満ならば、語句変換部２００は、変換仕様の処理済みでない集合内ＬＣＳを特殊記号（たとえば、空白）に変換する。そして、ステップＡ１６に移行する。
【０１０８】
次に、語句変換部２００は、未選択の集合があるかを調べる(ステップＡ１９）。未選択の集合があるならば、ステップＡ１５に移行する。未選択の集合がないならば、語句変換部２００の処理を終了する。
【０１０９】
ステップＡ１５から終了までの動作について、図１３を例として説明する。省略している“要件定義”の仕様テキスト３から仕様テキスト９９までと、集合“設計”の仕様テキスト３から仕様テキスト９９までを除くとする。
【０１１０】
まず、語句変換部２００は、ステップＡ１５で、集合“要件定義”を選択する。次に、語句変換部２００は、ステップＡ１６で、集合“要件定義”内のＬＣＳとして、“A00”を抽出する。次に、語句変換部２００は、閾値を２とすると、ステップＡ１７で、集合内ＬＣＳの長さが３なので、ステップＡ１８に移行する。ステップＡ１８では、“A00”は集合内で偏りがないので、語句変換部２００は、変換仕様の“A00”を特殊記号である空白に変換する。
【０１１１】
次に、語句変換部２００は、ステップＡ１６で、集合内ＬＣＳとして、“”を抽出する。次に、語句変換部２００は、ステップＡ１７で、集合内ＬＣＳの長さが０なので、ステップＡ１９に移行する。次に、語句変換部２００は、ステップＡ１９で、未選択の集合“設計”があるので、ステップＡ１５に移行する。
【０１１２】
次に、語句変換部２００は、ステップＡ１５で、未選択の集合“設計”を選択する。次に、語句変換部２００は、ステップＡ１６で、集合“設計”内のＬＣＳとして、“B01”を抽出する。次に、語句変換部２００は、ステップＡ１７で、集合内ＬＣＳの長さが３なので、ステップＡ１８に移行する。ステップＡ１８では、“B01”は集合内で偏りがないので、語句変換部２００は、変換仕様の“B01”を特殊記号である空白に変換する。
【０１１３】
次に、語句変換部２００は、ステップＡ１６で、集合内ＬＣＳとして、“”を抽出する。次に、語句変換部２００は、ステップＡ１７で、集合内ＬＣＳの長さが０なので、ステップＡ１９に移行する。次に、語句変換部２００は、ステップＡ１９で、未選択の集合がないので、語句変換部２００の処理を終了する。
【０１１４】
図１４は、集合間ＬＣＳと集合内ＬＣＳを用いて判定した語句を特殊記号に変換した変換仕様の例を示す説明図である。図１４に示すように、“要件定義”の仕様テキスト１と仕様テキスト２とは、異なっており、“要件定義”の仕様テキスト１は“設計”の仕様テキスト１と類似であり、“要件定義”の仕様テキスト２は“設計”の仕様テキスト２と類似となる。
【０１１５】
ここで、関連性計算部１０３での計算の前に、処理済みを示す特殊記号である“＜＜”と“＞＞”とを特殊記号である空白に変換しておいてもよい。前述したように、図１１は、処理済みを示す特殊記号を空白に変換し、連続する空白を１つの空白に変換した変換仕様の例を示す説明図である。
【０１１６】
本第２の実施形態によれば、集合間ＬＣＳや集合内ＬＣＳに基づいて語句を判定するため、より高精度に整合性を判定することができる。前述した例のように、一般的な形態素解析を用いた第１の実施形態では、異なる仕様の区別がつかなくなるように変換される場合でも、本第２の実施形態に適用することで、異なる仕様を区別するように変換することができる。
【０１１７】
なお、本発明に記載した方法は、コンピュータに実行させることのできるプログラムとして、フロッピー（登録商標）ディスク、ハードディスクなどの磁気ディスク、ＣＤ-ＲＯＭ、ＤＶＤなどの光ディスク、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１１８】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。
【０１１９】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているオペレーティングシステムや、データベース管理ソフト、ネットワークソフト等のミドルウェアなどが各処理の一部を実行してもよい。
【０１２０】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネットなどにより伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１２１】
また、記憶媒体は１つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であってもよい。
【０１２２】
本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき各処理を実行するものであって、パソコンなどからなる装置、複数の装置がネットワーク接続されたシステムなどの何れの構成であってもよい。
【０１２３】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置を含み、プログラムによって本発明の機能を実現することが可能な機器、装置である。
【０１２４】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。また、構成要素を適宜組合せてもよい。
【０１２５】
また、上記の実施形態の一部または全部は、以下のようにも記載されうる。なお、以下の付記は本発明をなんら限定するものではない。
【０１２６】
［付記１］
システム開発における仕様テキスト間の関連性を判定するシステムであって、
２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換部と、
変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連性を計算する関連性計算部と、
を備えることを特徴とする関連性判定システム。
【０１２７】
［付記２］
前記関連性計算部は、前記関連性を、コルモゴロフ複雑性の概算を用いて類似度として計算することを特徴とする付記１に記載の関連性判定システム。
【０１２８】
［付記３］
前記語句変換部は、推定された不要語句を、予め定めた特殊記号に変換することを特徴とする付記１または付記２に記載の関連性判定システム。
【０１２９】
［付記４］
前記語句変換部は、集合間における偏りとして、相互情報量、情報利得や情報利得比、カイ二乗統計量のいずれか１つまたはその組合せを用い、集合間の偏りが予め定めた閾値より大きい語句を不要語句と推定することを特徴とする付記１から付記３までのいずれか１つに記載の関連性判定システム。
【０１３０】
［付記５］
前記語句変換部は、集合内における偏りとして、逆文書頻度を用い、集合内の偏りが予め定めた閾値より小さい語句を不要語句と推定することを特徴とする付記１から付記４までのいずれか１つに記載の関連性判定システム。
【０１３１】
［付記６］
前記語句変換部は、２つの集合間の仕様テキストの予め定めた閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合間における偏り、及びそれぞれの集合内における仕様テキスト間の偏りの少なくとも１つに基づいて、語句を変換し処理済みとする処理を、処理済みの文字列がなくなるまで繰り返す、ことを特徴とする付記１から付記３までのいずれか１つに記載の関連性判定システム。
【０１３２】
［付記７］
前記語句変換部は、それぞれの集合内で２つ以上の仕様テキストに出現する閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合内における偏りに基づいて語句を変換し処理済みとする処理を、処理済の文字列がなくなるまで繰り返す、ことを特徴とする付記１から付記３までおよび付記６のいずれか１つに記載の関連性判定システム。
【０１３３】
［付記８］
前記仕様テキストは、仕様テキストの構造を示す構造情報と、仕様テキストの内容を示す仕様本文とに分割されており、
前記語句変換部は、前記構造情報のテキストを変換し、
前記関連性計算部は、前記変換された構造情報と前記仕様本文とを連結したテキストに基づいて、仕様テキスト間の関連性を計算する、
ことを特徴とする付記１から付記７までのいずれか１つに記載の関連性判定システム。
【０１３４】
［付記９］
システム開発における仕様テキスト間の関連性を判定する方法であって、
語句変換部が、２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換ステップと、
関連性計算部が、変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連性を計算する関連性計算ステップと、
を備えることを特徴とする関連性判定方法。
【０１３５】
［付記１０］
前記関連性計算ステップでは、前記関連性計算部が、前記関連性を、コルモゴロフ複雑性の概算を用いて類似度として計算することを特徴とする付記９に記載の関連性判定方法。
【０１３６】
［付記１１］
前記語句変換ステップでは、前記語句変換部が、推定された不要語句を、予め定めた特殊記号に変換する、ことを特徴とする付記９または付記１０に記載の関連性判定方法。
【０１３７】
［付記１２］
前記語句変換ステップでは、前記語句変換部が、集合間における偏りとして、相互情報量、情報利得や情報利得比、カイ二乗統計量のいずれか１つまたはその組合せを用い、集合間の偏りが予め定めた閾値より大きい語句を不要語句と推定する、ことを特徴とする付記９から付記１１までのいずれか１つに記載の関連性判定方法。
【０１３８】
［付記１３］
前記語句変換ステップでは、前記語句変換部が、集合内における偏りとして、逆文書頻度を用い、集合内の偏りが予め定めた閾値より小さい語句を不要語句と推定する、ことを特徴とする付記９から付記１２までのいずれか１つに記載の関連性判定方法。
【０１３９】
［付記１４］
前記語句変換ステップでは、前記語句変換部が、２つの集合間の仕様テキストの予め定めた閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合間における偏り、及びそれぞれの集合内における仕様テキスト間の偏りのすくなくとも１つに基づいて、語句を変換し処理済みとする処理を、処理済みの文字列がなくなるまで繰り返す、ことを特徴とする付記９から付記１１までのいずれか１つに記載の関連性判定方法。
【０１４０】
［付記１５］
前記語句変換ステップでは、前記語句変換部が、それぞれの集合内で２つ以上の仕様テキストに出現する閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合内における偏りに基づいて語句を変換し処理済みとする処理を、処理済の文字列がなくなるまで繰り返す、ことを特徴とする付記９から付記１１までおよび付記１４のいずれか１つに記載の関連性判定方法。
【０１４１】
［付記１６］
前記仕様テキストは、仕様テキストの構造を示す構造情報と、仕様テキストの内容を示す仕様本文とに分割されており、
前記語句変換ステップでは、前記語句変換部が、前記構造情報のテキストを変換し、
前記関連性計算ステップでは、前記関連性計算部が、前記変換された構造情報と前記仕様本文とを連結したテキストに基づいて、仕様テキスト間の関連性を計算する、
ことを特徴とする付記９から付記１５までのいずれか１に記載の関連性判定方法。
【０１４２】
［付記１７］
コンピュータに、システム開発における仕様テキスト間の関連性を判定させるプログラムであって、
２つの集合に分類された仕様テキストに対し、仕様テキストの語句の出現頻度の集合間における偏り、及びそれぞれの集合内における語句の出現頻度の仕様テキスト間における偏りの少なくとも１つに基づいて不要語句を推定し、推定された不要語句に基づいて仕様テキストを変換する語句変換処理と、
変換された仕様テキストに基づいて集合間の個々の仕様テキスト間の関連性を計算する関連性計算処理と、
を前記コンピュータに実行させる関連性判定プログラム。
【０１４３】
［付記１８］
前記関連性計算処理は、前記関連性を、コルモゴロフ複雑性の概算を用いて類似度として計算する、ことを特徴とする付記１７に記載の関連性判定プログラム。
【０１４４】
［付記１９］
前記語句変換処理は、推定された不要語句を、予め定めた特殊記号に変換する、ことを特徴とする付記１７または付記１８に記載の関連性判定プログラム。
【０１４５】
［付記２０］
前記語句変換処理は、集合間における偏りとして、相互情報量、情報利得や情報利得比、カイ二乗統計量のいずれか１つまたはその組合せを用い、集合間の偏りが予め定めた閾値より大きい語句を不要語句と推定する、ことを特徴とする付記１７から付記１９までのいずれか１つに記載の関連性判定プログラム。
【０１４６】
［付記２１］
前記語句変換処理は、集合内における偏りとして、逆文書頻度を用い、集合内の偏りが予め定めた閾値より小さい語句を不要語句と推定する、ことを特徴とする付記１７から付記２０までのいずれか１つに記載の関連性判定プログラム。
【０１４７】
［付記２２］
前記語句変換処理は、２つの集合間の仕様テキストの予め定めた閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合間における偏り、及びそれぞれの集合内における仕様テキスト間の偏りの少なくとも１つに基づいて、語句を変換し処理済みとする処理を、処理済みの文字列がなくなるまで繰り返す、ことを特徴とする付記１７から付記１９までのいずれか１つに記載の関連性判定プログラム。
【０１４８】
［付記２３］
前記語句変換処理は、それぞれの集合内で２つ以上の仕様テキストに出現する閾値以上の長さの最長共通部分文字列を抽出し、抽出した文字列の集合内における偏りに基づいて語句を変換し処理済みとする処理を、処理済の文字列がなくなるまで繰り返す、ことを特徴とする付記１７から付記１９までおよび付記２２のいずれか１つに記載の関連性判定プログラム。
【０１４９】
［付記２４］
前記仕様テキストは、仕様テキストの構造を示す構造情報と、仕様テキストの内容を示す仕様本文とに分割されており、
前記語句変換処理は、前記構造情報のテキストを変換し、
前記関連性計算処理は、前記変換された構造情報と前記仕様本文とを連結したテキストに基づいて、仕様テキスト間の関連性を計算する、
ことを特徴とする付記１７から付記２３までのいずれか１つに記載の関連性判定プログラム。
【符号の説明】
【０１５０】
１  関連性判定システム
２  関連性判定システム
１１  記憶部
１２  計算部
２１  記憶部
２２  計算部
１００  初期仕様記憶部
１０１  変換仕様記憶部
１０２  語句変換部
１０３  関連性計算部
２００  語句変換部
【図１】
2014229069.tif 000003
【図２】
2014229069.tif 000004
【図３】
2014229069.tif 000005
【図４】
2014229069.tif 000006
【図５】
2014229069.tif 000007
【図６】
2014229069.tif 000008
【図７】
2014229069.tif 000009
【図８】
2014229069.tif 000010
【図９】
2014229069.tif 000011
【図１０】
2014229069.tif 000012
【図１１】
2014229069.tif 000013
【図１２】
2014229069.tif 000014
【図１３】
2014229069.tif 000015
【図１４】
2014229069.tif 000016