Kundenstory
Entwicklung einer modernen Plattform auf Basis von AWS
FullStack Development mit Microservices, Domain Driven Architecture und NodeJS/VueJS in der AWS
Unternehmen
IU Internationale Hochschule
Leistungen
Fullstack Software Development
Branche
Bildung
Kunde seit
2021
Höhere Flexibilität
Durch modularer Aufbau der Software-Architektur.
Skalierungsfähigkeit
Durch ECS (Container-Services auf AWS) und Auto-Scaling in der Cloud.
Robustheit
Durch Verwendung von Infrastructure as Code (AWS CloudFormation)
Daten Integrität und Synchronisierung
Durch Einsatz von modernen Services wie CDC Mechanismen und Kafka.
Schnelleres Release Zyklen
Durch den Einsatz von CICD und Bitbucket pipelines
Modernes Secret Management
Durch rotierende Passwörter und Infrastruture as Code.
In A Nutshell:
- BRANCHE: BILDUNG
-
Task: In diesem Kundenprojekt ging es um die Ablösung einer externen Software für das Campus-Management durch eine Eigenentwicklung.
-
Team:
-
Insgesamt ca. 50 Leute bestehend aus POs, Scrum Master, BAs, UX-Designer, Backend-, Frontend- und FullStack-Entwickler, DevOps
-
Mehrere Applikationsteams für die Umsetzung der Microservicearchitektur
-
-
Projektlaufzeit: +12 Monate
Herausforderungen:
-
Neuentwicklung einer Campus Management Software für eine Hochschule
-
Skalierung: Stetig wachsende Zahl an Nutzern. Die bestehende Software kann nicht mit der steigenden Anzahl von Nutzern skalieren
-
Robustheit: Eine inkonsistente Performance bei hoher Last gefährden laufende Geschäftsprozesse
-
Design & UX welches nicht mehr den Ansprüchen des Kunden entspricht
-
Vorbereitung der Internationalisierung: Software ist nur für den deutschen/europäischen Markt ausgelegt
-
Aufwendiges reverse Engineering der Legacy Anwendung
-
Datenintegrität zwischen neuen und alten System, da schrittweise Anwendung umgestellt wird statt Big Bang
Lösungen:
- Umsetzung einer Microservice-Architektur mit NodeJS
- Modulares, einfaches und skalierbares Front-End (Micro Frontend Ansatz)
- Domain Driven Design
- Vollautomatisierte Provisionierung mittels AWS CloudFormation-Vorlagen
- Kommunikation verschiedener Services über Kafka
- Datenintegrität durch einen CDC Mechanismus mithilfe von Apache Kafka
Ergebnisse:
- Höhere Flexibilität durch modularer Aufbau der Software Architektur
- Skalierungsfähigkeit durch ECS (Container-Services auf AWS) und Auto-Scaling in der Cloud
- Robustheit durch Verwendung von Infrastructure as Code (AWS CloudFormation)
- Daten-Integrität und Synchronisierung durch Einsatz von modernen Services wie CDC Mechanismen und Kafka
- Schnelleres Release Zyklen durch den Einsatz von CICD und Bitbucket Pipelines
- Modernes Secret Management durch rotierende Passwörter und Infrastruture as Code
Projektgeschehen:
Entwicklung Campus Management Software
Das Ziel des Kunden war es, eine bestehende Campus Management Software zu ersetzen. Hauptnutzer der Software sind die internen Mitarbeiter. Durch den Erfolg der Hochschule und die stetig wachsende Zahl an Nutzern musste die Software angepasst werden, um den Anforderungen der Skalierung Stand zu halten. Aufgrund der Fülle an Daten war eine weitere Herausforderung ein nicht mehr zeitgemäßes und unübersichtliches Design. Die bestehende Software, welche ersetzt werden sollte, war auf einem On-premise System gehostet.
Cloud Infrastruktur, Microservices, Domain-Driven Design und Infrastructure As Code
Um die verschiedenen Herausforderungen anzugehen wurde wertgelegt auf einen modernen Technology Stack mit Technologien wie AWS, ECS, Microservices, Infrastructure as Code und Bitbucket. Aufgrund der losen Kopplung der Services sind die Teams in der Lage unabhängig ihr Produkt weiterzuentwickeln und bereitzustellen.
Die Neuentwicklung basiert auf eine Microservice Architektur, geschrieben mit NodeJS und VueJS. Die Zielinfrastruktur läuft auf eine skalierte Container-Lösung ECS auf AWS. Dabei wurde darauf geachtet stets ein Domain Driven Design zu Nutzen, damit sich die Prozesse in der Softwareentwicklung an die schnell verändernden Prozesse des Geschäftes anpassen. Dank des modernen User Experience Designs (UX) wird die Interaktion mit dem Produkt vereinfacht.
Ein weiterer Vorteil davon ist die Isolation der Module von anderen Bereichen und Schichten der Software und die Vermeidung von Duplikaten in der Software. Die Microservice Architektur hilft beim schnelleren Releasen von User-Anforderungen und gilt als Basis für die Skalierung der Software. Dank der neu eingeführten Entwicklungs- und Deployment Workflows wird eine konstante Codequalität gewährleistet und Release-Zyklen beschleunigt.
Durch den Einsatz von Infrastructure as Code mithilfe von AWS CloudFormation ist es möglich, die komplette Infrastruktur in kurzer Zeit wiederherzustellen, dadurch ist sie robuster und reduziert den Management Overhead an der Cloud Infrastruktur enorm.
Ganz spannend war auch der Einsatz von Kafka. Dieser wurde als Kommunikationslayer zwischen verschiedenen Services. Ein weiterer Nutzen von Kafka war der Einsatz eines CDC (Change Data Capture) Mechanismus, dieser half verschiedenen System in Nah-Echtzeit die Daten Synchron zu halten und kontinuierlich zu aktualisieren.
Projektstatus und Ergebnisse
Die Weiterentwicklung des Projektes läuft kontinuierlich weiter. Die Vorteile der neuen Technologien spürt der Kunde als auch die Nutzer der Plattform schon heute. Durch den Einsatz moderner Technologien und der Cloud Infrastruktur AWS ist die Lösung sehr robust und skaliert nun mit den Anforderungen der Nutzer mit.
Technology Stack:
Cloud Infrastruktur:
-
AWS ECS mit Autoscaling
Daten Services:
-
AWS MySQL for Aurora
-
AWS ElasticCache Redis
-
AWS Glue
CICD & IaC:
-
AWS CodeDeploy
-
Bitbucket Pipelines
-
Sonarcloud
-
AWS CloudFormation
Software Entwicklung:
-
TypeScript – NestJS
-
VueJS
Warum Pexon Consulting?
Pexon Consulting hat sich voll und ganz Ihrem Erfolg verschrieben und wir glauben daran, dass wir immer für jeden unserer Kunden die Extrameile gehen:
Hingabe zum Erfolg
Fokus auf Leistung
Wir werden Ihr engagierter Partner. Das bedeutet, dass wir ein Projekt erst dann abschließen, wenn sowohl Sie als auch wir zu 100 % zufrieden sind.
Engineering mit Leidenschaft
Wir sind ein Netzwerk von Innovatoren. Wir entwickeln mutige Lösungen für die kompliziertesten Herausforderungen unserer Kunden.
Ihre Ansprechpartner
Schicken Sie uns eine Nachricht über das Kontaktformular unserer Kontaktseite und wir werden uns innerhalb weniger Arbeitstage mit Ihnen in Verbindung setzen. Alle übermittelten Informationen werden vertraulich behandelt.
Sie suchen einen Partner für Ihr Projekt?
Wir geben unser Bestes, um Sie zufriedenzustellen.