JPH04248623A - ソースデータのためのバージョン管理方法および装置 - Google Patents

ソースデータのためのバージョン管理方法および装置

Info

Publication number
JPH04248623A
JPH04248623A JP3252960A JP25296091A JPH04248623A JP H04248623 A JPH04248623 A JP H04248623A JP 3252960 A JP3252960 A JP 3252960A JP 25296091 A JP25296091 A JP 25296091A JP H04248623 A JPH04248623 A JP H04248623A
Authority
JP
Japan
Prior art keywords
version
data
file
control data
sev
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP3252960A
Other languages
English (en)
Other versions
JPH07117895B2 (ja
Inventor
Richard D Foster
リチャード、デアー、フォスター
Ellory K Mccaulley
エロリー、ケント、マッコーリー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH04248623A publication Critical patent/JPH04248623A/ja
Publication of JPH07117895B2 publication Critical patent/JPH07117895B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はソフトウェア開発支援ツ
ールの分野に関する。より詳細には、本発明は単一エン
ティティーにプログラムソースデータの複数のバージョ
ンを記憶して異なるアクセス機構のバージョンに対する
変更を許可するためのシステムに関する。
【0002】
【従来の技術及び課題】バルクデータ記憶ライブラリは
一般にソフトウェア開発プロジェクト用のソースコード
あるいは出版界についてのブックバージョンのような関
係データの大型レポジトリとして機能する。
【0003】一般にこれらアプリケーションではソース
データの多数のバージョンを維持し、バージョン化技術
がデータの容易に理解される直感的な考察を与えること
が本質的に要求される。
【0004】最近のバルクデータ記憶技術は下記のよう
な種々の方法によりデータバージョンの記憶と取り出し
を可能にしている。
【0005】1)  フルコピーバージョン化はデータ
の多数のバージョンを維持する最も基本的な方法である
。 与えられた一つのソースオブジェクトの各バージョンの
多数のフルコピーの維持には大容量の記憶媒体(DAS
D)が必要であり、DASDの使用が問題でない場合に
小さいバルクデータアプリケーションにおいてのみ一般
に適用可能である。
【0006】2)  デルタバージョン化は一つの共通
のベースに対し多数の変更をなすことを可能にすると共
にDASDのより効率のよい利用を可能にする。デルタ
バージョン化は一般に一つの与えられたベースバージョ
ンに対する変化(デルタ)のみを表わす多数の小さいフ
ァイルの作成により行われる。しかしながらデルタバー
ジョン化では夫々の与えられるバージョンをそれをつく
る潜在的に多数の複数ファイルからはじめに作成し、そ
の後それを再構成するための固有のマージプロセスを使
用する必要がある。更に、これら複数ファイル間の従属
関係は別の制御ファイル(これはデータの一つのバージ
ョンを記憶させたりとり出したりすべき時毎に別途アク
セスしなくてはならない)内に一般に維持される。デル
タファイルはまた変化されるべきラインを固有に識別す
るための何らかの外部機構を必要とする。基本的に二種
のデルタスキームがある。すなわち、フルソースコピー
が最も古いバージョンであり、デルタがより新しいバー
ジョンを表わすようなものおよびフルソースコピーが最
新のバージョンでありデルタがより古いバージョンであ
るものである。前者の形式を“順”デルタ、後者を“逆
”デルタと呼ぶ。
【0007】3)  いくつかのバージケョン化スキー
ムが開発されており、それらはマージオペレーションに
用いることの出来る各ラインを固有に識別するために一
つのファイル内の各レコードにライン識別子を付加する
ものである。しかしながら、この方法の実行にはマージ
制御情報をつくり維持する多数の別ファイル(各バージ
ョンに1個ずつ)をつくり維持しなければならない。そ
うしないとバージョン従属性はレコードが可能でなくな
り、あるいは追跡が可能でなくなる。
【0008】今日の情報処理アプリケーションは大いに
拡張されたバルクデーダバージョン制御能力を、そのデ
ータの効率よく利用する拡張能力と共に必要とする。
【0009】これら技術によりアクセスされるべきキー
エリアは次の通りである:a)  ソースデータの複数
バージョンを同時にアクセスし、制御し、そして変更す
る能力。
【0010】b)  ソースに対する増分的変化のヒス
トリを維持し、それら変化が生じたヒストリ上の順位を
固有に識別する能力。
【0011】c)  一つの関係バージョンに対する変
化を検出し、記録し、その通知を与える能力。
【0012】d)  制御データおよびソースデータ、
並びにアプリケーションで定義されるデータをより感覚
的に制御された、効率のよい方法で維持する能力。
【0013】e)  多量のデータ記憶要求を容易にす
る際に外部記憶機構(DASD)の使用を最少にする能
力。
【0014】
【課題を解決するための手段】本発明は単一エンティテ
ィーバージョン化(SEV)と呼ぶ新規なバルクデータ
記憶技術を提供するものである。
【0015】固有の制御構造を用いることによりSEV
は単一エンティティーのコンファイン内のソースデータ
の複数のバージョンの記憶を効率よく可能にする。SE
Vはこれを完全なカプセルの形でソースと組合される固
有のバージョン識別と制御データの発生と維持により達
成する。
【0016】本発明の目的は特定の現存するバージョン
から新しいソースバージョンの導出を可能にすると共に
従属性(または関係)バージョンの識別および記録表記
法をサポートすることである。
【0017】本発明の他の目的は変化が生じたヒストリ
的順で識別される増分的ソース変化のアクティビティの
完全なヒストリを与えることである。
【0018】本発明の他の目的はバルクデータの従属性
(または関係)バージョンを識別するための手段を提供
することである。
【0019】本発明の他の目的は基礎の、あるいは関係
のバージョン変化を検出し、記録し、その通知を与える
能力を提供することである。
【0020】本発明の更に他の目的は任意の特定された
バージョンレベルでエンティティー内にアプリケーショ
ン定義データを記録する能力を与えることである。
【0021】本発明の他の目的はソースデータエンティ
ティー内の特定されたバージョンレベルへの逐次化され
たアクセスを与えることである。
【0022】
【実施例】オペレーションの観点から、SEVは使用ア
プリケーション“内”となるように設計される。好適な
実施例ではSEV機能(SEV)は内部プログラム呼出
しを介してその使用アプリケーションによりとり出され
る。次の呼出し可能な機能は上記のキー機能を行う。
【0023】a)  抽出。一つのSEVファイルから
一つの特定されたバージョンを抽出し、それを表示ファ
イルに置く(この表示ファイルからそれを編集しうる)
【0024】そしてオプションとして、一つのSEVフ
ァイルから選ばれたユーザ(アプリケーション定義)デ
ータを抽出し、それを一つの特定された受信ファイルに
置く。
【0025】b)  記憶。前レベルファイルに対し変
更されたファイルを比較し、変化を検出し、記憶される
べき新しいSEVファイルを構成する。
【0026】そしてオプションとして、一つの特定され
たユーザファイルからとり出されたユーザデータを記憶
されるべきSEVファイルに置く。
【0027】c)  消去。SEVファイルから一つの
特定されたバージョンまたは変更レベルを消去する。
【0028】d)  BLCDリセット。一つの特定さ
れたBLCDリストエントリ(ファイルが記憶されたと
きに構成された)を削除する。
【0029】e)  LOCKON/LOCKOFF。 SEVエンティティーのVCDまたはLCD制御データ
内にSEVロックフラグのオン/オフ“状態”をセット
する。このロックフラグをSEV抽出オペレーションで
検査し、ロックフラグ“オン”のとき選択されたバージ
ョンまたはレベルを抽出せず、適正なリターンコードを
アプリケーションにもどす。
【0030】f)  PUTDATA。特定された入力
ファイルからアプリケーション定義のデータをコピーし
、それをSEVエンティティー内のECD、VCDまた
はLCD制御データエリアに記録する。
【0031】g)  GETDATA。SEVエンティ
ティーのECD、VCDまたはLCD制御データエリア
からアプリケーション定義のデータをとり出し、そのデ
ータを特定された出力ファイルに書込む。
【0032】はじめに、次の定義をこの実施例において
用いる用語に対して行う。
【0033】a)  バルクデータ、ソースデータまた
はソース。大型ファイルに一般に含まれるデータのタイ
プであり、本の内容データ、プログラムソースコード等
がそれである。
【0034】b)  導出バージョン。前のバージョン
からはじめに導出されるソースバージョン。前のバージ
ョン“にもとづく”ソースバージョンである。
【0035】c)  基本/関係バージョン。より高次
のバージョンを導出するソースデータ。
【0036】d)  制御データ。一般には他のデータ
についての処理情報の照合のためまたはそれを含めるた
めに用いられるデータエンティティー。
【0037】e)  タイムスタンプ。多くのアプリケ
ーションではタイムスタンプの使用は一般的である。こ
れは事象がそれの生じるヒストリ上のシーケンスにより
識別しうるようにその事象に“日付および/または時刻
”仕様を付加するために用いられる。
【0038】f)  呼出し/使用。アプリケーション
SEVはアプリケーションプログラムで呼出し可能な一
群の機能として動作するように設計される。SEVの機
能は一般にその機能により定義されるようにSEV出力
ファイル、データファイル、および種々の演算情報をも
どす。すべてのSEV機能は各オペレーションの完了時
に“成功/失敗”インジケータをもどす。
【0039】g)  編集済テキスト。エンドユーザ(
すなわちプログラマまたは本の編集者)により一般に作
成され、検討され、変更されるソースファイルに対する
照合。
【0040】h)  バージョン。ファイルへの反復的
な変更を一般に表わすソースファイルの版。ソースファ
イルの新しいバージョンはしばしばそのファイルの前の
バージョンから導出される。SEV内の各バージョンは
1以上の“変更レベル”(異なるタイムスタンプをもつ
バージョンのインスタンス)からなる。
【0041】i)  SEVファイル。SEVファイル
はSEV技術に組込まれた種々の機能によりつくられ維
持されるワーキングファイルである。SEVファイルは
ソースの複数のバージョンおよびそのソースについて動
作するのに必要な制御データを保持する単一エンティテ
ィーである。
【0042】SEV技術はその好適な実施例において多
数の共通なプログラミング技術を利用する。これら技術
は周知であり専門的なプログラミング界で受け入れられ
ている。
【0043】a)  入力/出力処理。標準I/O処理
がすべてのSEVの読取および書込動作について用いら
れる。これには標準I/Oエラーチェックおよび処理、
ファイルエンド(EOF)処理が含まれる。
【0044】b)  外部記憶媒体。好適な実施例では
記憶媒体として直接アクセス記憶装置(DASD)の使
用を想定している。DASDはバルク記憶(ライブラリ
)アプリケーションで用いられる共通記憶媒体である。
【0045】c)  記憶域マッピング。このプログラ
ミング技術は処理のために記憶手段に書込まれるとき外
部的に記憶されたデータを“マッピング”するために用
いられる。記憶域マッピングにより、特定のデータに定
義された変数名がタグされる。この技術はSEV制御デ
ータを照合し、一致して処理しうるようにする。
【0046】d)  アレイ処理。このプログラミング
技術は記憶域にマッピングされたデータをスキャンする
ために用いられる。SEVはバージョンポインタ、ポイ
ンタ変数リストデータ、SEV組込み機能用制御データ
等の検索のために標準アレイ処理技術を用いる。
【0047】ポインタ変数リストの概念はSEVバージ
ョン処理を容易にするキーとなる方法である。
【0048】a)  新しいソースバージョンがつくら
れる度ごとに新しいポインタ変数リストがつくられる。 夫々のリストは全体としてソースの一つの固有のバージ
ョンを構成するラインポインタ変数シーケンス(すなわ
ちライン番号)を含む。SEVポインタ変数リストはレ
ベル制御データ(LCD)内に維持される(図11参照
)。
【0049】b)  一つの新しい変更バージョンがす
でに存在するバージョン仕様内につくられると、一つの
新しいポインタ変数リストがつくられ、そのバージョン
のLCDエレメントにすでに存在するものに加えられる
。 この特徴はソースの夫々の増分的な変更レベルが保存さ
れてアクセスされうるようにそのレベルを固有に識別す
る能力を与える。
【0050】c)  SEVのキー特徴はSEVファイ
ルに記憶されたソースオブジェクトの各バージョンを固
有に識別する。各ポインタ変数リストに時間スタンプを
付すことにより、SEVは各バージョンをそれがつくら
れた順に固有に識別することが出来るようになる。
【0051】次にSEV制御ライン構成を述べる。
【0052】基本的なSEV制御ライン構造は次の三つ
の制御データエレメントからなっている。
【0053】i)  エンティティー制御データ(EC
D)。エンティティーレベルデータ、HILINE値す
なわち最高の現割当てライン番号、およびオプションと
してのアプリケーション定義データを識別する。SEV
エンティティー1つにつき1個のECDエレメントのみ
が存在する。
【0054】ii)   バージョン制御データ(VC
D)。 バージョンレベルデータ、バージョン/レベル仕様、S
EVベースレベル変化検出リスト、SEV組込み機能制
御変数、およびオプションとしてのアプリケーション定
義データを識別する。
【0055】c)  レベル制御データ(LCD)。S
EVタイムスタンプ付ポインタ変数リストおよびオプシ
ョンとしてのアプリケーション定義データを含む。LC
Dエレメント内の各タイムスタンプは特定の変更レベル
またはそのバージョンのインスタンスに対応する。
【0056】SEV“ECD”制御データ(図11の1
001)は常にソースエンティティー内の第1エレメン
トである。1つのエンティティーには1個のECD制御
データエレメントのみがある。ECDデータに続き、ソ
ースのバージョンの数により付加的な制御データエレメ
ントがある。ECDエレメントはエンティティーレベル
のSEV制御データを記録し、そのエンティティーレベ
ルにアプリケーション定義データ(すなわち全体として
そのエンティティーに適用するデータ)を記録するため
に使用される。ECDエレメントは次のものを含む。
【0057】a)  アプリケーション定義データ(1
001A) b)  このSEVエンティティー内のバージョンの数
(1001B) c)  現HILINE識別子(1001C)。
【0058】SEV“VCD”制御データ(図11の1
002)は常に一対の制御データエレメント(LCDデ
ータと結合した)の内の第1のものであって、固定バー
ジョン制御データを記録するために用いられる。VCD
エレメントもバージョンレベルのアプリケーション定義
データの記録に用いられる。VCDエレメントは次のも
のを含む。
【0059】a)  バージョン識別(1002A)b
)  アプリケーション定義データ(1002B)c)
  バージョン識別子(1002C)d)  ベース識
