Beliebte Suchanfragen

Cloud Native

DevOps

IT-Security

Agile Methoden

Java

Logo der codecentric AG, einem in Deutschland führenden IT-Consulting UnternehmenLogo der codecentric AG einem in Deutschland führenden IT-Consulting Unternehmen
Hamburger Menu
HOMEPROJEKTE
//

Mit einem Architektur-Review die Zukunftssicherheit der eigenen Softwareprodukte verbessern

Wie die Kampmann GmbH & Co. KG ihre IT-Landschaft fit für die Herausforderungen von morgen machen konnte

Die Kampmann GmbH & Co. KG ist ein führender Hersteller von innovativen Lösungen im Bereich der Klimatechnik. Mit einem breiten Sortiment an Heizungs- und Kühlsystemen bietet Kampmann maßgeschneiderte Lösungen für Gewerbe- und Industriekunden weltweit. Das Familienunternehmen hat seinen Sitz in Lingen (Ems) in Niedersachsen und beschäftigt mehr als 1.000 Mitarbeiter an über 16 Standorten weltweit.

//

Das Projekt auf einen Blick

  • Aufschlussreiche Analyse der zugrundeliegenden Geschäftsziele einer Kernanwendung
  • Ableitung und Priorisierung konkreter Maßnahmen zur Verbesserung der Softwarearchitektur

  • Klare Handlungsempfehlungen wurden direkt vom Kunden umgesetzt
  • Senkung der Entwicklungs- und Betriebskosten

//

Ausgangssituation

Für die Planung industrieller Kühl- und Heizungsanlagen auf Basis der eigenen Produktpalette nutzt die Kampmann GmbH & Co. KG KaData, eine eigens entwickelte Software, die von internationalen Kunden, insbesondere jedoch im eigenen Vertrieb, verwendet wird. Die Anwendung wird von einem kleinen, internen Team in der Azure Cloud entwickelt und war die erste Cloud-Anwendung dieser Art im Unternehmen — entsprechend hoch waren die Herausforderungen für die Entwickler und das Unternehmen im Allgemeinen. KaData nimmt eine zentrale Rolle für den Vertrieb ein und ist somit kritisch für die Zukunftsfähigkeit des Unternehmens. Um diese Zukunftsfähigkeit validieren zu können, trat Kampmann in die Zusammenarbeit mit codecentric ein. 

//

Lösung

Erfassung des Ist-Zustands

Ausarbeitung der Qualitätsziele

//

Erfassung des Ist-Zustands

Das dreimonatige Projekt umfasste zwei Workshops von jeweils einem Tag. Im ersten Workshop wurde gemeinsam der aktuelle Ist-Stand erfasst und die Hintergründe für die Entwicklung von KaData beleuchtet. Hierbei nahm das Team zunächst das Produkt KaData als solches unter die Lupe. Im Mittelpunkt standen die mit KaData verfolgten Business-Ziele, die Zielgruppe und deren Nutzungsverhalten. 

Im zweiten Schritt wurde der Ist-Zustand auf technischer Ebene aufgenommen. Dabei wurde die Anwendung unter anderem aus den folgenden Blickwinkeln betrachtet:

  • Gesamtsystemarchitektur, inkl. Anbindung an und durch externe Systeme
  • Interne Strukturierung der Anwendung
  • Verwendete Azure Services
  • Konfiguration der Kubernetes Deployments

Zum Abschluss des Workshops betrachtete das Team den aktuellen Entwicklungsprozess von der Idee bis zur Bereitstellung.

//

Ausarbeitung der Qualitätsziele

Die Ausarbeitung der Qualitätsziele von KaData standen im Fokus des zweiten Workshops — diese sind besonders wichtig für die Zukunftsfähigkeit der Software. Die erarbeiteten Qualitätsziele fallen in die Kategorien Verfügbarkeit, Wartbarkeit, Beobachtbarkeit und Performance.

Aufbauend auf den gesammelten Informationen und den identifizierten Qualitätszielen erarbeitete codecentric einen Empfehlungs- und Maßnahmenkatalog für deren Erreichung. Alle Empfehlungen erhielten dabei eine Klassifizierung hinsichtlich Aufwand und Priorität. 

