Analyse und Implementierung eines Prototypen zur Evaluierung einer modularisierten Verkaufsstrecke

Hintergrund

Das Unternehmen Senacor Technologies entwickelt bei einem seiner Kunden eine monolithische Softwarelösung auf Front- und Backend-Seite, um eine Verkaufsstrecke von Finanzprodukten zu realisieren. Aufgrund zunehmender Schwierigkeiten in der Wartbarkeit eines wachsenden monolithischen Systems sollen Komponenten dieses Systems analysiert und anschließend neuimplementiert werden, sodass sich diese nach einem Baukasten-Prinzip zusammensetzen lassen.

Zielsetzung der Arbeit

Ziel der Arbeit ist die Analyse der bestehenden Software-Lösung auf Basis von verschiedenen Software-Metriken mit Hilfe des Tools Sonarqube und die Erstellung einer auf diesen Daten basierenden Anforderungsanalyse. Der Schwerpunkt liegt hier in der vertikalen Zerteilung des Systems zur besseren Modularisierung. Anschließend soll ein entsprechender Prototyp entwickelt werden, welcher im Anschluss ebenfalls mit den zuvor definierten Metriken analysiert wird. Die so erhaltenen Ergebnisse sollen dann zum Vergleich mit dem alten System herangezogen werden.

Konkrete Aufgaben

Definition von geeigneten Software-Metriken zur Messung von Modularisier- und Wartbarkeit

Analyse der bestehenden Software-Lösung

Systematische Anforderungserhebung

Implementierung eines Prototypen

Evaluierung der neuen Implementierung

Erwartete Vorkenntnisse

Sicherer Umgang mit Java und JavaScript

Design und Konzeption von Restful Webservices

Tiefgreifender Umgang mit dem Spring Boot Framework

Kenntnisse über Single Page Applications und das React-Framework

Weiterführende Quellen

Fielding, R. (2000). Architectural Styles and the Design of Network-based Software Architectures. University of California

Fielding, R. (2008). REST APIs must be hypertext-driven. (http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven)

Hoffmann, D. (2008). Software-Qualität. Springer.

Sneed, H. (2010). Software in Zahlen. Die Vermessung von Applikationen. Hanser.

Schneider, K. (2012). Abenteuer Softwarequalität: Grundlagen und Verfahren für Qualitätssicherung und Qualitätsmanagement. Dpunkt-Verlag.

Wallmüller, E. (2011). Software Quality Engineer