Thep Urai - Fotolia

Modernisierung der Applikations-Landschaft: Ohne Bestandsaufnahme geht es nicht

Die Wartung der Applikations-Landschaft stellt viele Firmen vor Herausforderungen. Bevor Sie beginnen, sollten Sie die Anwendungen aber erst verstehen.

Die Wartung und Weiterentwicklung ihrer Applikations-Landschaft stellt viele Unternehmen vor beträchtliche Herausforderungen. Egal, für welche Modernisierungsoption sie sich entscheiden: Am Anfang steht das Application Understanding, das heißt die ganzheitliche Analyse einer Anwendungen und deren fachliche Funktionalität.

An einer fortwährenden Aktualisierung und Weiterentwicklung von Applikationen führt kein Weg vorbei. Dafür gibt es technische und fachliche und monetäre Gründe:

  • Der Betrieb bestimmter Anwendungen ist mit zu hohen laufenden Kosten verbunden.
  • Es sollen Innovationen umgesetzt und gleichzeitig Kosten gesenkt werden.
  • Die Flexibilität und Nachhaltigkeit soll zum Beispiel durch den Einsatz von Standardsoftware gesteigert werden.
  • Das Business soll weiter digitalisiert werden, um die Wettbewerbsfähigkeit zu verbessern.
  • Die vorhandenen IT-Plattformen sind nicht auf Mobile Business und Cloud vorbereitet.

Trifft nur eine dieser Anforderungen zu, ist es Zeit für eine Modernisierung der betreffenden Applikation. Unabhängig davon, welche Modernisierungsoption letztlich umgesetzt wird – sei es ein Rehosting, eine Konvertierung in eine neue Programmiersprache, die Einführung von Standardsoftware oder eine Neuentwicklung – besteht der erste Schritt aus meiner Sicht immer in einem Application Understanding als Teillösung eines Application Portfolio Management zur Risikominimierung und damit verbundenen Kosteneinsparung.

Schätzungen von Marktforschern – wie zum Beispiel Gartner, Forrester oder A.T. Kearny – zufolge investieren Unternehmen bis zu 90 Prozent ihres IT-Budgets für den Betrieb und die Wartung vorhandener Anwendungen und nur den Rest in Neuentwicklungen. Mit einem Application Portfolio Management kehrt sich diese Relation um. Unternehmen können damit die Budgets für die Wartung von Applikationen um 20 bis 30 Prozent reduzieren (siehe Abbildung 1).

Abbildung 1: Mit Application Portfolio Management können Unternehmen die Budgets für die Wartung von Applikationen um 20 bis 30 Prozent reduzieren.

Beim Application Understanding muss ermittelt werden, was die Anwendung macht, welche Schnittstellen für den Import und Export vorhanden sind, welche Datenschemata es gibt und welche Hürden auf dem Weg der Modernisierung zu überwinden sind.

Die Ziele der Applikation ergeben sich aus einem Pflichtenheft, das die fachlichen Funktionen und Spezifikationen enthält. Ist nur eine wenig aufschlussreiche oder gar keine Dokumentation vorhanden, das alte Pflichtenheft nicht mehr zugänglich oder die Entwickler haben das Unternehmen in der Zwischenzeit verlassen, ist eine detaillierte Untersuchung und das Verständnis der vorliegenden Anwendung selbst eine ergiebige Quelle für ein neues Pflichtenheft.

Benötigt wird daher ein Verfahren, das die fachlichen Anforderungen aus der Applikation extrahiert. Das heißt, die Analyse ermittelt aus dem Source Code die inhaltliche Arbeitsweise und die Ziele der Anwendung. Ist die Fachlichkeit bekannt, ergeben sich daraus zwei Vorteile: Erstens ist die Applikation damit verständlich und darauf aufbauend können zweitens die fachlichen Funktionen in einer objektorientierten Welt, wie heute Software entwickelt wird, neu beschrieben werden.

Ganzheitliche Softwarearchäologie spürt fachliche Funktionen auf

Ein weiterer Vorteil: Ist im Rahmen eines herkömmlichen Modernisierungsprojekts eine neue Applikation entstanden, lässt sich mit Application Understanding die Erfüllung der Funktionen aus dem Pflichtenheft prüfen. Zudem ist so ein Check im Vergleich zur alten Anwendung möglich, der zeigt, ob alle gewünschten fachlichen Funktionen auch in der neuen Anwendung vorhanden sind.

