Forum für Wissenschaft, Industrie und Wirtschaft

Hauptsponsoren:     3M 
Datenbankrecherche:

 

Mit einem von der Natur abgeschauten Rechenverfahren kann Software schneller getestet werden

05.03.2012
Wenn Entwickler eine Software unter Termindruck fertig stellen, wird häufig bei der Qualitätskontrolle, also dem gründlichen Testen, gespart.

Automatische Softwaretests sind zwar möglich, werden aber unter anderem deswegen nicht eingesetzt, weil sie die Programmierer zu oft auf eine falsche Fährte führen. Informatiker der Universität des Saarlandes haben ein Softwaresystem entwickelt, das automatisches Testen ohne Fehlalarme ermöglicht.

Mithilfe eines genetischen Algorithmus simuliert es so lange Benutzereingaben, bis das Programm vollständig überprüft ist. Ihre Ergebnisse stellen die Forscher auf der Cebit (F 34,Halle 26) vor. Die Computermesse findet vom 6. bis 10. März in Hannover statt.

Heutige Computergramme bestehen aus Hunderttausenden von Programmzeilen. Eine einzige fehlerhafte Anweisung darin kann bereits das Programm unbrauchbar machen. Solche Programmierfehler zu finden, ist äußerst zeitaufwendig und damit sehr kostenintensiv. Entwickler behelfen sich damit, dass sie ihren Code in überschaubare Stücke, also einzelne Komponenten, aufteilen und diese separat testen. Diese Tests jedoch so gründlich durchzuführen, dass so viele Fehler wie nur möglich erkannt werden, ist sehr mühsam. Solche Testfälle können zwar schon automatisch generiert werden, doch die Programmierer misstrauen diesen, da sie zu viele Fehlalarme produzieren. Informatiker der Universität des Saarlandes bestätigen dies in einer Studie. Solche Tests beschrieben oft für die jeweilige Komponente einen Fall, der bei einer realen Ausführung des Programms nie auftreten würde, so die Forscher.
„Man kann das mit einem IKEA-Regal vergleichen, das aus vielen einzelnen Teilen besteht. Neben Schrauben und Dübeln gehören Bretter und Böden verschiedener Formate dazu. Richtig zusammengesteckt ergeben diese ein Regal. Bestehende Testwerkzeuge würden diese einzelnen Komponenten unabhängig voneinander analysieren“, erklärt Florian Groß, Doktorand am Lehrstuhl für Softwaretechnik. Eine denkbare Falschmeldung wäre dann zum Beispiel: „Drei vertikal gestapelte Regalböden ergeben einen Systemabsturz”, obwohl Regalböden im fertigen Regal nie vertikal gestapelt werden. Ein echter Fehler hingegen wäre die Variante: „Es fehlt eine Schraube. Die Böden im Regal sind schräg. Bücher rutschen herunter.”

Florian Groß untersuchte zusammen mit Professor Andreas Zeller und Gordon Fraser 181 Testfälle, die das frei erhältliche Werkzeug „Randoop“ für fünf in der Programmiersprache Java geschriebene Programme erzeugt hatte. „Sie alle schlugen Fehlalarm. Den herkömmlichen Entwickler kostet es dann weitaus mehr Aufwand und Nerven, solche falschen Fehler zu entlarven“, so Groß. Die Saarbrücker Informatiker setzen daher darauf, die Testfälle nicht für Komponenten, sondern für Systemschnittstellen wie die grafische Benutzeroberfläche zu generieren. Da der Anwender darüber das Programm bedient, muss dieses unter jeder denkbaren Eingabe fehlerfrei funktionieren. „Das bedeutet im Umkehrschluss, dass jede auf diese Art aufgedeckte Fehlfunktion auch auf einen echten Fehler hindeutet“, erklärt Groß und fügt hinzu, dass sich dieser durch eine geringe Anzahl von Bedienschritten beschreiben lasse, was ihn wiederum leicht nachvollziehbar und leicht wiederholbar mache.

