Analisi delle tecniche IFPUG e COSMIC per la stima della dimensione delle funzionalità di un prodotto software

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Analisi delle tecniche IFPUG e COSMIC per la stima della dimensione delle funzionalità di un prodotto software"

Transcript

1 Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato finale in Ingegneria del software Analisi delle tecniche IFPUG e COSMIC per la stima della dimensione delle funzionalità di un prodotto software Anno Accademico Candidato: Gianluigi Renzi matr. N

2 Se insisti e resisti raggiungi e conquisti. Ω Carlo Alberto Salustri (in arte Trilussa)

3 Ai miei genitori che mi hanno sempre supportato senza mai mettermi pressione. A mio nonno che sarebbe molto fiero di me. Ai miei amici, quelli di sempre. Ai miei compagni di avventura di questi tre anni e mezzo. A Valeria per il suo supporto nei momenti di difficoltà e per la condivisione dei momenti di gioia.... ii

4 Indice List of Figures v 1 Introduzione 1 2 FPA (Function Point Analysis) Stima dei costi Definizione FP Dal calcolo degli FP ad una stima dei costi effettiva IFPUG Il metodo Tipo di conteggio Confine applicativo Conteggio UFP Fattori correttivi Calcolo FP SNAP Esempio di utilizzo Testo esempio Tipo di conteggio e confine applicativo Calcolo UFP Calcolo FP Numero di linee di codice stimato COSMIC Il metodo Strategia di misurazione Fase di Mappatura Fase di misurazione Esempio di utilizzo: ACME Car Hire Strategia di misurazione Fase di mappatura Fase di mappatura Analogie e differenze standard IFPUG e COSMIC Analogie iii

5 iv 5.2 Differenze Esempio di confronto tra risultati Conversione tra i risultati dei due metodi Conclusioni Il metodo migliore? A Approfondimenti 23 A.1 Perchè il metodo COSMIC è indicato per i sistemi real-time A.2 Altri standard ISO Bibliografia 25 iv

6 Elenco delle figure 3.1 Tabella calcolo UFP Il metodo COSMIC Esempio divisione in strati Processo funzionale ed evento di innesco Fase di misurazione Tabella usata per la misurazione Interfacce utente del sistema d esempio ACME Car Hire parte Interfacce utente del sistema d esempio ACME Car Hire parte Interfacce utente del sistema d esempio ACME Car Hire parte Tabella calcolo CFP v

7 Capitolo 1 Introduzione Verso la fine degli anni 50 iniziarono ad essere sviluppati i primi linguaggi di alto livello e con essi nacque la figura professionale del programmatore; durante gli anni 60 vi fu lo sviluppo dei primi progetti di programmazione molto complessi i quali coinvolgevano un vasto numero di figure professionali. Le difficoltà riscontrate furono innumerevoli in quanto quasi sempre il budget non era rispettato e il tempo di conclusione del progetto andava oltre la consegna prestabilita. Queste problematiche aprirono le porte ad un periodo definito come Software crisis. Le conferenze e i dibattiti tra programmatori, che si tennero a cavallo tra gli anni 60 e 70, furono molteplici, tutte volte a trovare una soluzione a questi innumerevoli problemi legati allo sviluppo di prodotti software complessi. Da questi dibattiti nacque la necessità di applicare un metodo ingegneristico allo sviluppo software, metodo che sarebbe andato a sostituire il cosiddetto approccio Code and fix, il quale aveva caratterizzato la programmazione fino a quel momento. Nasce così l ingegneria del software ossia la disciplina che si occupa dello studio dei processi produttivi e della definizione di metodi e tecniche utili allo sviluppo del prodotto software. Con l avvento di questo metodo ingegneristico l approccio al prodotto software da parte dei programmatori cambia radicalmente. Allo stesso modo cambia radicalmente anche la visione del software, dato che il prodotto viene gestito in maniera differente durante il suo ciclo di vita (dalla concezione alla manutenzione passando per analisi dei requisiti progettazione e rilascio). Durante ogni fase viene progettata una determinata parte del prodotto software con relativa documentazione. Per quanto concerne lo sviluppo di software complessi, le novità introdotte con l avvento dell ingegneria del software ovviarono a molti problemi in quanto permisero una adeguata e strutturata suddivisione dei lavori tra i programmatori coinvolti nel progetto [1] [2]. 1

8 Capitolo 2 FPA (Function Point Analysis) 2.1 Stima dei costi L introduzione della figura dell ingegnere del software fu fondamentale per risolvere i problemi di sforamento di budget che si ebbero durante lo sviluppo dei primi prodotti software complessi. Fu proprio da tali errori che si comprese la fondamentale importanza legata alla pianificazione dei costi di produzione al fine di valutarne: i vantaggi dell investimento, il numero di progettisti e le future (possibili) applicazioni correttive. A differenza di altre discipline ingegneristiche nelle quali il costo totale del prodotto dipende molto dal costo dei materiali, nel caso del software tutto dipende da una stima del numero di progettisti che occorrono a completare lo sviluppo in un tempo stabilito. Affinché ciò sia possibile, occorre fare un attenta analisi della misura della produttività del personale coinvolto oltre che dell effettiva complessità del prodotto software da sviluppare. Occorre, inoltre, effettuare nuove stime e valutazioni in corso d opera, volte a operare azioni correttive laddove necessarie. La stima di costo preliminare può avvenire attraverso lo studio di precedenti prodotti simili a quello da sviluppare oppure attraverso l utilizzo di apposite metriche basate sull analisi dei requisiti. Le metriche sono uno strumento attraverso il quale l ingegnere valuta gli aspetti di processo, di gestione delle risorse e di prodotto. Tra le metriche software più utilizzate per la stima dei costi di produzione troviamo: la metrica dimensionale basata sul numero di righe di codice (LOC): una metrica molto semplice anche se spesso poco significativa dato che dipende molto dal linguaggio di programmazione utilizzato. Tramite il numero LOC è possibile effettuare stime di produttività rapportando LOC al numero di mesi/uomo 2

9 3 utili alla stesura del codice e stime di qualità rapportando LOC al numero di errori rilevati. È opportuno precisare come attraverso questa metrica non si ha un indicatore della complessità del codice ma solo della sua lunghezza. La metrica basata sui punti funzione (FP): verrà descritta nel prossimo paragrafo e dalla quale sarà possibile avere una buona stima del numero di righe di codice. 2.2 Definizione FP I punti funzione sono una metrica per la stima dei costi di un software. Essa è applicabile durante le fasi di analisi dei requisiti e non necessita della conoscenza della tecnologia che verrà utilizzata in fase di sviluppo; il metodo è stato inventato da Alan Albrecht, a cavallo tra gli anni 70 e 80, il quale sosteneva che era possibile predire le caratteristiche di un software contando gli oggetti che lo compongono. Lo scopo della Function Point Analysis è quello di introdurre una metrica volta allo studio delle funzionalità di un software basandosi sui requisiti dettati dal cliente. Grazie a vari studi è stato possibile quantificare la potenza dei vari linguaggi di programmazione calcolando quante linee di codice occorrono per codificare un singolo punto funzione (ad esempio Java e C++ 6 righe, Assembler 128 righe). Dunque tramite il calcolo di un punto funzione (che cambia in base alla standardizzazione, vedi dopo) è possibile misurare la produttività dei programmatori (FP per unità di tempo), costo del progetto e dimensione in linee di codice. Attualmente sono presenti varie standardizzazioni del metodo, ognuna delle quali utilizza riferimenti diversi per il conteggio ed il peso dei vari elementi che compongono il codice sorgente. Tra le standardizzazioni più importanti ed utilizzate troviamo COSMIC ed IFPUG che verranno trattate dettagliatamente nei prossimi paragrafi. 2.3 Dal calcolo degli FP ad una stima dei costi effettiva Come accennato in precedenza, nell ambito dello sviluppo software il costo è stimato in base al numero di progettisti coinvolti e al tempo che occorre per il completamento del progetto. Dal calcolo degli FP non si ha una quantificazione precisa riguardo al costo, ragion per cui una volta calcolato il valore FP (indipendentemente dallo standard utilizzato) è possibile effettuare una stima dei costi misurata in mesi-uomo (people-month-pm) attraverso il modello matematico COCOMO II (Costructive Cost Model) in cui: PM=A*SIZE B M 3

