Was ist Qualität von Software und wie kann man sie bestimmen? Beide Teile dieser Frage sind zentrales Thema dieser Arbeit.
Zuerst wird versucht, eine Definition für Software Qualität zu finden, bevor ein Vorgehen zur dessen Bestimmung, nämlich das Software Benchmarking, vorgestellt wird. Die nähere Betrachtung des Benchmarkings führt anschließend zur Entwicklung eines Plug-Ins für SonarQube, welches das Benchmarking der einzelnen Softwareprojekte ermöglicht. Dieses Plug-In namens SBench errechnet, aufgrund der Regelverletzungen, alle vier Quartillen und ordnet die Projekte anschließend darin ein. Das Ergebnis wird in Form eines Boxplots und eines Benchmark Profils für den Benutzer grafisch dargestellt.
Die Anwendung des Plug-Ins zeigte, dass die Qualität der Projekte, im Vergleich zu den Referenzprojekten, sehr schnell eingeschätzt werden konnte und sich die Möglichkeit eröffnete gezielt Qualitätsverbesserungen durchzuführen. Das einzige Manko stellt die doch längere Zeit in Anspruch nehmende Berechnung dar. Die Informations- und Kommunikationstechnologien haben in den letzten Jahrzehnten eine immer bedeutungsvollere Aufgabe erhalten. Mittlerweile ist eine Welt ohne Computer, Smartphones und anderen Rechner unvorstellbar. Sie sind Bestandteil des täglichen Berufslebens, alle Bankgeschäfte werden mit ihrer Hilfe abgewickelt und in naher Zukunft wird es vermutlich möglich sein, ein ganzes Haus durch wenige Tastendrucke zu steuern.
All diese eingesetzten Geräte könnten jedoch nicht die gewünschten Funktionalitäten ausführen, würde auf ihnen nicht eine geeignete Software laufen. Ein Stück Software ist inzwischen in mehr Dingen enthalten, als man es sich jemals vorstellen konnte. Von der Waschmaschine, über Uhren bis hin zu Autos funktioniert alles nur noch mit Hilfe von Software.
Inhaltsverzeichnis
- 1 Einleitung
- 2 Qualität von Software
- 2.1 Was ist „Qualität“?
- 2.2 Metriken
- 2.3 Regeln
- 2.4 Software-Qualität
- 3 Statische Code-Analyse
- 3.1 Syntax-Analyse
- 3.2 Semantik-Analyse
- 3.3 Grafiken
- 4 Software Benchmarking
- 4.1 Vorgehen
- 4.2 Benchmark-Verteilung
- 4.3 Visualisierung - Das Boxplot
- 5 SonarQube
- 5.1 Funktionsweise
- 6 SBench
- 6.1 Konzept
- 6.2 Umsetzung
- 6.3 Anwendung
- 6.4 Erfahrungen
- 7 Zusammenfassung
- 8 Ausblick
Zielsetzung und Themenschwerpunkte
Diese Masterarbeit zielt auf die Entwicklung eines Plugins für SonarQube ab, welches das Software-Benchmarking vereinfacht. Das Plugin, genannt SBench, soll die Softwarequalität anhand von Regelverletzungen bewerten und die Ergebnisse grafisch darstellen. Die Arbeit untersucht zunächst den Begriff der Softwarequalität, relevante Metriken und Verfahren zur Qualitätsbestimmung.
- Definition und Messung von Softwarequalität
- Software-Benchmarking als Methode zur Qualitätsbewertung
- Entwicklung und Implementierung des SBench Plugins für SonarQube
- Grafische Darstellung der Benchmark-Ergebnisse
- Bewertung der Effizienz und der Anwendung des entwickelten Plugins
Zusammenfassung der Kapitel
1 Einleitung: Die Einleitung beschreibt die zunehmende Bedeutung von Software im Alltag und die Notwendigkeit, deren Qualität zu beurteilen. Sie führt in die Thematik des Software-Benchmarkings ein und skizziert den Aufbau der Arbeit, der von der Definition von Softwarequalität bis zur Präsentation des entwickelten Plugins reicht. Der Fokus liegt auf der Notwendigkeit eines zuverlässigen Werkzeugs zur Qualitätsbewertung von Software.
2 Qualität von Software: Dieses Kapitel befasst sich eingehend mit der Definition von Softwarequalität. Es werden verschiedene Metriken und Regeln vorgestellt, die bei der Beurteilung der Qualität eine wichtige Rolle spielen. Es wird ein umfassendes Verständnis für die Komplexität der Softwarequalitätsmessung geschaffen, als Grundlage für das spätere Benchmarking.
3 Statische Code-Analyse: Der Abschnitt beschreibt die statische Code-Analyse, einschließlich Syntax- und Sematikanalyse, als wichtigen Bestandteil der Softwarequalitätsprüfung. Es wird erläutert, wie diese Analysen zur Identifizierung von Fehlern und zur Verbesserung der Softwarequalität beitragen. Die Kapitel erklärt die notwendigen Grundlagen für das Verständnis des Benchmarking-Prozesses.
4 Software Benchmarking: Dieses Kapitel präsentiert das Software-Benchmarking als ein Verfahren zur Bestimmung der Softwarequalität. Es beschreibt detailliert die Vorgehensweise beim Benchmarking, die verschiedenen Benchmark-Verteilungen und die Visualisierung der Ergebnisse mithilfe von Boxplots. Es wird ein fundiertes Verständnis der Methode geschaffen, um die Funktionalität des entwickelten Plugins zu verstehen.
5 SonarQube: Dieses Kapitel stellt die Open-Source-Software SonarQube vor, die Plattform, für die das Plugin entwickelt wurde. Es beschreibt die Funktionsweise von SonarQube und legt die Grundlage für das Verständnis der Integration des neuen Plugins.
6 SBench: Dieses Kapitel beschreibt die Entwicklung des SBench Plugins. Es werden das Konzept, die Umsetzung und die Anwendung des Plugins detailliert dargestellt. Der Fokus liegt auf den Erfahrungen während der Entwicklung und der Anwendung des Plugins. Das Kapitel beschreibt die Ergebnisse der Softwarequalitätseinschätzung mit Hilfe des Plugins.
Schlüsselwörter
Softwarequalität, Software-Benchmarking, SonarQube, Plugin, SBench, statische Code-Analyse, Metriken, Qualitätsmessung, Softwareentwicklung
Häufig gestellte Fragen (FAQ) zur Masterarbeit: Software-Benchmarking mit SonarQube
Was ist der Gegenstand dieser Masterarbeit?
Die Masterarbeit befasst sich mit der Entwicklung eines Plugins für SonarQube, namens SBench, das das Software-Benchmarking vereinfacht. Das Plugin bewertet die Softwarequalität anhand von Regelverletzungen und stellt die Ergebnisse grafisch dar.
Welche Themen werden in der Arbeit behandelt?
Die Arbeit behandelt die Definition und Messung von Softwarequalität, Software-Benchmarking als Methode zur Qualitätsbewertung, die Entwicklung und Implementierung des SBench Plugins, die grafische Darstellung der Benchmark-Ergebnisse und die Bewertung der Effizienz und Anwendung des Plugins. Zusätzlich werden statische Code-Analyse, verschiedene Metriken und die Funktionsweise von SonarQube erläutert.
Wie ist die Arbeit strukturiert?
Die Arbeit gliedert sich in acht Kapitel: Einleitung, Softwarequalität (inkl. Metriken und Regeln), Statische Code-Analyse (Syntax- und Sematikanalyse), Software-Benchmarking (Vorgehen, Verteilung und Visualisierung), SonarQube (Funktionsweise), SBench (Konzept, Umsetzung, Anwendung und Erfahrungen), Zusammenfassung und Ausblick.
Was versteht die Arbeit unter Softwarequalität?
Die Arbeit definiert und untersucht umfassend den Begriff der Softwarequalität. Es werden verschiedene Metriken und Regeln vorgestellt, die bei der Beurteilung der Qualität eine wichtige Rolle spielen. Die Komplexität der Softwarequalitätsmessung wird als Grundlage für das spätere Benchmarking geschaffen.
Welche Rolle spielt die statische Code-Analyse?
Die statische Code-Analyse, einschließlich Syntax- und Sematikanalyse, wird als wichtiger Bestandteil der Softwarequalitätsprüfung beschrieben. Die Arbeit erläutert, wie diese Analysen zur Fehleridentifizierung und zur Verbesserung der Softwarequalität beitragen.
Wie funktioniert das Software-Benchmarking in dieser Arbeit?
Die Arbeit präsentiert das Software-Benchmarking als Verfahren zur Bestimmung der Softwarequalität. Detailliert beschrieben werden die Vorgehensweise, verschiedene Benchmark-Verteilungen und die Visualisierung der Ergebnisse mittels Boxplots.
Was ist SonarQube und welche Rolle spielt es?
SonarQube ist eine Open-Source-Software, die Plattform für die Entwicklung des SBench Plugins. Die Arbeit beschreibt die Funktionsweise von SonarQube und die Integration des neuen Plugins.
Was ist SBench und was sind seine Funktionen?
SBench ist das entwickelte Plugin für SonarQube. Die Arbeit beschreibt detailliert das Konzept, die Umsetzung und die Anwendung des Plugins. Der Fokus liegt auf den Erfahrungen während der Entwicklung und Anwendung, sowie auf den Ergebnissen der Softwarequalitätseinschätzung.
Welche Schlüsselwörter beschreiben die Arbeit am besten?
Softwarequalität, Software-Benchmarking, SonarQube, Plugin, SBench, statische Code-Analyse, Metriken, Qualitätsmessung, Softwareentwicklung.
Wo finde ich weitere Informationen?
Die vollständigen Details finden sich im Hauptdokument der Masterarbeit.
- Quote paper
- Philipp Täubel (Author), 2014, Beurteilung der Qualität von Software. Software Benchmarking und die Entwicklung eines Plugins für Sonarcube, Munich, GRIN Verlag, https://www.grin.com/document/992317