Wie das aussehen könnte, zeigt der Prototyp des Systems, den die Forscher aufgrund ihres Ansatzes „Explorative System Testing“, abgekürzt „Exsyst“, getauft haben. Er präsentiert die Bedienoberfläche des zu testenden Programms und lässt wie von Geisterhand Textfragmente eingeben und Bedienelemente anklicken. Darüber zeigen ein grüner Fortschrittsbalken und eine zweistellige Ziffer an, wieviel Prozent des Programmcodes bereits getestet wurden. Ein genetischer Algorithmus macht dies möglich. „Er funktioniert ähnlich wie die biologische Evolution. Eine Menge von Testfällen wird zufällig erzeugt. Daraus werden diejenigen ausgewählt, die als sinnvoll erscheinen. Das System verändert sie geringfügig und kombiniert sie miteinander, um eine neue Generation von Benutzereingaben zu erzeugen“, erläutert der Informatiker. Diese und folgende Generationen müssen dann ebenfalls Auslese und Rekombination über sich ergehen lassen.

Dabei stellen die Forscher über eine spezielle Optimierungsfunktion sicher, dass ein maximaler Anteil des Programmcodes getestet wird. Aufgedeckte Fehlfunktionen werden an den Entwickler weitergegeben. „Wir erreichen damit eine bessere Codeabdeckung als herkömmliche Methoden zur Testfallgenerierung“, sagt Florian Groß. Dieses Ergebnis habe nicht nur die Saarbrücker Forscher, sondern auch weitere Experten auf diesem Gebiet überrascht. „Aber was noch viel wichtiger ist: Wir reduzieren Informationsüberfluss. Der Entwickler kann sich daher auf die Programmier-Probleme beschränken, die wirklich wichtig sind“, so Groß.

In ihrem bald erscheinenden Fachaufsatz „Exploring Realistic Program Behavior“ deuten sie bereits Erweiterungen von Exsyst an, die Entwickler noch besser bei der Fehlersuche unterstützen können. Momentan arbeiten sie daran Exsyst in das frei verfügbare Testwerkzeug „Evosuite“ zu integrieren.
Weitere Fragen beantworten:

Florian Groß
Lehrstuhl für Softwaretechnik
Universität des Saarlandes
E-Mail: fgross@st.cs.uni-saarland.de
Tel.: 0681 302-70143

Gordon Bolduan
Wissenschaftskommunikation
Exzellenzcluster „Multimodal Computing and Interaction"
Tel: 0681 302-70741
Stand-Telefon Cebit: 0511 89597046
E-Mail: bolduan@mmci.uni-saarland.de

Pressefotos: www.uni-saarland.de/pressefotos
Hinweis für Hörfunk-Journalisten
Sie können Telefoninterviews in Studioqualität mit Wissenschaftlern und Studenten der Universität des Saarlandes führen, über Rundfunk-ISDN-Codec. Interviewwünsche bitte an die Pressestelle (0681/302-3610) richten.

Friederike Meyer zu Tittingdorf | Universität des Saarlandes
Weitere Informationen:
http://www.evosuite.org/EXSYST-Demo.mp4
http://www.st.cs.uni-saarland.de/
http://www.evosuite.org/

Weitere Nachrichten aus der Kategorie Informationstechnologie:

nachricht Vom Edge- bis zum Cloud-Datacenter - Rittal zeigt in Monaco innovative Lösungen für Datacenter
29.05.2017 | Rittal GmbH & Co. KG

nachricht Layouterfassung im Flug: Drohne unterstützt bei der Fabrikplanung
19.05.2017 | IPH - Institut für Integrierte Produktion Hannover gGmbH

Alle Nachrichten aus der Kategorie: Informationstechnologie >>>

Die aktuellsten Pressemeldungen zum Suchbegriff Innovation >>>

Die letzten 5 Focus-News des innovations-reports im Überblick:

Im Focus: Neue Methode für die Datenübertragung mit Licht

Der steigende Bedarf an schneller, leistungsfähiger Datenübertragung erfordert die Entwicklung neuer Verfahren zur verlustarmen und störungsfreien Übermittlung von optischen Informationssignalen. Wissenschaftler der Universität Johannesburg, des Instituts für Angewandte Optik der Friedrich-Schiller-Universität Jena und des Leibniz-Instituts für Photonische Technologien Jena (Leibniz-IPHT) präsentieren im Fachblatt „Journal of Optics“ eine neue Möglichkeit, glasfaserbasierte und kabellose optische Datenübertragung effizient miteinander zu verbinden.

