Definizione input esterni
Metodo dei Function Point: EI, EO, EQ e loro punteggio
Definizione input esterni
Un input esterno elabora dati od informazioni di controllo provenienti dall' esterno del confine dell' applicazione. L' input esterno e` un processo elementare. I dati elaborati mantengono o meno uno o piu` ILF. Le informazioni di controllo elaborate possono o meno mantenere un ILF.
Regole di identificazione EI
Per identificare gli input esterni si considerino i dati o le informazioni di controllo che rispondono alla definizione di un input esterno. Le seguenti regole di conteggio devono essere applicabili :
I dati devono essere mantenuti in un ILF attraverso un processo elementare dell' applicazione, mentre le informazioni di controllo possono o meno essere mantenute in un ILF
Per il processo elementare individuato deve essere applicabile una delle seguenti due regole :
Il trattamento logico e` unico rispetto ad altri input esterni dell' applicazione I dati identificati sono diversi rispetto ad altri input esterni dell' applicazione
Definizione di trattamento logico
Si definisce trattamento logico uno dei seguenti requisiti specificatamente richiesti dall' utente per completare un processo elementare :
Edit, algoritmi o calcoli
Un riferimento ad un ILF od EIF oppure l' utilizzo di un ILF od EIF
Definizioni e regole per la complessita` degli EI
Il numero di input esterni e la loro relativa complessita` funzionale determinano il contributo al numero di function point non pesati. Si assegna ad ogni EI identificato una complessita` funzionale basata sull numero di tipi di file referenziati (FTR) e di elementi di tipo dati (DET).
Definizione FTR
Un tipo di file referenziato e` :
Un file logico interno letto o mantenuto dalla funzione Un file esterno di interfaccia letto dalla funzione
Regole di identificazione FTR
Si conti solamente un FTR per ciascun ILF che e` sia mantenuto che letto dall' input esterno.
Definizione DET
Un elemento di tipo dati (DET) e` un campo unico riconoscibille dall' utente, non ricorsivo, mantenuto in un ILF da un input esterno.
Si noti che se campi con caratteristiche di DET vengono solamente letti durante l' input esterno non vanno a contribuire alla sua struttura.
FTR
La definizione rende un poco ambiguo il termine referenziato, perche` a questo punto e` usato anche per file logici che vengono modificati da una funzione di tipo transazione. E` evidente che lo stesso termine e` usato per concetti diversi, ma non ci pone problemi perche` in entrambi i casi e` precisato a dovere.
In pratica ogni file collegato al processo da un flusso di dati si considera referenziato. Dalla definizione di file interni ed esterni il sistema controllera` la coerenza di letture (possibili su entrambi) e scritture (possibili solo sui primi) su di essi.
Complessita` EI
Anche in questo caso l' ultimo passo del calcolo richiede l' uso di due tabelle. In modo analogo al precedente con la prima si calcola la complessita` qualitativa della transazione, con la seconda il numero di f.p. non pesati risultanti.
Complessita` EI | Function point per EI | |||||
DET # | 1 .. 4 | 5 .. 15 | 16 .. | Compl. | F. point | |
FTR | ||||||
0, 1 | Low | Low | Average | Low | 3 | |
2 | Low | Average | high | Average | 4 | |
3 .. | Average | High | High | High | 6 |
Definizione output esterni
Un output esterno e` un processo elementare che genera dati o informazioni di controllo che vengono inviati all' esterno del confine dell' applicazione.
Regole di identificazione EO
Per l' identificazione degli output esterni si considerino i dati o le informazioni di controllo che sono inviate all' esterno dell' applicazione. Le seguenti regole devono essere applicabili :
I dati o le informazioni di controllo sono inviate all' esterno del confine dell' applicazione attraverso un processo elementare.
Per il processo elementare individuato deve essere applicabile una delle regole di unicita` gia` viste in precedenza.
Definizioni e regole per la complessita` degli EO
Il numero di output esterni e la loro relativa complessita` funzionale determinano il contributo al numero di function point non pesati. Gli elementi in base ai quali si assegna un punteggio di complessita` funzionale sono sempre i tipi di file referenziati (FTR) e gli elementi di tipo dati (DET).
Definizione FTR
Un tipo di file referenziato e` un file letto durante l' elaborazione dell' output esterno.
FTR
Per gli FTR e` diverso il modo di conteggio rispetto al tipo di transazione precedente. Occorre contare un FTR per ogni file logico interno od esterno che sia letto. Le scritture su file logici non vengono considerate produttrici di funzionalita` per l' utente, in questo caso.
Era logico aspettarsi questo perche` quando l' utente, od un' applicazione, per mezzo di un EO richiedono dei dati che suppongono gia memorizzati all' interno del confine, si vuole astrarre dai meccanismi usati per fornirglieli.
Complessita` EO
Si riportano di seguito le tabelle per il calcolo dei f.p. nel caso di un external output, il loro uso e` simile al caso del EI.
Complessita` EO Function point per EO
FTR | DET # | 1 .. 5 | 6 .. 19 | 20 .. | Compl. | F. point |
0, 1 | Low | Low | Average | Low | 4 | |
2, 3 | Low | Average | high | Average | 5 | |
4 .. | Average | High | High | High | 7 |
Definizione interrogazioni esterne
Un' interrogazione esterna (External Query) e` un processo elementare composto da una combinazione di input ed output che si risolve in un reperimento di dati. Il lato di output non contiene dati derivati. Nessun file logico interno e` mantenuto durante l'elaborazione.
Definizione dati derivati
I dati derivati sono i dati che richiedono un trattamento diverso dal semplice reperimento e presentazione delle informazioni provenienti dai file logici interni od esterni.
Regole di identificazione EQ
Per riconoscere le interrogazioni esterne si identifichi dove una richiesta di reperimento dati entri nel confine dell' applicazione. Le seguenti regole di conteggio devono essere applicate alle informazioni da contare come una interrogazione esterna :
Una richiesta di input entra nel confine dell' applicazione Un risultato di output esce dal confine dell' applicazione Sono reperiti dei dati non derivati
La richiesta di input ed il risultato di output costituiscono insieme un processo che e` a piu` piccola unita` di attivita` significativa per l' utente finale del sistema
L' elaborazione non aggiorna alcun ILF
Per il processo elementare individuato deve essere applicabile una delle seguenti due regole :
Il trattamento logico del lato di input o del lato di output e` unico rispetto ad altre interrogazioni esterne dell' applicazione
I dati che costituiscono il lato dell' input od il lato di output sono differenti rispetto ad altre interrogazioni esterne dell' applicazione.
Definizione FTR
Un tipo di file referenziato e` un file letto durante l' elaborazione dell' interrogazione esterna.
Regole di identificazione FTR
Si considerino separatamente il lato di input ed il lato di output dell' interrogazione esterna e per ciascuno di essi si individuino gli FTR secondo la definizione.
FTR
Consideriamo un FTR per il lato di input per ogni file logico i cui campi appaiono nel flusso di dati entrante dall' agente esterno, e un FTR per il lato di output per ogni file logico i cui campi appaiono nel flusso di dati uscente verso l' agente esterno. Per quanto riguarda gli elementi di tipo dati non c' e` niente di nuovo rispetto a quanto gia` detto.
Complessita` EQ
Si considerano separatamente le complessita` dei due lati dell' interrogazione : lato input
lato output
Per ognuno dei due lati si calcola la complessita` basandosi sui file referenziati FTR e sugli elementi di tipo dati DET.
Sono usate le tabelle seguenti per procedere con il calcolo. Nella terza tabella che restituisce i f.p. per ogni EQ si entra con il valore piu` alto di complessita` rilevato fra i due lati dell' interrogazione.
Complessita` EQ lato input
FTR | DET # | 1 .. 4 | 5 .. 15 | 16 .. |
0, 1 | Low | Low | Average | |
2 | Low | Average | high | |
3 .. | Average | High | High |
Complessita` EQ lato output | Function point per EQ | |||||
DET # | 1 .. 5 | 6 .. 19 | 20 .. | Compl. | F. point | |
FTR | ||||||
0, 1 | Low | Low | Average | Low | 3 | |
2, 3 | Low | Average | high | Average | 4 | |
4 .. | Average | High | High | High | 6 |
Determinazione del fattore di aggiustamento
Il valore del fattore di aggiustamento applicato al numero di function point non pesati restituisce il numero dei function point pesati e introduce nel calcolo l' influenza delle caratteristiche generali del sistema in cui l' applicazione sara` eseguita.
La sua introduzione e` stato un modo per migliorare i risultati che si ottenevano dall' applicazione del metodo ad alcuni casi pratici. Quando si e` constatato che la trascuratezza di alcune informazioni portava a risultati che non riflettevano l' impegno effettivo nello sviluppo, o manutenzione, del software in oggetto si e` pensato di introdurre questi fattori nella forma piu` facile, in modo empirico, con una legge lineare.
Le 14 caratteristiche del sistema che si prendono in considerazione sono : Comunicazione dati
Distribuzione dell' elaborazione Prestazioni
Utilizzo estensivo della configurazione Frequenza delle transazioni Inserimento dati interattivo
Efficienza per l' utente finale Aggiornamento interattivo Complessita` elaborativa Riusabilita`
Facilita` d' installazione Facilita` di gestione operativa Molteplicita` di siti
Facilita` di modifica
Si valuta quindi la loro influenza sull' applicazione su di una scala di valori :
0 Non presente, o di nessuna influenza
1 Influenza secondaria
2 Influenza moderata
3 Influenza media
4 Influenza significativa
5 Influenza forte generalizzata
La scala riportata fornisce una linea guida generale che associa ogni punteggio a una descrizione di influenza, che viene poi specializzata caso per caso fornendo una descrizione piu` vicina alla caratteristica particolare che si sta considerando.
Il grado di influenza (Total Degree of Influence o TDI) e` la somma dei punteggi interi da 0 a 5 attribuiti in vario modo alle 14 caratteristiche che si e` scelto di considerare. La legge, ancora lineare, che lega il fattore di aggiustamento al grado di influenza e` :
VAF = 0.01 * TDI + 0.65
Analizziamo in particolare ogni caratteristica per capire meglio come attribuire il grado di influenza piu` adeguato e serviamoci di volta in volta di tabelle per cercare di usare criteri uniformi.
Se nessuna delle descrizioni riportate come indicazioni a fianco del valore si adatta esattamente al caso specifico, si deve valutare quale grado di influenza sembra farci commettere il minor errore possibile.
Comunicazione dati
Occorre valutare in quale misura l'applicazione riceve e trasmette dati attraverso sistemi di comunicazione, (si consideri trasmissione dati anche verso il terminale locale dell' unita` di controllo) e quanto cio` abbia influenzato lo sviluppo dell' applicazione, facendo in modo che supportasse piu` protocolli di trasmissione.
0 L' applicazione e' una semplice elaborazione batch o risiede su di un calcolatore che opera autonomamente
1 L' applicazione e' batch, ma ha inserimento dati o stampa remoti
2 L' applicazione e' batch, ma ha inserimento dati e stampa remoti
3 L' applicazione utilizza una raccolta dati interattiva o un front-end TP (TeleProcessing) verso un processo batch o un sistema di interrogazioni
4 L' applicazione e` piu` di un front-end ma supporta solo un tipo di protocollo di comunicazione TP
5 L' applicazione e` piu` di un front-ende supporta piu` di un tipo di protocollo di comunicazione
Distribuzione dell' elaborazione
Si cerca di indicare come sono distribuiti i dati e le funzioni di elaborazione all' interno dei confini dell' applicazione e se l' applicazione e` interessata dal loro movimento.
0 L' applicazione non fornisce ausili al trasferimento dati o funzioni di elaborazione
1 L' applicazione prepara i dati per l' elaborazione da parte dell' utente finale su di un altro componente del sistema come un foglio elettronico o un DBMS
2 L' applicazione prepara, trasferisce ed elabora i dati su di un altro componente del sistema
3 La distribuzione di dati e funzioni e` interattiva ed unidirezionale
4 La distribuzione di dati e funzioni e` interattiva e bidirezionale
5 Le funzioni di elaborazione sono eseguite dinamicamente sul componente piu` appropriato del sistema
Prestazioni
Indica se all' applicazione sono posti vincoli stringenti su tempi di risposta o troughput
(quantita` di lavoro per unita` di tempo) tali da influenzarne lo sviluppo.
0 Nessun particolare requisito prestazionale e` stato espresso dall' utente
1 I requisiti prestazionali espressi non comportano azioni particolari
2 Il tempo di risposta o lo troughput sono critici durante le ore di picco. Non e` richiesta alcuna progettazione per l' utilizzo della CPU. L' elaborazione puo` essere completata il successivo giorno lavorativo
3 Il tempo di risposta od il troughput sono critici durante tutte le ore lavorative. Non e` richiesta alcuna progettazione per l' utilizzo della CPU. I sistemi interfacciati all' applicazione pongono dei vincoli sul completamento dell' elaborazione
4 In aggiunta i requisiti prestazionali richiedono un passo di analisi delle prestazioni durante la progettazione
5 In aggiunta i requisiti prestazionali richiedono analisi delle prestazioni durante le fasi di progettazione, sviluppo, realizzazione
Utilizzo estensivo della configurazione
Notiamo se l' applicazione e` stata progettata in funzione di una particolare configurazione di hardware che si intende usare per farla girare.
0 L' applicazione non e` vincolata da particolari configurazioni hardware
1 Le configurazioni hardware particolari pongono dei vincoli gia` naturalmente soddisfatti dall' applicazione
2 Occorre fare considerazioni su sicurezza e tempi
3 Una parte specifica dell' applicazione richiede un processore con particolari requisiti
4 Limitazioni operative esplicite richiedono un elaboratore dedicato per l' applicazione
5 L' applicazione pone dei vincoli sui componenti distribuiti del sistema.
Frequenza delle transazioni
Osserviamo se una eventuale alta frequenza di transazioni ha influenzato le fasi di progettazione, sviluppo, installazione o gestione dell' applicazione.
0 Non e` previsto un periodo di picco delle transazioni
1 E` previsto un periodo di picco delle transazioni
2 E` previsto un picco settimanale di transazioni
3 E` previsto un picco giornaliero di transazioni
4 L' alta frequenza di transazioni dichiarata o gli accordi sui livelli di servizio sono tali da richiedere un passo di analisi delle prestazioni durante la progettazione
5 In aggiunta e` richiesto l' uso di strumenti per l' analisi delle prestazioni durante le fasi di progettazione, sviluppo e/o installazione.
Inserimento dati interattivo
Esaminiamo se l'applicazione fornisce funzioni per l' inserimento e controllo interattivo di dati.
0 Tutte le transazioni sono elaborate in modalita` batch
Le transazioni per l' inserimento interattivo di dati sono comprese : 1 fra 1% e 7%
2 fra 8% e 15%
3 fra 16% e 23%
4 fra 24% e 30%
5 fra 30% e 100%
Efficienza per l' utente finale
Osserviamo se nella progettazione delle eventuali funzioni interattive sono presenti alcune delle seguenti caratteristiche mirate all' efficienza d' uso per l' utente.
Aiuti di navigazione Menu
Help e dcumentazione in linea Spostamento automatico cursore Scorrimento
Stampe remote per mezzo di transazioni interattive Tasti funzionali predefiniti
Richiesta di attivazione di job batch attraverso transazioni interattive Selezione con cursore dei dati a video
Uso di strumenti grafici per arricchire il contenuto informativo (colori, reverse video, ...)
Documentazione mediante hard copy delle transazioni interattive Supporto mouse
Pop up
Minimizzazione schermate per completare una sessione interattiva Supporto per due lingue (valore 4)
Supporto multilingue (valore 6)
In base alla quantita` delle precedenti caratteristiche presenti assegnamo un punteggio all' influenza con la tabella che segue :
0 Nessuna caratteristica
1 Da 1 a 3
2 4 o 5
3 Oltre 6
4 In aggiunta ci sono delle specifiche che impongono una progettazione orientata ai fattori umani, ad esempio uso di valori predefiniti, di modelli, etc.
5 In aggiunta occorre l' uso di strumenti e procedure per verificare il raggiungimento dell' efficienza
Aggiornamento interattivo
L' applicazione fornisce l' aggiornamento interattivo dei suoi file interni logici.
0 Nessuno
1 Si possono aggiornare in modo interattivoda uno a tre file logici, il volume di aggiornamenti e` basso e le operazioni sui file semplici
2 Si possono aggiornare da quattro o piu` il volume di aggiornamenti e` basso e le operazioni sui file semplici.
3 E` possibile aggiornare la maggior parte di ILF
4 In aggiunta il sistema e` stato progettato con protezione contro la perdita di dati
5 In aggiunta elevati volumi di aggiornamento portano a dover considerare i costi di ripristino. Sono presenti procedure di ripristinno automatizzate che richiedono il minimo intervento dell' operatore
Complessita` elaborativa
Per valutare l' influenza della capacita` elaborativa vediamo quante fra le seguenti voci appaiono nell' applicazione in esame, il loro numero restituisce il grado di influenza. (0
β 5)
Controlli dedicati e/o particolari elaborazioni di sicurezza (per esempio speciali elaborazioni di verifica)
Notevole elaborazione logica Notevole elaborazione matematica
Molte eccezioni che impediscono l' andamento a buon fine di transazioni che devono poi essere rifatte od annullate
Elaborazione complessa che gestisce piu` possibiita` di input output
Riusabilita`
Vediamo quanta parte di codice e` sfruttabile od e` stata sfruttata da altre applicazioni
0 Nessuna parte di codice riusabile
1 Il codice e` riusabile all' interno dell' applicazione stessa
2 Meno del 10% dell' applicazione e` sfruttabile dall' utente per altre necessita` non previste dal progetto
3 Il 10% o piu` dell' applicazione e` sfruttabile dall' utente per altre necessita` non previste dal progetto
4 L' applicazione e` stata specificatamente progettata e/o documentata per un facile riuso, essa e` personalizzabile a livello di codice
5 Come sopra tranne che si puo` personalizzare l' applicazione mediante la modifica di parametri utente
Facilita` d' installazione
0 Non ci sono specifiche e l' installazione non richiede particolari inizializzazioni
1 Non ci sono specifiche ma l' installazione richiede particolari inizializzazioni
2 Ci sono specifiche per la conversione e l' installazione, sono state fornite guide, ma l' impatto sul progetto e` trascurabile
3 Ci sono specifiche per la conversione e l' installazione, sono state fornite guide, l' impatto della conversione sul progetto e` rilevante
4 In aggiunta a punto 2 sono stati forniti strumenti automatici per la conversione e l' installazione
5 In aggiunta a punto 3 sono stati forniti strumenti automatici per la conversione e l' installazione
Nota : con conversione si intende la modifica della struttura di dati per poterli passare da una applicazione, che li richede con un certo formato, ad un' altra, il cui formato proprietario e` diverso.
Facilita` di gestione operativa
Si intende vedere se l' applicazione minimizza la necessita` di attivita` manuali quando richiesto dall' utente
0 Non ci sono specifiche eccetto le normali procedure di salvataggio
1 - 4 Vedere quante delle seguenti voci appaiono
Sono fornite efficaci procedure di avviamento salvataggio e ripristino ma e` richiesto l' intervento dell' operatore
Sono fornite efficaci procedure di avviamento salvataggio e ripristino e non e` richiesto l' intervento dell' operatore (vale due voci)
L' applicazione minimizza la necessita` di montaggio di nastri L' applicazione minimizza la necessita` di gestione della carta
2 L' applicazione deve svolgete operazioni non presidiate (nessun intervento di
operatore ad eccezione di avviamento o chiusura), occorre il recupero automatico di eventuali errori
Molteplicita` di siti
L' applicazione e` nata considerando una sua eventuale diffusione in varie sedi con esigenze simili, e per sfruttare questa diffusione
0 Non e necessario considerare piu` l'installazione dell' applicazioni in piu` sedi (o per piu` utenti)
1 Si e` considerata l' installazione in piu` siti con hardware e software identici
2 Si e` considerata l' installazione in piu` siti con hardware e/o software simili
3 Si e` considerata l' installazione in piu` siti con hardware e/o software diversi
4 L' applicazione e` descritta dal punto 1 o 2 inoltre e` fornita documentazione e piani di supporto per la gestione in piu` siti
5 L' applicazione e` descritta dal punto 3 inoltre e` fornita documentazione e piani di supporto per la gestione in piu` siti
Facilita` di modifica
Per valutare l' influenza della facilita` di modifica vediamo quante fra le seguenti voci appaiono nell' applicazione in esame, il loro numero restituisce il grado di influenza (0
β 5).
Sono fornite delle interrogazioni flessibili ed ausili per la produzione di prospetti che gestiscono semplici richieste, ad esempio and or logici applicati solamente ad un ILF
Sono fornite delle interrogazioni flessibili ed ausili per la produzione di prospetti che gestiscono richieste di media complessita`, ad esempio and or logici applicati a piu` di un ILF (vale due voci)
Sono fornite delle interrogazioni flessibili ed ausili per la produzione di prospetti che gestiscono richieste complesse, ad esempio combinazioni di and or logici applicati a uno o piu` ILF (vale tre voci)
I dati di controllo per le funzioni sono in tabelle che l' utente puo` mantenere con elborazioni interattive, i cambiamenti diventano effettivi il giorno seguente
I dati di controllo per le funzioni sono in tabelle che l' utente puo` mantenere con elaborazioni interattive, i cambiamenti diventano immediatamente effettivi il giorno seguente (vale due voci)
Calcolo del valore del fattore di aggiustamento VAF
Si sommano tutti i gradi di influenza assegnati alle 14 caratteristiche sopraelencate ottenendo il totale grado di influenza TDI. Il VAF si ottiene quindi :
VAF = TDI / 100 + 0.65
Il VAF permette di arrivare al risultato finale che e` il numero di function point pesati. Il numero dei function point pesati va comunque tenuto in considerazione nel caso si pensi di fare una manutenzione evolutiva dell' applicazione
Calcolo del numero finale di function point pesati
Il calcolo si differenzia, come gia` osservato, nei tre casi : Progetto di sviluppo
Manutenzione evolutiva Applicazione
Progetto di sviluppo
Il numero di function point pesati per un progetto di sviluppo (Development Function Point o DFP) e` dato dal numero totale dei function point calcolato sulla base delle funzionalita` dell' applicazione incluse fra i requisiti utente, considerando separatamente le funzionalita` di conversione (CFP), moltiplicato per il fattore di aggiustamento.
DFP = ( UFP + CFP ) * VAF
Progetto di manutenzione evolutiva
Per il calcolo del numero di function point pesati per un progetto di manutenzione evolutiva (Evolution Function Point) occorre conoscere vari dati
ADD (ADDed) il numero di function point non pesati dato dalle funzionalita` aggiunte nell' applicazione
CFP (Conversion Function Point) il numero di function point non pesati dato dalle funzionalita` di conversione aggiunte nell' applicazione
CHGA (After CHanGe) il numero di function point non pesati delle funzionalita` dell' applicazione dopo i cambiamenti
VAFA, VAFB i valori dei fattori di aggiustamento dopo e prima la manutenzione evolutiva
DEL (Deleted) il numero di function point non pesati delle funzionalita` dell' applicazione rimosse
EFP = ( ADD + CFP + CHGA ) * VAFA + ( DEL ) * VAFB
Nota : questo e` il "costo" della manutenzione, non il numero di f.p. dell' applicazione che va invece ricalcolato, in conformita` col parziale calcolo gia` eseguito seguendo lo schema sottostante.
Applicazione
Si considerano separatamente i due casi di un' applicazione nativa (di cui non esistono precedenti versioni) o di un' applicazione evoluta (con aggiornamenti fatti per passare
da una versione alla successiva) per arrivare ai function point pesati per un' applicazione (AFP).
Applicazione nativa
AFP = ADD * VAF
Non essendoci precedenti versioni non possono apparire in questa formula le funzionalita` di conversione.
Applicazione evoluta
AFP = ( UFPB + ADD + CHGA - CHGB - DEL ) * VAFA
UFPB numero dei function point non pesati dell' applicazione prima della manutenzione evolutiva.
CHGB, CHGA numero dei function point non pesati delle funzioni modificate dalla manutenzione evolutiva prima e dopo i cambiamenti.
Tool esistenti
La teoria dei f.p. e` recente ed in via di diffusione. Per favorirne la divulgazione e per automatizzarne il calcolo sono stati creati alcuni programmi software. Essi sono ancora in un primo stadio di sviluppo, pertanto hanno funzionalita` abbastanza limitate. La fase piu` difficile resta quella di identificazione delle funzioni dati e transizioni e della loro complessita`, difficilmente automatizzabile se non con l'ausilio di tecniche basate su conoscenza (sistemi esperti).
Seat 2.42
Il programma e` stato sviluppato alla East Tennessee State University dal Dr. Xxxx Xxxxx appartenente al dipartimento di Computer Science. L' ultima versione, quella in visione, e` del 1996 ed e` liberamente disponibile, per chiunque fosse interessato, nel sito xxxx.xxxx-xxxx-xx.xxx.
Questo Software Estimation and Analysis Tool, da cui l' acronimo, e` progettato per girare con il sistema operativo DOS e l' ambiente grafico Microsoft Windows 3.xx. Il programma supporta sia il tipo di analisi con i function point sia il tipo di analisi con il modello a costi di costruzione (Constructive Cost Model o COCOMO).
Il programma fornisce solo delle maschere in cui inserire i numeri relativi alle funzioni di base per il calcolo dei FP, ma non da' alcun aiuto per identificarle, l' elaborazione fatta si riduce ad un numero limitato di operazioni aritmetiche che producono in uscita :
il numero dei f.p. non pesati
il valore del fattore di aggiustamento il numero dei f.p. pesati
il numero di istruzioni occorrenti nel linguaggio scelto per la codifica
Il tool si rivela quindi di limitata utilita` solo per gli utenti gia` esperti in questo tipo di misura che cercano un modo pratico (anche se non standard) di organizzare i dati di piu` analisi.
Function Point Analysis Spreadsheet ver. 1.1
Come si deduce dal nome il tool si basa su di un foglio di calcolo, piu` precisamente sul software Excel 7.0 della Microsoft per il sistema operativo Windows 95. L' autrice e` Xxxxxx X. Xxxxxx programmatrice della BellSouthTelecommunications Inc. che ha ultimato la versione 1.1 del tool nell' Aprile 1996. Anch' esso e` di pubblico dominio e
si compone del file in formato Excel 7.0 che contiene il codice e di un file di documentazione in formato word.
Questo software scende piu` nel dettaglio dell' analisi del precedente, risulta qundi essere piu` completo. E` stata sicuramente redditizia la scelta dell' autore di usare uno strumento di piu` alto livello per programmare quale un foglio di calcolo diffuso e con molte potenzialita` (che avranno diminuito il tempo di realizzazione del tool). La sua diffusione rende agevole un eventuale scambio dei dati con altre applicazioni e le sue potenzialita`, per adesso non sfruttate appieno, potrebbero favorire una futura espansione e permettono gia` ora una personalizzazione del tool da parte di un utente anche non molto esperto nella programmazione.
Anche questo tool e` solo di supporto all'analista che rimane il centro del processo riconoscitivo e decisionale. Non e` presente alcun help in linea, ma solo il file separato di documentazione.