(57)【要約】【課題】  複数のプロジェクトの状況を考慮して適切にソフトウェアの品質を評価する。【解決手段】  入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段２１と、ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段２２と、品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて評価基準データを算出し、当該算出された評価基準データを評価基準データ記憶手段に記憶する評価基準データ算出手段１２と、品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段１３と、を備えた。【選択図】図１
2005326953.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データを入力する入力手段と、
入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段と、
前記ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段と、
前記品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて前記評価基準データを算出し、当該算出された評価基準データを前記評価基準データ記憶手段に記憶する評価基準データ算出手段と、
前記品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を前記評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段と、
を備えたことを特徴とするソフトウェア品質評価システム。
【請求項２】
前記品質評価手段にて算出された品質評価が前記評価基準データを満たしていない場合に、当該品質評価結果を外部に出力する品質結果出力手段を備えた、ことを特徴とする請求項１記載のソフトウェア品質評価システム。
【請求項３】
前記品質データは、前記各ソフトウェア開発プロジェクトの予め定められた各開発工程毎の所定の品質項目における品質データであり、
前記評価基準データ算出手段は、前記各ソフトウェア開発プロジェクトの各開発工程毎の品質を評価する際に用いる評価基準データを算出して前記評価基準データ記憶手段に記憶し、
前記品質評価手段は、前記所定のソフトウェア開発プロジェクトの各開発工程毎の品質評価を算出する、
ことを特徴とする請求項１又は２記載のソフトウェア品質評価システム。
【請求項４】
前記品質評価手段は、前記所定のソフトウェア開発プロジェクトの各開発工程毎の品質評価を算出すると共に、当該所定のソフトウェア開発プロジェクト全体の品質評価をも算出する、ことを特徴とする請求項３記載のソフトウェア品質評価システム。
【請求項５】
前記品質データは、前記各ソフトウェア開発プロジェクトにおける各開発工程毎の欠陥数を含むと共に、
前記品質評価手段は、前記所定のソフトウェア開発プロジェクトにおける各開発工程毎の欠陥数に基づいて当該各開発工程毎の品質評価を行うと共に、当該各開発工程毎の欠陥数に基づいて前記所定のソフトウェア開発プロジェクト全体において残存する欠陥数の評価を行うことにより当該プロジェクト全体の品質評価を行う、ことを特徴とする請求項４記載のソフトウェア品質評価システム。
【請求項６】
ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの外部からの入力を受け付ける入力受付手段と、
入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段と、
前記ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段と、
前記品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて前記評価基準データを算出し、当該算出された評価基準データを前記評価基準データ記憶手段に記憶する評価基準データ算出手段と、
前記品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を前記評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段と、
を備えたことを特徴とするソフトウェア品質評価サーバ。
【請求項７】
コンピュータを用いてソフトウェアの品質評価を行う方法であって、
前記コンピュータが、ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの外部からの入力を受け付け、当該入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ受付工程と、
前記コンピュータが、前記記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにてソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを算出し、当該算出された評価基準データを記憶する評価基準データ算出工程と、
前記コンピュータが、前記所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を前記記憶された評価基準データに基づいて算出する品質評価工程と、
を有することを特徴とするソフトウェア品質評価方法。
【請求項８】
ソフトウェアの品質評価を行うコンピュータに、
ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの外部からの入力を受け付ける入力受付手段と、
入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段と、
前記ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段と、
前記品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて前記評価基準データを算出し、当該算出された評価基準データを前記評価基準データ記憶手段に記憶する評価基準データ算出手段と、
前記品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を前記評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段と、
を実現するためのソフトウェア品質評価用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア品質評価システムに関し、特に、各ソフトウェア開発プロジェクトの各開発工程毎、及び、各プロジェクト毎の品質を自動的に評価するソフトウェア品質評価システムに関する。
【背景技術】
【０００２】
ソフトウェア開発プロジェクトは、以下の複数の工程に分けて開発が進められる。
（１）顧客の要求仕様からソフトウェアで実現する要件を特定し、これを基本設計書として文書化する基本設計工程（以下、ＢＤと略記する）。
（２）ソフトウェアで実現する要件を機能単位に定義し、その外部仕様（ソフトウェアの入出力仕様）を定義し、これを機能設計書として文書化する機能設計工程（ＦＤと略記する）。
（３）外部仕様に基づいて内部のソフトウェアの論理構造を定義し、これを詳細設計書として文書化する詳細設計工程（ＤＤと略記する）。
（４）プログラミング言語を用いてソースコードを作成する製造工程（ＣＤと略記する）。
（５）単体テスト仕様書に基づいて、ソースコードをテストする単体テスト工程（ＵＴと略記する）。
（６）結合テスト仕様書に基づいて、開発した複数のソフトウェアを結合してテストする結合テスト工程（ＩＴと略記する）。
（７）総合テスト仕様書に基づいて、開発したソフトウェアの機能をテストする総合テスト工程（ＳＴと略記する）。
（８）顧客の要求仕様にソフトウェアが適合しているかを確認する運用テスト工程（ＲＴと略記する）。
そして、上記運用テスト工程が終了した後にシステム運用開始となる。
【０００３】
ここで、上記基本設計工程（ＢＤ（１））から製造工程（ＣＤ（４））までは、各工程で作成された設計書とソースコードを複数の開発担当者が確認し、設計書に含まれる欠陥を除去する（以下これをレビューとよぶ）。このレビューによって設計書やソースコードの品質が向上するが、従来この品質状況を判断する方法としては、予め過去の経験や実績から見積もられた数の欠陥が発見されたかどうか等でプロジェクトの開発担当者が開発工程ごとに評価していた。
【０００４】
また、単体テスト工程（ＵＴ（５））から運用テスト工程（ＲＴ（８））までは、従来では、開発担当者の過去の経験や実績からテスト工程で発見される欠陥数を予測するか、あるいは、ソフトウェア信頼度成長モデル（例えば、『ソフトウェアマネジメントモデル入門  山田茂、高橋宗雄著、共立出版』参照）等を用いて欠陥数を予測し、テストで発見された欠陥数と予測された欠陥数を比較することによってプロジェクトの開発担当者が評価し判断していた。
【０００５】
さらに、組織の品質管理部門等で複数プロジェクトを評価する場合は、組織の標準的な欠陥数等の数値を用いて、この数値とプロジェクトの実績値との比較を開発工程ごとに行うことによって評価を実施していた。
【０００６】
そして、下記の特許文献１には、組織に属するプロジェクトの品質を評価し、評価結果を数値化して、評価結果が悪いプロジェクトから順に並べ替え対処を支持する、というシステムが開示されている。
【０００７】
【特許文献１】特開２００３−３４５９１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記従来例には、以下のような不都合があった。まず、プロジェクト個別に欠陥数等に基づく品質評価を実施する場合は、プロジェクトの過去の実績との比較になるため、組織内でのプロジェクト全体の品質改善がなされていない場合は、過去の品質状況と変わらない結果になってしまい、品質向上を図ることができない、という問題が生じる。
【０００９】
また、組織での複数プロジェクトの比較に基づく品質評価では、組織の標準的な数値との比較になり、標準的な状態から外れているプロジェクトを発見することはできるが、プロジェクトの特性は個々に異なるため、標準的な状態から外れていてもそのプロジェクトは良好な状態にある場合があり、このような場合を見分けることは困難である。
【００１０】
さらに、組織での評価では、プロジェクトの品質状況を評価する際の標準的な欠陥数等の数値をどのように決定するかが問題となる。そして、従来では、決定された標準的な数値は、開発技術の向上やプロジェクトメンバの技術能力向上等により定期的な見直しが必要であるが、この見直しに手間がかかり、手動で変更しなければならない。
【００１１】
特に、上記特許文献１に開示されているシステムでは、品質を評価する際に用いる数値として固定値を用いているため、組織の品質向上による変化を適切に取り込むことは困難であり、プロジェクトを適切に評価することができず、組織内での品質向上を図ることができない、という問題が生じる。
【００１２】
このため、本発明では、複数のプロジェクトの状況を考慮して適切にソフトウェアの品質を評価するシステムを提供すること、をその目的とする。
【課題を解決するための手段】
【００１３】
そこで、本発明では、ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データを入力する入力手段と、
入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段と、
ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段と、
品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて評価基準データを算出し、当該算出された評価基準データを評価基準データ記憶手段に記憶する評価基準データ算出手段と、
品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段と、
を備えた、という構成を採っている。
【００１４】
また、上記構成に加え、品質評価手段にて算出された品質評価が評価基準データを満たしていない場合に、当該品質評価結果を外部に出力する品質結果出力手段を備えた、という構成を採っている。
【００１５】
このような構成にすることにより、まず、複数のあらゆるソフトウェア開発プロジェクトの品質データが登録されると、これらに基づいて品質評価を行う際の基準となる評価基準データが算出される。そして、これを基に、所定のソフトウェア開発プロジェクトの品質評価が行われ、ディスプレイに表示されたり、管理者の端末に送信されるなど出力される。従って、登録された他のプロジェクトの品質を考慮して特定のプロジェクトの品質評価を実行することができる。すなわち、組織内の他のプロジェクトの品質向上の変化に適切に対応した評価が行われるため、全てのソフトウェアの品質向上を図ることができる。
【００１６】
また、本発明では、上記構成に加えて、品質データは、各ソフトウェア開発プロジェクトの予め定められた各開発工程毎の所定の品質項目における品質データであり、
評価基準データ算出手段は、各ソフトウェア開発プロジェクトの各開発工程毎の品質を評価する際に用いる評価基準データを算出して評価基準データ記憶手段に記憶し、
品質評価手段は、所定のソフトウェア開発プロジェクトの各開発工程毎の品質評価を算出する、という構成を採っている。
【００１７】
このとき、品質評価手段は、所定のソフトウェア開発プロジェクトの各開発工程毎の品質評価を算出すると共に、当該所定のソフトウェア開発プロジェクト全体の品質評価をも算出する機能を有する。具体的には、品質データは、各ソフトウェア開発プロジェクトにおける各開発工程毎の欠陥数を含むと共に、品質評価手段は、所定のソフトウェア開発プロジェクトにおける各開発工程毎の欠陥数に基づいて当該各開発工程毎の品質評価を行うと共に、当該各開発工程毎の欠陥数に基づいて所定のソフトウェア開発プロジェクト全体において残存する欠陥数の評価を行うことにより当該プロジェクト全体の品質評価を行う。
【００１８】
これにより、プロジェクトの各開発工程毎の評価、例えば、欠陥数による評価が算出されるため、管理者は開発工程単位に確認することができ、プロジェクトの早期の段階から品質状況を把握することができ、早期に対策を採ることができる。また、各開発工程毎の評価を算出すると共に、全体の評価（例えば、欠陥数）をも算出することで、各開発工程ではプロジェクトの特性により良い評価が得られない場合であっても、全体としては良い評価となることがあり、プロジェクトとしての適切な評価を得ることができる。そして、このときであっても、各開発工程の評価も得ることができるため、各工程毎に対処することができ、さらなる品質向上を図ることができる。
【００１９】
また、本発明は、ソフトウェア品質評価サーバでもあり、
ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの外部からの入力を受け付ける入力受付手段と、
入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段と、
ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段と、
品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて評価基準データを算出し、当該算出された評価基準データを評価基準データ記憶手段に記憶する評価基準データ算出手段と、
品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段と、
を備えた、という構成を採っている。
【００２０】
また、本発明は、コンピュータを用いてソフトウェアの品質評価を行う方法でもあり、
コンピュータが、ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの外部からの入力を受け付け、当該入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ受付工程と、
コンピュータが、記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにてソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを算出し、当該算出された評価基準データを記憶する評価基準データ算出工程と、
コンピュータが、所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を前記記憶された評価基準データに基づいて算出する品質評価工程と、
を有する、という構成を採っている。
【００２１】
さらに、本発明は、ソフトウェア品質評価用プログラムでもあり、
ソフトウェアの品質評価を行うコンピュータに、
ソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの外部からの入力を受け付ける入力受付手段と、
入力された品質データをソフトウェア開発プロジェクト毎に記憶する品質データ記憶手段と、
ソフトウェア開発プロジェクト毎の品質を評価する際に用いる評価基準データを記憶する評価基準データ記憶手段と、
品質データ記憶手段に記憶された複数のソフトウェア開発プロジェクトの品質データに基づいて予め定められた算出ルールにて評価基準データを算出し、当該算出された評価基準データを評価基準データ記憶手段に記憶する評価基準データ算出手段と、
品質データ記憶手段に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価を評価基準データ記憶手段に記憶された評価基準データに基づいて算出する品質評価手段と、
を実現するためのソフトウェア品質評価用プログラム、という構成をも採っている。
【００２２】
上記構成のソフトウェア品質評価サーバ、方法、ソフトウェア品質評価用プログラムであっても、上述したシステム同様に作用し、上記目的を達成することができる。
【発明の効果】
【００２３】
本発明は、上述したように構成され機能するので、これによると、登録された他のプロジェクトの品質を考慮して特定のプロジェクトの品質評価を実行することができるため、組織内の他のプロジェクトの品質向上の変化に適切に対応した評価が行われるため、全てのソフトウェアの品質向上を図ることができる、という従来にない優れた効果を有する。
【発明を実施するための最良の形態】
【００２４】
本発明であるソフトウェア品質評価システムは、主にソフトウェアの品質評価処理を行う品質評価サーバ１にて構成されており、開発者等により入力された各ソフトウェア開発プロジェクトの品質データに基づいて、所定のソフトウェア開発プロジェクトの品質評価を算出する、というものである。
【００２５】
具体的には、ソフトウェア開発プロジェクトの開発工程である設計工程からテスト工程までの全開発工程の欠陥数等の品質データを、複数のソフトウェア開発プロジェクトから収集し、これらに基づいて品質評価を算出する際の基準となる評価基準データを自動的に算出する。そして、この評価基準データに基づいて、特定のプロジェクトの各工程毎、及び、全体の品質評価を自動的に算出する。その後、品質が良くないと判断されたプロジェクトについては、その品質評価結果が電子メールで開発者や管理者に通知される。これにより、管理者等は、各開発工程が終了した段階、またはソフトウェアのシステム運用開始前の段階で早期に品質状況を把握して、プロジェクトに具体的な対処を指示することが可能となり、品質の向上を図ることができる。以下、具体的な構成について、実施例を通じて説明する。
【００２６】
なお、本願では、特定のソフトウェアの開発行為全体をまとめてソフトウェア開発プロジェクトと呼び、また、以下では単にプロジェクトと呼ぶ場合もある。そして、ソフトウェア開発プロジェクトは、以下に説明するように各開発工程から成るものである。
【実施例１】
【００２７】
本発明の第１の実施例について、図１乃至図１４を参照して説明する。図１は、本発明の全体的な構成を示す機能ブロック図である。図２乃至図７は、品質評価サーバにて生成され他の端末に表示される画面の一例を示す説明図である。図８乃至図１０は、品質評価サーバにおける評価の判断基準を示す説明図である。図１１乃至図１４は、本発明の動作を示す説明図である。
【００２８】
＜構成＞
図１に示すように、本発明であるソフトウェア品質評価システムは、ソフトウェア開発プロジェクト毎の品質評価を行う品質評価サーバ１と、当該品質評価サーバ１に対してネットワークＮを介して各ソフトウェア開発プロジェクトの品質データを入力する品質データ入力端末３１，３２等と、品質評価サーバ１にて算出されたソフトウェア開発プロジェクトの品質評価結果が当該品質評価サーバ１からネットワークＮを介して通知される品質管理端末４１と、を備えている。以下、各構成について詳述する。
【００２９】
＜品質データ入力端末＞
品質データ入力端末３１は、ソフトウェア開発プロジェクトの開発担当者（以下、単に担当者と言う）が所有する端末であって、当該プロジェクトにおける品質データを入力するパーソナルコンピュータ等の情報処理装置である。
【００３０】
ここで、ソフトウェア開発プロジェクトは、上述したように、以下の複数の工程に分けて開発が進められる。
（１）顧客の要求仕様からソフトウェアで実現する要件を特定し、これを基本設計書として文書化する基本設計工程（以下、ＢＤと略記する）。
（２）ソフトウェアで実現する要件を機能単位に定義し、その外部仕様（ソフトウェアの入出力仕様）を定義し、これを機能設計書として文書化する機能設計工程（ＦＤと略記する）。
（３）外部仕様に基づいて内部のソフトウェアの論理構造を定義し、これを詳細設計書として文書化する詳細設計工程（ＤＤと略記する）。
（４）プログラミング言語を用いてソースコードを作成する製造工程（ＣＤと略記する）。
（５）単体テスト仕様書に基づいて、ソースコードをテストする単体テスト工程（ＵＴと略記する）。
（６）結合テスト仕様書に基づいて、開発した複数のソフトウェアを結合してテストする結合テスト工程（ＩＴと略記する）。
（７）総合テスト仕様書に基づいて、開発したソフトウェアの機能をテストする総合テスト工程（ＳＴと略記する）。
（８）顧客の要求仕様にソフトウェアが適合しているかを確認する運用テスト工程（ＲＴと略記する）。
そして、上記運用テスト工程が終了した後にシステム運用開始（９）となる。なお、上記基本設計工程（ＢＤ（１））から製造工程（ＣＤ（４））までは、各工程で作成された設計書とソースコードを複数の開発担当者が確認し、設計書に含まれる欠陥を除去する（以下これをレビューとよぶ）。
【００３１】
そして、特定のソフトウェア開発プロジェクトの担当者は、ネットワークＮを介して品質評価サーバ１にアクセスすると、当該品質評価サーバ１からは品質入力用画面データが送信され、図２に示すような画面が品質データ入力端末３１に表示される。この品質入力用画面に対して、担当者は、ソフトウェア開発プロジェクトのプロジェクト名、各開発工程で発見された欠陥数、作成された設計書の頁数、設計書のレビュー工数、ソースコードの行数、テスト項目数の実績値、から成る品質データを入力することができる。但し、ここに挙げる品質データは一例であって、これらに限定されるものではない。
【００３２】
そして、品質入力用画面に品質データを入力した後に、担当者は品質データ入力端末３１上で図２に示す送信ボタンを選択することで、これら入力された品質データが品質管理サーバ１に送信される。
【００３３】
ここで、品質データ入力端末は複数図示されているが（図１の符号３１，３２を参照）、例えば、ソフトウェア開発プロジェクトが複数有り、それぞれの担当者が異なる場合には、各担当者の端末３１，３２等が存在することを意味している。そして、各担当者の端末３１，３２等からプロジェクト毎の品質データが入力され、品質評価サーバ１に送信されることとなる。なお、本実施例では、符号３１，３２に示す品質データ入力端末は、同一組織内（同一会社内や同一部署内）におけるものである場合を示しており、すなわち、同一組織内における異なるプロジェクトの品質データが品質評価サーバ１に収集される。但し、これは一例であって、必ずしも評価対象となるソフトウェア開発プロジェクトは同一組織のものに限定されない。
【００３４】
＜品質管理端末＞
品質管理端末４１は、ソフトウェア開発プロジェクトの開発担当者、あるいは、組織内のソフトウェア開発を管理する管理担当者が所有する端末であって、各プロジェクトにおける品質評価結果を品質評価サーバ１からネットワークＮを介して受信するパーソナルコンピュータ等の情報処理装置である。なお、以下では、品質管理端末４１を用いる者は上記管理担当者（以下、管理者と呼ぶ）であることとする。
【００３５】
この品質管理端末４１は、管理者が操作することで以下のように作動する機能を有する。まず、管理者が各プロジェクトの品質を評価するために、当該品質管理端末４１にて品質評価サーバ１にアクセスすると、当該品質評価サーバ１からは品質管理画面データが送信され、図３に示すような品質管理画面が品質管理端末４１に表示される。なお、この品質管理画面には、例えば、品質評価の実行を品質管理サーバ１に指示するための「品質評価実行ボタン」と、品質評価の際の基準となるパラメータの算出の実行を指示するための「品質評価パラメータ計算ボタン」と、が表示される。
【００３６】
そして、管理者が、「品質評価パラメータ計算ボタン」を選択することで、品質評価パラメータを計算する旨の指示が品質管理サーバ１に送信され、後述するように当該品質管理サーバ１にて計算された品質評価パラメータを表示する画面データが品質管理端末４１に送信され、当該端末４１に図４に示すように表示される（但し、図４では、パラメータ値の記載は省略してある）。この表示されたパラメータを管理者は確認することができ、必要に応じて画面上でパラメータの修正を行うことも可能である。そして、修正後に「送信ボタン」を押すことによって、修正したパラメータを品質評価サーバ１に送信することができ、これが品質評価サーバ１にて登録される。なお、上記品質評価パラメータは、後述するように、品質評価サーバ１にて自動的に算出されてもよい。
【００３７】
また、管理者が、「品質評価実行ボタン」を選択することで、品質評価を算出する旨の指示が品質管理サーバ１に送信され、後述するように当該品質管理サーバ１にて計算された品質評価を表示する画面データである品質評価結果リストが品質管理端末４１に送信され、当該端末４１に図５に示すように表示される。品質管理端末４１は、品質評価結果リストを表示し、管理者は内容を確認することができる。そして、管理者が、プロジェクトの品質評価結果の詳細を確認する必要があると判断した場合は、確認したいプロジェクトと同じ行に位置して表示される品質評価結果リスト画面の「詳細確認ボタン」を押し、品質評価サーバ１に品質評価結果の詳細の送信を指示する。これに対し、後述するように、品質評価サーバ１からは、品質管理端末４１から指示されたプロジェクトのみの詳細な品質評価結果が品質管理端末４１に送信される。これにより、図６に示すような品質評価結果詳細画面が品質管理端末４１に表示される。なお、この図６に示す例では、品質評価を行う際に算出される中間データなどを表示している。
【００３８】
そして、上述したように、管理者がさらに詳細な内容を確認し、当該プロジェクトの開発担当者に品質評価結果を連絡してその確認と対処を依頼する必要があると判断した場合は、品質管理端末４１に表示される図５に示す品質評価結果リスト画面の「メール作成ボタン」を押し、品質評価サーバ１にメール作成画面の送信の指示を出す。この指示に応じて、品質評価サーバ１からは図７に示すようなメール作成画面が送信され、品質管理端末４１に表示される。これに対して、管理者は、品質管理端末４１上にて、メール送信が必要なプロジェクトについてメール送信の欄をクリックするなど印（図７では丸印）をつけ、コメントの欄に管理者の意見や開発担当者への依頼事項を記述する。そして、図７に示すメール送信ボタンを押すことで、品質評価サーバ１にメール送信の指示を出す。これにより、後述するように、品質評価サーバ１を介してプロジェクトの評価結果に対する管理者のコメントが、品質データ入力端末３１に送信され、プロジェクト担当者に通知される。
【００３９】
＜品質評価サーバ＞
品質評価サーバ１は、上述したようにネットワークＮ上に接続された一般的なサーバコンピュータにて構成されており、品質データ入力端末３１，３２等及び品質管理端末４１と相互にデータ通信可能な状態になっている。
【００４０】
そして、この品質評価サーバ１の演算部であるＣＰＵ及び記憶部であるハードディスク（ＲＯＭ，ＲＡＭ等を含む）は、以下の構成となっている。まず、ハードディスクには、予め品質評価サーバ１を下記のように機能させるようＣＰＵに各処理部を構築する品質評価用プログラムが記憶されている。そして、このプログラムがＣＰＵに組み込まれることで、当該ＣＰＵには、主に以下に説明する処理部が構築される。
【００４１】
まず、品質評価サーバ１のＣＰＵには、ネットワークＮを介して接続された品質データ入力端末３１からソフトウェア開発プロジェクト毎の予め定められた品質項目における品質データの入力を受け付けてこれをハードディスク内に構築される品質実績データベース２１（品質データ記憶手段）にソフトウェア開発プロジェクト毎に登録する品質データ登録処理部１１（品質データ入力受付手段）が構築される。この処理部１１は、具体的には、図２に示す品質データ入力画面を品質データ入力端末３１に送信し、かかる画面上に入力される入力欄に、プロジェクト毎のプロジェクト名、各開発工程で発見された欠陥数、作成された設計書の頁数、設計書のレビュー工数、ソースコードの行数、テスト項目数の実績値などを受け付けて、品質実績データベースに格納しておく。なお、他のプロジェクトの品質データ入力端末３２から入力を受け付けた場合にも同様に、プロジェクト毎に各データを格納しておく。
【００４２】
また、品質評価サーバ１のＣＰＵには、後述する品質評価処理部１３にてソフトウェア開発プロジェクト毎の品質を評価する際に用いるパラメータ（評価基準データ）を、品質実績データベース２１内の複数のプロジェクトにおける品質データを用いて計算する品質評価パラメータ計算処理部１２（評価基準データ算出手段）が構築されている。そして、この算出したパラメータをハードディスクに構築されたパラメータファイル（評価基準データ記憶手段）に格納しておく。なお、この品質評価パラメータ計算処理部１２は、予め設定された時間間隔毎に作動してもよく、あるいは、上述したように、品質管理端末４１からの要求があったときに作動して、品質評価を行う際に用いるパラメータを算出する。
【００４３】
ここで、上記品質評価パラメータ計算処理部１２の機能についてさらに詳述する。この処理部１２で算出されるパラメータとしては、まず、ＴＨｘＲ０、ＴＨｘＲ１、ＴＨｘＴ０、ＴＨｘＴ１、ＴＨｘＢ０、ＴＨｘＢ１があり、これらの算出は以下の方法にて行う。
【００４４】
まず、Ｂｘをプロジェクトのｘ工程で発見された欠陥数、Ｄｘをｘ工程でレビューした設計書頁数、Ｒｘをｘ工程で実施したレビューの工数、ＢＣＤを製造工程で発見された欠陥数、Ｋをソースコード行数、Ｔｘをｘ工程で実施したテストのテスト項目数とする。ここで、ｘ工程とは、上記（１）〜（８）で示した各プロジェクトの各開発工程を差す。
【００４５】
そして、Ｒｘ／Ｄｘ，Ｒｘ／Ｋ，Ｔｘ／Ｋ，を計算してそれぞれの平均値と標準偏差を求める。この平均値と標準偏差を用いて、上記各値の上限（ＴＨｘＲ１，ＴＨｘＴ１）及び下限（ＴＨｘＲ０，ＴＨｘＴ０）を以下の式を用いて計算する。なお、製造工程における（ＴＨＣＤＲ０，ＴＨＣＤＴ０）及び（ＴＨＣＤＲ０，ＴＨＣＤＴ０）も同様である。
【００４６】
【数１】
2005326953.tif 000003
【００４７】
【数２】
2005326953.tif 000004
【００４８】
次に、Ｂｘ／Ｄｘ，Ｂｘ／Ｋ  を計算し、それぞれの数値を一度対数変換し、変換後の数値の平均値と標準偏差を求める。この平均値と標準偏差を用いて、上記各値の上限（ＴＨｘＢ１）と下限（ＴＨｘＢ０）を以下の式を用いて計算する。
【００４９】
【数３】
2005326953.tif 000005
【００５０】
【数４】
2005326953.tif 000006
【００５１】
また、パラメータ「ＴＨＳＩＮ」の値も算出する。まず、品質実績データベース２１内の各プロジェクトの各開発工程の欠陥数を用いて、システム運用開始時点における残存欠陥数の割合を予測する。この予測は、各開発工程の欠陥数を用いて、以下の数５式中のａの値を求めることに相当する。
【００５２】
【数５】
2005326953.tif 000007
【００５３】
ここで、ｔは、上述した各工程の番号（１）〜（８）に相当する。すなわち、基本設計工程は（１）、機能設計工程は（２）、詳細設計工程は（３）、製造工程は（４）、単体テスト工程は（５）、結合テスト工程は（６）、総合テスト工程は（７）、運用テスト工程は（８）であり、さらに、システム運用開始時点は（９）である。また、Ｈ（ｔ）は累積欠陥数を表し、Ｈ（１）は基本設計工程の欠陥数、Ｈ（２）は基本設計工程と機能設計工程の欠陥数の合計、Ｈ（３）は基本設計工程から詳細設計工程までの欠陥数の合計、Ｈ（８）は基本設計工程から運用テスト工程までの欠陥数の合計を表す。このＨ（１）からＨ（８）を用いて、式１のパラメータａ，ｂ，ｃを最尤法を用いて計算する。この求めたａ，ｂ，ｃを数５式に設定し、数６式を用いて残存欠陥予測を行う。
【００５４】
【数６】
2005326953.tif 000008
【００５５】
上述のようにして求めた各プロジェクト毎の残存欠陥予測を、品質データとして品質実績データベースに格納する。そして、全てのプロジェクトについての残存欠陥予測を読み出して、平均値と標準偏差を計算し、上記数１式を用いて上限を計算し、この上限をＴＨＳＩＮとする。なお、上記残存欠陥予測は、品質評価の算出時に求められたものを用いてもよい。このようにして求めた上記各パラメータを、パラメータファイル２２に記憶する。
【００５６】
また、品質評価サーバ１のＣＰＵには、上記品質実績データベース２１に記憶された所定のソフトウェア開発プロジェクトの品質データを読み出して、当該ソフトウェア開発プロジェクトの品質評価をパラメータファイル２２に記憶された各パラメータに基づいて算出する品質評価処理部１３（品質評価手段）が構築されている。
【００５７】
具体的に、品質評価処理部１３は、評価対象となるプロジェクトの各開発工程毎の欠陥数の評価と、当該プロジェクトであるシステム運用開始後の残存欠陥予測の評価と、を行う。そして、開発工程ごとの欠陥数の評価は、基本設計工程（ＢＤ）、機能設計工程（ＦＤ）、詳細設計工程（ＤＤ）については、図８に基づいて行われる。すなわち、図８に示すように、上記Ｂｘ／Ｄｘの値と、上述した各パラメータの上限・下限との関係から、当該関係に応じて予め定められた評価結果が算定される。さらに詳述すると、図８に示す表は、各開発工程で実施した欠陥除去の活動が適切であったかどうかを判断するための表であり、所定のソフトウェア開発プロジェクトの品質データに基づく値とパラメータとの関係により該当する表内の記述が品質評価の結果になる。また、製造工程（ＣＤ）については図９に基づいて行われる。さらに、単体テスト工程（ＵＴ）、結合テスト工程（ＩＴ）、総合テスト工程（ＳＴ）、運用テスト工程（ＲＴ）については、図１０に基づいて行われる。なお、図９，図１０に示す表の説明については図８と同様である。そして、品質評価処理部１３は、上記評価結果を算出後に、このプロジェクトごとの各開発工程の品質評価結果を品質評価データベース２３に登録する。
【００５８】
また、この品質評価処理部１３では、システム運用開始後の残存欠陥予測の評価結果も算出されるが、以下のようにして行われる。まず、上述したように、数５式及び数６式にて算出された各プロジェクト毎の残存欠陥予測を品質実績データベース２１から読み出す。また、これと同時に、パラメータファイル２２から、上述したように算出した「ＴＨＳＩＮ」の値を読み出す。このとき、残存欠陥予測は当該処理部にて上記数式に基づいて算出されてもよい。そして、各プロジェクトの残存欠陥予測である数６式の数値が、以下の数７式の条件を満たす場合には、残存欠陥数は十分小さいと判断する。
【００５９】
【数７】
2005326953.tif 000009
【００６０】
その後、品質評価処理部１３は、算出したプロジェクトごとの残存欠陥予測の結果を品質評価データベース２３に登録する。
【００６１】
また、品質評価サーバ１のＣＰＵには、開発工程ごとの品質評価の結果と全開発工程の欠陥数を用いて行う残存欠陥数の予測結果から、品質評価結果の画面を生成し品質管理端末４１に送信する品質評価結果画面処理部１４が構築されている。この処理部１４は、特に、品質評価処理部１３による品質評価がパラメータの値からはずれているなど、予め定められた許容範囲を収まらずにある基準を満たしていないと判断された場合に、当該品質評価結果（例えば、図５に示すもの）を品質管理端末４１に対して送信する（品質結果出力手段）。但し、この品質評価結果画面処理部１４は、評価結果の内容に関わらず、評価を行った後に必ず品質管理端末４１に評価結果を送信してもよい。また、評価結果は単に品質評価サーバ１のディスプレイ上に表示されるのみでもよい。
【００６２】
また、この品質評価結果画面処理部１４は、評価結果のみならず、上述した図４〜図７に示すような画面データを生成して、これを品質管理端末４１にネットワークを介して送信し、当該端末４１に表示するよう作動する。すなわち、品質管理端末４１に対して上述したパラメータを表示する画面を表示したり、これに対する修正指示を受けることも行う。また、図７に示すように、評価結果を表示した画面上に入力される管理者からのコメントデータをも受け付ける機能を有する。かかる場合には、コメントデータや評価結果のデータを後述するメール送信処理部１５に通知する。
【００６３】
また、品質評価サーバ１のＣＰＵには、品質評価結果と品質管理担当者からのコメントをメールにして、ネットワークＮを経由してプロジェクトに対して、すなわち、当該プロジェクトに携わる開発担当者の品質データ入力端末３１に送信する、メール送信処理部１５が構築されている。
【００６４】
＜動作＞
次に、上記構成の本システムの動作について、図１１乃至図１４を参照して説明する。図１１は、品質評価サーバ１の動作を示すフローチャートである。図１２乃至図１４は、システム全体の動作を示すシーケンス図である。
【００６５】
まず、図１１及び図１２を参照して、品質評価サーバ１がプロジェクトの品質データを記憶する際の動作を説明する（図１１の符号Ｔ１）。特定のソフトウェア開発プロジェクトの担当者が品質データ入力端末３１にて品質評価サーバ１にアクセスすると（ステップＡ１）、品質評価サーバ１は品質データ入力端末３１に品質データ入力画面を送信する（ステップＡ２）。そして、品質データ入力端末３１では品質データ入力画面を表示し（ステップＡ３、図２参照）、これにプロジェクトの品質データを入力して送信ボタンを押下することにより、入力した品質データを品質評価サーバ１に送信する（ステップＡ４）。そして、品質評価サーバ１は、品質データを受信し（図１１のステップＳ１）、品質実績データベース２１に登録する（ステップＡ５、図１１のステップＳ２）。また、上記品質データの登録が複数のソフトウェア開発プロジェクトから、すなわち、異なるプロジェクトの担当者から行われ、これにより、品質実績データベース２１には、複数のプロジェクトの品質データ入力画面に示された項目の品質データ全てが登録される。
【００６６】
次に、図１１及び図１３を参照して、品質評価サーバ１がパラメータを算出する時の動作を説明する（図１１の符号Ｔ２）。なお、図１３では、品質管理端末４１からパラメータ計算指示があったときにパラメータの計算を行う場合の動作を説明しているが、品質評価サーバ１にて一定時間が経過すると定期的に行われてもよい（図１１のステップＳ３参照）。
【００６７】
まず、管理者は、品質評価で用いるパラメータを設定するために、品質管理端末４１にて品質評価サーバ１にネットワークＮ経由で接続する（ステップＢ１）。これに対して品質評価サーバ１は、品質管理画面（図３参照）を品質管理端末４１に送信する（ステップＢ２）。そして、品質管理端末４１は品質管理画面を表示し（ステップＢ３）、管理者は、図３に示す品質評価パラメータ計算ボタンを押すことによって、品質評価サーバ１にパラメータ計算の指示を出す（ステップＢ４、図１１のステップＳ３にて肯定判断）。品質評価サーバ１は、品質評価パラメータ計算処理部１２で、品質実績データベース２１から全てのプロジェクトの品質データを読み出し、品質評価のパラメータを計算する（ステップＢ５、図１１にてステップＳ４）。ここで、パラメータは、上述したように、ＴＨｘＲ０、ＴＨｘＲ１、ＴＨｘＴ０、ＴＨｘＴ１、ＴＨｘＢ０、ＴＨｘＢ１と、ＴＨＳＩＮがある。そして、算出手法も上述した通りである。
【００６８】
続いて、各パラメータを上述した算出手法にて自動的に計算し、その結果を図４に示す品質評価パラメータ画面に設定し、品質管理端末４１に送信する（ステップＢ６）。品質管理端末４１では、受信した品質評価パラメータ画面を表示し（ステップＢ７）、管理者が確認し、必要に応じてパラメータの修正を行い、送信ボタンを押す。これによって、パラメータの修正を品質評価サーバ１に通知することができる（ステップＢ８）。また、品質評価サーバ１は、品質管理端末４１から受信したパラメータをパラメータファイル２２に登録する（ステップＢ９）。なお、パラメータの修正がない場合には、ステップＢ５にて算出したパラメータをそのままパラメータファイル２２に登録する（図１１のステップＳ５）。
【００６９】
次に、図１１及び図１４を参照して、品質評価サーバ１が各プロジェクトの品質評価結果を算出する時の動作を説明する（図１１の符号Ｔ３）。まず、組織の品質管理部門等の管理者は、各プロジェクトの品質を評価するために、品質管理端末４１にて品質評価サーバ１に接続する（ステップＣ１）。すると、品質評価サーバ１は品質管理画面（図３参照）を品質管理端末４１に送信し（ステップＣ２）、品質管理端末４１は受信した品質管理画面を表示する（ステップＣ３）。管理者は、品質評価の実行のために、品質管理端末４１に表示された画面（図３）の品質評価実行ボタンを押下し、品質評価サーバ１に品質評価の実行を指示する（ステップＣ４、図１１のステップＳ６）。
【００７０】
すると、品質評価サーバ１は、品質実績データベース２１から各プロジェクトの品質データを、またパラメータファイル２２から品質評価に必要なパラメータを読み出し（ステップＣ５）、プロジェクトの開発工程ごとの品質を評価する（ステップＣ６）。このとき、評価結果は、上述したように、図８乃至図１０に示すような表に基づいて行う。そして、品質評価サーバ１は、このプロジェクトごとの各開発工程の品質評価結果を品質評価データベース２３に登録する。また、このプロジェクトごとの残存欠陥予測の結果を算出し、品質評価データベース２３に登録する。このようにして品質評価の算出を行う（図１１のステップＳ７，Ｓ８）。なお、品質評価サーバ１による品質評価処理は、一定の時間間隔毎に自動的に実行されてもよい。
【００７１】
続いて、品質評価サーバ１は、品質評価の結果を品質管理端末４１に送信するために、品質評価結果画面処理部１４で品質評価データベース２３から品質評価結果を読み出す。そして、品質評価結果リスト画面（図４参照）を生成し、品質管理端末４１に送信する（ステップＣ７、図１１のステップＳ９）。これを受けた品質管理端末４１は、品質評価結果リスト画面（図４）を表示し（ステップＣ８）、管理者は内容を確認する。ここで、評価結果の送信は、算出した評価結果が予め定められた判断基準を満たさない場合、すなわち、評価結果が望ましくない場合にのみ行われてもよい。
【００７２】
その後、管理者が、プロジェクトの詳細な品質評価結果をさらに詳細に確認する必要があると判断した場合は、確認したいプロジェクトの品質評価結果リスト画面（図４）の詳細確認ボタンを押し、品質評価サーバ１に品質評価結果の送信を指示する（ステップＣ９）。すると、品質評価サーバ１は、品質評価結果画面処理部１４で品質管理端末４１から指示されたプロジェクトのみの品質評価結果を品質評価データベース２３から読み出し、品質評価結果画面（図５参照）を生成して、品質管理端末４１に送信する（ステップＣ１０）。これを受けて、品質管理端末４１は、品質評価結果画面（図５）を表示し（ステップＣ１１）、管理者が内容を確認する。
【００７３】
このとき、管理者はプロジェクト（開発担当者等）に対して品質評価結果を連絡して当該プロジェクトに確認と対処を依頼する必要があると判断した場合は、品質評価結果リスト画面（図４）のメール作成ボタンを押し、品質評価サーバ１にメール作成画面の送信の指示を出す(ステップＣ１２)。この指示によって、品質評価サーバ１はメール作成画面（図７）を品質管理端末４１に送信する（ステップＣ１３）。品質管理端末４１は、メール作成画面（図７）を表示し（ステップＣ１４）、メール送信が必要なプロジェクトについてメール作成画面のメール送信の欄に印をつけ、コメントの欄に品質管理担当者の意見や依頼事項を記述して、メール送信ボタンを押すことによって、品質評価サーバ１にメール送信の指示を出す（ステップＣ１５）。これを受けた品質評価サーバ１は、メール送信処理部１５で、プロジェクトに対し品質評価結果と管理者のコメントを用いてメールを作成し、該当するプロジェクトに、すなわち、当該プロジェクトの担当者の端末（例えば、品質データ入力端末３１）に送信する（ステップＣ１６）。
【００７４】
このようにすることにより、本発明では、管理者は、プロジェクトの品質評価の結果を、開発工程単位に確認することができるので、プロジェクトの早期の段階から開発工程ごとに品質状況を把握することができる。また、プロジェクトの欠陥数からシステム運用開始時点の残存欠陥を予測し、運用開始してもよいかどうかを判断できるため、残存欠陥数が多い場合は、テストを追加して実施する等の対策を運用開始前に行うことができる。
【００７５】
また、プロジェクトは、様々な特性を持っており、その特性によって、各開発工程の欠陥の現れ方も異なる。例えば、開発の上流工程（基本設計工程から製造工程）で多くの欠陥を発見することができるプロジェクトは、上流工程の欠陥数は上限よりも数が大きく、また下流工程（単体テスト工程から運用テスト工程）の欠陥数は下限よりも数が小さい場合がある。従来までの方法では、開発工程ごとに品質を評価するため、上限あるいは下限の範囲外になり、品質評価の結果は悪くなる場合がある。しかし、本発明では、この場合は、残存欠陥予測は良い結果になるため、品質が悪いという判断にはならない。このように開発工程ごとの品質評価と全ての開発工程を通じての全体的な品質評価を同時に実施することができるので、判断の誤りを少なくすることができる。また、残存欠陥予測の結果が悪い場合（上限を超える場合）は、どの開発工程の評価がどのように悪いかが示されているので品質向上に向けてプロジェクトの対策を検討し易くなる。
【００７６】
また、品質評価の結果は、品質管理担当者のコメントをつけてプロジェクトの開発担当者等にメールにて通知されるので、品質管理担当者が問題を発見した段階で直ちにプロジェクトに調査および対策の実施を依頼することが可能になる。
【００７７】
さらに、組織のプロジェクトの品質データに基づいて、品質評価のパラメータを自動的に計算し、この結果を見て品質管理担当者がパラメータを修正することが可能なので、組織全体の品質を向上させるためにパラメータを修正することが可能である。
【産業上の利用可能性】
【００７８】
本発明は、ソフトウェア開発プロジェクトの品質を評価し、当該品質の向上を図るシステムとして、会社内などのシステムに組み込むことが可能であり、産業上の利用可能性を有する。
【図面の簡単な説明】
【００７９】
【図１】本発明の構成を示す機能ブロック図である。
【図２】品質データ入力画面の一例を示す図である。
【図３】品質管理端末の操作画面の一例を示す図である。
【図４】パラメータの表示例を示す図である。
【図５】評価結果の表示例を示す図である。
【図６】評価結果の詳細な表示例を示す図である。
【図７】評価結果にコメントが入力された状態を示す図である。
【図８】品質評価の一例を示す図である。
【図９】品質評価の一例を示す図である。
【図１０】品質評価の一例を示す図である。
【図１１】品質評価サーバの動作を示すフローチャートである。
【図１２】システム全体の動作を示すシーケンス図である。
【図１３】システム全体の動作を示すシーケンス図である。
【図１４】システム全体の動作を示すシーケンス図である。
【符号の説明】
【００８０】
１  品質評価サーバ
１１  品質データ登録処理部（入力受付手段）
１２  品質評価パラメータ計算処理部（評価基準データ算出手段）
１３  品質評価処理部（品質評価手段）
１４  品質評価結果画面処理部（品質結果出力手段）
１５  メール送信処理部
２１  品質実績データベース（品質データ記憶手段）
２２  パラメータファイル（評価基準データ記憶手段）
２３  品質評価データベース
３１，３２  品質データ入力端末（入力手段）
４１  品質管理端末（品質結果出力手段）
Ｎ  ネットワーク
【図１】
2005326953.tif 000010
【図２】
2005326953.tif 000011
【図３】
2005326953.tif 000012
【図４】
2005326953.tif 000013
【図５】
2005326953.tif 000014
【図６】
2005326953.tif 000015
【図７】
2005326953.tif 000016
【図８】
2005326953.tif 000017
【図９】
2005326953.tif 000018
【図１０】
2005326953.tif 000019
【図１１】
2005326953.tif 000020
【図１２】
2005326953.tif 000021
【図１３】
2005326953.tif 000022
【図１４】
2005326953.tif 000023