(57)【要約】【課題】  共通コンポーネントと共通コンポーネントに関する様々な情報をデータベースで管理し、共通コンポーネントの再利用を促進することを目的とする。【解決手段】  コンポーネント管理システム１００において、コンポーネント管理データベース１５０は共通コンポーネントとともに共通コンポーネントに関する情報を管理する。プロジェクト情報取得部１０１はプロジェクト管理データベース５０からプロジェクト情報を取得し、コンポーネント管理データベース１５０に登録する。キーワード抽出部１０２はプロジェクト情報取得部１０１が取得したプロジェクト情報からキーワードを抽出し、検索部１０３は抽出されたキーワードを用いて共通コンポーネントをコンポーネント管理データベース１５０から検索する。出力部１０４はプロジェクト情報を作成したユーザに検索結果を電子メールで通知する。【選択図】        図３
2006178708.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラムを組み合わせたプロジェクトの特徴を示すプロジェクト情報を管理するプロジェクト管理データベースと接続し、プログラムの一部を再利用可能なコンポーネントとして管理するコンポーネント管理システムであって、
コンポーネントとともに当該コンポーネントに関する情報を管理するコンポーネント管理データベースと、
作成が完了していないコンポーネントを含む新規プロジェクトに関してユーザにより入力されるプロジェクト情報を前記プロジェクト管理データベースから取得するプロジェクト情報取得部と、
前記プロジェクト情報取得部が取得したプロジェクト情報に含まれるキーワードを抽出するキーワード抽出部と、
前記キーワード抽出部が抽出したキーワードを用いて、前記新規プロジェクトで利用可能であると推測されるコンポーネントを前記コンポーネント管理データベースから検索する検索部と、
前記検索部が検索したコンポーネントの一覧をユーザに対して出力する出力部とを備えることを特徴とするコンポーネント管理システム。
【請求項２】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで利用予定のコンポーネントを示す利用予定コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記新規プロジェクトに関してユーザにより入力される利用予定コンポーネント情報を前記プロジェクト管理データベースから取得する利用予定コンポーネント情報取得部と、
前記利用予定コンポーネント情報取得部が取得した利用予定コンポーネント情報を前記コンポーネント管理データベースに登録する利用予定コンポーネント情報登録部とを備えることを特徴とする請求項１に記載のコンポーネント管理システム。
【請求項３】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで作成予定のコンポーネントを示す作成予定コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記新規プロジェクトに関してユーザにより入力される作成予定コンポーネント情報を前記プロジェクト管理データベースから取得する作成予定コンポーネント情報取得部と、
前記作成予定コンポーネント情報取得部が取得した作成予定コンポーネント情報を前記コンポーネント管理データベースに登録する作成予定コンポーネント情報登録部とを備えることを特徴とする請求項１又は２に記載のコンポーネント管理システム。
【請求項４】
前記コンポーネント管理システムは、さらに、
ユーザにより入力されるキーワードを取得するキーワード取得部を備え、
前記検索部は、
前記キーワード取得部が取得したキーワードを用いて、コンポーネントを前記コンポーネント管理データベースから検索し、
前記出力部は、
前記検索部が検索したコンポーネントの一覧をユーザに対して表示することを特徴とする請求項１から４までのいずれかに記載のコンポーネント管理システム。
【請求項５】
前記コンポーネント管理データベースは、
コンポーネントを特定のグループに分類して管理し、
前記コンポーネント管理システムは、さらに、
ユーザにより選択されるグループを特定するグループ特定部を備え、
前記検索部は、
前記グループ特定部が特定したグループに属するコンポーネントを前記コンポーネント管理データベースから検索し、
前記出力部は、
前記検索部が検索したコンポーネントの一覧をユーザに対して表示することを特徴とする請求項１から５までのいずれかに記載のコンポーネント管理システム。
【請求項６】
前記プロジェクト情報取得部は、
作成が完了したコンポーネントを含む完了プロジェクトに関してユーザにより入力されるプロジェクト情報を前記プロジェクト管理データベースから取得し、
前記プロジェクト情報は、さらに、
ユーザが前記完了プロジェクトで作成を完了したコンポーネントを示す作成コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記完了プロジェクトに関してユーザにより入力される作成コンポーネント情報を前記プロジェクト管理データベースから取得する作成コンポーネント情報取得部と、
前記作成コンポーネント情報取得部が取得した作成コンポーネント情報に示されるコンポーネントと関連するファイルが所定の場所に保存されていない場合、ユーザに対して当該ファイルの保存要求を通知するファイル要求部と、
前記作成コンポーネント情報取得部が取得した作成コンポーネント情報に示されるコンポーネントと関連するファイルが所定の場所に保存されている場合、当該作成コンポーネント情報を前記コンポーネント管理データベースに登録する作成コンポーネント情報登録部とを備えることを特徴とする請求項１から６までのいずれかに記載のコンポーネント管理システム。
【請求項７】
前記コンポーネント管理データベースは、
コンポーネントの利用履歴を示す履歴情報を管理し、
前記プロジェクト情報は、さらに、
ユーザが前記完了プロジェクトで利用したコンポーネントを示す利用コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記完了プロジェクトに関してユーザにより入力される利用コンポーネント情報を前記プロジェクト管理データベースから取得する利用コンポーネント情報取得部と、
前記利用コンポーネント情報取得部が取得した利用コンポーネント情報を前記コンポーネント管理データベースに登録するとともに、当該利用コンポーネント情報に示されるコンポーネントの利用履歴に関して前記履歴情報を更新する利用コンポーネント情報登録部とを備え、
前記出力部は、
前記履歴情報を参照して前記検索部が検索したコンポーネントの一覧を利用頻度の高い順に並べて出力することを特徴とする請求項７又は８に記載のコンポーネント管理システム。
【請求項８】
複数のプログラムを組み合わせたプロジェクトの特徴を示すプロジェクト情報を管理するプロジェクト管理データベースと接続し、プログラムの一部を再利用可能なコンポーネントとして管理し、当該コンポーネントとともに当該コンポーネントに関する情報を管理するコンポーネント管理データベースと接続するコンポーネント管理プログラムにおいて、
作成が完了していないコンポーネントを含むプロジェクト（以下、新規プロジェクトという）に関してユーザにより入力されるプロジェクト情報を前記プロジェクト管理データベースから取得するプロジェクト情報取得処理と、
前記プロジェクト情報取得処理が取得したプロジェクト情報に含まれるキーワードを抽出するキーワード抽出処理と、
前記キーワード抽出処理が抽出したキーワードを用いて、前記新規プロジェクトで利用可能であると推測されるコンポーネントを前記コンポーネント管理データベースから検索する検索処理と、
前記検索処理が検索したコンポーネントの一覧をユーザに対して出力する出力処理とをコンピュータに実行させることを特徴とするコンポーネント管理プログラム。
【請求項９】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで利用予定のコンポーネントを示す利用予定コンポーネント情報を含み、
前記コンポーネント管理プログラムは、さらに、
前記新規プロジェクトに関してユーザにより入力される利用予定コンポーネント情報を前記プロジェクト管理データベースから取得する利用予定コンポーネント情報取得処理と、
前記利用予定コンポーネント情報取得処理が取得した利用予定コンポーネント情報を前記コンポーネント管理データベースに登録する利用予定コンポーネント情報登録処理とをコンピュータに実行させることを特徴とする請求項１３に記載のコンポーネント管理プログラム。
【請求項１０】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで作成予定のコンポーネントを示す作成予定コンポーネント情報を含み、
前記コンポーネント管理プログラムは、さらに、
前記新規プロジェクトに関してユーザにより入力される作成予定コンポーネント情報を前記プロジェクト管理データベースから取得する作成予定コンポーネント情報取得処理と、
前記作成予定コンポーネント情報取得処理が取得した作成予定コンポーネント情報を前記コンポーネント管理データベースに登録する作成予定コンポーネント情報登録処理とをコンピュータに実行させることを特徴とする請求項１３又は１４に記載のコンポーネント管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアの開発においてプロジェクト管理を行うシステムと連携してソフトウェアのコンポーネントを管理するコンポーネント管理システム及びコンポーネント管理方法及びコンポーネント管理プログラムに関するものである。
【背景技術】
【０００２】
特許文献１では、複数の利用者の間で文書を共有するためのシステムにおいて、条件を指定して文書を検索し、検索した文書をその検索に用いた条件とともにデータベース（ＤＢ）に登録する。利用者は、新規の文書を作成する際に、検索条件を入力し、入力した検索条件に対応する文書をデータベースから検索する。そして、新規の文書を一から作成するのではなく、検索した文書を利用して文書を作成する。
【特許文献１】特開２００２−１６９８１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ソフトウェアの開発において、複数のプロジェクトが同時に進行していると仮定する。ここで、プロジェクトとは、複数のプログラムを組み合わせたもの、又はそれを開発する活動のことである。例えば、プロジェクトＡでは、オブジェクト指向プログラミングなどにおけるクラスの設計を行い、クラスＡというコンポーネントを開発したとする。プロジェクトＢもまた、クラスの設計を行い、クラスＢというコンポーネントを開発したとする。ここで、コンポーネントとは、クラスや関数などのプログラムの一部であり、ソフトウェアの開発の単位とすることができるものをいう。
【０００４】
クラスＡとクラスＢは同等の処理を行うコンポーネントだとしても、プロジェクトＡとプロジェクトＢで互いの情報を共有できなかったため、別のコンポーネントとして作成されてしまう。このような現象が、プロジェクト数に比例して発生しており、無駄な工数がかかっている。
【０００５】
従来技術では、上記のように複数のプロジェクトにおいて利用可能なコンポーネント（共通コンポーネント）をデータベースに格納して共有し、過去のプロジェクトで作成されたコンポーネントを他のプロジェクトで利用することができた。しかし、そのコンポーネントがどのような機能を持ち、誰によっていつ作成され、どのようなプロジェクトで利用されたかという情報がなく、共通コンポーネントが利用されづらいという課題があった。また、従来技術では、作成中のコンポーネントはデータベースに登録されていないため、上記の例のように同時に進行しているプロジェクトの間では、同じ機能を持ったコンポーネントを別々に作成してしまうという課題があった。
【０００６】
本発明は、共通コンポーネントと共通コンポーネントに関する様々な情報をデータベースで管理し、共通コンポーネントの再利用を促進することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るコンポーネント管理システムは、
複数のプログラムを組み合わせたプロジェクトの特徴を示すプロジェクト情報を管理するプロジェクト管理データベースと接続し、プログラムの一部を再利用可能なコンポーネントとして管理するコンポーネント管理システムであって
コンポーネントとともに当該コンポーネントに関する情報を管理するコンポーネント管理データベースと、
作成が完了していないコンポーネントを含む新規プロジェクトに関してユーザにより入力されるプロジェクト情報を前記プロジェクト管理データベースから取得するプロジェクト情報取得部と、
前記プロジェクト情報取得部が取得したプロジェクト情報に含まれるキーワードを抽出するキーワード抽出部と、
前記キーワード抽出部が抽出したキーワードを用いて、前記新規プロジェクトで利用可能であると推測されるコンポーネントを前記コンポーネント管理データベースから検索する検索部と、
前記検索部が検索したコンポーネントの一覧をユーザに対して出力する出力部とを備えることを特徴とする。
【０００８】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで利用予定のコンポーネントを示す利用予定コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記新規プロジェクトに関してユーザにより入力される利用予定コンポーネント情報を前記プロジェクト管理データベースから取得する利用予定コンポーネント情報取得部と、
前記利用予定コンポーネント情報取得部が取得した利用予定コンポーネント情報を前記コンポーネント管理データベースに登録する利用予定コンポーネント情報登録部とを備えることを特徴とする。
【０００９】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで作成予定のコンポーネントを示す作成予定コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記新規プロジェクトに関してユーザにより入力される作成予定コンポーネント情報を前記プロジェクト管理データベースから取得する作成予定コンポーネント情報取得部と、
前記作成予定コンポーネント情報取得部が取得した作成予定コンポーネント情報を前記コンポーネント管理データベースに登録する作成予定コンポーネント情報登録部とを備えることを特徴とする。
【００１０】
前記コンポーネント管理システムは、さらに、
ユーザにより入力されるキーワードを取得するキーワード取得部を備え、
前記検索部は、
前記キーワード取得部が取得したキーワードを用いて、コンポーネントを前記コンポーネント管理データベースから検索し、
前記出力部は、
前記検索部が検索したコンポーネントの一覧をユーザに対して表示することを特徴とする。
【００１１】
前記コンポーネント管理データベースは、
コンポーネントを特定のグループに分類して管理し、
前記コンポーネント管理システムは、さらに、
ユーザにより選択されるグループを特定するグループ特定部を備え、
前記検索部は、
前記グループ特定部が特定したグループに属するコンポーネントを前記コンポーネント管理データベースから検索し、
前記出力部は、
前記検索部が検索したコンポーネントの一覧をユーザに対して表示することを特徴とする。
【００１２】
前記プロジェクト情報取得部は、
作成が完了したコンポーネントを含む完了プロジェクトに関してユーザにより入力されるプロジェクト情報を前記プロジェクト管理データベースから取得し、
前記プロジェクト情報は、さらに、
ユーザが前記完了プロジェクトで作成を完了したコンポーネントを示す作成コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記完了プロジェクトに関してユーザにより入力される作成コンポーネント情報を前記プロジェクト管理データベースから取得する作成コンポーネント情報取得部と、
前記作成コンポーネント情報取得部が取得した作成コンポーネント情報に示されるコンポーネントと関連するファイルが所定の場所に保存されていない場合、ユーザに対して当該ファイルの保存要求を通知するファイル要求部と、
前記作成コンポーネント情報取得部が取得した作成コンポーネント情報に示されるコンポーネントと関連するファイルが所定の場所に保存されている場合、当該作成コンポーネント情報を前記コンポーネント管理データベースに登録する作成コンポーネント情報登録部とを備えることを特徴とする。
【００１３】
前記コンポーネント管理データベースは、
コンポーネントの利用履歴を示す履歴情報を管理し、
前記プロジェクト情報は、さらに、
ユーザが前記完了プロジェクトで利用したコンポーネントを示す利用コンポーネント情報を含み、
前記コンポーネント管理システムは、さらに、
前記完了プロジェクトに関してユーザにより入力される利用コンポーネント情報を前記プロジェクト管理データベースから取得する利用コンポーネント情報取得部と、
前記利用コンポーネント情報取得部が取得した利用コンポーネント情報を前記コンポーネント管理データベースに登録するとともに、当該利用コンポーネント情報に示されるコンポーネントの利用履歴に関して前記履歴情報を更新する利用コンポーネント情報登録部とを備え、
前記出力部は、
前記履歴情報を参照して前記検索部が検索したコンポーネントの一覧を利用頻度の高い順に並べて出力することを特徴とする。
【００１４】
本発明に係るコンポーネント管理プログラムは、
複数のプログラムを組み合わせたプロジェクトの特徴を示すプロジェクト情報を管理するプロジェクト管理データベースと接続し、プログラムの一部を再利用可能なコンポーネントとして管理し、当該コンポーネントとともに当該コンポーネントに関する情報を管理するコンポーネント管理データベースと接続するコンポーネント管理プログラムにおいて、
作成が完了していないコンポーネントを含むプロジェクト（以下、新規プロジェクトという）に関してユーザにより入力されるプロジェクト情報を前記プロジェクト管理データベースから取得するプロジェクト情報取得処理と、
前記プロジェクト情報取得処理が取得したプロジェクト情報に含まれるキーワードを抽出するキーワード抽出処理と、
前記キーワード抽出処理が抽出したキーワードを用いて、前記新規プロジェクトで利用可能であると推測されるコンポーネントを前記コンポーネント管理データベースから検索する検索処理と、
前記検索処理が検索したコンポーネントの一覧をユーザに対して出力する出力処理とをコンピュータに実行させることを特徴とする。
【００１５】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで利用予定のコンポーネントを示す利用予定コンポーネント情報を含み、
前記コンポーネント管理プログラムは、さらに、
前記新規プロジェクトに関してユーザにより入力される利用予定コンポーネント情報を前記プロジェクト管理データベースから取得する利用予定コンポーネント情報取得処理と、
前記利用予定コンポーネント情報取得処理が取得した利用予定コンポーネント情報を前記コンポーネント管理データベースに登録する利用予定コンポーネント情報登録処理とをコンピュータに実行させることを特徴とする。
【００１６】
前記プロジェクト情報は、さらに、
ユーザが前記新規プロジェクトで作成予定のコンポーネントを示す作成予定コンポーネント情報を含み、
前記コンポーネント管理プログラムは、さらに、
前記新規プロジェクトに関してユーザにより入力される作成予定コンポーネント情報を前記プロジェクト管理データベースから取得する作成予定コンポーネント情報取得処理と、
前記作成予定コンポーネント情報取得処理が取得した作成予定コンポーネント情報を前記コンポーネント管理データベースに登録する作成予定コンポーネント情報登録処理とをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１７】
本発明では、コンポーネント管理データベースが共通コンポーネントとともに共通コンポーネントに関する情報を管理し、プロジェクト情報取得部がプロジェクト管理データベースで管理される新規プロジェクトに関するプロジェクト情報を取得し、キーワード抽出部がプロジェクト情報に含まれるキーワードを抽出し、検索部が抽出されたキーワードを用いて共通コンポーネントを検索し、出力部が検索された共通コンポーネントの一覧をユーザに対して出力して新規プロジェクトでの利用を促すことにより、共通コンポーネントの再利用を促進することが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態について、図を用いて説明する。下記の各実施の形態の説明では、コンポーネントの例として、オブジェクト指向プログラミング言語であるＪａｖａ（登録商標）のクラスを用いるが、他の言語のクラスや関数などであっても構わない。
【００１９】
図１は、下記の各実施の形態におけるコンポーネント管理システムの外観の一例を示す図である。
【００２０】
図１において、コンポーネント管理システム１００は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）表示装置９０１、キーボード（Ｋ／Ｂ）９０２、マウス９０３、コンパクトディスク装置（ＣＤＤ）９０５、プリンタ装置９０６を備え、これらはケーブルで接続されている。さらに、コンポーネント管理システム１００は、ＦＡＸ機９３２、電話機９３１とケーブルで接続され、また、ローカルエリアネットワーク（ＬＡＮ）９４２、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【００２１】
図２は、下記の各実施の形態におけるコンポーネント管理システムのハードウェア構成の一例を示す図である。
【００２２】
図２において、コンポーネント管理システム１００は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１１を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信ボード９１５、ＣＲＴ表示装置９０１、Ｋ／Ｂ９０２、マウス９０３、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）９０４、磁気ディスク装置９２０、ＣＤＤ９０５、プリンタ装置９０６と接続されている。
【００２３】
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
【００２４】
通信ボード９１５は、ＦＡＸ機９３２、電話機９３１、ＬＡＮ９４２などに接続されている。
【００２５】
例えば、通信ボード９１５、Ｋ／Ｂ９０２、ＦＤＤ９０４などは、入力部の一例である。また、例えば、通信ボード９１５、ＣＲＴ表示装置９０１などは、出力部、登録通知部、ファイル要求部の一例である。
【００２６】
ここで、通信ボード９１５は、ＬＡＮ９４２に限らず、直接、インターネット９４０、あるいはＩＳＤＮ（Ｉｎｔｅｇｒａｔｅｄ  Ｓｅｒｖｉｃｅｓ  Ｄｉｇｉｔａｌ  Ｎｅｔｗｏｒｋ）などのＷＡＮ（ワイドエリアネットワーク）に接続されていても構わない。直接、インターネット９４０、あるいはＩＳＤＮなどのＷＡＮに接続されている場合、コンポーネント管理システム１００は、インターネット９４０、あるいはＩＳＤＮなどのＷＡＮに接続され、ゲートウェイ９４１は不用となる。
【００２７】
磁気ディスク装置９２０には、オペレーティングシステム（ＯＳ）９２１、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３は、ＣＰＵ９１１、ＯＳ９２１、ウィンドウシステム９２２により実行される。
【００２８】
上記プログラム群９２３には、以下に述べる各実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００２９】
ファイル群９２４には、以下に述べる各実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明するものが、「〜ファイル」として記憶されている。また、ファイル群９２４は、複数のテーブルにより構成されるデータベースを含み、テーブル又はテーブルの一部がそれぞれファイルとして記憶されている。
【００３０】
また、以下に述べる各実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータの入出力を示し、そのデータの入出力のためにデータは、磁気ディスク装置９２０、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、光ディスク、ＣＤ（コンパクトディスク）、ＭＤ（ミニディスク）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）などのその他の記録媒体に記録される。あるいは、信号線やその他の伝送媒体により伝送される。
【００３１】
また、以下に述べる各実施の形態の説明において「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。あるいは、ソフトウェアのみ、あるいは、ハードウェアのみ、あるいは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
【００３２】
また、以下に述べる各実施の形態を実施するプログラムは、また、磁気ディスク装置９２０、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、光ディスク、ＣＤ（コンパクトディスク）、ＭＤ（ミニディスク）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）などのその他の記録媒体による記録装置を用いて記憶されても構わない。
【００３３】
実施の形態１．
まず、本実施の形態に係るコンポーネント管理システムの構成について説明する。
【００３４】
図３は、本実施の形態に係るコンポーネント管理システムの構成を示すブロック図である。
【００３５】
コンポーネント管理システム１００は、プロジェクト管理データベース５０を備えるプロジェクト管理システムと連携して共通コンポーネントをコンポーネント管理データベース１５０で管理する。プロジェクト管理システムは、プロジェクト情報を管理する。
【００３６】
コンポーネント管理システム１００において、プロジェクト情報取得部１０１はプロジェクト管理データベース５０からプロジェクト情報を取得する。また本実施の形態では、プロジェクト情報取得部１０１はコンポーネント管理データベース１５０に取得したプロジェクト情報を登録する。キーワード抽出部１０２はプロジェクト情報取得部１０１が取得したプロジェクト情報からキーワードを抽出し、検索部１０３は抽出されたキーワードを用いて共通コンポーネントをコンポーネント管理データベース１５０から検索する。出力部１０４はプロジェクト情報を作成したユーザに検索結果を電子メールで通知する。出力部１０４は検索結果をディスプレイなどに表示してもよい。
【００３７】
コンポーネント管理システム１００のユーザは、図示していない入力部を介して、キーワードを入力する。キーワード取得部１０５はユーザによって入力されたキーワードを取得し、検索部１０３はこのキーワードを用いて共通コンポーネントをコンポーネント管理データベース１５０から検索する。出力部１０４は検索結果をディスプレイなどに表示する。出力部１０４はユーザに検索結果を電子メールで通知してもよい。
【００３８】
利用予定コンポーネント情報取得部１０７はプロジェクト管理データベース５０から利用予定コンポーネント情報を取得し、利用予定コンポーネント情報登録部１０８はコンポーネント管理データベース１５０にその利用予定コンポーネント情報を登録する。作成予定コンポーネント情報取得部１０９はプロジェクト管理データベース５０から作成予定コンポーネント情報を取得し、作成予定コンポーネント情報登録部１１０はコンポーネント管理データベース１５０にその作成予定コンポーネント情報を登録する。利用コンポーネント情報取得部１１１はプロジェクト管理データベース５０から利用コンポーネント情報を取得し、利用コンポーネント情報登録部１１２はコンポーネント管理データベース１５０にその利用コンポーネント情報を登録する。作成コンポーネント情報取得部１１３は作成コンポーネント情報をプロジェクト管理データベース５０から取得し、作成コンポーネント情報登録部１１４はコンポーネント管理データベース１５０にその作成コンポーネント情報を登録する。
【００３９】
コンポーネント管理データベース１５０に作成コンポーネント情報が新たに登録された場合、登録通知部１１５は新たに登録された情報を、予め登録されている複数ユーザの連絡先に電子メールで通知する。
【００４０】
また共通コンポーネントとして保管するために、新規作成されたコンポーネントに関連するファイル（関連ファイル）を所定の場所に保存するように構成する。作成コンポーネント情報の登録時に、関連ファイルが所定の場所に保存されていない場合、ファイル要求部１１６はユーザに関連ファイルを保存する要求を電子メールで通知する。
【００４１】
次に、新規プロジェクトが開始される際のコンポーネント管理システム１００の動作について説明する。
【００４２】
図４は、ユーザが共通コンポーネントを検索する際の画面遷移の一例を示す図である。
【００４３】
プロジェクト管理システム及びコンポーネント管理システム１００のユーザであるプロジェクトリーダー（以下、ユーザという。）は、新規プロジェクトを開始する際に、そのプロジェクトと関連するキーワードを検索画面２０１に入力する。このとき、キーワードを複数入力してもよいし、一般的な検索システムと同様に条件式を入力してもよい。コンポーネント管理システム１００の検索処理が完了すると、入力された条件に対応する共通コンポーネントの一覧が検索結果画面２０２に表示される。図４の例では、各共通コンポーネントがクラス名で表示されており、各クラス名にはリンクが貼られている。ユーザは、リンクを辿ることで、詳細画面２０３で各クラスに関する情報を確認する。検索画面２０１、検索結果画面２０２、詳細画面２０３は、例えばＷｅｂブラウザを用いて出力される。
【００４４】
図５は、図４に示した画面遷移により、ユーザによる共通コンポーネントのキーワード検索を処理する際のコンポーネント管理システム１００の動作を示すフローチャートである。
【００４５】
ユーザによりキーワードが入力されると、コンポーネント管理システム１００において、キーワード取得部１０５はユーザが入力したキーワードを取得する（ステップＳ１０１）。検索部１０３は、キーワード取得部１０５が取得したキーワードを用いて、共通コンポーネントをコンポーネント管理データベース１５０から検索する（ステップＳ１０２）。出力部１０４は検索部１０３の検索結果を表示する（ステップＳ１０３）。
【００４６】
新規プロジェクトを開始する際には、ユーザは、上記の検索を行う以外に、プロジェクト計画書を作成する。本実施の形態では、プロジェクト計画書を作成することで、プロジェクト計画が策定されるとし、またプロジェクト計画書は、例えば「プロジェクト計画書シート」などのインタフェースを持つ図示しない入力部（以下、プロジェクト計画入力部という）から入力され、作成されるものとする。ユーザは、自席の端末等を用いて、プロジェクト計画入力部からプロジェクト計画を入力する。その後、入力されたプロジェクト計画書や後述するプロジェクト完了報告書などに含まれるプロジェクト情報はプロジェクト管理システムによって一元管理される。
【００４７】
ユーザは、プロジェクト計画書に、新規プロジェクトにおいて開発するシステムのイメージ及びプロジェクト計画について関係者へ徹底し、システム生産作業を効率的に実施する為の基本方針や作業手順、工程、品質、原価、体制などを入力する。例えば、プロジェクト概要として、システム概要・目的・特徴などの基本事項及びプロジェクトを推進する上での基本方針について、概要を入力する。また、システム基本事項として、システム概要、構造、機能、構成（ハードウェア、ソフトウェア）など、開発を行うシステムの内容について入力する。また、プロジェクト推進計画として、作業工程、体制、品質目標など、開発を行う上での進め方について入力する。
【００４８】
また、ユーザは、上記の検索の結果から新規プロジェクトに利用できそうな共通コンポーネントを決定する。そして、利用予定のコンポーネント、新規作成予定のコンポーネント、現在プロジェクト管理データベース５０に蓄積されているものを更新して利用する（更新予定の）コンポーネントを、利用共通コンポーネントシートに入力する。
【００４９】
図６、図７は、利用共通コンポーネントシートの入力画面の一例を示す図である。また図４、図５で示した共通コンポーネントの検索は、共通コンポーネントシート入力時に随時実行される。
【００５０】
図６の例では、ユーザは入力画面２０４に利用予定のコンポーネントに関する情報（利用予定コンポーネント情報）として「利用予定のクラス名」と「機能概要」を入力する。「利用予定のクラス名」には、図４の検索画面２０１で検索した結果を参考に決定した利用予定のコンポーネントのクラス名を記入するか、検索画面２０１の検索結果を転記できるように構成する。また「機能概要」には、クラス名に対応し、コンポーネント管理データベース１５０に記憶されている「機能概要」が表示される。
【００５１】
ユーザは、さらに、更新予定のコンポーネントに関する情報（利用予定コンポーネント情報及び作成予定コンポーネント情報に含まれる。）として「更新予定のクラス名」を入力する。「更新予定のクラス名」には、図４の検索画面２０１で検索した結果を参考に決定した更新予定コンポーネントのクラス名を転記するように構成してもよい。。「機能概要」には、クラス名に対応し、コンポーネント管理データベース１５０に記憶されている「機能概要」が表示されるが、更新機能について、ユーザが書き換えられるように構成してもよい。
【００５２】
図７の例では、ユーザは入力画面２０４に新規作成予定のコンポーネントに関する情報（作成予定コンポーネント情報）として「クラス名」、「機能」、「キーワード」、「分類」、「作成者所属」、「作成者氏名」を入力する。「クラス名」には、作成予定のコンポーネントのクラス名を入力する。「機能」には、作成予定のコンポーネントの機能概要を入力する。「キーワード」には、作成予定のコンポーネントに関するキーワードを入力する。「分類」には、作成予定のコンポーネントが属するグループを入力する。「作成者所属」には、作成予定のコンポーネントを作成する人の所属部署名を入力する。「作成者氏名」には、作成予定のコンポーネントを作成する人の氏名を入力する。
【００５３】
ユーザは、プロジェクト計画書と利用共通コンポーネントシートへの入力が終わると、図示していない登録画面からそれらをプロジェクト管理システムに登録する。
【００５４】
図８は、プロジェクト情報とコンポーネント情報を登録する際のプロジェクト管理システムの動作を示すフローチャートである。
【００５５】
ユーザによりプロジェクト計画書と利用共通コンポーネントシートが入力されると、プロジェクト管理システムはユーザが入力したプロジェクト計画書を取得し（ステップＳ２０１）、プロジェクト管理データベース５０に登録する（ステップＳ２０２）。さらに、プロジェクト管理システムはユーザが入力した利用共通コンポーネントシートを取得し（ステップＳ２０３）、プロジェクト管理データベース５０に登録する（ステップＳ２０４）。
【００５６】
コンポーネント管理システム１００は、プロジェクト管理システムに対してポーリングを行い、バッチ処理によってプロジェクト管理システムに登録されているプロジェクト計画書と利用共通コンポーネントシートを取得し、これらに含まれる情報を抽出してコンポーネント管理データベース１５０に登録する。この登録処理は、バッチ処理ではなく、例えばユーザとインタラクティブに行う処理であってもよい。
【００５７】
図９は、プロジェクト情報とコンポーネント情報の登録を処理する際のコンポーネント管理システム１００の動作を示すフローチャートである。
【００５８】
まず、コンポーネント管理システム１００において、プロジェクト情報取得部１０１はプロジェクト管理データベース５０に登録されたプロジェクト計画書で未処理のものを検索する（ステップＳ３０１）。未処理のプロジェクト計画書がある場合、プロジェクト計画書の数、つまり新規プロジェクトの件数分、以下のような処理を行う。
【００５９】
プロジェクト情報取得部１０１が、プロジェクト管理データベース５０から未処理のプロジェクト計画書を取得する（ステップＳ３０２）。利用予定コンポーネント情報取得部１０７及び作成予定コンポーネント情報取得部１０９が、プロジェクト管理データベース５０から利用共通コンポーネントシートを取得する（ステップＳ３０３）。コンポーネント管理システム１００が、取得したプロジェクト計画書と利用共通コンポーネントシートから情報を抽出してコンポーネント管理データベース１５０に登録する（ステップＳ３０４）。
【００６０】
図１０は、図９のステップＳ３０４の登録処理を行う際のコンポーネント管理システム１００の動作を示すフローチャートである。
【００６１】
登録処理の最初に、プロジェクト情報取得部１０１はプロジェクト計画書から抽出したプロジェクト情報をコンポーネント管理データベース１５０に登録する（ステップＳ３１１）。
【００６２】
利用予定のコンポーネントが利用共通コンポーネントシートに入力されていない場合、キーワード抽出部１０２はプロジェクト計画書に記述されたシステム概要の説明文などからキーワードを抽出する（ステップＳ３１２）。検索部１０３は、キーワード抽出部１０２が抽出したキーワードを用いて、共通コンポーネントをコンポーネント管理データベース１５０から検索する（ステップＳ３１３）。出力部１０４は検索部１０３の検索結果をユーザに電子メールで通知する（ステップＳ３１４）。
【００６３】
利用予定コンポーネント情報登録部１０８は、利用共通コンポーネントシートに利用予定のコンポーネントまたは更新予定のコンポーネントが入力されていれば、コンポーネント管理データベース１５０にコンポーネント情報を登録し、作成予定コンポーネント情報登録部１１０は新規作成予定のコンポーネント情報が入力されていれば、コンポーネント情報をコンポーネント管理データベース１５０に登録する（ステップＳ３１５）。
【００６４】
図１１は、図１０のステップＳ３１１からステップＳ３１３までの処理の一例を示す図である。
【００６５】
図１１の例では、コンポーネント管理システム１００は、利用予定のコンポーネントが利用共通コンポーネントシートに記入されていない場合、プロジェクト計画書に記述されたプロジェクトの名称やシステム概要の説明文から、例えば「印刷」というキーワードを抽出する。そして、「印刷」というキーワードにより、コンポーネント管理データベース１５０を検索する。このとき、コンポーネント管理データベース１５０の全ての項目を検索するように構成してもよいが、例えば「システム概要」だけを検索するように構成してもよい。結果、「ｐｒｉｎｔ．ｃｌａｓｓ」というクラス名の共通コンポーネントがコンポーネント管理データベース１５０から検索され、コンポーネント管理システム１００は、この共通コンポーネントを新規プロジェクトで利用することを促すために、ユーザに電子メールで通知する。電子メールを受け取ったユーザは、通知された共通コンポーネントの一覧から、新規プロジェクトで利用できそうなものを選択し、実際に利用する。
【００６６】
このように、ユーザが自らコンポーネントを検索しなくても、自動的に検索結果が通知されることにより、共通コンポーネントの利用の促進が期待できる。
【００６７】
また、作成済のコンポーネントに関する情報だけでなく、作成中（新規作成予定）のコンポーネントの情報も管理することにより、類似コンポーネントの重複作成を一層防止することができ、共通コンポーネントの再利用性が向上する。
【００６８】
次に、プロジェクトが完了した際のコンポーネント管理システム１００の動作について説明する。
【００６９】
プロジェクトが完了した際には、ユーザはプロジェクト完了報告書を作成する。
【００７０】
ユーザは、プロジェクト完了報告書に、プロジェクトの目標計画達成状況を把握・評価する為、計画と実績及びプロジェクトの進め方の評価、考察等を記述する。例えば、プロジェクトの実績として、実際の開発における生産規模、工程、品質等について、記述する。また、プロジェクトの評価として、生産性、工程、品質、損益等のそれぞれに対する評価及び総合評価を記述する。さらに、評価結果を踏まえ、今後の課題、及び施策について記述する。
【００７１】
また、ユーザは、利用共通コンポーネントシートに記述した内容に対する実際の共通コンポーネントの利用実績を、利用共通コンポーネント実績シートに入力する。
【００７２】
図１２、図１３は、利用共通コンポーネント実績シートの入力画面の一例を示す図である。
【００７３】
図１２の例では、ユーザは入力画面２０５に利用したコンポーネントに関する情報（利用コンポーネント情報）として「利用したクラス名」と「機能概要」を入力する。「利用したクラス名」には、キーワード検索を行った結果又は電子メールによる自動検索結果の通知を参考にして利用したコンポーネントのクラス名を入力する。「機能概要」には、利用したコンポーネントの機能を入力する。
【００７４】
ユーザは、さらに、更新したコンポーネントに関する情報（利用コンポーネント情報及び作成コンポーネント情報に含まれる。）として「既存クラス名」、「新規クラス名」、「更新内容」、「キーワード」、「更新者所属」、「更新者氏名」を入力する。「既存クラス名」には、キーワード検索を行った結果又は電子メールによる自動検索結果の通知を参考にして更新したコンポーネントのクラス名を入力する。「新規クラス名」には、更新を行った後のクラス名を入力する。「更新内容」には、更新した内容を入力する。「キーワード」には、更新した結果、追加したいキーワードを入力する。「更新者所属」には、コンポーネントを更新した人の所属部署名を入力する。「更新者氏名」には、コンポーネントを更新した人の氏名を入力する。
【００７５】
図１３の例では、ユーザは入力画面２０５に新規作成したコンポーネントに関する情報（作成コンポーネント情報）として「クラス名」、「機能」、「キーワード」、「分類」、「作成者所属」、「作成者氏名」を入力する。「クラス名」には、作成したコンポーネントのクラス名を記入する。「機能」には、作成したコンポーネントの機能概要を記入する。「キーワード」には、作成したコンポーネントに関するキーワードを記入する。「分類」には、作成したコンポーネントが属するグループを記入する。「作成者所属」には、コンポーネントを作成した人の所属部署名を記入する。「作成者氏名」には、コンポーネントを作成した人の氏名を記入する。
【００７６】
ユーザは、プロジェクト完了報告書と利用共通コンポーネント実績シートへの入力が終わると、図示していない登録画面からそれらをプロジェクト管理システムに登録する。
【００７７】
図１４は、プロジェクト情報とコンポーネント情報を更新する際のプロジェクト管理システムの動作を示すフローチャートである。
【００７８】
ユーザによりプロジェクト完了報告書と利用共通コンポーネント実績シートが入力されると、プロジェクト管理システムはユーザが入力したプロジェクト完了報告書を取得し（ステップＳ４０１）、プロジェクト管理データベース５０に登録する（ステップＳ４０２）。プロジェクト情報の一部を含むプロジェクト完了報告書を登録するということは、プロジェクト情報を更新することと同じである。さらに、プロジェクト管理システムはユーザが入力した利用共通コンポーネント実績シートを取得し（ステップＳ４０３）、プロジェクト管理データベース５０に登録する（ステップＳ４０４）。コンポーネント情報の一部を含む利用共通コンポーネント実績シートを登録するということは、コンポーネント情報を更新するということと同じである。
【００７９】
コンポーネント管理システム１００は、プロジェクト管理システムに対してポーリングを行い、バッチ処理によってプロジェクト管理システムに登録されているプロジェクト完了報告書と利用共通コンポーネント実績シートを取得し、これらに含まれる情報を抽出してコンポーネント管理データベース１５０に登録する、又はコンポーネント管理データベース１５０に登録済の情報を更新する。この更新処理（登録する処理を含む。）は、バッチ処理ではなく、例えばユーザとインタラクティブに行う処理であってもよい。
【００８０】
図１５は、プロジェクト情報とコンポーネント情報の更新を処理する際のコンポーネント管理システム１００の動作を示すフローチャートである。
【００８１】
まず、コンポーネント管理システム１００において、プロジェクト情報取得部１０１はプロジェクト管理データベース５０に登録されたプロジェクト完了報告書で未処理のものを検索する（ステップＳ５０１）。未処理のプロジェクト完了報告書がある場合、プロジェクト完了報告書の数、つまり完了したプロジェクト（完了プロジェクト）の件数分、以下のような処理を行う。
【００８２】
プロジェクト情報取得部１０１が、プロジェクト管理データベース５０から未処理のプロジェクト完了報告書を取得する（ステップＳ５０２）。利用コンポーネント情報取得部１１１及び作成コンポーネント情報取得部１１３が、プロジェクト管理データベース５０から利用共通コンポーネント実績シートを取得する（ステップＳ５０３）。コンポーネント管理システム１００が、取得したプロジェクト完了報告書と利用共通コンポーネント実績シートから情報を抽出してコンポーネント管理データベース１５０に登録する、又はコンポーネント管理データベース１５０に登録済の情報を更新する（ステップＳ５０４）。
【００８３】
全ての完了プロジェクトに対する処理が終了すると、登録通知部１１５は、この処理においてコンポーネント管理データベース１５０に登録されたコンポーネントやコンポーネント管理データベース１５０に登録済のコンポーネントで更新されたものがあった場合、その旨をコンポーネント管理データベース１５０に登録されたユーザ全員に電子メールで通知する（ステップＳ５０５）。
【００８４】
図１６は、図１５のステップＳ５０５で送信される電子メールを表示した通知画面の一例を示す図である。
【００８５】
図１６の例では、ユーザは新規に登録されたコンポーネントと更新されたコンポーネントの一覧を電子メールによって通知され、その内容を通知画面２０６に表示する。
【００８６】
このように、新規登録、更新された共通コンポーネントがある場合は、自動的に利用者全員に通知することにより、随時新しい共通コンポーネントを利用することを可能にするとともに、共通コンポーネントの利用を啓蒙することができる。
【００８７】
図１７は、図１５のステップＳ５０４の更新処理を行う際のコンポーネント管理システム１００の動作を示すフローチャートである。
【００８８】
利用したコンポーネントが利用共通コンポーネント実績シートに記入されている場合、利用コンポーネント情報登録部１１２はコンポーネント管理データベース１５０が保持する共通コンポーネントの利用履歴（履歴情報）を更新する（ステップＳ５１１）。
【００８９】
新規作成したコンポーネントが利用共通コンポーネント実績シートに入力されている場合で、所定のフォルダ（ディレクトリ）に関連ファイルが保存されていない場合、ファイル要求部１１６はそのフォルダに関連ファイルを保存する要求をユーザに電子メールで通知する（ステップＳ５１２）。この電子メールは関連ファイルの保存が完了するまで、定期的に配信され続ける。ここで、関連ファイルは、新規作成したコンポーネントのソースファイル、モジュール、仕様書、試験要領書などを含む。
【００９０】
新規作成したコンポーネントが利用共通コンポーネント実績シートに入力されていないか、新規作成したコンポーネントが利用共通コンポーネント実績シートに入力されていて、所定のフォルダに関連ファイルが保存されている場合、作成コンポーネント情報登録部１１４は、コンポーネント管理データベース１５０に登録されているコンポーネント情報を更新し、又は新しいコンポーネント情報をコンポーネント管理データベース１５０に登録する（ステップＳ５１３）。そして、プロジェクト情報取得部１０１はプロジェクト完了報告書から抽出した情報に基づいてコンポーネント管理データベース１５０のプロジェクト情報を更新する（ステップＳ５１４）。
【００９１】
図１８は、図１７のステップＳ５１２で送信される電子メールを表示した通知画面の一例を示す図である。
【００９２】
図１８の例では、ユーザは関連ファイルが所定のフォルダに保存されていない新規作成したコンポーネントと更新したコンポーネントの一覧を電子メールによって通知され、その内容を通知画面２０６に表示する。
【００９３】
以上のように、本実施の形態では、コンポーネント管理システム１００がシステム構築をする際に作成されるプロジェクト計画書やプロジェクト完了報告書といったプロジェクト情報を活用し、コンポーネント管理データベース１５０で共通コンポーネントとともに共通コンポーネントに関する情報やプロジェクト情報を管理することにより、各共通コンポーネントを誰がいつ作成し、どのプロジェクトで利用したのかという情報を参照することが可能となる。また、共通コンポーネント利用時に必要な利用実績やシステム事例などの情報を取得することができる為、共通コンポーネントの信頼性の向上や品質確保が可能となる。また、類似コンポーネントの重複作成を防止する事により、プロジェクトの工数削減が可能となる。
【００９４】
実施の形態２．
本実施の形態について、実施の形態１との差異について説明する。
【００９５】
図１９は、本実施の形態に係るコンポーネント管理システムの構成を示すブロック図である。
【００９６】
コンポーネント管理システム１００は、共通コンポーネントを予め複数のグループに分類してコンポーネント管理データベース１５０で管理する。
【００９７】
コンポーネント管理システム１００のユーザは、図示していない入力部を介して、共通コンポーネントを分類するグループを選択する。グループ特定部１０６はユーザによって選択されたグループを特定し、検索部１０３はこのグループに属する共通コンポーネントをコンポーネント管理データベース１５０から検索する。出力部１０４は検索結果をディスプレイなどに表示する。
【００９８】
図２０は、ユーザが共通コンポーネントを検索する際の画面遷移の一例を示す図である。
【００９９】
ユーザは、新規プロジェクトを開始する際に、キーワードを用いた検索の代わりに、そのプロジェクトに関連するコンポーネントのグループを検索画面２０１で選択し、そのグループに属するコンポーネントを検索する。コンポーネント管理システム１００の検索処理が完了すると、選択されたグループに属する共通コンポーネントの一覧が検索画面２０１に表示される。図２０の例では、各共通コンポーネントがクラス名で表示されており、各クラス名にはリンクが貼られている。ユーザは、リンクを辿ることで、詳細画面２０３で各クラスに関する情報を確認する。検索画面２０１、詳細画面２０３は、例えばＷｅｂブラウザを用いて出力される。
【０１００】
図２１は、ユーザによる共通コンポーネントのグループ検索を処理する際のコンポーネント管理システム１００の動作を示すフローチャートである。
【０１０１】
ユーザによりグループが選択されると、コンポーネント管理システム１００において、グループ特定部１０６はユーザが選択したグループの名称又はその他グループを識別する情報を取得し、選択されたグループを特定する（ステップＳ６０１）。検索部１０３は、グループ特定部１０６が特定したグループに属する共通コンポーネントをコンポーネント管理データベース１５０から検索する（ステップＳ６０２）。出力部１０４は検索部１０３の検索結果を表示する（ステップＳ６０３）。
【０１０２】
このように、共通コンポーネントをグループに分類し、グループごとに共通コンポーネントの一覧を参照できるようにすることで、共通コンポーネントを検索する機能の利便性が向上する。
【０１０３】
上記のグループ検索は、実施の形態１で説明したキーワード検索と併用してもよい。また、コンポーネント管理データベース１５０が保持する共通コンポーネントの利用履歴に基づいて検索（以下、優先検索という。）を行ってもよい。例えば、利用実績や使用例などから共通コンポーネントを検索したり、キーワード検索において前回までの検索回数や使用されたキーワードを記録しておき、使用回数の多いキーワードに対応する共通コンポーネントを優先的に表示したり、検索頻度やコンポーネントの使用頻度を利用履歴から算出し、頻度の高いものから順に表示したりする方法がある。さらに、管理者用と利用者用の権限を別に用意しておくことにより、共通コンポーネントの作成者や共通コンポーネントを利用したプロジェクトの客先名など、検索時に表示できる項目を制限してもよい。
【０１０４】
実施の形態３．
本実施の形態に係るコンポーネント管理システムの構成は、図３に示した実施の形態１又は図１９に示した実施の形態２の構成と同様である。本実施の形態では、コンポーネント管理データベース１５０の具体的な構成例を示す。
【０１０５】
図２２は、コンポーネント管理データベース１５０の構成の一例を示す図である。図２２において、ＴＢＬはテーブル、ＰＫは主キー、ＦＫは外部キー、ＫＬは（ソースコードの）ＫｉｌｏＬｉｎｅを示す。また、テーブル同士を結ぶ線は親子関係を示し、端に交差する２本の線がある側を親テーブル、端が３つの線に枝分かれしている側を子テーブルとする。また子テーブル側の枝分かれする部分に円があるものは、親テーブルのレコードに対応するレコードが子テーブルに０以上存在することを示し、交差する１本の線があるものは、親テーブルのレコードに対応するレコードが子テーブルに１つ存在することを示す。
【０１０６】
以下では、図２２のようにコンポーネント管理データベース１５０を構成した場合の、実施の形態１及び実施の形態２でフローチャートを用いて説明したコンポーネント管理システム１００の動作ステップの詳細を説明する。
【０１０７】
図５のフローチャートでは、ユーザによる共通コンポーネントのキーワード検索を処理する際のコンポーネント管理システム１００の動作を示した。
【０１０８】
ステップＳ１０２において、検索部１０３は、キーワード取得部１０５が取得したキーワードに検索条件Ｎｏ（番号）を付与して検索キーワードテーブル（図２３に例を示す。）に追加する。さらに、検索条件Ｎｏと対応させて検索日時と検索種別を検索条件テーブル（図２４に例を示す。）に追加する。次に、検索キーワードテーブルに追加したキーワードと一致するキーワードをキーワードテーブル（図２５に例を示す。）から取得する。そして、キーワードテーブルから取得したキーワードに対応するグループＩＤをグループキーワードテーブル（図２６に例を示す。）から取得する。そして、グループキーワードテーブルから取得したグループＩＤに対応するパッケージ名をグループパッケージ情報テーブル（図２７に例を示す。）から取得する。そして、グループパッケージ情報テーブルから取得したパッケージ名に対応するクラス名をクラス情報テーブル（図２８に例を示す。）から取得する。最後に、クラス情報テーブルから取得したクラス名の一覧を出力部１０４に渡す。
【０１０９】
図示していないが、ステップＳ１０３において出力部１０４がクラス名の一覧を表示した後、ユーザが一覧の中からクラス名を選択すると、選択されたクラス名に対応するクラス情報がクラス情報テーブルから取得され、出力部１０４によって表示される。さらに、このクラス名と、クラス名に対応するパッケージ名が、ステップＳ１０２でキーワードに付与された検索条件Ｎｏとともに、検索部１０３によって検索結果テーブル（図２９に例を示す。）に追加される。
【０１１０】
ここで、クラス名を検索の対象とする代わりに、パッケージ名を検索の対象としてもよい。その場合、上記の動作中、クラス情報を取得する処理では、クラス情報の代わりに、共通コンポーネント情報テーブル（図３０に例を示す。）に格納されているパッケージ情報を取得する。
【０１１１】
上記の検索キーワードテーブル、検索条件テーブル、検索結果テーブルは、優先検索を行う場合に参照される。
【０１１２】
図１０のフローチャートでは、図９のステップＳ３０４の登録処理を行う際のコンポーネント管理システム１００の動作を示した。
【０１１３】
ステップＳ３１１において、プロジェクト情報取得部１０１はプロジェクト計画書から抽出したプロジェクト情報にプロジェクトＩＤを付与してプロジェクト情報テーブル（図３１に例を示す。）に追加する。
【０１１４】
ステップＳ３１２において、キーワード抽出部１０２はプロジェクト情報テーブルのシステム概要を取得し、業務内容の文字列を単語に分解する。そして、キーワードの候補となる単語を、ステップＳ３１１でプロジェクト情報に付与されたプロジェクトＩＤとともに、業務キーワードテーブル（図３２に例を示す。）に追加する。
【０１１５】
ステップＳ３１３において、検索部１０３は、ステップＳ３１１でプロジェクト情報に付与されたプロジェクトＩＤに対応するキーワードを業務キーワードテーブルから取得する。次に、業務キーワードテーブルから取得したキーワードと一致するキーワードをキーワードテーブルから取得する。そして、キーワードテーブルから取得したキーワードに対応するグループＩＤをグループキーワードテーブルから取得する。そして、グループキーワードテーブルから取得したグループＩＤに対応するパッケージ名をグループパッケージ情報テーブルから取得する。そして、グループパッケージ情報テーブルから取得したパッケージ名に対応するクラス名をクラス情報テーブルから取得する。最後に、クラス情報テーブルから取得したクラス名の一覧を出力部１０４に渡す。
【０１１６】
ステップＳ３１４において、出力部１０４は、ステップＳ３１１でプロジェクト情報に付与されたプロジェクトＩＤに対応するユーザＩＤをプロジェクト情報テーブルから取得し、そのユーザＩＤに対応するメールアドレスをユーザテーブル（図３３に例を示す。）から取得する。そして、検索部１０３の検索結果を含む電子メールを作成し、ユーザテーブルから取得したメールアドレスに送信する。
【０１１７】
ステップＳ３１５において、利用予定コンポーネント情報登録部１０８は、利用予定のコンポーネント情報及び更新予定のコンポーネント情報を利用予定コンポーネントテーブル（図３４に例を示す。）に追加する。また、作成予定コンポーネント情報登録部１１０は、作成予定コンポーネント情報を利用予定コンポーネントテーブルに追加する。さらに、更新予定のコンポーネントに関しては、クラス情報テーブルの状態などを更新し、新規作成予定のコンポーネントに関しては、クラス情報テーブルにクラス情報を追加する。ここで、図６及び図７に示した利用共通コンポーネントシートにパッケージ情報を入力する欄を設けて、共通コンポーネント情報テーブルのパッケージ情報を追加又は更新してもよい。
【０１１８】
図１７のフローチャートでは、図１５のステップＳ５０４の更新処理を行う際のコンポーネント管理システム１００の動作を示した。
【０１１９】
ステップＳ５１１において、利用コンポーネント情報登録部１１２は、利用コンポーネント情報を利用実績コンポーネントテーブル（図３５に例を示す。）に追加する。
【０１２０】
ステップＳ５１２において、ファイル要求部１１６は、ユーザＩＤをプロジェクト情報テーブルから取得し、そのユーザＩＤに対応するメールアドレスをユーザテーブルから取得する。そして、所定のフォルダに関連ファイルを保存する要求を含む電子メールを作成し、ユーザテーブルから取得したメールアドレスに送信する。
【０１２１】
ステップＳ５１３において、作成コンポーネント情報登録部１１４は、作成コンポーネント情報を利用実績コンポーネントテーブルに追加する。さらに、更新したコンポーネントと新規作成したコンポーネントに関しては、クラス情報テーブルのクラス情報を更新する。ただし、新規作成する予定のなかったコンポーネントに関しては、クラス情報テーブルにクラス情報を追加する。
【０１２２】
ステップＳ５１４において、プロジェクト情報取得部１０１は、プロジェクト完了報告書から抽出した情報に基づいてプロジェクト情報テーブルのプロジェクト情報を更新する。
【０１２３】
図２１のフローチャートでは、ユーザによる共通コンポーネントのグループ検索を処理する際のコンポーネント管理システム１００の動作を示した。
【０１２４】
図示していないが、ユーザによりグループが選択される前に、出力部１０４は、グループテーブル（図３６に例を示す。）から取得されるグループ名の一覧を表示する。
【０１２５】
ステップＳ６０１において、グループ特定部１０６は、ユーザが選択したグループのグループＩＤを取得する。
【０１２６】
ステップＳ６０２において、検索部１０３は、グループ特定部１０６が取得したグループＩＤに対応するパッケージ名をグループパッケージ情報テーブルから取得する。そして、グループパッケージ情報テーブルから取得したパッケージ名に対応するクラス名をクラス情報テーブルから取得する。最後に、クラス情報テーブルから取得したクラス名の一覧を出力部１０４に渡す。
【０１２７】
なお図２２に示したコンポーネント管理データベース１５０では、利用予定コンポーネントテーブルと、利用実績コンポーネントテーブルとを別テーブルとして構成しているが、同一テーブルとして構成し、利用予定情報により登録されたコンポーネントテーブルを利用実績情報により更新するように構成しても良い。
【図面の簡単な説明】
【０１２８】
【図１】実施の形態１から３までにおけるコンポーネント管理システムの外観の一例を示す図。
【図２】実施の形態１から３までにおけるコンポーネント管理システムのハードウェア構成の一例を示す図。
【図３】実施の形態１に係るコンポーネント管理システムの構成を示すブロック図。
【図４】実施の形態１においてユーザが共通コンポーネントを検索する際の画面遷移の一例を示す図。
【図５】実施の形態１においてユーザによる共通コンポーネントのキーワード検索を処理する際のコンポーネント管理システムの動作を示すフローチャート。
【図６】実施の形態１における利用共通コンポーネントシートの入力画面（１／２）の一例を示す図。
【図７】実施の形態１における利用共通コンポーネントシートの入力画面（２／２）の一例を示す図。
【図８】実施の形態１においてプロジェクト情報とコンポーネント情報を登録する際のプロジェクト管理システムの動作を示すフローチャート。
【図９】実施の形態１においてプロジェクト情報とコンポーネント情報の登録を処理する際のコンポーネント管理システムの動作を示すフローチャート。
【図１０】図９のステップＳ３０４の登録処理を行う際のコンポーネント管理システムの動作を示すフローチャート。
【図１１】図１０のステップＳ３１１からステップＳ３１３までの処理の一例を示す図。
【図１２】実施の形態１における利用共通コンポーネント実績シートの入力画面（１／２）の一例を示す図。
【図１３】実施の形態１における利用共通コンポーネント実績シートの入力画面（２／２）の一例を示す図。
【図１４】実施の形態１においてプロジェクト情報とコンポーネント情報を更新する際のプロジェクト管理システムの動作を示すフローチャート。
【図１５】実施の形態１においてプロジェクト情報とコンポーネント情報の更新を処理する際のコンポーネント管理システムの動作を示すフローチャート。
【図１６】図１５のステップＳ５０５で送信される電子メールを表示した通知画面の一例を示す図。
【図１７】図１５のステップＳ５０４の更新処理を行う際のコンポーネント管理システム１００の動作を示すフローチャート。
【図１８】図１７のステップＳ５１２で送信される電子メールを表示した通知画面の一例を示す図。
【図１９】実施の形態２に係るコンポーネント管理システムの構成を示すブロック図。
【図２０】実施の形態２においてユーザが共通コンポーネントを検索する際の画面遷移の一例を示す図。
【図２１】実施の形態２においてユーザによる共通コンポーネントのグループ検索を処理する際のコンポーネント管理システムの動作を示すフローチャート。
【図２２】実施の形態３に係るコンポーネント管理データベースの構成の一例を示す図。
【図２３】検索キーワードテーブルの一例。
【図２４】検索条件テーブルの一例。
【図２５】キーワードテーブルの一例。
【図２６】グループキーワードテーブルの一例。
【図２７】グループパッケージ情報テーブルの一例。
【図２８】クラス情報テーブルの一例。
【図２９】検索結果テーブルの一例。
【図３０】共通コンポーネント情報テーブルの一例。
【図３１】プロジェクト情報テーブルの一例。
【図３２】業務キーワードテーブルの一例。
【図３３】ユーザテーブルの一例。
【図３４】利用予定コンポーネントテーブルの一例。
【図３５】利用実績コンポーネントテーブルの一例。
【図３６】グループテーブルの一例。
【符号の説明】
【０１２９】
５０  プロジェクト管理データベース、１００  コンポーネント管理システム、１０１  プロジェクト情報取得部、１０２  キーワード抽出部、１０３  検索部、１０４  出力部、１０５  キーワード取得部、１０６  グループ特定部、１０７  利用予定コンポーネント情報取得部、１０８  利用予定コンポーネント情報登録部、１０９  作成予定コンポーネント情報取得部、１１０  作成予定コンポーネント情報登録部、１１１  利用コンポーネント情報取得部、１１２  利用コンポーネント情報登録部、１１３  作成コンポーネント情報取得部、１１４  作成コンポーネント情報登録部、１１５  登録通知部、１１６  ファイル要求部、１５０  コンポーネント管理データベース、２０１  検索画面、２０２  検索結果画面、２０３  詳細画面、２０４，２０５  入力画面、２０６  通知画面、９０１  ＣＲＴ表示装置、９０２  Ｋ／Ｂ、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９３１  電話機、９３２  ＦＡＸ機、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ。
【図１】
2006178708.tif 000003
【図２】
2006178708.tif 000004
【図３】
2006178708.tif 000005
【図４】
2006178708.tif 000006
【図５】
2006178708.tif 000007
【図６】
2006178708.tif 000008
【図７】
2006178708.tif 000009
【図８】
2006178708.tif 000010
【図９】
2006178708.tif 000011
【図１０】
2006178708.tif 000012
【図１１】
2006178708.tif 000013
【図１２】
2006178708.tif 000014
【図１３】
2006178708.tif 000015
【図１４】
2006178708.tif 000016
【図１５】
2006178708.tif 000017
【図１６】
2006178708.tif 000018
【図１７】
2006178708.tif 000019
【図１８】
2006178708.tif 000020
【図１９】
2006178708.tif 000021
【図２０】
2006178708.tif 000022
【図２１】
2006178708.tif 000023
【図２２】
2006178708.tif 000024
【図２３】
2006178708.tif 000025
【図２４】
2006178708.tif 000026
【図２５】
2006178708.tif 000027
【図２６】
2006178708.tif 000028
【図２７】
2006178708.tif 000029
【図２８】
2006178708.tif 000030
【図２９】
2006178708.tif 000031
【図３０】
2006178708.tif 000032
【図３１】
2006178708.tif 000033
【図３２】
2006178708.tif 000034
【図３３】
2006178708.tif 000035
【図３４】
2006178708.tif 000036
【図３５】
2006178708.tif 000037
【図３６】
2006178708.tif 000038