Software-Metriken in der Praxis | Einführung und Anwendung von Software-Metriken in der industriellen Praxis | ISBN 9783540603726

Software-Metriken in der Praxis

Einführung und Anwendung von Software-Metriken in der industriellen Praxis

herausgegeben von Christof Ebert und Reiner Dumke
Mitwirkende
Herausgegeben vonChristof Ebert
Herausgegeben vonReiner Dumke
Buchcover Software-Metriken in der Praxis  | EAN 9783540603726 | ISBN 3-540-60372-7 | ISBN 978-3-540-60372-6

Software-Metriken in der Praxis

Einführung und Anwendung von Software-Metriken in der industriellen Praxis

herausgegeben von Christof Ebert und Reiner Dumke
Mitwirkende
Herausgegeben vonChristof Ebert
Herausgegeben vonReiner Dumke

Inhaltsverzeichnis

  • 1 Einführung und Übersicht.
  • 1.1 Ziele des Buchs.
  • 1.2 Warum Metriken?.
  • 1.3 Software-Metriken: State of the Art.
  • 1.4 Software-Metriken: Die Praxis.
  • 1.5 Übersicht über die einzelnen Kapitel.
  • 2 Kontinuierliche Software-Qualitätsverbesserung in der industriellen Praxis.
  • 2.1 Übersicht.
  • 2.2 Kontinuierliche Qualitätsverbesserung.
  • 2.2.1 Prinzipien und Grundlagen.
  • 2.2.2 Explizites Software-Entwicklungs-Know-how.
  • 2.2.3 Quality Improvement Paradigm.
  • 2.2.4 Weitere Ansätze zur Software-Qualitätsverbesserung.
  • 2.2.5 Vergleich der Ansätze.
  • 2.3 Infrastrukturtechnologien für kontinuierliche Verbesserung nach dem QIP.
  • 2.3.1 Zielorientiertes Messen.
  • 2.3.2 Explizites Modellieren.
  • 2.3.3 Umfassende Wiederverwendung.
  • 2.4 Start eines Qualitätsverbesserungsprogramms.
  • 2.5 Beispiele.
  • 2.5.1 SEL.
  • 2.5.2 FhE IESE.
  • 2.5.3 ISERN.
  • 2.6 Zusammenfassung.
  • 3 Metriken im Qualitätsmanagement.
  • 3.1 Übersicht.
  • 3.2 Qualitätsmanagement.
  • 3.3 Projektumfeld Telekommunikationstechnik.
  • 3.4 Qualitätsindikatoren.
  • 3.4.1 Qualitätsmetriken.
  • 3.4.2 Qualitätsmodelle.
  • 3.4.3 Statistische Randbedingungen und Validierung.
  • 3.4.4 Visualisierung.
  • 3.5 Komplexitätsmetriken als Qualitätsindikatoren.
  • 3.5.1 Komplexität und Qualität.
  • 3.5.2 Komplexitätsmetriken im Design.
  • 3.5.3 Komplexitätsmetriken in der Codierung.
  • 3.5.4 Komplexitätsmetriken in objektorientierten Projekten.
  • 3.5.5 Kritikalitätsprognosen.
  • 3.5.6 Werkzeugunterstützung.
  • 3.5.7 Ergebnisse von Kritikalitätsprognosen.
  • 3.6 Zuverlässigkeit und Restfehler.
  • 3.6.1 Software-Zuverlässigkeit und Fehlerfluß.
  • 3.6.2 Zuverlässigkeitsmodellierung in der Praxis.
  • 3.6.3 Fehlerprognosen für Systemtest und Feldverhalten.
  • 3.7 Praktische Erfahrungen.
  • 3.7.1 Umsetzungsstrategien.
  • 3.7.2 Kosten-Nutzen-Betrachtungen.
  • 3.8 Zusammenfassung.
  • 4 Metriken zur Planung, Kontrolle und Steuerung des Software-Tests.
  • 4.1 Übersicht.
  • 4.2 Metriken zur Planung des Software-Tests.
  • 4.2.1 Die zielgerichtete Auswahl von Testverfahren.
  • 4.2.2 Fehlerstatistiken zur Auswahl von Testverfahren.
  • 4.2.3 Komplexitätsmetriken zur Auswahl von Testverfahren.
  • 4.3 Metriken zur Kontrolle und Steuerung des Software-Tests.
  • 4.3.1 Systematisches, deterministisches Testen und Testabdeckungsmetriken.
  • 4.3.2 Aussagen zur Zuverlässigkeit und stochastisches Testen.
  • 4.4 Zusammenfassung.
  • 5 Ausgangsdaten für Qualitätsmetriken — Eine Fundgrube für Analysen.
  • 5.1 Übersicht.
  • 5.2 Ergebnisse statistischer Untersuchungen zur Fehlerdichte.
  • 5.2.1 Verteilung der Fehler im Programm.
  • 5.2.2 Einfluß der Änderungsdichte auf die Fehlerdichte.
  • 5.2.3 Einfluß der Modullänge auf die Fehlerdichte.
  • 5.3 Zusammenhang von Fehlern und Kosten.
  • 5.3.1 Qualitätskosten in den Entwicklungsphasen.
  • 5.3.2 Ursachen hoher Qualitätskosten.
  • 5.4 Zusammenhang von Fehlern mit der Reife einer Organisation.
  • 5.5 Zusammenfassung.
  • 6 Kostenschätzung von IT-Projekten.
  • 6.1 Übersicht.
  • 6.2 Die Aufwandschätzung von Software-Entwicklungsprojekten.
  • 6.2.1 Einführung.
  • 6.2.2 Das Function-Point-Verfahren.
  • 6.2.3 Zuverlässigkeit der Aufwandschätzung.
  • 6.3 Erweiterung des Function-Point-Verfahrens bei Volkswagen.
  • 6.3.1 Ermittlung der Einflußfaktoren.
  • 6.3.2 Zuverlässigkeit der Serviceschätzung.
  • 6.4 Zusammenfassung.
  • 7 Metriken und Objektorientierung.
  • 7.1 Übersicht.
  • 7.2 Einfluß und Auswirkungen des objektorientierten Paradigmas auf Software-Metriken.
  • 7.2.1 Gemeinsamkeiten.
  • 7.2.2 Unterschiede.
  • 7.3 Grundlagen objektorientierter Software-Metriken.
  • 7.3.1 Problematik der Übernahme klassischer Metriken.
  • 7.3.2 Ansatzpunkte und Kriterien für objektorientierte Metriken.
  • 7.3.3 Beispielhafte Darstellung von Software-Metriken für objektorientierte Programme.
  • 7.4 SmallCritic — ein Beispiel für praktische Umsetzungen im Bereich Smalltalk.
  • 7.4.1 Metrik 1: Volumen (VOL).
  • 7.4.2 Metrik 2: Methodenstruktur (STR).
  • 7.4.3 Metrik 3: Kohäsion (COH).
  • 7.4.4 Metrik 4: Kopplung (COU).
  • 7.4.5 Metrik 5: Vererbungsbaum (INH).
  • 7.4.6 Metrik 6: Klassenorganisation (ORG).
  • 7.5 Ergänzende Betrachtungen aus der Sicht mächtiger, realer objektorientierter Systeme.
  • 7.5.1 Der Einfluß von Makrostrukturen.
  • 7.5.2 Die Auswirkungen von Frameworks und Design Patterns.
  • 7.5.3 Konsequenzen.
  • 7.6 Zusammenfassung.
  • 8 Software-Assessments und Prozeßverbesserung.
  • 8.1 Übersicht.
  • 8.2 Software Engineering und der Software-Entwicklungsprozeß.
  • 8.3 Software-Metriken.
  • 8.3.1 Das GQM-Paradigma.
  • 8.4 Software-Prozeß-Assessments.
  • 8.5 Die BOOTSTRAP-Methode.
  • 8.6 Ablaufeines BOOTSTRAP-Assessment.
  • 8.7 BOOTSTRAP und ISO 9000.
  • 8.8 Erfahrungen mit der Anwendung von BOOTSTRAP.
  • 8.9 Die Anwendung von Metriken.
  • 8.10 Methoden für die Selbstbeurteilung.
  • 8.11 Zusammenfassung.
  • 9 AMI: Ein quantitativer Ansatz für Software-Projekt- und Prozeßmanagement.
  • 9.1 Übersicht.
  • 9.2 Ami — Application of Metrics in Industry.
  • 9.2.1 Aktivität „assess“ Schritt 1: Bewertung des Reifegrads der Entwicklungsumgebung.
  • 9.2.2 Aktivität „assess“ Schritt 2: Definition der Primärziele.
  • 9.2.3 Aktivität „assess“ Schritt 3: Validieren der Primärziele.
  • 9.2.4 Aktivität „analyse“ Schritt 4: Zerlegen der Primärziele in Teilziele.
  • 9.2.5 Aktivität „analyse“ Schritt 5: Verifizieren des Zielbaums.
  • 9.2.6 Aktivität „analyse“ Schritt 6: Identifikation der Metriken.
  • 9.2.7 Aktivität „metricate“ Schritt 7: Erstellen des Metrikplans.
  • 9.2.8 Aktivität „metricate“ Schritt 8: Erfassen der Grundmetriken.
  • 9.2.9 Aktivität „metricate“ Schritt 9: Verifizieren der Grundmetriken.
  • 9.2.10 Aktivität „improve“ Schritt 10: Auswerten der Daten.
  • 9.2.11 Aktivität „improve“ Schritt 11: Validieren der Metriken.
  • 9.2.12 Aktivität „improve“ Schritt 12: Rückführung der gesammelten Daten in den Zielbaum.
  • 9.3 Strategien zur Einführung von Metriken.
  • 9.3.1 Bottom-up Ansatz.
  • 9.3.2 Top-down Ansatz.
  • 9.3.3 Kombinierter („mixed“) Ansatz.
  • 9.4 Praktische Erfahrungen bei der Einführung eines Metrikprogramms.
  • 9.4.1 Methode.
  • 9.4.2 Werkzeugunterstützung.
  • 9.4.3 Hypothesen und Experimente.
  • 9.4.4 Einführungsstrategie.
  • 9.4.5 Ausbildung.
  • 9.4.6 Organisation.
  • 9.4.7 Kosten — Nutzen.
  • 9.4.8 Allgemeine Empfehlungen und Erfahrungen.
  • 9.5 Software Prozeßverbesserung.
  • 9.5.1 Einführung.
  • 9.5.2 Produktivitätsanalyse.
  • 9.5.3 Einführung von Software-Inspektionen.
  • 9.6 Zusammenfassung.
  • 10 Erfahrungen bei der Einführung von Metriken.
  • 10.1 Übersicht.
  • 10.2 Einführung und Etablierung von Metriken.
  • 10.2.1 Ziele von Metriken im Software-Entwicklungsprozeß.
  • 10.2.2 Der Arbeitskreis „Software-Metriken“.
  • 10.2.3 Das BOOTSTRAP-Assessment.
  • 10.2.4 DIN ISO 9001-Zertifizierung.
  • 10.3 Die Testmeßphase.
  • 10.3.1 Ziele der Testmeßphase.
  • 10.3.2 Einsatz eines Meßwerkzeugs.
  • 10.3.3 Probleme und Erfahrungen in der Testmeßphase.
  • 10.4 Aufbau eines metrikbasierten Projekt-Controllings.
  • 10.4.1 Aufgabenstellung.
  • 10.4.2 Ziele des Projekt-Controllings.
  • 10.4.3 Nicht-Ziele des Projekt-Controllings.
  • 10.4.4 Metriken im Projekt-Controlling.
  • 10.5 Zusammenfassung.
  • 11 Meßtheorie und Software-Messung.
  • 11.1 Übersicht.
  • 11.2 Software-Messung.
  • 11.3 Meßtheorie.
  • 11.3.1 Was ist die Meßtheorie?.
  • 11.3.2 Relationale Systeme.
  • 11.3.3 Binäre Operation.
  • 11.4 Homomorphe Abbildungen und Maße.
  • 11.5 Axiome.
  • 11.6 Das Repräsentationsproblem.
  • 11.7 Das Eindeutigkeitsproblem.
  • 11.8 Skalentypen.
  • 11.8.1 Interpretation der Tabelle.
  • 11.8.2 Sinnvolle Statistische Operationen.
  • 11.8.3 Sind Skalentypen wichtig für den Anwender?.
  • 11.9 Das Bedeutsamkeitsproblem.
  • 11.10 Messen auf verschiedenen Skalentypen.
  • 11.10.1 Messen auf dem Niveau der Nominalskala.
  • 11.10.2 Ordinalskala.
  • 11.10.3 Intervallskala.
  • 11.10.4 Rationalskala.
  • 11.10.5 Absolutskala.
  • 11.10.6 Transformation eines nicht additiven Maßes zu einem additiven Maß.
  • 11.11 Kalibrierung von Maßen.
  • 11.12 Nicht-additive Rationalskalen.
  • 11.12.1 Gesetz von Pythagoras.
  • 11.12.2 Nicht-additive Rationalskala und Software-Maße.
  • 11.13 Übersicht über empirisch und numerisch relationale Systeme.
  • 11.14 Unabhängigkeitsbedingungen.
  • 11.14.1 Maß Defect Density.
  • 11.15 Weyukers Anforderungen an Software-Maße.
  • 11.16 Validation von Software-Maßen.
  • 11.16.1 Interne Validierung:.
  • 11.16.2 Externe Validierung:.
  • 11.16.3 Funktion zwischen zwei Rationalskalen.
  • 11.17 Zusammenfassung.
  • 12 Software-Meßwerkzeuge.
  • 12.1 Übersicht.
  • 12.2 Ansatzpunkte der Software-Messung.
  • 12.2.1 Meßstrategien.
  • 12.2.2 Software-Maße.
  • 12.3 Arten von Software-Meßwerkzeugen.
  • 12.3.1 Klassifikation von Meßwerkzeugen.
  • 12.3.2 Anforderungen an Meßwerkzeuge.
  • 12.4 Beispiele für Werkzeuge zur Software-Messung.
  • 12.4.1 CAME-Tools zur Komponentenklassifikation.
  • 12.4.2 CAME-Tools zur Komponentenmessung.
  • 12.4.3 CAME-Tools zur bewertenden Komponentenmessung.
  • 12.4.4 CAME-Tools für die Meßdatenauswertung.
  • 12.4.5 CAME-Tools zur Software-Produktbewertung.
  • 12.4.6 CAME-Tools zur Entwicklungsbewertung.
  • 12.4.7 CAME-Tools als Tutorials zur Meßmethodik.
  • 12.5 Effiziente Anwendung von Meßwerkzeugen.
  • 12.6 Zusammenfassung.
  • Annotierte Bibliographie.
  • Ausgangspunkte für die Software-Messung.
  • Spezielle Bereiche der Software-Metriken.
  • Firmenbezogene Konzepte der Software-Messung.
  • Neue Ansätze bei Metriken.
  • Metriken im World Wide Web.
  • Literatur.
  • Sachwortverzeichnis.