NextGen-ADM – Der Einsatz künstlicher Intelligenz im Umfeld der Anwendungsentwicklung

Illustration: Absmeier, Tweetaspics

Viele Anbieter von Services für Anwendungsentwicklung und Wartung (Application Development & Maintenance, kurz ADM) haben begonnen, ihr Portfolio stärker zu automatisieren. Dies nicht nur, um in einem hart umkämpften Markt kostengünstiger zu werden. Sie tragen auch dem Umstand Rechnung, dass der Kunde verstärkt in Digitalisierungsinitiativen investiert und traditionelles ADM nicht mehr so stark gefragt ist. Die verstärkte Digitalisierung und der damit einhergehende Innovationsdruck bringt Unternehmen dazu, das alte Software-Portfolio nur sehr eingeschränkt zu modernisieren, die Wartung zu reduzieren und stattdessen auf ganze neue Ansätze zu setzen.

Starke und schwache AI

Im Rahmen dieser Modernisierung fügen die Serviceanbieter immer stärker Elemente einer künstlichen Intelligenz (Artificial Intelligence, kurz AI) in ihre Methoden und Prozesse ein. Für den Kunden ist dies oft verwirrend, denn der aktuelle Hype um AI ist groß, und der Anspruch kann in einem realen Einsatz oft nicht erfüllt werden. Künstliche Intelligenz ist hier der Oberbegriff. Eine »starke AI« bezeichnet einen Zustand, bei dem der Computer zu allen Dingen in der Lage wäre, zu denen auch ein Mensch in der Lage ist. Bei der »schwachen AI« werden einzelne Fähigkeiten des Menschen im Rechner abgebildet und auf ihn übertragen. Im heutigen, realen Einsatz ist ausschließlich eine schwache AI möglich. Dazu gehören die heutigen Ansätze des Machine Learning und Deep Learning.

Grundsätzlich bekommt ein Computer klare Befehle in Form einer Programmiersprache, die er wörtlich ausführt. Dazu gehören auch Fallunterscheidungen und bedingte Anweisungen. Je komplexer das Problem, desto aufwändiger wird der Code. Beim Machine Learning erzeugt der Computer selbstständig Wissen aus Erfahrungen, er lernt die Fallunterscheidungen selbst. Er bekommt zum Beispiel ein Bild von einer Katze und soll sagen, ob es sich um eine Katze handelt. Die Antwort wird bewertet, dann bekommt er das nächste Bild usw. Aufgrund der Bilder und Bewertungen lernt der Computer, was eine Katze ausmacht, und kann präzisere Aussagen treffen.

Hier erkennt man schnell, dass für eine hohe Genauigkeit eine entsprechend hohe Menge unterschiedlicher Daten notwendig sind. Und dass ich für das Erkennen eines Eichhörnchens wieder von vorne beginnen muss.

Deep Learning ist eine Erweiterung des Machine Learnings und arbeitet auf der Basis künstlicher neuronaler Netze, um die Lernprozesse effektiver zu machen. Die Maschine erkennt Strukturen und kann sich – mit Hilfe von dem menschlichen Gehirn nicht unähnlichen Filterprozessen – selbst schneller verbessern. Viele Methoden zur Verarbeitung natürlicher Sprache (Natural Language Processing, kurz NLP) basieren heute auf Deep Learning.

Unterschiedliche Ansätze

Der Einsatz von AI im Umfeld einer modernisierten Anwendungsentwicklung sollte hierbei aber nicht mit der Entwicklung von AI-basierten Systemen verwechselt werden, die die Geschäftsprozesse des Kunden optimieren – etwa ChatBots. Auch hier wird gerne vermengt, was nicht zusammengehört. Moderne ADM-Ansätze integrieren Mechanismen von Machine Learning und Deep Learning, um einen höheren Automatisierungsgrad bei der Analyse, der Entwicklung, dem Testing und der Wartung von Anwendungen zu erreichen. Hierbei gibt es unterschiedliche Ansätze, die verschieden weit fortgeschritten sind:

  • Mittels Sprachanalyse wird die Bewertung und Bearbeitung von Servicetickets beschleunigt, Muster können erkannt und Softwarefehler schneller behoben werden. Im Testing können auf AI basierende Robotic Users eine variable Nutzung der Software simulieren. Automatisierte Qualitätssicherung unterstützt etwa bei der Portierung von Anwendungen auf unterschiedliche Betriebssystemlevels und -versionen.
  • Relativ große Anwendungsbereiche finden sich im Umfeld einer Predictive Maintenance und Predictive Security, da das Erkennen von Mustern eine Stärke von machine-learning-basierten Systemen ist.
  • Als nächster Schritt ist bei einigen Anbietern die AI-unterstützte Analyse komplexer Softwarestrukturen im Gespräch, die insbesondere bei der Modernisierung und Überführung von Legacy-Systemen in neue Architekturen zum Tragen kommen wird.

