Das Rennen um die Vorherrschaft im Bereich Künstlicher Intelligenz (KI) hat längst begonnen. Schon seit Jahren debattieren die Politiker der großen Industrieblöcke, welche strategische Bedeutung KI hat. Die EU veröffentlichte dazu 2018 einen Plan, der nun den ersten Review durchläuft.

„Ich glaube an die Kraft von KI“

EU-Kommissionspräsidentin Ursula von der Leyen

Auch wenn die Aussage von EU-Kommissionspräsidentin Ursula von der Leyen etwas esoterisch klingt, unterstreicht diese dennoch die Bedeutung von Künstlicher Intelligenz. Doch viele Unternehmen haben noch noch nicht mit KI gestartet.

Um KI zu nutzen, muss diese in Produkten und Dienstleistungen verbaut werden. Zu der Produktentwicklung gehört das Anforderungsmanagement als wichtige Disziplin. Hier ist die HOOD Group zu Hause.

Für komplexe Produkte müssen wir Systems Engineering (SE) betreiben, dem sich das Anforderungsmanagement unterordnet. Gerade durch die Vernetzung von Produkten und den vermehrten Einsatz von Software ist ohne SE die Produktentwicklung kaum noch beherrschbar.

SEc̅KI: Systems Engineering mit künstlicher Intelligenz

Aus diesem Grund hat HOOD eine Partnerschaft mit Dr. Michael Jastram von SE-Trends geschlossen, der dieses Jahr vier Gastartikel für den HOOD-Blog schreiben wird. Ebenso wird HOOD Gastartikel zu SE-Trends beitragen.

Was ist SEc̅KI?
Der Buchstabe „c̅“ wird manchmal als Abkürzung für das lateinische „cum“, also „mit“, benutzt. SEc̅KI bedeutet also „Systems Engineering mit künstlicher Intelligenz“.

Michael Jastram ist Systems Engineer mit Leidenschaft für die Anforderungsmodellierung. Aktuell entwickelt er einen virtuellen Qualitätsassistenten, der künstliche Intelligenz nutzt, um Nutzern einfache Tätigkeiten abzunehmen. Der Assistent versteht geschriebene Sprache, um darauf basierend die Traceability zu analysieren, Anforderungen umzuformulieren, Glossare zu generieren und vieles mehr.

Was ist künstliche Intelligenz?

KI setzt sich mit der Automatisierung intelligenten Verhaltens auseinander. Ein wichtiger Teilbereich von KI ist das Machine Learning (ML). Bei ML wird mit Trainingsdaten ein statistisches Modell aufgebaut.

KI ist meilenweit von menschlicher Intelligenz entfernt. Insbesondere sind KI-Systeme spezialisiert und können nicht selbstständig neue Schlüsse ziehen. Eine KI wie AlphaGo kann das Brettspiel Go spielen, aber sonst nichts. Da sich die Regeln von Go nicht ändern, braucht AlphaGo auch keine neuen Schlüsse zu ziehen.

Wir können KI im Systems Engineering in zwei Bereichen einsetzen: KI kann (1) Teams bei der Entwicklung unterstützen oder (2) im Produkt verbaut werden.

KI im Produkt

Viele Produkte verbauen heute schon auf KI basierende Software. Ein prominentes Beispiel dafür sind selbstfahrende Autos, auch wenn wenige von uns die bisher ausprobiert haben. Ein anderes Beispiel ist die Autovervollständigung in Produkten wie Gmail von Google, in der Textfragmente zur Vervollständigung vorgegeben werden.

In Produkten unterscheiden wir zwischen Systemen, die sich im Betrieb dynamisch anpassen und solchen, die sich nicht weiter verändern. Gmail, zum Beispiel, passt sich an: Vorgeschlagene Textfragmente basieren auf dem, was wir in der Vergangenheit geschrieben haben. Dadurch wird das Produkt mit der Zeit immer nützlicher, die Kundenbindung steigt.

Ein autonom fahrendes Fahrzeug hingegen nicht im laufenden Betrieb angepasst. Das liegt in erster Linie daran, dass es hier um funktionale Sicherheit geht. Und das hat auch einen sehr konkreten Grund:

Trainingsdaten sind Teil der Spezifikation

