F1 – wymiana danych F2 – rozproszenie przetwarzania F3 – wydajność aplikacji F4 – wymagania sprzętowe F5 – ilość transakcji, duże obciążenie aplikacji F6 – wprowadzanie danych online w trakcie działania aplikacji F7 – efektywność wprowadzania danych przez użytkowników F8 – modyfikacje danych online (np. bazy danych) F9 – złożoność przetwarzania danych F10 – możliwość wykorzystania kodu aplikacji (modularność) F11 – łatwość instalacji Semestr V
Inżynieria Oprogramowania
WSZiB
VAF (Value Adjustment Factor) F12 – łatwość administracji F13 – instalacja w wielu lokalizacjach F14 – łatwość pielęgnacji i dostosowania FC = UFC * VAF
Semestr V
Inżynieria Oprogramowania
WSZiB
Średnia wartość LOC/FP Język
Semestr V
Poziom języka
Średnia wartość LOC/FP
Asembler
1
320
C++
6
53
Delphi
11
29
Turbo Pascal > 5
6,5
49
Visual C++
9,5
34
Java
6
53
Power Builder
20
16
Inżynieria Oprogramowania
WSZiB
Średnia Pracochłonność/FP Poziom języka
Semestr V
Średnia ilość FP na jeden osobomiesiąc
1-3
5-10
4-8
10-20
9-15
16-23
16-23
15-30
24-55
30-50
Powyżej 55
40-100
Inżynieria Oprogramowania
WSZiB
Przykład Aplikacja do generowania i drukowania faktur VAT na podstawie CDR’ów. Aplikacja powinna posiadać następującą funkcjonalność:
Semestr V
Import plików z połączeniami CDR Wprowadzenie danych o kontrahencie Wprowadzenie danych o numerach telefonicznych kontrahenta Generowanie faktur VAT za połączenia Drukowanie faktur VAT Drukowanie listy obecnych kontrahentów Drukowanie listy numerów telefonicznych
Inżynieria Oprogramowania
WSZiB
Przykład W wyniku analizy określono liczbę punktów funkcyjnych:
FC = 58 Zakładając, że aplikacja zaimplementowana zostanie w języku Java, wyznaczono liczbę linii kodu: LOC = 58 * 53 = 3074
Semestr V
Dla języka o kategorii 4-8, jedna osoba w ciągu miesiąca może zaimplementować od 10-20 FP, co oznacza: minimalny czas realizacji aplikacji 58/20 = 2,8 maksymalny czas realizacji aplikacji 58/10 = 5,8 Inżynieria Oprogramowania