Grin logo
de en es fr
Shop
GRIN Website
Publicación mundial de textos académicos
Go to shop › Informática - Informatica de negocios

Messung und Bewertung von Code-Komplexität

Título: Messung und Bewertung von Code-Komplexität

Trabajo de Seminario , 2010 , 35 Páginas , Calificación: 1,3

Autor:in: Tareq Heidarzada (Autor)

Informática - Informatica de negocios
Extracto de texto & Detalles   Leer eBook
Resumen Extracto de texto Detalles

Die Computerentwicklung unserer heutigen Zeit ist geprägt durch große Fortschritte im Bereich der Hardware. Computer werden immer schneller und leistungsstarker und sind ein zentraler Bestandteil der Organisationen aller Unternehmen. Die Folge aus dieser Entwicklung ist, dass die Implementierung von immer modernen, leistungsfähigeren Softwareanwendungen möglich ist und auch von den meisten Organisationen erwartet wird. Leistungsfähige, qualitativ hochwertige Softwareanwendungen gewinnen in vielen Anwendungsbereichen immer mehr an Bedeutung, da sie zunehmend in vielen Projekten der Faktor sind, der über Erfolg und Misserfolg entscheidet. (Thaller 1994, S.14) In der Softwareentwicklung jedoch, erschweren leistungsfähige Softwaresysteme die einfache und schnelle Erstellung von zuverlässigen und verwaltbaren Code. Nicht selten bestehen Computerprogramme aus tausenden Zeilen von Code und bringen aufgrund ihres großen Umfangs enorme Schwierigkeiten mit sich. So ist unnötig komplexer Code oft Ursache für fehleranfällige Software und damit auch Ursache für eine schlechte Softwarequalität. Zudem kommt es mit steigernder
Komplexität zu einer Erhöhung der Änderbarkeit und Wartbarkeit von Software. Angesicht dieser Komplexitäts- und Umfangssteigerung, nimmt die Bedeutung des Messens von Softwarecode zur Qualitätskontrolle immer mehr zu. (Ligessmeyer 2009, S.232) Auch Tom DeMarco erkannte die Wichtigkeit von Softwaremessung und fasste dessen Bedeutung wie folgt zusammen:
„You can’t manage what you can’t control, and you can’t control what you don’t measure. To be effective software engineers or software managers, we must be able to control software development practice. If we don’t measure it, however, we will never have that control.” (DeMarco 1986)

Extracto


Inhaltsverzeichnis

1 Einleitung

1.1 Problemstellung

1.2 Ziel dieser Arbeit

1.3 Gliederung

2 Begriffsdefinition

2.1 Softwarekomplexität

2.2 Metrik und Maß

3 Software-Metriken

3.1 Definition

3.2 Auswahl geeigneter Software-Metriken

3.2.1 Problematik

3.2.2 GQM Ansatz

3.3 Interpretation der Messergebnisse

3.4 Darstellung der Messergebnisse

4 Für die Messung von Code-Komplexität relevante Metriken

4.1 Traditionelle Produktmetriken

4.1.1 Lines of Code

4.1.2 Halstead Metriken

4.1.3 McCabes zyklomatische Komplexität

4.2 Objektorientierte Produktmetriken

4.2.1 Coupling between Objects

4.2.2 Depth of Inheritance Tree

4.2.3 Lack of Cohesion in Methods

5 Werkzeuge zur Ermittlung von statischen Produktmetriken

5.1 Statische Produktmetriken in Visual Studio generieren

5.2 Metrics Plugin für Eclipse

6 Zusammenfassung und Fazit

Zielsetzung & Themen

Das Hauptziel dieser Arbeit ist es zu zeigen, nach welchen Verfahren Software-Metriken die Komplexität von Quellcode quantifizieren können, wobei der Fokus auf Metriken liegt, die Eigenschaften des Quellcodes direkt messen.

  • Grundlagen der Softwarekomplexität und Abgrenzung von Metrik und Maß
  • Methodik zur Auswahl geeigneter Software-Metriken und Interpretation von Messergebnissen
  • Analyse traditioneller und objektorientierter Produktmetriken
  • Praktische Anwendung von Messwerkzeugen in Visual Studio und Eclipse

Auszug aus dem Buch

4.1.1 Lines of Code

Bei der Lines of Code Metrik (LOC) handelt es sich um eine statische Produktmetrik, welches traditionell zur Messung des Quellcodeumfanges verwendet wird. Sie zählt die Anzahl der Quellcodezeilen und legt diese als Messgröße für den Umfang der betrachteten Software fest. Die Metrik geht davon aus, dass der Umfang des Quellcodes indirekt dessen Komplexität wiederspiegelt. Je grösser der Umfang des Quellcodes ist, desto komplexer und damit fehleranfälliger ist die Software. Die Komplexität steigt also proportional mit dem Umfang der Software an.

In Kapitel 2.2 wurde erläutert wie wichtig eine genaue und ausführliche Definition einer Metrik für ein verwendbares Ergebnis ist. Die LOC Metrik ist ein gutes Beispiel für diese Forderung an eine Metrik, da sie im Grunde eine unzureichende Definition besitzt. In ihrer Definition sind keine Regeln bezüglich der Beachtung von Kommentaren und Leerzeilen aufgestellt. Zudem wird das Ende einer Quellcodezeile nicht eindeutig definiert. Aufgrund der nicht ausreichenden Definition, ergeben sich Schwierigkeiten beim Vergleich von LOC Messwerte. Es ist demnach für den Vergleich der Messergebnisse von besonderer Bedeutung, dass vor der LOC Messung ihre Inputgrößen genau spezifiziert werden.

