Kategorien
Allgemein

Forschung fördert Fortschritt

PermanEnt – Performance-Überwachung Effizient Integriert

Wettbewerbsfähigkeit ist mit Entwicklung verbunden. Wir investieren in neue Prozesse & Technologien. Ausdruck findet das im Forschungsprojekt PermanEnt des Bundesforschungsministeriums.

Der wirtschaftliche Softwareentwicklungsprozess stellt immer eine Balance zwischen Produktqualität und Entwicklungsaufwand dar. Durch automatisierte Werkzeuge kann der Entwicklungsaufwand verringert und dadurch höhere Qualität wirtschaftlich sinnvoll erreicht werden. Die funktionale Stabilität eines Projektes ist von hoher Bedeutung, gerade bei größeren Projekten ist sie jedoch zunehmend schwierig sicherzustellen. Deshalb wurde eine Reihe Werkzeuge entwickelt (im Java-Umfeld Jenkins, Maven SureFire, JUnit, …) um möglichst frühzeitig unbeabsichtigte Regressionen (=Verschlechterungen) festzustellen. Der hohe Grad der Automatisierung ermöglichte in der Folge die Anwendung von automatisierten Tests auch bei kleineren Projekten, sodass die Qualität der Softwareprodukte auch bei solchen stieg, die nicht als kritisch eingestuft werden.

Eine weitere Dimension der Softwarequalität ist die Laufzeitperformance. Dort, wo diese kritisch ist, werden bereits sporadisches oder automatisiertes Monitoring eingesetzt, teilweise auch Regressionstests während des Entwicklungsprozesses. PermanEnt stellt eine Automatisierung dieses Prozesses dar: Aufbauend auf den verbreiteten Methoden der funktionalen Unit-Tests und ihrer Integration in den Entwicklungsprozess (CI), soll eine höhere Codequalität für viele solcher Projekte erreicht werden, für die automatisierte Performance-Überwachung bisher nicht wirtschaftlich war. Dabei werden die funktionalen Unit-Tests zu Performance-Tests erweitert und durch eine Erweiterung des Jenkins automatisiert getestet. Peass-CI-Plugin für Jenkins Server
Die Ergebnisse informieren dann über mögliche Regressionen der Performance.

Zusätzlich wird der Aufrufbaum analysiert und kombiniert mit den tatsächlichen Codeänderungen eine Ursachenanalyse erstellt, um die Softwareentwickler weiter zu unterstützen.
Die entwickelten Technologien bauen dabei maßgeblich auf den Arbeiten von David Georg Reichelt von der Universität Leipzig auf.

Konkret werden die Technologien anhand dreier aktiver Entwicklungsprojekte bei den Forschungspartnern erprobt: dem Hamburger Fahrgastleitsystem der HBT GmbH, dem Immobilieninformationssystem von GeoMap durch evermind GmbH und dem Android-Management-System durch IOTIQ.

BMBF Logo