IT Project Management Lezione 5 Software Sizing Estimation - Esercitazione Federica Spiga A.A. 2009-2010 1 Elementi Base Il metodo dei Function Point consiste nell identificare e contare le funzionalità che l applicazione deve fornire: Funzioni tipo Dati: Internal Logical File (ILF) Users External Interface File (EIF) Input Output Inquiry Funzioni tipo Transazione: External Input (EI) Logical Files Input Output Logical Files External Output (EO) Measured Application Inquiry External Application External Inquiry (EQ) Interface 2 2 1
Conteggio delle Funzioni di tipo Dati Le funzioni di Tipo Dati rappresentano le funzionalità fornite all utente per soddisfare i requisiti informativi da lui espressi. ILF: Internal Logical File Gruppo di dati logicamente collegati o di informazioni di controllo, riconoscibili dall utente, mantenuti all interno dell applicazione almeno da un processo elementare EIF: External Interface File Gruppo di dati logicamente collegati o di informazioni di controllo, riconoscibili dall utente, referenziati dall applicazione ma mantenuti all interno del confine di applicazione di un altra applicazione 3 3 Conteggio delle Funzioni di tipo Transazione EI: External Input Processo elementare che elabora i dati o le informazioni di controllo provenienti dall esterno del confine dell applicazione. Deve aggiornare i dati di almeno un ILF dell applicazione.e univoco nell ambito dell applicazione: Per il tipo di trattamento logico dei dati Per il tipo di ILF o EIF trattati Per il tipo di dati elementari trattati EO: External Output Processo elementare che genera dati o informazioni di controllo che vengono inviati all esterno del confine dell applicazione attraverso una logica elaborativa piu complessa di un semplice reperimento dati. Deve aggiornare i dati di almeno un ILF dell applicazione E univoco nell ambito dell applicazione: Per il tipo di trattamento logico dei dati Per il tipo di ILF o EIF trattati Per il tipo di dati elementari trattati L EO deve inoltre soddisfare almeno uno dei seguenti requisiti: Nel trattamento dei dati deve includere almeno una formula di calcolo matematico Nel trattamento logico dei dati vengono creati dei dati derivati Nel trattamento logico dei dati viene aggiornato almeno un ILF Nel trattamento logico dei dati deve modificare il comportamento del sistema 4 4 2
Conteggio delle Funzioni di tipo Transazione EQ: External Inquiry Processo elementare che genera dati o informazioni di controllo che vengono inviati all esterno del confine dell applicazione attraverso un semplice reperimento dati. E univoco nell ambito dell applicazione: Per il tipo di trattamento logico dei dati Per il tipo di ILF o EIF trattati Per il tipo di dati elementari trattati L EQ deve inoltre soddisfare almeno uno dei seguenti requisiti: Nel trattamento dei dati N deve includere almeno una formula di calcolo matematico Nel trattamento logico dei dati N vengono creati dei dati derivati Nel trattamento logico dei dati N viene aggiornato almeno un ILF Nel trattamento logico dei dati N deve modificare il comportamento del sistema 5 5 Determinare i FP non pesati Metodo ACE Nella pratica, soprattutto quando si stima nelle fasi iniziali non è sempre semplice individuare tutti i RET, DET e FTR. Si utilizza allora la tecnica ACE: Average Complexity Estimation,che associa ai processi elementari all interno delle stessa categoria lo stesso peso medio I pesi medi sono standard e sono calcolati facendo la media tra i 7200 progetti dell ISBSG UFPACE = #ILF*7.4+#EIF*5.5+#EI*4.3+#EO*5.4+#EQ*3.8 6 6 3
Esempio Applicazione Gestione Esami Tesi Applicazione Gestione Corsi Docenti Titolo Data Voto Studente Piano di Studi Corsi Nome Dipartimento Esami effettuati Matricola Indirizzo Nome Data Voto Applicazione Gestione Esami Codice Descrizione L'applicazione Gestione Esami deve eseguire le seguenti operazioni: Gestione dei dati sui Docenti 1.Inserisci Docente: inserisci i dati di un nuovo docente. I dati comprendono il Nome e il Dipartimento di afferenza. 2.InterrogaDocenti: richiedi i dati di un Docente dato il suo Nome. 3.Elenca Docenti: mostra la lista di tutti i docenti. Gestione dei dati sugli Studenti 1.Inserisci Studente: inserisci i dati di un nuovo studente. I dati comprendono il Nome, la Matricola, l Indirizzo e i codici dei corsi (28 in totale) inseriti nel piano di studi. Gestione degli Esami e delle Tesi 1.Inserisci Esame: inserisci i dati di un esame effettuato. I dati comprendono il Nome del docente, la Matricola dello studente, la Data e il Voto assegnato. 2.Inserisci Tesi: inserisci i dati di una tesi sostenuta. I dati comprendono il Titolo della tesi, il Nome del docente relatore, la Matricola dello studente, la Data e il Voto assegnato. 3.Interroga Tesi: dato il Nome di un docente, stampa un elenco con Titolo, Data e Voto di tutte le tesi che hanno quel docente come relatore. 7 7 Esempio Applicazione Gestione Esami ILF /EIF E' Mantenuto all'interno? E' un gruppo di dati E' mantenuto da almeno logicamente collegati un processo riconoscibili dall utente? Docenti Si- da Inserisci Docente No, il processo Inserisci Studente inserisce anche i dati Studente riguardanti il piano di studi Si No, il processo Inserisci Studente inserisce anche i dati Piano di Studi riguardanti lo studente Tesi Sì, dal processo Inserisci Tesi Esami effettuati Si Si- da Inserisci Esame Studente+Piano Si - dal processo Inserisci di Studi Studente Corsi No No, i dati sono mantenuti dall'applicazione Gestione Corsi ILF EIF 8 4
Esempio Applicazione Gestione Esami EI/EQ/EO Processo Il processo è I dati o le informazioni di controllo sono ricevuti dall'esterno del confine EI E' mantenuto almeno un ILF è unica rispetto alle logiche di processo eseguite da altri EI Almeno una deve essere valida L'insieme di elementi di tipo dati identificati è differente dagli insiemi identificati per altri EI Gli ILFs o EIFs referenziati sono differenti da quelli referenziati da altri EI Inserisci Docente - Docente Si - Piano Di Studi + Inserisci Studente Studente Si Inserisci Esame - Esami Si Inserisci Test - Tesi Si Processo Il processo è I dati o le informazioni di controllo sono ricevuti dall'esterno del confine EQ/EO del processo elementare non contiene una formula matematica o un calcolo, o non produce dati derivati è unica rispetto alle logiche di processo eseguite da altri EO o EQ L'insieme di elementi di tipo dati identificati è differente dagli insiemi identificati per altri EO ed EQ Gli ILFs o EIFs referenziati sono differenti da quelli referenziati da altri EO ed EQ Elenca Docenti Interroga docenti Interroga Tesi Interroga Docenti Elenca Docenti Almeno una deve essere valida Elenca Docenti EQ EI 9 Esempio Applicazione Gestione Esami UFP ACE Numero Punteggio FP ACE UFP Total ILF 4 7,4 29,6 EIF 1 5,5 5,5 EI 4 4,3 17,2 EO 0 5,4 0 EQ 3 UFP TOTALI 3,8 11,4 63,7 10 5
Commerciali Gestione di una anagrafica di attività commerciali, sia di tipo privato che di tipo ditta, con differenziazione delle due tipologie. Si vogliono gestire le informazioni relative a: indicazione se privato o ditta codice fiscale (privato) / partita IVA (ditta) cognome / denominazione indirizzo completo (via, numero, città, provincia) descrizione attività data decorrenza attività Per quel che riguarda le informazioni di residenza, si utilizzeranno dati di decodifica preesistenti ed esterni al sistema. Le funzionalità da attivare sono: inserimento in anagrafica (con controllo sull esistenza del dato) modifica anagrafica cancellazione anagrafica inserimento attività commerciale modifica attività cancellazione attività associare anagrafica/ attività visualizzazione dati complessivi con conteggio anagrafiche visualizzazione singola scheda stampa dati complessivi con conteggio anagrafiche stampa singola scheda. 11 Commerciali Codice Fiscali/Partita IVA Privato/Ditta Devìnominazione Codice Via Numero Civico Città Provincia Commerciali Codice Fiscali/Partita IVA Tipo Decorrenza Sigle Provincie Stradario Codice Provincia Descrizione Provincia Codice Via Descrizione Via Elenco Tipo attività Descrizione Applicazione Gestione Commerciali 12 6
Commerciali ILF /EIF E' Mantenuto all'interno? E' un gruppo di dati logicamente collegati riconoscibili dall utente? E' mantenuto da almeno un processo - da inserisci anagrafica, update anagrafica,cancella - da inserisci attività,update Commerciali attività,cancella Elenco Si - File di decodifica No Stradario Sì, dal processo Inserisci Tesi Sigle Provincie Si- da Inserisci Esame ILF EIF 13 Commerciali EI Processo Il processo è I dati o le informazioni di controllo sono ricevuti dall'esterno del confine EI E' mantenuto almeno un ILF è unica rispetto alle logiche di processo eseguite da altri EI Almeno una deve essere valida L'insieme di elementi di tipo dati identificati è differente dagli insiemi identificati per altri EI Gli ILFs o EIFs referenziati sono differenti da quelli referenziati da altri EI Inserimento - Si Update - Si Cancella - Si Inserisci - Si Update - Si Cancella - Si Associare Utenti Si - e Si EI 14 7
Commerciali EQ/EO Processo Il processo è I dati o le informazioni di controllo sono ricevuti dall'esterno del confine EQ/EO del processo elementare non contiene una formula matematica o un calcolo, o non produce dati derivati è unica rispetto alle logiche di processo eseguite da altri EO o EQ Visualizza dati con conteggio Stampa dati con conteggio Visualizza scheda Stampa scheda Almeno una deve essere valida L'insieme di elementi di tipo dati identificati è differente dagli insiemi identificati per altri EO ed EQ Stampa dati con conteggio Visualizza dati con conteggio Stampa Scheda No sono le stesse si Visualizza Scheda Gli ILFs o EIFs referenziati sono differenti da quelli referenziati da altri EO ed EQ 15 Commerciali UFP ACE Numero Punteggio FP ACE UFP Total ILF 2 7,4 14,8 EIF 2 5,5 11 EI 7 4,3 30,1 EO 2 5,4 10,8 EQ 2 UFP TOTALI 3,8 7,6 74,3 16 8