10 4 A è una costante in genere uguale a 2.94; SIZE è il numero di linee di codice stimato attraverso FP; B è una costante indicativa dello sforzo richiesto; M insieme di moltiplicatori legati alle caratteristiche del progetto. 4

11 Capitolo 3 IFPUG International Function Point Users Group (IFPUG) è un organizzazione no-profit statunitense fondata nel Il metodo di calcolo dei function point fornito da IFPUG è stato standardizzato dall ISO nel 2009 (standard 20296:2009) [3][4]. Il metodo è illustrato in questo capitolo. 3.1 Il metodo Tipo di conteggio L analisi funzionale con il metodo dei function point può essere utilizzata per: a) Development project: misura le funzionalità che verranno fornite all utente alla prima istallazione del sistema. b) Manutenzione evolutiva: misura le funzionalità che verranno fornite all utente in seguito all aggiunta di nuove funzioni oppure alla cancellazione/modifica di vecchie. È applicabile su software pre esistenti. c) Conteggio applicativo: misura un applicazione già istallata Confine applicativo Il confine applicativo indica la divisione che deve essere posta tra il prodotto software da misurare ed altre applicazioni e tra il prodotto e l utente finale, per far ciò occorre guardare il sistema dal punto di vista dell utente

12 6 Nel metodo IFPUG vi sono delle regole specifiche le quali affermano che ogni considerazione sul confine applicativo si focalizza sull ambito di interesse specificato nei requisiti e non basandosi su considerazioni tecnologiche o su altri aspetti che potrebbero risultare non comprensibili all utente finale Conteggio UFP Gli Unadjusted Function Point (UFP) sono dei prototipi di punti funzione conteggiati solo sulla base dei componenti richiesti dall utente. Questi ultimi vengono divisi in dati e transazioni. I dati sono, a loro volta, divisi in: a) Internal Logical File (ILF): insiemi logici di dati gestiti all interno del sistema come ad esempio tabelle di database. b) External Interface File (EIF): aggregati di dati scambiati con altre applicazioni. È facile affermare come un EIF per un applicazione risulterà un ILF per un altra. Le transazioni si dividono in: 1) External Input (EI): numero di elementi che l utente deve fornire al sistema andando a modificare un ILF. 2) External Output (EO): numero di output che il sistema restituisce all utente come risultato delle sue elaborazioni come ad esempio documenti di vario tipo con calcoli. 3) External Inquiry (EQ): numero di interrogazioni che comportano una risposta immediata del sistema. Una volta effettuato il conteggio delle suddette componenti, indicando con V1, V2, V3, V4, V5 il numero rispettivamenti di ILF, EIF, EI, EO ed EQ e con P1, P2, P3, P4, P5 i rispettivi pesi assegnati secondo la tabella in figura 3.1 [5]. Figura 3.1: Tabella calcolo UFP 6

13 Fattori correttivi Il valore di UFP può essere raffinato attraverso 14 fattori correttivi quali: comunicazione dati, distribuzione elaborazione, prestazioni, utilizzo intensivo, configurazione, frequenza di transazioni, inserimento dati interattivo, efficienze per l utente finale, aggiornamento interattivo, complessità elaborativa, riusabilità, facilità installazione, facilità gestione, molteplicità di siti e facilità di modifica. Ad ogni fattore va corrisposto un valore da 0 a 5, dove 0 sta per ininfluente e 5 per incidenza essenziale. Ad esempio, per il fattore correttivo riusabilità il valore 0 corrisponde a codice non riusabile, il valore 5 corrisponde ad applicazione generalizzata e riusabile per diversi contesti Calcolo FP Calcolato UFP e valutati i rispettivi fattori correttivi, è possibile calcolare il valore finale del conteggio FP: F P = UF P ( N k=1 F k) dove N=14 e Fk è il valore attribuito al k-esimo fattore correttivo. 3.2 SNAP SNAP (Software Non-Functional Assessment Process) è un modello ideato dal gruppo IFPUG complementare al metodo della function point analysis. Il modello SNAP si occupa della misura dei requisiti non funzionali (manutenibilità, riusabilità, uso delle risorse, tempi di risposta ecc...). È composto da 4 categorie e 14 sotto-categorie con cui viene misurato un requisito non funzionale. La misura di tale requisito sarà data dalla somma dei valori di ogni sottocategoria (la dimensione è attribuita secondo un valore di complessità). La dimensione finale della parte non-funzionale di un software è data dalla somma delle dimensioni dei singoli requisiti non funzionali. La tecnica SNAP rappresenta un grande vantaggio del gruppo IFPUG rispetto alla concorrenza in quanto essa è complementare al metodo dell FPA [6]. 7

14 8 3.3 Esempio di utilizzo Testo esempio Calcolare il numero degli UFP per un applicazione per il conteggio degli stipendi. L applicazione legge un file di impiegati e un file di informazioni riguardanti il mese corrente e stampa gli assegni per i dipendenti. Il file di impiegati è fornito dall utente, mentre quello del mese è gestito direttamente dall applicazione. I parametri per il calcolo dello stipendio sono memorizzati in un database esterno all applicazione. L applicazione è in grado di gestire comando interattivo in seguito alla richiesta di stampa di un assegno per una singola persona [5] Tipo di conteggio e confine applicativo Dal testo si evince come il tipo di conteggio sarà di tipo conteggio applicativo in quanto l obbiettivo è misurare la dimensione delle funzionalità di un prodotto software già esistente. Il confine applicativo è abbastanza esplicito all interno del testo Calcolo UFP Dal testo si possono identificare le seguenti funzioni dati: ILF: tabella impiegati; EIF: database dei parametri; e le seguenti funzioni transazionali: 1. EI: inserimento file impiegati; 2. EO: stampa assegni dipendenti; 3. EQ: comando interattivo. Supponendo che il peso degli ILF, ILF e degli EQ sia semplice, il peso degli EI sia medio e il peso degli EO sia complesso si può procedere al conteggio finale: UFP = 3*1 + 4*1 + 4*2 + 15*1 + 5*1 = 35 8

15 Calcolo FP Fattori correttivi (i valori sono attribuiti secondo le direttive riportate dal manuale [3]): comunicazione dati = 1; distrubuzione elaborazione = 3; prestazioni = 0; utilizzo intensivo configurazione = 1; frequenza delle transazioni = 0; inserimento dati interattivo = 5; efficienza per l utente finale = 1; aggiornamento interattivo = 3; complessità elaborativa = 1; riusabilità = 0; facilità installazione = 0; facilità gestione = 0; molteplicità di siti = 0; facilità di modifica = 2. La somma dei valori fattori correttivi è: =17 Ora è possibile calcolare il valore FP come: FP = 35*( *17) = Numero di linee di codice stimato Supponendo di voler sviluppare l applicazione in Java si avrà un numero di linee di codice pari a: FP*6 = 28.7*6 = (circa)

16 Capitolo 4 COSMIC Il metodo nasce dall omonima organizzazione no-profit canadese COSMIC (COmmon Software Measurement International Consortium 1 ), con l intento di sopperire alle carenze del metodo FPA in ambito di sistemi real-time, ma si è dimostrato successivamente un ottimo standard di misurazione per ogni tipo di progetto software. È divenuto standard internazionale ISO nel Il metodo Il metodo COSMIC [7] è illustrato in figura 4.1 Figura 4.1: Il metodo COSMIC Lo scopo ultimo è quello di ricavare un valore numerico indicativo della dimensione delle funzionalità del software mediante l applicazione di modelli e procedure ai Requisiti Utente Funzionali (FUR)