Wesentlicher Faktor für den Einsatz von AI ist das Sammeln unterschiedlicher Daten in hohen Mengen, um durch Machine-Learning-Algorithmen Muster zu erkennen, Abweichungen zu identifizieren und richtig bewerten zu können. Nicht jede Abweichung ist ein Fehler im System oder bedarf einer Wartung beziehungsweise Korrektur der eingesetzten Software. Je genauer die Algorithmen, desto präziser die Analyse. Die Vorbereitung dazu braucht Zeit und eine Menge definierter Daten.

Die großen Anbieter entwickeln dazu Systeme, die bestimmte Teilaufgaben erledigen und somit bei unterschiedlichen Kunden für diese spezifische Aufgabenstellung als cloud-basierte Services eingesetzt werden können. Der Vorteil daran ist, dass große Datenmengen genutzt werden können, die auch unterschiedliche Situationen widerspiegeln. Erste Anwendungen sind in den Bereichen automatisiertes Ticketing, Predictive Maintenance und Predictive Security bereits verfügbar.

Mögliche Probleme sollten nicht unterschätzt werden

Bei aller Euphorie, die zur Zeit im Bereich AI an den Tag gelegt werden, sollten die Probleme im Einsatz nicht unterschätzt werden. Mangelnde Kenntnisse über die echten Möglichkeiten führen oft dazu, dass sie entweder weit unterschätzt oder weit überschätzt werden. Wenig hilfreich ist zudem, dass keine klaren Standards existieren: Alle angebotenen Ansätze (nicht nur im Umfeld ADM) werden als »AI« deklariert, basieren in den meisten Fällen auf Machine Learning und sind sehr unterschiedlich weit entwickelt. Der Kunde muss sich also ein eigenes Bild machen und ein eigenes Wissen um die Möglichkeiten von AI-basierten Systemen aufbauen. Der Einsatz von AI erfordert sehr spezialisiertes technisches Wissen, langfristige Planung sowie viele Tests und Versuche.

Unterschätzt werden oft die eher langsame Adaptionsgeschwindigkeit, die aus der häufig noch großen Rücksichtnahme auf Legacy-Systeme und Zurückhaltung bei der Digitalisierung insgesamt zurückzuführen ist, sowie der extreme Datenhunger eines AI-Systems. Die Entscheidungsfähigkeit eines auf AI basierenden Werkzeugs kann einen Mangel an Qualitätsdaten nicht kaschieren.

Fazit

Wir empfehlen dringend, im Rahmen einer Digitalisierungsstrategie AI- beziehungsweise Machine Learning-basierte Systeme als Teil eines agilen ADM-Frameworks bereits heute einzuplanen und langfristig zu konzipieren. Insbesondere der Wissensaufbau, die Definition der Anforderungen an die AI-Elemente und die Auswahl des richtigen Anbieters verlangen nach einiger strategischer Vorbereitung.

Oliver Nickels, ISG Group, www.isg-one.de

 


 

Mit falschen Mythen über künstliche Intelligenz aufräumen

Künstliche Intelligenz: Der Mensch als Vorbild für effizientes Vergessen

Unternehmen setzen auf künstliche Intelligenz, Mitarbeiter erhoffen sich Vorteile

Künstliche Intelligenz forcieren: Größte europäische Initiative zur angewandten KI

EU plant 20 Milliarden Euro für künstliche Intelligenz bis 2020 – großer Bedarf an Aufklärung und Entwicklung

Künstliche Intelligenz auch für Managementaufgaben