Nach fast 40 Jahren Berufserfahrung als Entwickler oder in der Zusammenarbeit mit Entwicklern bin ich der Überzeugung, dass Programmieren teils Kunst, teils Wissenschaft ist – eine Mischung aus Kreativität und technischem Können. Ich habe außerdem beobachtet, dass Kreativität am besten gefördert wird, wenn Entwickler Entscheidungsfreiheit haben.
Wir müssen außerdem anerkennen, dass Entwicklungsmanager Prozesse benötigen, die Kontrolle, Nachvollziehbarkeit und Konsistenz gewährleisten. Gleichzeitig benötigen die Unternehmen, für die sie arbeiten, Software, die schneller, aber ohne zusätzliche Risiken, bereitgestellt werden kann.
Wie lassen sich all diese Anforderungen in der Welt der Hybrid Cloud in Einklang bringen? Dies stellt eine besonders hohe Hürde für Entwickler und Organisationen dar, die Geschäftsanwendungen entwickeln und nutzen, die mit Mainframe-Subsystemen (MSS) wie CICS interagieren sollen.®, IMS™ und Db2® Die
Rocket Software bietet Ihnen mit branchenführenden Entwicklungsfunktionen und einer Vielzahl an Benutzeroberflächen die optimale Lösung. Die Lösungen sind auf z/OS®, lokal und in der Cloud unter Windows®, Linux® und AIX einsetzbar. Rocket® Enterprise Developer und Rocket® Enterprise Test Server bieten Entwicklern die Möglichkeit, ihre Benutzeroberfläche individuell anzupassen und moderne Entwicklungsmethoden zu integrieren. Dies umfasst sogar die Integration von DevOps in Ihre täglichen Aufgaben bei der Wartung und Modernisierung von MSS-Anwendungen.
In den letzten Versionen haben wir außerdem die Unterstützung für die Containerisierung von Entwicklungsfunktionen eingeführt. Die Bereitstellung der Entwicklungsfunktionen in Containern erhält die einzigartigen Eigenschaften von Enterprise Developer. Die Bereitstellung individueller Entwicklungsumgebungen, die die Engpässe der traditionellen MSS-Anwendungsentwicklung beseitigen, bleibt erhalten. Dasselbe gilt für die Möglichkeit der zentralen Verwaltung und Steuerung in großen Entwicklungsorganisationen.
Die dynamische Natur von Containern hat sie in allen führenden CI/CD-Pipeline-Tools allgegenwärtig gemacht, um automatisierte Entwicklungsfunktionen bereitzustellen. Und jetzt können Sie sie auch an Workflow-Modelle von branchenbasierten Versionskontrollsystemen anpassen.
Um diese Auswahlmöglichkeiten noch weiter auszubauen und zu ergänzen, haben wir in der Version 10.0 von Enterprise Developer die Möglichkeit eingeführt, mit Entwicklungscontainern zu deployen.
Entwicklungscontainer (oder kurz Dev-Container) sind reproduzierbare Entwicklungsumgebungen. Aber worin unterscheiden sie sich von Standardcontainern?
Dev-Container bieten eine zusätzliche Kontrollebene für die Konfiguration der Entwicklungsumgebung. Sie erweitern den Standardcontainer um speziell auf die Entwicklung zugeschnittene Anpassungsoptionen. Dev-Container werden über eine JSON-basierte Konfigurationsdatei verwaltet, die eine vereinfachte Verwaltung der Containerfunktionen ermöglicht und zusammen mit der Anwendung versioniert werden kann. Weitere Funktionen erlauben es einzelnen Entwicklern, ihre Umgebung an ihre persönlichen Präferenzen anzupassen.
Dev Containers unterstützen Entwickler, indem sie eine zuverlässige, isolierte und effiziente Umgebung zum Erstellen und Testen von Code bereitstellen.
Sie tragen zu schnelleren Entwicklungszyklen und einer besseren Zusammenarbeit innerhalb des Entwicklungsteams bei.
Isolation und Konsistenz
Geschwindigkeit und Effizienz
Kontinuierliche Integration und Tests
Cloud-native Entwicklung
Bei der typischen hostbasierten Entwicklung befinden sich alle Elemente wie Editor, SDKs, Anwendungsserver, Tools und Pakete sowie der Quellcode in einer einzigen Umgebung. Dies führt häufig zu Softwarekonflikten zwischen Projekten.
Wenn es zu Konflikten kommt, müssen die Entwickler Versionen dieser Abhängigkeiten wählen, die nicht mit den idealen Versionen übereinstimmen, nur um die Verwendung mehrerer Quellcodebasen aufrechtzuerhalten.
Bei der containerbasierten Entwicklung werden die benötigten SDKs, Anwendungsserver, Tools und Pakete, einschließlich Rocket® Enterprise Developer, in einem Container installiert. Der Quellcode kann entweder in den Container geladen oder in diesen eingebunden werden, wodurch eine vollständige Isolation gewährleistet ist.
Betrachten wir dies im Kontext der MSS-Anwendungsentwicklung, wo häufig geschäftliche Anforderungen an die Auslieferung in unterschiedlichen Abständen bestehen. Die Verwendung von Entwicklungscontainern ermöglicht es dem Entwickler, an verschiedenen „Versionen“ der Anwendung zu arbeiten, ohne viel Zeit für die Neukonfiguration seiner Entwicklungsumgebung aufwenden zu müssen.
Um Ihnen eine Vorstellung davon zu geben, wie das alles funktioniert, schauen Sie sich bitte das folgende Video an.
Dev-Container bieten Entwicklern einen unkomplizierten Zugriff auf ihre Entwicklungswerkzeuge und entsprechen damit modernen Entwicklungsmethoden. Ideal für diese Art der Entwicklung ist die Verwendung von Unit-Tests, um das Testen des geänderten Codes vor der Einbindung in den CI/CD-Prozess zu vereinfachen und zu beschleunigen. Unit-Tests reduzieren zudem die Fehlerrate in den späteren, funktionaleren Testphasen des Software-Entwicklungs- und -Collection-Prozesses (SLDC).
COBOL [OC1]-Unit-Tests sind in Rocket® Enterprise Developer bereits seit mehreren Versionen verfügbar. In Version 9.0 wurde diese Funktion erweitert, um das Mocken und Stubben von MSS-Codierungsstrukturen wie CICS und SQL zu ermöglichen. In Version 10.0 wurde die IMS-Unterstützung hinzugefügt. Dadurch kann der geänderte Geschäftslogik-Code getestet werden, ohne dass eine vollständige MSS-Subsystemumgebung erforderlich ist.
Durch die Kombination dieser beiden Funktionen von Enterprise Developer können Entwickler die Vorteile moderner Entwicklungsmethoden nutzen und Wartungsänderungen im Rahmen des Softwareentwicklungszyklus (SDLC) beschleunigen. Dies ist besonders vorteilhaft für Organisationen, die diese Änderungen teilweise oder vollständig an Drittanbieter auslagern.
Weitere Details zum Enterprise Developer Unit Test Framework finden Sie in diesem zugehörigen Blogbeitrag. Um zu sehen, wie Unit-Tests in einem Entwicklungscontainer funktionieren, schauen Sie sich das folgende Video an.
Mit der zunehmenden Verbreitung von Cloud-Plattformen in der Softwareentwicklung steigt auch die Nutzung gehosteter Entwicklungswerkzeuge. Ein Beispiel hierfür sind GitHub Codespaces, die Umgebungen für die Entwicklung von Code von überall aus bieten. Die Entwicklungsfunktionen werden in der Cloud auf Basis von Dev Containers verwaltet und sind über einen Browser mit der Webversion von VS Code zugänglich.
Wir bei Rocket Software sind überzeugt, dass diese Umgebungen in der Zukunft der MSS-Anwendungsentwicklung eine wichtige Rolle spielen werden und arbeiten an der Bereitstellung von Enterprise Developer für GitHub Codespaces. Einen ersten Eindruck von den Vorteilen dieser Innovation erhalten Sie im folgenden Video.
Wenn Sie bereits Enterprise Developer Kunde sind, laden Sie bitte Version 10.0 herunter und sehen Sie sich die Produktdokumentation hier an.
Falls Sie noch kein Kunde sind, folgen Sie bitte diesem Link, um eine Testversion von Enterprise Developer zu erhalten.
Wenn Sie an der zukünftigen Entwicklung von MSS-Anwendungen interessiert sind, helfen Sie bitte mit, die Innovation weiter voranzutreiben, indem Sie an der Umfrage teilnehmen.
Wir stellen Rocket EVA 2.0 vor.
Wählen Sie den richtigen Weg für die KI-gestützte Codemodernisierung
Finden Sie den Modernisierungspfad, der das schützt, was zählt.
