Automatisierte, schnelle und sichere Lösung für die Integration und Anpassung der Oracle Applikationen

06.11.2023
Diaa Shaheen

Wir führten mit Diaa Shaheen (CAST GmbH) ein ausführliches Gespräch rund um das Thema / die Thematik „Integration und Anpassung von Oracle Applikationen“

Diaa Shaheen arbeitet jetzt seit sieben Jahren als Solution Architekt bei der CAST GmbH und hat als Solution Architekt eine fundierte Expertise in der Welt der Software-Analysen. In dieser Zeit konnte er innovative Lösungen für komplexe Modernisierungs-, Cloud-Migrations-, und Sicherheits-projekte mitentwickeln, um Unternehmen dabei zu unterstützen, diese Ziele effizienter und effektiver zu erreichen.

Wir sprechen heute über den Integrations- und Anpassungs-Prozess von Oracle Applikationen. Erklären Sie uns in diesem Zusammenhang doch zunächst was eigentlich „Oracle Applikationen“ sind?
Oracle-Applikationen sind Softwarelösungen, die von Oracle entwickelt wurden und Unternehmen in verschiedenen Geschäftsbereichen unterstützen. Diese Applikationen bieten eine breite Palette an Funktionen, vom Finanzwesen- bis hin zur Lieferkettenverwaltung und müssen in bestehende IT-Systeme integriert werden. Viele davon sind sehr komplex und undokumentiert.

Erläutern Sie bitte welche Probleme oder Herausforderungen bestehen oder dadurch entstehen können?
Die Integration und Anpassung von Oracle-Applikationen können eine Vielzahl von Problemen und Herausforderungen mit sich bringen, u.a. bei der Integration. So besteht ein Hauptproblem darin, dass viele Unternehmen oft sehr spezifische Anforderungen haben, die nicht vollständig von den Standardfunktionen der Oracle-Applikationen abgedeckt werden. Um diese Anforderungen zu erfüllen, müssen Entwickler:innen in-house Erweiterungen erstellen und Schnittstellen entwickeln. Diese Erweiterungen werden häufig mit Oracle Developer Suite oder anderen Programmiersprachen entwickelt. Die Entwicklung und Wartung von Erweiterungen und Schnittstellen für Oracle-Applikationen kann die Evolution des gesamten Systems verhindern.

Welche weiteren Herausforderungen sehen Sie außerdem?

Ich sehe auch diverse Probleme im Zusammenhang mit Upgrades und Evolution: Die Entwicklung von Erweiterungen und Schnittstellen unterliegen regelmäßigen Veränderungen aus unterschiedlichsten Gründen, sei es aufgrund neuer funktionaler Anforderungen der Benutzer oder technischer Aspekte wie Patches und Upgrades. Ohne ein tiefes Verständnis der inneren Strukturen aller Applikationen ist es schwierig, die Auswirkungen von Änderungen zu bewerten. Dies kann zu erheblichen Schwierigkeiten bei der Wartung und das Upgraden der Applikationen führen, was sowohl die Endbenutzer als auch die Entwickler frustrieren kann. Vor allem Entwickler:innen fehlt häufig das nötige Wissen über die inneren Strukturen. Dann müssen sie sich entsprechend wichtige Informationen aus verschiedenen und unvollständigen Quellen manuell in Erfahrung bringen müssen. Noch schlimmer ist, dass ohne dieses spezifische Wissen jede Änderung an einer der Anwendungen enorme Nebeneffekte für alle anderen Anwendungen haben kann.

Können Sie aus Ihrer Sicht erläutern, in welcher Phase oder Phasen des Entwicklungsprozesses die Integration und Anpassung erfolgt bzw. erfolgen sollte?

Zunächst muss der Prozess in unterschiedliche Phasen eingeteilt werden, wie die Planungs-, Durchführungs- und Monitoringphase.

Phase 1 – Planungsphase:
Meiner Erfahrung nach, benötigen Sie bereits vor dem Start (Phase 1) eine komplette Übersicht, also ein tatsächliches Applikations-Portfolio des gesamten Systems. Hier sollte man relevante Information erhalten, z.B. über die Softwarequalität, Cloud-Readiness, Open Source Safety und Sustainability.

