Collaborative model for software systems with synchronization submodel with merge feature, automatic conflict resolution and isolation of potential changes for reuse
First Claim
1. A collaboration model for supporting construction of distributed systems and a range of collaborative situations comprises:
- a type submodel for defining constructs;
a change submodel responsive only to type submodel constructs and arranged to support evolvability by defining a manner in which types and instances are allowed to change;
a programming language independent replication submodel arranged to define a manner in which multiple versions of objects are represented;
a synchronization submodel arranged to collect and report changes in the replication submodel and to optimize software reuse in isolation of potential changes;
a merge submodel arranged to initiate collection of changes, identify conflicts, resolve conflicts, and propagate notification of whether changes were accepted, rejected, or a conflict could not be resolved; and
a distribution submodel arranged to define a manner in which objects are physically transported across a system.
2 Assignments
0 Petitions
Accused Products
Abstract
A collaboration model is provided for constructing evolutionary collaborative applications deployed in network environments, such as the World Wide Web, or wireless environments, which supports introduction of new object types into the deployed system. The collaboration model is arranged as a set of submodels. The highest-level control resides in a synchronization submodel. A merge submodel defines mechanisms for merging changes, detecting conflicts, and resolving conflicts whenever possible. A change submodel is operative to define allowable changes for shared objects. A replication model is arranged to provide replication functionality, and define how multiple versions of an object are presented. A distribution submodel provides distribution functionality, and a type submodel provides a programming language-independent representational scheme for the overall collaboration model. The synchronization submodel, the merge submodel, and the replication submodel are arranged to use constructs defined by the change submodel.
431 Citations
25 Claims
-
1. A collaboration model for supporting construction of distributed systems and a range of collaborative situations comprises:
-
a type submodel for defining constructs;
a change submodel responsive only to type submodel constructs and arranged to support evolvability by defining a manner in which types and instances are allowed to change;
a programming language independent replication submodel arranged to define a manner in which multiple versions of objects are represented;
a synchronization submodel arranged to collect and report changes in the replication submodel and to optimize software reuse in isolation of potential changes;
a merge submodel arranged to initiate collection of changes, identify conflicts, resolve conflicts, and propagate notification of whether changes were accepted, rejected, or a conflict could not be resolved; and
a distribution submodel arranged to define a manner in which objects are physically transported across a system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 23, 24, 25)
-
-
19. A collaboration model for supporting construction of distributed systems and a range of collaborative situations comprising:
-
a type submodel for defining constructs;
a change submodel responsive only to type submodel constructs and arranged to support evolvability by defining a manner in which types and instances are allowed to change;
a programming language independent replication submodel arranged to define a manner in which multiple versions of objects are represented;
a synchronization submodel arranged to collect and report changes in the replication submodel and to optimize software reuse in situations involving (1) changes but no automatic conflict detection and resolution, (2) changes with automatic conflict detection and resolution, and (3) replication;
a merge submodel arranged to initiate collection of changes, identify conflicts, resolve conflicts, and propagate notification of whether changes were accepted, rejected, or a conflict could not be resolved; and
a distribution submodel arranged to define a manner in which objects are physically transported across a system. - View Dependent Claims (20)
-
-
21. A collaboration model for supporting construction of distributed systems and a range of collaborative situations comprising:
-
a type submodel for defining constructs;
a change submodel responsive only to type submodel constructs and arranged to support evolvability by defining a manner in which types and instances are allowed to change;
a programming language independent replication submodel arranged to define a manner in which multiple versions of objects are represented;
a synchronization submodel arranged to collect and report changes in the replication submodel, to optimize software reuse in isolation of potential changes, and to invoke the functionality of the merge when automatic conflict resolution is required;
a merge submodel arranged to initiate collection of changes, identify conflicts, resolve conflicts, and propagate notification of whether changes were accepted, rejected, or a conflict could not be resolved; and
a distribution submodel arranged to define a manner in which objects are physically transported across a system. - View Dependent Claims (22)
-
Specification