(57)【特許請求の範囲】
【請求項１】
既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援装置であって、
（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、
リスクの見積もりを行いたいソフトウェア部品の部品ＩＤの組み合わせを入力する手段と、
入力されたソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、
検索されたすべての事例のリスク評価値を合算することにより、前記ソフトウェア部品の組み合わせに対する総リスク評価値を求める手段と、
求めた総リスク評価値を出力する手段と
を備えたことを特徴とする再利用開発見積もり支援装置。
【請求項２】
既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援装置であって、
（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、
リスクの見積もりを行いたいソフトウェア部品のカテゴリの組み合わせを入力する手段と、
入力された組み合わせの各カテゴリごとに、そのカテゴリに属するソフトウェア部品の部品ＩＤを１つずつ選択して、各カテゴリからそれぞれ選択した部品ＩＤの組み合わせ（この組み合わせを「部品ＩＤ組み合わせ」と呼ぶ）を作成し、そのようにして作成したすべての部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、
前記部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせについて検索されたすべての事例のリスク評価値を合算することにより、当該部品ＩＤ組み合わせに対する総リスク評価値を求める手段と、
前記部品ＩＤ組み合わせごとに求めた総リスク評価値を、各部品ＩＤ組み合わせと総リスク評価値との対応関係が分かるように、出力する手段と
を備えたことを特徴とする再利用開発見積もり支援装置。
【請求項３】
既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援装置であって、
ソフトウェア部品のカテゴリを表すカテゴリデータと、そのカテゴリに属するソフトウェア部品のソフトウェア部品名と、そのソフトウェア部品の部品ＩＤとを、対応させて格納した記憶手段と、
（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、
前記ソフトウェア部品名とそのカテゴリの一覧を表示する手段と、
表示されたソフトウェア部品名とそのカテゴリの一覧から、リスクの見積もりを行いたいソフトウェア部品の組み合わせまたはソフトウェア部品のカテゴリの組み合わせを指定する手段と、
指定されたソフトウェア部品の組み合わせ、または指定された各カテゴリに含まれるソフトウェア部品のすべての組み合わせについて、そのソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、
前記ソフトウェア部品の部品ＩＤの組み合わせごとに、検索されたすべての事例のリスク評価値を合算することにより、ソフトウェア部品の組み合わせごとの総リスク評価値を求める手段と、
前記ソフトウェア部品の組み合わせごとの総リスク評価値を、各組み合わせと総リスク評価値との対応関係が分かるように、出力する手段と
を備えたことを特徴とする再利用開発見積もり支援装置。
【請求項４】
請求項１から３に記載の再利用開発見積もり支援装置において、
前記事例記憶手段は、前記各事例データごとに、重み情報を格納しており、
前記総リスク評価値を求める手段は、検索されたすべての事例のリスク評価値を合算する際に、該重み情報による重み付けを行って前記総リスク評価値を求めることを特徴とする再利用開発見積もり支援装置。
【請求項５】
コンピュータ上で既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援プログラムであって、
前記コンピュータを、
（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、
リスクの見積もりを行いたいソフトウェア部品の部品ＩＤの組み合わせを入力する手段と、
入力されたソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、
検索されたすべての事例のリスク評価値を合算することにより、前記ソフトウェア部品の組み合わせに対する総リスク評価値を求める手段と、
求めた総リスク評価値を出力する手段として
機能させるための再利用開発見積もり支援プログラム。
【請求項６】
コンピュータ上で既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援プログラムであって、
前記コンピュータを、
（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、
リスクの見積もりを行いたいソフトウェア部品のカテゴリの組み合わせを入力する手段と、
入力された組み合わせの各カテゴリごとに、そのカテゴリに属するソフトウェア部品の部品ＩＤを１つずつ選択して、各カテゴリからそれぞれ選択した部品ＩＤの組み合わせ（この組み合わせを「部品ＩＤ組み合わせ」と呼ぶ）を作成し、そのようにして作成したすべての部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、
前記部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせについて検索されたすべての事例のリスク評価値を合算することにより、当該部品ＩＤ組み合わせに対する総リスク評価値を求める手段と、
前記部品ＩＤ組み合わせごとに求めた総リスク評価値を、各部品ＩＤ組み合わせと総リスク評価値との対応関係が分かるように、出力する手段として
機能させるための再利用開発見積もり支援プログラム。
【請求項７】
コンピュータ上で既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援プログラムであって、
前記コンピュータを、
ソフトウェア部品のカテゴリを表すカテゴリデータと、そのカテゴリに属するソフトウェア部品のソフトウェア部品名と、そのソフトウェア部品の部品ＩＤとを、対応させて格納した記憶手段と、
（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、
前記ソフトウェア部品名とそのカテゴリの一覧を表示する手段と、
表示されたソフトウェア部品名とそのカテゴリの一覧から、リスクの見積もりを行いたいソフトウェア部品の組み合わせまたはソフトウェア部品のカテゴリの組み合わせを指定する手段と、
指定されたソフトウェア部品の組み合わせ、または指定された各カテゴリに含まれるソフトウェア部品のすべての組み合わせについて、そのソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、
前記ソフトウェア部品の部品ＩＤの組み合わせごとに、検索されたすべての事例のリスク評価値を合算することにより、ソフトウェア部品の組み合わせごとの総リスク評価値を求める手段と、
前記ソフトウェア部品の組み合わせごとの総リスク評価値を、各組み合わせと総リスク評価値との対応関係が分かるように、出力する手段として
機能させるための再利用開発見積もり支援プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ソフトウェア部品を再利用してアプリケーションの開発を行う際、その開発前にソフトウェア部品を組み合わせた際のリスクを見積もる作業を支援する装置およびプログラムに関する。
【０００２】
【従来の技術】
従来、ソフトウェア部品間に関する情報をデータベースに登録し管理する技術として、例えば、特開平６−５９８６９号公報に記載のものが知られている。この公報に記載のものは、ソフトウェア部品とソフトウェア部品間の共通知識を統括的に管理する装置に関するものである。この装置によれば、ソフトウェア部品群で共通に使用されている特定のソフトウェア部品群知識を相互参照表の形式で一覧表示したり、特定のソフトウェア部品間共通知識について編集した結果をそれを使用するすべてのソフトウェア部品について適用する必要が生じた場合に、これらの一覧表示や変更手続を一括して簡単に行うことができる。
【０００３】
また、相性を評価する技術として、例えば、特開２００１−１１３０３４号公報に記載のものが知られている。これは、人や物の相性をコンピュータシステムを利用して評価する装置に関するものである。この装置によれば、気象情報等の世相に影響を与える過去の情報を蓄積した過去情報DBをもとに、人や物の間の相性を総合的に評価することとそれを文書化することが出来る。
【０００４】
【発明が解決しようとする課題】
しかしながら、特開平６−５９８６９号公報に記載の技術は、共通に使用されているソフトウェア部品群の共通知識を有効利用しようとするものであって、共通部品を持たないソフトウェア部品間の相性についての知識を与えるものではない。
【０００５】
また、特開２００１−１１３０３４号公報に記載の技術は、人や物の相性を取り扱うものであって、ソフトウェア部品間に関する情報を開発作業のリスクと結びつけて評価する手法については述べられていない。
【０００６】
本発明の目的は、ソフトウェア部品間の相性から、構築するシステムのリスクを評価し、より低リスクで構築出来るシステムの類似例を提供する再利用開発見積もり支援装置およびプログラムを提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、請求項１に係る発明は、既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援装置であって、（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、リスクの見積もりを行いたいソフトウェア部品の部品ＩＤの組み合わせを入力する手段と、入力されたソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、検索されたすべての事例のリスク評価値を合算することにより、前記ソフトウェア部品の組み合わせに対する総リスク評価値を求める手段と、求めた総リスク評価値を出力する手段とを備えたことを特徴とする。
【０００８】
請求項２に係る発明は、既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援装置であって、（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、リスクの見積もりを行いたいソフトウェア部品のカテゴリの組み合わせを入力する手段と、入力された組み合わせの各カテゴリごとに、そのカテゴリに属するソフトウェア部品の部品ＩＤを１つずつ選択して、各カテゴリからそれぞれ選択した部品ＩＤの組み合わせ（この組み合わせを「部品ＩＤ組み合わせ」と呼ぶ）を作成し、そのようにして作成したすべての部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、前記部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせについて検索されたすべての事例のリスク評価値を合算することにより、当該部品ＩＤ組み合わせに対する総リスク評価値を求める手段と、前記部品ＩＤ組み合わせごとに求めた総リスク評価値を、各部品ＩＤ組み合わせと総リスク評価値との対応関係が分かるように、出力する手段とを備えたことを特徴とする。
【０００９】
請求項３に係る発明は、既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援装置であって、ソフトウェア部品のカテゴリを表すカテゴリデータと、そのカテゴリに属するソフトウェア部品のソフトウェア部品名と、そのソフトウェア部品の部品ＩＤとを、対応させて格納した記憶手段と、（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、前記ソフトウェア部品名とそのカテゴリの一覧を表示する手段と、表示されたソフトウェア部品名とそのカテゴリの一覧から、リスクの見積もりを行いたいソフトウェア部品の組み合わせまたはソフトウェア部品のカテゴリの組み合わせを指定する手段と、指定されたソフトウェア部品の組み合わせ、または指定された各カテゴリに含まれるソフトウェア部品のすべての組み合わせについて、そのソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、前記ソフトウェア部品の部品ＩＤの組み合わせごとに、検索されたすべての事例のリスク評価値を合算することにより、ソフトウェア部品の組み合わせごとの総リスク評価値を求める手段と、前記ソフトウェア部品の組み合わせごとの総リスク評価値を、各組み合わせと総リスク評価値との対応関係が分かるように、出力する手段とを備えたことを特徴とする。
【００１０】
請求項４に係る発明は、請求項１から３に記載の再利用開発見積もり支援装置において、前記事例記憶手段は、前記各事例データごとに、重み情報を格納しており、前記総リスク評価値を求める手段は、検索されたすべての事例のリスク評価値を合算する際に、該重み情報による重み付けを行って前記総リスク評価値を求めることを特徴とする。
【００１１】
請求項５に係る発明は、コンピュータ上で既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援プログラムであって、前記コンピュータを、（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、リスクの見積もりを行いたいソフトウェア部品の部品ＩＤの組み合わせを入力する手段と、入力されたソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、検索されたすべての事例のリスク評価値を合算することにより、前記ソフトウェア部品の組み合わせに対する総リスク評価値を求める手段と、求めた総リスク評価値を出力する手段として機能させるための再利用開発見積もり支援プログラムである。
【００１２】
請求項６に係る発明は、コンピュータ上で既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援プログラムであって、前記コンピュータを、（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、リスクの見積もりを行いたいソフトウェア部品のカテゴリの組み合わせを入力する手段と、入力された組み合わせの各カテゴリごとに、そのカテゴリに属するソフトウェア部品の部品ＩＤを１つずつ選択して、各カテゴリからそれぞれ選択した部品ＩＤの組み合わせ（この組み合わせを「部品ＩＤ組み合わせ」と呼ぶ）を作成し、そのようにして作成したすべての部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、前記部品ＩＤ組み合わせごとに、その部品ＩＤ組み合わせについて検索されたすべての事例のリスク評価値を合算することにより、当該部品ＩＤ組み合わせに対する総リスク評価値を求める手段と、前記部品ＩＤ組み合わせごとに求めた総リスク評価値を、各部品ＩＤ組み合わせと総リスク評価値との対応関係が分かるように、出力する手段として機能させるための再利用開発見積もり支援プログラムである。
【００１３】
請求項７に係る発明は、コンピュータ上で既存のソフトウェア部品を再利用してアプリケーション開発を行う際のリスクを見積もる再利用開発見積もり支援プログラムであって、前記コンピュータを、ソフトウェア部品のカテゴリを表すカテゴリデータと、そのカテゴリに属するソフトウェア部品のソフトウェア部品名と、そのソフトウェア部品の部品ＩＤとを、対応させて格納した記憶手段と、（１）ソフトウェア部品を特定する部品ＩＤの組み合わせと、（２）該組み合わせに対応する事例データであって、該組み合わせで発生したトラブルを示す事例データと、（３）該事例データの事例の危険度を表すリスク評価値とを、対応させて格納した事例記憶手段と、前記ソフトウェア部品名とそのカテゴリの一覧を表示する手段と、表示されたソフトウェア部品名とそのカテゴリの一覧から、リスクの見積もりを行いたいソフトウェア部品の組み合わせまたはソフトウェア部品のカテゴリの組み合わせを指定する手段と、指定されたソフトウェア部品の組み合わせ、または指定された各カテゴリに含まれるソフトウェア部品のすべての組み合わせについて、そのソフトウェア部品の部品ＩＤの組み合わせに対応するすべての事例のリスク評価値を前記事例記憶手段から検索する手段と、前記ソフトウェア部品の部品ＩＤの組み合わせごとに、検索されたすべての事例のリスク評価値を合算することにより、ソフトウェア部品の組み合わせごとの総リスク評価値を求める手段と、前記ソフトウェア部品の組み合わせごとの総リスク評価値を、各組み合わせと総リスク評価値との対応関係が分かるように、出力する手段として機能させるための再利用開発見積もり支援プログラムである。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて説明する。図面で同一の記号は、同じものを示しているものとする。
【００１５】
図１は、本発明の実施の一形態である再利用開発見積もり支援装置の構成を示すシステム構成図である。本再利用開発見積もり支援装置は、図１に示すように、入出力を行う端末110と、中央処理装置120と、外部記憶装置130とを備える。
【００１６】
中央処理装置120は、入力処理部121と、部品検索処理部122と、リスク見積り処理部123と、出力処理部124とを備える。これら各部は、例えば汎用のコンピュータのCPUで所定のプログラムを実行することにより実現されるものである。外部記憶装置130には、部品テーブル131と、事例テーブル132が格納されている。
【００１７】
入力処理部121は、端末110にリスク見積もりの対象となるソフトウェア部品を選択する入力画面を表示する機能を実現する。部品検索処理部122は、外部記憶装置130に接続して、入力画面により選択されたソフトウェア部品に適合する情報を部品テーブル131から検索する機能と、選択されたソフトウェア部品の組み合わせに適合する情報を事例テーブル132から検索する機能を実現する。リスク見積もり処理部123は、部品検索処理部122の検索処理結果からアプリケーション開発に関するリスクを分析する処理を行う。出力処理部124は、処理結果を出力画面として端末110に表示する。
【００１８】
図２は、部品テーブル131の構成例を示す。ソフトウェア部品1つにつき、1レコードが設けられている。レコードの構成として、本実施形態では、ID201、部品名202、カテゴリ203、コスト204を要素として保持する。ID201は当該ソフトウェア部品を特定する識別子、部品名202は当該ソフトウェア部品の名称、カテゴリ203は当該ソフトウェア部品が属するカテゴリ、コスト204は当該ソフトウェア部品のコストを示す。
【００１９】
図３は、カテゴリと部品の関係を示すツリー構造図である。各部品302は必ずどれか１種類のカテゴリ301に属しており、同じカテゴリに含まれる類似の部品を検索することが可能である。
【００２０】
図４は、事例テーブル132の構成例を示す。事例のレコードは、1つの事例につき固有となるID401、当該事例で使われた部品が対応する部品レコードのID402、そのトラブル事例を回避するのに必要となる技術のレベルである重み付けの値403、そのトラブル事例が引き起こす危険度を表すリスク規模404、およびトラブル事例の詳細内容405を含む。例えば、ID401が「1」の事例は、部品IDが「002」と「004」のソフトウェア部品を組み合わせた事例であり、その事例の重み付けの値が403に、リスク規模が404に、事例の詳細な内容が405に、それぞれ記載されている。
【００２１】
図５に、リスク規模404を決定する基準の例を示す。リスク規模501とシステムへの影響502とが対応して記載されている。当該事例が、システムへの影響502に記載されている状況を引き起こす事例である場合、そのリスク規模404として、対応するリスク規模501の値を記載する。また、重み付けの値403は、各分野で定めた技術の基準に従い、このリスクを回避するのに必要となる技術レベルを評価した値である。
【００２２】
図６は、本実施形態の再利用開発見積もり支援装置が端末110に表示する画面遷移図である。本再利用開発見積もり支援装置では、入力画面601と、出力画面604と、出力画面607が表示される。
【００２３】
以下、図７〜図９の説明図を用いて、本実施形態における作業の流れを、図６の画面遷移図に従って説明する。まず入力画面601において、入力欄602に見積もる部品の組み合わせを入力し、実行ボタン603を押下すると、本支援装置が当該部品の組み合わせに対するリスクを分析し、出力画面604を表示する。出力画面604には、見積もりに使ったトラブル事例の数である事例数とリスクの総計値である総リスク605が表示される。この表示から、事例数が少なくて総リスクの値が高い場合に、ソフトウェア部品間の相性が最も悪いことが分かる。
【００２４】
次に、出力画面604において、詳細ボタン606を押下すると、出力画面607が表示される。出力画面607では、見積もりに使ったトラブル事例の一覧608がリスクの高い順に表示される。これにより、各トラブル事例の詳細を知ることができる。
【００２５】
図７と図８を参照して、入力欄602に入力できる項目について説明する。見積もる部品の組み合わせを指定する方法は、２種類存在する。部品と部品の組み合わせを指定する方法とカテゴリとカテゴリの組み合わせを指定する方法である。図７に示すように、部品701（備品予約A）と部品702（座席予約A）との組み合わせを指定した場合は、当該部品701と702を組み合わせたときの総リスクが見積もられる。また、図８に示すように、カテゴリ801（備品予約）とカテゴリ804（チケット予約）との組み合わせを指定した場合は、カテゴリ801に含まれるすべての部品(802、803)とカテゴリ804に含まれるすべての部品(805)とを総当たりで組み合わせた場合の総リスクが見積もられる。すなわち、図７においては部品701と702の組み合わせ(▲１▼)だけが見積もられるが、図８においては部品802と805の組み合わせ(▲１▼)と部品803と805の組み合わせ(▲２▼)がそれぞれ見積もられる。
【００２６】
図９に、リスクと総リスクの見積もり方法の例を示す。見積もりに使うトラブル事例として、事例テーブル132から、入力された部品の組み合わせを満たすものを検索する。検索で選び出す条件となる部品の組み合わせは、入力された部品またはカテゴリの組み合わせに含まれるすべての部品の組み合わせとなる。選び出された各トラブル事例において、リスク901を、リスク規模404と重み付け403との乗算で求める。総リスク902は、選び出されたすべてのトラブル事例に対するリスクの総和902で求める。
【００２７】
なお、本実施形態では、トラブル事例を検索で選び出す際の条件として、リスク901の値が所定値以上になる事例のみを選び出すように設定することが可能である。関数903は検索するリスクの下限値をDと設定した場合の関数であり、リスク904は下限値を設定した場合のリスクの算出式の例である。この結果、総リスクは、式905に示すものとなる。
【００２８】
図１０は、入力項目として部品と部品の組み合わせを指定する方法を採る場合の中央処理装置120の処理の流れを示すフローチャートである。
【００２９】
ステップ1001で、入力処理部121は、部品検索処理部122を使い部品テーブル131からカテゴリとソフトウェア部品に関するデータを読み込み、図１１に示すような入力画面1101（図６の入力画面601に相当する）を端末110に表示する。入力画面1101は、カテゴリの階層とソフトウェア部品をツリー構造図1103で表示している。ツリー構造図1103から組み合わせの相性を調べたいソフトウェア部品を複数指定して選択ボタン1105を押下することで、ソフトウェア部品を選択する。選択されたソフトウェア部品は、その部品名が領域1104に表示される。ソフトウェア部品の選択を取り消す場合は、領域1104に表示されている部品名から取り消したいものを選択して取り消しボタン1106を押下する。図１１では2つのソフトウェア部品を選択したところを図示したが、2つ以上の任意の数のソフトウェア部品を選択可能である。アプリケーションで使用したい（相性を調べたい）ソフトウェア部品の組み合わせが領域1104に設定できたら、見積もり実行ボタン1107を押下する。
【００３０】
次にステップ1002で、部品検索処理部122は、事例テーブル132から前記指定された（領域1104に表示された）ソフトウェア部品の組み合わせを用いている過去の事例情報を検索する。
【００３１】
ステップ1003から1005では、リスク見積もり処理部123が、ステップ1001で指定したソフトウェア部品のすべての組み合わせについて１つずつ、それらの組み合わせすべてが終わるまで、図９のリスク901を算出する計算式に従って重み付け403とリスク規模404の乗算を取る処理を行う。ステップ1006で、図９の総リスク902を算出する計算式に従って前記乗算結果の総和を取り、部品間の総リスクを算出する。ステップ1007で、出力処理部124が処理結果を出力する。
【００３２】
図１２は、ステップ1007で出力処理部124が端末110に出力する出力画面1201（図６の出力画面604に相当する）の例を示す。出力画面1201には、表示インデックス／検索結果件数ラベル1202、総リスク1203、トラブル事例数1204、イメージ画像1205、および指定された部品名1206，1207が表示される。表示インデックス／検索結果件数ラベル1202は、ソフトウェア部品とソフトウェア部品との1つの組み合わせに対して検索された事例が1つでもあればその組み合わせを1つとしてカウントし、そのような検索事例が1つでもある組み合わせの数を分母とし、現在表示しているのがどの組み合わせに対するリスクの表示であるかを示すインデックスを分子として表示するものである。いま説明している例では、ソフトウェア部品1つとソフトウェア部品1つとの組み合わせ（1通りの組み合わせ）であるから、インデックス／検索結果件数ラベル1202は常に「１件／１件中」と表示される。総リスク1203は、ステップ1006で算出した総リスクである。トラブル事例数1204は、検索された事例の数である。
【００３３】
出力画面1201において、イメージ画像1205をクリックすることで、リスク見積もりに関する詳細情報を示した出力画面1211（図６の出力画面607に相当する）が端末110に表示される。出力画面1211では、領域1212に、リスク見積もりに使った部品の組み合わせによるトラブル事例の一覧がリスクの高い順番にソートして表示される。
【００３４】
図１３は、入力項目としてカテゴリとカテゴリとの組み合わせを指定する方法を採る場合の中央処理装置120の処理の流れを示すフローチャートである。以下では、ソフトウェア部品の組み合わせを指定した図１０の流れと異なる点を中心に説明する。
【００３５】
ステップ1301の部品の組み合わせの指定は、ステップ1001と同様である。ただし、ここでは図１４の画面1401（図１１の画面1101と同じ）で、ソフトウェア部品を指定する代わりにカテゴリ（「施設予約」と「チケット予約」）を指定している。ステップ1302では、指定されたカテゴリに含まれるソフトウェア部品を部品テーブル131から検索して、指定された当該カテゴリに含まれるソフトウェア部品をすべて洗い出し、それら部品同士の組み合わせのパターンをすべて洗い出す。例えば、２つのカテゴリが指定された場合は、各カテゴリから１つずつソフトウェア部品を選んだ組み合わせをすべて洗い出す。３つ以上のカテゴリを指定することもでき、この場合は、任意に選んだ２つの各カテゴリからそれぞれ選んだ２つのソフトウェア部品の組み合わせ、任意に選んだ３つの各カテゴリからそれぞれ選んだ３つのソフトウェア部品の組み合わせ、…というようにすべてのソフトウェア部品の組み合わせを洗い出すものとする。
【００３６】
ステップ1303から1309は、洗い出されたソフトウェア部品同士の組み合わせのパターンすべてについて、それぞれ、上述した図１０のステップ1002からステップ1006までと同等の処理を行うものである。すなわち、ソフトウェア部品の組み合わせ１つに対して、ステップ1304で、事例テーブル132からそのソフトウェア部品の組み合わせを用いている過去の事例情報を検索する。そして、検索されたすべての事例について、それぞれステップ1306でリスクを計算し、ステップ1308でそれらのリスクの総和を求める。これにより、ソフトウェア部品の組み合わせ１つに対して、その総リスクと過去の事例が求められたことになる。これを上述の洗い出されたソフトウェア部品同士の組み合わせのすべてに対して行う。
【００３７】
ステップ1310で、出力処理部124が処理結果を出力する。
【００３８】
図１５は、ステップ1310で出力処理部124が端末110に出力する出力画面1501（図６の出力画面604に相当する）の例を示す。出力画面1501は、図１２の出力画面1201と同様の項目を表示するものであるが、表示インデックス／検索結果件数ラベル1502の表示は異なる。表示インデックス／検索結果件数ラベル1502の分母には、洗い出されたソフトウェア部品同士の組み合わせパターンの総件数（検索事例が存在するものをカウントした件数）を表示する。その分子には、そのうち何番目の見積もり結果を現在表示しているかを示すインデックスを表示する。図中では「１件／１０件中」と表示しているが、これは洗い出されたソフトウェア部品同士の組み合わせパターンが１０個あり、そのうち１番目の組み合わせの見積結果を現在表示していることを示す。したがって、総リスクとトラブル事例数の表示は、その組み合わせに対応する総リスクとトラブル事例数を示すものである。イメージ画像の下には、現在表示している組み合わせのソフトウェア部品の部品名が表示されている。この表示により、ソフトウェア部品の組み合わせと、総リスクおよびトラブル事例数との対応関係が分かる。
【００３９】
さらに、前へボタン1502と、次へボタン1503が表示される。これらのボタンを使って、現在表示している組み合わせ以外の組み合わせについても総リスクとトラブル事例数を表示させることが可能である。次へボタン1503を押下すると、インデックスの表示が１つ進み次の組み合わせの表示に移行する。前へボタン1502を押下すると、インデックスの表示が１つ戻り前の組み合わせの表示に移行する。表示されているインデックスに対応するソフトウェア部品の組み合わせは、イメージ画像の下に表示されるので、ユーザは現在どの組み合わせについての総リスクなどが表示されているか、一目で認識できる。これにより、ユーザは前へボタン1502と次へボタン1503を用いて各組み合わせの総リスクとトラブル事例数を簡単に確認することができ、低リスクのソフトウェア部品の組み合わせを容易に取得できる。
【００４０】
また、イメージ画像をクリックすることで、右側に図示したリスク見積もりに関する詳細情報を示した出力画面が表示されることは図１２と同様である。この場合、この画面には、出力画面1501で現在表示されている組み合わせについての詳細情報が表示される。
【００４１】
図１６は、本発明をWebアプリケーション上で実施した適用例である。上述した実施形態の再利用開発見積もり支援装置がWebアプリケーションの形で実現されているものとする。
【００４２】
アプリケーション開発者（開発リスクの見積もりをする人）は、このWebアプリケーションにより、ソフトウェア部品を検索する、アプリケーションのリスクを調べる、あるいは、アプリケーションのコストを調べることなどが可能である。これにより、ソフトウェア部品を利用した再利用開発の見積もりを計る際に、過去に同じ部品を使用して作成した事例をリサーチして回る時間を削減する効果が期待できる。また、指定したソフトウェア部品間の相性をリスクとして事前に把握することが可能なため、開発中の事故率が低下する効果も期待される。上記２つの作業と同時にソフトウェア部品を組み合わせた際にかかるコストについても検索できるようにすれば、見積もり作業の効率化が期待される。
【００４３】
ソフトウェア部品の開発者は、ソフトウェア部品を外部記憶装置に登録することより、アプリケーション開発者に最新の情報を告知する手段を得ることが出来る。また、ソフトウェア部品間でリスクが高いものを検索できるため、その整合部品を提供するという商品の開発手段が提供される。
【００４４】
先行する開発経験者は、外部記憶装置にトラブル事例データを登録することで、情報を商品として登録する手段が提供される。
【００４５】
また、本Webシステムのサイト運営者は、本システムを管理することで、アプリケーション開発者とソフトウェア開発者の両者に対して同時にビジネスをサポートすることが可能となる。
【００４６】
【発明の効果】
以上説明したように、本発明によれば、ソフトウェア部品間の相性について、過去のトラブル事例にもとづいて統括的に分析し、再利用開発におけるリスク見積もりを容易に行うことが可能になる。また、ソフトウェア部品間の相性から、構築するシステムのリスクを評価し、より低リスクで構築出来るシステムの類似例を提供することが可能になる。
【図面の簡単な説明】
【図１】本発明の実施の一形態である再利用開発見積もり支援装置のシステム構成図。
【図２】ソフトウェア部品テーブルの構成を示す図。
【図３】カテゴリとソフトウェア部品の関係を示すツリー構造図。
【図４】事例テーブルの構成を示す図。
【図５】リスク規模の目安を定義したテーブルを示す図。
【図６】再利用開発見積もり支援装置が端末に表示する画面の遷移図。
【図７】入力項目の部品の組み合わせ（その１）を示す図。
【図８】入力項目の部品の組み合わせ（その２）を示す図。
【図９】リスクおよび総リスクの導出式を示す図。
【図１０】入力項目として部品と部品の組み合わせを指定する方法を採る場合の処理の流れを示すフローチャート図。
【図１１】入力画面例を示す図。
【図１２】出力画面例を示す図。
【図１３】入力項目としてカテゴリとカテゴリの組み合わせを指定する方法を採る場合の処理の流れを示すフローチャート図。
【図１４】入力画面例を示す図。
【図１５】出力画面例を示す図。
【図１６】本発明をWebアプリケーション上で実施した適用例を示す図。
【符号の説明】
１１１…端末、１２０…中央処理装置、１２１…入力処理部、１２２…部品検索処理部、１２３…リスク見積処理部、１２４…出力処理部、１３０…外部記憶装置、１３１…部品テーブル、１３２…事例テーブル、２０１…IDカラム、２０２…部品名カラム、２０３…カテゴリカラム、２０４コストカラム、３０１…カテゴリ、３０２…部品、４０１…IDカラム、４０２…部品IDカラム、４０３…重み付けカラム、４０４…リスク規模カラム、４０５…事例内容カラム、５０１…リスク規模、５０２…システムへの影響からの目安、６０１…入力画面、６０２…入力欄、６０３…実行ボタン、６０４…出力画面１、６０５…総リスク・事例数、６０６…詳細ボタン、６０７…出力画面２、６０８…事例の一覧、７０１と７０２…選択された部品、８０１と８０４…選択されたカテゴリの組み合わせ、８０２と８０３と８０５…カテゴリの属する部品、▲１▼選択された部品の組み合わせ１、▲２▼選択された部品の組み合わせ２、９０１…リスクを導出する式、９０２…総リスクを導出する式、９０３…検索の際に指定するリスクの下限値を設定した場合にリスク乗ずる関数、９０４…リスクを導出する式２、９０５…総リスクを導出する式２、１１０１…入力画面、１１０２…パンくずリスト、１１０３…ツリー構造図、１１０４…選択されたソフトウェア部品、１１０５…選択ボタン、１１０６…取り消しボタン、１１０７…見積もり実行ボタン、１２０１…出力画面１、１２０２…表示インデックス／検索結果件数ラベル、１２０３…総リスク表示ラベル、１２０４…トラブル事例数ラベル、１２０５…ソフトウェア間相性イメージ、１２０６と１２０７…ソフトウェア部品名、１２１１…出力画面２、１２１２…事例詳細内容、１４０１…出力画面１、１４０２…カテゴリ、１５０１…表示インデックス／検索結果件数ラベル、１５０２…前の組み合わせボタン、１５０３…次の組み合わせボタン。
【図１】
0003934955.tif 000002
【図２】
0003934955.tif 000003
【図３】
0003934955.tif 000004
【図４】
0003934955.tif 000005
【図５】
0003934955.tif 000006
【図６】
0003934955.tif 000007
【図７】
0003934955.tif 000008
【図８】
0003934955.tif 000009
【図９】
0003934955.tif 000010
【図１０】
0003934955.tif 000011
【図１１】
0003934955.tif 000012
【図１２】
0003934955.tif 000013
【図１３】
0003934955.tif 000014
【図１４】
0003934955.tif 000015
【図１５】
0003934955.tif 000016
【図１６】
0003934955.tif 000017