0221 4744 1010

Was ist Service Virtualisierung?

Was ist Service Virtualisierung?

Unsere digitale Welt wird immer vernetzter. Spätestens seit sich die heimische Waschmaschine bequem vom Arbeitsplatz aus steuern lässt und die Real-time-Verfolgung des Amazon-Pakets möglich ist, sind wir im Zeitalter des „IoT – Internet of Things“ angekommen. Das Resultat: Die Qualitätssicherung gewinnt immer weiter an Bedeutung. Damit sind performante Testumgebungen und eine fundierte Testdurchführung existenziell.

Die große Herausforderung ist dabei, dass sowohl die Entwickler als auch die Tester nicht immer auf die notwendigen Umsysteme oder Testumgebungen zugreifen können. Leerzeiten, Entwicklungs- und Testkosten sowie Zeitverzögerungen sind die Auswirkungen. 

Hier kommt das Konzept der Service Virtualisierung ins Spiel. Diese Lösung kann auf effiziente Art den Anforderungen einer immer vernetzter agierenden Welt gerecht werden. Die Virtualisierung wird zusehends zu den bestimmenden Themen in der IT. Dabei gilt sie als entscheidende Wegbereiter für die Sicherstellung einer effizienten IT-Infrastruktur von Unternehmen.

Definition: Service Virtualisierung

Die Service Virtualisierung ist ein Verfahren zur Simulierung und zum Testen von Schnittstellen in einer heterogenen IT-Landschaft. Der Begriff „Service“ beschreibt dabei die die zur Verfügung gestellte Dienstleistung in Form von beispielsweise Informationen oder Daten. Ein Beispiel für Services sind Web-Services. 

„Virtualisierung“ bezeichnet die Nachbildung eines Objekts wie Soft-­ und Hardwarekomponenten oder Speicher durch ein ähnliches Objekt vom selben Typ mit Hilfe einer Softwareschicht. Bei der Virtualisierung handelt es sich dabei um die Abstraktion physischer IT-Ressourcen. Dadurch können Services simuliert – also „vorgetäuscht“ – werden. Tests können damit ausgeführt und fortgesetzt werden, auch wenn keine Umgebungen beziehungsweise Umsysteme verfügbar sind. 

Mit der Service Virtualisierung soll es Entwicklern und Testern ermöglicht werden, nicht verfügbare Services auf virtualisierte Abbilder der realen Services zurückzugreifen. Diese virtualisierten Abbilder werden „Stubs“ genannt. Im Entwicklungsprozess können damit frühzeitig Tests eingebunden werden. Das ermöglicht das frühe Auffinden von Fehlern und trägt maßgeblich zur Gewährleistung höchster Softwarequalität bei. Ebenso kann das Verhalten im zu testenden System erzwungen werden, indem man die Kontrolle über die Dienste hat.

Anwendungsfall: Service Virtualisierung

Noch ist in vielen Entwicklungsabteilungen der Begriff „Service Virtualisierung“ nicht bekannt. Deshalb zeigen wir im Folgenden ein Szenario aus dem Alltag, wo die Bedeutung des Konzepts deutlich wird:

„Als Zuschauer (in dem Fall der Softwaretester) eines Rockkonzertes (Realer Service/Schnittstelle) möchte ich dieses immer wieder genießen. Dazu erwerbe ich eine Blu-ray-Disk (Record Data), um das Konzert in meiner Testumgebung immer wieder (virtuell) abzuspielen (Replay), auch in Phasen, wenn die Entwicklungsumgebung nicht erreichbar ist (Timeout).“

Herausforderungen im Testalltag

Häufig haben die Entwickler und/oder Tester nicht immer Zugriff auf die notwendigen Umsystemen oder Testumgebungen. Die Gründe können unterschiedlich sein:

  • Downtime
  • Einspielen von Updates
  • Fehlende oder unvollständige Testdaten

Die Folge davon ist, dass Leerzeiten entstehen können. Somit steigen auch die Entwicklungs- und Testkosten, ebenso vergrößert sich der Zeitdruck gegen Release-Ende. Bei Zeitdruck entsteht traditionell ein hohes Risiko, da End-to-End Tests erst spät und dadurch nicht gründlich durchgeführt werden. Zudem mangelt es dann auch an der nötigen Qualität der Anwendung. 

In der Regel werden dann als Notlösung Mock-Objekte (Programmteil, der zur Durchführung von Modultests als Platzhalter für echte Objekte verwendet wird) entwickelt, die vom Aufwand meist groß sind und Programmierkenntnisse voraussetzen. Hier setzt die Service Virtualisierung an. 

andagon | Scheidtweilerstr. 4 | 50933 Köln |