See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Softwaremetrik – Wikipedia

Softwaremetrik

aus Wikipedia, der freien Enzyklopädie

Nur Liste
Dieser Artikel oder Abschnitt besteht hauptsächlich aus Listen, an deren Stelle besser Fließtext stehen sollte.

Eine Softwaremetrik, oder kurz Metrik, ist eine (meist mathematische) Funktion, die eine Eigenschaft von Software in einen Zahlenwert, auch Maßzahl genannt, abbildet. Hierdurch werden formale Vergleichs- und Bewertungsmöglichkeiten geschaffen.

Inhaltsverzeichnis

[Bearbeiten] Hintergrund

Formell spricht man davon, die Metrik auf eine Software-Einheit anzuwenden. Das Ergebnis ist die Maßzahl. Mit Software-Einheit ist in der Mehrheit der Fälle der zugrundeliegende Quellcode gemeint. Da der Quellcode üblicherweise auf eine oder mehrere einzelne Dateien verteilt wird, kann die Metrik (je nach Art) auf den ganzen Quellcode oder Teile davon angewendet werden. Es gibt zudem Metriken, wie etwa die Function-Point-Analyse, die bereits auf der Spezifikation von Software angewendet werden können, um im Vorfeld den Aufwand zur Entwicklung der Software zu bestimmen.

In der Form des Zahlenwerts, der Maßzahl, dient die Metrik als Maß für eine Eigenschaft (oder ein Qualitätsmerkmal) von Software. Sie kann einen funktionalen Zusammenhang repräsentieren oder auch aus einer Checkliste abgeleitet werden. Einfachste Metriken zeigen die Größe des Quellcode (in Zeilen oder Zeichen) auf. Komplexeste Metriken versuchen die Verständlichkeit des Quellcodes zu beurteilen. Mit einer geeigneten Zahl verschiedener Metriken kann beurteit werden, wie aufwändig (sprich personal- und kostenintensiv) die Wartung, Weiterentwicklung oder anschließende Tests der Software sind.

Oftmals werden bei Neuentwicklung neben rein funktionalen und (weiteren) nicht-funktionalen Anforderungen auch Qualitätsmerkmale (Wartbarkeit, Erweiterbarkeit, Verständlichkeit) gefordert. Werden während einer langfristigen (Weiter-)Entwicklung einer solchen Software, regelmäßig Metriken angewendet, können negative Trends (also Abweichungen vom Qualitätsziel) frühzeitig entdeckt und umschifft werden.

Metriken oder das Einhalten von Qualitätsmerkmalen können keine Fehlerfreiheit oder Korrektheit bezogen auf die funktionalen und (weiteren) nicht-funktionalen Anforderungen bewerten. Allenfalls Prognosen über die Menge erwarteter Fehler sind möglich.

Die Interpretation der Daten einer Softwaremetrik ist Aufgabe der Disziplin der Softwaremetrie, dort stellen die Softwaremetriken einen Teil der Basisdaten für die Interpretation dar.

[Bearbeiten] Definition nach IEEE Standard 1061

Eine Softwaremetrik ist eine Funktion, die eine Software-Einheit in einen Zahlenwert abbildet. Dieser berechnete Wert ist interpretierbar als der Erfüllungsgrad einer Qualitätseigenschaft der Software-Einheit (IEEE Standard 1061, 1992)

Anmerkung: Mit Software-Einheit ist dabei in der Regel der zugrundeliegende Quellcode gemeint. Da der Quellcode üblicherweise auf eine odere mehrere einzelne Dateien verteilt wird, kann die Metrik (je nach Art) auf den ganzen Quellcode oder Teile davon angewendet werden. Es gibt zudem Metriken, wie etwa die Function-Point-Analyse, die bereits auf der Spezifikation von der Software angewendet werden können.

[Bearbeiten] Ordnung von Softwaremetriken

Metriken bedienen verschiedene Aspekte der entstehenden Software, des angewendeten Vorgehensmodells und der Bewertung der Erfüllung der Anforderungen.

[Bearbeiten] Nutzung

Der Einsatz von Metriken erstreckt sich von der Beurteilung der Entwicklungsphasen über die Beurteilung der Phasenergebnisse bis hin zur Beurteilung der eingesetzten Technologien. Das Zeil der Anwendung einer Metrik in der Softwareentwicklung ist die Fehlerprognose und die Aufwandschätzung, wobei zwischen vorlaufendem, mitlaufendem und retrospektive Einsatz unterschieden wird.

