Wie in
meinem Post Methoden zur Messung des Softwareumfangs dargelegt erfordert
die Vergleichbarkeit von Kennzahlen zwischen verschieden großen Systemen eine
Messung ihrer Größe, d.h. ihres Umfangs. Ebenso wie die Vorab-Ermittlung des Aufwands für ein geplantes Entwicklungsvorhaben.
Die bekannteste Methode zur Analyse des
funktionalen Umfangs (wie in der Norm ISO/IEC 14143 zum Functional Size Measurement beschrieben) ist seit 1979 die Function Point-Analyse (FPA). Aktuell ist
die Methode standardisiert in der Norm ISO/IEC 20926:2009. Sie ist nun frei von
Schätzungen, denn es wird nur gezählt und alle Kriterien für die Punktwerte
sind festgelegt. Somit kommen durch verschiedene Personen durchgeführte
Messungen stets zu dem gleichen Ergebnis, vorausgesetzt diese verfügen über
ausreichendes Methoden-Know-how.
 |
Zählobjekte der Function Point-Analyse |
Die Function Point-Methode orientiert sich an den Anwendungsfällen eines Systems und zählt Elementarprozesse, mit denen Daten über die Systemgrenzen hinweg ein- oder ausgegeben werden (EI = External Input, EO = External Output, EQ = External Inquiry), sowie Datenstrukturen in internen und externen Datenbeständen (ILF = Internal Logical File, EIF = External Interface File). Eine nach der klassischen Methode durchgeführte Function Point-Analyse
erfordert eine genaue Kenntnis der Anwendungsfunktionalität.
Dies kann aufwendig sein. Es gibt jedoch Ansätze für eine automatisierte Zählung der entsprechenden Objekte (siehe beispielsweise http://www.omg.org/spec/AFP/1.0/Beta1/PDF/). Diese erfordern jedoch eine
genaue Kenntnis der den Elementarprozessen entsprechenden Codestrukturen und Namenskonventionen, da ansonsten konstruktive und keine funktionalen Merkmale der Anwendung gezählt werden. Dennoch lohnt der Implementierungsaufwand, denn einmal eingerichtet kann die Zählung nach Änderungen
an der Anwendung ohne großen Aufwand wiederholt werden.
 |
Punktwert-Matrix für Strukturen in
internen Datenbeständen |
Ein
genereller Nachteil der Function Point-Methode ist, dass Punktwerte durch dreistufige,
nach oben offene Intervallskalen festgelegt sind. Bei der Zählung von Datenbeständen beispielsweise ergeben sich die Punktwerte aus einem dreistufigen Intervall für die Anzahl ihrer Datenelemente (DET = Data Element Type) und einem weiteren Intervall für die Anzahl der Feldgruppen (RET = Record Element Type). In der Folge erhalten beispielsweise alle Datenstrukturen mit mehr als 50 Datenelementen und mehr als einer Feldgruppe den selben Punktwert – ungeachtet der tatsächlichen Anzahl. Das ist grob und schränkt die Vergleichbarkeit von Umfangsmessungen ein.
Die meisten Unternehmen, die überhaupt Messungen des funktionalen Umfangs durchführen, setzen heute die Function Point Analyse ein. Leider sehr oft in Form von Näherungsverfahren wie Rapid, die völlig auf eine Komplexitätsbewertung verzichten und die Intervallskalen durch Durchschnittswerte ersetzen. Messungen zeigen jedoch, dass die Zählung von Elementarprozessen und Datenstrukturen ohne Berücksichtigung der Anzahl beteiligter Datenelemente bzw. ihrer Komplexität zu Einschränkungen bei der Vergleichbarkeit führt. Es gibt andere Messverfahren, die sich ebenfalls an der ISO/IEC 14143 orientieren, bei denen diese Unschärfe verbessert wurde.
Keine Kommentare:
Kommentar veröffentlichen