Von Daten, Rollen und Modellen – ein Bauplan für KI-Anwendungen

Wer klassische Softwareentwicklung beherrscht, muss nicht zwangsweise auch erfolgreich datengetriebene Anwendungen entwickeln können. Der Ansatz des Engineering Data-Driven Applications will den Prozess der Entwicklung von KI-Anwendungen strukturieren.

Know-how  –  3 Kommentare

(Bild: Machine Learning & Artificial Intelligence / Mike MacKenzie / cc-by-2.0))

Verfahren der Künstlichen Intelligenz (KI) beziehungsweise des Machine Learning (ML) bereichern die Softwareentwicklung um neue Möglichkeiten. Sie stoßen die Türen für neue Anwendungen und Lösungswege auf und erlauben einen anderen Umgang mit großen Datenmengen und komplexen Problemen. Die Folge: Klassische Softwareprojekte enthalten häufiger KI- oder ML-Komponenten. Dieses Miteinander müssen die Projektverantwortlichen in ihren Planungen von Beginn an berücksichtigen. Die frühe Projektphase spielt eine wichtige Rolle. Hier treffen die Beteiligten grundlegende Entscheidungen über die Technikauswahl, die den ganzen Projektpfad beeinflussen.

Der Ansatz der Engineering Data-Driven Applications (EDDA) wurde entwickelt am Lehrstuhl für Software Engineering der Universität Duisburg-Essen. Er strukturiert den Prozess der Entwicklung von KI-Anwendungen. Augenmerk legt das Vorgehensmodell auf die Interdependenzen zwischen dem übergeordneten Software- und dem Teilprojekt, das diese KI-Anwendungen entwickelt. Darüber hinaus beschreibt EDDA, welche Kompetenzen notwendig sind, um ein KI-Projekt erfolgreich auf- und umzusetzen.

Zu Beginn eines KI-Projekts ist es den Experten nur schwer möglich, Aussagen über geeignete Techniken und Verfahren zu treffen. Es ist noch nicht einmal sicher, ob ML-/KI-Anwendungen überhaupt zum gewünschten Ziel führen. Denn am Anfang haben die Beteiligten noch kein klares Bild davon, ob die Daten die notwendigen Informationen für das Entwickeln der Anwendungen enthalten.

Ziel des Vorgehensmodells ist es, die Unsicherheit zu reduzieren, die mit dem Entwickeln von ML-/KI-Anwendungen einhergeht. Klassische Softwareentwicklungsprojekte setzen auf regelbasierte Ansätze. Die Beteiligten folgen in weiten Teilen standardisierten Projektabläufen und arbeiten mit erprobten Techniken. Beim Entwickeln von ML-/KI-Anwendungen können sie auf wenige Erfahrungswerte zurückgreifen. Deshalb legt das EDDA-Konzept Wert auf eine intensive Auseinandersetzung mit Daten und Anforderungen zu Beginn des Projekts. Diese frühen Phasen stehen im Zentrum der folgenden Ausführungen.

Keine richtige Entwicklung ohne die richtigen Experten

Die Fachwelt ist weit von einer einheitlichen Definition von KI entfernt. Für das Beschreiben der EDDA-Idee reicht es aus, Machine Learning oder KI von klassischen Informationssystemen abzugrenzen: Während Experten Letztere auf Basis regelbasierten Wissens entwickeln, spielen bei Ersteren Daten die entscheidende Rolle. Ob gespeicherte oder Laufzeitdaten, interne oder externe, reale oder simulierte: ML- und KI-Anwendungen sind datengetrieben. Sie erkennen Muster, Zusammenhänge oder Anomalien. Diese Fähigkeiten sind die Grundlage für neue Anwendungen, andere Geschäftsmodelle oder verbesserte Prozesse.

Die Phasen der Engineering Data-Driven Applications (Abb. 1)

Der Blick in die Praxis zeigt: ML- beziehungsweise KI-Projekte in Reinkultur existieren kaum. Fast immer ist ein klassisches Softwareprojekt die Ursache (s. Abb. 1). Die Beteiligten stoßen auf einen Aspekt oder auf eine Anforderung, die auf den ersten Blick für den Einsatz einer datengetriebenen Lösung spricht. Das kann beispielsweise die Absatzprognose sein, die ein Element eines neuen Warenwirtschaftssystems ist. Ihr Ziel ist das Schätzen der Verkaufszahlen für einzelne Produkte in der nächsten Woche oder im nächsten Monat. Auf Basis dieser Schätzungen stößt das Warenwirtschaftssystem Bestell- und Logistikprozesse an. Zahlreiche Faktoren beeinflussen den Absatz in einem Zeitraum. Je nach Branche und Produkt sind das Aspekte wie Wetter, Jahreszeit, Kalenderwoche, historische Absätze, Großveranstaltungen, Preisentwicklung auf dem Rohstoffmarkt, oder Absatz von Komplementärgütern.