17 Strategia di misurazione Prima di procedere con la misurazione occorre che siano chiari: Lo scopo della misurazione: occorre identificare l ambito di misurazione al fine di comprendere quali sono i manufatti che occorrono, il momento del ciclo di vita del software in cui occorre effettuare la misurazione e l accuratezza con il quale dovrà essere effettuata. L ambito del software da misurare: una volta individuato lo scopo, sarà necessario identificare l insieme dei requisiti funzionali che verranno presi in considerazione durante la misurazione. È durante questa fase che il misuratore deve riconoscere i vari strati che compongono l architettura software in questione. Uno strato è una partizione risultante dalla divisione funzionale di un architettura, essi sono organizzati in maniera gerarchica. Sempre in questa fase occorre distinguere le componenti alla pari, esse sono definite dal manuale del metodo COSMIC come Una partizione risultante dalla divisione funzionale dei FUR di una porzione di software contenuta in uno strato in un insieme mutualmente cooperante tale che ciascuna partizione esegue una specifica porzione dei FUR di tale porzione di software [7]. Utenti funzionali di ogni porzione del software: per identificare gli utenti funzionali occorre esaminare i flussi di dati stabiliti dai FUR, gli utenti saranno o i mittenti o i destinatari di tali dati. Livello di granularità misurazione: occorre indicare il livello di dettaglio con cui verranno descritti i requisiti funzionali. L immagine 4.2 (riprodotta dal riferimento [7]) è introdotta al fine di chiarire il concetto di strato introdotto durante l individuazione dell ambito del software. Figura 4.2: Esempio divisione in strati 11

18 Fase di Mappatura La fase di mappatura si divide in 3 sottofasi: 1. Identificazione dei processi funzionali: dove un processo funzionale è una componente elementare di un insieme di Requisiti Utente Funzionali ed è innescato da un movimento di dati (un Entry) proveniente da un utente che ha percepito un evento di innesco. Il concetto è riassunto in figura 4.3 [7]. Figura 4.3: Processo funzionale ed evento di innesco 2. Identificare i gruppi dati: occorre riconoscere gli oggetti di interesse ed i loro attributi per riconoscere un gruppo di dati (un insieme distinto di attributi dei dati che descrivono gli oggetti di interesse). Un gruppo di dati può assumere molte forme diverse quali ad esempio un file, una tabella, una struttura dati allocata dinamicamente o anche un report stampato. 3. Identificare gli attributi dei dati: dove un attributo dei dati è la più piccola porzione di informazione contenente un significato dal punto di vista dei FUR. 12

19 Fase di misurazione Le attività nella terza e ultima fase del metodo COSMIC sono illustrate in figura 4.4 [7]. Figura 4.4: Fase di misurazione Quest ultima fase è divisa in tre sottofasi: 1. Identificare tipi di dati: consiste nell identificare i movimenti di dati di Read, Write, Entry ed Exit indicandoli rispettivamente con R, W, E e X all interno di una tabella come quella in figura 4.5 [7] ed indicando sulla destra il totale di occorrenze per ogni tipo di movimento dati. 2. Applicare la funzione di misurazione: ad ogni movimento dati è assegnato un CFP (COSMIC function point) così che la dimensione di un processo funzionale non è altro che la somma aritmetica dei movimenti dati che lo compongono. 3. Aggregazione: la dimensione delle funzionalità di una porzione software si ottiene sommando le dimensioni di ogni singolo processo funzionale che la compone a patto che essi siano stati calcolati tutti allo stesso livello di granularità. 13

20 14 Figura 4.5: Tabella usata per la misurazione 4.2 Esempio di utilizzo: ACME Car Hire Strategia di misurazione Allo scopo di illustrare il calcolo dei function point con il metodo COSMIC, si consideri un ipotetico sistema di prenotazione auto per la ditta ACME ( ACME Car Hire System ). Le figure 4.6, 4.7 e 4.8 [8] mostrano i prototipi delle interfacce utente del sistema, allo scopo di illustrarne le funzionalità che si desidera esso offra all utente. 14

21 15 Figura 4.6: Interfacce utente del sistema d esempio ACME Car Hire parte 1 Figura 4.7: Interfacce utente del sistema d esempio ACME Car Hire parte 2 Figura 4.8: Interfacce utente del sistema d esempio ACME Car Hire parte 3 15

22 Fase di mappatura Dallo studio delle schermate è possibile risalire ai seguenti eventi innesco ed ai corrispettivi processi funzionali innescati: 1. Evento innesco: verifica della presenza del nome del cliente nel sistema. Processo funzionale: lista clienti. 2. Evento innesco: mostrare i dati per l abilitazione dell utente alla selezione di un cliente. Processo funzionale: sommario clienti. 3. Evento innesco: vista dei dettagli del cliente selezionato. Processo funzionale: richiesta di vista dettagli clienti. 4. Evento innesco: mostrare i dettagli del cliente prima della modifica. Processo funzionale: vista cliente pre-modifica. 5. Evento innesco: modifica dati cliente selezionato. Processo funzionale: modifica dettagli cliente. 6. Evento innesco: mostrare anteprima di stampa della fattura. Processo funzionale: anteprima fattura. 7. Evento innesco: inserimento dati nuovo cliente. Processo funzionale: creazione nuovo cliente. 8. Evento innesco: mostrare prenotazioni. Processo funzionale: anteprima dettagli prenotazioni. Esaminando i suddetti processi funzionali sarà poi possibile riconoscere i seguenti gruppi di dati: Nome cliente; Dettagli cliente; Seleziona dati cliente; ID cliente; Dati sommario cliente; Dati fattura cliente; Dettagli prenotazioni; 16

23 17 Prenotazione corrente; Dati fatture prenotazioni; Messaggi di errore Fase di mappatura Inserendo processi funzionali e gruppi di dati in una tabella, si procederà ora a riconoscere i movimenti di dati per ogni gruppo; ricordando che ad ogni movimento dati corrisponde un CFP, si giunge al risultato in figura 4.9 [8]: Figura 4.9: Tabella calcolo CFP 17

24 Capitolo 5 Analogie e differenze standard IFPUG e COSMIC 5.1 Analogie Sia il metodo IFPUG che il metodo COSMIC sono utilizzati nell ambito della Function Point Analysis (FPA) allo scopo di ottenere una realistica stima della dimensione delle funzionalità di un prodotto software e, di conseguenza, una stima dei costi che occorrerebbero per la produzione. Sia IFPUG che COSMIC sono divenuti standard ISO seppur ad alcuni anni di distanza. Entrambi gli standard vedono i processi elementari come unità funzionali da misurare. Ogni movimento di dati in entrata o in uscita contribuisce alla misura funzionale. Ogni accesso a dati persistenti contribuisce alla misura funzionale. Nessuno dei due metodi misura algoritmi, calcoli e processi logici. Entrambi i metodi sono esplicitati da rispettivi manuali di utilizzo scaricabili dai siti ufficiali dei gruppi IFPUG e COSMIC. 18

25 Differenze Il metodo COSMIC è molto utile per l analisi della dimensione delle funzionalità di un software real-time infatti inizialmente nacque per estendere l analisi IFPUG per tali tipi di software. Il metodo COSMIC ha esplicite regole per i software multistrato a differenza del metodo IFPUG. Il metodo IFPUG si basa sulla vista di un utente esterno, mentre il metodo COSMIC utilizza diversi punti di vista [9]. Il metodo IFPUG presenta regole diverse per ogni tipo di processo mentre il metodo COSMIC presenta le medesime per ogni processo [9]. Il metodo COSMIC è dimostrato essere più efficace per la stima di applicazioni web [10]. Determinati studi hanno dimostrato come il metodo COSMIC è poco adatto a progetti piccoli. Il metodo IFPUG con l ausilio della tecnica SNAP permette un accurata analisi dei requisiti non funzionali, cosa che il metodo COSMIC non permette. Come si evince dal punto precedente il metodo IFPUG permette una manutenzione più efficace ed efficiente del metodo COSMIC. 19