Autonome Fahrsysteme nutzen Machine Learning (ML). Wie der Name schon sagt, muss das System lernen. Das geschieht über Beispieldaten. Die Qualität der Beispieldaten wirkt sich direkt auf die Qualität des autonomen Fahrsystems aus. Wir können uns ausmalen wie ein autonomes Fahrzeug fährt, wenn für das Training nur Daten von Fahrern benutzt wurden, die mindestens zehn Punkte in Flensburg haben.

Wichtig ist auch das Labeling der Daten. Beim autonomen Fahren bedeutet das zum Beispiel, dass Verkehrsschilder als solche in den Beispielbildern markiert sind. Ohne Labeling kann das ML-System nicht lernen. Die Qualität des Labelings spielt ebenfalls eine Rolle

Wir müssen auch sicherstellen, dass das System das Richtige lernt. Zum Beispiel hat ein System zum erkennen von Hautkrebs gelernt, das Lineal zu erkennen, und nicht den Krebs.

Haut mit Muttermal und Lineal als Trainingsmaterial für Machine Learning (Künstliche Intelligenz)
Das ML-System hat gelernt, Lineale zu erkennen, nicht den Krebs. Bildquelle: National Cancer Institute

Das bedeutet nicht nur, dass Qualitätskontrolle für Lerndaten sehr wichtig ist. Es bedeutet auch, dass die Daten für die funktionale Sicherheit relevant sind (zumindest beim autonomen Fahren). Das hat erhebliche Auswirkungen auf den Entwicklungsprozess. Zum Beispiel müssen die Daten auch versioniert werden.

KI im Systems Engineering

KI kann aber auch die Entwicklung selbst unterstützen. Zum Beispiel hat IBM inzwischen eine Integration von Watson mit DOORS Next entwickelt. Dabei analysiert Watson die Anforderungen nach Weak-Words und ähnlichem und gibt ihnen eine Bewertung. Nutzer können dann basierend auf dem Feedback von Watson die Anforderungen nachbessern.

Ob sich bei so einer Funktion – Bewertung der Qualität von Anforderungen – der Einsatz von KI lohnt ist eine andere Frage. HOOD hat schon vor 15 Jahren ein regelbasiertes (und nicht KI-basiertes) Werkzeug entwickelt. Das Werkzeug DESIRe gibt es im kostenlosen Download. Zumindest ein Leser von SE-Trends fand die Ergebnisse von IBM Watson eher enttäuschend:

Die folgende „Anforderung“ bekommt [von IBM Watson] einen Best-Score von 100:

„The system shall always work perfectly“.

Da bin ich jetzt aber auch etwas entäuscht. 🙂

Martin Bohring, Kommentar bei SE-Trends

Es gibt natürlich noch viel mehr Einsatzmöglichkeiten für KI in der Produktentwicklung, wie zum Beispiel Automatisierung. Ein KI-basierter Qualitätsassistent könnte zum Beispiel Glossare, Testfälle und andere Artefakte generieren, Traceability erstellen, Texte klassifizieren und umschreiben, und vieles mehr.

Fazit

Künstliche Intelligenz ist ein sehr weites Feld. Im Systems Engineering gibt es nicht nur enorm viele Anwendungsmöglichkeiten, sondern die Notwendigkeit, sich mit KI auseinanderzusetzen, denn KI gibt uns viele Wettbewerbsvorteile. Zum einen fordern Kunden immer bessere Produkte, die teilweise nur durch den Einsatz von KI realisiert werden können (bspw. autonomes Fahren). Das ist ein Beispiel für den Einsatz von KI im Produkt.

Weiterhin steigt der Zeitdruck in der Entwicklung. Hier kann der Einsatz von KI in der Entwicklung helfen, um den Entwicklern einfache Arbeiten abzunehmen, wie bspw. die Überprüfung der Qualität der Anforderungen. Die Entwicklung wird durch erhöhte Komplianceanforderungen ebenfalls gebremst, auch hier kann KI einfache aber zeitaufwendige Aufgaben übernehmen, wie das Pflegen der Traceability.

Das alles bedeutet, dass KI aus dem Systems Engineering bald nicht mehr wegzudenken ist. Gleichzeitig dürfen wir nicht vergessen, dass KI Mittel zum Zweck ist, nicht Selbstzweck. Daher sollten wir immer mit den Problemen und Herausforderungen beginnen. Erst dann sollte geprüft werden, ob KI das richtige Werkzeug zum Lösen des Problems ist, oder etwas anderes aus unserem Werkzeugkoffer.

Titelbild by Yuyeung Lau on Unsplash