Einführung in die Roblet-Technik


Die Roblet-Technik ist eine in Java implementierte Client/Server-Architektur, die als Middleware bezeichnet werden kann. 2001 erstmals von Hagen Stanek veröffentlicht entstand diese Technik im Rahmen eines Projektes zur Steuerung von mobilen Roboter-Plattformen am Frauenhofer-Institut. Motivation war es, eine Softwareschicht zu schaffen, die das Verteilen von Funktionalität zur Laufzeit ermöglicht und dabei von jeglicher Netzwerk-Problematik (soweit als naturgegeben möglich) abstrahiert. Dieses Prinzip soll den Fokus bei der Software-Entwicklung auf die Anwendungsschicht lenken.

(1) Roblet-Technik als Middleware

Bedingt durch die grundlegende, immer wiederkehrende Problematik in verteilten Systemen und den allgemeinen Lösungsansatz der Roblet-Technik, findet diese nicht nur in der Robotik Anwendung, sondern wird auch im Web- und Automatisierungsumfeld eingesetzt.

Voraussetzungen für den Einsatz#

Die Roblet-Technik ist vollständig in Java implementiert und setzt damit in jedem Fall eine Java Virtual Machine voraus. Ab Java SE 1.4.2 aufwärts ist die Roblet-Technik einsatzbereit.

Überblick#

Die Roblet-Technik erlaubt es, Programmteile dynamisch zur Laufzeit im Netzwerk zu verteilen. Aus der Vogelperspektive kann sie als Middleware aufgefasst werden. Siehe Schaubild (1):

Die blaue oberste Ebene zeigt die verteilte Anwendung, also eine Anwendung, die sich über mehrere Netzknoten erstreckt.

Die orange mittlere Ebene ist das RDK (Roblet Developement Kit). Dieses beinhaltet alle notwendigen Software-Komponenten zum

  • Verteilen von Anwendungsteilen
  • Bereitstellen von Ressourcen
unter Nutzung der Roblet-Technik in verteilten Systemen.

Die graue unterste Ebene beschreibt den Teil, der an den jeweiligen Netzknoten gebunden ist: Die Hardware, das Betriebssystem und die Java Virtual Machine. Auf Server-Seite sind in dieser Ebene zusätzlich die Ressourcen einzuordnen, die ein Server bereitstellt.

Roblet-Anwendung#

(2) Roblet-Technik: Client und Server

Eine verteilte Anwendung unter Verwendung der Roblet-Technik wird Roblet-Anwendung genannt. Eine Roblet-Anwendung besteht aus:

  • Lokaler Teil: Dieser Teil läuft lokal und versendet Roblets zur Verwendung von Diensten, die im verteilten System durch Roblet-Server bereit gestellt werden.
  • Roblets: Roblets sind Programmteile, die unter Kontrolle eines Roblet-Servers im Auftrag ihrer Roblet-Anwendung laufen und beliebige Dienste verrichten.

RDK - Roblet Developement Kit#

Das RDK enthält alle Software-Komponenten, die zur Entwicklung verteilter Anwendungen unter der Roblet-Technik notwendig sind. Grob lässt sich das RDK einteilen nach
  • Client-Komponenten: Zum Entwickeln einer Roblet-Anwendung auf einem schon vorhandenen Roblet-System, bestehend aus Roblet-Servern.
  • Server-Komponenten: Enthalten neben einem Roblet-Server, zum Anbieten von beliebigen Ressourcen in einem verteilten System, auch Java-Schnittstellen zum Implementieren eigener Server-Erweiterungen, genannt Module.

Weitere Informationen#

  • Roblet.org: Offizielle Internet-Präsenz zur Verbreitung der Technologie.
  • Buch: Ein Buch mit zahlreichen Beispielen.
  • Wikipedia: Der Wikipedia-Eintrag gibt einen kompakten Überblick.