Automatisierte Qualitätssicherung von User Stories und Assistenz bei der Entwicklung funktionaler Tests (Industrieprojekt)

  • Type:Diplomarbeit
  • Date:01.06.2012
  • Supervisor:

    Dipl.-Inform.Wirt. Mathias Landhäuser
    Dr. Sven J. Körner

  • Person in Charge:Adrian Genaid
  • Links:Links_bearbeiten
  • In Zusammenarbeit mit einem weltweit führenden Hersteller im Bereich Medizingeräte wollen wir auf Basis eines neuen Projektes integriertes, automatisches Testen in einer Kooperation zwischen dem KIT und dem Industriepartner einführen.

    Neue, agile Softwaremethoden versprechen die Schaffung eines Rahmenwerks zur Verbesserung der Motivation der Entwickler und der Qualität von Software während sie gleichzeitig den Aufwand verringern. Das Projekt unseres Industriepartners ermöglicht gute Einführungsbedinungen für einen solchen Einsatz im industriellen Umfeld.

    Unsere Forschung am IPD Tichy fokussiert sich auf die automatische Erstellung von Testfällen durch die Verarbeitung von natürlicher Sprache. Dieses Kooperationsprojekt liefert grundlegende Erkenntnisse für die automatische Testerzeugung von natürlicher Sprache in agilen Entwicklungsprozessen.

    Aufgabe:

    Dieses Forschungsprojekt soll einen Prototyp und Rahmenwerk liefern, um Softwarekomponenten-Tests von so genannten „User Stories” zu extrahieren. Der erste Teil der Arbeit konzentriert sich auf die Prüfung und Einführung des Testprozesses im Unternehmen, der zweite Teil prüft welche Teile der Testerstellung von „semantischer Software“ übernommen werden könnte.
    Das Forschungsprojekt beginnt mit dem Vergleich des aktuellen und gewünschten Entwicklungsprozesses. Im Hinblick auf diese Erkenntnisse müssen bekannte agile Methoden dann auf ihren Einsatz geprüft werden. Auf Basis dieser Entscheidungen wird ein Entwicklungsprozess entworfen, der die Entwickler im Schreiben von (Black Box) Tests schon während der Entwicklungsphase unterstützt. Werkzeuge und Dienste wie „Continuous Integration“ und konsolidiertes Testen der Quellcodebasis sollen prototypisch implementiert werden.

    Voraussetzungen:

    • Arbeiten im Team
    • Programmierkenntnisse
    • Gute Deutsch- und Englisch-Kenntnisse
    • Interesse am Verarbeiten von natürlicher Sprache
    • Interesse am Testen von Software