Skip to main content
Log in

Evolutionärer Test von Realzeitsystemen

  • Themenheft: Aktuelle Entwicklungen in Deutschland
  • Published:
Informatik Forschung und Entwicklung

Zusammenfassung.

Die Entwicklung von Realzeitsystemen ist eine wesentliche Aufgabe im industriellen Umfeld. Der dynamische Test ist die wichtigste analytische Qualitätssicherungsmethode für Realzeitsysteme. Der dynamische Test ist das einzige Verfahren, mit dem das Laufzeitverhalten der Systeme in der tatsächlichen Einsatzumgebung überprüft werden kann. Bestehende Testmethoden konzentrieren sich weitgehend auf den Test des funktionalen Verhaltens von Systemen. Sie bieten keine besondere Unterstützung für den Test des zeitlichen Verhaltens. Für die Korrektheit von Realzeitsystemen sind jedoch beide Aspekte gleichermaßen wichtig. Folglich müssen die bestehenden Methoden um neue Ansätze ergänzt werden, die auf die Prüfung des zeitlichen Verhaltens spezialisiert sind. Ein Fehler im Zeitverhalten von Realzeit-Systemen liegt dann vor, wenn es zulässige Eingabesituationen gibt, für die das System nicht in der Lage ist, die spezifizierten zeitlichen Anforderungen zu erfüllen. In den meisten Fällen ist dies darauf zurückzuführen, daßdas System eine Ausgabe zu früh macht oder daßdie Berechnung einer Ausgabe zu lange dauert und diese daher zu spät erfolgt. Aufgabe des Testers ist es folglich, die Eingabesituationen mit den längsten und kürzesten Ausführungszeiten zu finden, um zu überprüfen, ob die für das System spezifizierten Zeitschranken verletzt werden. Wird die Suche nach entsprechenden Eingabesituationen als Optimierungsproblem interpretiert, dann können evolutionäre Algorithmen verwendet werden, um die Eingaben mit den längsten und kürzesten Ausführungszeiten automatisch zu suchen. Die zu optimierende Zielfunktion entspricht hierbei den gemessenen Ausführungszeiten, die generierten Individuen repräsentieren Testdaten. Die Verwendung evolutionärer Algorithmen für den Test nennen wir evolutionären Test. Zum Vergleich des evolutionären Tests mit anderen Testmethoden wurden in dieser Arbeit mehrere Experimente durchgeführt. In allen Experimenten erreicht der evolutionäre Test längere bzw. kürzere Ausführungszeiten als durch Zufallstests oder systematische Tests gefunden werden. Der evolutionäre Test erscheint daher als gut geeignet für die Prüfung der zeitlichen Korrektheit von Realzeitsystemen. Die Kombination des evolutionären Tests mit systematischen Tests kann die Testqualität weiter verbessern und wird in diesem Papier als Teststrategie für Realzeitsysteme empfohlen.

Abstract.

The development of real-time systems is an essential industrial activity. Dynamic testing is the most important analytical method to assure the quality of real-time systems. It is the only means by which the run-time behavior of a system can be examined in its actual application environment. Existing software test methods generally concentrate on testing the functional correctness. They offer no support for examining the temporal behavior, though for the correct functioning of real-time systems the aspect of temporal correctness and functional correctness are equally important. This means that new approaches that concentrate on testing a system's temporal behavior need to be added to existing test procedures The temporal behavior is incorrect if the system is not capable of meeting specified temporal requirements within permitted input situations. In general, a violation means that outputs are produced too early or their computation takes too long, which means they are then produced to late. The tester's task is to find the input situations with the longest or shortest execution times in order to determine whether these violate the system's specified temporal frame. If the search for such input situations is interpreted as a problem of optimization, evolutionary algorithms can be used for the automatic search for the longest or shortest execution times. In this case the fitness function corresponds to the measured execution time. The individuals generated represent test data for the system under test. The use of evolutionary algorithms for testing is called evolutionary testing. A number of experiments have been carried out within the scope of this work in order to compare evolutionary testing with other test methods. All experiments show that evolutionary testing reaches longer and shorter execution times than have been found using random testing and systematic testing. Evolutionary testing therefore seems suitable for checking the temporal correctness of real-time software. A combination of evolutionary testing and systematic testing offers further opportunities to improve the test quality and is suggested in this paper as an effective test strategy for real-time systems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Author information

Authors and Affiliations

Authors

Additional information

Eingegangen am 14. Dezember 1999 / Angenommen am 30. Mai 2000

Rights and permissions

Reprints and permissions

About this article

Cite this article

Wegener, J., Grochtmann, M. Evolutionärer Test von Realzeitsystemen. Informatik Forsch Entw 15, 151–160 (2000). https://doi.org/10.1007/PL00009136

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/PL00009136

Navigation