Startseite // Universität // Aktuelles // Topthema // „Natural Language Processing“ vereinfacht Softwareentwicklung

„Natural Language Processing“ vereinfacht Softwareentwicklung

twitter linkedin facebook google+ email this page
Veröffentlicht am Donnerstag, den 29. März 2018

Neue Natural Language Processing-Technologien werden Projektfehler und Verzögerungen verhindern, die durch unzureichende Formulierung von Softwareanforderungen verursacht werden.

Das Interdisciplinary Centre for Security, Reliability and Trust (SnT) an der Universität Luxemburg ist eine Forschungszusammenarbeit mit der kanadischen QRA Corp eingegangen, einem Entwickler von Systemen und Technologie für Anforderungstechnik. Das gemeinsame Forschungsprojekt wird untersuchen, wie „Natural Language Processing (NLP)“ Programmierer unterstützen kann, die Qualität ihrer Arbeit sicherzustellen und ihre Anforderungstexte in präzise Spezifikationen für die automatisierte Analyse zu übersetzen.

Des weiteren wird das Projekt Techniken zur automatisierten Simulation und Prüfung der daraus entstehenden Anforderungen und Systemdesignmodelle erarbeiten. QRA wird über die Zusammenarbeit zum ersten Mitglied des Partnership Program des SnT außerhalb Luxemburgs.

Mehrdad Sabetzadeh, Sallam Abualhaija, Lionel Briand und Shiva Nejati

Von links nach rechts: Dr. Mehrdad Sabetzadeh, Dr. Sallam Abualhaija, Prof. Dr. Lionel C. Briand und Dr. Shiva Nejati

 

Übersetzung von Natürlicher Sprache in Computersprache

Genau wie ein Schiffssteuermann vor der Streckenplanung das Fahrtziel kennen muss, beruht eine erfolgreiche Softwareentwicklung auf einer Reihe klarer Anforderungen, die das erwartete Systemverhalten von vornherein festlegen. Mangelhafte Anforderungen können zu Projektfehlern, Verzögerungen und – in Bereichen wie Automatisierung oder Luft- und Raumfahrt – sogar zum Verlust von Menschenleben führen. Daher analysiert idealerweise ein Computer diese Anforderungen und zeigt Fälle von Mehrdeutigkeit und Unvollständigkeit auf, die Techniker ansonsten übersehen könnten. Viele derartige Werkzeuge wurden bereits entwickelt, aber bisher arbeiten sie nur mit formalisierten und analysierbaren Computersprachen und nicht mit den nicht analysierbaren natürlichen Sprachen der Techniker (wie etwa Englisch). Die Forscher am SnT entwickeln daher automatisierte Werkzeuge für Dokumente in natürlicher Sprache, wie von den Technikern bevorzugt.

Die entscheidenden semantischen Informationen finden

„Bei uns Menschen unterliegt vieles, was wir sagen und schreiben, einer Interpretation im kulturellen und situativen Kontext“, sagt Dr. Mike Sabetzadeh, Forscher am SnT, der bei dem Projekt die Aktivitäten zur Anforderungstechnik leitet. „Wenn wir zum Beispiel sagen, etwas soll schnell erledigt werden, gehen wir davon aus, dass jemand anders versteht, wie schnell. Es führt zu Problemen, wenn derartige Unklarheiten in Dokumenten bestehen, die sehr präzise und spezifisch sein müssen, wie etwa Anforderungen an komplexe Systeme.“ Das Forschungsprojekt soll das große Potenzial von Natural Language Processing dabei freisetzen, sowohl solche Qualitätsprobleme aufzuzeigen als auch die wichtigsten semantischen Informationen eines Dokuments in präzisen Formeln wiederzugeben.

Allerdings muss, wenn ausreichende Anforderungen formuliert sind, gewissenhaft überprüft werden, ob die Systeme diese befolgen. „Angesichts der Komplexität heutiger Systeme übersteigt diese Aufgabe menschliches Leistungsvermögen“, sagt Dr. Shiva Nejati, die bei dem Projekt die Aktivitäten zur Überprüfung leitet. „Wenn wir Anforderungen erstellen, insbesondere für cyber-physische Systeme (bei denen Software und Hardware interagieren) bei Automobil- und Luftfahrtanwendungen, kann es Ungewissheit über die Systemumgebung geben oder sogar über Systemkomponenten, die noch nicht entworfen wurden. Dies wird in späteren Entwicklungsphasen problematisch, wenn bestimmt wird, ob ein System seine Anforderungen erfüllt hat.“ Um diese Herausforderungen zu bewältigen, nutzen Forscher künstliche Intelligenz, um automatisierte Überprüfungstechniken auf Grundlage von Simulationen der Umgebung zu entwickeln.

Technologien für die praktischen Herausforderungen der Branche

„Die aktuellen Herausforderungen in der Anforderungstechnik, wie anhand des Projekts mit QRA verdeutlicht, zeigen, wie wichtig es ist, dass Forschung mit einem eingehenden Verständnis der Branchenrealität betrieben wird“, sagt Prof. Dr. Lionel Briand, der die Aktivitäten des SnT auf dem Gebiet der Softwareüberprüfung und -validierung leitet. „Akademische Lösungen sind oft realitätsfern, aber in Zusammenarbeit mit QRA können wir innovative Technologien für die praktischen Herausforderungen der Branche entwickeln.“

Dean Tsaltas, Chief Technology Officer von QRA, teilt diese Ansicht: „QRA freut sich, mit den Forschern von Weltrang des SnT zusammenzuarbeiten. QRA und SnT sind überzeugt, der beste Ansatz zur Schaffung wertvoller Technologien ist, mit Kunden an derzeit bestehenden Problemen zu arbeiten. Wir glauben an eine langfristige, produktive Beziehung zwischen SnT und QRA, die Werkzeuge hervorbringen wird, die die Handhabung von Anforderungstechnik und Designüberprüfung in der Branche grundlegend verändern werden.“

© Universität Luxemburg