Function-Point-Analyse

Abkürzungen
Die Function-Point-Analyse (FPA) ist eine Methode, um die Größe einer Software objektiv und unabhängig von technischen Randbedingungen zu messen. "Größe einer Software" bedeutet in diesem Zusammenhang den Leistungsumfang, d.h. die Menge an Funktionen, die eine Software dem Anwender bietet.

Function-Point-Analyse

Abkürzungen
Die Function-Point-Analyse (FPA) ist eine Methode, um die Größe einer Software objektiv und unabhängig von technischen Randbedingungen zu messen. "Größe einer Software" bedeutet in diesem Zusammenhang den Leistungsumfang, d.h. die Menge an Funktionen, die eine Software dem Anwender bietet.

Entwickelt wurde die Function-Point-Analyse von Allan J. Albrecht in den 1970er und 1980er Jahren bei IBM (Albrecht, Allan J.: Measuring Application Development Productivity, Proc. of IBM Application Development Symp., 1979; ders.: IBM CIS & A Guideline 313, AD/M Productivity Measurement and Estimate Validation, 1984)

Seit 1986 liegt die Verwaltung und Weiterentwicklung der FPA in den Händen der International Function Point User Group (IFPUG), einer US-amerikanischen Non-Profit-Organisation. Die IFPUG gibt das Counting Practices Manual (CPM) heraus, in dem die FPA beschrieben wird. Aktuell ist die Version CPM 4.3.1 aus dem Jahr 2010 gültig. Die IFPUG führt auch Zertifizierungen für Function-Point-Anwender durch (Certified Function Point Practitioner, CFPP und Certified Function Point Spezialist, CFPS).

Die FPA ist in der ISO/IEC 20926 international normiert (ISO/IEC 20926:2009: Software and systems engineering - Software measurement - IFPUG functional size measurement method, 2009)

Grundprinzip der Function-Point-Analyse

Die FPA betrachtet eine Software aus der Sicht des Anwenders und nicht aus Entwicklersicht. Gegenstand der FPA sind deshalb nicht technische Eigenschaften, wie z.B. die Zeilen Programmcode (Lines of Code, LOC), sondern die sog. Elementarprozesse, die von der Software ausgeführt werden. Ein Elementarprozess verändert oder transferiert Daten so, dass sich das betrachtete IT-System anschließend wieder in einem definierten Zustand befindet. Die FPA unterscheidet drei Typen von Elementarprozessen:

  • Eingabe (External Input) - EI
  • Abfrage (External Inquiry) - EQ
  • Ausgabe (External Output) - EO

Neben den Elementarprozessen berücksichtigt die FPA auch, dass eine Software Daten verwalten muss und definiert zwei Typen von sog. Datenfunktionen:

  • Interne logische Datenfunktion (Internal Logical File) - ILF
  • Externe referenzierte Datenfunktion (External Interface File) - EIF

Die Function-Point-Analyse besteht im Wesentlichen darin, bei einer zu vermessenden Software die Elementarprozesse und Datenfunktionen zu bestimmen, diese mit Function Points quantitativ zu bewerten und dann die Gesamtsumme der Function Points für die Software zu ermitteln.

Aussagekraft der Softwaregröße in Function Points

Das Ergebnis der Function-Point-Analyse ist eine Kennzahl, die unabhängig von Programmiersprache, Entwicklungsumgebung oder Laufzeitumgebung die Größe einer Software weitgehend objektiv und reproduzierbar quantifziert. Die Größe einer Software in Function Points ist deshalb eine wichtige Kennzahl im Konfigurationsmanagement für Software, da sie den Leistungsumfang jeder Version quantifiziert und somit dokumentierbar macht.

Weiterhin ist die Softwaregröße ist eine geeignete Referenz, um spezifische Kennzahlen zu bilden, wie z.B. Lines of Code pro Function Point, Entwicklungskosten pro Function Point oder Entwicklungszeit pro Function Point. Mit Hilfe von Kennzahlen dieser Art können z.B. Optimierungsprozesse gesteuert oder Benchmarkings durchgeführt werden

Die Softwaregröße ist auch eine entscheidende Eingangsgröße für die Schätzung von Aufwand und Laufzeit von Software-Entwicklungsprojekten durch parametrische Schätzverfahren, wie z.B. COCOMO.

Bewertungen

Diese Funktion steht nur eingeloggten Nutzern zur Verfügung.
Gesamt
Bewertungen 4
Kommentare 0