Einfache Komposition in Komponentensystemen der nächsten Generation
Softwaresysteme werden zunehmend mittels Integration von bereits bestehenden Komponenten erstellt. Eine Komponente ist ein Softwareteil, das einem Komponentenmodell entspricht, welches dessen grundlegende Architektur und die von ihm genutzten Prozesse zur Interaktion mit der Umwelt bestimmt. Diese Architekturen ermöglichen eine effektive Gestaltung von Software für den Nutzer, indem vorgefertigte Komponenten zusammengefügt werden. Aktivkomponenten sind strukturierte Dokumente, die durch verschiedene, geographisch voneinander getrennte, Unternehmen entwickelt werden können. Im Lauf der Zeit entwickeln sie sich unabhängig weiter und sind selbstständig. Sie können über das Internet überall hin versendet oder in andere Aktivkomponenten eingefügt werden. Unter diesen Umständen ist die Verwaltung von unabhängig entwickelten, miteinander verbundenen Komponentensätzen eine anspruchsvolle Aufgabe. Das EU-finanzierte IST-Projekt EASYCOMP (Easy Composition in Future Generation Component Systems) diente der Schaffung eines einheitlichen Kompositionsmodells und einer entsprechenden Infrastruktur, womit während des gesamten Produktzyklus einer Komponente Softwareprodukte zusammengestellt werden können. Vor dem Hintergrund des EASYCOMP-Projekts wurde eine C++-Servlet-Umgebung (CSE - C++ Servlet Environment) entwickelt, die eine leistungsfähige Servletmaschine für C++ liefert. Damit werden die Möglichkeiten für die Entwickler von Internetanwendungen verbessert. Ein Servlet ist ein kleines Computerprogramm, das über einen Internetserver ausgeführt wird und einen größeren Teil der Serversoftware leistungsfähiger machen soll. Hochleistung ist eine anspruchvolle Voraussetzung für Servletumgebungen, der jedoch mit der entwickelten Architektur entsprochen wird. Die CSE wird von einer C++-Servlet-Anwendungsprogrammierungs-Schnittstelle (API - application-programming interface) und -syntax für C++ Server-Seiten begleitet, die stark an diejenigen erinnert, die Java-Servletumgebungen nutzen. Auf diese Weise können sich die Programmierer leicht mit der CSE-Umgebung vertraut machen. Zudem führt Record Store, das Muster einer Internetanwendung, den Einsatz von CSE mit Beispielen zur Servletentwicklung vor. Die Nutzung von CSE-Umgebungen bietet ähnliche Vorteile wie bei anderen verbreiteten Servletumgebungen.