Die Top-Down-Modellierung beginnt, wie bereits beschrieben, mit der Suche nach relevanten Managementobjektklassen. Hierzu werden Konzepte aus den RM-ODP Viewpoint Languages - vor allem aus dem Computational und Engineering Viewpoint - für die Belange des Managements herangezogen. Die weitere Modellierung gemäß Kapitel 2.3 wird durch das CASE-Tool Software through Pictures (StP) [Int96b] unterstützt. Der Einsatz dieses Werkzeugs wird in Kapitel 6.1.1 beschrieben. Das OMT-Modell wird im Object Model Editor von StP bearbeitet.
Der Agent soll auf Basis von OMG CORBA (siehe Kapitel 3.6) implementiert werden. Zur Beschreibung von Objektklassen benutzt CORBA die von konkreten Programmiersprachen unabhängige Interface Definition Language. Mittels IDL werden die Attribute und Methoden einer Klasse durch Typisierung und Angabe von Parametern festgelegt. IDL unterstützt Vererbung und die Definition komplexer Typen.
StP kann für die Klassen des Objektmodells Code in den Sprachen Ada, C++, IDL, Java und Smalltalk erzeugen. Hierzu ist es erforderlich, daß in der Klassentabelle von StP alle Attributtypen sowie die Argumente, Rückgabewerte und Ausnahmen der Methoden deklariert werden.
Aus den IDL-Objektbeschreibungen generiert ein IDL-Compiler im nächsten Schritt Server skeletons und Client stubs für eine konkrete Programmiersprache. Der IDL-Compiler ist Bestandteil der CORBA-Entwicklungsumgebung. Die Abbildung von IDL auf eine Programmiersprache wird von der OMG durch sog. Language Mappings standardisiert. Der hier eingesetzte IDL-Compiler idl2java gehört zum Produkt VisiBroker for Java V3.0 der Firma Visigenic Software, Inc. und erzeugt Code-Gerüste für die Sprache Java (siehe Kapitel 6.3.1).
Der nächste Schritt ist die Implementierung der Server-Objekte, die einen CORBA-Agenten bilden. Hierzu werden die Code-Gerüste des IDL-Compilers mit Java-Code ergänzt, welcher die Attribute und Methoden der MOCs implementiert. Dieser Code beschafft die managementrelevante Information bzw. realisiert die Manipulationsmöglichkeiten der Ressource durch eine Anwendung. Eine Wiederverwendung von bestehendem C-Code eines SNMP-Agenten ist möglich, falls dieser in einzelne Prozeduren bzw. Module für das Lesen und Schreiben von Attributen gegliedert ist. Die Module können durch das Java Native Interface (siehe Kapitel 6.3.4) in die Server-Objekte integriert werden. Dadurch geht natürlich die Plattformunabhängingkeit des Java-Codes verloren. Da aber der Code eines Agenten für das Systemmanagement durch die Heterogenität der Systeme in den seltensten Fällen plattformunabhängig ist, wird der Verlust durch die Einsparung der Neuimplementierung aufgewogen. Eine Kapselung des SNMP-Codes in Objektklassen eignet sich prinzipiell auch für die Migration von Altsystemen (legacy systems) sowie zur Realisierung eines multiarchitekturellen Agenten [HKN96].
Nach Abschluß der Implementierung und Übersetzen der Server-Objekte durch einen Java-Compiler liegt der Prototyp eines CORBA-Agenten vor. Die Laufzeitumgebung von VisiBroker for Java V3.0 besteht aus einem Object Request Broker (ORB) nach der CORBA-Spezifikation 2.0 und den CORBA-Services Naming und Event. Asynchrone Meldungen der Managed Objects werden über den Event-Service den Managementanwendungen zugestellt.
Um eine graphische Oberfläche für den Zugriff auf die Managed Objects bereitzustellen, wird für den Prototypen eine Anwendung in Form eines Java-Applet implementiert. Das Management-Applet ruft als Client Methoden der Server-Objekte des Agenten auf. Der ORB realisiert die Kommunikation zwischen den verteilten Objekten. Die Implementierung des Managers als Java-Applet hat den Vorteil, daß die Anwendung system- und ortsunabhängig in jedem Web-Browser, der Java unterstützt, ausgeführt werden kann. Weiterhin sind Änderungen und Erweiterungen leicht möglich, da sie keine Neuinstallationen der Software auf den Managersystemen nach sich ziehen. Der Navigator der Firma Netscape integriert seit Version 4.0 zudem den ORB - allerdings in der alten Version 2.5 - von Visigenic.