Fraunhofer-Gesellschaft

Publica

Hier finden Sie wissenschaftliche Publikationen aus den Fraunhofer-Instituten.

CodeSonar: Ein Plugin-basierter Regelinferierender Code-Browser

 
: Schäfer, W.
: Rombach, H.D.; Rech, J.

Kaiserslautern, 2005, 87 S. : Ill., Lit.
Kaiserslautern, TU, Dipl.-Arb., 2005
Deutsch
Diplomarbeit
Fraunhofer IESE ()
quality metric; information visualization; open source software; object-oriented software development; Java programming language

Abstract
Die Qualität von Softwareprodukten gewinnt immer mehr an Bedeutung. Doch wie erhält man ein qualitatives Produkt und vor allem wie kann man die Qualität messen? Um die Softwarequalität zu quantifizieren, werden in der Softwaretechnik Metriken eingesetzt. Eine solche Metrik ist die Kopplung. Ist sie zu hoch, deutet es auf eine hohe Abhängigkeit zwischen den Komponenten einer Software, was dazu führt, dass die Änderungen nicht lokal durchgeführt werden können. Um ein Softwareprodukt mit geringer Kopplung zu entwickeln, reicht es nicht, ein gutes Design zu haben, denn in der Implementierungsphase werden oft technologisch bedingt oder einfach durch die Verfeinerung des Designs neue Abhängigkeiten zwischen den Komponenten hinzugefügt. Für den Programmierer ist es jedoch schwer, bei großen Projekten den Überblick über die Abhängigkeiten der Komponenten zu behalten. Deshalb würde eine Visualisierung von Kopplung den Programmierer in dieser Hinsicht entlasten und dazu beitragen, die Kopplung gering zu halten.
Im Rahmen dieser Diplomarbeit wurde ein Werkzeug mit dem Namen Co-deSonar entwickelt. Es visualisiert die Kopplung zwischen einer ausgewählten Klasse und ihrer Umgebung. Das Besondere an CodeSonar ist, dass die Abhängigkeiten einer Klasse parallel zum Editieren dieser Klasse visualisiert werden, was dem Programmierer sofort ein Feedback über die Kopplung bietet. Zusätzlich kann CodeSonar um Regeln erweitert werden, die weitere Informationen, wie zum Beispiel Hinweise auf Schwachstellen im Kode, dar-stellen. Außerdem kann CodeSonar für das Navigieren im Quellkode benutzt werden, was vor allem die Einarbeitung in ein fremdes Projekt erleichtert.
Als Zielplattform wurde Eclipse, eine Open-Source-Entwicklungsumgebung, ausgewählt, die vor allem einen guten Erweiterungsmechanismus basierend auf Plugins bietet.

: http://publica.fraunhofer.de/dokumente/N-32607.html