別子(1002D) e)  ロックフラグ(1002E) f)  BLCDエントリリスト(1002F)g) 
 次のLCDエレメント内のポインタ変数リストの数(
1002G) SEV“LCD”制御データ(図11の1003)は常
に一対の制御データエレメント(VCDデータと結合し
た)の内の第2のものであり、SEVタイムスタンプ付
ポインタ変数リストの記録に用いられる。1つのLCD
エレメントには2以上のタイムスタンプ付ポインタ変数
リストがある。これは複数の変化が一つの与えられたバ
ージョンに対しなされるとき生じる。実際のタイムスタ
ンプ付ポインタ変数リストはタイムスタンプ(1003
C)、ポインタ変数の数(1003D)およびポインタ
変数自体(1から多数のエントリまで)(1003E、
F、G)からなる。LCDエレメントは次のものを含む
【0060】a)  アプリケーション定義データ(1
003A) b)  ロックフラグ(1003B) c)  タイムスタンプ値(1003C)d)  次の
リスト内のポインタ変数の数(ここでは3個が示されて
いる)(1003D) e)  ポインタ変数1(1003E)f)  ポイン
タ変数2(1003F)g)  ポインタ変数3(10
03G)。
【0061】プログラム開発支援環境において最も重要
な因子の一つは、複数レベルの従属ソースコードを発生
し維持する際にそのソースの基本(または関係)バージ
ョンが変更されたことについての特定の知識である。想
定によれば、ソースの下位レベルへの変更は発生順序に
従ってその開発支援環境を正しく維持するためにそのソ
ースの高次レベルのバージョンへと順方向にフィットさ
れるべきものとする。この知識がないと、或る低次レベ
ルの変化(これは高次バージョンに含まれるべきもの)
が検出されず正しくない結果を生じさせる。ソースの複
数バージョンが複数の人により同時に変更されつつある
場合には、この状況は極めて制御し難いものとなる。
【0062】ベースレベル変更検出(BLCD)はSE
Vの組込み機能であって、そのソースの従属バージョン
が変更された事実を自動的に検出し記録する機能である
。バージョンが記憶されるべき時に生じるこのプロセス
に対し次の三つの基本的段階がある。
【0063】1.  そのソースの一つのバージョンが
変更されたことの決定(ファイル比較プロセス毎に)。
【0064】2.  従属バージョンの識別のためSE
V  VCD制御データの走査(ベース識別子仕様で決
定される)。
【0065】3.  各バージョンのBLCDリスト内
の変更されたバージョンの識別の記録。
【0066】より高次のレベルのバージョンへの次のア
クセスは、ベースレベルの変更が検出されたこと、およ
びどの特定バージョンが実際に変更されたかについての
自動的な通知をもたらす。この情報は呼出しアプリケー
ションにもどされる。
【0067】ベースレベル変更検出はVCD制御データ
エレメント内のバージョン識別子フィールドとベース識
別子フィールドを利用して検査されるべき従属バージョ
ンの連鎖を決定する。
【0068】(注):バージョン識別子は一つの新しい
バージョンがつくられるときに割当てられる単なる“次
”の値である。ベース識別子はその新しいバージョンが
つくられるときに特定される基本/関係バージョン識別
子をポイントする。例えば次の通りである。
【0069】   この例ではPARTAに三つのバージョン(VER
.A,VER.B,VER.C)があり、VER.Aが
変更されたとしている。第2タイムスタンプ付ポインタ
変数リスト(VER.Aの第2変更レベルを示す)に注
意されたい。
【0070】1.  第1VCD/LCD制御データ群
(VER.A)の照合。
【0071】バージョンID(A)は“01”であって
、これがこのソースの1回目の発生であることを示す。
【0072】従属性ID(B)は“00”であって、こ
のレベルが他のレベルのいずれにも従属しないことを示
す。
【0073】ベースID(B)は“00”であるから、
VER.A(C)についてのBLCD内部リストは関係
する従属性レベルのないことを示す。
【0074】2.  第2VCD/LCD制御データ群
(VER.B)の照合。
【0075】バージョンID(A)は“02”であり、
これがこのソースの2回目の発生であることを示す。
【0076】ベースID(B)は“01”であり、この
バージョンが前のバージョンID“01”にもとづくも
のであることを示す。
【0077】VER.B(C)についてのBLCDリス
トはバージョンID“01”(および適正に付加された
タイムスタンプ“TS2”)を含み、それにVER.B
が従属する。
【0078】3.  第3VCD/LCD制御データ群
(VER.C)の照合。
【0079】バージョンID(A)は“03”であり、
これがそのソースの3回目の発生であることを示す。
【0080】ベースID(B)は“02”であり、この
バージョンが前のバージョンID“02”(これはその
前のバージョンID“01”にもとづく)にもとづくこ
とを示す。
【0081】VER.C(C)についてのBLCDリス
トはバージョンID“01”(および適正に付されたタ
イムスタンプ“TS2”)を含み、それにVER.Cが
従属する(VER.Bを介して)。
【0082】(注):BLCDリストは行われた「基本
」変化の数により複数のエントリを含むことが出来る。 各バージョンIDに付加されるタイムスタンプは変化さ
れたバージョン/変更レベルに対する特定の照合を与え
る。選ばれたBLCDエントリはBLCDリセット機能
によりアプリケーションの制御によって削除しうる。一
般に、BLCDリセット機能はエンドユーザのアクショ
ン(例えば基本変化の解決)が行われた後の通知を「オ
フ」にするために用いることが出来る。ロジックフロー SEV抽出オペレーション:   SEVディスプレイエンティティービルトオペレー
ション(図1)はアプリケーションプログラムがレポジ
トリからソースエンティティーの一つのバージョンをと
り出すように命令されたとき呼出される。一般に、この
とり出されたソースは検討され、変更され、そしてレポ
ジトリにもどされる。
【0083】図1の101において、選ばれたSEVエ
ンティティー(入力ファイル)がレポジトリから読取ら
れて処理アレイにマッピングされる。102で、VCD
制御データエレメントが走査されてこの選ばれたバージ
ョンIDおよびそれに対応するポインタ変数リストを見
い出す。103でロックフラグ状態が検査され、「オン
」であれば「ロック完了状態」リターンコードが104
でセットされ、呼出しプログラムへリターンがなされ、
「オフ」であれば105で各ソースラインがSEV入力
ファイルから、そのファイルのエンド(EOF)が10
6で検出されるまで読出される。各ソースラインが読出
されると、付加ラインIDが107においてポインタ変
数リスト内の各エントリと比較される。ポイタン変数リ
スト内のエントリと照合する各ラインIDは108でデ
ィスプレイ出力ファイルに書込まれる。106において
、SEV入力ファイル内でファイルエンドとなると、ベ
ースレベル変化検出(BLCD)リストが109で検査
される。BLCDリストエントリが110で見出されれ
ば、エントリリストとBLCDリターンコードインジケ
ータが呼出しプログラムにもどされるべきものとしてセ
ットされる。この新しくつくられたディスプレイファイ
ルと、もしあればELCDリストのアドレスが適正なリ
ターンコードインジケータと共に111で呼出しプログ
ラムにもどされる。 SEV記憶オペレーション:   SEV記憶エンティティービルトオペレーション(
図2、3)はアプリケーションプログラムが変更された
ファイルをレポジトリにもどすように命令されたとき呼
出される。キーSEVアルゴリズムおよびSEVエンテ
ィティーをつくり維持するように設計された処理ロジッ
クのほとんどはこのとき実行される。
【0084】201でSEVファイルが特定のバージョ
ンについてすでに存在するかどうか、または新しいSE
Vエンティティーをつくるべきかどうかのテストがなさ
れる。これが新しいSEVエンティティーであれば、初
期値“1”が202において第1ポインタ変数として用
いられる。値“1”はADDID変数に割当てられ、そ
こでそれがソース内の各ラインのタグ付けに用いられる
。次に203においてADDID番号(#)がこのバー
ジョン用につくられた新しいタイムスタンプ付ポインタ
変数リストに置かれる。ADDID変数は204におい
て入力ファイル内の各ラインのはじめに付加される。 各ラインは205においてこの新しくつくられたSEV
出力ファイルに置かれ、呼出しプログラムにもどる。
【0085】201でのテストが、このSEVエンティ
ティーがすでに存在することを示すならば、前レベルの
バージョンが206で比較のために抽出される。この比
較はそのファイル207の前のレベルに対し記憶される
べきファイルのバージョンを比較することである。これ
らファイルが同じであれば、呼出しプログラムにもどる
。異なれば208で比較プログラムはその比較結果を比
較出力ファイルに書込む(詳細は「比較プログラム」で
述べる)。比較出力ファイルは209で読込まれて相対
レコード番号と実際に変化したラインデータをとり出す
。比較ファイルが210(図3)でエンドとならない限
り、前のレベルファイルが211で読込まれ、ライン数
の読みの順次カウントが維持される。このラインカウン
トはファイル内の相対位置の追跡を可能にする。比較プ
ログラム出力ファイルからとり出された相対レコード番
号は212において前のレベルファイルの相対レコード
番号と比較される。両者が等しくなければ、このライン
(前のレベルファイルから読出される)は変更されずS
EV出力ファイルに213で直接コピーされる。もし等
しければこのライン(前レベルファイルから読出される
)は付加または削除ラインとして比較プログラム出力に
おいて識別されるラインと照合する。
【0086】214で比較データが「削除」ラインを示
す場合には、図4に示す処理が行われる。まず301に
おいて、新しいHILINE数がECD制御データエレ
メント内のHILINE値からとり出される。HILI
NE値は常に「最後に使用された」ラインID番号を反
映する。HILINE番号は1だけ増加され、この増加
された番号がDELID変数内に置かれる。ラインID
は比較プログラムにより識別されるラインにあるとき3
02で保存される。このラインIDは前のバージョンに
あるこの削除されたラインに対する前の照合を識別し、
適正に更新する。SEV制御データ内のポインタ変数リ
ストのすべてが303で走査されて削除されたラインに
対する照合をさがす。整合ポインタ変数があれば、新D
ELID変数がそのポインタ変数リストに加えられる。 このアクションにより、処理中の「削除」ラインはすべ
ての前のバージョンにより適正に照合され続ける。DE
LID変数は次に比較プログラム出力内に識別されるソ
ースラインのはじめに付加される。DELID値は次に
305でSEV制御データ内のHILINE値に置かれ
る。複数の「削除」ラインが比較プログラム出力ファイ
ルに識別される場合には、夫々の削除ラインは固有のD
ELID値(HILINE+1)を受け、前のバージョ
ンのポインタ変数リストの同じ処理が行われる。固有の
DELID変数の付加された「削除」ソースラインは次
に306でSEV出力ファイルに置かれる(注:「削除
」ラインの処理は前のバージョンのポインタ変数リスト
の更新のみを含む。削除されたラインに対する照合は記
憶中のソースのバージョンのポインタ変数リストにはな
い。)。比較出力ファイルは次に再び読出され(図2の
209)で次の相対レコード番号と実際に変化したライ
ンデータをとり出す。
【0087】比較データ(図3の215)が「付加」ラ
インを示すなら(「削除」でない場合)、図5に示すよ
うな処理が行われる。まず401で新しいHILINE
番号(#)がECD制御データエレメント内のHILI
NE値からとり出される。このHILINE値は常に「
最後に使用された」ラインのID番号を反映する。この
HILINE番号は1だけ増加され、ADDID変数に
置かれる。次に402でこのADDID変数は処理中の
この新しいバージョンについてのポインタ変数リストに
置かれる。この値はこの記憶動作について比較プログラ
ム出力に識別されたすべての付加ラインを識別するため
に用いられる。ADDID変数は次に403で比較プロ
グラム出力内で識別されたソースラインのはじめに付加
される。この付加されたソースラインは404でSEV
出力ファイルに置かれる。この比較出力ファイルは次に
再び読込まれ(図2の209)で次の相対レコード番号
と実際に変化したラインデータをとり出す。210での
テストが比較ファイルのエンドを検出すると、前レベル
ファイル内の変化しないラインの残部が216,217
でSEV出力ファイルにコピーされる。
【0088】上記のように、ベースレベル返歌検出はす
べての従属バージョンのBLCDリスト内の変更された
ソースバージョンのバージョンIDをレコードするSE
Vの特徴である。図3に示す他の処理はBLCDに関係
する。
【0089】218で走査がVCD制御データエレメン
ト内のバージョンID/ベースIDデータ内に含まれる
バージョン従属性連鎖について行われて処理中のバージ
ョンに従属するソースバージョンを識別する。この走査
は219において、従属性連鎖のエンドとなるとき終了
する。この連鎖における220で見出された夫々の識別
される従属性バージョンについて、その従属性バージョ
ンのBLCDリスト内で処理中のバージョンのバージョ
ンIDが221でレコードされる。各バージョンについ
ての結果としてのこのときのBLCDリストは変化され
た現バージョンにより潜在的に影響されるソースの各バ
ージョンのリストを含む(注:このBLCDリストは呼
出しプログラムが一つの与えられたソースバージョンの
とり出しを要求するたびにSEV抽出プロセスで検査さ
れる。もし一つのBLCDリストが存在すれば、それが
固有のリターンコードと共に呼出しプログラムにもどさ
れる。この情報は基本の(または関係の)バージョン変
化を呼出しプログラムに知らせる役割をもつ。)。最後
に付加されたADDIDまたはDELID値(これら二
つの値の内の大きい方)がECD制御データエレメント
内のHILINE値に置かれ(図2の222)、以降の
処理が次のHILINE値を利用することになる。HI
LINE値の処理が完了する時点222ですべての必要
な制御データは処理されており、すべてのソースライン
はSEV出力ファイルに適正な順に置かれている。この
SEV出力フィイルのアドレスは呼出しプログラムにも
どされる。
【0090】上述したBLCD方法はSEV  VCD
制御データエレメント内に保持されるBLCDリストを
構成する。このBLCD処理はSEV  STOREプ
ロセス内の部分機能として実行される。
【0091】他の方法はSTOREプロセスで部分的に
行うのではなく、SEVEXTRACTプロセスの部分
機能としてBLCD処理全体を開始するものである。こ
の方法は次のように行われる:i)  VCD制御デー
タエレメント内のBLCDエントリリストがバージョン
/レベル従属性リストで置換えられる点を除き、SEV
構成とあまり変わらない。各従属性リストエントリはバ
ージョンIDとそれに対応する変更レベルタイムスタン
プとからなる。バージョン/レベル従属性エントリは新
しいバージョンが特定されるときにSEV  STOR
Eオペレーションの部分として一つのバージョンが記憶
されるたびに従属性リスト内に置かれる。このエントリ
は特定のバージョンとその新しいバージョンを導出させ
る変更レベル(そのタイムスタンプを介して)を識別す
る。更に、エントリは従属性仕様コマンドを介して入力
される。
【0092】ii)   EXTRACTオペレーショ
ンの部分としてSEV処理は抽出されつつあるバージョ
ンのバージョン従属性リストからとり出される各バージ
ョン/レベル従属性エントリのタイムスタンプ値を比較
し、このタイムスタンプ値を適正な基本または関係バー
ジョンにある各変更レベルのタイムスタンプ値と比較す
る。これら基本または関係バージョンは抽出されたバー
ジョンの従属性リストで識別されるバージョン(それに
上記抽出されたバージョンが従属する)である。
【0093】iii)  比較されるバージョン/レベ
ルのタイムスタンプより「高い」適正なバージョン/レ
ベルのタイムスタンプはその基本または関係バージョン
が抽出されるバージョンの最後のアクセス以来変化され
たことを示す。夫々の識別された、変化したバージョン
/レベルは使用アプリケーションに使用可能なリストに
組入られる。
【0094】iv)  前の実施例と同様に、基本の変
化したバージョンが識別されると、自動BLCD通知が
使用アプリケーションにもどされ、その変化したバージ
ョンリストがアクセスされる。
【0095】v)  BLCDリセットオペレーション
は特定されたバージョン/レベル従属性エントリを削除
するか、あるいはより高いタイムスタンプで特定された
エントリを更新することにより行われる。エントリの削
除はそのバージョンを適正基本バージョンとしては識別
され得ないようにする。エントリをより高い(または最
高)の基本変更レベルのタイムスタンプに等しいタイム
スンタプで更新する場合には従属性エントリは維持され
つづけるという効果があるが、比較オペレーションは「
将来」の基本変化を識別するためにのみリセットされる
。 比較プロセス:   前述のように、SEVは変更されたファイル(記憶
中の更新されたファイル)をそのファイルの元のバージ
ョンと比較するために標準的比較プロセスを利用する。 この比較プロセスの唯一の要件はその出力が「差」ファ
イルを含むことである。
【0096】この比較の目的は「付加」されまたは「削
除」されているラインの形の2つのファイルの間の差を
識別することである。この比較プロセスはそのファイル
内の各ラインの位置を識別するために相対ライン番号と
呼ぶ基準値を割当てる。付加され、削除されたライン(
そして夫々の番号)はそのファイル内のそれらの位置に
対して識別される。この差情報は比較出力ファイルに置
かれる。
【0097】この例では比較出力ファイル内の相対ライ
ン番号は前のレベル(マージ)ファイルを参照する。そ
れ故プロセスが比較出力ファイルと前のレベルファイル
をアクセスして新しいマージドファイルをつくる。変化
のないラインは前レベルファイルからコピーされ識別さ
れた、付加/削除ラインが適正な順で新しいファイルに
組入れられる。サンプル比較プログラム出力     
   マージファイル:FILE.A        
    ターゲットファイル:FILE.B     
 Rel  Line#    Dels#     
   Adds#C      000005    
                      000