Ich empfehle daher die Verwendung fortschrittlicher Code-Analyser, die ein tiefgreifendes Verständnis der inneren Struktur von Applikationen ermöglichen. Dies sollte zum Beispiel die syntaktische und semantische Analyse, die Erkennung von Forms-Objekten, PL/SQL-Objekten, Pro*C-Dateien und ihren Abhängigkeiten beinhalten. Vor allem Verknüpfungen zwischen verschiedenen Applikationen innerhalb des Systems sollten erfasst und verstanden werden.

Die gesammelten Informationen sollten auf jeden Fall in eine Art Wissens-Datenbank gespeichert und von den Code-Analysern kontinuierlich aktualisiert werden. Hierbei ist fundamental wichtig, dieses Wissen für nachfolgende Mitarbeiter:innen und Kolleg:innen zu bewahren.

Phase 2 – Durchführungsphase:
So kann man nun nach der Phase 1 auf alle relevanten / benötigten Daten zugreifen und zeitnah faktenbasierte Entscheidungsgrundlagen liefern.

Daraus sollte sich im Optimalfall ein wertvoller Überblick aller „Beziehungen“ zwischen den verschiedenen Komponenten ergeben, der den Entwickler:innen gestattet, potenzielle Auswirkungen von Änderungen an einer Applikation zu visualisieren, bevor diese tatsächlich implementiert werden. Auf diese Weise können unerwünschte Nebeneffekte frühzeitig erkannt und vermieden werden.

Für die Kunden / für Unternehmen ist es natürlich von unschätzbarem Wert, wenn die Technologie in der Lage ist, auf Basis der analysierten Daten auch automatisierte Handlungsempfehlungen bereitzustellen.

Phase 3: Monitoring- oder Optimierungsphase:
Wie bereits erwähnt, sollte man eine kontinuierliche aktualisierte Dokumentation gewährleisten, die in Form von HTML-Berichten oder über ein Webportal zugänglich sind. Diese dynamische Wissensbasis erleichtert nämlich dann die Wartung und das Upgrade von Oracle-Applikations-Projekten erheblich. Grundsätzlich sollte man Entwicklern, Applikations-Teams und Architekten immer die notwendigen Technologien zur Verfügung stellen, um damit die Herausforderungen bei der Integration und Anpassung von Oracle-Applikationen zu bewältigen.

So stellt man sicher, dass man während der Durchführungsphase immer die optimalste Vorgehensweise ausgewählt wird und das gesteckte Ziel nicht aus den Augen verliert. Das erspart natürlich „Worst-Case“ Szenarien sowie zusätzliche Kosten, unnötigen Einsatz von Ressourcen und vor allem kostbare Zeit.

Da Sie bereits mit solchen Technologien arbeiten – können Sie das kurz erläutern?

Wir unterstützen unsere Kunden dadurch, dass wir einen tiefen Einblick in benutzerdefinierte Anwendungen ermöglichen und automatisch Informationen über deren Struktur und Architektur, Transaktionsflüsse, Cloud-Bereitschaft, strukturelle Mängel und Sicherheitsrisiken sichtbar machen. Dadurch werden Prozesse möglich, die schnellere und sicherere Modernisierungsprojekte in der Cloud, eine erhöhte Geschwindigkeit und Effizienz in der Softwareentwicklung, bessere Kontrolle über Open-Source-Risiken und präzise technische Due-Diligence-Assessments gewährleisten.

 

Diaa Shaheen arbeitet seit 20 Jahren in der Software-Branche als Entwickler, Senior Product Consultant, Senior Technical Consultant und seit sieben Jahren als Senior Solution Architekt bei der CAST GmbH. In seiner Funktion als Solution Architekt hat er in der Welt der Software-Analyse umfangreiche Erfahrungen gesammelt. Während seiner Zeit bei CAST konnte er innovative Lösungen für komplexe Modernisierungs-, Cloud-Migrations-, und Sicherheits-projekte entwickeln und Unternehmen dabei unterstützen, ihre Ziele effizienter und effektiver zu gestalten.

0 Kommentare

Einen Kommentar abschicken

Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.