Test im heterogenen Umfeld

In einem gewachsenen Unternehmen, in dem im Laufe der Zeit aus mehreren, weitgehend voneinander unabhängigen Einzelanwendungen ein voll integriertes Gesamtsystem entsteht, sind in der Regel sowohl eine Vielzahl von Beteiligten (Stakeholder) als auch mehr als eine Technologie und unterschiedliche Plattformen vorzufinden.
Zwar unterstützen moderne Technologien (z. B. Java EE) die Integration bestehender, älterer Anwendungen (z. B. CICS/COBOL), aber mit jedem Interface zwischen unterschiedlichen Technologien steigt auch das Risiko für den Betrieb des Gesamtsystems und entsprechend die Herausforderungen an den Test.
Verschärfend für den Test kommt hinzu, dass neue Technologien immer kürzere Entwicklungszyklen ermöglichen, ohne dass sich die Aufwände für den Test dadurch reduzieren würden.
Da häufig die Grenzen zwischen Anwendungen ein Abbild organisatorischer Strukturen im Unternehmen sind, gilt es im Test, unterschiedliche Beteiligte zusammenzubringen und gemeinsam Tests vorzubereiten und auszuführen.
Insbesondere die organisatorischen Grenzen bedingen eine konsequente Formalisierung der Tests, um den Überblick über den Fortschritt der Arbeiten aller Beteiligter zu behalten.
Für den Test liegen die Herausforderungen weniger in der (Oberflächen-) Integration der Testwerkzeuge als in der optimalen Unterstützung der notwendigen, unterschiedlichen Testvorgehen und in der automatisierten Auswertbarkeit des Status der Arbeiten und Zusammenführung zu Management-Reports.
Dieser Vortrag präsentiert Erfahrungen und stellt eine Reihe von Lösungen vor.

Jochen Westheide

Jochen Westheide hat mehrere Jahre für eine Unternehmensberatung als Entwickler und Senior-Consultant im Bereich Softwarequalitätssicherung gearbeitet, bevor er 2002 zu ARAG, einer großen Versicherung im Rheinland wechselte. In seiner Rolle als zentraler Testkoordinator definiert er hier die Testprozesse und steuert die Tests. Seit 2007 hat er einen Lehrauftrag an der Hochschule Niederrhein. Seine Interessen liegen in der Softwarequalitätssicherung und in den Prozessen der Softwareentwicklung.