Software-Modernisierung

Ein Legacy-System ist als Software-Anwendung meist in Form einer Individualentwicklung in eine Systemlandschaft eingebunden. Seit vielen Jahren oder Jahrzehnten im Einsatz, enthält es gesammeltes Fachwissen des Unternehmens und stellt als Rückgrat für die tägliche Arbeit ein wertvolles Investment dar.

Ein vorhandenes IT-System zu modernisieren bedeutet einen Wandel zu durchlaufen. Dieser kann in mehreren kleinen oder einem großen Schritt erfolgen. Große Migrationsvorhaben beinhalten oft einen Wechsel von Plattformen, Laufzeitumgebungen und Programmiersprachen.

Kontakt aufnehmen

Analyse

In der Analysephase verschaffen wir uns einen umfassenden Überblick. Wir setzen uns detailliert mit den Zielen des Modernisierungsvorhabens, den zeitlichen, organisatorischen und budgettechnischen Randbedingungen auseinander und führen zielgerichtete Analysen durch.

Technische Analyse

Wir nehmen das Altsystem mit Hilfe statischer Codeanalyse unter die Lupe. Das Ergebnis sind z.B. Abhängigkeitsgraphen, Größenangaben, häufig wiederkehrende Code-Muster und die Identifikation unbenutzten Codes. Diese Informationen sind die Grundlage, um eine praxistaugliche, an den Zielen orientierte Modernisierungsstrategie zu erstellen.

Nutzerzentrierte Analyse

Mit Hilfe von Kontextinterviews, Use Cases, Szenarien und weiteren Usability-Engineering-Techniken nehmen wird die Perspektive des Benutzers ein. Dies liefert uns wichtige Informationen für die Priorisierung und Planung des Modernisierungsvorhabens. Denn letztlich ist die Nutzerakzeptanz einer der wichtigsten Erfolgsfaktoren.

Konzeption

Bei der Modernisierung von Systemen werden häufig auch System- und Software-Architekturen verändert. Wir helfen Ihnen die Zielarchitekturen auf Basis Ihrer Anforderungen zu entwerfen und entwickeln mit Ihnen einen Pfad, über den das Alt-System schrittweise überführt werden kann.

Wenn Sie zu einer bestehenden Architektur eine Einschätzung benötigen, führen wir mit einer etablierten Methode Reviews durch, die Ihnen Risiken und Verbesserungspotentiale aufzeigen. Beim Architekturentwurf bringen wir unser umfangreiches Technologie-Know-how ein.

Umsetzung

Ausgangssituation verbessern

Veränderungen erfordern eine gute Vorbereitung! Die Entfernung von unbenutzten Code-Anteilen verringert Modernisierungs- und Wartungsaufwände. Eine erhöhte Testabdeckung und Automation von Tests sorgen für kürzere Entwicklungszyklen und verhindern Regressionsfehler. Verbesserte Modularisierung der Altsoftware ermöglicht eine schrittweise Modernisierung und sorgt für optimierte Testbarkeit.

Werkzeugunterstützung

Gute Werkzeuge helfen bei vielen Aufgaben in Modernisierungsvorhaben. Analysewerkzeuge sorgen für ausreichend Detailwissen über das Altsystem. Werkzeuge für die Testspezifikation und -automation verbessern die Ausgangssituation. Automatische Transformationen von Code, Tests oder Daten aus dem Altsystem sichern Ihr Investment. Codegeneratoren steigern Qualität und Effizienz und setzen Architekturvorgaben sicher um. Ein wichtiger Erfolgfaktor liegt in der Anpassungsfähigkeit dieser Werkzeuge.

Proof-of-Concept

Modernisierungsvorhaben können technisch und organisatorisch komplex und herausfordernd werden. In einem Proof-Of-Concept werden zu überschaubaren Kosten Machbarkeiten prototypisch überprüft, Alternativen analysiert und erwartete Aufwände dem zu erreichenden Nutzen gegenübergestellt. Dabei wird auch ermittelt, welche Anteile sich zu vertretbaren Kosten automatisieren lassen. Das Ergebnis sind konkrete Handlungsempfehlungen und ein Projektplan für das Vorhaben.

Durchführung

Ein gutes Team ist die Grundlage für jedes erfolgreiche Projekt. Bei der Modernisierung von alten Systemen werden unterschiedliche Fähigkeiten benötigt: Ein gutes Verständnis der Technologien des Altsystems, detailliertes Erfahrungswissen über die Zielarchitektur und die notwendigen Soft-Skills für das Change Management. Wir unterstützen Sie bei einzelnen Entwicklungsaufgaben oder übernehmen komplette Projekte.

Kontakt aufnehmen