Dazu gehört eine Vollständigkeitsprüfung unter technischen Aspekten. Viele der heute gängigen Analysetools zielen nur auf technische Aspekte wie den Syntaxcheck ab, dienen so nur der Wartung einer Software und erfassen nicht die fachlichen Funktionen.

Fallbeispiel für Application Understanding

Application Understanding lässt sich vielfältig einsetzen – nicht nur, wenn es um die zahlreichen Facetten der IT-Modernisierung geht. Das soll an einem Beispiel aus der Automobilindustrie verdeutlicht werden, bei der die mangelhafte konzernweite Koordination erhebliche Kosten verursachte. Konkret ging es darum, dass Heckscheibenwischer mangelhaft waren und ausgetauscht werden mussten. Während Marke A im Konzern den Mangel feststellte, baute Marke B die fehlerhaften Teile weiter ein.

Die Rückrufaktion kostete insgesamt zirka 25 Millionen Euro. Das Application-Understanding-Verfahren ermöglichte eine konzernweite, markenübergreifende und somit systemübergreifende Analyse der Ursachen. Heute gibt es eine durchgängige Dokumentation der kompletten Geschäftslogik, die aus den Source Codes extrahiert wurde.

Ein Teil der fachlichen Logik befindet sich zum Beispiel auch in den Transaktionsmonitoren, die für die Steuerung zuständig sind. Diese ist Teil der Geschäftslogik und muss beim Application Understanding ebenfalls analysiert werden. Das gleiche gilt für Konfigurationsdateien auf Betriebssystemebene. Damit lässt sich beispielsweise feststellen, welche Standardsoftware auf einem System vorhanden ist und wie diese mit der analysierten Anwendung zusammenwirkt.

„Application Understanding lässt sich vielfältig einsetzen – nicht nur, wenn es um die zahlreichen Facetten der IT-Modernisierung geht.“

Bernd Koschinski, CGI

xxxx

Wichtig ist darüber hinaus, dass ein solches Application Understanding sowohl mit bewährten Sprachen wie Assembler, Cobol, RPG oder PL/1 als auch mit neuen Sprachen wie C++, Java, JavaScript, Perl oder PHP arbeitet. Das Ergebnis ist eine ganzheitliche Transparenz. Um mögliche Performance-Probleme zu lösen, müssen keine neuen, und oft teureren Server oder Storage-Systeme gekauft werden. Oft lässt sich durch eine Vereinfachung des Source Codes und eine geschickte Änderung von Programmabläufen die Komplexität reduzieren und die Performance steigern.

Der Maßstab dabei ist die Fachlichkeit, das heißt, was soll die Applikation – unabhängig von der technischen Umsetzung – leisten? Erst wenn die grundlegenden Informationen vorhanden sind, können Lösungsvarianten für die aufgedeckten Probleme entwickelt werden. Entsprechende Standardsoftware für die Ermittlung von Qualitätsmerkmalen der betriebenen Software oder Anwendungen gibt es auf dem Markt für jeweils mehrere Hunderttausend Euro.

Jedoch ist es mit einer Werkzeugkategorie nicht getan. Es müssen neben Diagnoseanwendungen auf Basis von Metriken auch reine Wartungswerkzeuge für die laufende Entwicklung angeschafft werden. Oft ist es hilfreich, diese Kosten dahingehend umzuwidmen, in dem man diesen Service inklusive einer Tool-Unterstützung bei einem IT-Beratungshaus als Service einkauft.

Über den Autor:
Bernd Koschinski ist Vice President Consulting Services bei CGI.

Mehr zum Thema Lifecycle Management:

Sollten Strategien für Application Lifecycle Management standardisiert werden?

Mobile Lifecycle Management: Die sechs Elemente von MLM.

BYOA: Mobile Lifecycle Management verwaltet Apps.

Folgen Sie SearchEnterpriseSoftware.de auch auf Twitter, Google+ und Facebook!

Artikel wurde zuletzt im Februar 2016 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Business-Software

0 Kommentare

Älteste Beiträge 

Passwort vergessen?

Kein Problem! Tragen Sie Ihre E-Mail-Adresse unten ein. Wir werden Ihnen eine E-Mail mit Ihrem Passwort schicken.

Ihr Passwort wurde an die folgende E-Mail-Adresse gesendet::

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchDataCenter.de

Close