Entering content frame

Background documentation Distributed Development

In a large-scale application development, there are various development scenarios that come under distributed development. DTR provides an infrastructure to manage each scenario in a controlled way.

Features for Distributed Development

Users in Different Geographical Locations

In a multi-user environment for the development of a large-scale application, users work in different geographical locations. Having a single central repository to hold all the development resources, to which all the developers connect to, it is not feasible.

A synchronization of changes might have to be done between:

...

·        Workspaces present in the same repository

·        Workspaces present in different repositories

Releases of Software Components

As a software component goes through the cycle of development, different states (or releases) of the software components are maintained in different workspaces in the repositories. Typically, the workspaces corresponding to different releases of a software component have a common ancestor workspace. Hence a bug present in a common ancestor workspace trickles down to the subsequent higher releases. To avoid maintenance of the multiple releases of the software component, it should also be possible to propagate such bug fixes done in a lower release to successor releases.

Delivering Software Components to Customers

Delivering the sources of a software component can be part of the software component delivery. This allows the customer to make its own adaptations of the component. It should be possible to send across any bug fixes/modifications in the resources without overwriting the adaptations at the customer site. When the delivery of the subsequent releases is made, it should be done such that the customers get a chance to keep their own changes.

Functions for Distributed Development

DTR provides the following features for managing distributed development:

·        Integrating Changes

·        Propagating Changes

·        Automatically Detecting Integration Conflicts

·        Integrating conflict resolution

·        Propagating a Conflict Resolution

 

 

 

 

Leaving content frame