Bischofs, Ludger2023-04-192023-04-192009https://dl.gi.de/handle/20.500.12116/41241Peer-to-Peer-Systeme (P2P-Systeme) sind verteilte Systeme, die aus Millionen gleichgestellter Einheiten (Peers) bestehen können. Die Gleichstellung von Peers wird realisiert, indem ein Peer sowohl Client- als auch Server-Funktionalität ubernimmt. Die Funktionalität eines Peers wird dabei üblicherweise durch eine P2P-Applikation implementiert, die das Verhalten des gesamten P2P-Systems vorgibt. Für die Kommunikation untereinander nutzen Peers in der Regel ein P2P-Overlay-Netzwerk, das auf einem physikalischen Netzwerk aufbaut. Ein P2P-System mit einem vorhersagbaren Verhalten zu entwickeln ist eine schwierige Aufgabe, weil das Verhalten von vielen Einflussfaktoren wie dem verwendeten P2P-Suchverfahren und dem zugrundeliegenden physikalischen Netzwerk abhängt. Einige Einflussfaktoren können aufgrund ihrer Komplexität oder unvollständig bekannter bzw. verstandener Bestandteile nicht vollständig erfasst werden. Beispielsweise kann das voraussichtliche Nutzerverhalten möglicherweise nur auf der Grundlage empirischer Daten geschätzt werden. Bei der Entwicklung komplexer, dynamischer Softwaresysteme wie P2P-Systemen wird häufig Simulation eingesetzt, um die Eigenschaften des zu entwickelnden Systems auf Basis eines Simulationsmodells fruhzeitig analysieren zu können. Im Gegensatz zu Simulationen in Naturwissenschaften, wo die Trennung von Realität und Modell klar ist, verwischt diese Grenze bei der Simulation von Softwaresystemen: Das simulierte Modell ist selbst ein Softwaresystem. Bei P2P-Systemen wird beispielsweise ein ”einfaches“ P2P-System modelliert und simuliert, um die Eigenschaften eines ”realen“ P2P-Systems vorherzusagen. Der Hauptbeitrag dieser Arbeit ist die als PeerSE (Peer Software Engineering) bezeichnete Methode zur ingenieurmäßigen Entwicklung von P2P-Systemen, die eine kontrollierte Überführung eines Simulationsmodells in ein reales Softwaresystem ermöglicht. Die Methode beginnt mit einer vergleichenden Analyse von P2PSystemmodellen und führt über die experimentelle Implementierung in einer Laborumgebung zu einem realen P2P-System, das in der Zielumgebung zum Einsatz gebracht wird. Ein Simulationsmodell für P2P-Systeme und ein Werkzeug für die Durchführung von Simulations- und Laborexperimenten gehören ebenfalls zur Methode. Simulation ist ein essenzieller Bestandteil der Methode zur Identifikation und zum Vergleich von Modellen, die vorgegebene Anforderungen erfüllen. Nachdem ein geeignetes Modell gefunden wurde, können Modellkomponenten wiederverwendet bzw. verfeinert werden, um ein Laborsystem zu implementieren. Die kontrollierte Überführung der Modellkomponenten zu Laborkomponenten beinhaltet einen Vergleich von Simulations- und Laborexperimenten unter Verwendung der gleichen Metriken. Die Anwendbarkeit der PeerSEMethode wurde gezeigt, indem ein P2P-System für verteilte Softwareentwickler analysiert und realisiert wurde.deSimulationsbasierte Analyse und Entwicklung von Peer-to-Peer-SystemenText/Journal Article0720-8928