002LINEA−このラインは付加済 LINEB−このラインは付加済 C      000014        0000
01LINEC−このラインは削除済 C      000055        0000
01      000002LINEX−このライン
は削除済 LINEY−このラインは付加済 LINEZ−このラインは付加済 この例は次の事を示す: ファイル内のライン番号“000005”において2ラ
インが付加された(LINEAおよびLINEB)。
【0098】ファイル内のライン番号“000014”
において1ラインが削除された(LINEC)。
【0099】ファイル内のライン番号“000014”
において1ラインが削除され(LINEX)、2ライン
が付加された(LINEYおよびLINEZ)。 SEV  BLCDリセットオペレーション  図6に
示すSEV  BLCDリセットオペレーションはBL
CDリストエントリを削除するために使用される。まず
51おいて選ばれたSEVエンティティー(入力フィイ
ル)が読まれる。次に52で選ばれたバージョンBLC
Dリストが参照され、53でこの特定されたBLCDリ
ストエントリが削除される。54でSEV出力ファイル
のアドレスが呼出しプログラムにもどされる。 SEV消去オペレーション   図7に示すSEV消去オペレーションは現在バージ
ョンまたは変更レベルを消去するために使用される。ま
ず601で選ばれたSEVエンティティー(入力ファイ
ル)が読込まれる。バージョン消去が602で特定され
ると、バージョン制御データ(VCD)エレメントとす
べての関係レベル制御データ(LCD)エレメントの両
方が603で削除される。変更レベル消去が604で特
定されると、特定されたレベル制御データ(LCD)エ
レメント内のポインタ変数リストのみが605で削除さ
れる。制御データは606で走査されて消去の結果とし
て発生する「参照されない」ソースラインがあるかどう
かを決定する。もしあれば607でそれらラインを削除
する。SEV出力ファイルのアドレスは608で呼出し
プログラムにもどされる。 SEV  PUTDATAオペレーション  図8のS
EV  PUTDATAオペレーションは特定された入
力ファイルからアプリケーション定義データをコピーし
、SEVエンティティー内のECD、VCDまたはLC
D制御データエリアにそのデータを記録するために使用
される。701で選ばれたSEVエンティティー(入力
ファイル)が読込まれる。要求により特定されるECD
(702)、VCD(704)またはLCD(706)
により、入力ファイルは適正な制御データエリアにコピ
ーされる(703,705または707)。 再構成SEV出力プログラムのアドレスが呼出しプログ
ラムにもどされる(708)。 SEV  GETDATAオペレーション  図9のS
EV  GETDATAオペレーションはECD、VC
DまたはLCD制御データエリアからアプリケーション
定義データをとり出し、そのデータを特定された出力フ
ァイルに書込むために用いられる。まず801で選ばれ
たSEVエンティティー(入力ファイル)が読まれる。 ECD(802)、VCD(804)またはLCD(8
06)のどれが特定されたかにより、適正な制御データ
が特定された出力ファイルにコピーされる(803,8
05または807)。次に呼出しプログラムにもどされ
る。 SEV  LOCKON/OFFオペレーション  図
10のSEV  LOCK  ON/OFFオペレーシ
ョンはSEVエンティティーのVCDまたはLCD制御
データエリアにSEV  LOCKフラグのオン/オフ
「状態」をセットするために用いられる。まず901で
選ばれたSEVエンティティー(入力ファイル)が読込
まれる。特定されたのがVCD(902)かLCD(9
06)かにより、そしてロックが「オン」(904,9
08)または「オフ」(905,909)にセットされ
るべきかにより(検査903と907で示すように)適
正な処理が行われる。再構成SEV出力ファイルのアド
レスが呼出しプログラムにもどされる(910)。 例   図12はSEV制御データエレメントの例を含むS
EVエンティティーの概念図である。全エンティティー
は単一のカプセルの形で含まれる。また、STORE処
理(図2、3)で述べたように順次割当てられるポイン
タ変数“0001”、“0002”等は発生を時間順に
識別される増分的なソース変化アクティビティーのヒス
トリを与える。 1.  項目1101はECDエレメント(図11の1
001で抽象的に定義される)を示し、そこに、例えば
アプリケーション定義名“PARTA”が記録される。 2.  項目1102はVCDエレメントを示し、そこ
に例えばアプリケーション定義バージョン仕様(VER
.A)が記録される。 3.  項目1103はLCDエレメントを示しそこに
例えばタイムスタンプ付ポインタ変数リストが記録(項
目1104)されて対応するVCDエレメント(項目1
102)で特定されるバージョンを示す。 4.  項目1104は他のVCDエレメントを示し、
そこに例えばアプリケーション定義バージョン仕様(V
ER.B)が記録される。 5.  項目1106はLCDエレメントを示し、そこ
に例えばタイムスタンプ付ポインタ変数リストが記録さ
れ(項目1107)、対応するVCDエレメント(項目
1105)に特定されるバージョンを表わす。 6.  項目1108は他のVCDエレメントを示し、
そこに例えばアプリケーション定義バージョン仕様(V
ER.C)が記録される。 7.  項目1109はLCDエレメントを示し、そこ
に例えば2つのタイムスタンプ付ポインタ変数リストが
記録され(項目1110と1111)、対応するVCD
エレメント(項目1108)に特定されるバージョンの
2つの変更レベルを表わす。 8.  項目1112はポインタ変数“0001”を接
頭部とするソースライン群を示す。 9.  項目1113はポインタ変数“0002”を接
頭部とする第2のソースライン群を示す。 10.  項目1114はポインタ変数“0003”と
“0004”を接頭部とする第3のソースライン群を示
す。 11.  項目1115は3個の制御データエレメント
の構造内に記録しうるアプリケーション定義データを示
す。 各バージョン仕様に関連するポインタ変数リストは、抽
出されたときに全体でソースの正しい表示を構成するソ
ースラインを識別するのに適したポインタ変数を含む。 SEVポインタ変数処理ロジックシナリオ  以下の4
つのシナリオはソースファイルの初期発生とその後のそ
のファイルへの変更を処理するためのロジックステップ
を示す。図13は編集されたファイルがエンドユーザに
どのように見えるかを、図14〜17はSEVファイル
がそれへの変更がなされるときどのようになるかを示す
ものである。
【0100】各ステップに付す参照番号は図1〜7のフ
ローを参照するものである。 VER.A 新データエンティティーの初期記憶(図13の1201
)。VER.A:一つの新SEVエンティティーがはじ
めにECDエレメントに含まれるパート名でつくられ、
バージョン“VER.A”がVCDエレメントに置かれ
、タイムスタンプ付ポインタ変数リストがLCDエレメ
ントに置かれる。図14は編集されたソースが記憶され
るときの結果としてのSEVエンティティーを示す。 201  これは新SEVエンティティー。 202  初期ポインタ変数を“1”にセット。 203  変数“1”を付加タイムスタンプ(ts1)
と共にVER.Aについての新しくつくられたポインタ
変数リストに置く。 204  初期ポインタ変数“1”をファイル内の各レ
コードに付す。 205  各レコードを出力ファイルに置く。 222  ADDID値“1”を制御データ内のHIL
INE値フィールドに置く。 223  SEVファイルのアドレスを呼出しプログラ
ムにもどす。 VER.B バージョンBはバージョンAから導出され、ライン“X
”が編集されたファイルに付加された(図13の120
2)ものである。新しいVCD/LCD制御エレメント
対がつくられて新しいバージョン“VER.B”と新し
いタイムスタンプ付ポインタ変数テーブルを識別する。 図15は編集されたソースが記憶されるときの結果とし
てのSEVエンティティーを示す。 201  これは現存するSEVエンティティー。 206  比較のために前レベルバージョン(VER.
A)を獲得。 207  VER.Bの更新されたファイルを前バージ
ョン(VER.A)と比較。 208  比較プロセスで比較ファイルをつくり、ライ
ンXを付加ライン(その適正な相対レコード番号をもつ
)として識別。 209  比較ファイルを読取り、相対レコード番号と
変更(付加/削除)情報を取り出す。 210  比較ファイルのEOFテスト。 211  前レベルファイルを読込み、読取られたライ
ンの数のラインカウントを維持。 212  ラインカウントが相対レコード番号に等しい
かどうかを決定。 213  No:変化のないラインを出力ファイルに置
く(ラインカウントが相対レコード数に等しくなるまで
)。 215  比較出力ファイルが「付加」されたレコード
を示す。 401  HILINE番号が制御データからとり出さ
れて“1”だけ増加される。加算ID値(ADDID)
は2となる。ADDID値“2”がラインXを表わすポ
インタ変数として割当てられる。 402  ADDID値“2”をVER.B用の新しく
つくられたポインタ変数リスト(これはVER.Aポイ
ンタ変数リストから導出された)に置き、新しいタイム
スタンプ(ts1)を与える。 403  ADDID値“2”をラインXに付加。 404  ラインXを出力ファイルに置く。 209  比較ファイルを再び読込み、エンドオブファ
イル(EOF)インジケータをもどす。 216,217  入力ファイル内のレコードの他のも
のを出力ファイルに置く(前レベルファイルのEOFま
で)。 218  バージョン従属性連鎖を走査(BLCDテス
ト)。 219  従属性走査のエンド(何もなし)。 222  ADDID値“2”を制御データ内のHIL
INE番号フィールドに置く。 223  SEVファイルのアドレスを呼出しプログラ
ムにもどす。 VER.C(変更レベル1) バージョンCはバージョンBから導出されたものであり
、ライン“D”が編集されたファイルから削除されてい
る(図13の1203)。VER.C(変更レベル1)
:新しいVCD/LCD制御エレメント対がつくられて
新しい“VER.C”と新しいタイムスタンプ付ポイン
タ変数リストを識別する。図16は編集されたソースが
記録されるときの結果としてのSEVエンティティーを
示す。 201  これは現存するSEVエンティティーである
。 206  比較のために前レベルバージョン(VER.
A)を取込む。 207  VER.Cについての更新されたファイルを
前バージョン(VER.B)と比較。 208  比較プロセスで比較ファイルをつくり、ライ
ンDを削除ライン(その適正な相対レコード番号で)と
して識別する。 209  比較ファイルを読込み、相対レコード番号と
変更(付加/削除)情報をとり出す。 210  比較ファイルのEOFテスト。 211  前レベルファイルを読込み、読取られたライ
ンの数のラインカウントを維持。 212  ラインカウントが相対レコード数に等しいか
?213  No:変化のないラインを出力ファイルに
置く(ラインカウントが相対レコード数に等しくなるま
で)。 214  比較出力ファイルが「削除」レコードを示す
。 301  HILINE数“2”を制御データからとり
出し、“1”だけ増加する。削除ID値(DELID)
は3となる。DELID値“3”をラインDを表わすポ
インタ変数として割当てる。 302  ラインDについての前のポインタ変数“1”
を保持。 303  ラインDの新ポインタ変数は“3”であるか
ら、すべての前のポインタ変数リストをその前のポイタ
ン変数“1”の値について走査する。VER.AとVE
R.Bについてのポインタ変数リストがポインタ変数“
1”への照合を含むものとして見出されると、新DEL
ID値“3”がVER.AとVER.Bのポインタ変数
リストに付加される。 304  DELID値“3”をラインDに付加。 305  DELID値“3”を制御データHILIN
E数に置く。 306  ラインDを出力ファイルに置く。 209  比較ファイルを再び読込み、EOFインジケ
ータをもどす。 216,217  入力内のレコードの他のものを出力
ファイルに置く(前レベルファイルからのEOFまで)
。 218  バージョン従属性連鎖を走査(BLCDテス
ト)。 219  従属性走査のエンド(何もなし)。 222  DELID値“3”を制御データ内のHIL
INE数に置く。 223  SEVファイルのアドレスを呼出しプログラ
ムにもどす。 VER.C(変更レベル2) バージョンC(2)はバージョンC(1)から導出され
たものであり、ライン“B”は編集ファイル内で“B”
に変えられた(図13の1204)。VER.C(変更
レベル2):新しいタイムスタンプ付ポインタ変数リス
トが現存のLCDエレメントに付加される。図17は編
集されたソースが記録されるときの結果としてのSEV
エンティティーを示す。 201  これは現存するSEVエンティティーである
。 206  比較のために前レベルバージョン(VER.
A)を取込む。 207  VER.C(2)用の更新されたファイルを
前バージョンVER.C(1)と比較。 208  この比較プロセスが出力ファイルを発生し、
ラインBを検出ラインとして(その適正な相対レコード
番号で)識別し、ラインBnを付加ライン(その適正な
相対レコード番号で)として識別する。 209  この比較ファイルを読取り、「第1」相対レ
コード番号と変化(付加/削除)情報をとり出す。 210  比較ファイル用EOFテスト。 211  前レベルファイルを読込み、読取ったライン
の数のラインカウントを維持。 212  ラインカウントは相対レコード番号と同じか
。 213  No:変化しないラインを出力ファイルに置
く(ラインカウントが相対レコード番号と同じになるま
で)。 214  比較ファイル出力が削除レコードを示す。 301  HILINE番号“3”を制御データからと
り出し1を加算。削除ID値(DELID)は4となる
。 DELID値“4”をラインBを表わすポインタ変数と
して指定。 302  ラインBの前のポインタ変数“1”を保持。 303  ラインBは新ポインタ変数“4”を受けるか
ら、すべての前ポインタ変数リスト、その前のポインタ
変数値“1”についても走査する。VER.A、VER
.B、VER.C(1)のポインタ変数リストがポイン
タ変数“1”への参照を含むから、新DELID値“4
”をVER.A、VER.BおよびVER.C(1)用
ポインタ変数リストに付加。 304  DELID値“4”をラインBに付加。 305  DELID値“4”を制御データHILIN
E番号に置く。 306  ラインBを出力ファイルに置く。 209  比較ファイルを再び読込み、「次」の相対レ
コード番号と変更(付加/削除)情報をとり出す。 210  比較ファイル用EOFテスト。 211  前レベルファイルを読込み、読取ったライン
の数のラインカウントを維持。 212  ラインカウントは相対レコード番号と同じか
。 213  No:変化しないラインをこのカウントが相
対レコード番号と同じになるまで出力ファイルに置く。 215  比較ファイル出力は付加レコードを示す。 401  HILINE番号“4”を制御データからと
り出し1を加える。加算ID(ADDID)値は5にな
る。ADDID値“5”をラインBnを表わすポインタ
変数として指定。 402  ADDID値“5”をVER.C(2)用の
新しくつくられたポインタ変数リスト(これは元のVE
R.C(1)ポインタ変数リストからとり出された)に
置き、新しいタイムスタンプ(ts2)を与える。 403  ADDID値“5”をラインBnに適用。 404  ラインBnを出力ファイルに置く。 209  比較ファイルを再び読込み、EOFインジケ
ータをもどす。 216,217  入力内のレコードの残りのものを出
力ファイルに置く(前レベルファイルからのEOFまで
)。 218  バージョン従属性連鎖を走査(BLCDテス
ト)。 219  従属性走査のエンド(何もなし)。 222  最後のID値“5”(ADDID)を制御デ
ータ内のHILINE番号に置く。 223  SEVファイルのアドレスを呼出しプログラ
ムにもどす。
【図面の簡単な説明】
【図1】EXTRACT処理を示すフローチャート。
【図2】STORE処理を示すフローチャート。
【図3】STORE処理を示すフローチャート。
【図4】DELETE  LINES処理を示すフロー
チャート。
【図5】ADD  LINES処理を示すフローチャー
ト。
【図6】ベースレベル変更検出リセットオペレーション
を示すフローチャート。
【図7】ERASEオペレーションを示すフローチャー
ト。
【図8】PUTDATAオペレーションを示すフローチ
ャート。
【図9】GETDATAオペレーションを示すフローチ
ャート。
【図10】LOCK  ON/OFFオペレーションを
示すフローチャート。
【図11】ECD、VCDおよびLCDの構造を示す制
御ブロック図。
【図12】SEVファイルの概念図であってサンプルデ
ータと制御エレメントを示す図。
【図13】SEVファイルに対する反復変更の例を示す
ブロック図。
【図14】例バージョンAを記憶することによるSEV
エンティティーを示す図。
【図15】例バージョンBを記憶することによるSEV
エンティティーを示す図。
【図16】例バージョンC、変更1を記憶することによ
るSEVエンティティーを示す図。
【図17】例バージョンC、変更2を記憶することによ
るSEVエンティティーを示す図。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】CPU、主記憶手段、補助記憶手段、アプ
    リケーションプログラムおよび上記主または補助記憶手
    段内にあって個々のデータ項目を有する、ソースデータ
    のバージョンを含むプログラミングコード発生システム
    において、ソースデータのための単一エンティティーバ
    ージョン管理を行う装置であって、 a) i)  最高位使用ポインタ変数(HILINE番号)
    を含むエンティティー制御データエレメント、ii) 
      第1バージョン識別子を含むバージョン制御データ
    エレメント、および iii)  上記バージョン制御データエレメントに関
    連し、一群のポインタ変数を有するポインタ変数リスト
    を含むレベル制御データエレメントを有する制御データ
    エレメントと、 b)  上記ポインタ変数リストに属する関連ポインタ
    変数を有する一群の個々のデータ項目とを含むデータレ
    ポジトリを備えた、ソースデータのための単一エンティ
    ティーバージョン管理を行う装置。
  2. 【請求項2】前記バージョン制御データエレメントは更
    に、バージョンロックフラグを含み、前記レベル制御デ
    ータエレメントは更にレベルロックフラグを含み、前記
    装置は更に前記アプリケーションプログラムにより呼出
    し可能な、上記バージョンロックフラグおよびレベルロ
    ックフラグをセットしたりリセットしたりするためのL
    OCKON/LOCKOFF手段を含んでいる、請求項
    1に記載の装置。
  3. 【請求項3】a)  前記アプリケーションプログラム
    により呼出し可能であって入力ファイルからのアプリケ
    ーション定義によるデータを前記制御データエレメント
    にコピーするためのPUT手段と、 b)  上記アプリケーションプログラムにより呼出し
    可能であって上記アプリケーション定義データを上記制
    御データエレメントから取り出して上記アプリケーショ
    ン定義データを特定の出力ファイルに置くためのGET
    手段とを更に備えた、請求項2に記載の装置。
  4. 【請求項4】a)  前記アプリケーションプログラム
    により呼出し可能であって、前記データレポジトリから
    前記個々のデータ項目の一つの特定のバージョンを抽出
    するための抽出手段と、 b)  上記アプリケーションプログラムにより呼出し
    可能であって、上記個々のデータ項目の上記特定のバー
    ジョンに対する変更を上記データレポジトリにもどし記
    憶するための記憶手段と、c)  上記記憶手段により
    記憶された上記変更が上記特定のバージョンにより、上
    記個々のデータ項目の任意のバージョンに影響を与える
    かどうかを示すための変更通知手段とを更に備えた、請
    求項1に記載の装置。
  5. 【請求項5】前記抽出手段は更に前記特定されたバージ
    ョンが依存する基本的バージョンが変化したかどうかを
    検出するためのベースレベル変化検出手段を含んでいる
    、請求項4に記載の装置。
  6. 【請求項6】a)  前記アプリケーションプログラム
    により呼出し可能であって前記データレポジトリから前
    記個々のデータ項目の一つの特定されたバージョンを抽
    出するための抽出手段と、 b)  上記アプリケーションプログラムにより呼出し
    可能であって上記個々のデータ項目の上記特定されたバ
    ージョンに対する変更を上記データレポジトリにもどし
    て記憶するための記憶手段と、 c)  上記記憶手段により記憶された上記変更が上記
    特定されたバージョンにより上記個々のデータ項目の任
    意のバージョンに影響するかどうかを示すための変更通
    知手段とを更に備えた、請求項3に記載の装置。
  7. 【請求項7】前記抽出手段は更に前記特定されたバージ
    ョンが属する一つの基本バージョンが変化したかどうか
    を検出するためのベースレベル変更検出手段を含んでい
    る、請求項6に記載の装置。
  8. 【請求項8】CPU、主記憶手段、補助記憶手段、アプ
    リケーションプログラムおよび上記主または補助記憶手
    段内にあって個々のデータ項目を有する、ソースデータ
    のバージョンを含むプログラミングコード発生システム
    において、上記ソースデータのための単一エンティティ
    ーバージョン管理を行うための装置であって、A)a) i)  最高位使用ポインタ変数(HILINE番号)
    を含むエンティティー制御データエレメント、ii) 
      第1バージョン識別子、バージョンロックフラグお
    よびBLCDリストを含むバージョン制御データエレメ
    ント、および iii)  上記バージョン制御データエレメントに関
    連し、一群のポインタ変数を有するポインタ変数リスト
    およびレベルロックフラグを有するレベル制御データエ
    レメントを有する制御データエレメントと、 b)  上記ポインタ変数リストに属する関連ポインタ
    変数を有する一群の個々のデータ項目とを含むデータレ
    ポジトリと、 B)  上記アプリケーションプログラムにより呼出し
    可能であって、入力ファイルから上記制御データエレメ
    ントへアプリケーションで定義されるデータをコピーす
    るためのPUT手段; C)  上記アプリケーションプログラムにより呼出し
    可能であって上記制御データエレメントから上記アプリ
    ケーション定義データを取り出して一つの特定された出
    力ファイルに上記アプリケーション定義データを置くた
    めのGET手段と、 D)  上記アプリケーションプログラムにより呼出し
    可能であって上記バージョンロックフラグおよび上記レ
    ベルロックフラグをセットしたりリセットしたりするた
    めのLOCKON/LOCKOFF手段と、E)  上
    記アプリケーションプログラムにより呼出し可能であっ
    て、上記個々のデータ項目の上記特定されたバージョン
    に対する変化を上記データレポジトリにもどして記憶す
    るための記憶手段であって、上記BLCDリストに変更
    されたバージョンのIDを記録するためのレコード手段
    を含む記憶手段と、 F)  上記アプリケーションプログラムにより呼出し
    可能であって、上記BLCDリストが少くとも1個の変
    更されたバージョンIDを含むとき上記アプリケーショ
    ンプログラムにベースレベル変化表示をもどすためのリ
    ターンコードインジケータ手段を含む、上記データレポ
    ジトリから上記個々のデータ項目の一つの特定されたバ
    ージョンを抽出するための抽出手段とを備えた、ソース
    データのための単一エンティティーバージョン管理を行
    う装置。
  9. 【請求項9】個々のデータ項目を有するソースデータの
    バージョンを含むプログラミングコード発生システムに
    おいて、上記ソースデータの単一エンティティーバージ
    ョン管理を行う方法であって、 a)  第1バージョン識別子と第1の個々のデータ項
    目群を有する上記ソースデータの第1バージョンを含む
    データエンティティーを作成するステップと、b)  
    第2のバージョン識別子と、それが上記第1バージョン
    に依存するように上記第1のデータ項目群の第1部分群
    を含む第2の個々のデータ項目群とを有する上記ソース
    データの第2バージョンを上記データエンティティー内
    に作成するステップと、 c)  上記第1バージョンの上記第1のデータ項目群
    の第2部分群を変更するステップと、d)  上記第1
    バージョンの変更を、上記第2バージョンの次のアクセ
    スによりそのアクセス機構に自動的に通知するステップ
    とを有する、ソースデータの単一エンティティーバージ
    ョン管理を行う方法。
  10. 【請求項10】前記自動的に通知するステップは、a)
      前記第2バージョンの作成段階の後でこの第2バー
    ジョンが前記第1バージョンに依存することを示すステ
    ップと、 b)  前記変更するステップの後に、上記第2バージ
    ョンが上記第1バージョンに従属することを上記ステッ
    プが示したことを決定するステップと、 c)  上記第1バージョンが変化したことの通知を上
    記第2バージョンに関連するエリアに記録するステップ
    と、 d)  上記第2バージョンのアクセスにより、上記第
    1バージョンが変化したことの通知をアクセス機構に検
    出させるステップとを含んでいる、請求項9に記載の方
    法。