In einer Abschlusspräsentation erfolgte dann die Vorstellung dieses Katalogs. Hierzu gehörten unter anderem:

  • Native Azure-Dienste statt eigens betriebener Services: Die Wartung von selbst gehosteten Services, wie etwa einer Datenbank, kostet Zeit und Ressourcen und bringt zudem eine erhöhte Komplexität in das Team. Die Empfehlung lautete daher, auf eine Azure Cosmos DB zu migrieren. Dadurch konnten drei verschiedene Datenbanksysteme ersetzt und somit neben der Wartbarkeit auch die Verfügbarkeit und Performance des gesamten Produktes verbessert werden.
  • Ganzheitliches Monitoring für bessere Fehleranalyse: Ein wichtiges Element für die Analyse von Softwarefehlern ist der Einsatz einer ganzheitlichen Monitoring-Lösung. Diese gibt Entwicklern die Möglichkeit, Zusammenhänge und Fehler schnell zu erkennen und ihnen auf den Grund zu gehen. Ein weiterer Vorteil solcher Tools ist eine Alarmfunktion, die zum Beispiel beim Auftreten von Fehlern Entwickler und Admins benachrichtigen kann.
  • Einführung von Infrastructure as Code (IaC): Mit IaC werden alle Änderungen an Infrastrukturkomponenten lückenlos dokumentiert. So behalten die Teams stets den Überblick darüber, wer was wann geändert hat und können bei Problemen schnell die Ursache ermitteln und beheben. Ein erhöhter Automatisierungsgrad und Reproduzierbarkeit verringern außerdem den Arbeitsaufwand und steigern die Qualität.

Erfassung des Ist-Zustands

Ausarbeitung der Qualitätsziele

//

Erfassung des Ist-Zustands

Das dreimonatige Projekt umfasste zwei Workshops von jeweils einem Tag. Im ersten Workshop wurde gemeinsam der aktuelle Ist-Stand erfasst und die Hintergründe für die Entwicklung von KaData beleuchtet. Hierbei nahm das Team zunächst das Produkt KaData als solches unter die Lupe. Im Mittelpunkt standen die mit KaData verfolgten Business-Ziele, die Zielgruppe und deren Nutzungsverhalten. 

Im zweiten Schritt wurde der Ist-Zustand auf technischer Ebene aufgenommen. Dabei wurde die Anwendung unter anderem aus den folgenden Blickwinkeln betrachtet:

  • Gesamtsystemarchitektur, inkl. Anbindung an und durch externe Systeme
  • Interne Strukturierung der Anwendung
  • Verwendete Azure Services
  • Konfiguration der Kubernetes Deployments

Zum Abschluss des Workshops betrachtete das Team den aktuellen Entwicklungsprozess von der Idee bis zur Bereitstellung.

//

Ausarbeitung der Qualitätsziele

Die Ausarbeitung der Qualitätsziele von KaData standen im Fokus des zweiten Workshops — diese sind besonders wichtig für die Zukunftsfähigkeit der Software. Die erarbeiteten Qualitätsziele fallen in die Kategorien Verfügbarkeit, Wartbarkeit, Beobachtbarkeit und Performance.

Aufbauend auf den gesammelten Informationen und den identifizierten Qualitätszielen erarbeitete codecentric einen Empfehlungs- und Maßnahmenkatalog für deren Erreichung. Alle Empfehlungen erhielten dabei eine Klassifizierung hinsichtlich Aufwand und Priorität. 

