Begin april is met een release van Relatics de functie Synchronization vrijgegeven. Gebaseerd op de technieken van Distributed Integration, wordt het onderhoud van veel dezelfde templates binnen een environment enorm vereenvoudigd. In dit artikel wordt kort uitgelegd wat Synchronization is, wat de voordelen van Synchronization zijn en waar rekening mee gehouden moet worden om Synchronization ook effectief in te zetten.
Wat is Synchronization
Synchronisation is een techniek om workspaces van verschillende projecten hetzelfde te houden. De truc van Synchronization zit hem erin dat de workspaces worden gebaseerd op een template. Een template is niets anders dan een âbevrorenâ workspace zonder inhoud. In de environment maak je een nieuwe template en baseerd die vervolgens op een bestaande workspace (meestal een ontwikkel workspace).
Vervolgens kan een project-workspace aan deze template gekoppeld worden.
Voordelen van Synchronization
Synchronization mag dan niet spannend klinken, het is het wel. Doordat je nu meerdere workspaces kan baseren op één en dezelfde template, is het doorvoeren van wijzigingen opeens enorm eenvoudig geworden. Op deze manier kan een fout in een rapport, een selection extender die vergeten is, of een rol die net één optie mist, doorgevoerd worden in alle projecten door het op één plek te wijzigen. Maar ook een compleet nieuwe functionaliteit. Tot synchronization moest dit nog gedaan worden in elke workspace waar de fout zat door het opnieuw te bouwen of te kopiëren. Duidelijk is dat dit enorm veel tijd scheelt en ook de kwaliteit van de workspaces veel beter maakt. Daarnaast worden de workspaces ook consistenter, wat het gebruik ervan eenvoudiger maakt.
Effectief inzetten van Synchronization
Uiteraard zijn er ook beperkingen aan de techniek. De belangrijkste is wel dat er alleen instanties/types overgezet kunnen worden en geen libraries. Of een workspace ook omgezet kan worden naar een template kan eenvoudig getest worden door de optie âValidate for templateâ te kiezen (zie ook afbeelding 2).
Maar naast het technische deel van Relatics, zal er ook nagedacht moeten worden over het ontwikkelproces en hoe de templates âgereleasedâ gaan worden. In eerdere klantgesprekken kwamen al wat vragen aan de orde. In welke tijdstermijnen worden er nieuwe templates gereleased? Worden er ook bugfix/hotfix-releases gemaakt naast de nieuwe ontwikkelingen? Hoe wordt data gemigreerd bij de verschillende projecten als er een wezenlijke datamodelwijziging in een release plaats vindt? Welke ruimte krijgen projecten nog om af te wijken van de standaard template, want niet altijd wil een project zijn eigen processen aanpassen aan nieuwe functionaliteit? Want wanneer een workspace niet meer âaangehaaktâ (attached) blijft met een template, dan is de oude situatie van voor synchronisation weer van toepassing.
Conclusie
Synchronization is een welkome aanvulling aan Relatics. Het lost het irritante probleem van het bijhouden van bugfixes en features in meerdere workspaces op. Voor wie aan de slag wil met deze nieuwe functionaliteit, heeft een aantal stappen toe te voegen aan het ontwikkelproces. Daarnaast vraagt het ook een review van de huidige werkwijze rond het beheer van Relatics.