JP3252960A 1990-12-20 1991-09-04 ソースデータのためのバージョン管理方法および装置 Expired - Lifetime JPH07117895B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US630928 1990-12-20
US07/630,928 US5278979A (en) 1990-12-20 1990-12-20 Version management system using pointers shared by a plurality of versions for indicating active lines of a version

Publications (2)

Publication Number Publication Date
JPH04248623A true JPH04248623A (ja) 1992-09-04
JPH07117895B2 JPH07117895B2 (ja) 1995-12-18

Family

ID=24529150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3252960A Expired - Lifetime JPH07117895B2 (ja) 1990-12-20 1991-09-04 ソースデータのためのバージョン管理方法および装置

Country Status (3)

Country Link
US (1) US5278979A (ja)
EP (1) EP0492071A3 (ja)
JP (1) JPH07117895B2 (ja)

Families Citing this family (222)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2993528B2 (ja) * 1991-05-18 1999-12-20 富士通株式会社 テキスト管理・復元方式
US5592661A (en) * 1992-07-16 1997-01-07 International Business Machines Corporation Detection of independent changes via change identifiers in a versioned database management system
US5403639A (en) * 1992-09-02 1995-04-04 Storage Technology Corporation File server having snapshot application data groups
US5666530A (en) * 1992-12-02 1997-09-09 Compaq Computer Corporation System for automatic synchronization of common file between portable computer and host computer via communication channel selected from a plurality of usable channels there between
US5574898A (en) * 1993-01-08 1996-11-12 Atria Software, Inc. Dynamic software version auditor which monitors a process to provide a list of objects that are accessed
JPH06309204A (ja) * 1993-04-20 1994-11-04 Matsushita Electric Ind Co Ltd データ処理方法及びその装置
US5870764A (en) * 1993-05-12 1999-02-09 Apple Computer, Inc. Method of managing a data structure for concurrent serial and parallel revision of a work
JPH07104983A (ja) * 1993-10-05 1995-04-21 Fujitsu Ltd 世代管理装置および世代管理方法
JP2863805B2 (ja) * 1993-11-26 1999-03-03 富士通株式会社 版数管理方式
ATE180070T1 (de) * 1993-12-10 1999-05-15 Cheyenne Advanced Tech Ltd Inkrementales datensicherungssystem
JP3287679B2 (ja) * 1993-12-28 2002-06-04 キヤノン株式会社 文書処理装置及び方法
JPH07239776A (ja) * 1994-02-28 1995-09-12 Nec Corp ソフトウェアシステム管理装置
US6760840B1 (en) * 1994-03-15 2004-07-06 Kabushiki Kaisha Toshiba File editing system and shared file editing system with file content secrecy, file version management, and asynchronous editing
US5835601A (en) * 1994-03-15 1998-11-10 Kabushiki Kaisha Toshiba File editing system and shared file editing system with file content secrecy, file version management, and asynchronous editing
WO1995030955A1 (de) * 1994-05-10 1995-11-16 Siemens Aktiengesellschaft Datenverwaltungssystem eines realzeitsystems
JP3727076B2 (ja) * 1994-08-25 2005-12-14 富士通株式会社 プログラム管理方法および装置
JPH0869404A (ja) * 1994-08-29 1996-03-12 Fujitsu Ltd データのバックアップ方法及びそれを利用したデータ処理装置
US5574906A (en) * 1994-10-24 1996-11-12 International Business Machines Corporation System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing
US5634052A (en) * 1994-10-24 1997-05-27 International Business Machines Corporation System for reducing storage requirements and transmission loads in a backup subsystem in client-server environment by transmitting only delta files from client to server
JPH08171482A (ja) * 1994-10-29 1996-07-02 Mitsubishi Electric Corp プログラムのバージョン生成方式
US5740359A (en) * 1994-12-27 1998-04-14 Kabushiki Kaisha Toshiba Program execution system having a plurality of program versions
US5675802A (en) * 1995-03-31 1997-10-07 Pure Atria Corporation Version control system for geographically distributed software development
US5680621A (en) * 1995-06-07 1997-10-21 International Business Machines Corporation System and method for domained incremental changes storage and retrieval
US5768582A (en) * 1995-06-07 1998-06-16 International Business Machines Corporation Computer program product for domained incremental changes storage and retrieval
US6519767B1 (en) * 1995-06-07 2003-02-11 Microsoft Corporation Compiler and method for automatically building version compatible object applications
AU6500596A (en) 1995-07-20 1997-02-18 Novell, Inc. Transaction log management in a disconnectable computer and network
CA2227432C (en) * 1995-07-20 2001-05-22 Novell, Inc. Transaction synchronization in a disconnectable computer and network
GB2303948B (en) * 1995-08-03 2000-06-28 Ibm A data processing system
IES66902B2 (en) * 1995-10-20 1996-02-07 Open Software Systems Ltd A version control facility
US6366933B1 (en) * 1995-10-27 2002-04-02 At&T Corp. Method and apparatus for tracking and viewing changes on the web
US5745906A (en) * 1995-11-14 1998-04-28 Deltatech Research, Inc. Method and apparatus for merging delta streams to reconstruct a computer file
US5729743A (en) * 1995-11-17 1998-03-17 Deltatech Research, Inc. Computer apparatus and method for merging system deltas
US5950210A (en) * 1996-01-29 1999-09-07 Nelson; Paul M. Database row version differentiation process
US5715454A (en) * 1996-03-11 1998-02-03 Hewlett-Packard Company Version control of documents by independent line change packaging
US5946490A (en) * 1996-03-22 1999-08-31 Northeastern University Automata-theoretic approach compiler for adaptive software
US6366930B1 (en) * 1996-04-12 2002-04-02 Computer Associates Think, Inc. Intelligent data inventory & asset management systems method and apparatus
US5842216A (en) * 1996-05-03 1998-11-24 Mitsubishi Electric Information Technology Center America, Inc. System for sending small positive data notification messages over a network to indicate that a recipient node should obtain a particular version of a particular data item
US5970503A (en) * 1996-06-12 1999-10-19 Base Ten Systems, Inc. Method for online revision control
US8145701B2 (en) 1996-06-28 2012-03-27 Jordaan Consulting Ltd. Iii, Llc Methods and systems for providing storage of a data file over a computer network
US6412017B1 (en) * 1996-07-01 2002-06-25 Microsoft Corporation Urgent replication facility
US5832520A (en) * 1996-07-03 1998-11-03 Miller, Call, Plauck And Miller Automatic file differencing and updating system
US5878434A (en) * 1996-07-18 1999-03-02 Novell, Inc Transaction clash management in a disconnectable computer and network
US6049809A (en) * 1996-10-30 2000-04-11 Microsoft Corporation Replication optimization system and method
US5903897A (en) * 1996-12-18 1999-05-11 Alcatel Usa Sourcing, L.P. Software documentation release control system
US5842213A (en) * 1997-01-28 1998-11-24 Odom; Paul S. Method for modeling, storing, and transferring data in neutral form
US6374250B2 (en) * 1997-02-03 2002-04-16 International Business Machines Corporation System and method for differential compression of data from a plurality of binary sources
US7330870B1 (en) 1997-02-11 2008-02-12 International Business Machines Corporation Streaming computer system and method with multi-version protocol compatibility
US6018747A (en) * 1997-11-26 2000-01-25 International Business Machines Corporation Method for generating and reconstructing in-place delta files
US6195795B1 (en) * 1997-12-19 2001-02-27 Alcatel Usa Sourcing, L.P. Apparatus and method for automatic software release notification
DE69908121T2 (de) * 1998-03-23 2004-04-01 Microsoft Corp., Redmond Anwendungsprogrammierungsschnittstelle in einem betriebssystem
US6604236B1 (en) 1998-06-30 2003-08-05 Iora, Ltd. System and method for generating file updates for files stored on read-only media
EP0981099A3 (en) * 1998-08-17 2004-04-21 Connected Place Limited A method of and an apparatus for merging a sequence of delta files
US6272677B1 (en) 1998-08-28 2001-08-07 International Business Machines Corporation Method and system for automatic detection and distribution of code version updates
US7197534B2 (en) * 1998-09-01 2007-03-27 Big Fix, Inc. Method and apparatus for inspecting the properties of a computer
US8914507B2 (en) * 1998-09-01 2014-12-16 International Business Machines Corporation Advice provided for offering highly targeted advice without compromising individual privacy
US6256664B1 (en) * 1998-09-01 2001-07-03 Bigfix, Inc. Method and apparatus for computed relevance messaging
US6263362B1 (en) * 1998-09-01 2001-07-17 Bigfix, Inc. Inspector for computed relevance messaging
US7181438B1 (en) 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US6662357B1 (en) 1999-08-31 2003-12-09 Accenture Llp Managing information in an integrated development architecture framework
US6256773B1 (en) * 1999-08-31 2001-07-03 Accenture Llp System, method and article of manufacture for configuration management in a development architecture framework
US7139999B2 (en) 1999-08-31 2006-11-21 Accenture Llp Development architecture framework
US6772338B1 (en) * 1999-10-26 2004-08-03 Ricoh Co., Ltd. Device for transfering data between an unconscious capture device and another device
US6757893B1 (en) 1999-12-17 2004-06-29 Canon Kabushiki Kaisha Version control system for software code
GB9930124D0 (en) 1999-12-21 2000-02-09 Ibm File system for a computer and method of synchronising sets of files
US7028251B2 (en) * 2000-03-02 2006-04-11 Iora, Ltd. System and method for reducing the size of data difference representations
US6662181B1 (en) * 2000-05-08 2003-12-09 International Business Machines Corporation Mechanism for selection using access control structures for authoring systems
US6816906B1 (en) * 2000-05-08 2004-11-09 International Business Machines Corporation Mechanism for building access control structures for authoring systems
US20050010652A1 (en) * 2000-06-22 2005-01-13 Ideogram Design S.A.R.L. Process and device for selective download of data based on index file transmitted from a central server
AU2001296576A1 (en) * 2000-10-04 2002-04-15 Siemens Energy And Automation, Inc. Manufacturing system software version management
US7490301B2 (en) * 2000-12-25 2009-02-10 Fujitsu Limited Computer readable recording medium storing program for managing CAD data
US6961931B2 (en) * 2001-01-10 2005-11-01 International Business Machines Corporation Dependency specification using target patterns
US6643654B1 (en) 2001-06-25 2003-11-04 Network Appliance, Inc. System and method for representing named data streams within an on-disk structure of a file system
US20030033303A1 (en) * 2001-08-07 2003-02-13 Brian Collins System and method for restricting access to secured data
US20040205587A1 (en) * 2001-08-07 2004-10-14 Draper Stephen P.W. System and method for enumerating arbitrary hyperlinked structures in which links may be dynamically calculable
JP4055393B2 (ja) * 2001-10-30 2008-03-05 ソニー株式会社 データ処理装置およびその方法とプログラム
JP2003223440A (ja) 2001-11-21 2003-08-08 Ricoh Co Ltd 文書処理装置
US7373364B1 (en) 2002-03-05 2008-05-13 Network Appliance, Inc. System and method for creating a point-in-time restoration of a database file
US7467167B2 (en) * 2002-03-19 2008-12-16 Network Appliance, Inc. System and method for coalescing a plurality of snapshots
US7051050B2 (en) * 2002-03-19 2006-05-23 Netwrok Appliance, Inc. System and method for restoring a single file from a snapshot
US6993539B2 (en) 2002-03-19 2006-01-31 Network Appliance, Inc. System and method for determining changes in two snapshots and for transmitting changes to destination snapshot
US7475098B2 (en) * 2002-03-19 2009-01-06 Network Appliance, Inc. System and method for managing a plurality of snapshots
US7043485B2 (en) 2002-03-19 2006-05-09 Network Appliance, Inc. System and method for storage of snapshot metadata in a remote file
US7039663B1 (en) * 2002-04-19 2006-05-02 Network Appliance, Inc. System and method for checkpointing and restarting an asynchronous transfer of data between a source and destination snapshot
US7010553B2 (en) 2002-03-19 2006-03-07 Network Appliance, Inc. System and method for redirecting access to a remote mirrored snapshot
US7225204B2 (en) * 2002-03-19 2007-05-29 Network Appliance, Inc. System and method for asynchronous mirroring of snapshots at a destination using a purgatory directory and inode mapping
US7072910B2 (en) 2002-03-22 2006-07-04 Network Appliance, Inc. File folding technique
GB0209648D0 (en) * 2002-04-26 2002-06-05 Oracle Int Corp Project management system
US20040073581A1 (en) * 2002-06-27 2004-04-15 Mcvoy Lawrence W. Version controlled associative array
US7107385B2 (en) * 2002-08-09 2006-09-12 Network Appliance, Inc. Storage virtualization by layering virtual disk objects on a file system
US7873700B2 (en) * 2002-08-09 2011-01-18 Netapp, Inc. Multi-protocol storage appliance that provides integrated support for file and block access protocols
CA2421825C (en) 2002-09-20 2012-07-10 Mks Inc. Version control system for software development
US7707184B1 (en) 2002-10-09 2010-04-27 Netapp, Inc. System and method for snapshot full backup and hard recovery of a database
US7340486B1 (en) * 2002-10-10 2008-03-04 Network Appliance, Inc. System and method for file system snapshot of a virtual logical disk
US20040177343A1 (en) * 2002-11-04 2004-09-09 Mcvoy Lawrence W. Method and apparatus for understanding and resolving conflicts in a merge
US7099902B2 (en) * 2002-12-13 2006-08-29 Sun Microsystems, Inc. Checkout and replace script
US7337388B2 (en) * 2003-01-02 2008-02-26 Microsoft Corporation Tool-based iterative document management
US8010491B2 (en) * 2003-02-28 2011-08-30 Microsoft Corporation Method for managing multiple file states for replicated files
US7389309B2 (en) * 2003-02-28 2008-06-17 Microsoft Corporation Method for managing file replication in applications
US7111021B1 (en) 2003-03-21 2006-09-19 Network Appliance, Inc. System and method for efficient space accounting in a file system with snapshots
US7457982B2 (en) * 2003-04-11 2008-11-25 Network Appliance, Inc. Writable virtual disk of read-only snapshot file objects
US7577692B1 (en) 2003-04-25 2009-08-18 Netapp, Inc. System and method for reserving space to guarantee file writability in a file system supporting persistent consistency point images
US7437523B1 (en) 2003-04-25 2008-10-14 Network Appliance, Inc. System and method for on-the-fly file folding in a replicated storage system
CA2434644A1 (fr) * 2003-06-30 2004-12-30 Archidata Inc. Systeme pour la certification des plans et devis produits par les professionnels et les maitres d'ouvrage de la construction
US7472254B2 (en) * 2003-10-10 2008-12-30 Iora, Ltd. Systems and methods for modifying a set of data objects
US7783611B1 (en) 2003-11-10 2010-08-24 Netapp, Inc. System and method for managing file metadata during consistency points
US7721062B1 (en) 2003-11-10 2010-05-18 Netapp, Inc. Method for detecting leaked buffer writes across file system consistency points
US7401093B1 (en) 2003-11-10 2008-07-15 Network Appliance, Inc. System and method for managing file data during consistency points
CA2451253A1 (en) * 2003-11-27 2005-05-27 Ibm Canada Limited - Ibm Canada Limitee Method for competitive peer programming
US7409497B1 (en) 2003-12-02 2008-08-05 Network Appliance, Inc. System and method for efficiently guaranteeing data consistency to clients of a storage system cluster
WO2005064469A1 (en) * 2003-12-19 2005-07-14 Network Appliance, Inc. System and method for supporting asynchronous data replication with very short update intervals
US7921110B1 (en) 2003-12-23 2011-04-05 Netapp, Inc. System and method for comparing data sets
US7478101B1 (en) 2003-12-23 2009-01-13 Networks Appliance, Inc. System-independent data format in a mirrored storage system environment and method for using the same
US8041888B2 (en) 2004-02-05 2011-10-18 Netapp, Inc. System and method for LUN cloning
US7313720B1 (en) 2004-02-12 2007-12-25 Network Appliance, Inc. Technique for increasing the number of persistent consistency point images in a file system
US7966293B1 (en) 2004-03-09 2011-06-21 Netapp, Inc. System and method for indexing a backup using persistent consistency point images
US7571196B2 (en) * 2004-03-31 2009-08-04 Microsoft Corporation Type evolution
US7430571B2 (en) 2004-04-30 2008-09-30 Network Appliance, Inc. Extension of write anywhere file layout write allocation
US7334094B2 (en) * 2004-04-30 2008-02-19 Network Appliance, Inc. Online clone volume splitting technique
US7409511B2 (en) * 2004-04-30 2008-08-05 Network Appliance, Inc. Cloning technique for efficiently creating a copy of a volume in a storage system
US7409494B2 (en) 2004-04-30 2008-08-05 Network Appliance, Inc. Extension of write anywhere file system layout
US7334095B1 (en) 2004-04-30 2008-02-19 Network Appliance, Inc. Writable clone of read-only volume
US7799273B2 (en) 2004-05-06 2010-09-21 Smp Logic Systems Llc Manufacturing execution system for validation, quality and risk assessment and monitoring of pharmaceutical manufacturing processes
US7444197B2 (en) 2004-05-06 2008-10-28 Smp Logic Systems Llc Methods, systems, and software program for validation and monitoring of pharmaceutical manufacturing processes
US8667465B2 (en) * 2008-03-31 2014-03-04 Accurev, Inc. System for estimating a software product release time from version information
US8473893B2 (en) * 2008-09-30 2013-06-25 Accurev, Inc. Integration of external software analysis processes with software configuration management applications
US9292276B1 (en) 2004-07-19 2016-03-22 Micro Focus (IP) Development Limited Method and system for utilizing change packages
US8548967B1 (en) 2007-12-12 2013-10-01 Accurev, Inc. System for visual query and manipulation of configuration management records
US8341590B1 (en) 2007-12-12 2012-12-25 Accurev, Inc. System for relating workflow status to code component status in a software project
US20060026567A1 (en) * 2004-07-27 2006-02-02 Mcvoy Lawrence W Distribution of data/metadata in a version control system
US7984085B1 (en) 2004-10-25 2011-07-19 Network Appliance, Inc. Rate of change of data using on-the-fly accounting
US7730277B1 (en) 2004-10-25 2010-06-01 Netapp, Inc. System and method for using pvbn placeholders in a flexible volume of a storage system
US7636744B1 (en) 2004-11-17 2009-12-22 Netapp, Inc. System and method for flexible space reservations in a file system supporting persistent consistency point images
US9165003B1 (en) 2004-11-29 2015-10-20 Netapp, Inc. Technique for permitting multiple virtual file systems having the same identifier to be served by a single storage system
US7707165B1 (en) 2004-12-09 2010-04-27 Netapp, Inc. System and method for managing data versions in a file system
US7506111B1 (en) 2004-12-20 2009-03-17 Network Appliance, Inc. System and method for determining a number of overwitten blocks between data containers
US7424497B1 (en) 2005-01-27 2008-09-09 Network Appliance, Inc. Technique for accelerating the creation of a point in time prepresentation of a virtual file system
US7757056B1 (en) 2005-03-16 2010-07-13 Netapp, Inc. System and method for efficiently calculating storage required to split a clone volume
JP2006268800A (ja) * 2005-03-25 2006-10-05 Fuji Xerox Co Ltd 議事録作成支援装置、議事録作成支援方法及びプログラム
US8055702B2 (en) * 2005-04-25 2011-11-08 Netapp, Inc. System and method for caching network file systems
US7689609B2 (en) * 2005-04-25 2010-03-30 Netapp, Inc. Architecture for supporting sparse volumes
US7617370B2 (en) * 2005-04-29 2009-11-10 Netapp, Inc. Data allocation within a storage system architecture
US7698349B2 (en) * 2005-05-25 2010-04-13 Microsoft Corporation Dimension member sliding in online analytical processing
US7716182B2 (en) * 2005-05-25 2010-05-11 Dassault Systemes Enovia Corp. Version-controlled cached data store
US7712087B2 (en) * 2005-06-28 2010-05-04 Oracle International Corporation Methods and systems for identifying intermittent errors in a distributed code development environment
JP4659537B2 (ja) * 2005-07-05 2011-03-30 株式会社日立製作所 ファイル提供方法、ストレージ装置及びファイル提供プログラム
US20070016628A1 (en) * 2005-07-14 2007-01-18 Lenevo (Singapore) Pte.Ltd. Classification system for versionable objects
US7653682B2 (en) * 2005-07-22 2010-01-26 Netapp, Inc. Client failure fencing mechanism for fencing network file system data in a host-cluster environment
US7650366B1 (en) 2005-09-09 2010-01-19 Netapp, Inc. System and method for generating a crash consistent persistent consistency point image set
US7707193B2 (en) * 2005-09-22 2010-04-27 Netapp, Inc. System and method for verifying and restoring the consistency of inode to pathname mappings in a filesystem
US7873963B1 (en) 2005-10-25 2011-01-18 Netapp, Inc. Method and system for detecting languishing messages
US7325111B1 (en) 2005-11-01 2008-01-29 Network Appliance, Inc. Method and system for single pass volume scanning for multiple destination mirroring
US7716649B2 (en) * 2005-12-15 2010-05-11 International Business Machines Corporation Activity-based software traceability management method and apparatus
US8359571B2 (en) * 2005-12-19 2013-01-22 International Business Machines Corporation Computer method and apparatus for activity-based version selection in a configuration management system
US8429610B2 (en) * 2005-12-20 2013-04-23 International Business Machines Corporation Computer method and apparatus for providing version-aware impact analysis
US8775974B2 (en) * 2005-12-21 2014-07-08 International Business Machines Corporation Multi-contextual delta navigation in a compare view
US7693864B1 (en) 2006-01-03 2010-04-06 Netapp, Inc. System and method for quickly determining changed metadata using persistent consistency point image differencing
US8005793B1 (en) 2006-04-18 2011-08-23 Netapp, Inc. Retaining persistent point in time data during volume migration
US8548947B2 (en) * 2006-04-28 2013-10-01 Hewlett-Packard Development Company, L.P. Systems and methods for file maintenance
US7769723B2 (en) * 2006-04-28 2010-08-03 Netapp, Inc. System and method for providing continuous data protection
US8165221B2 (en) 2006-04-28 2012-04-24 Netapp, Inc. System and method for sampling based elimination of duplicate data
US7464238B1 (en) 2006-04-28 2008-12-09 Network Appliance, Inc. System and method for verifying the consistency of mirrored data sets
US9026495B1 (en) 2006-05-26 2015-05-05 Netapp, Inc. System and method for creating and accessing a host-accessible storage entity
US8412682B2 (en) * 2006-06-29 2013-04-02 Netapp, Inc. System and method for retrieving and using block fingerprints for data deduplication
US7921077B2 (en) * 2006-06-29 2011-04-05 Netapp, Inc. System and method for managing data deduplication of storage systems utilizing persistent consistency point images
US8010509B1 (en) 2006-06-30 2011-08-30 Netapp, Inc. System and method for verifying and correcting the consistency of mirrored data sets
US7987167B1 (en) 2006-08-04 2011-07-26 Netapp, Inc. Enabling a clustered namespace with redirection
US7747584B1 (en) 2006-08-22 2010-06-29 Netapp, Inc. System and method for enabling de-duplication in a storage system architecture
US7865741B1 (en) 2006-08-23 2011-01-04 Netapp, Inc. System and method for securely replicating a configuration database of a security appliance
US8116455B1 (en) 2006-09-29 2012-02-14 Netapp, Inc. System and method for securely initializing and booting a security appliance
US9015703B2 (en) * 2006-10-17 2015-04-21 Manageiq, Inc. Enforcement of compliance policies in managed virtual systems
US8949825B1 (en) 2006-10-17 2015-02-03 Manageiq, Inc. Enforcement of compliance policies in managed virtual systems
US8612971B1 (en) 2006-10-17 2013-12-17 Manageiq, Inc. Automatic optimization for virtual systems
US9086917B1 (en) 2006-10-17 2015-07-21 Manageiq, Inc. Registering and accessing virtual systems for use in a managed system
US8234640B1 (en) 2006-10-17 2012-07-31 Manageiq, Inc. Compliance-based adaptations in managed virtual systems
US8458695B2 (en) 2006-10-17 2013-06-04 Manageiq, Inc. Automatic optimization for virtual systems
US8234641B2 (en) 2006-10-17 2012-07-31 Managelq, Inc. Compliance-based adaptations in managed virtual systems
US9038062B2 (en) * 2006-10-17 2015-05-19 Manageiq, Inc. Registering and accessing virtual systems for use in a managed system
US8752045B2 (en) 2006-10-17 2014-06-10 Manageiq, Inc. Methods and apparatus for using tags to control and manage assets
US9697019B1 (en) 2006-10-17 2017-07-04 Manageiq, Inc. Adapt a virtual machine to comply with system enforced policies and derive an optimized variant of the adapted virtual machine
US8949826B2 (en) 2006-10-17 2015-02-03 Managelq, Inc. Control and management of virtual systems
US7739546B1 (en) 2006-10-20 2010-06-15 Netapp, Inc. System and method for storing and retrieving file system log information in a clustered computer system
US7685178B2 (en) * 2006-10-31 2010-03-23 Netapp, Inc. System and method for examining client generated content stored on a data container exported by a storage system
US8996487B1 (en) 2006-10-31 2015-03-31 Netapp, Inc. System and method for improving the relevance of search results using data container access patterns
US8423731B1 (en) 2006-10-31 2013-04-16 Netapp, Inc. System and method for automatic scheduling and policy provisioning for information lifecycle management
US7720889B1 (en) 2006-10-31 2010-05-18 Netapp, Inc. System and method for nearly in-band search indexing
US7613947B1 (en) 2006-11-30 2009-11-03 Netapp, Inc. System and method for storage takeover
US7711683B1 (en) 2006-11-30 2010-05-04 Netapp, Inc. Method and system for maintaining disk location via homeness
US7676510B1 (en) * 2006-12-22 2010-03-09 Network Appliance, Inc. Space reservation monitoring in a fractionally reserved data storage system
US8301673B2 (en) * 2006-12-29 2012-10-30 Netapp, Inc. System and method for performing distributed consistency verification of a clustered file system
US7853750B2 (en) * 2007-01-30 2010-12-14 Netapp, Inc. Method and an apparatus to store data patterns
US9563640B2 (en) * 2007-02-09 2017-02-07 Micro Focus Software Inc. Techniques for versioning files
US8868495B2 (en) * 2007-02-21 2014-10-21 Netapp, Inc. System and method for indexing user data on storage systems
US8219821B2 (en) 2007-03-27 2012-07-10 Netapp, Inc. System and method for signature based data container recognition
US8533410B1 (en) 2007-03-29 2013-09-10 Netapp, Inc. Maintaining snapshot and active file system metadata in an on-disk structure of a file system
US8510524B1 (en) 2007-03-29 2013-08-13 Netapp, Inc. File system capable of generating snapshots and providing fast sequential read access
US7849057B1 (en) 2007-03-30 2010-12-07 Netapp, Inc. Identifying snapshot membership for blocks based on snapid
CN100462916C (zh) * 2007-04-10 2009-02-18 中兴通讯股份有限公司 一种在嵌入式软件中记录版本信息的方法
US7827350B1 (en) 2007-04-27 2010-11-02 Netapp, Inc. Method and system for promoting a snapshot in a distributed file system
US7882304B2 (en) * 2007-04-27 2011-02-01 Netapp, Inc. System and method for efficient updates of sequential block storage
US8219749B2 (en) * 2007-04-27 2012-07-10 Netapp, Inc. System and method for efficient updates of sequential block storage
US8762345B2 (en) * 2007-05-31 2014-06-24 Netapp, Inc. System and method for accelerating anchor point detection
CA2637168C (en) * 2007-07-11 2015-12-01 Jeb Stuart Thorley Method and system for version independent software release management
US8301791B2 (en) * 2007-07-26 2012-10-30 Netapp, Inc. System and method for non-disruptive check of a mirror
US8793226B1 (en) 2007-08-28 2014-07-29 Netapp, Inc. System and method for estimating duplicate data
US7865475B1 (en) 2007-09-12 2011-01-04 Netapp, Inc. Mechanism for converting one type of mirror to another type of mirror on a storage system without transferring data
JP2011501839A (ja) * 2007-10-04 2011-01-13 グローバル インフィニプール ゲーエムベーハー データエンティティ及びそのバージョンにアクセスするための方法
US7996636B1 (en) 2007-11-06 2011-08-09 Netapp, Inc. Uniquely identifying block context signatures in a storage volume hierarchy
US8418173B2 (en) 2007-11-27 2013-04-09 Manageiq, Inc. Locating an unauthorized virtual machine and bypassing locator code by adjusting a boot pointer of a managed virtual machine in authorized environment
US8407688B2 (en) * 2007-11-27 2013-03-26 Managelq, Inc. Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets
US8380674B1 (en) 2008-01-09 2013-02-19 Netapp, Inc. System and method for migrating lun data between data containers
US9424323B2 (en) * 2008-01-31 2016-08-23 Oracle International Corporation Application tier data dictionary
US8725986B1 (en) 2008-04-18 2014-05-13 Netapp, Inc. System and method for volume block number to disk block number mapping
US8219564B1 (en) 2008-04-29 2012-07-10 Netapp, Inc. Two-dimensional indexes for quick multiple attribute search in a catalog system
US8250043B2 (en) * 2008-08-19 2012-08-21 Netapp, Inc. System and method for compression of partially ordered data sets
JP5181140B2 (ja) * 2009-02-23 2013-04-10 インターナショナル・ビジネス・マシーンズ・コーポレーション データベースを検索するためのコンピュータ・システム、方法及びコンピュータ・プログラム
US8266136B1 (en) 2009-04-13 2012-09-11 Netapp, Inc. Mechanism for performing fast directory lookup in a server system
US8694966B2 (en) * 2010-03-04 2014-04-08 Oracle International Corporation Identifying test cases to be run after changes to modules of a software application
US10146520B1 (en) * 2010-12-14 2018-12-04 Ivanti, Inc. Updating a running application on a computing device
US20130086323A1 (en) * 2011-09-30 2013-04-04 Oracle International Corporation Efficient cache management in a cluster
US9395979B1 (en) * 2012-12-20 2016-07-19 Sprint Communications Company L.P. Pre-emptive development conflict resolution
CN103248524B (zh) * 2013-05-09 2016-04-27 北京泛华恒兴科技有限公司 基于柔性测试技术的测试数据版本控制方法、装置及系统
US10528342B2 (en) * 2017-10-16 2020-01-07 Western Digital Technologies, Inc. Function tracking for source code files

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4558413A (en) * 1983-11-21 1985-12-10 Xerox Corporation Software version management system
US5133066A (en) * 1985-10-24 1992-07-21 International Business Machines Corporation Method for selecting multiple versions of data in a reduced record units text editing system
US4714992A (en) * 1985-11-26 1987-12-22 International Business Machines Corporation Communication for version management in a distributed information service
US4809170A (en) * 1987-04-22 1989-02-28 Apollo Computer, Inc. Computer device for aiding in the development of software system
US4912637A (en) * 1988-04-26 1990-03-27 Tandem Computers Incorporated Version management tool

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
25TH ACM/IEEE DESIGN AUTOMATION CONFERECE PROCEEDINGS=1988 *