26 Esempio di confronto tra risultati Riprendendo l esempio riportato nel paragrafo 4.2, verrà applicato ad esso il metodo IFPUG per poi confrontare i risultati con quelli ottenuti dall applicazione del metodo COSMIC. Applicando un conteggio applicativo si avranno i seguenti risultati: ILF: lista clienti, dettagli cliente, tabella prenotazioni; EI: aggiornamento lista clienti e dettagli cliente; EO: messaggio errore ed anteprima stampa fattura; EQ: verifica della presenza del nome del cliente nel sistema. Da cui: NILF = 3, NEI = 2, NEO = 2, NEQ = 1. Ai vari dati e transazioni è assegnato il seguente peso: NILF = MEDIO = 4; NEI = MEDIO = 4; NEO = SEMPLICE = 7; NEQ = SEMPLICE = 5. Procedendo al calcolo di UFP: UFP = 4*3 + 4*2 + 7*2 + 5*1 = 39 Per procedere al calcolo degli FP occorre applicare i fattori correttivi (i valori sono attribuiti secondo le direttive riportate dal manuale [3]): 1. comunicazione dati = 0; 2. distrubuzione elaborazione = 2; 3. prestazioni = 0; 4. utilizzo intensivo configurazione = 0; 5. frequenza delle transazioni = 0; 6. inserimento dati interattivo = 5; 7. efficienza per l utente finale = 4; 20

27 21 8. aggiornamento interattivo = 1; 9. complessità elaborativa = 2; 10. riusabilità = 0; 11. facilità installazione = 0; 12. facilità gestione = 2; 13. molteplicità di siti = 0; 14. facilità di modifica = 3. La somma dei valori dei fattori correttivi è 19. É possibile calcolare gli FP come: FP = 39*( *19) = Dunque la misurazione con il metodo IFPUG ha portato ad un risultato di FP, la misurazione COSMIC aveva portato ad un risultato di 33 CFP. I risultati delle due misurazioni differiscono dello 0.73% circa. 5.4 Conversione tra i risultati dei due metodi Dato che ogni metodo comporta i suoi vantaggi ed i suoi svantaggi molto spesso determinate aziende sono state costrette ad abbandonare uno dei due metodi a favore dell altro; ciò però comporta sempre un costo molto elevato e spesso non sostenibile. Negli ultimi anni si è cercato di studiare una relazione matematica tra i risultati dei metodi IFPUG e COSMIC al fine di convertire i risultati senza dover effettuare una nuova misurazione [11] [12]. 21

28 Capitolo 6 Conclusioni 6.1 Il metodo migliore? Nei precedenti capitoli sono stati trattati gli standard IFPUG e COSMIC nell ambito della stima della dimensione delle funzionalità di un software. Dopo una breve introduzione è stato trattato nel dettaglio il metodo IFPUG e successivamente il metodo COSMIC con relativi esempi. Dopo aver trattato i vantaggi e gli svantaggi di entrambi viene spontaneo chiedersi dove tende l ago della bilancia ossia Quale metodo è più conveniente? La risposta a questa domanda, come per gran parte dei quesiti ingegneristici, è dipende. Dipende da: Tipo di software (MIS, Real time ecc...); Dimensione del software (per progetti piccoli non conviene usare COSMIC); Quantità di vincoli (dunque di requisiti non funzionali); Stratificazione del software. Inoltre come definito nel paragrafo 5.3 la ricerca nei metodi di conversione avanza giorno dopo giorno. Ciò permetterà di usare in maniera equivalente uno dei due metodi (in caso sia possibile la conversione [12]). 22

29 Appendice A Approfondimenti A.1 Perchè il metodo COSMIC è indicato per i sistemi real-time Nei capitoli precedenti è stato affermato come il metodo di misurazione COSMIC è più indicato per la misurazione di software real-time. All interno di questo paragrafo vedremo alcune delle motivazioni per cui è valida tale affermazione [13]. Le applicazioni real-time presentano dei processi multi-scopo i quali non risultano misurabili attraverso il metodo IFPUG poichè è possibile riconoscere il tipo di dato (EI, EO, EQ) solo conoscendo lo scopo preciso di tale dato (main purpose). I sistemi real-time sono in genere composti da vari strati, alcuni dei quali sono al di fuori del punti di vista dell utente (come ad esempio il sistema operativo); ragion per cui le apposite regole del metodo COSMIC risultano molto utili a tali misurazioni. La presenza di transazioni con molteplici dispositivi sarebbe valutata con un unico complesso EI in caso di misurazione IFPUG, mentre con una misurazione COSMIC si tengono in considerazione tutti i movimenti di dati che avvengono. 23

30 24 A.2 Altri standard ISO Oltre al già citati IFPUG e COSMIC nel corso degli anni sono stati standardizzati altri metodi per la misurazione della dimensione delle funzionalità del software attraverso la function point analysis e sono i seguenti [14]: FiSMA: ISO/IEC 29881: ; Mark-II: ISO/IEC 20968: ; NESMA: ISO/IEC 24570: II F P A

31 Bibliografia [1] C. Ghezzi, M. Jazayeri, D. Mandrioli. Ingegneria del Software, fondamenti e principi. [2] Ingegneria del Software.. URL del_software. [3] T. Barbieri. Function Point Analysis (IFPUG 4.1.1). September URL http: //users.libero.it/thimoty/function_point_411.pdf. [4] Sistemi Informativi, Function point analysis. URL 0ahUKEwjun-qprrTZAhVMbhQKHfqxDoYQFggvMAA&url=http%3A%2F%2Fstudenti. di3.units.it%2fsistemi%2520informativi%2520i%2fingegneria% 2520del%2520Software%2520-%2520Function%2520Point.pdf&usg= AOvVaw30H22nXRMrb9HpLjU3cw3s. [5] S.Russo. Slide 23-stima dei costi. URL /professor/ e4f f e / materiale_didattico/ [6] About SNAP. URL it. [7] Manuale di misurazione (Guida Implementativa COSMIC a ISO/IEC 19761:2003). September URL overview/. [8] ACME car hire case study. April URL publications/acme-car-hire-case-study-v1-0/. [9] Cosmic Versus IFPUG, similarities and differences. September URL COSMIC-Versus-IFPUG-Similarities-and-Differences.pdf. 25

32 Bibliography 26 [10] S. Di Martino, F. Ferrucci, C. Gravino, F. Sarro. Web Effort Estimation: Function Point Analysis vs COSMIC. Information and software tecnologhy, pages , URL [11] F. Ferrucci, C. Gravino, F. Sarro. A case study on the conversion of Function Points into COSMIC. Software Engineering and Advanced Applications (SEAA), URL CameraReady.pdf. [12] J. J. Cuadrado Gallego, F. Machado Piriz, J. Aroba Paez. On the conversion between IFPUG and COSMIC software functional size units: A theoretical and empirical study. Journal of System and Software, May URL sciencedirect.com/science/article/pii/s [13] L. Lavazza, S. Morasca. Measuring the Functional Size of Real-Time and Embedded Software: a Comparison of Function Point Analysis and COSMIC. The Eighth International Conference on Software Engineering Advances, [14] Function Point.. URL 26

ITIS A. Volta Flavia Lollis pag. 1

ITIS A. Volta Flavia Lollis pag. 1 Il Function Point è una delle metriche più antiche e tuttora diffuse nell ambito della valutazione di progetti software. Ciò che lo rende insostituibile e superiore ad altri metodi può essere riassunto

Dettagli

18/05/2014. Università di Ferrara Corso di Ingegneria del Software AA 2013/2014

18/05/2014. Università di Ferrara Corso di Ingegneria del Software AA 2013/2014 Università di Ferrara Corso di Ingegneria del Software AA 2013/2014 La misura come strumento scientifico Misure, metriche e indicatori Metriche del software Metriche per software orientato agli oggetti

