Anwendungsentwicklung

Eine Einführung in die Anwendungsentwicklung:

Modernisieren von alten Applikationen

Modernisierung von Applikationen: Eine Einführung in die Anwendungsentwicklung

Wieso reden wir über Applikationsmodernisierung? Welche aktuellen Herausforderungen haben Unternehmen bei der Anwendungsentwicklung? Was für Konzepte und Lösungen gibt es? Diese und weitere Fragen versuchen wir in diesem Beitrag etwas näher zu erörtern.

Warum also Applikationsmodernisierung?

Die Bedeutung der IT hat sich in den letzten Jahren stark gewandelt. Die Arbeitsweise hat sich weg von der reaktiven Bereitstellung von technischen Ressourcen und Unterstützung hin zu einer „Enabler-Rolle“ gewandelt. Mithilfe der IT schaffen Unternehmen wertvolle Mehrwerte, die für das Bestehen im Konkurrenzkampf essenziell sind. Dazu gehören vor allem Software, Hardware, Rechenzentren, Cloud-Bereitstellung und die Sicherung von expandierenden Datenflüssen. 

Die IT schafft mit zeitgemäßer End-to-End-IT-Modernisierung die Voraussetzungen zum Gewinnen neuer Fachkräfte, denn Devices und Software liefern entscheidende Rückschlüsse auf den Stand der Digitalisierung in einem Unternehmen. 

Beim Weg der Digitalisierung sind Legacy-Anwendungen die größte Herausforderung. In vielen Unternehmen sind spezielle Applikationen im Einsatz, die genau auf dessen Arbeitsweise und interne Prozesse angepasst und optimiert wurden. Mit dem Wandel in der IT können die alten Applikationen (Legacy Apps) oftmals nicht mithalten, leiden an Performance-Schwächen und fehlenden Schnittstellen in neuen Systemen. Die steigenden Anforderungen an eine zeitgemäße Datenerfassung und -abwicklung sowie -auswertung haben die Applikationen entweder aufgebläht oder führen zu Insellösungen, da Workarounds nötig wurden.

Die Herausforderungen bei veralteten Applikationen

Gehen wir an dieser Stelle ins Detail: Welche drängenden Problemstellungen haben wir bei unseren Kunden identifiziert, die IT-Abteilungen, aber auch ganze Unternehmen beeinflussen und die bei der technischen als auch digitalen Transformation beeinflussen? Und wie kann Anwendungsentwicklung hier ansetzen?

  • Business Agilität: Wie halten Unternehmen ihr Geschäftsmodell agil, um auf sich ändernde Anforderungen reagieren zu können? Die IT ist relativ starr – gefangen in Update-/Upgrade-Zyklen, Software-Lösungen auf Jahre gekauft. Wie lässt sich das ändern?
  • Transformations-Roadmap: Wie kann man eine Strategie zur Transformation der Applikationen entwickeln?
  • Budget-Allokation: Wie lässt sich das Innovationsbudget erhöhen und verteilen? Lassen sich Aufgaben neu verteilen, um Gelder für neue (innovative) Projekte freizusetzen?
  • Aktueller Datenbestand: Wir kann man den bestehenden Datenschatz für eine bessere Verarbeitung bereitstellen?
  • User Experience: Wie zufrieden sind Mitarbeiter und Kunden mit den aktuell bereitstehenden Anwendungen? Lassen sich Mehrwerte durch erleichtertes Arbeiten schaffen?

Applikationsmodernisierung bedeutet, dass Applikationen mit zeitgemäßer Struktur (Code) aufgesetzt und cloud-ready gemacht werden. Die grundsätzliche Tendenz in der IT-Welt hin zu hybriden Rechenzentren erfordert ein Umdenken – auch im Hinblick auf den Einsatz der geschäftskritischen Applikationen. Für eine sichere und schnelle Datenverarbeitung – das inkludiert auch deren rechtskonforme Übertragung, Speicherung und Zugriffssicherung sowie den Einsatz neuester Möglichkeiten zur Auswertung. Dabei spielen auch Künstliche Intelligenz und Machine Learning eine zunehmende Rolle.

Wie wird Anwendungsentwicklung betrieben?

Der Handel bietet bereits „fertige“ Software, die bestimmte standardisierte Anforderungen erfüllt. Application Modernization fokussiert sich auf Softwareentwicklung für spezielle Anforderungen. Die Entscheidung, welcher Weg für das jeweilige Unternehmen und dessen Anforderungen der Richtige ist, wird mithilfe eines praxiserprobten Vorgehens vorbereitet. 

Der Weg zur Modernisierung läuft folgendermaßen ab:

  1. Design Thinking (Was ist der Wunsch? Was ist die Anforderung?)
  2. Lean Startup (Was ist die Lösung? Welcher Ansatz ist geeignet?)
  3. Agile Project (Entwicklung der Software mit modernen, iterativen Methoden)
Abbildung 1: Der Weg zur Modernisierung, Quelle: SoftwareONE

Ansätze der Applikationsmodernisierung

Monolithische Applikationen können sukzessive umgestaltet werden, da neue Funktionen in modulare Applikationsteile über Schnittstellen an die „Encapsulated“-Applikation angelagert werden.

  • Rehosting ist dazu geeignet, eine Applikation auf eine neue Datenplattform / Server / Rechenzentrum zu schieben.
  • Replatform ermöglicht das Verschieben der Plattform, auf der die Applikation läuft.
  • Rearchitect: Die Applikation wird auf neuer Technologie wieder (Funktionsweise 1:1) nachgebaut – führt oftmals zu einem Update und zu weiteren Anpassungen.
  • Refactoring ist die Umstrukturierung einer Applikation im bestehenden Code (großer Anfangsaufwand, nur mit bestehendem Team möglich).
  • Replace und Rebuild sind Ansätze der kompletten Neuentwicklung.
