DevSync Überblick

Grundlagen 

Conigma DevSync ist eine Lösung zum Synchronisieren paralleler Entwicklungssysteme bzw. von Entwicklungen auf parallelen Systemlinien.

Eine Synchronisation findet effektiv immer von einem Quellsystem auf ein Zielsystem statt. Das Quellsystem muss nicht notwendigerweise ein Entwicklungssystem sein, es kann auch ein zu einem Entwicklungssystem zugehöriges QA- oder Produktivsystem sein.  Das Zielsystem ist im Normalfall jedoch immer das Entwicklungssystem einer parallelen Systemschiene. DevSync beantwortet hierbei die Frage, welche [Teil-]Objekte nur in der Entwicklung der Synchronisationsquelle oder nur im Synchronisationsziel geändert wurden und welche in Quelle und Ziel geändert wurden.

Mit DevSync kann eine beliebige Objektmenge, z.B. ein Change oder ein Release, synchronisiert werden.

Es gibt bezüglich der Objektänderungen 4 Verschiedene Konstellationen:

  • Nur in der Quelle geänderten Objekte können mit DevSync direkt via Transport von Kopien in das Synchronisationsziel übernommen werden.

  • Für Objekte, welche nur im Ziel geändert wurden ist keine Synchronisation notwendig.

  • Objekte, welche in Quelle und Ziel geändert wurden werden von DevSync als Konflikt markiert und müssen manuell gemerged werden.

  • Für Objekte, welche weder in der Quelle noch im Ziel geändert wurden, ist keine Synchronisation notwendig.

Beispiel 

Ein Beispiel-Setup welches häufig zum Einsatz kommt wird in der folgenden Grafik illustriert:

Dieses Beispiel besteht aus einer Wartungslinie (Release n) und einer Projektentwicklungslinie (Release n+1). Abgeschlossene Wartungsentwicklungen werden nach dem Transport in die Produktion via DevSync in die Projektentwicklungslinie synchronisiert. Dadurch wird für den späteren Releasewechsel (Release Cut-Over) sichergestellt, dass alle notwendigen Bugfixes sich auch im kommenden Release befinden.

DevSync gibt es als Stand-Alone GUI sowie integriert in den Conigma CCM Repository Browser.

Im Folgenden ist ein einfaches Beispiel mit einem Konfliktobjekt (Report Z_DS_CONFLICT) und einem konfliktfreien Objekt (Report Z_DS_NO_CONFLICT) zu sehen:

Sicht im Repository Browser:

Stand-Alone Sicht:

Im Beispiel wurde der Report Z_DS_NO_CONFLICT nur in einem der beiden betroffenen Entwicklungssysteme geändert, kann also ohne Probleme von DevSync quertransportiert werden.

Der Report Z_DS_CONFLICT wurde in beiden Entwicklungssystemen parallel geändert, ein Abgleich muss also manuell erfolgen.