Dettagli

Sistemi informativi D B M G. Introduzione. Introduzione alle basi di dati D B M G 2. Elena Baralis 2007 Politecnico di Torino 1

Sistemi informativi D B M G. Introduzione. Introduzione alle basi di dati D B M G 2. Elena Baralis 2007 Politecnico di Torino 1 Sistemi informativi D B M G Introduzione D B M G 2 2007 Politecnico di Torino 1 Introduzione D B M G Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi

Dettagli

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1 Introduzione Sistemi informativi 2 Introduzione Base di dati Modello dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS 4 6 2007 Politecnico di Torino 1 7 8 9 10 Sistema informatico Nei sistemi informatici,

Dettagli

IS Corso di Ingegneria del Software 1

IS Corso di Ingegneria del Software 1 Contenuti Misurazione del software 2001-4 Corso di Ingegneria del Software V. Ambriola, G.A. Cignoni, C. Montangero, L. Semini Con aggiornamenti di: T. Vardanega La misura come strumento scientifico Misure,

Dettagli

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1 Introduzione Basi di dati DB M BG2 Introduzione Base di dati Modello dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS DB M BG4 D B M G6 2007 Politecnico di Torino 1 D B M G7 D B M G8 D B M G9 D B

Dettagli

Costi. Studio di fattibilità Progetto di massima. 5. Progetto di massima. M.Rumor. Studio di fattibilità. Studio di fattibilità Progetto di massima

Costi. Studio di fattibilità Progetto di massima. 5. Progetto di massima. M.Rumor. Studio di fattibilità. Studio di fattibilità Progetto di massima Studio di fattibilità Progetto di massima 5. Progetto di massima 5.1 Obiettivi Costi 5.2 Funzioni del sistema 5.3 Basi di dati 5.4 Componenti tecnologiche 5.5 Linee guida M.Rumor Studio di fattibilità

Dettagli

Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS

Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS 2007 Politecnico di Torino 1 Basi di dati DB M B G Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS DB M B G 2 2007 Politecnico

Dettagli

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1 2007 Politecnico di Torino 1 Basi di dati Gestione delle informazioni Base di dati Modello dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS DB M BG2 Gestione delle informazioni Le informazioni sono

Dettagli

4. Qualità. un concetto molte sfaccettature. Andrea Polini. Ingegneria del Software Corso di Laurea in Informatica