In einer Abschlusspräsentation erfolgte dann die Vorstellung dieses Katalogs. Hierzu gehörten unter anderem:

  • Native Azure-Dienste statt eigens betriebener Services: Die Wartung von selbst gehosteten Services, wie etwa einer Datenbank, kostet Zeit und Ressourcen und bringt zudem eine erhöhte Komplexität in das Team. Die Empfehlung lautete daher, auf eine Azure Cosmos DB zu migrieren. Dadurch konnten drei verschiedene Datenbanksysteme ersetzt und somit neben der Wartbarkeit auch die Verfügbarkeit und Performance des gesamten Produktes verbessert werden.
  • Ganzheitliches Monitoring für bessere Fehleranalyse: Ein wichtiges Element für die Analyse von Softwarefehlern ist der Einsatz einer ganzheitlichen Monitoring-Lösung. Diese gibt Entwicklern die Möglichkeit, Zusammenhänge und Fehler schnell zu erkennen und ihnen auf den Grund zu gehen. Ein weiterer Vorteil solcher Tools ist eine Alarmfunktion, die zum Beispiel beim Auftreten von Fehlern Entwickler und Admins benachrichtigen kann.
  • Einführung von Infrastructure as Code (IaC): Mit IaC werden alle Änderungen an Infrastrukturkomponenten lückenlos dokumentiert. So behalten die Teams stets den Überblick darüber, wer was wann geändert hat und können bei Problemen schnell die Ursache ermitteln und beheben. Ein erhöhter Automatisierungsgrad und Reproduzierbarkeit verringern außerdem den Arbeitsaufwand und steigern die Qualität.

//

Ergebnis

Ein großer Teil der von codecentric ausgesprochenen Handlungsempfehlungen wurden innerhalb eines Dreivierteljahres bereits umgesetzt oder befinden sich aktuell in Bearbeitung. In einem gemeinsamen Feedbackgespräch zwischen Kampmann und codecentric ließen sich die bereits umgesetzten Maßnahmen und deren Auswirkung daher direkt betrachten. Insgesamt konnte Kampmann durch die von codecentric erarbeiteten Maßnahmen die Erreichung der wichtigsten Qualitätsziele merklich verbessern.

  • Durch den Einsatz einer umfassenden Monitoring-Lösung konnte die Transparenz der Anwendung verbessert werden, sodass Kampmann jederzeit den Zustand der Anwendung überwachen und proaktiv auf mögliche Probleme reagieren kann.
  • Mit der Einführung von IaC hat Kampmann seine IT-Infrastruktur derweil grundlegend optimiert. Die Bereitstellungszeit neuer Systeme wurde deutlich verkürzt, die Zuverlässigkeit und Skalierbarkeit der Infrastruktur erhöht. Zudem hat IaC die Zusammenarbeit zwischen den Teams vereinfacht.
  • Durch eine Vielzahl an Vereinfachungen — von der Wahl der verwendeten Azure Services bis hin zur internen Strukturierung der Komponenten — wurde das Produkt zudem wartungsfreundlicher. Dies senkt die Entwicklungskosten und ermöglicht es Kampmann, sich auf die Weiterentwicklung der Anwendung zu konzentrieren.

Kampmann ist nun in der Lage, schneller auf Marktveränderungen zu reagieren, neue Produkte und Funktionen schneller auf den Markt zu bringen und die IT-Infrastruktur effizienter zu verwalten.

Daniel Bruns - Success Story Kampmann & codecentric AG

Dr. Daniel Bruns

Head of Tools and Compliance, Kampmann GmbH & Co. KG

Die Workshops mit codecentric haben uns dabei geholfen, unsere wichtigste Software-Anwendung zu analysieren und deutlich zu verbessern. Die meisten Empfehlungen haben wir direkt umgesetzt und sehen unser Kernsystem jetzt zukunftssicher aufgestellt.

Dr. Daniel Bruns

Head of Tools and Compliance, Kampmann GmbH & Co. KG

Noch Fragen zum Projekt?

Du hast eine in-house entwickelte Software und benötigst ein umfassendes Review? Dann sprich mich gerne an!

Dominik Averesch

Team Lead & IT Consultant

Dominik Averesch

Team Lead & IT Consultant

Ein Meeting, in dem über ein Projekt diskutiert wird
//
Weitere Projekte der codecentric AG

Informiere dich über weitere erfolgreiche Projekte, die wir mit unseren Kunden abgeschlossen haben. Vielleicht findest du hier Anregungen für einen Use Case in deinem Unternehmen.

//

Gemeinsam bessere Projekte umsetzen.

Wir helfen deinem Unternehmen.

Du stehst vor einer großen IT-Herausforderung? Wir sorgen für eine maßgeschneiderte Unterstützung. Informiere dich jetzt.

Hilf uns, noch besser zu werden.

Wir sind immer auf der Suche nach neuen Talenten. Auch für dich ist die passende Stelle dabei.