Abbildung 2: Umgestaltung von Applikationen, Quelle: SoftwareONE

Supportaufwand sinkt immer mehr (Encapsule – Rehosting – Rearchitect – Refactoring – Replace – Rebuild).

Die Komplexität des Projects steigt (Encapsule – Rehosting – Rearchitect – Refactoring – Replace – Rebuild).

Die Application Service von SoftwareONE

Mit unseren Application Modernization Services können Sie die Business-Agilität, Produktivität und Effizienz steigern und erhalten Device-unabhängige Lösungen. Die Zeit bis zur Marktreife der Software wird durch unsere Quick-Win-Strategie beschleunigt.
Unsere Leistungen im Überblick:

  1. Fachliche Diskussion und Beratung zu den Anforderungen an die Unternehmen auf dem Weg der Digitalisierung. Dazu gehört Design Thinking ebenso wie digitale Assessments, um zu verstehen, welche Geschäftsziele, Digitalisierungs- und Automatisierungsziele ein Unternehmen hat. 
  2. Legacy-Software, deren technische Basis eventuell keine Betriebsunterstützung (Support) erhält oder die nicht mehr gewartet werden kann. Es handelt sich hierbei oft um besonders sensible Software, die aufgrund ihrer Geschäftsrelevanz nicht ausfallen darf und die zukunftsfähig gemacht werden soll. 
  3. Neue Geschäftsanforderungen lassen sich auch durch eine neue, zu entwickelnde Software erfüllen (Greenfield-Ansatz). 
    Im Umfeld von Intelligent (Process) Automation wird geklärt, ob eine SaaS-Lösung die richtige Wahl ist (bspw. Teams oder SharePoint) oder ob kleinere Anpassungen (Custom Application Development,  Low Code mit Power Apps, Power Automate) gemacht werden müssen.
  4. Datengestützte Entscheidungshilfen lassen sich über eine zeitgemäße Datenverarbeitung und -auswertung als auch Datentransfer ermöglichen. Via Data Warehousing, BI & AI Analytics lassen sich die unternehmenseigenen Daten viel besser weiterverarbeiten.
  5. Managed Application Services: Unterstützung durch Anwendungsentwickler und Infrastrukturberater für eine ganzheitliche Betreuung zum Betrieb (wie eine SaaS-Lösung) auch für Ihre durch uns individuell erstellte Software. Dazu gehören ebenso Sicherheitsberatung und -betrachtung.

Sie reduzieren die Risiken und Ineffizienzen, die mit alten Applikationen einhergehen, da wir Software auf aktueller Cloud-basierter Technologie erstellen. Das Cloud-Architekturdesign erleichtert die Anwendungs- und Datenkonsolidierung – minimiert aber auch die Ausfallrisiken aufgrund höherer Belastbarkeit und Disaster-Recovery-Funktionen. 

Der Application Modernization Advisory Service ist Teil unserer Application Services

Von der Anforderung zur Lösung

  1. Advisory-Ansatz: Workshop für fachliches Verständnis
    • Analyse der Situation
    • Verständnis von Anforderungen
    • Abstimmung und Vereinbarung des Vorgehens
  2. Architektur & Planung für technische Umsetzung
    • Zielarchitektur festlegen
    • Zeitplan/Aufwände definieren
    • Prozesse/Methoden vereinbaren
  3. Implementierung in Sprints (Erstellung/Bereitstellung, Review/Tests, Iterationen)
    • Sprint-Ziel nach Abnahmekriterien
    • Implementierung und automatisierte + manuelle Tests
    • Ergebnisprüfung/Retrospektive
    • Arbeitsweise in Iterationen

Ggf. Redefinition von Meilensteinen, Eskalationen

Bestimmen Sie Ihren Modernisierungsweg

Mit dem Application Modernization Advisory Service von SoftwareONE können Sie sich auf einen Business Case mit klarem TCO und ROI verlassen. Das hilft Ihnen, Skalierungseffekte durch Cloud-Technologien zu nutzen. Sie erhalten eine Richtschnur für das weitere Vorgehen an die Hand.

Mehr erfahren
  • Application Services, Digital Transformation, Future Workplace, User Productivity

Kommentieren Sie diesen Artikel

Hinterlassen Sie einen Kommentar, um uns mitzuteilen, was Sie von diesem Thema halten!

Kommentar hinterlassen

Autor

Steffen Becker

Fachvertrieb Microsoft Lösungen

Verwandte Artikel

Open versus Closed BIM: Eine Betrachtung aus Sicht der Auftraggeberseite

Die Entscheidung für die Festsetzung einer Konstruktionssoftware für ein BIM Projekt ist nicht einfach zu treffen. Bei der Betrachtung sind viele Kriterien zu berücksichtigen. Wir geben einen Einblick.

  • 07 September 2021
  • Daniel Kersjes
  • Unified Communications, User Productivity, Future Workplace, IT Support
  • Support, Microsoft, Teams

Microsoft Teams & UCNext: Kommunikation für alle (Support-) Fälle

Neben der Integration von Microsoft Office ist nun auch die klassische Telefonie in Microsoft Teams möglich. Erfahren Sie, wie unser UCNext Support Service einen 24/7 Betrieb garantiert.

  • 03 September 2021
  • Jochen Berners
  • User Productivity
  • User Productivity, Azure

Windows 365 vs. AVD – Microsofts Cloud-Desktops im Vergleich

Mit Windows 365 bieten Sie Anwendern schnell, flexible Cloud-Desktops. Lesen Sie mehr zu Funktionen und Kosten im Vergleich zu Azure Virtual Desktop (AVD).