Suitability of Micro-Frontends for an AI as a Service Platform - Kübra Tokuc (2024)
Die Microservices-Architektur fördert die Entwicklung von wartbaren, erweiterbaren und skalierbaren Softwarelösungen in cloudbasierten, verteilten Umgebungen. Die Plattform des Forschungsprojekts DaFne, ein “Artificial Intelligence as a Service” (AIaaS), nutzt diese Ansätze bereits im Backend. Dadurch stellt es eine Plattform bereit, die erweiterbar ist und es ermöglicht, neue AI Software Services für die Generierung von synthetischen Daten hinzuzufügen. Während das Backend bereits erweiterbar ist, zeigt der ursprüngliche Architekturentwurf einen UI-Monolithen als einzigen Frontend-Dienst. Diese Arbeit erforscht die Anwendung von Micro-Frontends unter Nutzung der Library Module Federation, um auch im Frontend eine Erweiterbarkeit zu ermöglichen. Die Plattform wird dabei in einzelne Frontend-Module aufgeteilt, die aus verschiedenen Domänen stammen und unterschiedliche Anforderungen an den Tech Stack haben. Unter Berücksichtigung der Prinzipien und Herausforderungen von Micro-Frontends und der Entwicklung einer Event-basierten Kommunikationsstrategie wird der erstellte Systementwurf in Form eines Prototyps umgesetzt, der das Ergebnis dieser Forschung darstellt. Als Validierung wird ein extern mit Vue.js entwickelter AI Software Service in die Reactbasierte Host-App integriert. Die Vorteile zeigen sich vor allem in der Flexibilität der Systemgestaltung und im Maintenance-Bereich, allerdings eignet sich die Architektur vornehmlich für größere Projekte mit mehreren Entwicklerteams aufgrund der komplexen Herausforderungen und des hohen Implementierungsaufwands.
Keywords: Micro-Frontends; Frontend Architekturen; Module Federation; AI as a Service Platform; Synthetische Datengenerierung; Frontend Architectures; Synthetic Data Generation