Filtern
Erscheinungsjahr
- 2016 (1)
Dokumenttyp
- Masterarbeit (1)
Sprache
- Deutsch (1)
Volltext vorhanden
- ja (1)
Gehört zur Bibliographie
- ja (1)
Schlagworte
- Mikroservice (1)
Institut
Microservices
(2016)
Der Fokus dieser Arbeit liegt auf dem Identifizieren und Verifizieren des Einflusses von Microservices auf die Codequalität von Softwareanwendungen. Im ersten Teil der Arbeit sind Definitionen und Architekturen der untersuchten Softwareapplikationen dargelegt. Dies beinhaltet die Definition von monolithischer Software und deren Architektur und die Definition von Microservices mit seinen Vorteilen (zum Beispiel die Skalierung durch automatisiertes Deployment) und Nachteilen (zum Beispiel höhere Komplexität durch die erhöhte Anzahl von Softwareteilen). Darauf folgt eine Analyse von den ähnlichen Softwarearchitekturkonzepten der serviceorientierten Architektur und den Self-contained Services. Der Theorieteil zu Microservices endet mit der Darstellung von Methoden zur Trennung von monolithischer Software in Microservices und wie diese Dienste wieder zu einer Gesamtanwendung zusammengeführt werden können. Zur Vervollständigung ist der aktuelle Forschungsstand auf dem Gebiet der Microservices angeführt und es wird ein Einblick in eine Auswahl an Softwaremetriken zur Erhebung von Softwarequalität gegeben. Im praktischen Teil der Arbeit wurden die theoretischen Erkenntnisse an einer Softwareapplikation angewandt. Von einem Monolithen wurden Microservices abgespalten und die resultierende Anwendung als auch der Monolith einer Softwarearchitekturanalyse unterzogen. Danach wurden Softwaremetriken für die Ausgangsapplikation und die Microservices berechnet, um festzustellen, ob sich die Codequalität verändert hat. Zum Abschluss wurde eine Analyse der Änderungsgeschwindigkeit in beiden Applikationen durchgeführt, gefolgt von Interviews mit Softwareentwicklern zu dem Qualitätsmerkmal Lesbarkeit von Quellcode. Die Ergebnisse zeigen eine Verringerung der Komplexität des entstandenen Quellcodes und eine Erhöhung der Lesbarkeit gegenüber der Ausgangsanwendung.