Die Reihe ließe sich beliebig lang fortsetzen. Diese kurze Auflistung zeigt: Ein Mensch kann diese Vielzahl von Faktoren und Zusammenhängen nicht analysieren. Für ihre Prognosen setzen Experten aus Vertrieb oder Einkauf auf das Beobachten einiger weniger Datensätze. Mit zunehmender Erfahrung entwickeln sie ein Bauchgefühl für ihre Planungen.

ML- und KI-Anwendungen fühlen sich in diesem Umfeld wohl. Je nach Unternehmenssituation setzen sie auf einer langen Reihe historischer Daten auf, die im bisherigen Warenwirtschafts- beziehungsweise ERP-System (Enterprise Resource Planning) erfasst sind. Die Vorteile datengetriebener Ansätze eröffnen sich Unternehmen aber nicht automatisch. Insbesondere ist ein breites Expertenwissen notwendig, um mit ML- beziehungsweise KI-Verfahren zu den gewünschten Ergebnissen zu kommen. EDDA setzt auf vier Rollen im Projekt. Diese Rollen entsprechen Fachwissen und Verantwortlichkeiten innerhalb der Entwicklung. Im Einzelnen sind das:

  • Software Engineers: Sie sind für den gesamten Softwareentwicklungsprozess und das Implementieren der Anwendung verantwortlich. Sie integrieren den ML-/KI-Entwicklungsteil in das übergeordnete Softwareprojekt. Darüber hinaus verantworten sie das Einführen der finalen ML-/KI-Anwendung. Dafür sollten sie ein grundlegendes Verständnis für ML- und KI-Techniken mitbringen.
  • Data Scientist: Sie haben die Datengrundlage im Blick und stellen die notwendigen Modelle und ML-/KI-Komponenten zur Verfügung. Data Scientists sind interdisziplinäre Experten. Zu ihrem Wissensgebiet gehören unter anderem Informatik und Statistik. Sie bringen Programmierkenntnisse ebenso mit wie Erfahrung im Umgang mit großen Datenmengen. Sie verstehen die Details der Anwendung und sind federführend bei der Auswahl der ML-/KI-Algorithmen.
  • Domain Experts: Sie bringen das Wissen über die geschäftlichen Rahmenbedingungen der Anwendung ins Spiel. Gleichzeitig sind sie häufig auch Anwender. Zu ihrem Wissen gehören detaillierte Kenntnisse über Geschäftsprozesse, Anwendungsszenarien, gesetzliche Rahmenbedingungen oder die Wettbewerbssituation. Gegebenenfalls zieht das Projektteam für spezifische Fragen weitere Experten von Fall zu Fall hinzu.
  • Data Domain Experts: Sie sind der richtige Ansprechpartner beim Umgang mit Daten und Datenquellen innerhalb des Unternehmens oder der Branche. Im Gegensatz zu den Domain Experts haben sie eher eine technische Sichtweise. Data Domain Experts kennen sich mit den Datenstrukturen und -speichern in der Anwendungsdomäne aus. Sie sind nicht an der Anwendungsentwicklung beteiligt, sondern stellen die Daten lediglich zur Verfügung. Darüber hinaus erarbeiten sie mit den Softwareentwicklern die detaillierten Schnittstellenspezifikationen.

Während die ersten drei Rollenbilder aus anderen Projektvorgehensmodellen bekannt sind, ist der Data Domain Expert ein EDDA-spezifisches Konzept. Diese Rolle ist der überragenden Bedeutung von Daten für den gesamten ML-/KI-Entwicklungsprozess geschuldet. Ohne diese Brücke zwischen Daten und Geschäft drohen Projekte in die falsche Richtung zu laufen oder sich unnötig in die Länge zu ziehen. Denn ohne die Rolle des Data Domain Expert fallen die Aufgaben des Verstehens der unternehmensinternen Datenstrukturen und des Zusammenstellens der benötigten Daten dem Data Scientist zu. Er ist dafür aber nur eingeschränkt geeignet. Diese Experten machen sich gemeinsam daran, Schritt für Schritt die ML-/KI-Komponenten in einem Softwareprojekt zu entwickeln. Abbildung 1 beschreibt die einzelnen Phasen.

Am Anfang steht die Frage: Sollen Experten überhaupt auf ML-/KI-Techniken setzen?