Final Thesis: Ein Werkzeug zur Beschreibung und Bewertung von Code-Komponenten-Basierten Softwarearchitekturen

Abstract: Die Analyse und Bewertung von komponentenbasierten Softwarearchitekturen ist ein wichtiger Teil der Softwareentwicklung. Entscheidend dabei ist nicht nur die Analyse auf Performanz, Sicherheit etc., sondern auch auf Lizenzkompatibilität zwischen den unterschiedlich lizenzierten Komponenten der Architektur. In dieser Arbeit wurde zunachst eine Architecture Description Language sowie ein Editor für die Modellierung und Visualisierung einer Softwarearchitektur entwickelt. Die Architecture Description Language erlaubt es, eine Architektur formal zu modellieren. Der Editor ermöglicht eine Darstellung und Veränderung der Architektur. Um eine Möglichkeit zu schaffen, die Lizenzen für eine Komponente der Architektur automatisch aus ihrem Source Code zu beziehen, wurde ein FOSSology Server über eine REST-Schnittstelle angebunden. Einen Schwerpunkt der vorliegenden Arbeit bildet die Analyse der Lizenzkompatibilität zwischen den Komponenten. Hierfür wurden bereits existierende Ansatze evaluiert und auf Basis deren zwei Modelle für die maschinenlesbare Darstellung von Softwarelizenzen entwickelt. Die Modelle wurden ergänzt durch Algorithmen, welche die Kompatibilität prüfen. Abschließend wurde die Funktionsweise der entwickelten Modelle und Algorithmen mit Hilfe von Beispielarchitekturen untersucht und ein Vergleich zwischen den Ergebnissen gezogen.

Keywords: Open source, software architecture, code components, license models

PDFs: Master Thesis, Work Description

Reference: Alexander Marx. Ein Werkzeug zur Beschreibung und Bewertung von Code-Komponenten-Basierten Softwarearchitekturen. Master Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2015.