Projekt Digital

Der Blog für digitale Business Leader

Wie Sie Zeit und Kosten durch die optimale Wartung Ihrer Oracle Forms Anwendung sparen

Viele ERP-Anwendungen sind fast so alt wie Oracle Forms selbst. Erfahren Sie, wie Sie solche hochkomplexen IT-Monster erfolgreich bewältigen und Ressourcen für weitere Projekte freimachen.

Oracle Forms hat 2019 sein 40. Jubiläum gefeiert! 40 Jahre Entwicklung effizienter, datenbankgestützter OLTP-Anwendungen. Dank eines kontinuierlichen Supports seitens Oracle konnten Unternehmen während all dieser Zeit Ihre Forms-Anwendungen aktiv pflegen, weiterentwickeln und erweitern. So ist es wenig überraschend, dass viele der aktuell genutzten Unternehmensanwendungen fast so alt wie Oracle Forms selbst sind. Mit dem neuesten Release 12.2.1.4 und der Ankündigung weiterer Verbesserungen durch Michael Ferrante (Oracle Forms Product Manager) zeigen sich die meisten Kunden weiterhin daran interessiert, bei Forms zu bleiben.

Einmal Oracle Forms, immer Oracle Forms?

Auf den ersten Blick sieht es vielversprechend aus. Die Entscheidung, auch nach 2020 bei Forms zu bleiben, hat aber einen Haken: Die Wartung einer Legacy-Anwendung ist in den allermeisten Fällen eine wahre Herausforderung. 

Die Definition von Wartbarkeit in der Softwareentwicklung beschreibt zwei wesentliche Abhängigkeiten: Die Wartbarkeit ist umso wichtiger,

(1) je länger die Nutzungsdauer der Software und
(2) je geringer die Verfügbarkeit von Experten auf dem jeweiligen Fachgebiet.

Beides trifft auf Oracle Forms- und Report-Anwendungen ganz klar zu. 

Software Maintenance wurde ausgiebig erforscht

Viele Forschungen widmen sich dem Aufwand zur Pflege einer Anwendung. In „The Economics of Software Maintenance in the Twenty First Century“ analysiert Capers Jones diverse Softwaremetriken und kommt zum Schluss, dass knapp 75 % des Softwareentwicklungsaufwands auf die Wartung zurückgehen. 

Prof. Dr. Udo Kelter, Leiter des Fachbereichs Praktische Informatik an der Universität Siegen, rät dazu, 60-90 % aller Kosten für die Instandhaltung einzuplanen. Und nicht zuletzt stellt Stephen R. Schach in seiner Arbeit „Determining the Distribution of Maintenance Categories“ fest, dass 65 % des Softwareentwicklungsaufwandes auf die Wartungskosten zurückgeht.

Die Gründe für diesen enormen Aufwand können unterschiedlich sein:

  • Fehlende oder nicht eingehaltene Kodierungskonvention
  • Viele Massenänderungen ohne Berechnung der technischen Tiefe
  • Redundanzen innerhalb der Anwendung (siehe Artikel aus der Computerwoche)
  • Fehlende oder nicht aktuelle Dokumentation
  • Verwendung von Anti-Pattern 
  • Fehlende Namenskonvention

Anwendungswartung in der Praxis

Steht ein Entwickler vor einer Fehlerkorrektur oder wird er dazu aufgefordert, neue Funktionen innerhalb der Anwendung zu entwerfen und zu implementieren, muss er zunächst die bestehenden Architektur, Struktur und Code verstehen. Software Developer können in der Tat aber nur eine Teilmenge der Anwendung selbst abdecken. Ein strikter, modularer Aufbau, der auf einfachen hierarchischen Abhängigkeiten basiert und konsequent Designmuster verwendet, würde es Entwicklern natürlich viel einfacher machen, an der Anwendung zu arbeiten.

Jedoch trifft dies auf jahrzehntealte Forms-Anwendungen selten zu. Entwickler sehen sich sehr oft gezwungen, sich zunächst mit dem Legacy-Code vertraut zu machen. Dabei versuchen sie, Informationen zu assimilieren, während sie Muster und Hierarchien identifizieren – alles nur durch Lesen des Codes.