Ein weiterer Nachteil der LOC Metrik, dass der Vergleich von Software, welche in unterschiedliche Programmiersprachen implementiert wurden, zu verfälschten Ergebnissen führt. Der Grund für die Verfälschung liegt darin, dass zu einem eine Programmiersprachen die Implementierung von mehreren Anweisungen in einer Zeile erlauben. Die Programmiersprachen ermöglichen somit die Implementierung einer Funktionalität mit sehr wenigen langen oder vielen kurzen Zeilen. Je nach Programmierstil des Entwicklers variiert dadurch der LOC Messwert erheblich. Bestimmten anderen Programmiersprachen unterschiedlichen mächtig. Höhere Programmiersprachen erlauben die Formulierung einer Funktionalität mit weitaus weniger Quellcodezeilen als andere Sprachen. Eine Software kann also durch verschiedene Programmiersprachen jeweils unterschiedlich kompakt formuliert werden. (Hoffmann 2008, S. 250)

Zusammenfassung der Kapitel

1 Einleitung: Beschreibt die Problemstellung der Softwarekomplexität und definiert das Ziel der Arbeit, Verfahren zur Quantifizierung von Quellcode-Komplexität aufzuzeigen.

2 Begriffsdefinition: Erläutert den Begriff Softwarekomplexität und differenziert zwischen den Begriffen Metrik und Maß im Kontext der Softwaremessung.

3 Software-Metriken: Definiert Software-Metriken, erläutert die Auswahl und Interpretation von Messwerten sowie deren grafische Darstellung mittels Kiviat-Diagrammen.

4 Für die Messung von Code-Komplexität relevante Metriken: Analysiert kritisch traditionelle Metriken wie LOC, Halstead und zyklomatische Komplexität sowie objektorientierte Metriken wie CBO, DIT und LCOM.

5 Werkzeuge zur Ermittlung von statischen Produktmetriken: Stellt praxisorientierte Werkzeuge zur automatisierten Erhebung von Metriken in den Entwicklungsumgebungen Visual Studio und Eclipse vor.

6 Zusammenfassung und Fazit: Fasst die Ergebnisse der Arbeit zusammen und bewertet die Vor- und Nachteile der Software-Metriken bei der Bewertung von Quellcode.

Schlüsselwörter

Softwarekomplexität, Software-Metriken, Lines of Code, Halstead Metriken, Zyklomatische Komplexität, Objektorientierte Produktmetriken, CBO, DIT, LCOM, Quellcode-Analyse, Wartbarkeit, Visual Studio, Eclipse, Softwaremessung, Produktmetriken.

Häufig gestellte Fragen

Worum geht es in dieser Arbeit grundsätzlich?

Die Arbeit behandelt die systematische Messung und Bewertung von Softwarekomplexität basierend auf Quellcode-Metriken.

Welche zentralen Themenfelder deckt die Arbeit ab?

Die Arbeit beleuchtet die Definition von Softwarekomplexität, verschiedene Metriken zur Quantifizierung, deren Interpretation sowie deren praktische Umsetzung durch Software-Werkzeuge.

Was ist das primäre Ziel der Untersuchung?

Ziel ist es aufzuzeigen, wie mittels verschiedener Software-Metriken die Komplexität von Quellcode objektiv quantifiziert werden kann.

Welche wissenschaftlichen Methoden werden verwendet?

Es werden theoretische Grundlagen analysiert, bestehende Metriken kritisch diskutiert sowie Werkzeuge zur praktischen Anwendung evaluiert.

Was wird im Hauptteil der Arbeit behandelt?

Der Hauptteil gliedert sich in die theoretische fundierte Auswahl von Metriken (klassisch und objektorientiert) sowie die Beschreibung ihrer Anwendung in modernen Entwicklungsumgebungen.

Welche Schlüsselwörter charakterisieren die Publikation?

Wesentliche Begriffe sind Softwarekomplexität, statische Produktmetriken, Lines of Code, Zyklomatische Komplexität und objektorientierte Metriken wie CBO oder LCOM.

Welche Rolle spielt die Visualisierung bei der Messung?

Die Arbeit betont die Notwendigkeit von Kiviat-Diagrammen und tabellarischen Ansichten, um Messergebnisse für den Entwickler interpretierbar und vergleichbar zu machen.

Wie unterscheidet der Autor zwischen traditionellen und objektorientierten Metriken?

Während traditionelle Metriken den Umfang oder den strukturellen Ablauf messen, berücksichtigen objektorientierte Metriken klassenspezifische Paradigmen wie Kopplung, Vererbung und Kohäsion.

Final del extracto de 35 páginas  - subir

Detalles

Título
Messung und Bewertung von Code-Komplexität
Universidad
University of Duisburg-Essen  (Fachbereich Wirtschaftswissenschaften)
Calificación
1,3
Autor
Tareq Heidarzada (Autor)
Año de publicación
2010
Páginas
35
No. de catálogo
V147850
ISBN (Ebook)
9783640578542
ISBN (Libro)
9783640578238
Idioma
Alemán
Etiqueta
Metriken Komplexität Halstead McCabe Lines of code LOC Zyklomatische Kompleität Softwarekomplexität Coupling between Objects Depth of Inheritance Tree Lack of Cohesion in Methods Kiviat Diagramm Objektorientierte Metriken Softwaremaß
Seguridad del producto
GRIN Publishing Ltd.
Citar trabajo
Tareq Heidarzada (Autor), 2010, Messung und Bewertung von Code-Komplexität, Múnich, GRIN Verlag, https://www.grin.com/document/147850
Leer eBook
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
  • Si ve este mensaje, la imagen no pudo ser cargada y visualizada.
Extracto de  35  Páginas
Grin logo
  • Grin.com
  • Envío
  • Contacto
  • Privacidad
  • Aviso legal
  • Imprint