Eine hohe Qualität des Quellcodes ist in der Softwareentwicklung essenziell. Viele Qualitätsattribute sind mit herkömmlichen Programmanalysen jedoch kaum überprüfbar. Deep Learning – speziell der Einsatz rekurrenter neuronaler Netze – bietet nun das entscheidende Werkzeug, um Quellcodes nachhaltig und automatisiert zu verbessern.
Um im besonders schnelllebigen IT-Umfeld wettbewerbsfähig zu bleiben, ist es notwendig, die Arbeitsumgebung so effizient wie möglich zu gestalten. Insbesondere Softwareentwicklung stellt hierbei hohe Anforderungen an die Fachleute, da die immense Komplexität moderner Softwaresysteme schwer zu beherrschen ist und gleichzeitig hohe Qualität sichergestellt werden muss.
Automatisierte Codeanalysen helfen dabei, in dieser Arbeitsumgebung die Codequalität sicherzustellen. Solche Analysen können traditionell jedoch entweder nur generische, programmunabhängige Qualitätsmerkmale untersuchen oder erfordern einen hohen Preis in Form von aufwendigen formalen Spezifikationen, die in der Praxis selten existieren.
Ziel der beteiligten Projektpartner ist die Erstellung konkreter, auf Deep Learning basierender Werkzeuge, die Softwareanalysen zur Verbesserung der Softwarequalität einsetzen und auf komplexen Softwaresystemen einsetzbar sind. Hierbei gilt es, grundlegende Fragestellungen zu Datenaufbereitung, Code Embeddings und Netzarchitekturen zu beantworten und dabei Aspekte der Skalierbarkeit und Vorhersagequalität zu lösen, die sich auf einem für den praktischen Einsatz notwendigen Niveau bewegen.
Das grundsätzliche Ziel dieser vorliegenden Forschungs-kooperation ist es, aus einer gemeinsam entstandenen Idee eine verwertbare Technologie zu verwirklichen und so „das Beste aus beiden Welten“ zugänglich zu machen. Die gemeinschaftliche Durchführung dieses Innovationsvorhabens wird ermöglicht durch die wissenschaftliche Expertise der Universität Passau, gepaart mit der umfassenden Erfahrung des Praxispartners msg systems. Dies führt bestenfalls zu einem bilateralen Wissenstransfer und Erkenntnisgewinn.