Aufteilung der Zeit für die Pflege einer Software nach Dr. Carola Lilienthal

So viel könnten Sie an Wartungskosten sparen

Anhand der aufgeführten Fakten zeichnet sich ein klares Ziel ab: Das Lesen und Verstehen des Codes, das Gruppieren der Daten und das Identifizieren und Überprüfen von Mustern zu beschleunigen. Dadurch ließe sich ein Großteil der Software-Wartungskosten drastisch reduzieren.

Betrachten wir als Beispiel ein mittelständisches Unternehmen mit einem 4-köpfigen Entwicklerteam: 

Faktor

Zahlen

Wert

Jahreseinkommen

4 Entwickler je 60T€ pro Person

240.000 €

Wartungskosten

65% aller Aufwände

156.000 €

Software verstehen

70% des Wartungsaufwands

109.200 €

Aufwand mit Tools reduzieren 

50% Kostenersparnis

54.600 €

Am obigen Beispiel wird klar, dass sich die Wartungsaufwände durch das Heranziehen eines Tools spürbar reduzieren lassen. Spezielle Automatismen greifen genau da ein, wo die meiste Arbeitszeit reinfließt – die Software zu verstehen. Durchschnittlich um 50% wird der Wartungsaufwand reduziert. In unserem Beispiel könnte sich das Unternehmen von den Einsparungen fast einen zusätzlichen Entwickler leisten und so sich auf die Verbesserung und Weiterentwicklung der Anwendung konzentrieren. 

Tools machen auch vieles mehr möglich, wie zum Beispiel die Anwendung zu refakturieren, die Gesamtkomplexität zu reduzieren und damit den Wartungsaufwand von vornherein möglichst niedrig zu halten. 

Diese Tools machen die Software-Wartung endlich einfacher

Getreu ihrem Credo „Simplifying Complexity” bietet die PITSS eine Reihe von bewährten Produkten und Lösungen zur Vereinfachung der Anwendungspflege. Klassische Entwicklungsaufgaben übernimmt zum Beispiel der Forms & Reports Manager, der mit nur einem Klick automatisch Code, Komponenten oder Eigenschaften ändert. Mit diesem sowie den anderen intelligenten PITSS-Tools lassen sich unter anderem folgende anspruchsvolle Aufgaben problemlos lösen:

  • Forms-Dokumentation: Auf Basis der drei Ebenen Daten, Logik und Benutzeroberfläche werden die wichtigsten Informationen Ihrer Anwendung als eine übersichtliche Webanwendung präsentiert.
  • Abhängigkeitsmanagement: Beim Ändern selbst eines einzelnen Teils Ihrer Anwendung sehen Sie sofort alle abhängigen Objekte und können so sicher an der Code-Änderung weiterarbeiten. 
  • Abschluss von Tests: Nach der Änderung Ihres Codes stellt die Testkoordination sicher, dass alle notwendigen Artefakte durch automatisierte oder Benutzertests abgedeckt werden.
  • Regel-Check: Allgemeine und kundenspezifische Regeln prüfen, ob die PL/SQL-Programmierung Ihren oder üblichen Best Practices entspricht. 
  • Redundanzen-Check: Redundanzen tragen am meisten zur Zunahme des Wartungsaufwandes einer Software bei. Mit den PITSS-Tools können Sie Redundanzen identifizieren und sie aus Ihrer Software bereinigen.
  • Logik in die Datenbank: Um Designmustern zu folgen, können Sie relevanten Code (z.B. DML-bezogenen Code) in die Datenbank verschieben. Dadurch wird ein klarer hierarchischer Ansatz geschaffen. 
  • Abdeckung der gesamten Infrastruktur: Je komplexer die Software, desto mehr Infrastrukturkomponenten beansprucht sie. Dazu gehören verknüpfte Datenbanken, externe Skripte, Backend-Schnittstellen etc. PITSS’ Tools decken alle diese Bereiche ab.

Warten Sie nicht mehr, sondern entwickeln Sie weiter! Kontaktieren Sie uns jetzt und wir suchen für Sie die richtigen Tools aus unserer smarten Modernisierungspalette aus. So kommen Sie aus dem Legacy-Wartungskreis sicher heraus und können sich getrost dem Ausbau Ihres Kerngeschäfts widmen.