4. Qualità. un concetto molte sfaccettature. Andrea Polini. Ingegneria del Software Corso di Laurea in Informatica 4. Qualità un concetto molte sfaccettature Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 4. Qualità 1 / 23 Sommario 1 Tipiche Qualità del Processo (Ingegneria

Dettagli

COCOMO II. Note basate su COCOMO II Model Definition Manual - Center for Software Engineering USC

COCOMO II. Note basate su COCOMO II Model Definition Manual - Center for Software Engineering USC COCOMO II Note basate su COCOMO II Model Definition Manual - Center for Software Engineering USC COCOMO II (slide), Annalisa Fasolino, Univ, Napoli Federico II e altre fonti. Vedere anche lo strumento:

Dettagli

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo. Corso integrato di Sistemi di Elaborazione Modulo I Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Basi di dati: introduzione 2 Introduzione Gestione delle informazioni Basi di dati / DBMS Modello dei

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Introduzione e Concetti Fondamentali Porfirio Tramontana, 2009 Corso di Ingegneria del Software Slide 1 Riferimenti Ian Sommerville, Ingegneria del Software, Capitolo 1 Porfirio

Dettagli

Esercitazione sul metodo dei FP. 05fpex1.1

Esercitazione sul metodo dei FP. 05fpex1.1 Esercitazione sul metodo dei FP 05fpex1.1 Sommario specifiche del problema calcolo FP non pesati calcolo FP pesati 05fpex1.2 Specifiche dati 1 Una gestione delle vendite prevede che per ciascun cliente

Dettagli

Sommario Obiettivo della programmazione e ciclo di sviluppo di programmi. Programmi. Ciclo di sviluppo di programmi. Obiettivo

Sommario Obiettivo della programmazione e ciclo di sviluppo di programmi. Programmi. Ciclo di sviluppo di programmi. Obiettivo Sommario Obiettivo della programmazione e ciclo di sviluppo di programmi Istruzioni variabili e tipi Sottoprogrammi Strutture di controllo Ricorsione 1 2 Obiettivo Ciclo di sviluppo di programmi Risoluzione

Dettagli

STIMA DEI COSTI DI SVILUPPO DEL SOFTWARE

STIMA DEI COSTI DI SVILUPPO DEL SOFTWARE STIMA DEI COSTI DI SVILUPPO DEL SOFTWARE Classificazione dei costi per tipo di risorsa Hardware Mainframe Sistemi intermedi Personal computer Altre componenti Cablaggi Classificazione dei costi per tipo

Dettagli

Un Sistema Basato sulla Conoscenza per il Calcolo dei Function Point. Extended Abstract

Un Sistema Basato sulla Conoscenza per il Calcolo dei Function Point. Extended Abstract Un Sistema Basato sulla Conoscenza per il Calcolo dei Function Point Fausto Gramantieri 1, Evelina Lamma 1, Paola Mello 2, Fabrizio Riguzzi 1 1 EIS - Universita` di Bologna Viale Risorgimento, 2 40136

Dettagli

Verifica parte IV. Rif. Ghezzi et al

Verifica parte IV. Rif. Ghezzi et al Verifica parte IV Rif. Ghezzi et al. 6.8-6.9 Debugging Individuazione e correzione degli errori Conseguente a un fallimento Attività non banale: Quale errore ha causato il fallimento? Come correggere l

Dettagli

FPManager. Conteggio e stima Function Point. for Enterprise

FPManager. Conteggio e stima Function Point. for Enterprise Conteggio e stima Function Point for Enterprise Overview I Function Point sono ormai la metrica di riferimento per la misurazione del software, ampiamente utilizzata in diverse realtà italiane e diffusa

Dettagli

Ministero dell Istruzione, dell Università e della Ricerca. Servizio di collaudo

Ministero dell Istruzione, dell Università e della Ricerca. Servizio di collaudo Ministero dell Istruzione, dell Università e della Ricerca Servizio di collaudo Indice dei contenuti 1. SCHEDA SERVIZIO COLLAUDO...3 1.1. TIPOLOGIA... 3 1.2. SPECIFICHE DEL SERVIZIO... 3 1.2.1 Descrizione

Dettagli

Docenti Marco Cirrito, Pier Luigi Girelli. Disciplina. OBIETTIVI MINIMI (necessari al passaggio alla classe successiva)

Docenti Marco Cirrito, Pier Luigi Girelli. Disciplina. OBIETTIVI MINIMI (necessari al passaggio alla classe successiva) Anno Scolastico 2018/2019 PROGRAMMA DIDATTICO CONSUNTIVO CLASSE 1ME Docenti Marco Cirrito, Pier Luigi Girelli Disciplina Tecnologie Informatiche OBIETTIVI MINIMI (necessari al passaggio alla classe successiva)

Dettagli

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE TERZA

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE TERZA PROGRAMMAZIONE DISCIPLINARE PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE TERZA 1. Competenze: le specifiche competenze di base disciplinari previste dalla

Dettagli

Python Start. Docente: M. Chiara Debernardi. Lingua del corso. Descrizione del corso e obiettivi. Destinatari. Italiano

Python Start. Docente: M. Chiara Debernardi. Lingua del corso. Descrizione del corso e obiettivi. Destinatari. Italiano Python Start Docente: M. Chiara Debernardi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso mira a far conoscere i fondamenti di Python i cui ambiti di utilizzo sono molteplici: intelligenza

Dettagli

Rappresentazione degli algoritmi

Rappresentazione degli algoritmi Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti

Dettagli

2. Finalità generali previste dalle indicazioni nazionali

2. Finalità generali previste dalle indicazioni nazionali 2. Finalità generali previste dalle indicazioni nazionali Le Linee Guida ministeriali per i curricola del Secondo biennio dell Istituto Tecnico Tecnologico, Indirizzo Informatica e Telecomunicazioni -

Dettagli

prot: GU del: 08/11/2018 Dipartimento Trasformazione Digitale

prot: GU del: 08/11/2018 Dipartimento Trasformazione Digitale prot: GU20180015767 del: 08/11/2018 Dipartimento Trasformazione Digitale Consultazione preliminare di mercato, ai sensi dell art. 66 comma 1 del D. Lgs 50/2016, finalizzata all acquisto della licenza d

Dettagli

TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE

TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica Tecnologie dell informazione e della comunicazione per le aziende CAPITOLO 1: Sistemi informativi,

Dettagli

Lo sviluppo del progetto informatico

Lo sviluppo del progetto informatico Lo sviluppo del progetto informatico Il progetto Il controllo di qualità Le qualità per i prodotti di software Le figure professionali La metodologia La conoscenza degli obiettivi L analisi La progettazione

Dettagli

INTRODUZIONE ALLE BASI DI DATI

INTRODUZIONE ALLE BASI DI DATI INTRODUZIONE ALLE BASI DI DATI I Data Base Introduzione alle basi di dati Uno dei principali compiti dei sistemi informatici è l'attività di raccolta, organizzazione e conservazione dei dati. Tali sistemi

Dettagli

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE UNITA CAPITALIZZABILI PER LA FIGURA PROFESSIONALE TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE 73 74 ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE UNITÀ CAPITALIZZABILE

Dettagli

IL PROCESSO di PROGETTAZIONE

IL PROCESSO di PROGETTAZIONE IL PROCESSO di PROGETTAZIONE In questa lezione vedremo: Ruolo della modellazione nella comunicazione tipi di modello nel progetto I modelli del prodotto Interpretazione delle informazioni del progetto

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Cos è l informatica? q È la scienza che si occupa della rappresentazione dell informazione e della sua elaborazione e gestione " Si occupa dell informazione, che fa parte di

Dettagli

2. Modellazione dei casi d uso

2. Modellazione dei casi d uso 2. Modellazione dei casi d uso Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica (Laboratorio di Ingegneria del Software) 2. Modellazione dei casi d uso 1 / 20 Sommario

Dettagli

Corso di Analisi e Contabilità dei Costi

Corso di Analisi e Contabilità dei Costi Corso di Analisi e Contabilità dei Costi Paola Demartini I costi e il sistema di controllo Perché analizzare i costi aziendali? La CONOSCENZA DEI COSTI (formazione, composizione, comportamento) utile EFFETTUARE

Dettagli

Introduzione. Sommario. Il software. Definizione di Ingegneria del software

Introduzione. Sommario. Il software. Definizione di Ingegneria del software Sommario Introduzione Leggere Cap. 1 Ghezzi et al. Definizione Nascita dell ingegneria del software Ruolo Relazione con altre discipline Introduzione 2 Il software Il software e` definito come: i programmi,

Dettagli

Realizzazione di uno strumento software per la compilazione assistita di piani di qualità (richiesta ed offerta) per un Servizio Web

Realizzazione di uno strumento software per la compilazione assistita di piani di qualità (richiesta ed offerta) per un Servizio Web tesi di laurea Realizzazione di uno strumento software per la compilazione assistita di piani Anno Accademico 2006/07 relatore Ch.mo prof. Tramontana Porfirio candidato Michele Schiano di Zenise Matr.

Dettagli

Disciplina: INFORMATICA

Disciplina: INFORMATICA Indirizzo AFM Articolazione SIA Anno scolastico 2017/2018 Classe 3S Docenti Vito Colafemmina - Rosangela Pazienza Disciplina: INFORMATICA Con riferimento alle linee guida degli Istituti Tecnici Settore

Dettagli

Corso di Ingegneria del Software. Metriche Parte I

Corso di Ingegneria del Software. Metriche Parte I Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Concetti di base Metriche Sommario 1. Concetti di base 2. METRICHE DIMENSIONALI 3. 4. METRICHE STRUTTURALI 5. Bibliografia

Dettagli

Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI DI LAVORO INTEGRATO IN OUTLOOK 2010

Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI DI LAVORO INTEGRATO IN OUTLOOK 2010 UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA Corso di laurea in Ingegneria Informatica Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI

Dettagli

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018 ISTITUTO ISTRUZIONE SUPERIORE EINAUDI - SCARPA TECNOLOGICO - ECONOMICO PROFESSIONALE Via J. Sansovino, 6-31044 MONTEBELLUNA (TV) 0423 23587 - Fax 0423 602717 web: www.iiseinaudiscarpa.gov.itemail: info@iiseinaudiscarpa.gov.it

Dettagli

Introduzione alle Basi di Dati

Introduzione alle Basi di Dati Introduzione alle Basi di Dati Angelo Chianese, Vincenzo Moscato, Antonio Picariello, Lucio Sansone Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 1 Appunti dalle lezioni SQL

Dettagli

SISTEMI INFORMATIVI DIREZIONALI BUSINESS INTELLIGENCE

SISTEMI INFORMATIVI DIREZIONALI BUSINESS INTELLIGENCE SISTEMI INFORMATIVI DIREZIONALI BUSINESS INTELLIGENCE Punti chiave Cosa sono i sistemi informativi direzionali (SID)? Che differenza con i sistemi di supporto alle attività operative? Qual è il punto di

Dettagli

Simulazione di valorizzazione comparata di portafogli iniziative misurati in FP. Pierfranco Gennai

Simulazione di valorizzazione comparata di portafogli iniziative misurati in FP. Pierfranco Gennai Simulazione di valorizzazione comparata di portafogli iniziative misurati in FP Pierfranco Gennai Sommario Obiettivi dello studio Cos è un Portafoglio Software misurato in FP Cos è l Errore di Portafoglio

Dettagli

APPENDICE 4 AL CAPITOLATO TECNICO

APPENDICE 4 AL CAPITOLATO TECNICO APPENDICE 4 AL CAPITOLATO TECNICO Descrizione dei profili professionali INDICE 1 PROFILI PROFESSIONALI RICHIESTI 3 1.1 CAPO PROGETTO 3 1.2 ANALISTA FUNZIONALE 4 1.3 ANALISTA PROGRAMMATORE 5 1.4 PROGRAMMATORE

Dettagli

L indice di vulnerabilità sociale e materiale

L indice di vulnerabilità sociale e materiale L indice di vulnerabilità sociale e materiale L indice di vulnerabilità sociale e materiale è un indicatore costruito con l obiettivo di fornire una misura sintetica del livello di vulnerabilità sociale

Dettagli

Nuovi scenari per la matematica Salerno 29/08/2012.

Nuovi scenari per la matematica Salerno 29/08/2012. Nuovi scenari per la matematica Salerno 29/08/2012 rprosp@alice.it, albertaschettino@gmail.com 2 Due livelli di azione Medie Disuguaglianza Concetto centrale della statistica Confronto media aritmetica

Dettagli

Sistemi Informativi I Function Point Analisys

Sistemi Informativi I Function Point Analisys 7. Stima dei costi. Nelle diverse fasi del progetto di sviluppo del software si possono individuare quattro principali voci di costo, corrispondenti alle fasi del ciclo posteriori allo studio di fattibilità:

Dettagli

Sistema di misurazione e valutazione della performance individuale del personale dell Ente Foreste della Sardegna Manuali operativi

Sistema di misurazione e valutazione della performance individuale del personale dell Ente Foreste della Sardegna Manuali operativi Sistema di misurazione e valutazione della performance individuale del personale dell Ente Foreste della Sardegna (Approvati con Delibera del Consiglio di Amministrazione n. 145 del 11.09.2014, sulla base

Dettagli

Sistemi informativi secondo prospettive combinate

Sistemi informativi secondo prospettive combinate Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da

Dettagli

CRAMM. Fase 2 Analisi di vulnerabilità, misura del rischio

CRAMM. Fase 2 Analisi di vulnerabilità, misura del rischio CRAMM CRAMM (Computer Risk Analysis and Management Method)è stato sviluppato nel 1985 da CCTA (Central Computer and Telecommunication Agency). Attualmente è alla versione 5.1, adeguata alla ISO 27001.

Dettagli

Salvatore Cuomo Prolusione

Salvatore Cuomo Prolusione Salvatore Cuomo Prolusione 1 Lezione n. Parole chiave: Algoritmo, Esecutore Corso di Laurea: Informatica Insegnamento: Programmazione II, modulo di Laboratorio Email Docente: salvatore.cuomo@unina. it

Dettagli

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi: SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i

Dettagli

Università degli studi di Genova

Università degli studi di Genova Università degli studi di Genova Facoltà di Ingegneria Corso di Laurea in Ingegneria Gestionale Tesi di laurea METODOLOGIE DI INDIVIDUAZIONE DELLA ZONA DELL OTTIMO NELLA SIMULAZIONE DISCRETA E STOCASTICA

Dettagli

Software. Engineering

Software. Engineering Software Metrica: Function Point Engineering Contenuti Misurazione del software Metriche basate sulla funzionalità Punto Funzione (Function Point) Esempio di calcolo di FP Rieferimenti: 1. Roger S. Pressman

Dettagli

Un indagine sull uso dei metodi di stima dei progetti software e delle metriche del software

Un indagine sull uso dei metodi di stima dei progetti software e delle metriche del software Davide Taibi 1 Luigi Lavazza 2,3 Sandro Morasca 1 1 Università degli Studi dell Insubria Dipartimento di Scienze della Cultura, Politiche e dell Informazione Via Valleggio 11 22100 Como 2 Università degli

Dettagli

Introduzione. Contenuti da Cap. 1 Ghezzi et al.

Introduzione. Contenuti da Cap. 1 Ghezzi et al. Introduzione Contenuti da Cap. 1 Ghezzi et al. Sommario l Definizione l Nascita dell ingegneria del software l Ruolo l Relazione con altre discipline 2 Il software l Il software e` definito come: i programmi,

Dettagli

Misurazione del software. Misurazione. Misurazione del software. UniPD /13 - Ingegneria del Software mod. B 1. Misurare. IS Misura e metrica

Misurazione del software. Misurazione. Misurazione del software. UniPD /13 - Ingegneria del Software mod. B 1. Misurare. IS Misura e metrica Misurare Misurazione del software Ingegneria del Software V. Ambriola, G.A. Cignoni, C. Montangero, L. Semini Aggiornamenti di: T. Vardanega (UNIPD) Un attività quotidiana Grandezze fisiche: massa, lunghezza,

Dettagli

GESTORE DEL SISTEMA QUALITA AZIENDALE

GESTORE DEL SISTEMA QUALITA AZIENDALE GESTORE DEL SISTEMA QUALITA AZIENDALE DESCRIZIONE SINTETICA GESTORE DEL SISTEMA QUALITA AZIENDALE Il gestore del è in grado di sviluppare ed implementare un funzionale all attuazione degli obiettivi strategici

Dettagli

Valutazione delle prestazioni

Valutazione delle prestazioni Valutazione delle prestazioni Architetture dei Calcolatori (lettere A-I) Valutazione delle prestazioni Misura/valutazione di un insieme di parametri quantitativi per Quantificare le caratteristiche di

Dettagli

Valutazione delle prestazioni. Valutazione delle prestazioni. Tempo di risposta e throughput. Prestazioni e tempo di esecuzione

Valutazione delle prestazioni. Valutazione delle prestazioni. Tempo di risposta e throughput. Prestazioni e tempo di esecuzione Valutazione delle prestazioni Valutazione delle prestazioni Architetture dei Calcolatori (lettere A-I) Misura/valutazione di un insieme di parametri quantitativi per Quantificare le caratteristiche di

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA Processo Sequenza di processo Area di Attività Qualificazione regionale SETTORE ECONOMICO PROFESSIONALE 1 Servizi di informatica Sviluppo

Dettagli

UNITA CAPITALIZZABILI PER LA FIGURA PROFESSIONALE: TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE

UNITA CAPITALIZZABILI PER LA FIGURA PROFESSIONALE: TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE UNITA CAPITALIZZABILI PER LA FIGURA PROFESSIONALE: TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE 75 76 ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE UNITÀ CAPITALIZZABILE

Dettagli

TESI DI LAUREA "Scheduling dei processi: tecniche reticolari e nuovi approcci"

TESI DI LAUREA Scheduling dei processi: tecniche reticolari e nuovi approcci DIPARTIMENTO DI ECONOMIA E MENAGEMENT Corso di Laurea Magistrale in Finanza Aziendale e Mercati Finanziari TESI DI LAUREA "Scheduling dei processi: tecniche reticolari e nuovi approcci" Relatore Prof.

Dettagli

Ingegneria del Software MINR Giuseppe Santucci. 05 - Il metodo dei FP

Ingegneria del Software MINR Giuseppe Santucci. 05 - Il metodo dei FP Ingegneria del Software MINR Giuseppe Santucci 05 - Il metodo dei FP 05fp.1 Metriche relative al sw Dirette misure effettuabili direttamente sul codice LOC (Line Of Code) Indice di McCabe... misure effettuabili

Dettagli

Modularizzazione del software

Modularizzazione del software Modularizzazione del software Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Subroutine e function DIS - Dipartimento di informatica e sistemistica

Dettagli

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE QUINTA

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE QUINTA PROGRAMMAZIONE DISCIPLINARE PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE QUINTA 1. Competenze: le specifiche competenze di base disciplinari previste dalla

Dettagli

Metriche basate sulla LOC

Metriche basate sulla LOC Metriche basate sulla LOC Errori per KLOC Difetti per KLOC Pagine di documentazione per KLOC Errori per mese/uomo Errori per ore di revisione LOC per mese/uomo $ per pagine di documentazione Metriche funzionali

Dettagli

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE PROGRAMMAZIONE BIENNIO: SECONDA DISCIPLINA: INFORMATICA PIANO DI LAVORO DEL DOCENTE / RELAZIONE FINALE Anno scolastico 2014/2015 DOCENTE Prof. PAOLO ARMANI CLASSE:

Dettagli

DATI AZIENZA. Denominazione Azienda: Indirizzo PEC: Indirizzo sede: Città: CAP: Prov: Referente: Ruolo in azienda: Indirizzo

DATI AZIENZA. Denominazione Azienda: Indirizzo PEC: Indirizzo sede: Città: CAP: Prov: Referente: Ruolo in azienda: Indirizzo Consultazione preliminare di mercato, ai sensi dell art. 66 comma 1 del D. Lgs 50/2016, finalizzata all acquisto della licenza d uso di un prodotto software che consenta la misurazione attraverso la tecnica

Dettagli

I Dati Strutturati ed il Linguaggio C

I Dati Strutturati ed il Linguaggio C Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Dati Strutturati Esigenze Vettori

Dettagli

Indicatori compositi. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali

Indicatori compositi. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it Indicatori [1/4] Gli indicatori: sintetizzano le caratteristiche di un fenomeno colgono aspetti e problemi del fenomeno che non hanno una immediata

Dettagli

Rappresentazione degli algoritmi

Rappresentazione degli algoritmi Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti

Dettagli

Linee di programmazione

Linee di programmazione Ministero dell Istruzione, dell Università e della Ricerca Ufficio Scolastico regionale per il Lazio Istituto Tecnico Industriale A. Pacinotti ISTITUTO TECNICO TECNOLOGICO - LICEO SCIENTIFICO DELLE SCIENZE

Dettagli

CAPITOLO 8. Tecnologie per il controllo, il social business e i big data ORGANIZZAZIONE AZIENDALE

CAPITOLO 8. Tecnologie per il controllo, il social business e i big data ORGANIZZAZIONE AZIENDALE CAPITOLO 8 Tecnologie per il controllo, il social business e i big data 1 Agenda Evoluzione dell Information Technology I sistemi di controllo Sistemi di controllo a feedback IT e coordinamento interno

Dettagli

Il controllo economico e il ruolo del budget: aspetti organizzativi

Il controllo economico e il ruolo del budget: aspetti organizzativi Capitolo 11 Il controllo economico e il ruolo del budget: aspetti organizzativi di Laura Zoni Il controllo economico e il ruolo del budget: aspetti organizzativi (Cap. 11) OBIETTIVI DI APPRENDIMENTO Comprendere

Dettagli

BASI DI DATI E UTENTI DI BASI DI DATI

BASI DI DATI E UTENTI DI BASI DI DATI BASI DI DATI E UTENTI DI BASI DI DATI Introduzione alle basi di dati (1) 2 La gestione dell informazione L informazione rappresenta oggi uno dei beni più preziosi all interno di una qualsiasi organizzazione

Dettagli

L adozione di MATLAB e Simulink nei Corsi di Ingegneria al Politecnico di Milano. Maurizio Magarini MATLAB EXPO Milano, 4 novembre 2014

L adozione di MATLAB e Simulink nei Corsi di Ingegneria al Politecnico di Milano. Maurizio Magarini MATLAB EXPO Milano, 4 novembre 2014 L adozione di MATLAB e Simulink nei Corsi di Ingegneria al Politecnico di Milano MATLAB EXPO Milano, 4 novembre 2014 Sommario Introduzione. Il ruolo dei laboratori informatici nella didattica, formazione

Dettagli

Il PROCESSO UNIFICATO

Il PROCESSO UNIFICATO Corsi di laurea triennale in Ingegneria Informatica Corso di Ingegneria del software Il PROCESSO UNIFICATO Modellazione ed Implementazione di un Sistema Software per la gestione informatizzata di un ristorante

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA Processo Sequenza di processo Area di Attività Qualificazione regionale SETTORE ECONOMICO PROFESSIONALE 1 Servizi di informatica Sviluppo

Dettagli

Stima della size- Esercitazioni

Stima della size- Esercitazioni 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à

Dettagli

Esercitazioni di Statistica

Esercitazioni di Statistica Esercitazioni di Statistica Medie Prof. Livia De Giovanni ldegiovanni@luiss.it Dott. Flaminia Musella fmusella@uniroma3.it Esercizio 1 Data la seguente distribuzione unitaria del carattere X: X : 4 2 4

Dettagli

Paolo Depaoli. Supporti alle lezioni basate sul capitolo 8 del testo «La progettazione organizzativa» (a cura di Franco Isotta)

Paolo Depaoli. Supporti alle lezioni basate sul capitolo 8 del testo «La progettazione organizzativa» (a cura di Franco Isotta) http://it.123rf.com/photo_23991404_cerchio-da-simbolimusicali.html?fromid=bkvnlzzerkhmou9ys3juwwm1yje0ut09 Paolo Depaoli Supporti alle lezioni basate sul capitolo 8 del testo «La progettazione organizzativa»

Dettagli

Il disegno nel ciclo di vita del prodotto

Il disegno nel ciclo di vita del prodotto Il disegno nel ciclo di vita del prodotto MERCATO INPUT Bisogni PROCESSO DI DI TRASFORMAZIONE Idea Progetto Produzione MERCATO OUTPUT Clienti Figura 1, pag. 19 Pianificazione Organizzazione CONTROLLO MANAGEMENT

Dettagli

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza Definizione 1 Lezione 2 Le basi di dati Gli archivi di dati Organizzato in modo integrato attraverso tecniche di modellazione di dati Gestiti su memorie di massa Con l obiettivo Efficienza trattamento

Dettagli

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Regole dell'esame Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di

Dettagli

Università degli Studi della Calabria

Università degli Studi della Calabria Università degli Studi della Calabria Facoltà di Scienze Politiche CORSO DI FONDAMENTI DI INFORMATICA I A.A 2007/2008 Docente : Ing. Francesco Folino 1 INFORMAZIONI UTILI 2 Docente: Ing. Francesco Folino

Dettagli

PROGETTISTA MECCANICO

PROGETTISTA MECCANICO PROGETTISTA MECCANICO identificativo scheda: 08-006 stato scheda: Validata Descrizione sintetica Il, in collaborazione con altri specialisti, idea e sviluppa impianti, macchinari o semplici componenti

Dettagli

ISTITUTO D ISTRUZIONE SUPERIORE G.CENA SEZIONE TECNICA ANNO SCOLASTICO 2018/2019 PROGRAMMAZIONE DISCIPLINARE DIPARTIMENTALE DI INFORMATICA DOCENTI

ISTITUTO D ISTRUZIONE SUPERIORE G.CENA SEZIONE TECNICA ANNO SCOLASTICO 2018/2019 PROGRAMMAZIONE DISCIPLINARE DIPARTIMENTALE DI INFORMATICA DOCENTI I.I.S. G. CENA ISTITUTO D ISTRUZIONE SUPERIORE G.CENA SEZIONE TECNICA ANNO SCOLASTICO 2018/2019 PROGRAMMAZIONE DISCIPLINARE DIPARTIMENTALE DI INFORMATICA DOCENTI Nespolo Donatella, Ravasenga Paola CLASSE

Dettagli

Testing di applicazioni flex: uso dello strumento FlexUnit

Testing di applicazioni flex: uso dello strumento FlexUnit tesi di laurea Anno Accademico 2010/2011 relatore Ch.mo prof. Porfirio Tramontana candidato Gionatan Murru Matr. 534001578 Problematiche affrontate: 1. Cos e Flex 2. Come è strutturato 3. Come è possibile

Dettagli

SERVIZI DI INGEGNERIA ELETTRONICA

SERVIZI DI INGEGNERIA ELETTRONICA SERVIZI DI INGEGNERIA ELETTRONICA E M A-Tech Compan y P rofile D i a m o v i t a a l l e v o s t r e i d e e EMA-Te ch Dall'ideazione all industrializzazione, utilizzando solo strumenti di sviluppo all'avanguardia

Dettagli

- 2 % 7, 0 ( 3 / 8 6

- 2 % 7, 0 ( 3 / 8 6 SCHEDA PRODOTTO PAG. 1-2 % 7, 0 ( 3 / 8 6 Sistema integrato per la gestione di REPORTISTICA DIREZIONALE Versione 6.1 SCHEDA PRODOTTO PAG. 2 2%,(77,9,675$7(*,&, Il progetto si propone lo sviluppo di un

Dettagli

Gestione di progetto: pianificazione

Gestione di progetto: pianificazione Gestione di progetto: pianificazione Simona Bernardi Corso di Ingegneria del Software 04/ 05 Prof.Susanna Donatelli Introduzione: dove siamo? Gestione di progetto: Pianificazione Monitoraggio e controllo

Dettagli

La fase di Progettazione

La fase di Progettazione Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Progettazione Giulio Destri Ing. del Sw: Progettazione - 1 Scopo del modulo

Dettagli

Materiale didattico. Sommario

Materiale didattico. Sommario Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

Analisi e diagnosi dei processi aziendali. Corso di ebusiness

Analisi e diagnosi dei processi aziendali. Corso di ebusiness Analisi e diagnosi dei processi aziendali Modello di valutazione dei processi: il modello delle determinanti Prestazioni processo = = f (determinante1,, determinante n) Flusso delle attività Organizzazione

Dettagli

Sommario della lezione

Sommario della lezione Sommario della lezione Introduzione ai sistemi informatici dad un punto di vista generale: concetto di risorsa, processo, informazione sistema informativo e sistema informatico Un esempio Concetti essenziali

Dettagli