Also Published As

Publication number Publication date
US5278979A (en) 1994-01-11
JPH07117895B2 (ja) 1995-12-18
EP0492071A2 (en) 1992-07-01
EP0492071A3 (en) 1993-04-21

Similar Documents

Publication Publication Date Title
JPH04248623A (ja) ソースデータのためのバージョン管理方法および装置
US9836362B2 (en) Cyclic commit transaction protocol
JP2531776B2 (ja) デ―タベ―スを回復する方法
US5553279A (en) Lossless distribution of time series data in a relational data base network
US5218696A (en) Method for dynamically expanding and rapidly accessing file directories
US5347653A (en) System for reconstructing prior versions of indexes using records indicating changes between successive versions of the indexes
US6374267B1 (en) Database backup system and method utilizing numerically identified files for incremental dumping
US5946700A (en) Method and apparatus for preserving non-current information that can be overwritten in a computer file
US7933870B1 (en) Managing file information
CN100452052C (zh) 捕获和传送文件系统的密集诊断数据的方法和装置
US5740445A (en) Information processing apparatus for generating directory information to manage a file using directories
US20030131253A1 (en) Data management appliance
WO1998040827A9 (en) Method and system for defining transactions from a database log
KR20070003577A (ko) 역 계층적 구조를 갖고 있는 파일 시스템
US7599971B1 (en) Detecting and managing missing parents between primary and secondary data stores for content addressed storage
EP1504376B1 (en) Data archive recovery
US6038569A (en) System for data structure loading with concurrent image copy
AU664763B2 (en) Entity-relation database
JP3636773B2 (ja) データベースのチェックを行う情報処理装置
JP3730556B2 (ja) データベース管理システム
US9075819B1 (en) Method and apparatus for providing parallel backup set processing for creating a synthetic backup
JP2822869B2 (ja) ライブラリファイル管理装置
JPH0277950A (ja) データベース処理システム
JPH02137036A (ja) データベース更新方式
JPH02287643A (ja) 共有ファイルの障害回復方式