Dank des Internets können wir in Sekundenbruchteilen mit Menschen rund um den Globus in Kontakt treten. Damit die Kommunikation reibungslos funktioniert,...

Im Focus: Strathclyde-led research develops world's highest gain high-power laser amplifier

The world's highest gain high power laser amplifier - by many orders of magnitude - has been developed in research led at the University of Strathclyde.

The researchers demonstrated the feasibility of using plasma to amplify short laser pulses of picojoule-level energy up to 100 millijoules, which is a 'gain'...

Im Focus: Lässt sich mit Boten-RNA das Immunsystem gegen Staphylococcus aureus scharf schalten?

Staphylococcus aureus ist aufgrund häufiger Resistenzen gegenüber vielen Antibiotika ein gefürchteter Erreger (MRSA) insbesondere bei Krankenhaus-Infektionen. Forscher des Paul-Ehrlich-Instituts haben immunologische Prozesse identifiziert, die eine erfolgreiche körpereigene, gegen den Erreger gerichtete Abwehr verhindern. Die Forscher konnten zeigen, dass sich durch Übertragung von Protein oder Boten-RNA (mRNA, messenger RNA) des Erregers auf Immunzellen die Immunantwort in Richtung einer aktiven Erregerabwehr verschieben lässt. Dies könnte für die Entwicklung eines wirksamen Impfstoffs bedeutsam sein. Darüber berichtet PLOS Pathogens in seiner Online-Ausgabe vom 25.05.2017.

Staphylococcus aureus (S. aureus) ist ein Bakterium, das bei weit über der Hälfte der Erwachsenen Haut und Schleimhäute besiedelt und dabei normalerweise keine...

Im Focus: Can the immune system be boosted against Staphylococcus aureus by delivery of messenger RNA?

Staphylococcus aureus is a feared pathogen (MRSA, multi-resistant S. aureus) due to frequent resistances against many antibiotics, especially in hospital infections. Researchers at the Paul-Ehrlich-Institut have identified immunological processes that prevent a successful immune response directed against the pathogenic agent. The delivery of bacterial proteins with RNA adjuvant or messenger RNA (mRNA) into immune cells allows the re-direction of the immune response towards an active defense against S. aureus. This could be of significant importance for the development of an effective vaccine. PLOS Pathogens has published these research results online on 25 May 2017.

Staphylococcus aureus (S. aureus) is a bacterium that colonizes by far more than half of the skin and the mucosa of adults, usually without causing infections....

Im Focus: Orientierungslauf im Mikrokosmos

Physiker der Universität Würzburg können auf Knopfdruck einzelne Lichtteilchen erzeugen, die einander ähneln wie ein Ei dem anderen. Zwei neue Studien zeigen nun, welches Potenzial diese Methode hat.

Der Quantencomputer beflügelt seit Jahrzehnten die Phantasie der Wissenschaftler: Er beruht auf grundlegend anderen Phänomenen als ein herkömmlicher Rechner....

Alle Focus-News des Innovations-reports >>>

Anzeige

Anzeige

IHR
JOB & KARRIERE
SERVICE
im innovations-report
in Kooperation mit academics
Veranstaltungen

Lebensdauer alternder Brücken - prüfen und vorausschauen

29.05.2017 | Veranstaltungen

49. eucen-Konferenz zum Thema Lebenslanges Lernen an Universitäten

29.05.2017 | Veranstaltungen

Internationale Konferenz an der Schnittstelle von Literatur, Kultur und Wirtschaft

29.05.2017 | Veranstaltungen

 
VideoLinks
B2B-VideoLinks
Weitere VideoLinks >>>
Aktuelle Beiträge

Intelligente Sensoren mit System

29.05.2017 | Messenachrichten

Geckos kommunizieren überraschend flexibel

29.05.2017 | Biowissenschaften Chemie

1,5 Millionen Euro für vier neue „Innovative Training Networks” an der Universität Hamburg

29.05.2017 | Förderungen Preise