(57)【特許請求の範囲】
【請求項１】
ネットワークに接続された分散機上のプログラムを更新するときにそのプログラム更新に伴って関連する他プログラムを抽出して同時に更新できるようにするためのバージョン管理装置を備えた分散システムであって、
各プログラム毎に、当該プログラムを識別するためのプログラムＩＤと、当該プログラムのバージョンと、当該プログラムの初期インストール時あるいはいずれかのプログラム更新時に当該プログラムがインストールされた時にそのインストール作業に対して付与される固有の値を持つ変更ＩＤとを少なくとも有するプログラム履歴管理ファイルと、
更新しようとする新バージョンのプログラムが新プログラムとして与えられたときに、当該新プログラムと同一プログラムＩＤをもち且つ分散機上で使用中の現用プログラムとその現用バージョンとをネットワーク経由で取得する現用プログラム取得手段と、
１つのプログラムの第１及び第２バージョンが与えられたときに、もし第１バージョンの方が第２バージョンより大きいときは何もせず、もし第１バージョンの方が第２バージョンより小さいときは、第１バージョンより大きく第１バージョンもしくはそれ以下のバージョンをもつ当該プログラムの各々の前記変更ＩＤと等しい変更ＩＤをもつ他プログラムを前記プログラム履歴管理ファイルから検出してインストール対象プログラムとする関連プログラム抽出手段と、
第１回目の抽出処理として、前記現用プログラム取得手段により取得された現用バージョンを前記第１バージョンとし、前記新バージョンを前記第２バージョンとして前記関連プログラム抽出手段によりインストール対象プログラムを抽出し、第２回目以降の抽出処理においては、前回の抽出処理によって抽出されたインストール対象プログラムの各々に対し、同一プログラムＩＤをもつプログラムを前記現用プログラム抽出手段により取得してその現用プログラムのバージョンを前記第１のバージョンとし、前記抽出されたインストール対象プログラムのバージョンを前記第２バージョンとして前記関連プログラム抽出手段により新にインストール対象プログラムを抽出する、という処理をインストール対象プログラムが新たに抽出されなくなるまで繰り返すように制御する制御手段と、
を前記バージョン管理装置に設けたことを特徴とする分散システム。
【請求項２】
請求項１の分散システムにおいて、分散機の各々に、
前記バージョン管理装置の現用プログラム取得手段が現用プログラムとその現用バージョンを取得したときに送信した現用プログラムを格納する現用ファイルと、
その送信した現用ファイルを更新するためのインストール対象プログラムが送信されてきたときに前記現用ファイルのプログラムを実行形式ファイルに変換し、これと当該分散機で現用されている実行形式ファイルとを比較する比較手段と、
この手段による比較結果が一致したとき、更新のためのインストール対象プログラムのインストールを実行するように制御する制御手段と、
を設けたことを特徴とする分散システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、分散システムの計算機へバージョンアップしたプログラムをインストールする時に、関連プログラムを容易に抽出できるようにするためのバージョン管理装置を備えた分散システムに関わるものである。
【０００２】
【従来の技術】
大規模な分散システムは、分散機をグループ分けし、分散機グループ単位に開発が行われている。１つの分散機グループの開発においても、各分散機単位に開発し、開発が終わって本番開始を迎え、本番開始後に次の分散機の開発を行い本番稼動させる。これらを繰り返し大規模な分散システムが構築されていく。
このように段階的に構築していく分散システムにおいて、分散機及び分散機グループの開発が進むとともに、不良対応、機能改善、仕様変更等に伴うプログラムの改善が行われ、プログラムは進化する。
【０００３】
分散機（計算機）のプログラムが次々と更新される場合には、それらのバージョンの管理が不可欠となる。即ち、プログラムの各々にシーケンシャルなバージョンを付加し、変更内容とともに世代管理を行っている。そしてプログラムが変更され、バージョンが上がったタイミング、または、数バージョン上がったタイミングで、計算機へインストールを実施し、除々にバージョンの最新化を行う。
【０００４】
このようなプログラムのバージョン管理に基づくインストールを、人手の作業と判断のみで行うこともできるが、システムが大規模になると作業も容易でなく、判断ミスも生じる。特に大規模なプラント制御等の分散システムにおいては、１度本番稼動すると、次の開発まで改造禁止、すなわち、現状バージョン維持とされ、分散システム内の他計算機用のプログラム開発も含めてある程度まとまった開発が終了した時点にインストールが行われるが、この場合には１つのプログラムに対する度重なるバージョン更新を伴うことが多い。そうするとバージョンの開きが大きくなり全てのプログラム最新版までバージョンアップせざるを得ない。ところが、これではバージョンアップに関わる工数及び費用が莫大となってしまう。また、高いバージョンの該当プログラムだけをインストールしようにも、該当プログラムに関連するプログラムを選択するのに、インストール管理者と開発担当者で手作業で実施しているため、バージョンがあまりにかけ離れると、選択もれによる機能劣化のリスクも増大する。
【０００５】
このような問題に対処する技術としては、例えば特開平１１−３０５９９９号に、各プログラムに付けられたバージョン情報を含む履歴管理情報を用いて、インストールを制御するシステムが開示されている。また、特開平１１−１３４１７８号には、あるアプリケーションプログラムの更新時に、当該プログラムだけでなくそのプログラムに関連するプログラムのバージョン情報も用意しておき、インストール時に関連プログラムの更新も容易に行えるようにする技術が開示されている。
【０００６】
【発明が解決しようとする課題】
前記した特開平１１−３０５９９９号の技術では、あるプログラムの更新にあたって、そのプログラムに関連するプログラムについては考慮されていない。また特開平１１−１３４１７８号の技術では、関連プログラムを考慮しているが、更新プログラム作成者が関連プログラムとそのバージョンを予め調べて依存関係情報を作成しておかねばならず、特に大規模分散システムの開発者は互いの連携作業を要するなど、大きな負担は避けられない。
【０００７】
本発明の目的は、段階的に構築される分散システムの計算機にインストールされているプログラムと同一名称でバージョンが異なるプログラムをインストールしようとするとき、その新たにインストールするプログラムと関連したプログラムを自動的にもれなく抽出し、正しいバージョンでインストールを正確にかつ効率よく行えるようにするための、プログラムのバージョン管理装置を備えた分散システムを提供することにある。
【０００８】
【課題を解決するための手段】
本発明は、ネットワークに接続された分散機上のプログラムを更新するときにそのプログラム更新に伴って関連する他プログラムを抽出して同時に更新できるようにするためのバージョン管理装置を備えた分散システムであって、
各プログラム毎に、当該プログラムを識別するためのプログラムＩＤと、当該プログラムのバージョンと、当該プログラムの初期インストール時あるいはいずれかのプログラム更新時に当該プログラムがインストールされた時にそのインストール作業に対して付与される固有の値を持つ変更ＩＤとを少なくとも有するプログラム履歴管理ファイルと、
更新しようとする新バージョンのプログラムが新プログラムとして与えられたときに、当該新プログラムと同一プログラムＩＤをもち且つ分散機上で使用中の現用プログラムとその現用バージョンとをネットワーク経由で取得する現用プログラム取得手段と、
１つのプログラムの第１及び第２バージョンが与えられたときに、もし第１バージョンの方が第２バージョンより大きいときは何もせず、もし第１バージョンの方が第２バージョンより小さいときは、第１バージョンより大きく第１バージョンもしくはそれ以下のバージョンをもつ当該プログラムの各々の前記変更ＩＤと等しい変更ＩＤをもつ他プログラムを前記プログラム履歴管理ファイルから検出してインストール対象プログラムとする関連プログラム抽出手段と、
第１回目の抽出処理として、前記現用プログラム取得手段により取得された現用バージョンを前記第１バージョンとし、前記新バージョンを前記第２バージョンとして前記関連プログラム抽出手段によりインストール対象プログラムを抽出し、第２回目以降の抽出処理においては、前回の抽出処理によって抽出されたインストール対象プログラムの各々に対し、同一プログラムＩＤをもつプログラムを前記現用プログラム抽出手段により取得してその現用プログラムのバージョンを前記第１のバージョンとし、前記抽出されたインストール対象プログラムのバージョンを前記第２バージョンとして前記関連プログラム抽出手段により新にインストール対象プログラムを抽出する、という処理をインストール対象プログラムが新たに抽出されなくなるまで繰り返すように制御する制御手段と、
を前記バージョン管理装置に設けたことを特徴とする分散システムを開示する。
【０００９】
更に本発明は、前記の分散システムにおいて、分散機の各々に、
前記バージョン管理装置の現用プログラム取得手段が現用プログラムとその現用バージョンを取得したときに送信した現用プログラムを格納する現用ファイルと、
その送信した現用ファイルを更新するためのインストール対象プログラムが送信されてきたときに前記現用ファイルのプログラムを実行形式ファイルに変換し、これと当該分散機で現用されている実行形式ファイルとを比較する比較手段と、
この手段による比較結果が一致したとき、更新のためのインストール対象プログラムのインストールを実行するように制御する制御手段と、
を設けたことを特徴とする分散システムを開示する。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態について図面により説明する。
図１は本発明が適用されると分散処理システムの全体構成を示すブロック図である。図１において、開発系ネットワーク３には、プログラムを開発するための開発機２、２…と、プログラムを管理するためのバージョン管理装置１が接続されており、開発系ネットワーク３を経由してプログラムの取り出し、改修、登録を行う。基幹ネットワーク４には、段階的に構築する分散機グループのネットワーク５、５…が接続され、各分散機グループのネットワークには分散機６、６…が接続されている。これらの分散機は、それぞれが接続されている分散機グループネットワーク及び基幹ネットワークを経由し、開発系ネットワーク３に接続されるバージョン管理装置１と相互に情報のやりとりを行う。
【００１１】
図１は、本発明になるバージョン管理装置の構成例を示すブロック図で、開発系ネットワーク３と入出力機構１０６を介して接続されている。また、端末装置１０７も入出力機構１０６を介して接続されている。開発機２からのプログラム開発に関する情報が入出力機構１０６から入力されると、これはプログラム管理機能１０４にて処理され、プログラム履歴管理ファイル１０１を参照して開発者の改修するベースとなるバージョンのプログラムをプログラムソース蓄積ファイル１０２から取り出し、入出力機構１０６、ネットワーク３経由で開発機へ送信する。開発者が改修完了後、前記と同様にネットワーク３及び入出力機構１０６経由で改修プログラムを送ってくると、プログラム管理機能１０４は更新を判断し、改修プログラムのバージョンを１つアップして、プログラム履歴管理ファイル１０１を更新するとともに、改修されたソースプログラムをプログラムソース蓄積ファイル１０２に登録する。
【００１２】
インストール管理者が端末装置１０７から、今回インストールを予定するプログラムとプログラムのバージョンを入力すると、このデータは入出力制御機構１０６を経由してインストール対象抽出機能１０３へ入力される。インストール対象抽出機能１０３は、このデータを受け取ると、プログラム履歴管理ファイル１０１から、今回インストール予定のプログラムのバージョンと、インストール対象の分散機で実際に稼動している対応プログラムのバージョン（ネットワーク３及び入出力制御機構１０６を経由して取得する）とを元にして、関連する全てのプログラムの中でインストールに必要なプログラムと所定のバージョンを抽出し、その中のインストール対象プログラムはインストール対象プログラム蓄積ファイル１０５に登録される。この登録結果は、入出力制御機構１０６を経由して端末装置１０７に表示される。１つの分散機へのインストール対象プログラムが全て抽出され、蓄積ファイル１０５に蓄積されると、インストールが可能になる。さらに前記と同時に、蓄積ファイル１０５へは、今回インストール予定の、抽出した全てのプログラムの現在稼動中バージョンのプログラムも蓄積される。
【００１３】
図３は、分散機側のインストール管理に関する機能構成例を示すもので、ネットワーク５との情報のやり取りは入出力機構３０１を介して行われる。図１のインストール対象抽出機能１０３で分散機のプログラムバージョン取得処理が実行されると、現在稼動中バージョン編集機能３０２が実行され、実行形式ライブラリ３０６に登録されているところの全てのプログラムの名称と各々のプログラムバージョンが取り出されて電文に編集され、ネットワーク経由でバージョン管理装置１に送信される。
【００１４】
インストール管理者が、端末装置１０７を使用して、インストール対象プログラム蓄積ファイル１０５に蓄積されたプログラムを分散機に配信すると、本情報は、ネットワーク５、入出力機構３０１を介して分散機６へ入力され、プログラム判定機能３０３により、入力されたプログラムが現在稼動中のプログラムと判定するとその入力プログラムを今回インストール対象となっている現在稼働中プログラム受信ファイル３０５に蓄積し、入力されたプログラムが今回インストール対象のプログラムと判定するとその入力プログラムを今回インストール対象プログラム受信ファイル３０４に蓄積する。
【００１５】
バージョン管理装置１からのプログラム配信が完了したことを判定機能３０３で判定すると、現在稼動中プログラム受信ファイル３０５に蓄積されたプログラムを実行形式プログラム作成機能３０８に送り、ここで実行形式プログラムを作成し、実行形式になったプログラムを比較用実行形式ライブラリ３０７に登録する。全て登録が完了すると、現在稼動している実行形式ライブラリ３０６に登録されているプログラムと比較用実行形式ライブラリ３０７に登録した実行形式プログラムとを比較判断機能３０９で比較し、全て比較して等しいと判断すると、ファイル３０４に蓄積された全ての今回インストール対象プログラムを実行形式プログラム作成機能により実行形式とし、実行形式ライブラリ３０６に登録する。さらに今回インストールしたプログラムのバージョンを実行形式ライブラリ３０６に登録したプログラムとともに記憶させる。そしてこれら実行形式としたプログラムのインストールが正常に完了すると、比較判断機能３０９は、インストール管理者へ正常にインストールが終了したことをネットワーク経由で知らせる。また、２つのライブラリ３０６、３０７の実行形式プログラムの比較の結果、１つでも等しくないと判断すると、インストールが失敗したことをインストール管理者に知らせる。さらに比較判断機能３０９は、実行形式プログラム作成機能３０８からプログラムを実行形式ライブラリ３０６へ登録するときにそれが正常に登録されたかをチェックし、異常判断を下すと、先に作成した比較用実行形式ライブラリ３０７の対応プログラムを異常となった実行形式プログラムに置き換えて再登録する。このときはここでインストール作業を打ち切り、インストールが失敗したことをインストール管理者に知らせる。
【００１６】
図４は図１、図３の処理のときに用いる各データのフォーマットである。同図（ａ）は、分散機６で現在稼動しているプログラムのバージョンをバージョン管理装置１に通知するデータのフォーマットで、どの分散機の情報なのかを示す計算機ＩＤ４０１と、プログラムＩＤ４０２と、分散機に登録され稼動中プログラムのバージョン４０３から成っている。計算機ＩＤ４０１は、例えば分散機の装置アドレスでもよい。図４（ｂ）は、プログラム履歴管理ファイル１０１に格納される履歴情報のフォーマットで、プログラムＩＤ４１１、プログラムのバージョン４１２、当該プログラムが格納されているソース蓄積ファイル１０２上のアドレス４１４の他に、本発明の特徴とする変更ＩＤ４１３から成っている。この変更ＩＤ４１３は、プログラム開発者があるプログラムを変更した時、同時に修正しなければならないプログラムに付加する情報であり、開発者の申告により、バージョン管理者が付けるものである。これは、あるプログラムに関連して修正したプログラムを、後になって当該開発担当者以外でも容易に識別できるための必須条件である。
【００１７】
図４（ｃ）は、図１のインストール対象抽出機能１０３にてインストール対象プログラムを抽出したデータのフォーマットで、このフォーマットでプログラムが対象分散機に配布される。このデータフォーマットは、分散機の計算機ＩＤ４２１、今回インストール対象のプログラムＩＤ４２２、今回の対象バージョン４２３、今回インストールするのか現在稼動中のバージョンであるのかを識別する改修区分４２４、及びプログラムソース４２５から成っている。
【００１８】
図４（ｄ）は、分散機に対しプログラムのインストールを実施した結果、正常にインストール作業が完了したか否かを当該分散機からバージョン管理装置１へ知らせるデータのフォーマットで、インストール作業を行って分散機の計算機ＩＤ４３１、インストールしたプログラムＩＤ４３２、そのプログラムのバージョン４３３、インストール対象プログラムか現在稼働中プログラムかの改修区分４３４、インストール結果の判定４３５から成る。インストール管理者は本情報を参照し、結果を最終判断する。結果失敗となった場合、改修区分４３５を参照することにより、今回インストール対象プログラムなのか、現在稼働中のプログラムなのかをすぐに判断できる。
【００１９】
図５は、図１のインストール対象抽出機能１０３の処理を示すフローチャートで、これにより対象プログラムをもれなく抽出することができる。処理が開始すると（ステップ５０１）、分散機から現在稼働中のプログラムＩＤとバージョンを図４（ａ）のデータフォーマットで取り込み（ステップ５０２）、今回インストールしようとするプログラムのバージョンとステップ５０２で得たバージョンとを比較する（ステップ５０３）。この結果、今回インストールするバージョンの方が小さいかまたは等しいときは当該分散機にはインストール済みと判断し、処理を終えるが、インストール予定バージョンの方が大きいと判断した場合は、今回インストール予定したプログラムＩＤをキーとしてプログラム履歴管理ファイル１０１を検索し（ステップ５０４）、そのプログラムの情報があるかを判定する（ステップ５０５）。この結果、プログラム履歴管理ファイル１０１に当該プログラムのＩＤ及びバージョンがなければ、インストール管理者に異常のあった旨を通知する（ステップ５０６）。これは、今回インストールするプログラムのバージョン入力の誤り、または、改修ソース登録を誤ったかを示すものであり、重要な処理である。
【００２０】
検索している情報があったときは（ステップ５０５でＹＥＳ）、今回インストールするプログラムの情報である計算機ＩＤ、プログラムＩＤ、バージョン、プログラムソース、及び、改修区分を図４（Ｃ）に示したフォーマットに従い編集し、インストール対象プログラム蓄積ファイル１０５に格納する（ステップ５０７）。ここでプログラムソースは、図４（ｂ）のフォーマットをもつ履歴管理ファイル１０１から検索した情報のプログラムソースアドレス４１４をもとに、プログラムソース蓄積ファイル１０２から取り出す。また、改修区分には改修バージョンであることを記憶させる。次に、現在稼働中プログラムについても図４（Ｃ）のフォーマットをもつデータを作成し、これをインストール対象蓄積ファイル１０５に格納する。このときの改修区分としては、現在稼働中バージョンであることを記憶させる（ステップ５０８）。
【００２１】
次に、今回インストールするバージョンから現在稼働中バージョンまでの関連プログラムを検索するために、まずファイル１０５に格納したプログラム情報のバージョンをメモリ上のワークエリアへ取り込み、インストールしようとするプログラムバージョンをｎ、現在稼働中のプログラムのバージョンをｎｏとする（ステップ５０９）。そしてｎ≦ｎ０となるまで、ステップ５０５で検索したプログラム情報（図４（ｂ）のフォーマットをもつ）の変更ＩＤ４１３と同一の変更ＩＤをもつ他プログラムをプログラム履歴管理ファイル１０１から全て抽出し、そのプログラムＩＤとバージョンをワークエリアに格納して、バージョンｎを１つ小さくする、という処理を繰り返す（ステップ５１０〜５１２）。これにより対象としているプログラムの、インストールバージョンから現在稼働中のよりも１大きいバージョンまでについて、同一変更ＩＤをもつ関連プログラム、即ち現在稼働中より後のバージョンの全てのプログラムバージョンと同時に改修を行ったプログラムが全て抽出できる。
【００２２】
しかし、これだけでは不十分である。処理５１１で抽出したプログラムの中には、更に他のプログラムを同時に改修している可能性があるため、ステップ５１１で抽出したプログラムの関連プログラムも全て抽出する必要がある。そのためステップ５１０〜５１２のループ処理が終わると、今回インストールするのと同じプログラム（バージョンのみが違う）を検索済みに設定し、これらを再度検索しないようにして処理効率の向上をはかる（ステップ５１３）。そして関連プログラム抽出を行い（ステップ５１４）、インストール対象プログラム抽出処理を終了する。
【００２３】
図６は、図５のステップ５１４に於る関連プログラム抽出処理の詳細を示すフローチャートで、インストール対象プログラムのいくつかのバージョンに関して同一変更ＩＤをもつプログラム情報が図５のステップ５１１でワークエリアに格納されているから、まずワークエリア上でプログラムＩＤを第１キー、バージョンを第２キーとして降順にソートする（ステップ６０１）。そしてワークエリア上に未検索データがあるかを調べ（ステップ６０２）、なければ終了するが、あればソート順にプログラムとバージョンを取り出し（ステップ６０３）、そのプログラムは検索済みかどうかを調べる（ステップ６０４）。検索済みであればステップ６０２へ戻り、検索未済みであれば、そのプログラムのバージョンと現在稼働中の同じプログラムのバージョンとを比較し（ステップ６０５）、現在稼働中バージョンと等しいか又は小さい場合は、そのプログラムを検索済みとし（ステップ６０６）、ステップ６０２へ戻るが、大きければワークエリアから取り出したプログラム情報をプログラム履歴管理ファイル１０１を検索して取り出し（ステップ６０７）、取り出したプログラム情報をインストール対象プログラム蓄積ファイル１０５に格納し（ステップ６０８）、また当該プログラムの現在稼働中プログラム情報を分散機から読み込んで同じ蓄積ファイル１０５に格納する（ステップ６０９）。次にファイル１０５に格納したプログラム情報のバージョンをメモリ上のワークエリアへ取り込み、ステップ６０７で読み込んだプログラムのバージョンをｍ、当該プログラムの現在稼働中のもののバージョンをｍ０とする（ステップ６１０）。続けてｍ≦ｍ０となるまで、ステップ６０７で検索したプログラム情報の変更ＩＤと同じ、変更ＩＤをもつ他のプログラムをプログラム履歴管理ファイル１０１から全て抽出し、そのプログラムＩＤとバージョンをワークエリアに格納してｍを１減らす、という処理を繰り返す（ステップ６１１〜６１３）。これにより、図５の処理で関連プログラムとして検出され、検索済みとされたプログラムの関連プログラムが全て検出される。こうして、ループから抜けると、当該プログラムを検査済みにし（ステップ６１４）、ステップ６０１へ戻る。以上を繰り返すことにより、今回インストールすべきプログラム及びバージョンが全て抽出され、図２のインストール対象プログラム蓄積ファイル１０５に格納される。
【００２４】
図７は、図５及び図６のフローによる処理例の説明図で、分散機１にプログラムＡのバージョンＶ１．０５をインストールしようとする場合である。同図（Ａ）は、分散機１の現在稼働中プログラムのバージョンを示し、図７（Ｂ）は、プログラム履歴管理ファイル１０１の構成例である。この場合には、プログラムＡの現在稼働中バージョンはＶ１．０２であるから、プログラム履歴管理テープル上のプログラムＡのバージョンＶ１．０５から、Ｖ１．０４及びＶ１．０３までの変更ＩＤと同一の変更ＩＤをもつ他のプログラムが、即ち変更ＩＤ１０、７、及び５をもつ他のプログラムが図５の処理で抽出される。即ち、プログラムＢのＶ１．０３（変更ＩＤ＝１０）、プログラムＣのＶ１．０３（変更ＩＤ＝７）が抽出され、ワークエリアには、これらのプログラム、そのバージョン等の情報が格納される。この時点で、プログラムＡは改修バージョンとしてＶ１．０５、現在稼働中バージョンとしてＶ１．０２が編集される。
【００２５】
次に、プログラムＢの現在稼働中バージョンはＶ１．０１であるから、図５の処理で取り出されたプログラムのバージョンはＶ１．０３なので、同プログラムＢのＶ１．０３及びＶ１．０２のもつ変更ＩＤと同一の変更ＩＤをもつ他プログラムが図６の処理で抽出されている。即ち、プログラムＢのＶ１．０３の変更ＩＤは１０であるが、これと同一の変更ＩＤは検索対象外となっているプログラムＡのみで、ここでは関連プログラムはないが、プログラムＢのＶ１．０２の変更ＩＤは６であるから、プログラムＣのＶ１．０１が抽出される。この結果、ワークエリアには、プログラムＢのＶ１．０３、プログラムＣのＶ１．０２、Ｖ１．０１が格納される。この時点で、プログラムＢは改修バージョンとしてＶ１．０３、現在稼働中バージョンとしてＶ１．０１が編集される。更に、プログラムＣについて、その現在稼働中バージョンはＶ１．００であるから、プログラム履歴管理テーブルのＶ１．０２及びＶ１．０１のプログラムＣの履歴中の変更ＩＤと同一の変更ＩＤをもつ他プログラムが図６の処理により抽出される。即ちプログラムＣのＶ１．０２の変更ＩＤは７であるがこれと同一の変更ＩＤは検索対象外となったプログラムのみである。またプログラムＣのＶ１．０１の変更ＩＤは６であるが、これと同一の変更ＩＤは検索対象外となったプログラムＢのみである。こうして新しいプログラムは本例では抽出されない。この時点で、プログラムＣは改修バージョンとしてＶ１．０２、現在稼働中バージョンとしてＶ１．００が編集される。以上のようにして、インストールに必要なプログラムのバージョンは、図７（Ｃ）に示すようになる。
【００２６】
【発明の効果】
以上説明したように、本発明によれば、インストールしようとするプログラムとインストールしようとするプログラムと関連したプログラムを自動的にもれなく抽出でき、正しいバージョンでインストールを正確にかつ効率よく行えるという効果がある。
【図面の簡単な説明】
【図１】本発明の特徴とするバージョン管理装置の構成例示すブロック図である。
【図２】本発明の分散システムの例である。
【図３】図２の装置におけるインストール管理方法の全体の流れを示す図である。
【図４】図２の装置で用いるデータのフォーマットを示す図である。
【図５】図２の装置におけるインストール対象プログラムの抽出処理を示す図である。
【図６】図２の装置における関連プログラム抽出処理のフローチャートである。
【図７】インストール対象プログラム抽出処理の例の説明図である。
【符号の説明】
１  バージョン管理装置
３  ネットワーク
１０１  プログラム履歴管理ファイル
１０２  プログラムソース蓄積ファイル
１０３  インストール対象抽出機能
１０４  プログラム管理機能
１０５  インストール対象プログラム蓄積ファイル
１０７  端末装置
【図１】
0003741581.tif 000002
【図２】
0003741581.tif 000003
【図３】
0003741581.tif 000004
【図４】
0003741581.tif 000005
【図５】
0003741581.tif 000006
【図６】
0003741581.tif 000007
【図７】
0003741581.tif 000008