Hinweis: Die aktuelle OOP-Konferenz finden Sie hier!
SIGS DATACOM Fachinformationen für IT-Professionals

SOFTWARE MEETS BUSINESS:
Die Konferenz für Software-Architekturen

München, 01. - 05. Februar 2016

Konferenz

Vortrag: Di 8.2
Datum: Di, 02.02.2016
Uhrzeit: 14:00 - 14:45
cart

Quadratur des Kreises: Kundenindividuelle Standardsoftware

Uhrzeit: 14:00 - 14:45
Vortrag: Di 8.2

 

Um sich Wettbewerbsvorteile zu verschaffen, werden von Kunden individuelle Lösungen benötigt und gefordert. Gleichzeitig soll eine solche Lösung kostengünstig umgesetzt und fortlaufend weiterentwickelt werden. Wie ist dieser Spagat zwischen einer Individuallösung und einer Standardsoftware zu schaffen? Durch eine Architektur und ein Vorgehen, das eine flexibel konfigurierbare und weitreichend erweiterbare Standardsoftware ermöglicht.

Zielpublikum: Architekten
Voraussetzungen: Projekterfahrung
Schwierigkeitsgrad: Fortgeschritten

Sie lernen:
Aufbau eines wartbaren kundenindividuellen Standardprodukts

Ausführlichere Beschreibung:
Vor drei Jahren standen wir vor der Herausforderung, für einen Kunden im Maschinenbau eine Lösung für ein Wartungsproblem zu finden. Dessen Kunden hatten jeweils sehr individuelle Anforderungen. Die Anpassung der Standardsoftware war oft so weitreichend, dass nach der Auslieferung keine Updates mehr eingespielt werden konnten und jede Anlage als individuelles Projekt betrachtet werden musste. Der Wartungsaufwand stieg enorm. Kunden konnten nicht von der Weiterentwicklung des Standardproduktes profitieren.
Basierend auf dem Paketmanager NuGet sowie einem Dependency Injection Framework wurde ein neuer Weg beschritten. Das Standardprodukt wurde in Komponenten zerlegt und um Aussprungspunkte für Skripte erweitert. Diese Komponenten können kundenindividuell zu neuen Lösungen zusammengefügt und bei Bedarf um zusätzliche Bausteine sowie Logik ergänzt werden. Die Basiskomponenten werden hierbei nicht verändert. Updates können somit auch zu einem späteren Zeitpunkt eingespielt werden.
Eine weitere Herausforderung stellte die Realisierung eines Staging-Systems dar. Die Konfiguration und Logik des Gesamtsystems sollte zunächst auf einem Integrationssystem getestet und später zeitgesteuert produktiv gestellt werden können. Dabei waren Konfigurationen im Standardprodukt und ggf. davon abweichende in der Individualisierung zu berücksichtigen.
Basierend auf GIT und XDT wurde eine Lösung umgesetzt. Konfigurationen werden stets als Deltas gespeichert. Die Umschaltung zwischen Staging und Produktivumgebung erfolgt über Branches.