1 / 23

Code-Quality-Management

Code-Quality-Management. Info-Point Urs Frei. Inhalt. Ziel der Analyse Messen der Qualität (QBL) Eine Messgrösse als Bsp. Analysierte Software Tool zur Analyse (Sissy). Ziel . Besser Code  Bessere Softwarequalität Codequalität beurteilen Objektiv durch messen (Metriken)

ondrea
Download Presentation

Code-Quality-Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Code-Quality-Management Info-Point Urs Frei

  2. Inhalt • Ziel der Analyse • Messen der Qualität (QBL) • Eine Messgrösse als Bsp. • Analysierte Software • Tool zur Analyse (Sissy)

  3. Ziel • Besser Code  Bessere Softwarequalität • Codequalität beurteilen • Objektiv durch messen (Metriken) • Anomalien identifizieren • Bsp.: 1Mio LOC in zwei Klassen • Weg vom Bauchgefühl hin zu klaren Fakten

  4. Code-Quality-Index • Wie bei Hotels sollen Sterne über Qualität Aufschluss geben • Einheit sind Quality Benchmark Levels (QBL) • Rudimentary (Level 1) • Basic (Level 2) • Extended (Level 3) • Advanced (Level 4) • Complete (Level 5)

  5. Wie wird gemessen • 120 Projekte Analysiert

  6. Schwellwerttunnel

  7. QBL 1: Rudimentary • Code ist • Kompilierbar • LinkbarCode syntaktisch korrekt

  8. QBL 2: Basic • Schwergewicht auf: • Analysierbarkeit • Stabilität • Wird QBL 2 nicht erfüllt  schwerwiegende Risiken in wirtschaftlicher Weiterentwicklung • Schwellwerttunnel: Oberes Quartil

  9. QBL 3: Extended • Gute Anpassbarkeit • Zukunftsfähigkeit gut • Schwerpunkt: • Analysierbarkeit • Stabilität • Zeitverhalten • Verbrauchsverhalten • Schwellwerttunnel: Median

  10. OBL 4: Advanced • Explizit für Weiterentwicklungen vorbereitet • Schwerpunkt: • Prüfbarkeit • Modifizierbarkeit • Schwellwerttunnel: Unteres Quartil

  11. QBL 5: Completet • Lässt keine Wünsche offen  Perfekter Code • Schwergewicht: • Austauschbarkeit • Schwellwerttunnel: Minimum

  12. Bsp Indikator: Attributüberdeckung • Definition:Der Name eines nichtstatischen Attributes wird in mindestens einer direkten oder indirekten Unterklasse für ein anderes Attribut erneut verwendet. Hierbei ist die Sichtbarkeit und der Typ der betrachteten Attribute irrelevant und ein Übereinstimmung nicht erforderlich • QBL 3

  13. Attributüberdeckung (2)

  14. Attributüberdeckung (3)

  15. Analyse OpenJGraph 0.92

  16. Analyse Doxygen 1.4.6 • Level QBL 1 • Durchgefallen bei: • Labyrinthmethoden • Nachlässige Kommentierung • Risikocode • Versteckte Konstantheit

  17. Tool zur Analyse • Sissy (FZI Forschungszentrum Informatik, Karlsruhe) • Software Metriken • Problem Pattern • Komplexitätsanalyse • Toter Code

  18. Vorgehen von Sissy

  19. Sissy: Bsp. Vorgefertigte DB Abfragen • Statistik:

  20. Sissy: Bsp. Vorgefertigte DB Abfragen • Dead attribute

  21. Vorteile QBL • Klare Fakten • Es wird gemessen • Richtwerte sind vorhanden

  22. Nachteile QBL • Analyse ist aufwendig

  23. Referenzen • Code-Quality-Management ISBN 3-89864-388-3 • Tool Sissy: http://sissy.fzi.de

More Related