[54] DYNAMIC VERSIONING SYSTEM FOR MULTIPLE USERS OF MULTI-MODULE SOFTWARE SYSTEM
[75] Inventors: Andrew David Sigal, Seattle; Daniel Bien, Redmond, both of Wash.; Augusto Pissarra, Curitiba, Brazil
[73] Assignee: Microsoft Corporation, Redmond,
Wash.
[21] Appl. No.: 719,687
[22] Filed: Sep. 26, 1996
[51] Int. CI. G06F 12/00
[52] U.S. CI 395/712; 395/703; 707/203;
707/201; 707/200
[58] Field of Search 395/712, 703;
707/203, 201, 200; 364/978, 978.2, 132
[56] References Cited
U.S. PATENT DOCUMENTS
4,459,655 7/1984 Willemin 364/132
4,853,843 8/1989 Ecklund 707/203
4,875,159 10/1989 Cary et al 707/203
A dynamic versioning system for synchronizing different versions of modules among different versions of a complex multi-module software system, and maintaining a consistent view of a version of the complex system for each user having access to the system. The dynamic versioning system grants a user read-only access to the multiple modules in a complex system, and promotes the access to write access only when a user is ready to save a modified module in the permanent non-volatile memory of the complex system. The dynamic versioning system manages the evolving versions of the complex system with a Dynamic Versioning Table (DVT) and master modules that identify the multiple slave modules associated with a particular version of the complex system. Old versions of modules are removed from the complex system's permanent non-volatile memory when the last user has terminated use of the complex system.
19 Claims, 11 Drawing Sheets