KUNDE: Apothekensoftware awintaONE®
HERAUSFORDERUNGEN: Standortübergreifende, kontinuierliche Entwicklung und einfache Bereitstellung der awintaONE® Apothekensoftware
ERGEBNIS: Mit InterSystems IRIS ermöglicht die native Unterstützung von Container-Technologien Versionsänderungen in Sekundenschnelle. Neben kürzeren Release-Zyklen bietet dieser Ansatz auch die Vorteile einer einfachen und effizienten Bereitstellung.
Die Datenplattform InterSystems IRIS liefert die Infrastruktur für die Entwicklung und die einfache Bereitstellung von Updates der Apothekensoftware awintaONE®
Als innovative Option für das Deployment von Softwarelösungen revolutionieren Container agile IT-Entwicklungsumgebungen nachhaltig. Ein anschauliches Beispiel dafür liefert die awinta GmbH, der Marktführer für Apothekensoftware in Deutschland. Für die kontinuierliche Entwicklung der Software awintaONE setzt das Unternehmen auf Containerisierung im Rahmen des Lösungsportfolios von InterSystems. Damit gelingt es, sämtliche programmiertechnischen Anforderungen „out of the Box“ zu lösen und den Anwendern in Apotheken das modernste Warenwirtschaftssystem der Branche bereitzustellen.
Container versetzen Software-Entwickler in die Lage, ihre Applikationen und Services zu paketieren, also alle zur Ausführung unverzichtbaren Elemente in eine gemeinsame Box zu stecken. Solch ein Container enthält deshalb bereits alles, was für die einfache Bereitstellung und den reibungslosen Betrieb der Lösung benötigt wird. Der größte Vorteil des Konzepts Containerisierung lässt sich auf eine einfache Formel bringen: „Runs here, runs everywhere“. Wenn ein Container auf dem System des Entwicklers läuft, läuft er unverändert auch auf dem System des Kunden. Darüber hinaus vereinfacht und beschleunigt die Technologie die kontinuierliche Entwicklung einer Software im Sinne des DevOps-Ansatzes. Bei awinta führt dies zu einem erheblichen Plus an Flexibilität und Automatisierung,wie ein Blick auf den Prozess verdeutlicht.
Hohe Anforderungen an das Datenmanagement
Als Tochtergesellschaft der NOVENTI Health SE ist awinta mit rund 7.000 betreuten Kunden Marktführer für Apothekensoftware im deutschen Gesundheitsmarkt. Das Unternehmen mit Hauptsitz in Bietigheim-Bissingen gehört regelmäßig zu den Preisträgern der wichtigsten Branchenauszeichnungen, darunter der Kooperationspreis 2018 in der Kategorie „Bester IT-Partner“ sowie die zweifache Auszeichnung als Apotheken-Favorit auf der expopharm 2017.
Bereits seit mehr als 20 Jahren setzen die awinta-Verantwortlichen auf Lösungen von InterSystems. Im Fall von awinta konzentriert sich die Kooperation auf die Software awintaONE. Die Plattform awintaONE ist für die Kommunikation aller Partner im E-Health-Bereich ausgelegt. Durch die Mehrmandantenfähigkeit können beliebig viele Geschäftsfelder und Filialen verwaltet und zugefügt werden.
Nach jahrelangem Einsatz der bewährten Datenbanklösung InterSystems Caché nutzt awinta für das interne Datenmanagement inzwischen die hochperformante Datenplattform InterSystems IRIS. Ralf Spielmann, System/Datenbankarchitekt und Chapter Manager Datenbankentwicklung bei NOVENTI Health SE, fasst die Vorteile, die die Technologie von InterSystems bietet, folgendermaßen zusammen: „Was auch immer programmiert werden soll: Um eine spezifische Anforderung zu lösen, muss ich nicht nach zusätzlichen Tools von Drittanbietern suchen. Ich habe noch keine Situation erlebt, in der ich eine Anforderung nicht mit InterSystems-Technologie lösen konnte. Denn hier erhalte ich alles aus einer Hand und muss mich nicht mit weiteren Technologien belasten.“
Voller Fokus auf Flexibilität und Automatisierung
Das Lösungspaket awintaONE bildet eine der neuesten Software-Linien im Angebot der awinta. Die gesamte Anwendungslogik dieser Apothekensoftware wird seit jeher mit Datentechnologie von InterSystems realisiert. Durch die native Unterstützung der Containertechnologie mit InterSystems IRIS ist es nunmehr möglich, den gesamten Anwendungscode in Containern bereitzustellen.
„Wir sind dadurch im Vergleich zu früher wesentlich flexibler geworden. Denn: So einen Container erstellt man, benutzt man und wenn man einen anderen braucht, wird er gestoppt und man startet den nächsten“, erklärt Spielmann. „Insofern sind wir jetzt deutlichvielseitiger. Wir erreichen dank der Container im Sinne des DevOps-Ansatzes einen sehr hohen Grad der Automatisierung im Workflow. Das reicht von der Code-Erstellung bis zur Auslieferung des fertigen Ergebnisses..”
Weitereichende Vorteile beim Einsatz von Homeoffice
Da die gesamte Entwicklungsarbeit an awintaONE bereits auf Containertechnologie beruht, erzielt das Unternehmen einen Effizienzgewinn infolge der verbesserten Zusammenarbeit bei der Programmierung. Denn ohne den Containeransatz wäre das konzertierte Zusammenspiel von Programmierern an den fünf verschiedenen Standorten in Bietigheim-Bissingen, Oberhausen, Mannheim, Gefrees und Brasov (Rumänien) nicht denkbar. Die Alternative bestünde darin, dass alle Entwickler mit einem zentralen Entwicklungsserver arbeiten müssten – allein aufgrund der unvermeidlichen Latenzen bei der Datenübertragung kaum denkbar und nicht praktikabel. Mithilfe der Container hat jeder Entwickler, etwa im Homeoffice oder an jedem anderen Ort der Welt, die benötigte Entwicklungsumgebung auf seinem lokalen Rechner zur Hand und verfügt damit über alles Erforderliche, was er für seine Aufgaben benötigt und kann einfach und problemlos mit seinen Kollegen zusammenarbeiten.
Dies erweist sich insbesondere in Ausnahmesituationen, wie etwa während der COVID-19-Pandemie, als wahrer Trumpf. „Hätten wir das erst während der Pandemie umstellen müssen, hätten wir Probleme bekommen“, erklärt Spielmann. „Man könnte mit Sicherheit auch in anderer Form zusammenarbeiten, aber nicht so effizient wie wir das mithilfe der Containerisierung gelöst haben.“ Zwar könne jedem Entwickler ein Linux-Server bereitgestellt werden, aber die Aktualisierungen untereinander immer wieder abzugleichen, um Überschneidungen bei einzelnen Abschnitten zu vermeiden, hätte awinta in der Entwicklung mit Sicherheit deutlich zurückgeworfen.
Mächtiges Tool für Deployment und Aktualisierung
Um eine beständige Basis für einen effizienten Entwicklungsprozess zu etablieren, setzt awinta auf den DevOps-Ansatz. Es beschreibt eine Methodik, um den Prozess zwischen Entwicklern und Operations, also den Benutzern oder Testern, zu verbessern. Der DevOps-Ansatz gilt als beliebtes Einsatzgebiet für Container, denn sie tragen dazu bei, den Prozess zu unterstützen und zu verschlanken, wie Michael Braam, Senior Sales Engineer bei InterSystems, erklärt: „Anstelle eines vollumfänglichen Anwendungsprogramms werden lediglich die jeweils aktuellen Container mit kleinen Programmaktualisierungen zur Verfügung gestellt. Damit erfüllt das Konzept die Anforderung des DevOps-Modells, kleinschrittiger und zugleich schneller und agiler in der Softwareentwicklung voranzuschreiten.“
Die Entwickler stehen damit nicht länger in der Pflicht, selbst bei kleinsten Code-Änderungen das monolithische Gesamtkonstrukt der Anwendung im Auge zu behalten, sondern können sich voll und ganz auf die Optimierung spezifischer
Programmabläufe konzentrieren. Hinzu kommen die Vorteile, dass Entwickler durch DevOps auf Container-Basis schneller Feedback erhalten und sich in Teams über große Entfernungen hinweg miteinander synchronisieren können. Kernelement für alle Programmieraufgaben ist eine Build Machine, auf der InterSystems-Technologie zum Einsatz kommt. Auf einem Source-Control-Server befindet sich das GIT Repository, wo die einzelnen Stränge zusammenlaufen. Das lokale GIT des Entwicklers gleicht sich kontinuierlich mit diesem zentralen Source-Control-Server ab. Durch einen automatisierten Build-Prozess werden alle von den unterschiedlichen Entwicklern eingecheckten Änderungen und Erweiterungen aufgegriffen und eine neue Version des Container-Images erstellt. Die Entwickler arbeiten dank der fortwährenden Image-Synchronisation stets mit der aktuellsten Code-Version und gelangen so schneller zum Ziel.
Continuous Delivery auf höchstem Standard
Aktuell setzt NOVENTI bei awinta das Vorhaben um, Anwendungen zu clustern und von monolithischen Applikationen auf Microservices umzustellen, zum Beispiel für den Abruf des Lagerbestands oder das Anstoßen einer Preisfindungsfunktion.
Ralf Spielmann veranschaulicht den Vorteil von Containern im Tagesgeschäft: „Wenn mit dem herkömmlichen Prozedere ein Update an die Kunden ausgespielt werden soll, dauert der Vorgang inklusive Serverneustart rund 15 Minuten. Dabei kennt jeder Entwickler das geringe Restrisiko, das bei jeder automatischen Installation, Konfiguration oder Update eines Systems vor Ort besteht.“ Mit Containern hingegen erfolge der Versionswechsel per Mausklick innerhalb von acht Sekunden.
In herkömmlichen Strukturen kann sich jede Maschine geringfügig unterscheiden, ein Container verhält sich jedoch immer gleich. Das Ergebnis sind kürzere Release-Zyklen, zeitsparendes und unkompliziertes Deployment neuer Features in Tausenden von Apotheken und extrem kurze Update-Zeiten bei den Kunden von awinta. Die Basis für diese dynamische Prozessstruktur legt die Datenplattform InterSystems IRIS.
Für awinta markiert der Einsatz von Containern eine Trendwende im Deployment von IT-Assets, durch die Änderungen im Warenwirtschaftssystem erheblich vereinfacht werden – vom elektronischen Rezept über die Kassensicherungsverordnung bis hin zu Mehrwertsteueranpassungen oder Rahmenverträgen. Durch ihre exakt auf die Anforderungen der Entwickler abgestimmte, interoperable und skalierbare Architektur lässt sich das volle Potenzial von Containern beim Erstellen und bei der Bereitstellung neuer Anwendungen und Services noch effizienter nutzen..