Konzept: Laufzeitüberwachung und -analyse
Diese Richtlinie beschäftigt sich mit der Laufzeitüberwachung und -analyse. Das ist die Beobachtung der Software während der Laufzeitausführung und die Analyse der erfassten Daten. Dabei werden Pfade durch Softwarekomponenten verfolgt und dann zusammengefasst, um das globale Systemverhalten über statistische Schlussfolgerung zu ermitteln.
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Einführung

Die Überwachung und anschließende Analyse des Laufzeitverhaltens einer Softwarekomponente ist ein wichtiges Verfahren beim Debugging von Software. Für das Verständnis des Laufzeitverhaltens sind zwei wichtige Verfahren erforderlich:

  • Die Überwachung der Software während der Ausführung der Laufzeit.
  • Die Analyse der erfassten Überwachungsdaten.

Die Überwachung und Analysetechniken selbst sind nicht abhängig von den Tests, soweit das Laufzeitverhalten überwacht und analysiert werden kann, ohne dass Testeingaben vordefiniert oder Testtechniken verwendet werden müssen, um das Anwendungsverhalten zu beeinflussen. Tests können mit Laufzeitüberwachungstechniken und -tools kombiniert werden: Beispielsweise können Tools, die die Laufzeitüberwachung automatisieren, während der Testausführung verwendet werden und die Transparenz des Laufzeitverhaltens der auf den Test reagierenden Komponente erhöhen.

Laufzeitverhalten überwachen

Es ist zwar wichtig, das gesamte Verhalten während der Laufzeitausführung der Software sorgfältig zu überwachen, es gibt jedoch normalerweise auch wichtige Überwachungspunkte, die für spezielle Überwachungspunkte nützlich sind. Diese wichtigen Überwachungspunkte sind oft:

  • Entscheidungspunkte, an denen der Pfad der Softwarelogik sich verzweigen wird bzw. sich bereits verzweigt hat.
  • Abschlusspunkte, an denen ein wichtiger Logikpfad abgeschlossen wurde, was normalerweise einen Statuswechsel in der Softwareumgebung zur Folge hat.
  • Ein Schnittstellenpunkt zwischen zwei eigenständigen Anwendungskomponenten.
  • Ein Schnittstellenpunkt zwischen der Software und ihrer Ausführungsumgebung einschließlich aller Schnittstellen zu Hardwarekomponenten.

Diese Überwachungspunkte können auch Steuerpunkten zugeordnet werden, an denen es wünschenswert erscheint, entweder den Anwendungsstatus oder den Steuerfluss durch die Logikpfade zu ändern. Diese Problemstellungen werden oft als Steuerungs- und Überwachungspunkte bezeichnet.

Die Laufzeitüberwachung schließt statische Überwachungspunkte als primären Ansatz, z. B. die Überprüfung des statischen Softwarequellcodes oder der Beziehungen zwischen den Softwarebausteinen, die in visuellen Modellen usw. erfasst wurden, aus. Stattdessen erfordert sie eine ausführbare Softwarekomponente und bietet nützliche, nicht über andere Debugging-Techniken abrufbare Informationen darüber, wie die entwickelte Komponente sich verhält, wenn sie ausgeführt wird, entweder in der Testumgebung oder in der endgültigen Deployment-Umgebung. Die Überwachungsdaten, die zum Laufzeitverhalten erfasst werden, können nacheinander zu statischen Elementen in Bezug gesetzt werden, um zusätzliche Informationen zu erhalten.

Laufzeitüberwachungsdaten analysieren

Die Analyse der Softwarelaufzeit ist einfach das Verfahren, bei dem man versucht, das Verhalten einer Softwarekomponente durch Untersuchung der Daten, die während der Ausführung der Softwarelaufzeit erfasst wurden, zu interpretieren. Bei der Entwicklung der Komponente durch den Implementierer ist die Laufzeitüberwachung und -analyse ein Aspekt der vom Implementierer ausgeführten Debugging-Aktivitäten.

Unterstützung automatischer Tools

Aufgrund des potenziellen Volumens der groben Informationen, die über das Laufzeitverhalten erfasst werden können, der Geschwindigkeit, mit der diese Informationen generiert werden und der anschließenden Schwierigkeit, die potenziell große Informationsmenge zu interpretieren, ist die Unterstützung automatischer Tools ein Schlüsselfaktor bei der Umsetzung dieses Verfahrens. Es gibt verschiedene Ansätze, mit denen Sie selbst Toolunterstützung bereitstellen können, und eine Vielzahl von Tools, die Sie käuflich erwerben können. So können Sie die Zeit, den Aufwand und die Kosten sparen, die für die Entwicklung eigener Tools erforderlich wären.

Weitere Informationen zur Laufzeitüberwachung und zu Analysetools finden Sie im Abschnitt PurifyPlus.