(57)【要約】【課題】分析ニーズに応じてデータマイニングによる分析結果の質と量を容易に最適化する。【解決手段】データ分析方法は、計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータから、前記プロセスを評価するための相関ルール等を見出すデータマイニングの方法であって、データマイニングの前工程として、プロセスの工程定義をもとに工程間の影響関係を識別して属性選択を行うデータ変換工程（１００２）、更に必要な場合には、経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類するデータ分類工程（１００３）を採用する。また、データマイニング工程として、必要な場合には、第１のデータマイニング工程の（１００６）後に当該第１のデータマイニング工程による結果をデータマイニングの対象とする第２のデータマイニング工程を採用する（１００７）。【選択図】図１
2010231524.tif 000002
【特許請求の範囲】
【請求項１】
計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータをコンピュータ装置が入力し、入力したデータに基づいて前記コンピュータ装置が計画、企画若しくは開発のプロセスを評価するためにデータマイニングを行うデータ分析方法において、
前記データマイニングの前工程として、前記入力したデータに対し、プロセスの工程定義に基づいて工程間の影響関係を識別して、データマイニングの対象とするデータの属性を選択するデータ変換工程を含む、データ分析方法。
【請求項２】
計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータをコンピュータ装置が入力し、入力したデータに基づいて前記コンピュータ装置が計画、企画若しくは開発のプロセスを評価するためにデータマイニングを行うデータ分析方法において、
前記データマイニングの前工程として、前記入力したデータに対し、経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類するデータ分類工程と、前記データ分類工程で分類されたデータに対し、プロセスの工程定義に基づいて工程間の影響関係を識別して、データマイニングの対象とするデータの属性を選択するデータ変換工程と、を含むデータ分析方法。
【請求項３】
前記データの属性はプロセス項目である、請求項１又は２記載のデータ分析方法。
【請求項４】
前記プロセスの工程定義は、プロセス項目の相関を示す開発プロセスモデルに基づいて評価項目とそれに対応するプロセス項目とを対応させたデータである、請求項３記載のデータ分析方法。
【請求項５】
前記計画、企画若しくは開発のプロセスは、ソフトウェアプログラム開発のプロセスである、請求項４記載のデータ分析方法。
【請求項６】
前記データ変換工程は、ソフトウェア開発のプロセスモデルから、設計工程と設計の品質を確認する検証工程との間で、工程間の影響関係を識別して属性選択を行うソフトウェア開発用データ最適化処理を含む、請求項５記載のデータ分析方法。
【請求項７】
分析対象がソフトウェアプログラム開発のプロセスである場合に、前記データ分類工程は、人月工数を用いて経済性を評価するソフトウェア開発用分類最適化処理を含む、請求項２記載のデータ分析方法。
【請求項８】
前記データマイニングを行なうために第１のデータマイニング工程と第２のデータマイニング工程とを含み、
前記第１のデータマイニング工程は特定のクラスに対してのみ多頻度である顕在パターン集合を抽出する処理を含み、
前記第２のデータマイニング工程は前記第１のデータマイニング工程で抽出された顕在パターン集合に含まれるアイテムの属性のデータをデータマイニングの対象とする、請求項１又は２記載のデータ分析方法。
【請求項９】
前記第１のデータマイニング工程及び第２のデータマイニング工程はアプリオリ・アルゴリズム（Apriori Algorithm）又はラフ集合理論を用いる、請求項８記載のデータ分析方法。
【請求項１０】
コンピュータ装置が実行することにより、入力処理、分類処理、変換処理及びデータマイニング処理を制御するデータ分析プログラムであって、
前記入力処理は、計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータを入力する処理であり、
前記分類処理は、前記入力したデータに対し、経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類する処理であり、
前記変換処理は、前記分類する処理で分類されたデータに対し、プロセスの工程定義に基づいて工程間の影響関係を識別して、データマイニングの対象とするデータの属性を選択してデータマイニングの対象データに変換する処理であり、
前記データマイニング処理は、前記変換する処理で得られたデータに基づいて、計画、企画若しくは開発のプロセスを評価するためのデータマイニングを行う処理である、データ分析プログラム。
【請求項１１】
前記計画、企画若しくは開発のプロセスは、ソフトウェアプログラム開発のプロセスである、請求項１０記載のデータ分析プログラム。
【請求項１２】
前記データ分類処理は、人月工数を用いて経済性を評価するソフトウェア開発用分類最適化処理を含む、請求項１１記載のデータ分析プログラム。
【請求項１３】
前記データマイニング処理は、第１のデータマイニング処理と第２のデータマイニング処理とを含み、
前記第１のデータマイニング処理は特定のクラスに対してのみ多頻度である顕在パターン集合を抽出する処理を含み、
前記第２のデータマイニング処理は前記第１のデータマイニング工程で抽出された顕在パターン集合に含まれるアイテムの属性のデータをデータマイニングの対象とする、請求項１０記載のデータ分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計画、企画又は開発のプロセスの遂行状況に関わるデータあるいは計画、企画又は開発の成果物の質や量を示すデータをもとにして、計画、企画又は開発（プロジェクト管理や開発プロセス）を評価するためにデータマイニングを行うデータ分析方法において、データマイニングの前後工程を最適化する技術に係り、例えばソフトウェア開発のプロジェクト管理に適用して有効なデータ分析方法及びデータ分析プログラムに関する。
【背景技術】
【０００２】
データマイニングによる知識発見のプロセスでは、適用領域に応じて使用者（分析者）による工夫が必要になる。データマイニングの実効性は、知識発見の目的に沿った前工程と後工程の妥当性に大きく依存するからである。
【０００３】
非特許文献１では、データマイニングのタスクを、予測モデルの構築、特徴パターンの発見、クラスタリングの３つに分類しているが、全般的に、前工程や後工程が重要になることを指摘している。前工程では、何らかの評価基準を導入して膨大な数の属性から重要な属性に絞り込む属性選択や、元データから新しい属性を生成することが含まれる。このような作業をデータ変換と呼ぶが、この作業には適用するフィールドの専門知識が不可欠であり、有用な知識発見に最も重要なステップである（以上、非特許文献１  ｐ１４）。また、データマイニングの結果自体から知見を抽出するためには、全体の傾向の把握が難しいことも珍しくなく、適切な後工程（視覚化やルールフィルタリングの手法）が求められる（非特許文献１  ｐ１９）。
【０００４】
たとえば、「特徴パターン」をif-thenルールで発見する手法の適用において、この点はしばしば議論、検討がなされてきているので、ここに例示する。if-thenルールの形式の「特徴パターン」の典型例としては、「属性Ａと属性Ｂが同一トランザクションに含まれるとき、属性Ｃも同時に含まれる」といった規則性を指し「Ａ、Ｂ→Ｃ」と表記するパターンの形態である。
【０００５】
このような特徴パターンの発見においては、非常に多くのルールが列挙されるために、それらの全体の傾向を把握し意味のあるルールを選択することが重要になる。そこで、分析者にとって無意味なルールの生成や提示を防ぐ工夫が、前工程や後工程で試みられてきている。
【０００６】
なお、以下で、特許文献１や２が前提にするのは、Aprioriアルゴリズムで有名な、属性間の共起性を抽出する「相関ルール」と考えられる。一方で、特許文献３記載のラフ集合理論にもとづく「決定ルール」がある。双方は同一の概念ではないが、if-Thenルール形式で分析者に知識発見を促す効果の点での類似性に注目し、本明細書の説明では、同列に扱う。
【０００７】
特許文献１では、相関ルール分析において、分析者が対話的操作で重要な属性やルールを指定し、それを含むルールから優先的に表示していく。前工程の属性選択と後工程の視覚化を同時に行うことで知識発見を容易にするものと位置づけることができる。
【０００８】
非特許文献２では、相関ルール分析を品質分析に適用する方法において、前工程のデータ変換に関する施策を示すものである。相関ルール分析の出力全てが、品質分析に必要なものではないとして、相関ルールのなかに必ず含むべき属性を事前に指定し、それらの属性ならびにそれらの属性と相関の高い属性以外を含むルールは、無用なルールと認定し、その生成を防いでいる。
【０００９】
特許文献２では、複数の属性からなるレコードの集合からレコードの組み合わせを検索しルールを抽出する場合、属性の発生する時間関係を管理する装置を設けて、時間的に矛盾のあるルールは排除することで、生成するルール数を抑制している。
【００１０】
特許文献３では、画質調整のためのパラメータの決定に際し、重要なルールを選択的に抽出するのに優れた方法である、ラフ集合理論によるデータマイニングを用いることを特徴として、その精度と効率を上げている。
【００１１】
ラフ集合理論にもとづくデータマイニングは、決定表から最小限必要な属性や極小な決定ルールを効率的に抽出する手法として有用である。決定表と呼ばれるのは、条件属性集合と決定属性集合とを対応付けた表であり、ラフ集合理論にもとづくデータマイニングでは、この表から、ある分類に属する条件を適切に他の条件から識別するのに充分かつ最小の属性の組み合わせ（決定ルール）が求まる。
【００１２】
特許文献３が指摘するように、ラフ集合理論により求めた、ある分類への帰属が確実な条件集合である決定ルールは、ユーザーの着目パラメータ空間と最適領域として捉えることができ、決定ルールが求まると着目パラメータ空間と最適領域が同時に求まるという利点を有している。
【００１３】
以上のように、分析者にとって無意味なルールの生成や提示を防ぐ工夫が、前工程や後工程で試みられてきている。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００３−０５０９６２号公報
【特許文献２】特開２００４−１１０３２７号公報
【特許文献３】特開２００８−１２２５５１号公報
【非特許文献】
【００１５】
【非特許文献１】加藤 直樹, 矢田 勝俊 他, データマイニングとその応用，２００８年，朝倉書店
【非特許文献２】堀聡  落田美紀他，電気製品の市場品質監視システム，人工知能学会誌  １５巻５号  ２０００年９月
【発明の概要】
【発明が解決しようとする課題】
【００１６】
データマイニングの前工程や後工程の工夫は、if-thenルールの形式の「特徴パターン」の抽出に限った施策ではない。それは、知識発見のためのデータマイニング全般における解釈の精度・効率向上に寄与する。この点に関し、特許文献１、非特許文献２のような属性選択（変数選択）の方法は、人為的な選別作業であり、その妥当性の根拠に欠ける側面がある。また、多くの属性から選別する手間もかかり作業ミスもまねきやすい。特許文献２や特許文献３では、プロジェクトや開発のプロセスの管理への適用は考慮されていない。
【００１７】
本発明の目的は、分析ニーズに応じて、データマイニングによる分析結果の質と量を最適化することが容易なデータ分析方法、及びその分析方法を容易に実施可能にするデータ分析プログラムを提供することにある。
【００１８】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１９】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００２０】
すなわち、本発明に係るデータ分析方法は、計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータから、前記プロセスを評価するための相関ルール等を見出すデータマイニングの方法であって、データマイニングの前工程として、プロセスの工程定義をもとに工程間の影響関係を識別して属性選択を行うデータ変換工程、更に必要な場合には、経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類するデータ分類工程を採用する。また、データマイニング工程として、必要な場合には、第１のデータマイニング工程の後に当該第１のデータマイニング工程による結果をデータマイニングの対象とする第２のデータマイニング工程を採用する。
【００２１】
データ変換工程では、各工程の相互関係に注目して、工程間の順序関係だけでなく、設計とテスト（検証）の対応関係などのような工程間の影響関係をふまえて、データマイニングの対象を絞り込むことができるから、問題解決に有用な分析結果に容易にたどり着くことができるようになる。
【００２２】
データ変換の前にデータ分類工程を先行させれば、規模に対する経済性の相違に注目することによって、開発・生産・製造などを遂行するプロジェクトやプロセスをとりまく状況（複雑さ）を端的に表現する手がかりを得ることができるようになるから、データマイニングにおける分析の視野の拡大、精度向上、そして効率化が期待できるようになる。要するに、規模と経済性の関係に注目することで、プロジェクトの特性の前提がそろった状態で、評価できるので、評価結果には納得感を得やすく、また、意味のある類似性をもとにグループ化して、グループ間での比較分析を促進することが容易になる。
【００２３】
データマイニングを多重化して行うことにより、更に分析結果の質と量の最適化を促進することができる。
【発明の効果】
【００２４】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００２５】
すなわち、分析ニーズに応じて、データマイニングによる分析結果の質と量を最適化することが容易になる。
【図面の簡単な説明】
【００２６】
【図１】図１は本発明に係るデータ分析方法を実行するためのデータ分析システムの機能部ロック図である。
【図２Ａ】図２Ａは工程定義情報の構成を例示する説明図である。
【図２Ｂ】図２Ｂは開発プロセスモデル（Ｖ字モデル）を例示する説明図である。
【図３Ａ】図３Ａはマイニング対象データテーブルの構成を例示する説明図である。
【図３Ｂ】図３Ｂは同じくマイニング対象データテーブルの別の構成例を示す説明図である。
【図４】図４はデータ分析システムによるデータ分析方法の第１の実施の形態である第１の処理フローを例示するフローチャートである。
【図５】図５はデータ変換処理４００２に対応されるデータ変換の処理を詳細に例示するフローチャートである。
【図６】図６はソフトウェア開発用データ最適化手段１００４による変換動作の詳細を例示するフローチャートである。
【図７】図７は説明変数群以外の属性を除外したデータセットの一例を示す説明図である。
【図８】図８は第２のデータマイニング工程を備えるデータ分析システムの動作のを例示するフローチャートである。
【図９】図９はデータ分類工程の処理を例示するフローチャートである。
【図１０】図１０はデータ分類工程の具体例として「規模の経済性」でサンプル分類を行う動作を例示するフローチャートである。
【図１１】図１１はデータ分類工程が用いるデータマイニング用分類候補情報の構成を例示する説明図である。
【図１２】図１２はソフトウェア開発を対象としたときに重回帰分析を行った結果を例示する説明図である。
【発明を実施するための形態】
【００２７】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００２８】
〔１〕本発明の一実施の形態に係るデータ分析方法は、計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータをコンピュータ装置が入力し、入力したデータ（１０１０，１０１１，１０１２）に基づいて前記コンピュータ装置が計画、企画若しくは開発のプロセスを評価するためにデータマイニングを行うデータ分析方法であって、前記データマイニングの前工程として、前記入力したデータに対し、プロセスの工程定義に基づいて工程間の影響関係を識別して、データマイニングの対象とするデータの属性を選択するデータ変換工程（１００２、４００２、８００５）を含む。
【００２９】
データ変換工程では、各工程の相互関係に注目して、工程間の順序関係だけでなく、設計とテスト（検証）の対応関係などのような工程間の影響関係をふまえて、データマイニングの対象を絞り込むことができるから、問題解決に有用な分析結果に容易にたどり着くことができるようになる。
【００３０】
〔２〕本発明の別の実施の形態に係るデータ分析方法においては、前記データマイニングの前工程として、前記入力したデータに対し、経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類するデータ分類工程（１００３、８００２）と、前記データ分類工程で分類されたデータに対し、プロセスの工程定義（１０１０）に基づいて工程間の影響関係を識別して、データマイニングの対象とするデータの属性を選択するデータ変換工程（１００２、８００５）と、を含む。
【００３１】
データ変換の前にデータ分類工程を先行させれば、規模に対する経済性の相違に注目することによって、開発・生産・製造などを遂行するプロジェクトやプロセスをとりまく状況（複雑さ）を端的に表現する手がかりを得ることができるようになるから、データマイニングにおける分析の視野の拡大、精度向上、そして効率化が期待できるようになる。要するに、規模と経済性の関係に注目することで、プロジェクトの特性の前提がそろった状態で、評価できるので、評価結果には納得感を得やすく、また、意味のある類似性をもとにグループ化して、グループ間での比較分析を促進することが容易になる。結果として、開発プロジェクトやプロセスの管理に有効な指針、例えばソフトウェア開発を監視するのに、更に有効な指針を分析者に提示可能になる。
【００３２】
〔３〕項1又は２のデータ分析方法において、前記データの属性はプロセス項目である。
【００３３】
〔４〕項３のデータ分析方法において、前記プロセスの工程定義は、プロセス項目の相関を示す開発プロセスモデルに基づいて評価項目とそれに対応するプロセス項目とを対応させたデータである。
【００３４】
〔５〕項４のデータ分析方法において、前記計画、企画若しくは開発のプロセスは、ソフトウェアプログラム開発のプロセスである。ソフトウェア開発では、規模と工数の関係性が、開発の複雑さなど、他の要因を示唆していることが少なくなく、規模と工数の関係性でグループ分けして別の目的変数に対して分析を行いその結果を比較することが、問題分析として、有効になることが少なくない。
【００３５】
〔６〕項５のデータ分析方法において、前記データ変換工程は、ソフトウェア開発のプロセスモデルから、設計工程と設計の品質を確認する検証工程との間で、工程間の影響関係を識別して属性選択を行うソフトウェア開発用データ最適化処理を含む。
【００３６】
〔７〕項２のデータ分析方法において、分析対象がソフトウェアプログラム開発のプロセスである場合に、前記データ分類工程は、人月工数を用いて経済性を評価するソフトウェア開発用分類最適化処理を含む。
【００３７】
〔８〕項1又は２のデータ分析方法において、前記データマイニングを行なうために第１のデータマイニング工程と第２のデータマイニング工程とを含む。前記第１のデータマイニング工程は特定のクラスに対してのみ多頻度である顕在パターン集合を抽出する処理を含む。前記第２のデータマイニング工程は前記第１のデータマイニング工程で抽出された顕在パターン集合に含まれるアイテムの属性のデータをデータマイニングの対象とする。データマイニングを第1と第２で多重化して行うことにより、更に分析結果の質と量の最適化を促進することができる。
【００３８】
〔９〕項８のデータ分析方法において、前記第１のデータマイニング工程及び第２のデータマイニング工程はアプリオリ・アルゴリズム（Apriori Algorithm）又はラフ集合理論を用いる。アプリオリ・アルゴリズム（Apriori Algorithm）とラフ集合理論は相互に補完関係を有するロジックであり、第１のデータマイニング工程と第２のデータマイニング工程との間で異なる前記ロジックを用いることによって、分析結果の質を更に最適化することができる。
【００３９】
〔１０〕本発明の更に別の実施の形態に係るデータ分析プログラムは、コンピュータ装置が実行することにより、入力処理、分類処理、変換処理及びデータマイニング処理を制御するプログラムである。前記入力処理は、計画、企画若しくは開発のプロセスの遂行状況に関わるデータ又は計画、企画若しくは開発のプロセスの成果物の質若しくは量を示すデータを入力する処理である。前記分類処理は、前記入力したデータに対し、経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類する処理である。前記変換処理は、前記分類する処理で分類されたデータに対し、プロセスの工程定義に基づいて工程間の影響関係を識別して、データマイニングの対象とするデータの属性を選択してデータマイニングの対象データに変換する処理である。前記データマイニング処理は、前記変換する処理で得られたデータに基づいて、計画、企画若しくは開発のプロセスを評価するためのデータマイニングを行う処理である。
【００４０】
上記分析プログラムによれば、分析ニーズに応じて、データマイニングによる分析結果の質と量を最適化するデータ分析方法を容易に実施可能になる。
【００４１】
〔１１〕項１０のデータ分析プログラムにおいて、前記計画、企画若しくは開発のプロセスはソフトウェアプログラム開発のプロセスである。
【００４２】
〔１２〕項１１のデータ分析プログラムにおいて、前記データ分類処理は、人月工数を用いて経済性を評価するソフトウェア開発用分類最適化処理を含む。
【００４３】
〔１３〕項１０のデータ分析プログラムもおいて、前記データマイニング処理は、第１のデータマイニング処理と第２のデータマイニング処理とを含む。前記第１のデータマイニング処理は特定のクラスに対してのみ多頻度である顕在パターン集合を抽出する処理を含む。前記第２のデータマイニング処理は前記第１のデータマイニング工程で抽出された顕在パターン集合に含まれるアイテムの属性のデータをデータマイニングの対象とする。
【００４４】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００４５】
図１には本発明に係るデータ分析方法を実行するためのデータ分析システムの機能部ロック図が示される。同図に示されるデータ分析システムはワークステーション若しくはパーソナルコンピュータなどのコンピュータ装置（ＣＭＰＴＲ）が本発明に係るデータ分析プログラムを実行することによって実現される。
【００４６】
データ分析システムは、分析対象データ１００１、データ変換手段１００２、データ分類手段１００３、データマイニング実行手段１００５、及び分析結果表示手段１００９から構成される。分析対象データ１００１はハードディスク装置等の記憶装置に格納される。データ変換手段１００２、データ分類手段１００３及びデータマイニング実行手段１００５は、例えば記憶装置に格納されたプログラムと、これを実行するための中央処理措置（ＣＰＵ）、アクセラレータ、ワークＲＡＭ及びＲＯＭ等からなるコンピュータコアとによって実現される。
【００４７】
データマイニング実行手段１００５は、データマイニング工程を実行する機能を有する。データマイニングとは、ある時間関係において発生する属性間の組合せ規則（相関ルール）を発見するための手法であり、相関ルールを発見するためのアルゴリズムは、Ａｐｒｉｏｒｉアルゴリズム、ラフ集合論理などとして知られている。データマイニング実行手段１００５は、第１のデータマイニング実行手段１００６と、第２のデータマイニング実行手段１００８と、第１のデータマイニング実行結果１００６をもとに第２のデータマイニングを実行するための属性を選択する第２のデータマイニング用属性選択手段１００７とを有する。第２のデータマイニング実行手段１００８と第２のデータマイニング用属性選択手段１００７はデータ分析システムにおいては必須ではないが発明の効果という点では有意性の主張に役立つ構成である。第２のデータマイニング実行手段１００８と第２のデータマイニング用属性選択手段１００７は、第１のデータマイニング実行手段１００６に対して後工程として位置付けることができる。
【００４８】
データ変換手段１００２は、データ変換工程を実行する機能を有し、第１のデータマイニング実行手段１００６に対して前工程として位置付けることができる。データ変換手段１００２では、設計工程と検証工程の対応関係をふまえて、データを目的変数と説明変数に仕分けする。例えば、データ変換手段１００２は、ソフトウェア開発用データ最適化手段１００４を有し、特に、ソフトウェア開発を分析対象にする場合には、ソフトウェア開発用データ最適化手段１００４において開発プロセスモデルに沿った対応関係を抽出する。開発プロセスモデルの典型的な実施の形態はV字モデルだが，これに限定するものではない。要するに、ソフトウェア開発などのプロセス管理に適したデータに変換する。その詳細については後述する。
【００４９】
分析対象データ１００１の構成要素として、工程定義情報１０１０及びマイニング対象データテーブル１０１２を含む。工程定義情報１０１０に関連して開発プロセスモデル図１０１１を含んでもよい。
【００５０】
第１のデータマイニング実行手段のもう一つの前工程として示されたデータ分類手段１００３はデータ分析システムにおいては必須ではないが発明の効果という点では有意性の主張に役立つ構成である。詳細は後述するが、データ分類手段１００３はソフトウェア開発用分類最適化手段を備えてもよい。データ分類手段１００３は、データ分類工程を実行する機能を有する。具体的には、規模とコストや規模と生産性との間の相関分析や多変量解析を行い、相互の関係性を数値化する。あるいは「規模の経済性」を算出する。その結果をもとに、データサンプル群をデータマイニングへの入力単位ごとに複数の群に分ける。分類手段が行う分類工程としては、データマイニングの通例として、一つずつ逐次的に入力データを仕分けて分類する方法と、すでに複数の分類指針が存在する状況でどの分類指針をデータマイニング用の分類として採用するかを決める方法とが、想定されるが、これらの両方の方法を、本発明では、分類工程として包含する。ソフトウェア開発用分類最適化手段は、コストなどの経済性を示す指標としてソフトウェア開発の人月工数など、ソフトウェア開発にちなんだ指標を設定する。
【００５１】
ここで先ず、計画、企画又は開発のためのプロセスの管理に有効なデータ変換の指針を分析者に提供することを主眼とした手段として、（１）プロセスの工程定義をもとに工程間の影響関係を識別して属性選択を行う前記データ変換手段によるデータ変換工程と、（２）経済性を示す指標と規模を示す指標との間の相関関係をもとにデータを分類する前記データ分類手段によるデータ分類工程とについて、その要点を説明する。
【００５２】
（１）データ変換工程
データ変換工程について説明する。
【００５３】
データ変換工程は、ソフトウェア開発におけるVモデルなど、開発プロセスの定義をもとにして、検証工程と設計工程の対応関係、及び工程間の順序関係を、簡単かつ総合的に判断して、目的変数（結果に対応する）と説明変数（原因に対応する）を抽出する（属性を目的変数と説明変数に仕分けする）ことに相当する。
【００５４】
Ｖ字モデルは、ソフトウェア開発や情報システム開発などの流れを表現する開発プロセスモデルであり、例えば図２Ｂに例示される。Vモデルにおいて、各工程が相互関係にあることを表すが、例えば、単体テスト工程であれば、業務要件を設計結果に基づいてプログラム化（コーディング）できているかどうかを確認することを示している。また、次のテスト工程においては、設計した通りに正しく動作するかどうかを確認する。例えば図２Ｂでは機能設計の確認を結合テストで行い、システム設計の確認を総合テストで行う。システムが出来上がった運用段階においては、客とともに、客の要求を分析し、計画、企画立案した通りにシステムが運用出来ているかどうかを確認する。例えば図２Ａの受け入れテストで確認する。このようにテスト工程で、計画、企画立案過程から段階的に詳細化した設計が正しく実現されて意図したものが出来上がっているかを確認までを規定する。尚、Ｖ字モデルについては、堀田勝美、関弘充他、「ソフトウェア品質保証システムの構築と実践」ｐ１１３、ｐ１１４、ソフト・リサーチ・センター、２００８、に記載がある。
【００５５】
このデータ変換工程では、例えばＶ字モデルに示されるような各工程の相互関係に注目して、工程間の順序関係だけでなく、設計とテスト（検証）の対応関係をふまえた、問題解決に有用な分析結果を選択的に分析者に提示しようとするものである。さらに、データ変換工程は、ラフセット（ラフ集合）理論等によるマイニングを利用して、目的変数に対する顕在パターンを優先的に抽出させるためにも有効となる。ラフ集合理論は、決定表から最小限必要な属性や極小な決定ルールを効率的に抽出する手法として有用であり、特に冗長性を排除したルールとして求めることに資するものであり、Ａｐｒｉｏｒｉアルゴリズムによるデータマイニングに対して補完関係を持つ。尚、本明細書では、顕在パターンという用語を、非特許文献１の記載に準拠して、次の定義を参照し使用する。顕在パターンとはあるクラスに多頻度で、その他のクラスでは多頻度ではないようなアイテム集合のことである。ここで、アイテムとは、属性と数値の組み合わせで構成される単位を意味する。
【００５６】
データマイニングの前工程としてデータ変換工程を採用することにより、生成されるルールの数が抑制される。抑止されるルールは問題解決に重要でないルールである可能性が高いものとされる。
【００５７】
（２）データ分類工程
次にデータ分類工程について説明する。
【００５８】
データ分類項工程とは、特性の似たプロジェクトを同一のグループとしてデータマイニングの前工程として事前に分類する処理を行なう工程である。グループ分けの妥当性次第で、知識発見の効率と精度が左右されるので、プロジェクト等のプロセス管理に有効なサンプルのグループ分けの指針を提供することが可能になる。
【００５９】
具体的には、本発明では、プロジェクトの問題分析、およびその原因構造をもとにした予測のために、データマイニングを用いる状況を想定し、プロジェクト等のプロセスの複雑さ、あるいは成果物の複雑さの程度を反映する指標でクラス分けを実施した上で、クラスごとにデータマイニングを適用させる。そのために、プロジェクト等のプロセスの複雑さ、あるいは成果物の複雑さの程度として、（ａ）生産量とコストの相関関係の相違（規模の経済／規模の不経済）、（ｂ）規模と工数あるいは規模と開発生産性の相関関係の相違、という指標で分類する分類工程を備える。
【００６０】
すなわち、（ａ），（ｂ）のように規模に対する経済性の相違に注目し、その類似性でサンプルをグループ分けし、グループごとにデータマイニングを行う。中でも、ソフトウェア開発を分析対象とする場合においては、開発規模に対する経済性として、人月工数や、人月生産性（たとえば、製造あるいは検証したコード行数あたりに投入した人月工数）を属性として選択し、それらと規模との関係の仕方の類似性でサンプルのグループ分け指針を決める。
【００６１】
規模に対する経済性の相違に注目する理由は、開発・生産・製造などを遂行するプロジェクトやプロセスをとりまく状況（複雑さ）を端的に表現する手がかりとなるからである。各種概念を参照しながら分析を行うことができるようになり、分析の視野の拡大、精度向上、そして効率化が期待できるようになる。
【００６２】
このような概念としては、たとえば「規模の経済性」と「アドバンテージマトリクス」が知られる。「規模の経済性」とは生産量の増加にともない利益率が高まることである。生産量の増大につれて平均費用が減少する結果、利益率が高まる傾向をいう。同じ意味で、規模に関する収穫逓増、費用逓減といわれることもある。これが、企業活動の現状把握と方向づけに重要な手がかりになる。たとえば、成熟市場では、選択と集中に基づく効率的な投資が競争戦略上重要とされている。
【００６３】
規模の経済性は、生産量の増加率に対する生産費用の増加率の比として、表せる。生産物が１単位増加したとき費用の増加がそれ以下ということで、その値としては１以下であれば良いということになる。上式が１より小さければ費用の近似点である標本の平均値において規模の経済が存在しており、１より大きければ費用の近似点である標本の平均値において規模の不経済が存在していることになる。「規模の経済性」については、経営用語の基礎知識（http://www.nri.co.jp/opinion/r_report/m_word/kibo.html）に記載がある。
【００６４】
「アドバンテージマトリクス」とは、規模に対する利益指標（たとえばＲＯＡ）に対する線形性の大小や、規模に対する利益指標の弾力性の大小で、業界の競争環境をいくつかのタイプにわけて分析する概念であり、公知の分析手法である。タイプごとに業界特性が異なり、たとえば、規模が大きくなるほど利益（たとえばＲＯＡ）が線形的に大きくなる業界では、競争要因が少ないとされる。「アドバンテージマトリクス」については、グロービス・マネジメント・インスティテュート著「MBAマネジメント・ブック」,ダイヤモンド社、に記載がある。
【００６５】
ソフトウェア開発を分析対象とする場合には、規模に対する経済性に注目する利点として、同一の見積り式で近似できる範囲にありコスト構造が類似するサンプル集合の単位で、品質などの問題分析が可能になる。ここで、見積りとは、狭義には、「プロジェクトや開発プロセスにかかる期間やコストを予測すること」（Steve McConnell,「ソフトウェア見積り」,日経BPソフトプレス,2006）である。広義には、ビジネスのターゲット（実現したい目標の記述）と、コミットメント（定義された機能を、特定の品質レベルを確保しないが期日までに納品するという約束）と、コントロールとの間との相互作用である（出所：同上）。
【００６６】
ソフトウェア工学では従来から、「プロジェクトの「規模」が工数とコストとスケジュールを決定する上で最も重要な要素である（Steve McConnell,「ソフトウェア見積り」,日経BPソフトプレス,2006）」など、規模が重要とされている。すなわち、ソフトウェア開発の見積もりにおいては、ＱＣＤ（品質・コスト・デリバリー）のＣを人月工数あるいは生産性（人月あたりの産出規模）とし、Ｄを日数・期間として扱い目的変数に設定し、規模を説明変数として表現することが多い。そして、規模に開発規模（プログラム量（指標例：コード行数（ＬＯＣ）)や実現機能数（指標例：ファンクションポイント）を、コストに人月工数を用いることが多い。見積もり式の例としては、
Y(工数)=aX（規模）+b
を挙げることができる。aとbは係数である。
【００６７】
上式は、指揮組織状況に応じて、複雑な関係式に変わる場合もある。たとえば、YとXが指数関数的な関係になり、規模が増すほど工数の増分が拡大していく。これは「規模の不経済」に相当し、ソフトウェア開発の現場では知られた現象である（ソフトウェア開発における「規模の不経済」は、Steve McConnell,「ソフトウェア見積り」,日経BPソフトプレス,2006  に言及がある）。
【００６８】
一方で、ソフトウェア開発において品質の見積もり（予測）は、工数を規模から見積るような、広く流布した因果関係式は存在しない。ソフトウェア開発固有の特徴として、プロジェクトやプロセスの量的要素（規模）とコストの関係は比較的類型化しやすく、その類型化がプロダクト特性や事業戦略にもリンクさせて考察しやすい一方で、品質の予測は、個別状況の依存性が高いことを示唆している。このような事情は、たとえば、Robert B.Grafyが、HayesとWheelwrightの考案した製品/プロセスモデルを引用し次のような説明で言及している。
【００６９】
HayesとWheelwrightのモデルでは、プロダクトライフサイクルとプロセスライフサイクルを規定し、ライフサイクルが進む（高い段階に位置する）ほど、規模の経済性が競合との競争要因となり、低い段階に位置するほど品質が競争要因になるとする。しかし、このモデルをソフトウェア開発のプロセスに適用した場合には、低い段階のプロダクトやプロセスがソフトウェアのより高い品質に結びつくという証拠はなく、むしろより高い段階のプロダクトやプロセスがソフトウェアのより高い品質に結びつくという反対の主張すらある。品質に関しては何も言及していない（Robert B.Grafy著,ソフトウェアプロセス改善、ｐ３１８、１９９８、共立出版）。
【００７０】
このRobert B.Grafyの説明は、ソフトウェア開発において、プロジェクトの特性と品質の関係性や、品質とコストの関係性を見積ることの難しさを示唆する好適な説明である。
【００７１】
そこで、本発明の最適な実施の形態としては、品質の原因分析、およびその原因構造をもとにした品質の予測のためにはそれに適したデータマイニングを用いることを想定する。その精度と効率を上げるために、規模と工数との関係性にもとづくクラス分けを実施した上で、クラスごとにデータマイニングを適用する。つまり、コストの見積りの点で同質的に扱える集団を、データマイニングの投入単位として、品質の要因分析などのためのデータマイニングを実行する。
【００７２】
結果として、プロジェクト等の特性の前提がそろった状態で、グループ内のプロジェクト群を比較評価できるので、評価結果は納得感を得やすい。また、コスト構造の点での類似性をもとにグループ化されているので、同一グループ内における品質の問題構造に対するマイニング結果とコスト構造とを対比させたり、グループ間で対比させたりすることで、品質とコストとの関係性についての洞察も得やすくなると考えられる。
【００７３】
なお、前記アドバンテージマトリクスの議論での「規模」は、財務指標上の規模（売上げ高など）であることが多い。しかし、本明細書では、財務指標上の「規模」を、非財務指標上の「規模」に相当する開発規模や生産量に置き換えを許容する。ソフトウェア開発などにおいて、双方の「規模」がリンクする事例が少なくないからである。たとえば、ソフトウェアビジネスにおいては、開発規模が売上げ高に影響する場合が少なくない。そこで、ソフトウェア開発を分析対象にする場合には、開発規模（ソースコード行数など）を、事業規模に連動する指標として考える。
【００７４】
上記要点で説明したデータ変換工程とデータ分類工程を基に、ソフトウェア開発に対するプロセス管理のためのデータ分析方法について更に具体的な説明を続ける。
【００７５】
図２Ａは工程定義情報１０１０の構成を示す。図２Ｂは開発プロセスモデル図１０１１の具体例である。
【００７６】
工程定義情報１０１０では、工程間の因果関係の表現を通じて、各工程に関係した変数の因果関係を表現する。工程名称２００２と関係する評価尺度としてのメトリクス名称２００１が定義されている。図２Ｂに例示されるソフトウェア開発のV字モデルのように図形的に開発プロセスが表現できる場合に、工程定義情報１０１０は座標欄２００３を備えるものとする。座標欄２００３には、開発プロセスモデル図１０１１（図２Ｂ）に記述された各工程名称のＸ，Ｙ座標における座標値が記述されている。座標は開発プロセスモデル図１０１１（図２Ｂ）のプロット位置に対応する。開発プロセスモデル図１０１１の座標が工程定義情報１０１０の座標欄２００３に記述されており、工程定義情報１０１０から開発プロセスモデル図１０１１が再現できるようになっている。
【００７７】
ここで図２Ｂのように、開発プロセスモデル図１０１１が要因間を矢印で結んで表現したモデルならば、因果の連鎖が矢印で表現されているので、座標欄２００３に書き出された座標が因果関係の手がかりとなる。座標の抽出および表への記入は、分析者に目視で転記させてもよいし、公知の図形解析技術を用いて自動変換してもよい。以上によって、図２Ａの工程定義情報には工程名称やメトリクスが図の座標に対応づけられて記録される。特に、図２Ｂに記載した開発プロセスモデル図１０１１は、ソフトウェア開発を表現するモデルとして知られるＶ字モデルの記述に相当する。このモデルは、水平面の高低が意味を持つが、この意味をも記述したことになる。
【００７８】
図３Ａ及び図３Ｂにはマイニング対象データテーブル１０１２の構成を例示する。これはプロジェクトを行とし、収集データ項目（属性）を列として、記録した表形式の典型的な形態とするものである。すなわち、個々のプロジェクトに対応するサンプルＩＤ欄３００１、個々の収集データ項目に対応する属性欄３００２〜３００５によって構成され、サンプルごとに対応する属性測定値や評価値が記述されている。図３Ａ及び図３Ｂともに、サンプルＩＤ１件がプロジェクト１件に相当する。図３Ａは、本発明の典型的な実施の形態として、規模とプロジェクトの最終的な投入コストと成果物の品質に関わるメトリクスに関し実績データを示している。図３Ｂは、プロジェクトごとに、プロセス途中の中間生成物の品質やプロセスのサブ工程ごとのコストの明細を示している。
【００７９】
図３Ａにおける評価値は、ある基準値の何倍かを示す表記形態となっている。基準値はａ，ｂである。
【００８０】
図３Ｂにおける評価値（ａ１，ａ２など）は各属性ごとに連続量を区切って離散化し記号化（レベル分けなどに相当）した状態を示すものである。
【００８１】
図４にはデータ分析システムによるデータ分析方法の第１の実施の形態である第１の処理フローが例示される。ここでは、第１のデータマイニングとして、ラフ集合理論の決定ルールの概念を用いて顕在パターンを抽出する形態について説明する。第１の処理フローは、第２のデータマイニング実行手段１００８及び第２のデータマイニング用属性選択手段１００７による処理を含まない形態である。
【００８２】
データ分析システムにおいて、まず、処理４００１で、マイニング対象データテーブル１０１２を読み込む。これはプロジェクト名を行とし、収集データ項目を列として、記録されたデータテーブルである。次に、処理４００２で、データ変換を行う。具体的には目的変数の指定と説明変数群の設定を行う。次に、処理４００３で、データマイニングを実行する。これにより、指定した目的変数に関連するような適切な説明変数群で構成されたルールや特徴が抽出される。最後に、処理４００４で、データマイニングの結果を分析者に表示する。表示は分析結果表示手段１００９によって実施される。
【００８３】
図５にはデータ変換処理４００２に対応されるデータ変換の処理フローを詳細に例示する。まず、処理５００１5では、目的変数を指定させる。これは分析者からの入力によるものとする。次に、処理５００２で、工程定義情報１０１０を読み込む。次に、条件判定処理５００３で、分析対象がソフトウェア開発かを調べ、この条件が成立するときは、処理５００４で、ソフトウェア開発用データ最適化手段１００４を呼び出して実行する。処理５００５で、工程定義情報１０１０をもとに説明変数群を指定する。ここで抽出される説明変数群は、前もって指定された目的変数を説明する変数群である。工程定義情報１０１０の座標欄２００３のような因果関係を手がかりに行われる。ソフトウェア開発用データ最適化手段１００４による設定内容を変更して用いることも可能である。最後に、処理５００６で、目的変数に対する説明変数群（説明変数セット）からもれた変数を除外したテーブルを生成する。生成したテーブルはデータマイニング実行手段に投入されるデータセットになる。
【００８４】
図６にはソフトウェア開発用データ最適化手段１００４による変換動作の処理フローの詳細が例示される。まず、処理６００１で、目的変数の座標を取得する。具体的には、目的変数が結合テスト不良密度の場合  t := 6;  y := 2;を行なう。図２の実施の形態では目的変数欄２００５に○印することで示されている。次に、処理６００３で、目的変数以外のメトリクス（当該メトリクス）の座標 (T, Y)を取得する。座標は、工程定義情報１０１０の所定の欄に記述されている情報を読み出す。次に、処理６００４で、説明変数認定条件を参照する。条件をPとする。一例して条件P: Y <= y かつ T<=t、とする。次に、条件判定処理６００５で、条件Pが成立を調べ、この条件が成立するときは、処理６００６で、当該メトリクスを説明変数として認定する。図２の実施の形態では説明変数欄２００４に○印することで、適用認定されたことを参照可能にする。判定処理６００５で条件が成立しないときには、処理６００７で、当該メトリクスを説明変数から除外指定する。図の実施の形態では説明変数欄２００４に×印することで、除外認定されたことを参照可能にする。次に、処理６００８で、ファイルの終りが来るまでの間、処理６００９以下の一連の処理を繰り返す。まず、処理６００９で、次のメトリクスを参照する。そして、処理６０１０で、ステップ６００２のタグBBBに戻って処理を行う。最後に、処理６０１１で、終了処理を行う。
【００８５】
この一連の操作によって、目的変数が検証工程に関するメトリクスである場合に、その設計工程に関係の強い設計工程に関するメトリクスを優先して説明変数群に効率的に設定することができる。設定の誤りを抑制することもできる。
【００８６】
図７には説明変数群以外の属性を除外したデータセットの一例が示される。図３のマイニング対象データテーブル１０１２に対して、図７は、説明変数群以外の属性を除外したデータセットである。ここでは、ラフ集合理論のマイニングに活用する形態を想定して、目的変数を決定属性として、説明変数を条件属性に設定した状態で図示してある。
【００８７】
このような表を入力にして、データマイニング実行手段１００５によってデータマイニング工程が実行される。データマイニング工程がラフ集合理論に基づいて行われる場合には、図７の表が入力される。この理論の詳細は、例えば、文献「［Ｐａｗｌａｋ−９１］ Ｐａｗｌａｋ， Ｚ．"Ｒｏｕｇｈ Ｓｅｔｓ， Ｔｈｅｏｒｅｔｉｃａｌ Ａｓｐｅｃｔｓ ｏｆ Ｒｅａｓｏｎｉｎｇ ａｂｏｕｔ Ｄａｔａ"，Ｋｌｕｗｅｒ Ａｃａｄｅｍｉｃ Ｐｕｂｌｉｓｈｅｒｓ （１９９１）」に記載の通りとして、ここで説明は省く。
【００８８】
ラフ集合論理によるデータマイニングの結果、図７の表からは以下のような特徴パターンが抽出される。すなわち、決定属性が結合テスト不良密度でi1レベルのアイテム（決定アイテム１）、に対しては、
if  <機能設計工数がc2> then  <結合テスト不良密度がi1レベル> (1.000)      →{3,7,9}、
if  <単体テスト工数がe2> then  <結合テスト不良密度がi1レベル> (1.000)    →{3,7,9}、
if  <コーディング工数がd2レベルかつ結合テスト件数密度がh1レベル>  then <結合テスト不良密度がi1レベル> (1.000)     → {3,7,9}、
となる。ここで、（ ）の数字は、<該条件アイテム>が成立する場合に決定アイテムnが成立する確率、を示す。また、{ }にはこのパターンに該当するサンプルをサンプルID７００１の中から選んでいる。
【００８９】
その他に、決定アイテム１に対して、次のような＜条件＞のパターンが抽出される。
＜g2h1＞     (0.666)    →{3,7}
＜f2g2＞     (0.333)     →{3}
＜f1h1＞     (0.333)     →{7}
一方、決定アイテム２（結合テスト不良密度がi2レベル）としては、次のような＜条件＞のパターンが抽出される。
<c1>     (1.000)     →{1,2,4,5,6,8,10}
<e1>     (1.000)     →{1,2,4,5,6,8,10}
<h2>     (0.857)     →{1,2,4,5,6,8}
<d1>     (0.714)     →{4,5,6,8,10}
さらに異なる決定アイテム（決定アイテム１と決定アイテム２）を分ける（決定づける）条件属性として、
<c> <e> <d & h>
が抽出される。ラフ集合理論では、このように、クラスを決定づける重要な属性が抽出される。この属性抽出を行う処理は縮約と呼ばれる。
【００９０】
ラフ集合理論によるルール抽出の結果は、分析結果表示手段１００９によって、分析者に向けて表示されてもよいが、後続の処理によってデータマイニングの効率化や精度向上に役立てることも可能である。すなわち、ラフ集合理論が抽出した重要な属性が、別のデータマイニングの入力データとして使用することで、これら重要な属性を中心に第２のデータマイニングに投入する属性として選択するのが、第２のデータマイニング用属性選択手段１００７である。入力される重要な属性に限定されることで、第２のデータマイニングの処理効率が向上したり、あるいは、分析者にとって無駄な分析結果が抑制される、ことが期待できる。無駄な分析結果が抑制される例としては、出力されるif-Thenルールの数が抑制されることが好例である。
【００９１】
例えば、データマイニングとしてニューラルネットワークや遺伝的アルゴリズムによるモデル化を前後に組み込んでも本発明の趣旨からは逸脱しない。例えば、ラフ集合理論とニューラルネットワークとを組み合わせることにより最適パラメータを抽出しても良い。後工程に組み込む場合に、遺伝的アルゴリズムやニューラルネットワークが第２のデータマイニング実行手段１００８に相当する。ここで、ニューラルネットワークには、狭義のニューラルネットワークや自己組織化マップなどの公知のデータマイニング手法を含める。
【００９２】
図８に基づいて上記第２のデータマイニング工程を備えるデータ分析システムの動作の処理フローを説明する。図８は図４のフローを具体化したものに相当するが、図４には存在しないデータ分類工程（８００２）が更に追加されている。このデータ分類工程の説明は図９に示す。
【００９３】
図８では、まず、処理８００１で、マイニング対象データテーブル１０１２を読み込む。次に、処理８００２で、データ分類工程を実行する。次に、条件判定処理８００３で、分析対象がソフトウェア開発かを調べ、この条件が成立するときは、処理８００４で、ソフトウェア開発用分類最適化手段を呼び出す。処理８００５で、データ変換工程を実行する。次に、条件判定処理８００６で、分析対象がソフトウェア開発かを調べ、この条件が成立するときは、処理８００７で、ソフトウェア開発用データ最適化手段１００４を呼び出す。処理８００８で、第１のデータマイニング（ラフ集合による顕在パターン抽出）を行なう。次に、処理８００９で、第２のデータマイニング用属性選択(顕在パターンから属性選択)を行なう。次に、処理８０１０で、第２のデータマイニング（自己組織化マップによる特徴抽出および分類および予測）を行なう。最後に、処理８０１１で、データマイニングの結果を分析者に表示する。表示は分析結果表示手段１００９によって実施される。
【００９４】
図９を使って、データ分類工程の動作の処理フローを詳細に説明する。このフローで参照する分類候補情報は製品グループ、プロセスのテーラリング（調整）の度合い、難易度などが典型的な実施の形態であり、各々複数のクラス（難易度ならば「難」クラスと「易」クラス）が存在する。図１１に示すように、各サンプルはいずれかの分類候補のクラスに帰属させることができるものとする。また、このフローで開発規模や人月工数のデータを参照・取得する場合には、例えばマイニング対象テーブル（図３）の規模（LOC）欄３００２およびコスト（人月）欄３００３記載のデータを参照する。
【００９５】
図９では、まず、処理９００１で、分類候補情報を選択する。以下は、分類候補として候補３（難易度）を選択した例である。分類候補情報は、組織状況によって判断されるべきもので一律ではない。分類指針を例示すると、製品種別による分類、開発プロセス定義の相違による分類など、プロダクトとプロセスの双方の面での分類をなしうるものとする。次に、条件判定処理９００２で、分析対象がソフトウェア開発かを調べ、この条件が成立するときは、処理９００３で、目的変数に人月工数あるいは人月あたりの開発生産性を指定する。また、説明変数に開発規模を指定する。この処理ステップが、ソフトウェア開発用分類最適化手段の動作の一実施の形態である。開発規模としては、コード行数あるいはファンクションポイントを用いることが典型的な実施の形態である。次に、処理９００４で、目的変数にコストあるいは利益率に関わる属性を確定する。そして説明変数に規模に関わる属性を確定する。この処理は分析者による入力で行わせてもよいし、既に設定済みの内容を変更させて行ってもよい。次に、処理９００５で、全クラス（難易度高と難易度低）を分析するまでの間、処理９００６を繰り返す。処理９００６で、クラスごとに目的変数と説明変数の相関関係を算定する。相関関係の算定としては、例えばクラス内の全サンプルの回帰分析あるいは重回帰分析を行い、相関係数あるいは重相関係数を求めることが相当する。最後に、処理９００７で、クラスごとに求まった相関関係を参照し、該分類候補（難易度）が分類指針として妥当かを評価し採否を決める。分類指針として採否を判断する方法の実施の形態については後述する。ほかの分類候補（例えば製品グループ、プロセスのテーラリングの度合い）に対しても以上の処理を繰り返す。
【００９６】
図９の処理結果から、分類指針として分類候補情報の採否をデータ分類手段が判断する方法について説明する。特にその方法は、データ分類手段のなかでもソフトウェア開発用分類最適化手段が実施する工程とされる。
【００９７】
例えば、図１２のように、ソフトウェア開発を対象にして、開発規模（LOC）と人月工数との相関関係が抽出できたものとする。特に、これは、開発規模（LOC）が新規開発規模（LOC）と変更部分の規模（：変更規模LOC）の和で表現されるものとして、両方を、人月工数の説明変数として、重回帰分析を行った結果であるものとする。表の「変更規模の偏回帰係数」は新規規模の偏回帰係数を１とした場合の数値である。
【００９８】
以下は、分類候補として候補３（難易度）を選択した例を示す。図１２において、クラス１（「難易度が高い」クラス）による重相関係数とクラス分けしないサンプル全体（全プロジェクト）の重相関係数の大小を比較する。また、クラス２（「難易度が低い」クラス）による重相関係数とサンプル全体の重相関係数の大小を比較する。すなわち、該クラスiの重相関係数i  ＞  全プロジェクトの重相関係数、を判別する。
【００９９】
次に、該クラスiの重相関係数i  ＞  しきい値以、についても判定する。しきい値は、１未満のなるべく大きな値が望ましく、その値以上ならば、目的変数が説明変数に対して強く影響して線形性が強いと判断する値である。
【０１００】
上記２つの条件を同時に満たすクラスがひとつでも存在するならば、データマイニングに入力する分類の指針として、候補３（難易度）を採用する。これは、規模と人月工数との間に線形性の強いプロジェクト群（難易度が低いクラス）だけでも、分析が確実に行えるという判断にもとづく。
【０１０１】
重相関係数の大きな難易度が低いクラス(重相関係数0.8)では、相対的に線形性が強いといえる。そこで、その後の分析の結果、規模と品質の関係に何らかの相関が認められれば、規模と人月工数との間に線形性の強いプロジェクト群に対しては、規模を媒介にすることで、品質と工数との関係性に対する推定・改善方針がたてやすくなると考えた。同様に判断すると、分類指針：製品グループは、分類指針として採用になる。一方で分類指針：テーラリング度は、分類指針として不採用になる。
【０１０２】
さらに、分類指針：製品グループは、変更規模の偏回帰係数を参照すると、グループAは、他のグループよりも、新規規模に比べて変更規模が全体の工数に強く影響していることがわかる。このことから、グループAのプロジェクト群では何らかの理由で、例えば、変更作業が複雑であったり、難しい状況が存在したこと、が想定しうる。よって、その後に、この分類にそってデータマイニングを実行するならば、変更が難しいグループとそうでないグループを対比して、変更の難しさの要因やその差がもたらす影響について知見を導くことが容易になる。
【０１０３】
このように、特に、ソフトウェア開発では、規模と工数の関係性が、開発の複雑さなど、他の要因を示唆していることが少なくなく、規模と工数の関係性でグループ分けして別の目的変数に対して分析を行いその結果を比較することが、問題分析として、有効になることが少なくない。
【０１０４】
上記図８の説明に代わる別の実施の形態として、図１０に基づいて、データ分類工程の具体例として「規模の経済性」でサンプル分類を行う動作の処理フローを詳細に説明する。分類指針として分類候補情報の採否を判断する方法についてのフローも含めて説明する。このフローで開発規模や人月工数のデータを参照・取得する場合には、マイニング対象テーブル（図３）の規模（LOC）欄３００２およびコスト（人月）欄３００３記載のデータを参照することが実施の形態の一例である。
【０１０５】
図１０では、まず、処理１０００１で、分類候補情報を選択する。以下では、分類候補として候補３（難易度）を選択した場合について説明する。処理１０００２で、該サンプル群の規模と費用に関わる情報をマイニング対象データテーブル１０１２より取得する。次に、処理１０００３で、C=規模,y=費用とする。次に、条件判定処理１０００４で、分析対象がソフトウェア開発かを調べ、この条件が成立するときは、処理１０００５で、規模に開発規模を設定する。費用として人月工数を設定する。この処理ステップが、ソフトウェア開発用分類最適化手段の動作の一実施の形態である。開発規模としては、コード行数（LOC）やファンクションポイントを用いるのが典型的な実施の形態である。次に、処理１０００６で、全クラス（難易度高と難易度低）を分析するまでの間、処理１０００７以下の一連の処理を繰り返す。まず、処理１０００７で、SE(規模の経済性)＝∂lnC／∂lnYを算出する。そして、条件判定処理１０００８で、ＳＥ（規模の経済性）がしきい値以上成立を調べ、この条件が成立するときは、処理１０００９以下の一連の処理を行なう。ここでしきい値は経済学でよく知られた１を規定値とするが、分析環境の実態に合わせて異なる値を設定してもよい。まず、処理１０００９で、当該クラスは規模の経済を行なう。判定処理１０００８で条件が成立しないときには、処理１００１０で、当該クラスは規模の不経済を行なう。次に、処理１００１１で、クラスごとに求まった規模の経済性の状況（規模の経済か不経済か、およびその程度）を参照する該分類候補（以上では難易度）が分類指針として妥当かを評価し採否を決める。最後に、処理１００１２では、例えば、同一の分類方針内で規模の経済性を示すクラスと規模の不経済を示すクラスとが、両方生成された場合に、該分類候補（難易度）を分類指針として採用する。その後のデータマイニングで得られるところの、規模の経済のグループの特徴と規模の不経済のグループの特徴を比較すれば、規模の不経済の要因や規模の経済に転化させる指針が可視化される効果が期待できると考えられる。ほかの分類候補、例えば製品グループ、プロセスのテーラリングの度合いなどに対しても以上の処理を繰り返す。
【０１０６】
以上説明したデータ分析方法は、プロジェクト管理、特にソフトウェア開発プロジェクトの分析・評価に有効である。上記方法をコンピュータ装置に実行させるデータ分析プログラムを用いることにより上記データ分析方法を容易に行うことができる。
【０１０７】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【０１０８】
例えば、工程定義情報のメトリクス及び工程項目名は上記説明に限定さされず、対象する計画、企画又は開発のプロセスの内容に応じて適宜変更される。分析対象データ１００１はハードディスク装置などの記憶装置から直接読み込まれることに限定されず、通信ネットワークを介してダウンロードして読み込まれてもよい。
【符号の説明】
【０１０９】
ＣＭＰＴＲ  コンピュータ装置
１００１  分析対象データ
１００２  データ変換手段
１００３  データ分類手段
１００５  データマイニング実行手段
１００６  第１のデータマイニング実行手段
１００８  第２のデータマイニング実行手段
１００７  第２のデータマイニング用属性選択手段
１００４  ソフトウェア開発用データ最適化手段
１０１０  工程定義情報
１０１２  マイニング対象データテーブル
【図１】
2010231524.tif 000003
【図２Ａ】
2010231524.tif 000004
【図２Ｂ】
2010231524.tif 000005
【図３Ａ】
2010231524.tif 000006
【図３Ｂ】
2010231524.tif 000007
【図４】
2010231524.tif 000008
【図５】
2010231524.tif 000009
【図６】
2010231524.tif 000010
【図７】
2010231524.tif 000011
【図８】
2010231524.tif 000012
【図９】
2010231524.tif 000013
【図１０】
2010231524.tif 000014
【図１１】
2010231524.tif 000015
【図１２】
2010231524.tif 000016