(57)【要約】【課題】ソフトウェア管理の負担の軽減を図ること。【解決手段】所定期間内に登録された複数のソフトウェア部品の合否を示す検査結果情報の入力を受け付ける入力部３０１と、複数のソフトウェア部品のうち、入力部３０１によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する検出部３０２と、検出部３０２によって検出されたソフトウェア部品について、所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定する判定部３０３と、判定部３０３によって判定された判定結果に基づいて、少なくとも、入力部３０１によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力する出力部３０５と、を備える。【選択図】        図３
2006252488.tif 000002
【特許請求の範囲】
【請求項１】
所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報の入力を受け付ける入力手段と、
前記複数のソフトウェア部品のうち、前記入力手段によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する検出手段と、
前記検出手段によって検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定する判定手段と、
前記判定手段によって判定された判定結果に基づいて、少なくとも、前記入力手段によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力する出力手段と、
を備えることを特徴とするソフトウェア管理システム。
【請求項２】
前記判定手段によって前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更する変更手段を備え、
前記出力手段は、前記変更手段によって検査結果情報が変更された場合、前記入力手段によって入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力することを特徴とする請求項１に記載のソフトウェア管理システム。
【請求項３】
前記出力手段は、前記判定手段によって前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力することを特徴とする請求項１または２に記載のソフトウェア管理システム。
【請求項４】
所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報を入力する入力工程と、
前記複数のソフトウェア部品のうち、前記入力工程によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する検出工程と、
前記検出工程によって検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定する判定工程と、
前記判定工程によって判定された判定結果に基づいて、少なくとも、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力する出力工程と、
を含むことを特徴とするソフトウェア管理方法。
【請求項５】
前記判定工程によって前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更する変更工程を含み、
前記出力工程は、前記変更工程によって検査結果情報が変更された場合、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力することを特徴とする請求項４に記載のソフトウェア管理方法。
【請求項６】
前記出力工程は、前記判定工程によって前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力することを特徴とする請求項４または５に記載のソフトウェア管理方法。
【請求項７】
所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報を入力させる入力工程と、
前記複数のソフトウェア部品のうち、前記入力工程によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出させる検出工程と、
前記検出工程によって検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定させる判定工程と、
前記判定工程によって判定された判定結果に基づいて、少なくとも、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力させる出力工程と、
をコンピュータに実行させることを特徴とするソフトウェア管理プログラム。
【請求項８】
前記判定工程によって前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更させる変更工程をコンピュータに実行させ、
前記出力工程は、前記変更工程によって検査結果情報が変更された場合、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力させることを特徴とする請求項７に記載のソフトウェア管理プログラム。
【請求項９】
前記出力工程は、前記判定工程によって前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力させることを特徴とする請求項７または８に記載のソフトウェア管理プログラム。
【請求項１０】
請求項７〜９のいずれか一つに記載のソフトウェア管理プログラムを記録したことを特徴とするコンピュータに読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ソフトウェア部品を管理して、ソフトウェアのパッケージ化を支援するソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体に関する。
【背景技術】
【０００２】
従来より、たとえばプロダクト（製品）などのソフトウェアの提供に関しては、提供元で登録されたソフトウェア部品を編集（パッケージング）してパッケージ化をおこない、パッケージ化されたソフトウェアを提供先にダウンロードなどさせることによって提供がおこなわれている。この場合、ソフトウェアのファイル転送やファイル監視に際しては、たとえば提供元から提供先が受信するファイルの差分をみて転送制御をおこなったり（たとえば、特許文献１を参照。）、データファイルの世代管理情報マスタに基づいて、ファイルの世代監視結果から世代が異なる現世代のファイルを取得したりすることで（たとえば、特許文献２を参照。）、ソフトウェアのファイル転送やファイル監視がおこなわれている。
【０００３】
【特許文献１】特許第３２９６５７０号公報
【特許文献２】特開平１０−２４０５９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、たとえばパッケージ化されたソフトウェアは、全体で数千ファイル、数十ＧＢサイズのデータファイルとなるため、上記特許文献１の従来技術では、ソフトウェアのファイル提供時に転送時間が増加したり、ネットワークに負荷がかかったりするという問題があった。また、上記特許文献２の従来技術では、ソフトウェアのファイル管理が複雑になる場合がある。特に、ソフトウェア部品のパッケージ化編集においては、編集作業自体は編集者の手作業によるため、たとえば出荷検査で不合格になったソフトウェア部品を誤ってパッケージ化してしまう場合がある。このような場合、パッケージ化されたソフトウェアの品質に問題が発生するとともに、修正のためのアップデートなどのネットワーク上のファイル転送処理や、修正前ソフトウェアおよび修正後ソフトウェアの管理処理などの事後処理が増加してしまうという問題がある。このため、上記特許文献１や特許文献２の従来技術では、パッケージ化されたソフトウェアの品質管理の観点からは好ましい管理システムを構築することが困難であった。
【０００５】
この発明は、上述した従来技術による問題点を解消するため、信頼性の高いソフトウェア部品の管理を容易かつ効率的におこなうことができるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するため、この発明にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体は、所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報の入力を受け付け、前記複数のソフトウェア部品のうち、不合格を示す検査結果情報が入力されたソフトウェア部品を検出し、検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定し、判定された判定結果に基づいて、少なくとも、入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力することを特徴とする。
【０００７】
また、この発明にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体は、前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更し、検査結果情報が変更された場合、入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力することを特徴とする。
【０００８】
また、この発明にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体は、前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力することを特徴とする。
【０００９】
これらの発明によれば、パッケージ化が可能なソフトウェア部品の集合をユーザ（編集者）に報知することができる。また、パッケージ化をおこなってもよいタイミングをユーザ（編集者）に提供することもできる。
【発明の効果】
【００１０】
この発明にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体によれば、信頼性の高いソフトウェア部品の管理を容易かつ効率的におこなうことができるという効果を奏する。
【発明を実施するための最良の形態】
【００１１】
以下に添付図面を参照して、この発明にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体の好適な実施の形態を詳細に説明する。なお、下記の実施の形態にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体は、たとえばこの実施の形態にかかるソフトウェア管理プログラムが記録された記録媒体を備えるコンピュータシステムによって実現することができる。
【００１２】
（実施の形態）
（ソフトウェア管理システムのシステム構成）
まず、この発明の実施の形態にかかるソフトウェア管理システムのシステム構成について説明する。図１は、この発明の実施の形態にかかるソフトウェア管理システムのシステム構成の一例を示すブロック図である。
【００１３】
図１において、ソフトウェア管理システム１００は、ソフトウェア管理サーバ１０１と、クライアント１０２〜１０５とを備えて構成されている。ソフトウェア管理サーバ１０１と、各クライアント１０２〜１０５とは、ネットワーク網１０６を介して双方向通信可能に接続されている。ソフトウェア管理サーバ１０１は、たとえば複数のソフトウェア部品をパッケージ化したパッケージファイルを各クライアント１０２〜１０５に提供する提供元として機能し、各クライアント１０２〜１０５は、ソフトウェア管理サーバ１０１から提供されるパッケージファイルを使用する提供先として機能する。ここで、ソフトウェア部品とは、具体的には、たとえばプログラムやライブラリなどのハードウェアを動作させるためのものをいう。また、ソフトウェアとは、具体的には、たとえば上記ソフトウェア部品の集合であるプロダクト（製品）のことをいう。
【００１４】
（ソフトウェア管理サーバのハードウェア構成）
つぎに、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理サーバのハードウェア構成について説明する。図２は、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理サーバのハードウェア構成の一例を示すブロック図である。なお、図１における各クライアント１０２〜１０５がソフトウェア管理サーバ１０１と同様のハードウェア構成を備えていてもよい。
【００１５】
図２において、ソフトウェア管理サーバ１０１は、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、ＨＤＤ（ハードディスクドライブ）２０４と、ＨＤ（ハードディスク）２０５と、ＦＤＤ（フレキシブルディスクドライブ）２０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）２０７と、ディスプレイ２０８と、Ｉ／Ｆ（インターフェース）２０９と、キーボード２１０と、マウス２１１と、スキャナ２１２と、プリンタ２１３と、を備えて構成されている。また、各構成部は、バス２００によってそれぞれ接続されている。
【００１６】
ここで、ＣＰＵ２０１は、ソフトウェア管理サーバ１０１の全体の制御を司る。ＲＯＭ２０２は、ブートソフトウェアなどのソフトウェアを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。ＨＤＤ２０４は、ＣＰＵ２０１の制御にしたがってＨＤ２０５に対するデータのリード／ライトを制御する。ＨＤ２０５は、ＨＤＤ２０４の制御で書き込まれたデータを記憶する。
【００１７】
ＦＤＤ２０６は、ＣＰＵ２０１の制御にしたがってＦＤ２０７に対するデータのリード／ライトを制御する。ＦＤ２０７は、ＦＤＤ２０６の制御で書き込まれたデータを記憶したり、ＦＤ２０７に記憶されたデータをソフトウェア管理サーバ１０１に読み取らせたりする。
【００１８】
また、着脱可能な記録媒体として、ＦＤ２０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２０８は、たとえばＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００１９】
Ｉ／Ｆ２０９は、通信回線２１５を通じてインターネットなどのネットワーク網１０６に接続され、このネットワーク網１０６を介して各クライアント１０２〜１０５（図１参照）に接続される。そして、Ｉ／Ｆ２０９は、ネットワーク網１０６との内部インターフェースを司り、外部装置などからのデータの入出力を制御することができる。Ｉ／Ｆ２０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２０】
キーボード２１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズ変更などをおこなう。このマウス２１１は、ポインティングデバイスとして同様に機能を備えるものであれば、たとえばトラックボールやジョイスティックなどであってもよい。
【００２１】
スキャナ２１２は、画像を光学的に読み取り、ソフトウェア管理サーバ１０１内に画像データを取り込む。なお、スキャナ２１２は、ＯＣＲ機能を持たせてもよい。また、プリンタ２１３は、画像データや文書データを印刷する。プリンタ２１３には、たとえばレーザプリンタやインクジェットプリンタを採用することができる。
【００２２】
（ソフトウェア管理サーバの機能的構成）
つぎに、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理サーバの機能的構成について説明する。図３は、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理サーバの機能的構成の一例を示すブロック図である。
【００２３】
図３において、ソフトウェア管理サーバ１０１は、入力部３０１と、検出部３０２と、判定部３０３と、変更部３０４と、出力部３０５とを備え、記憶装置３０６と、入出力装置３０７とに接続されている。このソフトウェア管理サーバ１０１は、たとえば記憶装置３０６に格納されたソフトウェア管理プログラムにしたがいソフトウェア管理処理を実行するものである。
【００２４】
入力部３０１は、入出力装置３０７から、所定期間内にソフトウェア管理システム１００（図１参照、以下同じ）に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報の入力を受け付ける。ここで、所定期間とは、複数のソフトウェア部品のパッケージ化をおこなう期間のことであり、検査結果情報とは、たとえばソフトウェア部品ごとの出荷検査における合格、不合格を示す識別情報（フラグ）のことである。入力部３０１は、具体的には、たとえば図２に示したＩ／Ｆ２０９によってその機能を実現する。
【００２５】
検出部３０２は、登録された複数のソフトウェア部品のうち、入力部３０１によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する。ソフトウェア部品の検出は、たとえば不合格フラグがたてられた検査結果情報に着目し、この検査結果情報に関するソフトウェア部品を検出することによりおこなわれる。検出部３０２は、具体的には、たとえば図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤ２０５、ＦＤ２０７などの記録媒体に記録されているプログラムを、ＣＰＵ２０１に実行させることによってその機能を実現する。
【００２６】
判定部３０３は、検出部３０２によって検出されたソフトウェア部品について、所定期間の経過後にそのソフトウェア部品の修正版のソフトウェア部品がソフトウェア管理システム１００に登録されたか否かを判定する。この判定処理は、たとえば検出されたソフトウェア部品と修正版のソフトウェア部品との整合性をとり（たとえば、登録日タイムスタンプ、検査結果情報、ソフトウェア部品名、ソフトウェア部品版数などの一致／不一致をみる）、検出されたソフトウェア部品と修正版のソフトウェア部品との整合性がとれた場合に、修正版のソフトウェア部品の登録日タイムスタンプに基づいて、登録が所定期間内であるか所定期間の経過後であるかを判定することによりおこなわれる。判定部３０３は、具体的には、たとえば図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤ２０５、ＦＤ２０７などの記録媒体に記録されているプログラムを、ＣＰＵ２０１に実行させることによってその機能を実現する。
【００２７】
変更部３０４は、判定部３０３によって修正版のソフトウェア部品が所定期間の経過後にソフトウェア管理システム１００に登録されたと判定された場合、修正版のソフトウェア部品の不合格を示す検査結果情報を、合格を示す検査結果情報に変更する。変更部３０４は、具体的には、たとえば図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤ２０５、ＦＤ２０７などの記録媒体に記録されているプログラムを、ＣＰＵ２０１に実行させることによってその機能を実現する。
【００２８】
出力部３０５は、判定部３０３によって判定された判定結果に基づいて、少なくとも、入力部３０１によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力する。また、出力部３０５は、変更部３０４によって修正版のソフトウェア部品の検査結果情報が変更された場合、入力部３０１によって入力された合格を示す検査結果情報に関するソフトウェア部品と修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力する。
【００２９】
さらに、出力部３０５は、判定部３０３によって修正版のソフトウェア部品が登録されていないと判定された場合、複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力する。具体的には、たとえば図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤ２０５、ＦＤ２０７などの記録媒体に記録されているプログラムを、ＣＰＵ２０１に実行させることによってパッケージ化を許可する旨の情報を生成し、Ｉ／Ｆ２０９によって生成した情報を出力することによってその機能を実現する。
【００３０】
なお、記憶装置３０６は、具体的には、図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４、ＨＤ２０５、ＦＤＤ２０６、およびＦＤ２０７などにより構成され、入出力装置３０７は、具体的には、図２に示したキーボード２１０、マウス２１１、スキャナ２１２、およびプリンタ２１３などにより構成されている。
【００３１】
（ソフトウェア管理処理手順）
つぎに、この発明の実施の形態にかかるソフトウェア管理処理手順について説明する。図４は、この発明の実施の形態にかかるソフトウェア管理処理手順の一例を示すフローチャートである。図４において、まず、入出力装置３０７（図３参照、以下同じ）を通じてソフトウェア管理サーバ１０１（図３参照、以下同じ）の入力部３０１（図３参照、以下同じ）によって、所定期間内にソフトウェア管理システム１００（図１参照、以下同じ）に登録された複数のソフトウェア部品の合否を示す検査結果情報を入力する（ステップＳ４０１）。
【００３２】
ステップＳ４０１において、入力部３０１に検査結果情報が入力されると、検出部３０２（図３参照、以下同じ）によって、登録された複数のソフトウェア部品のうち、入力部３０１によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する（ステップＳ４０２）。ソフトウェア部品が検出されると、判定部３０３（図３参照、以下同じ）によって、検出部３０２により検出されたソフトウェア部品について、所定期間の経過後にそのソフトウェア部品の修正版のソフトウェア部品が登録されたか否かを判定する（ステップＳ４０３）。
【００３３】
このステップＳ４０３において、修正版のソフトウェア部品が登録されたと判定された場合（ステップＳ４０３：Ｙｅｓ）、変更部３０４（図３参照、以下同じ）によって、修正版のソフトウェア部品の不合格を示す検査結果情報を、合格を示す検査結果情報に変更する（ステップＳ４０４）。こうして、変更部３０４によって検査結果情報が変更されると、出力部３０５によって、入力部３０１により入力された合格を示す検査結果情報に関するソフトウェア部品と修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力し（ステップＳ４０５）、ソフトウェア管理処理が終了する。
【００３４】
一方、ステップＳ４０３において、修正版のソフトウェア部品が登録されていないと判定された場合（ステップＳ４０３：Ｎｏ）、出力部３０５（図３参照、以下同じ）によって、登録された複数のソフトウェア部品のパッケージ化を禁止する旨の情報が既に出力済みか否かを判定する（ステップＳ４０６）。パッケージ化を禁止する旨の情報が既に出力済みであると判定された場合（ステップＳ４０６：Ｙｅｓ）、ステップＳ４０３に移行して、修正版のソフトウェア部品が登録されたか否かの判定処理がおこなわれる。
【００３５】
一方、パッケージ化を禁止する旨の情報が既に出力済みでないと判定された場合（ステップＳ４０６：Ｎｏ）、出力部３０５によって、登録された複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力し（ステップＳ４０７）、ステップＳ４０３に移行して、修正版のソフトウェア部品が登録されたか否かの判定処理がおこなわれる。
【００３６】
このように、この発明の実施の形態にかかるソフトウェア管理システムによれば、所定期間内に登録された複数のソフトウェア部品のうち、検査不合格となったソフトウェア部品の修正版のソフトウェア部品が所定期間の経過後に登録された場合でも、検査合格となったソフトウェア部品と修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力することができる。これにより、複数のソフトウェア部品のパッケージ化を効率良くかつ確実におこなうことができる。このため、パッケージ化に関するソフトウェア管理を容易におこないソフトウェア管理処理の負担を軽減することができる。
【００３７】
（ソフトウェア管理システムのソフトウェア管理タイムサイクル）
つぎに、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理タイムサイクルについて説明する。図５は、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理タイムサイクルの一例を示す説明図である。
【００３８】
図５において、ソフトウェア部品５０１は、たとえば図示の登録締切日までの所定期間の登録期間において、ソフトウェア管理システム１００（図１参照、以下同じ）に登録されたプログラムである。修正版のソフトウェア部品５０２は、たとえば図示の登録締切日から出荷検査が不合格の場合の登録期間締切日までの出荷検査期間（登録期間の経過後）において、不具合修正がなされたうえでソフトウェア管理システム１００に登録されたプログラムである。
【００３９】
ソフトウェア管理システム１００では、これらソフトウェア部品５０１およびソフトウェア部品５０２にタイムスタンプファイル５０３を付与し、図示の編集期間においてパッケージングしてプロダクト（製品）のパッケージファイル５０４を作成する。作成したプロダクトのパッケージファイル５０４は圧縮処理などが施され、提供先の各クライアント１０２〜１０５（図１参照、以下同じ）に図示の提供期間において、ネットワーク網１０６（図１参照、以下同じ）を通じてダウンロードなどにより提供される。提供先の各クライアント１０２〜１０５は、ダウンロードしたプロダクトのパッケージファイル５０４を解凍処理して展開し、ソフトウェア部品５０１およびソフトウェア部品５０２をインストールなどして使用する。
【００４０】
図６は、この発明の実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理処理の全体概要の一例を示す説明図である。図６において、図示の登録日を経て複数のソフトウェア部品Ａ〜Ｆがソフトウェア管理システム１００（図１参照、以下同じ）に登録されている。ソフトウェア部品Ａ〜Ｃは、登録期間内に登録され、ソフトウェア部品Ｄ〜Ｆは、登録期間の経過後に登録されたものである。ここで、登録期間とは、具体的には、たとえば登録開始日が「２００４年９月１日」で、登録終了日が「２００４年９月３０日」と設定された期間のことをいう。
【００４１】
各ソフトウェア部品Ａ〜Ｆの登録に関する情報は、ソフトウェア管理システム１００のタイムサイクル管理テーブル７００によって管理される。図７は、この発明の実施の形態にかかるソフトウェア管理システムで用いられるタイムサイクル管理テーブルの構成の一例を示す説明図である。たとえば、ソフトウェア管理システム１００のソフトウェア管理サーバ１０１（図１参照、以下同じ）は、タイムサイクル管理テーブル７００を有している。タイムサイクル管理テーブル７００は、ソフトウェア部品名７０１と、登録日７０２と、タイムスタンプ（時刻およびプログラム容量）７０３との情報を保持している。ここで、登録日７０２は、ソフトウェア管理システム１００にソフトウェア部品Ａ〜Ｆが登録された日付を示し、タイムスタンプ７０３は、ソフトウェア部品Ａ〜Ｆが完成した時刻を示している。
【００４２】
図６に示すように、ソフトウェア管理サーバ１０１は、入力部３０１（図３参照、以下同じ）によって、各ソフトウェア部品Ａ〜Ｆの合否を示す検査結果情報８０３を入力する。検査結果情報８０３を入力したら、検出部３０２（図３参照、以下同じ）によって、検査結果情報８０３が不合格を示すソフトウェア部品を検出する。ここでは、たとえばソフトウェア部品Ｃの検査結果情報８０３は不合格（ＮＧ）を示しているため、ソフトウェア部品Ｃが検出され、検出されたソフトウェア部品Ｃは、不具合修正処理に回される。不具合修正処理に回されたソフトウェア部品Ｃの修正後の修正版のソフトウェア部品Ｃ’は、たとえば登録期間の経過後にソフトウェア管理システム１００に登録（再登録）される。
【００４３】
修正版のソフトウェア部品Ｃ’が登録されたら、ソフトウェア管理サーバ１０１の判定部３０３によって、修正版のソフトウェア部品Ｃ’が登録期間の経過後に登録されたか否かが判定される。ここでは、修正版のソフトウェア部品Ｃ’が登録期間の経過後に登録されているため、変更部３０４によって、修正版のソフトウェア部品Ｃ’の不合格を示す検査結果情報８０３が、合格を示す検査結果情報８０３に変更される。こうして修正版のソフトウェア部品Ｃ’の検査結果情報８０３が変更されると、各ソフトウェア部品Ａ〜Ｆの検査結果情報８０３などは、ソフトウェア管理システム１００のプログラムパッケージング対象管理テーブル８００によって管理される。
【００４４】
図８は、この発明の実施の形態にかかるソフトウェア管理システムで用いられるプログラムパッケージング対象管理テーブルの構成の一例を示す説明図である。たとえば、ソフトウェア管理システム１００のソフトウェア管理サーバ１０１（図１参照、以下同じ）は、プログラムパッケージング対象管理テーブル８００を有している。プログラムパッケージング対象管理テーブル８００は、ソフトウェア部品名８０１と、登録日８０２と、検査結果８０３と、版数（Ｖｅｒ．Ｎｏ．）８０４と、ソフトウェア部品パス８０５と、タイムスタンプ（時刻およびプログラム容量）８０６との情報を保持している。ここで、版数８０４は、たとえばソフトウェア部品Ａ〜Ｆのバージョン番号を示し、ソフトウェア部品パス８０５は、たとえば提供先の各クライアント１０２〜１０５（図１参照、以下同じ）におけるプログラムのインストール先フォルダを示している。
【００４５】
そして、図６に示すように、ソフトウェア管理サーバ１０１の出力部３０５は、プログラムパッケージング対象管理テーブル８００に基づいて、合格を示す検査結果情報８０３に関するソフトウェア部品Ａ，Ｂ，Ｄ，Ｅと修正版のソフトウェア部品Ｃ’とのパッケージ化を許可する旨の情報を出力する。ここでは、登録期間内のパッケージファイルＭにソフトウェア部品Ａ，Ｂ，Ｃ’が、登録期間の経過後のパッケージファイルＮにソフトウェア部品Ｄ，Ｅがそれぞれパッケージ化されるように情報が出力される。
【００４６】
すなわち、このソフトウェア管理システム１００では、タイムサイクル管理テーブル７００の情報のみならず、プログラムパッケージング管理テーブル８００の情報も利用してパッケージ化を許可する旨の情報を出力することができるため、登録日７０２，８０２に関する情報だけでパッケージ化をするか否かの判定処理がおこなわれることはない。このため、本来パッケージファイルＭに含まれるべきソフトウェア部品Ｃの修正版のソフトウェア部品Ｃ’が、登録期間の経過後に登録されたからといって、パッケージファイルＮに含まれることはなく、パッケージ化に関する各ソフトウェア部品Ａ〜Ｆの管理を簡単かつ確実におこなうことができる。
【００４７】
なお、パッケージ化に関する情報は、たとえばソフトウェア管理システム１００のパッケージングカテゴリー管理テーブルによって管理されてもよい。図９は、この発明の実施の形態にかかるソフトウェア管理システムで用いられるパッケージングカテゴリー管理テーブルの構成の一例を示す説明図である。たとえば、ソフトウェア管理システム１００のソフトウェア管理サーバ１０１（図１参照、以下同じ）は、パッケージングカテゴリー管理テーブル９００を有している。
【００４８】
パッケージングカテゴリー管理テーブル９００は、ソフトウェア部品名９０１と、パッケージカテゴリー９０２と、カテゴリー１…ｎ（９０３〜９０６）との情報を保持している。ここで、カテゴリー１（９０３）は、たとえばソフトウェア部品Ａ〜Ｆの製品型番（システム名）を示し、カテゴリー２（９０４）は、各ソフトウェア部品Ａ〜Ｆの対応ＯＳ名を示し、カテゴリー３（９０５）は、各ソフトウェア部品Ａ〜Ｆのスペック（仕様）を示している。また、カテゴリーｎ（９０６）は、その他の情報を示している。
【００４９】
このパッケージングカテゴリー管理テーブル９００を用いて、ソフトウェア管理サーバ１０１は、各カテゴリー１…ｎ（９０３〜９０６）の項目ごとにソフトウェア部品Ａ〜Ｆを分類し、パッケージ化に関する情報を出力することもできるため、パッケージファイルＭ，Ｎなどをカテゴリー項目ごとに作成させることも可能となる。また、このソフトウェア管理システム１００では、図示は省略するが、提供先の各クライアント１０２〜１０５が必要とするカテゴリーを管理する管理テーブルと、各カテゴリー１…ｎ（９０３〜９０６）とパッケージファイルＭ，Ｎとの対応を管理する管理テーブルとを備えることで、各クライアント１０２〜１０５が必要としているカテゴリーのパッケージファイルＭ，Ｎを適宜提供することができる。
【００５０】
出力部３０５によって、パッケージ化に関する情報が出力されると、図６に示すように、たとえば外部のパッケージ作成装置（図示せず）によって、パッケージファイルＭ，Ｎが作成される。このパッケージファイルＭ，Ｎには、各ソフトウェア部品Ａ〜ＦのタイムスタンプファイルＴｓが添付され含まれている。こうして作成されたパッケージファイルＭ，Ｎは、たとえばダウンロードなどによって、各クライアント１０２〜１０５に提供される。提供先の各クライアント１０２〜１０５では、パッケージファイルＭ，Ｎを展開し、パッケージファイルＭ，Ｎ内の各ソフトウェア部品Ａ〜Ｆをインストールする。各ソフトウェア部品Ａ〜Ｆをインストールした各クライアント１０２〜１０５では、パッケージファイルＭ，ＮからタイムスタンプファイルＴｓを抽出し、抽出したタイムスタンプファイルＴｓをタイムスタンプファイルＴｅとして保持している。
【００５１】
ソフトウェア管理サーバ１０１は、たとえばパッケージファイルＭ，Ｎ作成時に添付されたタイムスタンプファイルＴｓと、インストールされた各ソフトウェア部品Ａ〜ＦのタイムスタンプファイルＴｅとに基づいて、提供した各ソフトウェア部品Ａ〜Ｆが正しいか否かを判定する。また、ソフトウェア管理サーバ１０１は、これらのタイムスタンプファイルＴｓ，Ｔｅの他、タイムサイクル管理テーブル７００およびプログラムパッケージング管理テーブル８００の各情報に基づいて、各ソフトウェア部品Ａ〜Ｆの日付やプログラム容量、版数などを比較し、提供した各ソフトウェア部品Ａ〜Ｆが正しいか否かを判定する。
【００５２】
図１０は、この発明の実施の形態にかかるプログラムチェック処理手順の一例を示すフローチャートである。なお、ここでは、上述したパッケージファイルＭに基づいたプログラムチェックの場合について説明する。図１０において、ソフトウェア管理サーバ１０１（図１参照、以下同じ）は、たとえば外部のパッケージ作成装置（図示せず）によって作成されたパッケージファイルＭを入力し、入力したパッケージファイルＭを各クライアント１０２〜１０５に提供する（ステップＳ１００１）。パッケージファイルＭが提供された提供先の各クライアント１０２〜１０５では、パッケージファイルＭを展開して各ソフトウェア部品Ａ，Ｂ，Ｃ’をインストールする。
【００５３】
各ソフトウェア部品Ａ，Ｂ，Ｃ’のインストールののち、ソフトウェア管理サーバ１０１は、ネットワーク網１０６（図１参照、以下同じ）を介して、提供先の各クライアント１０２〜１０５から、タイムスタンプファイルＴｅの情報を受信する（ステップＳ１００２）。受信したタイムスタンプファイルＴｅの情報と、パッケージファイルＭに添付されたタイムスタンプファイルＴｓの情報とに基づいて、ソフトウェア管理サーバ１０１は、両者のタイムスタンプが一致するか否かを判定する（ステップＳ１００３）。
【００５４】
タイムスタンプが一致したと判定された場合（ステップＳ１００３：Ｙｅｓ）、ソフトウェア管理サーバ１０１は、同様にネットワーク網１０６を介して、提供先の各クライアント１０２〜１０５から、各ソフトウェア部品Ａ，Ｂ，Ｃ’に関する情報を受信する（ステップＳ１００４）。受信した各ソフトウェア部品Ａ，Ｂ，Ｃ’に関する情報に基づいて、ソフトウェア管理サーバ１０１は、提供されインストールされた各ソフトウェア部品Ａ，Ｂ，Ｃ’が正常か否かを判定する（ステップＳ１００５）。各ソフトウェア部品Ａ，Ｂ，Ｃ’が正常か否かの判定処理は、上述したように、各ソフトウェア部品Ａ，Ｂ，Ｃ’の版数、プログラム容量などを比較検証することなどによりおこなわれる。
【００５５】
ステップＳ１００５において、各ソフトウェア部品Ａ，Ｂ，Ｃ’が正常であると判定された場合（ステップＳ１００５：Ｙｅｓ）、出力部３０５（図３参照、以下同じ）によって、各ソフトウェア部品Ａ，Ｂ，Ｃ’が正常である旨の情報を出力し（ステップＳ１００６）、プログラムチェック処理が終了する。一方、ステップＳ１００３において、タイムスタンプが一致していないと判定された場合（ステップＳ１００３：Ｎｏ）、およびステップＳ１００５において、各ソフトウェア部品Ａ，Ｂ，Ｃ’の少なくとも一つが正常ではないと判定された場合（ステップＳ１００５：Ｎｏ）は、出力部３０５によって、エラーに関する情報を出力し（ステップＳ１００７）、プログラムチェック処理が終了する。
【００５６】
なお、このようなプログラムチェック処理で各ソフトウェア部品Ａ〜Ｆが正常である旨の情報を出力した場合（ステップＳ１００６）、チェック処理結果は、ソフトウェア管理サーバ１０１のプログラムチェック管理テーブルで管理される。図１１は、この発明の実施の形態にかかるソフトウェア管理システムで用いられるプログラムチェック結果管理テーブルの構成の一例を示す説明図である。たとえば、ソフトウェア管理システム１００のソフトウェア管理サーバ１０１（図１参照、以下同じ）は、プログラムチェック結果管理テーブル１１００を有している。プログラムチェック結果管理テーブル１１００は、ソフトウェア部品名１１０１と、タイムスタンプ（Ｔｓ）／プログラム容量１１０２と、タイムスタンプ（Ｔｅ）／プログラム容量１１０３と、タイムスタンプ一致１１０４と、プログラム容量一致１１０５との情報を保持している。
【００５７】
たとえば、ソフトウェア部品Ａに関して、タイムスタンプ（Ｔｓ）／プログラム容量１１０２と、タイムスタンプ（Ｔｅ）／プログラム容量１１０３との情報は、ともに「２００４年９月１日１０時１４分５９秒／１．５２Ｍｂｙｔｅ」を示し、タイムスタンプ一致１１０４およびプログラム容量一致１１０５は正常を示している。
【００５８】
以上説明したように、この発明の実施の形態にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体によれば、複数のソフトウェア部品のパッケージ化に関するソフトウェア管理を容易におこないソフトウェア管理の負担を軽減することができる。これにより、信頼性の高いソフトウェア部品の管理を容易かつ効率的におこなうことができるという効果を奏する。
【００５９】
なお、本実施の形態で説明したソフトウェア管理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【００６０】
（付記１）所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報の入力を受け付ける入力手段と、
前記複数のソフトウェア部品のうち、前記入力手段によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する検出手段と、
前記検出手段によって検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定する判定手段と、
前記判定手段によって判定された判定結果に基づいて、少なくとも、前記入力手段によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力する出力手段と、
を備えることを特徴とするソフトウェア管理システム。
【００６１】
（付記２）前記判定手段によって前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更する変更手段を備え、
前記出力手段は、前記変更手段によって検査結果情報が変更された場合、前記入力手段によって入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力することを特徴とする付記１に記載のソフトウェア管理システム。
【００６２】
（付記３）前記出力手段は、前記判定手段によって前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力することを特徴とする付記１または２に記載のソフトウェア管理システム。
【００６３】
（付記４）前記出力手段は、前記ソフトウェア部品と前記修正版のソフトウェア部品とを所定のカテゴリーに分類し、当該カテゴリーごとにパッケージ化を許可する旨の情報を出力することを特徴とする付記２または３に記載のソフトウェア管理システム。
【００６４】
（付記５）所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報を入力する入力工程と、
前記複数のソフトウェア部品のうち、前記入力工程によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出する検出工程と、
前記検出工程によって検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定する判定工程と、
前記判定工程によって判定された判定結果に基づいて、少なくとも、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力する出力工程と、
を含むことを特徴とするソフトウェア管理方法。
【００６５】
（付記６）前記判定工程によって前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更する変更工程を含み、
前記出力工程は、前記変更工程によって検査結果情報が変更された場合、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力することを特徴とする付記５に記載のソフトウェア管理方法。
【００６６】
（付記７）前記出力工程は、前記判定工程によって前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力することを特徴とする付記５または６に記載のソフトウェア管理方法。
【００６７】
（付記８）前記出力工程は、前記ソフトウェア部品と前記修正版のソフトウェア部品とを所定のカテゴリーに分類し、当該カテゴリーごとにパッケージ化を許可する旨の情報を出力することを特徴とする付記６または７に記載のソフトウェア管理方法。
【００６８】
（付記９）所定期間内に登録された複数のソフトウェア部品に関する検査の合否を示す検査結果情報を入力させる入力工程と、
前記複数のソフトウェア部品のうち、前記入力工程によって不合格を示す検査結果情報が入力されたソフトウェア部品を検出させる検出工程と、
前記検出工程によって検出されたソフトウェア部品について、前記所定期間の経過後に修正版のソフトウェア部品が登録されたか否かを判定させる判定工程と、
前記判定工程によって判定された判定結果に基づいて、少なくとも、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品のパッケージ化を許可する旨の情報を出力させる出力工程と、
をコンピュータに実行させることを特徴とするソフトウェア管理プログラム。
【００６９】
（付記１０）前記判定工程によって前記修正版のソフトウェア部品が登録されたと判定された場合、前記不合格を示す検査結果情報を、合格を示す検査結果情報に変更させる変更工程をコンピュータに実行させ、
前記出力工程は、前記変更工程によって検査結果情報が変更された場合、前記入力工程によって入力された合格を示す検査結果情報に関するソフトウェア部品と前記修正版のソフトウェア部品とのパッケージ化を許可する旨の情報を出力させることを特徴とする付記９に記載のソフトウェア管理プログラム。
【００７０】
（付記１１）前記出力工程は、前記判定工程によって前記修正版のソフトウェア部品が登録されていないと判定された場合、前記複数のソフトウェア部品のパッケージ化を禁止する旨の情報を出力させることを特徴とする付記９または１０に記載のソフトウェア管理プログラム。
【００７１】
（付記１２）前記出力工程は、前記ソフトウェア部品と前記修正版のソフトウェア部品とを所定のカテゴリーに分類し、当該カテゴリーごとにパッケージ化を許可する旨の情報を出力させることを特徴とする付記１０または１１に記載のソフトウェア管理プログラム。
【００７２】
（付記１３）付記９〜１２のいずれか一つに記載のソフトウェア管理プログラムを記録したことを特徴とするコンピュータに読み取り可能な記録媒体。
【産業上の利用可能性】
【００７３】
以上のように、本発明にかかるソフトウェア管理システム、ソフトウェア管理方法、ソフトウェア管理プログラム、および記録媒体は、ソフトウェア管理に有用であり、特に、複数のソフトウェア部品のパッケージングの支援に適している。
【図面の簡単な説明】
【００７４】
【図１】実施の形態にかかるソフトウェア管理システムのシステム構成の一例を示すブロック図である。
【図２】実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理サーバのハードウェア構成の一例を示すブロック図である。
【図３】実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理サーバの機能的構成の一例を示すブロック図である。
【図４】実施の形態にかかるソフトウェア管理処理手順の一例を示すフローチャートである。
【図５】実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理タイムサイクルの一例を示す説明図である。
【図６】実施の形態にかかるソフトウェア管理システムにおけるソフトウェア管理処理の全体概要の一例を示す説明図である。
【図７】実施の形態にかかるソフトウェア管理システムで用いられるタイムサイクル管理テーブルの構成の一例を示す説明図である。
【図８】実施の形態にかかるソフトウェア管理システムで用いられるプログラムパッケージング対象管理テーブルの構成の一例を示す説明図である。
【図９】実施の形態にかかるソフトウェア管理システムで用いられるパッケージングカテゴリー管理テーブルの構成の一例を示す説明図である。
【図１０】実施の形態にかかるプログラムチェック処理手順の一例を示すフローチャートである。
【図１１】実施の形態にかかるソフトウェア管理システムで用いられるプログラムチェック結果管理テーブルの構成の一例を示す説明図である。
【符号の説明】
【００７５】
１００  ソフトウェア管理システム
１０１  ソフトウェア管理サーバ
１０２〜１０５  クライアント
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  ＨＤＤ
２０５  ＨＤ
２０６  ＦＤＤ
２０７  ＦＤ
３０１  入力部
３０２  検出部
３０３  判定部
３０４  変更部
３０５  出力部
３０６  記憶装置
３０７  入出力装置
【図１】
2006252488.tif 000003
【図２】
2006252488.tif 000004
【図３】
2006252488.tif 000005
【図４】
2006252488.tif 000006
【図５】
2006252488.tif 000007
【図６】
2006252488.tif 000008
【図７】
2006252488.tif 000009
【図８】
2006252488.tif 000010
【図９】
2006252488.tif 000011
【図１０】
2006252488.tif 000012
【図１１】
2006252488.tif 000013