(57)【要約】【課題】ソフトウェア開発プロジェクト（ＰＪ）の品質管理を支援し、残不良数を不良の種類毎に予測し、その不良属性毎の総不良対策工数を予測する不良数・対策工数予測システムを提供する。【解決手段】不良数・対策工数予測システムにおいて、過去のプロジェクトで摘出された不良実績情報に基づいて、不良属性毎の不良数を予測する不良数予測モデルを作成する不良数予測モデル作成部１１と、不良数予測モデル作成部１１で作成された不良数予測モデル、および予測対象の当該プロジェクトの当該プロジェクト不良実績情報に基づいて、不良属性毎の残不良数を予測する不良数予測算出部１４と、不良数予測算出部１４で予測された不良属性毎の残不良数および過去の不良属性毎の実績対策工数に基づいて、総不良対策工数を予測する不良対策工数予測変換部１７とを備えた。【選択図】図１
2011048628.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア開発のプロジェクトの残不良数および対策工数を予測する不良数・対策工数予測装置における不良数・対策工数予測方法であって、
前記不良数・対策工数予測装置により、過去のプロジェクトで摘出された不良実績情報に基づいて、不良属性毎の不良数を予測する不良数予測モデルを作成し、前記不良数予測モデル、および予測対象の当該プロジェクトの当該プロジェクト不良実績情報に基づいて、不良属性毎の残不良数を予測し、前記不良属性毎の残不良数および過去の不良属性毎の実績対策工数に基づいて、総不良対策工数を予測することを特徴とする不良数・対策工数予測方法。
【請求項２】
ソフトウェア開発のプロジェクトの残不良数および対策工数を予測する不良数・対策工数予測システムであって、
過去のプロジェクトで摘出された不良実績情報に基づいて、不良属性毎の不良数を予測する不良数予測モデルを作成する不良数予測モデル作成部と、
前記不良数予測モデル作成部で作成された前記不良数予測モデル、および予測対象の当該プロジェクトの当該プロジェクト不良実績情報に基づいて、不良属性毎の残不良数を予測する不良数予測算出部と、
前記不良数予測算出部で予測された前記不良属性毎の残不良数および過去の不良属性毎の実績対策工数に基づいて、総不良対策工数を予測する不良対策工数予測変換部とを備えたことを特徴とする不良数・対策工数予測システム。
【請求項３】
請求項２記載の不良数・対策工数予測システムにおいて、
前記不良対策工数予測変換部は、前記プロジェクトのプロフィールが格納されたプロフィール情報に特徴に応じて、前記総不良対策工数を予測することを特徴とする不良数・対策工数予測システム。
【請求項４】
請求項２および３記載の不良数・対策工数予測システムにおいて、
前記当該プロジェクトが計画していた対策工数、予測した前記残不良数および前記総不良対策工数を表示装置に表示させる表示処理部を備えたことを特徴とする不良数・対策工数予測システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア開発プロジェクトの品質管理を支援し、残不良数を不良の種類毎に予測し、その不良属性毎の総不良対策工数を予測する不良数・対策工数予測方法、および、それを実施するための不良数・対策工数予測システムに関するものである。
【背景技術】
【０００２】
ソフトウェア開発プロジェクト（以下、ＰＪと呼ぶ）で予定コストを超過しないためには、各工程でしっかりと品質を確保し、あらかじめ立てたスケジュール計画とのズレをなくすことが重要である。そのために、現状では、発生した不良を確実に対策するための品質管理支援ツールが各社から販売されている。
【０００３】
また、いくつかのツールでは、特開２０００−１２２８６０号公報（特許文献１）に記載のような残不良数予測機能を持つものがある。特許文献１は、不良発見数が少ない時点や、テスト工程開始間もない時点から残不良数を的確に予測し得るものである。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−１２２８６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術では残存不良の数を予測している。この不良数から対策工数を求める際、不良１件にかかる対策工数（コストや期間）が不良の種類（属性）によって異なるため、数の予測だけではコストや期間に与える影響がわからない。
【０００６】
また、ここで、対策工数の平均を使ってコストや期間を算出することは可能なため、実績対策工数の平均を使ってコストや期間を予測している。しかし、対策工数は、不良の種類（属性）やＰＪの開発プロフィールによって大きく異なるものであり、単純に実績対策工数の平均を使っていては精度が出ない。そのため対策工数を見誤り、予定コストを超過してしまう。
【０００７】
そこで、本発明の目的は、ＰＪの予定コスト超過を事前に対処するために、残不良数を不良の種類毎に予測し、その不良属性毎の総不良対策工数をＰＪの開発プロフィールを考慮して予測する不良数・対策工数予測方法、および、それを実施するための不良数・対策工数予測システムを提供することにある。
【０００８】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。
【００１０】
すなわち、代表的なものの概要は、過去のプロジェクトで摘出された不良実績情報に基づいて、不良属性毎の不良数を予測する不良数予測モデルを作成し、不良数予測モデル、および予測対象の当該プロジェクトの当該プロジェクト不良実績情報に基づいて、不良属性毎の残不良数を予測し、不良属性毎の残不良数および過去の不良属性毎の実績対策工数に基づいて、総不良対策工数を予測する。
【発明の効果】
【００１１】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。
【００１２】
すなわち、代表的なものによって得られる効果は、残存不良を不良属性毎に予測し、それ毎の総不良対策工数を精度良く予測することで、コストや期間に与える影響が精度良くわかり、ＰＪの予定コストの超過を事前に対処することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施の形態に係る不良数・対策工数予測システムの構成を示す構成図である。
【図２】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部の工程マスタのデータ構造を示す図である。
【図３】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部のプロフィール属性マスタのデータ構造を示す図である。
【図４】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部の不良属性項目マスタのデータ構造を示す図である。
【図５】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部のプロフィール項目マスタのデータ構造を示す図である。
【図６】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部の不良実績情報のデータ構造を示す図である。
【図７】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部の開発プロフィール情報のデータ構造を示す図である。
【図８】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良数予測用情報保持部の予測用情報のデータ構造を示す図である。
【図９】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良数予測モデル保持部のモデル情報のデータ構造を示す図である。
【図１０】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される予測不良数保持部の予測結果のデータ構造を示す図である。
【図１１】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部の工程マスタのデータ構造を示す図である。
【図１２】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部のプロフィール属性マスタのデータ構造を示す図である。
【図１３】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部の不良属性項目マスタのデータ構造を示す図である。
【図１４】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部のプロフィール項目マスタのデータ構造を示す図である。
【図１５】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部の不良実績情報のデータ構造を示す図である。
【図１６】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部の開発プロフィール情報のデータ構造を示す図である。
【図１７】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される開発プロフィール別対策工数保持部の開発プロフィール別対策工数情報のデータ構造を示す図である。
【図１８】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される開発プロフィール別対策工数保持部の属性毎工数情報のデータ構造を示す図である。
【図１９】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される予測対策工数保持部の属性毎の工数予測情報のデータ構造を示す図である。
【図２０】本発明の一実施の形態に係る不良数・対策工数予測システムで使用される計画時対策工数保持部の計画時対策工数情報のデータ構造を示す図である。
【図２１】本発明の一実施の形態に係る不良数・対策工数予測システムによる不良数を予測するモデル作成の大きな流れを示すフローチャートである。
【図２２】本発明の一実施の形態に係る不良数・対策工数予測システムのモデル作成画面の一例を示す図である。
【図２３】本発明の一実施の形態に係る不良数・対策工数予測システムの不良数予測モデル作成部の処理を示すフローチャートである。
【図２４】本発明の一実施の形態に係る不良数・対策工数予測システムの不良実績情報から予測実施工程までの属性毎の総不良件数を集計する手順を示すフローチャートである。
【図２５】本発明の一実施の形態に係る不良数・対策工数予測システムの不良実績情報から残不良数を集計する手順を示すフローチャートである。
【図２６】本発明の一実施の形態に係る不良数・対策工数予測システムによる不良数と対策工数を予測する大きな流れを示すフローチャートである。
【図２７】本発明の一実施の形態に係る不良数・対策工数予測システムの不良数と対策工数の予測画面の一例を示す図である。
【図２８】本発明の一実施の形態に係る不良数・対策工数予測システムの不良数予測算出部の処理を示すフローチャートである。
【図２９】本発明の一実施の形態に係る不良数・対策工数予測システムの不良対策工数予測変換部の処理を示すフローチャートである。
【図３０】図２９のステップ１７１の詳細な処理を示すフローチャートである。
【図３１】図２９のステップ１７２の詳細な処理を示すフローチャートである。
【図３２】図２９のステップ１７３の詳細な処理を示すフローチャートである。
【図３３】本発明の一実施の形態に係る不良数・対策工数予測システムの表示処理部の処理を示すフローチャートである。
【図３４】本発明の一実施の形態に係る不良数・対策工数予測システムの表示処理部による不良数と対策工数の予測表示画面の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１５】
図１により、本発明の一実施の形態に係る不良数・対策工数予測システムの構成について説明する。図１は本発明の一実施の形態に係る不良数・対策工数予測システムの構成を示す構成図である。
【００１６】
図１において、不良数・対策工数予測システムは、各処理を実施し、残不良数と対策工数を予測する不良数・対策工数予測装置１、不良数・対策工数予測装置１へ指示を与えるためのキーボード、マウス、タブレット、タッチパットなどの入力装置２、不良数・対策工数予測装置１が処理した情報を表示するＣＲＴ、液晶モニタなどの表示装置３、紙などの媒体に印刷する印刷装置４、他の装置とのデータのやりとりや、制御を受け付けるためのネットワーク接続装置５から構成されている。ネットワーク接続装置５は有線、無線どちらの方式でも良い。
【００１７】
また、不良数・対策工数予測システムは、不良情報管理装置６および計画対策工数管理装置７のデータを使用する。不良情報管理装置６は、通常ソフトウェア開発で使用されるバグ管理システムであり、過去ＰＪの不良情報が保持されている不良実績情報保持部６１と、当該ＰＪの不良情報が保持されている当該ＰＪ不良実績情報保持部６２から構成されている。
【００１８】
また、計画対策工数管理装置７は、計画時対策工数保持部７１から構成され、ＰＪの開発計画時やテスト開始時に、あらかじめ計画していた対策工数の情報が保持されている。      
【００１９】
本実施の形態ではデータ入力時期の違いから、不良情報管理装置６および計画対策工数管理装置７を別装置として記載しているが、不良実績情報保持部６１、当該ＰＪ不良実績情報保持部６２、計画時対策工数保持部７１は不良数・対策工数予測装置１に含まれていても良い。
【００２０】
不良数・対策工数予測装置１は、残不良数を予測するモデルの作成用に変換した不良情報を保持する不良数予測用情報保持部１２、不良数予測用情報保持部１２の情報を用いて残不良数を予測するモデルを作成する不良数予測モデル作成部１１、作成したモデルを保持する不良数予測モデル保持部１３、モデルを用いて不良数を予測する不良数予測算出部１４、予測された不良数を保持する予測不良数保持部１５、予測不良数を不良対策工数に変換するための情報である過去ＰＪの開発プロフィール別対策工数を保持している開発プロフィール別対策工数保持部１６、開発プロフィール別対策工数保持部１６の情報をもとに予測不良数から対策工数に変換する不良対策工数予測変換部１７、変換された対策工数の情報を保持する予測対策工数保持部１８、計画時の対策工数および予測した不良数と対策工数を表示する表示処理部１９で構成されている。
【００２１】
次に、図２〜図２０により、本発明の一実施の形態に係る不良数・対策工数予測システムで使用される各保持部のデータ構造について説明する。図２〜図７は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良実績情報保持部のデータ構造を示す図であり、図２は工程マスタのデータ構造、図３はプロフィール属性マスタのデータ構造、図４は不良属性項目マスタのデータ構造、図５はプロフィール項目マスタのデータ構造、図６は不良実績情報のデータ構造、図７は開発プロフィール情報のデータ構造を示している。
【００２２】
図８は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良数予測用情報保持部の予測用情報のデータ構造を示す図、図９は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される不良数予測モデル保持部のモデル情報のデータ構造を示す図、図１０は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される予測不良数保持部の予測結果のデータ構造を示す図である。
【００２３】
図１１〜図１６は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される当該ＰＪ不良実績情報保持部のデータ構造を示す図であり、図１１は工程マスタのデータ構造、図１２はプロフィール属性マスタのデータ構造、図１３は不良属性項目マスタのデータ構造、図１４はプロフィール項目マスタのデータ構造、図１５は不良実績情報のデータ構造、図１６は開発プロフィール情報のデータ構造を示している。
【００２４】
図１７および図１８は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される開発プロフィール別対策工数保持部のデータ構造を示す図であり、図１７は開発プロフィール別対策工数情報のデータ構造、図１８は属性毎工数情報のデータ構造を示している。
【００２５】
図１９は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される予測対策工数保持部の属性毎の工数予測情報のデータ構造を示す図、図２０は本発明の一実施の形態に係る不良数・対策工数予測システムで使用される計画時対策工数保持部の計画時対策工数情報のデータ構造を示す図である。
【００２６】
図２において、工程マスタ６１１は、工程ＩＤ６１１１、工程名６１１２から構成されている。
【００２７】
図３において、プロフィール属性マスタ６１２は、ＰＪの開発プロフィールの属性である言語やＯＳや開発タイプを示しており、プロフィールＩＤ６１２１、プロフィール名６１２２から構成されている。
【００２８】
図４において、不良属性項目マスタ６１３は、不良の原因や要因や影響度を示す属性と各属性の項目を示しており、属性ＩＤ６１３１、属性項目名６１３２、属性項目分類６１３３から構成されている。また、属性ＩＤ６１３１の「ａ」、「ｂ」、「ｃ」に対応して、属性項目分類６１３３が「原因」、「要因」、「重要度」が割り当てられている。
【００２９】
なお、図４においては、属性項目名６１３２の内容に、属性項目分類６１３３の内容も含まれているため、属性項目名６１３２内の属性項目分類をデータとして扱うことができれば、属性項目分類６１３３の項目はなくても良い。
【００３０】
図５において、プロフィール項目マスタ６１４は、開発プロフィールの各属性の項目を示しており、プロフィール項目ＩＤ６１４１、プロフィール項目名６１４２、プロフィールＩＤ６１４３から構成されている。
【００３１】
図６において、不良実績情報６１５は、過去ＰＪの不良情報を示しており、不良ＩＤ６１５１、システムＩＤ６１５２、工程ＩＤ６１５３、属性ＩＤ＿原因６１５４、属性ＩＤ＿要因６１５５、属性ＩＤ＿重要度６１５６、不良対策工数６１５７から構成されている。
【００３２】
図７において、開発プロフィール情報６１６は、システムＩＤ６１６１、システム名６１６２、プロフィールＩＤ６１６３、プロフィール項目ＩＤ６１６４から構成されている。
【００３３】
図８において、予測用情報１２１は、システムＩＤ１２１１、工程ＩＤ１２１２、属性ＩＤ１２１３、総不良件数１２１４、残不良数１２１５、残不良数との関係値１２１６、予測対象属性ＩＤ１２１７から構成されている。
【００３４】
図９において、モデル情報１３１は、式番号１３１１、システムＩＤ１３１２、工程ＩＤ１３１３、定数１３１４、属性ＩＤ１（１３１５）、属性ＩＤ１係数１３１６、属性ＩＤ２（１３１７）、属性ＩＤ２係数１３１８、予測属性ＩＤ１３１９から構成されている。
【００３５】
図１０において、予測結果１５１は、予測した不良数の結果を保存しており、システムＩＤ１５１１、工程ＩＤ１５１２、予測属性ＩＤ１５１３、件数１５１４から構成されている。
【００３６】
図１１において、工程マスタ６２１は、工程ＩＤ６２１１、工程名６２１２から構成されている。
【００３７】
図１２において、プロフィール属性マスタ６２２は、ＰＪの開発プロフィールの属性である言語やＯＳや開発タイプを示しており、プロフィールＩＤ６２２１、プロフィール名６２２２から構成されている。本実施の形態では、３つの開発プロフィール属性を使用しているが、開発プロフィールであれば、何種類でも構わない。
【００３８】
図１３において、不良属性項目マスタ６２３は、不良の原因や要因や影響度を示す属性と各属性の項目を示しており、属性ＩＤ６２３１、属性項目名６２３２、属性項目分類６２３３から構成されている。なお、本実施の形態では３つの属性を用いているが、不良の属性情報であれば、何種類でも構わない。
【００３９】
図１４において、プロフィール項目マスタ６２４は、開発プロフィールの各属性の項目を示しており、プロフィール項目ＩＤ６２４１、プロフィール項目名６２４２、プロフィールＩＤ６２４３から構成されている。
【００４０】
図１５において、不良実績情報６２５は、過去ＰＪの不良情報を示しており、不良ＩＤ６２５１、システムＩＤ６２５２、工程ＩＤ６２５３、属性ＩＤ＿原因６２５４、属性ＩＤ＿要因６２５５、属性ＩＤ＿重要度６２５６、不良対策工数６２５７から構成されている。
【００４１】
図１６において、開発プロフィール情報６２６は、システムＩＤ６２６１、システム名６２６２、プロフィールＩＤ６２６３、プロフィール項目ＩＤ６２６４から構成されている。
【００４２】
図１７において、開発プロフィール別対策工数情報１６１は、工程ＩＤ１６１１、属性ＩＤ１６１２、プロフィールＩＤ１６１３、プロフィール項目ＩＤ１６１４、平均対策工数１６１５から構成されている。
【００４３】
図１８において、属性毎工数情報１６２は、工程ＩＤ１６２１、属性ＩＤ１６２２、平均対策工数１６２３から構成されている。
【００４４】
図１９において、属性毎工数予測情報１８１は、不良属性毎に予測された工数を示しており、システムＩＤ１８１１、工程ＩＤ１８１２、属性ＩＤ１８１３、予測工数１８１４から構成されている。
【００４５】
図２０において、計画時対策工数情報７１１は、ＰＪが計画している対策工数の情報を示しており、システムＩＤ７１１１、工程ＩＤ７１１２、属性ＩＤ７１２３、計画時対策工数７１２４から構成されている。
【００４６】
次に、図２１および図２２により、本発明の一実施の形態に係る不良数・対策工数予測システムによる不良数を予測するモデル作成の大きな流れについて説明する。図２１は本発明の一実施の形態に係る不良数・対策工数予測システムによる不良数を予測するモデル作成の大きな流れを示すフローチャート、図２２は本発明の一実施の形態に係る不良数・対策工数予測システムのモデル作成画面の一例を示す図である。
【００４７】
はじめに、ユーザは残不良数を予測したい予測対象工程を入力する（ステップ２０１）。ステップ２０１では、例えば、図２２に示すような、モデル作成画面を表示して、入力画面としている。
【００４８】
図２２において、モデル作成画面３０は、予測対象工程を選択するドロップダウンリストボックス３０１、モデル作成を開始するＯＫボタン３０２、中止するＣａｎｃｅｌボタン３０３から構成されている。
【００４９】
予測対象工程を選択するドロップダウンリストボックス３０１は、図２に示す工程マスタ６１１の工程名６１１２の全レコードがリストになっている。ユーザは予測対象工程をドロップダウンリストボックス３０１から選択後、ＯＫボタン３０２を押下する。
【００５０】
次に、ステップ２０１で指定された予測対象工程に従って過去ＰＪの不良実績情報保持部６１から情報を読み込み（ステップ２０２）、モデルを作成するための情報に変換し（ステップ２０３）、不良数の予測モデルを作成し（ステップ２０４）、作成された予測モデルを不良数予測モデル保持部１３に保存する（ステップ２０５）。
【００５１】
次に、図２３〜図２５により、図２１のステップ２０２からステップ２０５の詳細な処理である本発明の一実施の形態に係る不良数・対策工数予測システムの不良数予測モデル作成部の処理について説明する。図２３は本発明の一実施の形態に係る不良数・対策工数予測システムの不良数予測モデル作成部の処理を示すフローチャート、図２４は本発明の一実施の形態に係る不良数・対策工数予測システムの不良実績情報から予測実施工程までの属性毎の総不良件数を集計する手順を示すフローチャート、図２５は本発明の一実施の形態に係る不良数・対策工数予測システムの不良実績情報から残不良数を集計する手順を示すフローチャートである。
【００５２】
まず、不良実績情報保持部６１の不良実績情報６１５（図６）から、予測実施工程までの工程ＩＤ６１５３を読み込み、総不良件数を集計する（ステップ１１１）。
【００５３】
不良実績情報保持部６１は、過去ＰＪの不良情報を保存してある場所であり、図２〜図７に示すのデータ構造を持っている。
【００５４】
ここで、ステップ１１１の詳細の処理を図２４により説明する。
【００５５】
まず、図６に示す不良実績情報６１５から工程ＩＤ６１５３を読み込み、予測実施工程までの工程に該当する工程ＩＤ６１５３と同一行の不良実績を全て読み込む（ステップ１１１１）。
【００５６】
次に、ステップ１１１１で読み込んだ不良実績の、属性ＩＤ＿原因６１５４と属性ＩＤ＿要因６１５５と属性ＩＤ＿重要度６１５６を読み込み、属性ＩＤ毎に総不良件数を集計し（ステップ１１１２）、全属性ＩＤが終了するまでステップ１１１２を繰り返す（ステップ１１１３）。
【００５７】
そして、不良数予測用情報保持部１２の予測用情報１２１（図８）の総不良件数１２１４に属性ＩＤ毎に集計した総不良件数を書き込み、予測対象のシステムＩＤ１２１１、工程ＩＤ１２１２、属性ＩＤ１２１３の内容と共に書き込む（ステップ１１１４）。
【００５８】
図２３に戻り、不良実績情報６１５から予測対象工程の工程ＩＤ６１５３を読み込み、残不良数を集計する（ステップ１１２）。
【００５９】
ここで、ステップ１１２の詳細の処理を、図２５を用いて説明する。
【００６０】
まず、図６に示す不良実績情報６１５から工程ＩＤ６１５３を読み込み、予測対象工程に該当する工程の工程ＩＤ６１５３かつ予測対象属性と同一行の不良実績を読み込む（ステップ１１２１）。
【００６１】
次に、ステップ１１２１で読み込んだ不良実績の属性ＩＤ＿原因６１５４と属性ＩＤ＿要因６１５５と属性ＩＤ＿重要度６１５６を読み込み、予測対象属性の属性ＩＤ毎に総不良数を集計する（ステップ１１２２）。ここで集計された総不良数は残不良数として扱われる。
【００６２】
そして、不良数予測用情報保持部１２の予測用情報１２１の残不良数１２１５に、属性ＩＤ毎に集計した残不良数を書き込む（ステップ１１２３）。
【００６３】
ここまでのステップで、不良属性毎に不良数を予測するための情報ができる。
【００６４】
図２３に戻り、ステップ１１１で集計した属性ＩＤ毎の予測実施工程の総不良件数を総不良件数１２１４から読み込み、ステップ１１２で集計した残不良件数を残不良数１２１５から読み込み、それぞれ読み込んだ件数の値を用いて、予測対象属性ＩＤ１２１７の総不良件数１２１４と残不良数１２１５の関係値を一般的な手法である相関分析手法で算出する（ステップ１１３）。
【００６５】
本実施の形態では相関分析手法を用いたが、総不良件数と残不良数の関係値を求める手法であれば他の手法でも構わない。
【００６６】
次に、算出した値を不良数予測用情報保持部１２の予測用情報１２１の残不良数との関係値１２１６に書き込み（ステップ１１４）、ステップ１１３、ステップ１１４を予測対象属性の全属性ＩＤに実施するまで繰り返す（ステップ１１５）。
【００６７】
次に、予測用情報１２１から、予測対象属性ＩＤ１２１７毎に残不良数との関係値１２１６の値が高い上位２つの属性ＩＤ１２１３と同じ行を読み込む（ステップ１１６）。
【００６８】
本実施の形態では関係値が高い上位２つの属性を用いたが、属性は何種類用いても構わない。
【００６９】
ここまでのステップで、不良属性毎の不良数予測モデルに用いる属性が決定される。
【００７０】
ここで、図８に示す予測不良数を出す予測対象属性ＩＤ１２１７のことを目的変数と呼び、この目的変数に対する感度の高さを評価した残不良数との関係値１２１６の高い方から２つを選択して、モデルに用いる属性とし、その属性を説明変数と呼ぶ。また、説明変数の値は、その属性の総不良件数１２１４の値となる。
【００７１】
次に、ステップ１１６で読み込んだ予測対象属性ＩＤ１２１７毎の各属性ＩＤ１２１３の総不良件数１２１４をモデルの説明変数の値として、予測対象属性ＩＤ１２１７毎の各属性ＩＤ１２１３をモデルの目的変数の値として、一般的に用いられる重回帰分析を実施して重回帰モデルを作成する（ステップ１１７）。
【００７２】
ここまでのステップで、不良属性毎の不良数予測モデルが作成できる。
【００７３】
次に、作成した重回帰モデルを不良数予測モデル保持部１３に書き込む（ステップ１１８）。
【００７４】
そして、全予測対象属性ＩＤ１２１７の重回帰モデルが作成されるまでステップ１１７、ステップ１１８を繰り返す（ステップ１１９）。
【００７５】
ここで、不良数予測モデル保持部１３は、作成したモデルを保存する場所であり、図９に示すモデル情報１３１が格納されている。
【００７６】
図９に示す例では、式番号１は、「予測不良数＝２．８＋（ｂ−２）＊５．１＋（ｃ−３）＊４．３」というモデル式になる。図９において、ｂ−２、ｃ−３は、目的変数の予測不良数を説明する変数（説明変数）であり、例えば、図８に示す該当属性の総不良件数の値が入る。本実施の形態では、式に使用する属性ＩＤは２つだが、いくつ使用しても構わない。
【００７７】
次に、図２６および図２７により、本発明の一実施の形態に係る不良数・対策工数予測システムによる不良数と対策工数を予測する大きな流れについて説明する。図２６は本発明の一実施の形態に係る不良数・対策工数予測システムによる不良数と対策工数を予測する大きな流れを示すフローチャート、図２７は本発明の一実施の形態に係る不良数・対策工数予測システムの不良数と対策工数の予測画面の一例を示す図である。
【００７８】
はじめに、ユーザは予測したい対象工程と属性を入力する（ステップ４０１）。ステップ４０１では、例えば、図２７に示すような、不良数と対策工数の予測画面を表示して、入力画面としている。
【００７９】
図２７において、不良数・対策工数予測画面５０は、予測する対象の工程名を選択するドロップダウンリストボックス５０１、予測する対象の不良属性名を選択するドロップダウンリストボックス５０２、予測を開始するＯＫボタン５０３、中止するＣａｎｃｅｌボタン５０４から構成されている。
【００８０】
予測対象工程を選択するドロップダウンリストボックス５０１は、図２に示す工程マスタ６１１の工程名６１１２の全レコードのリストになっており、予測対象属性を選択するドロップダウンリストボックス５０２は、図４に示す全不良属性項目マスタ６１３の属性項目分類６１３３の全レコードがリストになっている。ユーザは予測対象工程、予測対象不良属性をドロップダウンリストボックスから選択後、ＯＫボタン５０３を押下する。
【００８１】
次に、予測対象のモデルをシステムが選択して不良数予測を算出し（ステップ４０２）、予測不良対策工数を算出し（ステップ４０３）、予測した不良数と対策工数と計画時の対策工数を表示装置３に書き出す（ステップ４０４）。
【００８２】
次に、図２８により、図２６のステップ４０２の詳細な処理である本発明の一実施の形態に係る不良数・対策工数予測システムの不良数予測算出部の処理について説明する。図２８は本発明の一実施の形態に係る不良数・対策工数予測システムの不良数予測算出部の処理を示すフローチャートである。
【００８３】
まず、モデル式を読み込むために、図９に示すモデル情報１３１から予測対象属性の予測属性ＩＤ１３１９と同一行の定数１３１４、属性ＩＤ１（１３１５）、属性ＩＤ１係数１３１６、属性ＩＤ２（１３１７）、属性ＩＤ２係数１３１８を読み込む（ステップ１４１）。
【００８４】
次に、ステップ１４１で読み込んだ属性ＩＤ１（１３１５）、属性ＩＤ２（１３１７）と同一の属性ＩＤを、当該ＰＪ不良実績情報保持部６２の当該ＰＪ不良実績情報６２５（図１５）の属性ＩＤ＿原因６２５４と属性ＩＤ＿要因６２５５と属性ＩＤ＿重要度６２５６から読み込む（ステップ１４２）。
【００８５】
当該ＰＪ不良実績情報保持部６２は、過去ＰＪの不良情報を保存してある場所であり、図１１〜図１６に示すデータ構造を持っている。
【００８６】
次に、ステップ１４２で読み込んだ情報で、かつステップ４０１で選択されたドロップダウンリストボックス５０１の工程ＩＤ６１１１までの前工程の予測実施工程の工程情報を、図１５に示す当該ＰＪ不良実績情報６２５の工程ＩＤ６２５３から読み込み、属性ＩＤ＿原因６２５４と属性ＩＤ＿要因６２５５と属性ＩＤ＿重要度６２５６の属性ＩＤ毎に総不良件数を集計する（ステップ１４３）。
【００８７】
次に、ステップ１４３で集計した値を、ステップ１４１で読み込んだモデル式の属性ＩＤ１（１３１５）、属性ＩＤ２（１３１７）に代入して予測不良数を計算する（ステップ１４４）。
【００８８】
そして、計算した結果を予測不良数保持部１５の予測結果１５１の件数１５１４に書き出す。このときステップ１４１で読み出したモデル式と同一行の、システムＩＤ１３１２のＩＤをシステムＩＤ１５１１に書き出し、工程ＩＤ１３１３のＩＤを工程ＩＤ１５１２に書き出し、予測属性ＩＤ１３１９のＩＤを予測属性ＩＤ１５１３に書き出す（ステップ１４５）。
【００８９】
予測不良数保持部１５は、予測した不良数の結果を保存する場所であり、図１０に示すの予測結果１５１が格納されている。
【００９０】
ステップ１４５までできれば、当該ＰＪの不良属性毎の不良数が予測できる。
【００９１】
次に、図２９〜３２により、本発明の一実施の形態に係る不良数・対策工数予測システムの不良対策工数予測変換部の処理について説明する。図２９は本発明の一実施の形態に係る不良数・対策工数予測システムの不良対策工数予測変換部の処理を示すフローチャート、図３０は図２９のステップ１７１の詳細な処理を示すフローチャート、図３１は図２９のステップ１７２の詳細な処理を示すフローチャート、図３２は図２９のステップ１７３の詳細な処理を示すフローチャートである。
【００９２】
不良数から不良対策工数を予測するためには不良属性毎の平均対策工数を算出するが、平均対策工数の算出は、ＰＪの開発プロフィールを考慮したものと、考慮しないものの２パターンある。
【００９３】
まず、不良対策工数予測機能の大きな流れは、図２９に示すように、開発プロフィールを考慮した属性毎の平均対策工数を算出して、開発プロフィール別対策工数情報１６１に書き出す（ステップ１７１）。
【００９４】
ここで、ステップ１７１の詳細な処理を図３０により説明する。
【００９５】
まず不良実績情報６１５から予測対象工程に該当する工程ＩＤ６１５３と同一行の不良実績情報を全て読み込む（ステップ１７１１）。
【００９６】
次に、読み込んだ不良実績情報から、属性ＩＤ＿原因６１５４、属性ＩＤ＿要因６１５５、属性ＩＤ＿重要度６１５６の属性ＩＤ毎、かつプロフィールＩＤ６１６３毎、かつプロフィール項目ＩＤ６１６４毎の不良対策工数６１５７を全て読み込み、読み込んだ不良対策工数６１５７を全て合算し、合算した値を不良対策工数６１５７で読み込んだ行数で割ることで平均対策工数を算出する（ステップ１７１２）。
【００９７】
そして、算出した平均対策工数を開発プロフィール別対策工数保持部１６の開発プロフィール別対策工数情報１６１の平均対策工数１６１５に書き出し、処理対象の工程ＩＤ１６１１、属性ＩＤ１６１２、プロフィールＩＤ１６１３、プロフィール項目ＩＤ１６１４を書き出す（ステップ１７１３）。
【００９８】
ステップ１７１３までできれば、ＰＪの開発プロフィールを考慮した不良属性毎の平均対策工数を算出できる。
【００９９】
図２９に戻り、開発プロフィールを考慮せずに属性毎の平均対策工数を算出して、属性毎工数情報１６２に書き出す（ステップ１７２）。
【０１００】
ここで、ステップ１７２の詳細な処理を図３１により説明する。
【０１０１】
まず、不良実績情報６１５から予測対象工程に該当する工程ＩＤ６１５３と同一行の不良実績情報を全て読み込む（ステップ１７２１）。
【０１０２】
次に、読み込んだ不良実績情報から、属性ＩＤ＿原因６１５４、属性ＩＤ＿要因６１５５、属性ＩＤ＿重要度６１５６の属性ＩＤ毎の不良対策工数６１５７を全て読み込み、読み込んだ不良対策工数６１５７を全て合算し、合算した値を不良対策工数６１５７で読み込んだ行数で割ることで平均対策工数を算出する（ステップ１７２２）。
【０１０３】
そして、算出した平均対策工数を開発プロフィール別対策工数保持部１６の属性毎工数情報１６２の平均対策工数１６２３に書き出し、工程ＩＤ１６２１、属性ＩＤ１６２２も書き出す（ステップ１７２３）。
【０１０４】
ステップ１７２３までできれば、ＰＪの開発プロフィールを考慮しない不良属性毎の平均対策工数を算出できる。
【０１０５】
図２９に戻り、不良属性毎の平均対策工数を決定して、属性毎工数予測情報に書き出す（ステップ１７３）。
【０１０６】
ここで、ステップ１７１１〜ステップ１７１３、ステップ１７２１〜ステップ１７２３で算出した不良属性毎の平均対策工数を用いて予測不良数を算出するステップ１７３の詳細の処理を図３２により説明する。
【０１０７】
まず、開発プロフィール別対策工数情報１６１の工程ＩＤ１６１１、属性ＩＤ１６１２、プロフィールＩＤ１６１３、プロフィール項目ＩＤ１６１４、平均対策工数１６１５を全て読み込む（ステップ１７３１）。
【０１０８】
次に、属性ＩＤ＿原因６１５４、属性ＩＤ＿要因６１５５、属性ＩＤ＿重要度６１５６の属性ＩＤ毎かつ、プロフィールＩＤ６１６３毎かつ、プロフィール項目ＩＤ６１６４毎の平均対策工数の差の検定を、プロフィールＩＤ１６１３毎に各プロフィール項目ＩＤ１６１４の平均対策工数１６１５を用いて、一般的な統計手法のＴ検定で検定する（ステップ１７３２）。本実施の形態では、差の検定にＴ検定を用いたが、検定方法は他の方法でも構わない。
【０１０９】
次に、ステップ１７３２で検定した平均対策工数の差が有意な属性の数を確認する（ステップ１７３３）。
【０１１０】
ステップ１７３３までできれば、不良属性毎の対策工数予測に開発プロフィールを考慮すべきかどうかがわかる。
【０１１１】
次に、平均対策工数の差が有意な属性の数が１つの場合と、２つ以上の場合と、０の場合の３条件で処理が異なるため、それぞれについて説明する。
【０１１２】
１つめの条件、平均対策工数の差が有意な属性の数が１つの場合のステップ１７３３以降の処理を説明する。
【０１１３】
まず、差があるプロフィールＩＤ１６１３を読み込む（ステップ１７３４）。
【０１１４】
ステップ１７３４までできれば、不良属性毎の対策工数予測に考慮すべき開発プロフィールがわかる。
【０１１５】
次に、ステップ１７３４で読み込んだプロフィールＩＤ１６１３と同様のＩＤを、開発プロフィール情報６１６のプロフィールＩＤ６１６３から読み込み、プロフィールＩＤ６１６３と同一行のプロフィール項目ＩＤ６１６４を読み込む（ステップ１７３７）。
【０１１６】
次に、ステップ１７３７で読み込んだプロフィール項目ＩＤ６１６４と同様のＩＤを、開発プロフィール別対策工数情報１６１のプロフィール項目ＩＤ１６１４から読み込み、プロフィール項目ＩＤ１６１４と同一行の平均対策工数１６１５を読み込む（ステップ１７３８）。
【０１１７】
次に、予測結果１５１から予測対象工程と同様の工程ＩＤ１５１２かつ、ステップ１７３８で読み込んだプロフィール項目ＩＤ１６１４と同様の予測属性ＩＤ１５１３の、件数１５１４を読み込む（ステップ１７３９）。
【０１１８】
次に、ステップ１７３８で読み込んだ平均対策工数１６１５に、ステップ１７３９で読み込んだ件数１５１４を掛け合わせ、予測工数を算出する（ステップ１７４０）。
【０１１９】
そして、ステップ１７４０で算出された予測工数を、属性毎予測情報１８１の予測工数１８１４に書き出し、予測対象のシステムＩＤ１８１１、工程ＩＤ１８１２、属性ＩＤ１８１３も書き出す（ステップ１７４１）。
【０１２０】
属性毎工数予測情報１８１は不良属性毎に予測された工数を保存する場所であり、図１９に示すデータ構造を持っている。
【０１２１】
２つめの条件、平均対策工数の差が有意な属性の数が２つ以上の場合のステップ１７３３以降の処理を説明する。
【０１２２】
まず、平均対策工数の差が最大のプロフィールＩＤ１６１３を読み込む（ステップ１７３５）。
【０１２３】
ステップ１７３５までできれば、不良属性毎の対策工数予測に考慮すべき開発プロフィールがわかる。
【０１２４】
次に、ステップ１７３５で読み込んだプロフィールＩＤ１６１３と同様のＩＤを、開発プロフィール情報６１６のプロフィールＩＤ６１６３から読み込み、プロフィールＩＤ６１６３と同一行のプロフィール項目ＩＤ６１６４を読み込む（ステップ１７３７）。
【０１２５】
次に、前述のステップ１７３８〜ステップ１７４１と同様の処理をする。
【０１２６】
本実施の形態では、平均対策工数の差が最大の開発プロフィールの平均対策工数を用いたが、差がある全ての開発プロフィールの平均対策工数を平均した値を用いても良い。
【０１２７】
３つめの条件、平均対策工数の差がない場合のステップ１７３３以降の処理を説明する。
【０１２８】
まず、属性毎工数情報１６２から、属性ＩＤ１６２２毎の平均対策工数１６２３を読み込む（ステップ１７３６）。
【０１２９】
ステップ１７３６までできれば、不良属性毎の対策工数予測に開発プロフィールを考慮しないことがわかる。
【０１３０】
次に、予測結果１５１から予測対象工程と同様の工程ＩＤ１５１２かつ、ステップ１７３６で読み込んだ属性ＩＤ１６２２と同様の予測属性ＩＤ１５１３の、件数１５１４を読み込む（ステップ１７３９）。
【０１３１】
次に、ステップ１７３６で読み込んだ平均対策工数１６２３に、ステップ１７３９で読み込んだ件数１５１４を掛け合わせ、予測工数を算出する（ステップ１７４０）。
【０１３２】
そして、前述のステップ１７４１と同様の処理をする。
【０１３３】
次に、図３３および図３４により、本発明の一実施の形態に係る不良数・対策工数予測システムの表示処理部の処理について説明する。図３３は本発明の一実施の形態に係る不良数・対策工数予測システムの表示処理部の処理を示すフローチャート、図３４は本発明の一実施の形態に係る不良数・対策工数予測システムの表示処理部による不良数と対策工数の予測表示画面の一例を示す図である。
【０１３４】
まず、図３３に示すように、計画対策工数管理装置７の計画時対策工数保持部７１の計画時対策工数情報７１１から、予測対象工程の工程ＩＤ７１１２、予測対象属性の属性ＩＤ７１２３の計画時の対策工数を計画時対策工数７１２４から読み込む（ステップ１９１）。
【０１３５】
計画時対策工数保持部７１とは、ＰＪが計画している対策工数の情報を保存している場所であり、図２０に示すデータ構造を持っている。
【０１３６】
次に、予測結果１５１から予測対象工程の工程ＩＤ１５１２、予測対象属性の予測属性ＩＤ１５１３の不良数予測件数を件数１５１４から読み込む（ステップ１９２）。
【０１３７】
次に、属性毎工数予測情報１８１から予測対象工程の工程ＩＤ１８１２、予測対象属性の属性ＩＤ１８１３の予測対策工数を予測工数１８１４から読み込む（ステップ１９３）。
【０１３８】
そして、ステップ１９１〜ステップ１９３で読み込んだ計画時対策工数７１２４、不良数予測の件数である件数１５１４、予測工数１８１４を表示装置３に書き出す（ステップ１９４）。
【０１３９】
図３４に示すように、表示装置３に表示される不良数と対策工数の予測表示画面６０は、不良属性毎の予測不良数が縦軸の棒グラフと円グラフで表現された予測不良数画面６０１と、不良属性毎の対策工数が縦軸の棒グラフと円グラフで表現された対策工数画面６０２と、システム全体の対策工数の計画値と予測値が横軸の棒グラフで表現された全体対策工数画面６０３からなる。
【０１４０】
ステップ１９４までできれば、不良属性毎の不良数予測と対策工数予測ができ、その内容を表示することができる。
【０１４１】
以上のように、本実施の形態によれば、残存不良を不良属性毎に予測し、それ毎の総不良対策工数を精度良く予測することで、コストや期間に与える影響が精度良くわかり、ＰＪの予定コストの超過を事前に対処することができる。
【０１４２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【０１４３】
本発明は、ソフトウェア開発プロジェクトの品質管理を支援する装置やシステムなどに広く適用可能である。
【符号の説明】
【０１４４】
１…不良数・対策工数予測装置、２…入力装置、３…表示装置、４…印刷装置、５…ネットワーク接続装置、６…不良情報管理装置、７…計画時対策工数管理装置、１１…不良数予測モデル作成部、１２…不良数予測用情報保持部、１３…不良数予測モデル保持部、１４…不良数予測算出部、１５…予測不良数保持部、１６…開発プロフィール別対策工数保持部、１７…不良対策工数予測変換部、１８…予測対策工数保持部、１９…表示処理部、６１…不良実績情報保持部、６２…当該ＰＪ不良実績情報保持部、７１…計画時対策工数保持部。
【図１】
2011048628.tif 000003
【図２】
2011048628.tif 000004
【図３】
2011048628.tif 000005
【図４】
2011048628.tif 000006
【図５】
2011048628.tif 000007
【図６】
2011048628.tif 000008
【図７】
2011048628.tif 000009
【図８】
2011048628.tif 000010
【図９】
2011048628.tif 000011
【図１０】
2011048628.tif 000012
【図１１】
2011048628.tif 000013
【図１２】
2011048628.tif 000014
【図１３】
2011048628.tif 000015
【図１４】
2011048628.tif 000016
【図１５】
2011048628.tif 000017
【図１６】
2011048628.tif 000018
【図１７】
2011048628.tif 000019
【図１８】
2011048628.tif 000020
【図１９】
2011048628.tif 000021
【図２０】
2011048628.tif 000022
【図２１】
2011048628.tif 000023
【図２２】
2011048628.tif 000024
【図２３】
2011048628.tif 000025
【図２４】
2011048628.tif 000026
【図２５】
2011048628.tif 000027
【図２６】
2011048628.tif 000028
【図２７】
2011048628.tif 000029
【図２８】
2011048628.tif 000030
【図２９】
2011048628.tif 000031
【図３０】
2011048628.tif 000032
【図３１】
2011048628.tif 000033
【図３２】
2011048628.tif 000034
【図３３】
2011048628.tif 000035
【図３４】
2011048628.tif 000036