Function Point


E' tempo di ripensare alle modalità di utilizzo.

Le evoluzioni del Software Engineering orientano la produzione verso alcuni principi base di semplificazione e collaborazione:
- produzione snella o metodologie agili o metodi iterativi;
- nuove piattaforme tecnologiche;
- centralità dell'utente;
- vantaggi per l'utente, più che per il progettista;
- rilasci parziali utilizzabili e riuso;
- running function point;
- monitoraggi della qualità in uso (efficacia e efficienza) con feedback alla produzione;
- valorizzazione della qualità al contorno;
- disponibilità di misure.

E' un problema di metodo di conteggio o di utilizzo contrattuale del conteggio?

Il conteggio è convenientemente adattabile alle tecnologie innovative, ove spesso la disponibilità di esperti non coincide con il know-how degli esperti in Function Point?

Come completare negli utilizzi contrattuali il conteggio della quantità con gli aspetti della qualità dei prodotti?

La documentazione da produrre è compatibile con le metodologie agili?

La tecnica di conteggio, nata per i sistemi gestionali dell'epoca in sostituzione delle LOC, Linee di codice, è adattabile, ma poco sperimentata, a diverse architetture e soluzioni tecnologiche,
consentendo di ottenere una misura standard della dimensione delle funzioni nello specifico contesto d'uso, essendo basata su concetti logici e non tecnici.

Il metodo IFPUG considera cinque fattori quantitativi:
- Input
- Output
- Interrogazioni
- File logici interni
- File logici esterni


Le principali finalità del metodo di conteggio dei Function Point sono riassumibili dalle seguenti caratteristiche:
- standardizzazione degli aspetti dimensionali;
- universalità;
- trasparenza;
- documentabilità;
- ausilio alla catalogazione delle applicazioni e dei
servizi;
- ripetibilità;
- confrontabilità dei prodotti (dal punto di vista del "peso", l'allusione alle mele dell'immagine seguente è chiara).

Quadro su misura
Negozio nella regione Midi-Pirenei (Francia)

Il metodo di conteggio riguarda gli elementi dimensionali e funzionali dell’applicazione (processi elementari del software e dati) che devono essere per definizione indipendenti, ma completabili, dalla tecnologia utilizzata per la loro realizzazione, dal costo e dalla qualità.

Sono esclusi dal conteggio gli aspetti legati alla qualità non funzionale del software (come quelli definiti nell’
ISO/IEC 25010: usabilità, sicurezza, compatibilità, efficienza, affidabilità, manutenibilità, portabilità) ed alla qualità dei dati (ISO/IEC 25012).

Essendo la metrica dei FP puramente quantitativa sta prevalendo un prezzo unitario medio unico, non collegato alla qualità, similmente a quanto capita in alcuni settori immobiliari (per esempio con l'uso del metro quadro) o settori commerciali.

pannello fuori un negozio sul prezzo al kilo
Negozio nella regione Campania

Se ciò può funzionare in media, difficilmente il metodo vale per la stima del valore di singoli casi, in particolare per il mondo del software.

A distanza di anni l'evoluzione tecnologica fa emergere esigenze di perfezionamento dell'utilizzo di metodi di quantificazione della produzione, considerando aspetti di qualità non funzionale, che aiutino anche a discriminare quantità pari per dal punto di vista quantitativo, ma diverse dal punto di vista qualitativo.

Per misurare aspetti qualitativi, tenendo conto ad esempio di aspetti non funzionali, l’IFPUG ha messo a punto il metodo SNAP (Software Non-functional Assessment Process).
Il metodo si basa sulla quantificazione di categorie (e sotto-categorie) qualitative relative a:
- Data Operations
- Interface design
- Technical environment
- Architecture

La dimensione funzionale in FP e la dimensione non funzionale in SNAP sono correlate con le produttività di sviluppo e manutenzione.

Il metodo SNAP si propone quindi di quantificare gli aspetti di qualità non funzionale del software, di complemento alla quantificazione funzionale dei Function Point, utilizzando il modello di qualità definito dall'ISO/IEC 25010.

A prescindere dai metodi i coefficienti di produttività del software dipendono da svariati fattori che vanno al di là della pura dimensione funzionale o non funzionale dell’applicazione, tra cui:
- fasi del ciclo di vita del software considerato;
- modalità di misurazione dell’effort relativo impiegato;
- processo di sviluppo ex novo o evoluzione-manutenzione;
- tecnologia utilizzata;
- riuso;
- documentazione prodotta;
- criticità del prodotto e rigorosità del test;
- esperienza delle persone;
- difettosità e qualità “venduta”.


Sta maturando la possibilità di combinare diversi costi unitari e far variare il costo unitario prescelto sulla base di alcuni parametri che possano tener conto, come in tutti i settori economici, non solo della quantità prodotta, ma anche della "oggettiva" qualità risultante, compreso l'aspetto (anche se strettamente esula dai Function Point) dell'uso effettivo degli stessi nell'ambiente reale della platea degli utilizzatori, certi o potenziali.

In Italia l'associazione
Gufpi-Isma sponsorizza la metrica dei FP fin dagli anni '90 ed ha organizzato sul tema la prima conferenza internazionale dell'IFPUG in Europa: "1996 Conference on software measurement and management". Attualmente l'associazione sostiene SNAP.

Dal 1996 in Italia sono rilasciate le certificazioni di calcolo da parte dell'IFPUG (International Function Point User Group) sia ad esperti delle società produttrici, sia ad esperti dei relativi committenti con funzioni di controllo, monitoraggio, accettazione.

Da allora si susseguono
eventi di studio e approfondimento sulla misurazione del software con attenzione alla qualità ed ai costi, anche da parte di varie associazioni.

GUFPI1996 copia 2
Brochure "1996 Conference on software measurement and management"

Nel 1997 l'AIPA (Autorità Informatica nella Pubblica Amministrazione) indicò i Function Point "quale metrica dimensionale per il software nei contratti di sviluppo e manutenzione" e "quale strumento per stabilire la congruità tecnico-economica del progetto" (fonte Università di Firenze - Facoltà di Ingegneria - Slides "Misurare il software - Metriche").

Link utili su Associazioni e dati di benchmarking:
Ifpug, Isbsg, Csimumbai

Altre informazioni del periodo originario sono disponibili nella pagina sulle metriche nella prima versione del sito
www.mondomatica.it

Informativa sulla Privacy. Informativa sui Cookies.

Utenti online

Function Point