[Bearbeiten] Beschränkung

Grundsätzlich sind Metriken, die überschaubar bleiben, eindimensional. Damit zwingen sie zur Vereinfachung. In der Regel wird das erreicht, indem jede Metrik auf eine Sicht eingeengt wird. Das bedeutet dann zwingend, dass andere Sichten nicht gleichzeitig in gleicher Qualität bedient werden.

  1. Sicht des Management
  2. Sicht des Entwicklers
    • Lesbarkeit (Wartung, Wiederverwendung)
    • Effizienz und Effektivität
    • Vertrauen (Restfehler, MTBF, Tests)
  3. Sicht des Kunden
    • Abschätzungen (Budgettreue, Termintreue)
    • Qualität (Zuverlässigkeit, Korrektheit)
    • Return on Investment (Wartbarkeit, Erweiterbarkeit)

[Bearbeiten] Klassifikation

Für die verschiedenen Aspekte der Bewertung gibt es Entwurfsmetriken, wirtschaftliche Metriken, Kommunikationsmetriken usw. Metriken können verschiedenen Klassen zugeordnet werden, die den Gegenstand der Messung oder Bewertung bezeichnen:

  1. Prozess-Metrik
    • Ressourcenaufwand (Mitarbeiter, Zeit, Kosten)
    • Fehler
    • Kommunikationsaufwand
  2. Produkt-Metrik
    • Umfang (Lines of Code, Wiederverwendung, Prozeduren, ...)
    • Komplexität
    • Lesbarkeit (Stil)
    • Entwurfsqualität (Modularität, Bindung, Kopplung, ...)
    • Produktqualität (Testergebnisse, Testabdeckung, ...)
  3. Aufwands-Metrik
    • Aufwandsstabilität
    • Aufwandsverteilung
    • Produktivität
    • Aufwand-Termin-Treue
  4. Projektlaufzeit-Metrik
    • Entwicklungszeit
    • Durchschnittliche Entwicklungszeit
    • Meilenstein-Trend-Analyse
    • Termintreue
  5. Komplexitäts-Metrik
    • Softwaregröße
    • Fertigstellungsgrad
  6. Anwendungs-Metrik
    • Schulungsaufwand
    • Kundenzufriedenheit

[Bearbeiten] Gütekriterien

Eine Metrik aus der Produktionsphase der Software allein ist noch kein Gütekriterium. In der Regel werden Gütemerkmale an der Erfüllung der Anforderungen des Kunden und seiner Anwendung gemessen. Dabei sind die Übertragbarkeit der Ergebnisse und die Repräsentanz der Messwerte für den Kundennutzen von Bedeutung:

  • Objektivität: keine subjektiven Einflüsse des Messenden
  • Zuverlässigkeit: bei Wiederholung gleiche Ergebnisse
  • Normierung: Messergebnisskala und Vergleichbarkeitsskala
  • Vergleichbarkeit: Maß mit anderen Maßen in Relation setzbar
  • Ökonomie: minimale Kosten
  • Nützlichkeit: messbare Erfüllung praktischer Bedürfnisse
  • Validität: von messbaren Größen auf andere Kenngrößen zu schließen (schwierig)

[Bearbeiten] Metriken

Einige der bekannteren Metriken sind:

Durch Kombination vorhandener Metriken werden immer wieder neue Metriken entwickelt, die zum Teil aus neuen Entwicklungen im Software Engineering widerspiegeln. Ein Beispiel hierfür ist die 2007 vorgestellte C.R.A.P. (Change Risk Analysis and Predictions) Metrik zur Beurteilung der Wartbarkeit von Code.

[Bearbeiten] Auswahl geeigneter Metriken

Zur Identifikation geeigneter Maße kann das GQM-Verfahren eingesetzt werden.

[Bearbeiten] Vorgehen

  1. Phasen- und Rollenmodell festlegen
  2. Ziele bestimmen
  3. Metrik-Maske definieren
  4. Messplan aufstellen
  5. Daten sammeln
  6. Daten validieren
  7. Daten analysieren und interpretieren
  8. Daten sichern und visualisieren

[Bearbeiten] Literatur

  • Georg E. Thaller: Software-Metriken einsetzen - bewerten - messen. Verlag Technik, 2000, ISBN 3341012605
  • M. Rezagholi: Prozess- und Technologie Management in der Softwareentwicklung. Oldenbourg Verlag München Wien, 2004, ISBN 3486275496

[Bearbeiten] Weblinks

[Bearbeiten] Siehe auch


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -