JIAC

Java-based Intelligent Agent Componentware

KompetenzzentrumAgent Core TechnologiesSecurity
KontaktProf. Dr. Sahin Albayrak, Dr. Benjamin Hirsch
Partner: Deutsche TelekomT-Systems Nova
Webseite: http://www.jiac.de

 

Die an Softwareentwicklungskonzepte gestellten Anforderungen haben sich in den letzten Jahren stetig erhöht. Mit der zunehmenden Etablierung großer verteilter Systeme steigt auch die Komplexität des Softwareentwicklungsprozesses. Dieses ist verbunden mit erhöhtem Aufwand, längeren Entwicklungszeiten und zunehmenden Kosten bei der Erstellung moderner Software, die den Anforderungen der heutigen Zeit gewachsen ist. Systemkomponenten sind heutzutage auf verschiedene Rechner verteilt und müssen über das Netzwerk zusammenarbeiten. Dabei gibt es neue Herausforderungen, die den Entwickler und Betreiber vor Herausforderungen stellen. Mobile Dienste, die immer größere Bedeutung erlangen, müssen vom Benutzer über verschiedene Zugangsnetzwerke genutzt werden können. All dieses erfordert von den Anwendungen ein hohes Maß an Flexibilität und Adaptivität, umfangreiche Netzwerkunterstützung und Interoperabilität mit vorhandenen älteren Systemen, was im Entwicklungsprozess berücksichtigt werden muss.

Ziel

Um diesen Herausforderungen zu begegnen, werden neue Konzepte und Technologien hervorgebracht, die gegenüber klassischen Ansätzen Vorteile bei der Umsetzung komplexer Systeme bieten. Schlüsselfaktoren sind hierbei die Unterstützung flexibler verteilter Systeme sowie Interoperabilität zwischen Produkten, um dem Benutzer eine einfache Anwendung von Diensten zu ermöglichen.

Intelligente Softwareagenten sind eine Basistechnologie für die Konstruktion von flexiblen verteilten Anwendungen. Dabei sind Agenten als ein Entwicklungsparadigma zur verstehen, welches speziell auf den Aufbau verteilter Systeme und autonomer Komponenten ausgerichtet ist. Aufsetzend auf Konzepten der objektorientierten Programmierung beinhalten Softwareagenten Methoden vor allem aus den Bereichen der künstlichen Intelligenz und der Kommunikationssysteme, um den an sie gestellten Anforderungen gerecht zu werden.

Realisierung

Das Projekt JIAC (Java-based Intelligent Agent Componentware) am DAI-Labor erweitert das bereits bestehende JIAC IV-Agentenframework, zu dem Entwicklungsmethodologien, Softwareentwicklungswerkzeuge und eine Laufzeitumgebung gehören, und mit deren Hilfe der Entwurf, die Implementierung und die Ausführung von Softwareagentensystemen unterstützt und beschleunigt werden. Dabei wird der gesamte Entwicklungsprozess durchgehend von der Idee über Analyse und Design bis zum fertigen Softwaresystem im Betrieb durch JIAC IV unterstützt und dokumentiert, und somit die Wiederverwendbarkeit von Anwendungen ermöglicht. JIAC IV setzt Schwerpunkte vor allem auf Verteiltheit, Skalierbarkeit, Adaptivität und Autonomie. JIAC IV-Anwendungen werden mithilfe einer Basisbibliothek mit umfangreichen Funktionalitäten entwickelt. Außerdem gibt es bereits fertige Dienste, Komponenten und Agenten, die in die Anwendungssysteme integriert werden können, um Standardaufgaben zu erfüllen. Die Agenten basieren auf einer Komponentenarchitektur, die bereits Basisfunktionalitäten für Kommunikation und Prozessmanagement bereitstellt. Lediglich anwendungsspezifische Funktionalitäten müssen vom Entwickler bereitgestellt und interaktiv integriert werden.

Neben dem allgemeinen JIAC IV-Framework werden auch domänenspezifische Spezialisierungen entwickelt, mit deren Hilfe sich z.B. e-Business Anwendungen schneller und einfacher entwickeln lassen.