perchè una gestione dei progetti 8. tecniche di pianificazione e...

38
8. Tecniche di pianificazione e controllo dei progetti Ing. Alessandro Musumeci 8.-2 Agenda Perchè una gestione dei progetti La pianificazione del progetto La schedulazione delle attività Il metodo Function Point per la stima delle attività Il conteggio dei Data Function Type Il conteggio dei Transactional Function Type Fasi finali del conteggio Conclusioni e considerazioni Esercitazioni La gestione del progetto Riepilogo 8.-3 Perchè una gestione dei progetti • Aumenta la complessità e quindi la durata e i costi dei nuovi sistemi • La competitività chiede nuovi sistemi in - Tempi sempre più brevi - Costi bassi - Alta qualità • La direzione vuole stime precise per tempi e costi • Necessità di coordinare gruppi di specialisti sempre più diversi • Tecnologie complesse aumentano il rischio di sottostimare costi e tempi La dinamica della gestione dei progetti 8.-4 Cos’è la gestione dei progetti: Pianificazione • Situazione attuale - “Dove siamo” • Risultati desiderati - “Dove vogliamo arrivare” • Azioni da eseguire - “Come arrivare ai risultati” • Strategia - Il modo migliore per arrivare ai risultati (efficacia e efficienza) • I check-point e i deliverables - “Cosa produrre e quando” • Standard - La qualità dei risultati La dinamica della gestione dei progetti

Upload: others

Post on 09-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

8.-1

1

8. Tecniche di pianificazione e controllo dei progetti

Ing.Alessandro Musumeci

8.-2

Agenda

• Perchè una gestione dei progetti

• La pianificazione del progetto

• La schedulazione delle attività

• Il metodo Function Point per la stima delle attività� Il conteggio dei Data Function Type

� Il conteggio dei Transactional Function Type

� Fasi finali del conteggio

� Conclusioni e considerazioni

� Esercitazioni

• La gestione del progetto

• Riepilogo

8.-3

Perchè una gestione dei progetti• Aumenta la complessità e quindi la durata e i

costi dei nuovi sistemi

• La competitività chiede nuovi sistemi in- Tempi sempre più brevi- Costi bassi- Alta qualità

• La direzione vuole stime precise per tempi ecosti

• Necessità di coordinare gruppi di specialistisempre più diversi

• Tecnologie complesse aumentano il rischio disottostimare costi e tempi

La dinamica della gestione dei progetti

8.-4

Cos’è la gestione dei progetti: Pianificazione

• Situazione attuale -“Dove siamo”

• Risultati desiderati -“Dove vogliamo arrivare”

• Azioni da eseguire -“Come arrivare ai risultati”

• Strategia -Il modo migliore per arrivare ai risultati (efficaciae efficienza)

• I check-point e i deliverables -“Cosa produrre e quando”

• Standard -La qualità dei risultati

La dinamica della gestione dei progetti

8.-5

Definizione• La gestione dei progetti:

- Pianificare - Organizzare -

Dirigere -Controllare

Le risorse della compagnia -Denaro - Materiale

- Tempo - Persone

Per un obiettivo da raggiungere in un tempo relativamente breve

La dinamica della gestione dei progetti

8.-6

Caratteristiche dei progetti

• Obiettivi in tempi brevi

• Prospettiva sistemica

• Gestione del ciclo di vita

• Gestione del potere e dell’autorità

La dinamica della gestione dei progetti

8.-7

I termini del project management

ProgettoUn insieme di attivita’ eseguite da un gruppo di persone con unobiettivo limitato e preciso in un periodo di tempo definito

8.-8

I termini del project management

Project managementLa pianificazione e le attivita’ di supervisione necessarie adassicurare il successo del progetto di sviluppo dei sistemi

budget tempo scope persone

8.-9

I termini del project management

Il team di progetto

Clienti

Sviluppatori

Capi progetto

Sponsor/Committenti

Fornitori

Comitato direttivo

8.-10

I termini del project management

Una lista di attivita’ da effettuare in un progettocomprensiva di stima delle risorse necessarie(conoscenze, livello di esperienza, duratadell’impegno) e di una schedulazioneapprossimata

Una lista di attivita’ da effettuare in un progetto,assegnate a specifiche persone, con specifichedate d’inizio e di ultimazione

work plan

work program1995

8.-11

La pianificazione del progetto

8.-12

La pianificazione del progetto

Introduzione

La pianificazione ha il compito dideterminare cosa fare nel futuro

• Necessaria per garantire i risultati nei tempi

• Facilita la comprensione dei problemi complessi

• Aiuta a coordinare gli sforzi per il raggiungimentodell’obiettivo comune

8.-13

Tecniche di pianificazione• Cosa vogliamo (il prodotto):

• specifiche funzionali e tecniche con scadenze e costi• Strategie per gli obiettivi:

• le attività da eseguire (WBS)• Per ogni attività:

• stima dei tempi di realizzazione• grado di incertezza della stima

• Struttura organizzativa:• autorità• responsabilità• incarichi

• Schedulazione delle attività• Politica da adottare per le decisioni sul bilanciamento fra qualità costi e

scadenze• Gli standard di sviluppo

• cosa bisogna fare• quando• con quali costi

La pianificazione del progetto

8.-14

Pianificazione e contingenze

• Vanno pianificate comunque alcune possibili contingenze:− errori nelle stime di danaro, tempo e persone necessarie− modifiche alle specifiche originali con incrementi di spese e

tempi− indisponibilità imprevista di persone o mezzi

• Valutazione “spannometrica” 10%?

• Nelle fasi preliminari a più alto rischio 20%?

• Le previsioni migliori sono quelle basate sull’analisi dei progettisimili

La pianificazione del progetto

8.-15

Il sommario del piano del progetto• Per il management (il progetto in un colpo d’occhio)

• Per tutti (chiarezza sugli impegni e sugli obiettivi)- cosa c’è da fare- perchè- come verrà fatto- quando- da chi- con quali costi

• Contenuti:- descrizione del prodotto e delle attività- definizione delle scadenze principali- budget per le fasi del ciclo di vita- scomposizione del progetto in attività schedulabili- schedulazione delle macro attività- tracciamento dei cammini critici- matrice delle responsabilità e delle comunicazioni

La pianificazione del progetto

8.-16

Scomposizione funzionale (WBS)• Uno dei principali componenti di un piano è

la definizione delle attività da eseguire

• Una WBS dice:- cosa bisogna fare- quali sono i rapporti gerarchici fra le varie attivita

• Divide il progetto in elementi, attività più piccole e manipolabiliper le quali è più facile definire:

- incarichi- responsabilità- costi- durata- rischi- priorità

• Soddisfa le necessità di:- management- capo progetto- utente

La pianificazione del progetto

0

1 2

1.1 1.2

8.-17

La schedulazione delle attività

Introduzione

• Dalla scomposizione delle attività (WBS)• Indispensabile per il controllo del progetto

• Ma a quale livello di dettaglio fare schedulazione?

• PERSONE• MEZZI• SERVIZI• TEMPO

• PRECEDENZE• PUNTI CRUCIALI (per i DELIVERABLES)

La schedulazione ha il compito di stabilire

CHI DEVE FARE COSA E QUANDO

8.-18

Tipi di schedulazione

• DEI TEMPI:• date di inizio e fine di ogni attività

• DEL PERSONALE:• quando le persone sono impegnate• su quali attività• per quante ore• quando non sono più impegnate sull’attività

Controllo sui carichi di lavoro e la distribuzione

• DEI COSTI:• allocazione dei fondi sulle attività

Controllo sulle richieste di fondi nel tempo

La schedulazione delle attività

8.-19

Schedulazione e bilanciamento dei vincoli

• Progetto vincolato dal tempo:− analisi “cosa succede se”

modificole specifichele precedenzel’allocazione risorse

• Progetto vincolato dai costi:- riallocazione risorse- allungamento tempi

• Spesso per cattiva schedulazione ci si accorge tardiche il progetto durerà di più o costerà troppo

TAGLIO DELLE FUNZIONIINDEBOLIMENTO DELLE SPECIFICHE

TIME COSTS FUNCTIONS La diminuzione di un fattoreaumenta gli altri

La schedulazione delle attività

8.-20

Schedulazione e controllo• Controllo sui progressi del progetto• Schedulazione dei tempi:

− verifiche periodiche sulle discrepanze fra cosa avremmo dovutofare e cosa abbiamo effettivamente fatto alla data

• Schedulazione del personale:− chi spostare da un’attività ad un’altra per correggere qualche

discrepanza• Schedulazione dei costi:

− controllo sulle spese effettive alla data rispetto al budget− previsioni sul futuro

La schedulazione delle attività

8.-21

Il reticolo delle precedenze (PERT)

• Dice quali sono i legami logici fra le attività (le precedenze)

• Un aiuto per calcolare la durata totale di un progetto (o di ungruppo di attività)

• Un aiuto per riconoscere i cammini critici• Un aiuto nella revisione delle attività per accorciare la durata del

progetto

La schedulazione delle attività

8.-22

La schedulazione delle attivita’

Input• Unita’ di misura dei tempi• Giorni di riposo settimanale• Giorni festivi• Giorni di fermo progetto

e, inoltre:• Orario di lavoro• Produttivita’ delle persone• Disponibilita’ completa o parziale delle persone• Ferie• . . .

8.-23

Il reticolo delle precedenze

• Data questa scomposizione

COD. DESCR. DURATA PREDEC.ATT. (mesi)

A xxxxxx 14 INIZIO B xxx 3 INIZIO C xxxx 3 A, B D xx 7 B E xxxxx 4 C, D F xxxx 10 E

• Quanto durerà l’intero progetto?• Quando devo impegnare le persone?

La schedulazione delle attività

8.-24

Il reticolo delle precedenze (PERT)

• Il PERT semplifica il calcolo della durata di un progetto:- per le attività in parallelo la durata totale è minore della somma- ACEF = 31 mesi

BCEF = 20 mesiBDEF = 24 mesi

PERT = Program Evaluation and Review Technique (1957)

La schedulazione delle attività

INIZIO

A 14 C 3

B 3 D 7

E 4 F 10 FINE

= ATTIVITA’

= RELAZIONE DIPRECEDENZA

Tutte le attività sarannocompletate in 31 mesi

8.-25

I cammini critici

ACEF = CAMMINO CRITICO• Determina la durata del progetto• Un ritardo su una qualsiasi attività ritarda l’intero progetto• Per ridurre la durata del progetto bisogna agire sul

cammino critico

La schedulazione delle attività

INIZIO

A 14 C 3

B 3 D 7

E 4 F 10 FINE

8.-26

Riduzione del cammino critico

• Vedere se un’attività sul cammino critico può iniziare prima

La schedulazione delle attività

INIZIO

A 14 C 3

B 3 D 7

E 4 F 10 FINE

8.-27

Riduzione del cammino critico

• - A1, A2, A3, E, F = 28 mesi NUOVO CAMMINO CRITICO

• Vedere se si possono ridurre i tempi di un’attività- con una diversa tecnologia- con un aumento di personale...

La schedulazione delle attività

INIZIO

A1 4 A2 4

B 3 D 7

C 3 E 4 F 10

A3 6

FINE

8.-28

“Accelerare” il progetto• Se l’attività è partizionabile:

- un certo aumento di personalepuò ridurre i tempi

• Ma troppe persone:- aumentano la necessità

di comunicazioneaumentano i tempi!e i possibili conflitti!

• Se l’attività non è partizionabile:- l’aumento di personale causa

aumento dei tempi!aumento dei conflitti!

• Si possono accorciare i tempi anche aumentando mezzi estrumenti

La schedulazione delle attività

8.-29

La schedulazione delle attività

Il diagramma a barre (GANTT)

1 2 3 4 5 6 7

ABCDEFG

- Per visualizzare la schedulazione del progetto

- Per ogni attività:

A B C

B - La fine al più presto (early finish)

A - L’inizio al più presto (early start)- L’inizio al più tardi (late start)

C - La fine al più tardi (late finish) - Per le attività che non sono nel cammino critico

lo slittamento possibile (slack)- Non mostra le relazioni di precedenza

8.-30

La schedulazione delle attività

Le attività già svolte

- Il cammino critico

Il diagramma a barre

8.-31

La schedulazione delle attività

Il diagramma a barre: un esempio

Analisi deirequisiti utente

Disegno delleinterfacce

Disegnotecnico

Requisiti diqualita’

System test

Procedureutente

1 2 3 4 5 6 7 8 9 10

avanzamento

camminocritico

earlystart

earlyfinish

latefinish 8.-32

La schedulazione delle attività

La schedulazione del personale• Il Gantt è utile anche per visualizzare la schedulazione del personale

- Numero di programmatori per ogni attività - Numero di programmatori impiegati nel tempo

A

B

C

D

E

F

2

6

2

1

4

6

Numero di persone

62 4 8 10 12 14 16 18Tempo, mesi

2 4 6 8 10 12 14 16 18

2

4

6

8

10

12

14

Pro

gram

mat

ori

Tempo, mesi

8.-33

La schedulazione delle attività

La schedulazione del personale

2

4

6

8

10

12

14

16

18

6 34 54 102 118 126

Tempo, mesi

Mesi, uomo

- Distribuzione cumulativa di programmatori nel tempo

- MESI-UOMO = DANARO!

8.-34

La schedulazione delle attività

Schedulazione del personale: abbassamento dei picchi

A

B

C

D

E

F

2

6

2

1

4

6

Numero di persone

62 4 8 10 12 14 16 18Tempo, mesi

2 4 6 8 10 12 14 16 18

2

4

6

8

10

12

14

Pro

gram

mat

ori

Tempo, mesi

- Nei mesi 8-12 servono 12 programmatori ma non sono disponibili

12 14 16 184 6 8 102

23

4

6

78

10

12

14

Pro

gram

mat

ori

Spostamento di F, che non è nel cammino critico, nel mese 12

Tempo, mesi

8.-35

Il metodo dei Function Points per la stima delle attività

■ Analisi dei Function Point:� misura l’ampiezza di un’applicazione o di un progetto quantificando

la quantità di funzionalità fornite all’utente indipendentemente dallatecnologia usata.

■ Conteggio dei Function Point:� valutazione eseguita a progetto terminato

■ Stima dei Function Point:� valutazione eseguita per funzionalità non ancora rilasciate

8.-36

L’Analisi dei Function Point

■ Obiettivi

� Uno standard per misurare lo sviluppo del SW

� Misurare oggetti visibili e significativi per l’utente

� Misurazioni possibili nelle prime fasi del ciclo di vita

� Indipendenza dalla tecnologia usata

� Obiettività della misurazione

� Semplicità e dimostrabilità del conteggio

� Coerenza fra progetti e organizzazioni

8.-37

L’Analisi dei Function Point

■ Benefici

� Strumento per determinare:

• La dimensione di SW acquistato o prodotto

• Quanto siamo competitivi

• Se stiamo migliorando

• Stime: costi e risorse per lo sviluppo e la manutenzione

� Elemento di misurazione della Qualità

� Fattore di normalizzazione nei confronti

8.-38

L’Analisi dei Function Point

■ Il conteggio

� Identificazione delle funzionalità richieste

� Per ogni funzionalità:

• Classificazione (Type)

• Valutazione della complessità

• Calcolo del numero di FP (unadjusted)

� Per l’intero sistema:

• Valutazione della complessità generale e

• Calcolo del fattore di aggiustamento dei FP (VAF)

� Sommatoria dei FP e applicazione del VAF

1 2 3 4 5678

8.-39

L’Analisi dei Function Point

■ Una procedura per il conteggio

Preparal’ambiente

per ilConteggio

Stabilisci ilTipo di

Conteggio

Identifica iConfini delConteggio

Conta iData

FunctionTypes

Conta iTransactional

Function Types

Calcola gliUnadjusted

F.P.

Determina ilValue

AdjustmentFactor

Calcola ilFinal

AdjustedF.P. Count

8.-40

Fasi iniziali del conteggio

■ Preparazione dell’ambiente

■ Stabilisci il tipo di conteggio

■ Identifica i confini del conteggio

8.-41

0 - Preparazione dell’Ambiente per il Conteggio

■ Raccogli documentazione:

� schermate, tabulati, archivi, dizionari dati, ...

� descrizioni funzioni, documentazione utente, ...

� diagrammi: DFD, ERD, ED, ...

■ Identifica gli esperti:

� funzionali

� “contatori”

8.-42

1 - Stabilisci il Tipo di Conteggio

+Conversion

DEVELOPMENT

PROJECT

DELIVERED

+Conversion

ENHANCEMENT

APPLICATION

Inizializza

Modifica

■ Project: tutte le funzionalità necessarie per la realizzazione del sistema

■ Application: solo le funzionalità rilasciate all’utente

8.-43

2 - Identifica i Confini del Conteggio

EI

EO

EQILF

EIEO

EQ

EIF

ILF

■ Quali funzioni sono incluse nel conteggio

■ L’ambito del progetto

8.-44

2 - Identifica i Confini del ConteggioGli elementi conteggiati

Function Types

ILF

EIF

DataFunction Types

•ILF: Internal Logical File•EIF: External InterfaceFile

•EI: External Input•EO: External Output•EQ: ExternalInquiry

TransactionalFunctionTypes

8.-45

2 - Identifica i Confini del Conteggio

Come vengono calcolati i FP

Componenti Basso Medio Alto TotaleInternal L.File __x7=___ __x10=___ __x15=___ _____External I. File __x5=___ __ x 7=___ __x10=___ _____External Input __x3=___ __ x 4=___ __ x 6=___ _____External Output __x4=___ __ x 5=___ __ x 7=___ _____External Inquiry __x3=___ __ x 4=___ __ x 6=___ _____

Totale UFP =

8.-46

Conta i Data Function Type (DFT)

■ Internal Logical File (ILF)

■ External Interface File (EIF)

■ La complessità:

� Record Element Type (RET)

� Data Element Type (DET)

■ Considerazioni

8.-47

3 - Conta i Data Function Types

ILF

Internal Logical File (ILF)

■ Definizione:

� Raggruppamento logico di dati o informazioni di controllo

• identificabili dall’utente

• gestiti internamente all’applicazione

8.-48

3 - Conta i Data Function Types

ILF

Internal Logical File (ILF)

■ Esempi:

• Archivi creati, aggiornati e interrogati dall’utente

• Tabelle di validazione

• Tabelle con parametri di controllo

• File di help e tabelle di messaggi

• File di back-up richiesti dall’utente

■ NON sono ILF:

• File di cui l’utente non ha visibilità

• File interni di sort

• File legati alla tecnologia usata per l’applicazione

8.-49

3 - Conta i Data Function TypesILF: Esempio da Data Flow Diagram

Utente Finale

Aggiornamento Ordini

File Ordine

Ordine Aggiornato

Ordine

1.0

Personale

Creazione nuovo record

File Personale

Applicazione Impiegato

1.0

8.-50

3 - Conta i Data Function TypesILF: Esempio da Entity / Relationship Diagram

Un ordine è completo quando contiene le informazioni sulla fatturazione, sulla

spedizione e tutte le righe-prodotto

1 ILF con 3 RET

ORDINE

Dati x Fattura

Dati x Spediz. Riga-prodotto

8.-51

3 - Conta i Data Function Types

ILF: Esempio da Entity / Relationship Diagram

Unico file fisico con 4 sotto-entità che l’utente tratta in modo diverso

4 ILF ognuno con 1 RET

CLIENTI

Persone

Società

Scuole

Amici

8.-52

3 - Conta i Data Function TypesExternal Interface File (EIF)

■ Definizione:

� Raggruppamento logico di dati o informazioni di controllo

• identificabili dall’utente

• gestiti all’esterno dell’applicazione

• un EIF di un’applicazione deve essere ILF di un’altra

EIF

ILF

8.-53

3 - Conta i Data Function TypesExternal Interface File (EIF)

■ Esempi:

• Data Base condivisi in read-only

• Dati referenziati ma gestiti da altre applicazioni

• File di help o di errori (in read-only)

■ NON sono EIF:

• Dati gestiti dall’applicazione e utilizzati da altre

EIF

ILF

8.-54

3 - Conta i Data Function TypesEIF: Esempio da Data Flow Diagram

Sistema AElaborazione Sequenziale Transazioni

Transazioni

1.0

Determinazione Situazione Stock

Inventario Magazzino

1.0

Creazione Ordine

2.0

Inventario Deposito

8.-55

3 - Conta i Data Function TypesValutazione livello di complessità degli ILF e EIF in base al numero di:

■ Record Element Type (RET):

• raggruppamenti di dati all’interno del file

- sia obbligatori che opzionali

■ Data Element Types (DET):

• dati elementari nei files

- riconoscibili dall’utente

- se ripetitivi, valgono 1

- le chiavi esterne

ILF

RET

DET

EIF

ILF

8.-56

3 - Conta i Data Function Types

ILF

RET

DET

EIF

ILF

Tabelle per la determinazione della complessità per ILF e EIF

DETRET 1-19 20-50 51+1 Basso Basso Medio2-5 Basso Medio Alto6+ Medio Alto Alto

8.-57

3 - Conta i Data Function Types

ILF EIF

ILF

Determina gli UFP per i Data Function Types

■ per ogni ILF e ogni EIF (Contribution)

■ la sommatoria è l’UFP Count (UFPC) per i Data FunctionTypes

L’UFPC rappresenta il conteggio delle funzionalità

fornite all’utente

ComplessitàBassaMedia

Alta

UFP71015

ILF

ComplessitàBassaMedia

Alta

UFP5710

EIF

8.-58

3 - Conta i Data Function TypesConsiderazioni sui Data Base:

� DB Gerarchici: ogni Segment può essere un logical file

� DB Relazionali: ogni Table può essere un logical file

� Diagrammi E/R: ogni Entity può essere un logical file

Complessità media dei logical file:

� 95% bassa

� 4% media

� meno dell’ 1% alta

ILF EIF

ILF

8.-59

Conta i Transactional Function Type (TFT)

■ External Input (EI)

■ External Output (EO)

■ External Inquiry (EQ)

■ Complessità:

� File Type Referenced (FTR)

� Data Element Type (DET)

8.-60

4 - Conta i Transactional Function Types

Function Types

ILF

EIF

DataFunction Types

•ILF: Internal Logical File•EIF: External Interface File

•EI: External Input•EO: External Output•EQ: External Inquiry

TransactionalFunctionTypes

8.-61

4 - Conta i Transactional Function TypesExternal Input (EI)

■ Definizione:

� Raggruppamento logico di dati o informazioni di controllo

• Provenienti dall’esterno del sistema

- dall’utente

- da altri sistemi

• ed elaborati per una funzione-utente

EI

8.-62

4 - Conta i Transactional Function TypesExternal Input (EI)

� Esempi:

• Schermate di inserimento, modifica, cancellazione

• Schermate per la gestione di dati di controllo

• Tabulati di input

• Transactional file (in ingresso)

• Richieste di innesco processi di back-up

• Lettori di codici a barre negli sportelli

• Lettura di dati da strumenti vari

• Input da altri sistemi

• Menu con dati di input per selezionare una funzione

� NON EI:

• La parte input di un EQ

EI

8.-63

4 - Conta i Transactional Function TypesEI: Esempi da Data Flow Diagram

Utente Finale

Aggiornamento Parametridi Stampa

1.0Elaborazione Transazione

File

Multi-Screen

1.0

On-Line Data Entry

Transazione

Tabella

8.-64

4 - Conta i Transactional Function TypesValutazione livello di complessità degli External Input (EI) fatta in

base al numero di:

■ File Type Referenced (FTR):

• archivi logici aggiornati o letti per la funzione

■ Data Element Types (DET):

• dati elementari introdotti

- riconoscibili dall’utente

- se ripetitivi, valgono 1

DET

ILF

EIEIF/ILF

8.-65

4 - Conta i Transactional Function Types■ Tabelle per la complessità per FTR e DET di ogni EI:

■ Tabella per determinare gli Unadjusted FP (contribution):

DETFTR 1-4 5-15 16+0-1 Basso Basso Medio2 Basso Medio Alto3+ Medio Alto Alto

EIComplessità

BassaMedia

Alta

UFP346

EI

EI

8.-66

4 - Conta i Transactional Function TypesExternal Output (EO)

■ Definizione:

� Un processo elementare che genera dati o informazioni di controllo

• Inviati all’esterno del sistema

- all’utente

- ad altri sistemi

• Il processo elementare deve realizzare in modo

completo una funzione utente

EO

8.-67

4 - Conta i Transactional Function Types

EO

External Output (EO)

� Esempi:

• Tabulati

• Report on-line

• Qualsiasi output ottenuto da elaborazione

• Risultati di calcoli presentati a video

• Archivi di transito (in uscita)

• Output ad altri sistemi

• Sistemi di generazione e distribuzione report o microfiches- (valgono 1 EO perchè l’elaborazione la fa il prodotto)

• Richiesta di attivazione funzioni per altra applicazione

• Messaggi su qualsiasi supporto

8.-68

4 - Conta i Transactional Function Types

Riepilogo Totali

File Reclami

1.0

EO: Esempi da Data Flow Diagram

RiepilogoUtente Finale Formalizza dati

per paghe

1.0

File Paghe

Stampa di controllo

Check Paghe

Check condizioni di

errore

1.0

Testo Messaggio

Messaggio Errore

ControllatoDisplay Utente

FinaleEmissione Pagamenti

1.0

File Pagamenti

Client 1

Client 2

Client 3

8.-69

4 - Conta i Transactional Function TypesValutazione livello di complessità degli External Output (EO) fatta

in base al numero di:

■ File Type Referenced (FTR):

• archivi logici (ILF e EIF) letti per produrre l’output

■ Data Element Types (DET):

• dati elementari prodotti in uscita

- Non contare le costanti

- Non contare i numeratori automatici di pagina.

EO

DET

EIF/ILF

8.-70

4 - Conta i Transactional Function Types

EO

DET

EIF/ILF

■ Tabelle per la complessità per FTR e DET di ogni EO:

■ Tabella per determinare gli Unadjusted FP (contribution):

DETFTR 1-5 6-19 20+0-1 Basso Basso Medio2-3 Basso Medio Alto4+ Medio Alto Alto

ComplessitàBassaMedia

Alta

UFP457

EO

EO

8.-71

4 - Conta i Transactional Function Types

External Inquiry (EQ)

■ Definizione:

� Un processo elementare che consiste in una richiesta di informazioni e unarisposta con le informazioni cercate

� No elaborazioni, No aggiornamenti

� Esempi:

• Schermate di logon con funzioni di sicurezza

• Scelta da una lista di valori presentati

• Visualizzazione di dati da una richiesta

• Attivazione di funzioni di help online

• Menu di selezione

• Ogni input/output che non comporti aggiornamenti

• Schermate dei help

EQ

8.-72

4 - Conta i Transactional Function Types

Display Ordine

File Ordini

1.0

1.0

Dati ordini selezionati

Utente Finale

Pezzo

Aggiornamento

Utente Finale

1.0

EQ: Esempi da Data Flow Diagram

Display Pezzo

Aggiornamento File Pezzi

Aggiornamento

Pezzo Selezionato

Menù Selezione Funzioni

1.0

Display Help Campo

1.0

File Screen Funzioni

Utente Finale

Screen Funzioni

Selezionati

File Help

Utente Finale

Screen Help

Selezionato

8.-73

4 - Conta i Transactional Function Types

■ Il livello di complessità di un External Inquiry (EQ) è il maggiore fra ilivelli delle sue parti Input e Output.

■ Si basa su FTR e DET come visto per gli altri Transactional FT.

EQ

DET

EIF/ILF

8.-74

4 - Conta i Transactional Function TypesTabelle per la complessità per FTR e DET di ogni EQ:

DETFTR 1-4 5-15 16+0-1 Basso Basso Medio2 Basso Medio Alto3+ Medio Alto Alto

EQ

DET

EIF/ILF

EQparteinput

DETFTR 1-5 6-19 20+0-1 Basso Basso Medio2-3 Basso Medio Alto4+ Medio Alto Alto

EQparte

output

8.-75

4 - Conta i Transactional Function Types■ Tabella per gli Unadjusted FP (contribution) per gli EQ.

■ Da usare col più alto dei valori fra i lati Input e Output di ogniEQ.

ComplessitàBassaMedia

Alta

UFP346

EQEQ

DET

EIF/ILF

8.-76

5 - Calcola gli Unadjusted Function Points (UFP)

Basso Medio Alto TotaleILF __x7=___ __x10=___ __x15=___ _____EIF __x5=___ __ x 7=___ __x10=___ _____EI __x3=___ __ x 4=___ __ x 6=___ _____EO __x4=___ __ x 5=___ __ x 7=___ _____EQ __x3=___ __ x 4=___ __ x 6=___ _____

Totale UFP =

Tabella per calcolare il totale degli UFP

8.-77

Fasi finali del conteggio

■ Determina il Value Adjustment Factor (VAF)

■ Le 14 General System Characteristics (GCS)

■ Calcolo del Final Adjustment FP Count

� per un Development Project (DFP)

� per un Enhancement Project (EFP)

� per una Application (AFP)

8.-78

6 - Determina il Value Adjustment Factor (VAF)

■ Fattore di “aggiustamento” degli UFP

■ Analisi di 14 General System Characteristics (GCS) che determinano lacomplessità generale del sistema

■ Per ogni GSC si stabilisce il Degree of Influence (DI)

� un valore che va

- da 0 = nessuna influenza

- a 5 = massima influenza■ La somma dei 14 DI è usata in una formula che “aggiusterà“ gli UFP di

un +/-35%

35%

0 1 2 3 4 5

8.-79

6 - Determina il Value Adjustment Factor (VAF)

I 6 Degree of Influence (DI) da associare ad ognuna delle 14 GSC:

0 = non presente o nessuna influenza1 = influenza poco significativa2 = influenza moderata3 = influenza media4 = influenza significativa5 = influenza massima

DI

0 1 2 3 4 58.-80

6 - Determina il Value Adjustment Factor (VAF)

Le 14 General System Characteristics (GSC) che determinano lacomplessità generale del sistema:

35%

GCS DI GCS DI1. Data Communications ___ 8. On-Line Update ___2. Distributed Processing ___ 9. Complex Processing ___3. Performance ___ 10. Reusability ___4. Heavily-Used Configuration ___ 11. Installation Ease ___5. Transaction Rate ___ 12. Operational Ease ___6. On-Line Data Entry ___ 13. Multiple Sites ___7. End User Efficiency ___ 14. Facilitate Change ___

Total Degree of Influence = _____

8.-81

6 - Determina il Value Adjustment Factor (VAF)

35%

1 - Data Communication

•I dati utilizzati nell'applicazione, sono ricevuti o inviati tramitefacilities di comunicazione

❏ Valori

•0 - applicazione esclusivamente batch o su PC stand alone

•1/2 - applicazione batch ma con data entry e/o stampe remote

•3 - raccolta dati on-line o interfacce ad una applicazione batch

•4 - l'applicazione gestisce solo un protocollo di comunicazione

•5 - l'applicazione gestisce più di un protocollo dicomunicazione

8.-82

6 - Determina il Value Adjustment Factor (VAF)

2 - Distributed data processing

•Dati o processi distribuiti sono una caratteristicadell'applicazione

❏ Valori

•0 - l'applicazione non prevede il trasferimento di dati o diprocessi fra diverse componenti del sistema

•1 - l'applicazione prepara dati per un'altro componente delsistema

•2/4 - l'applicazione prepara dati per il trasferimento, litrasferisce ed effettua l'elaborazione su un altro componentedel sistema

•5 - le funzioni vengono elaborate nel componente del sistemapiù appropriato

35%

8.-83

6 - Determina il Value Adjustment Factor (VAF)

3 - Performance• Gli obiettivi di performance dell'applicazione, richiesti o approvati

dall'utente, sia in termini di tempo di risposta che di durata delleapplicazioni, influenzano la progettazione, lo sviluppo l'installazionee le attività di supporto dell'applicazione

❏ Valori

• 0/3 - non sono richieste particolari performance dall'utente. Leconsiderazioni di analisi e disegno delle performance sono standard

• 4 - le performance richieste dall'utente sono stringenti al punto darichiedere un'attività di analisi delle performance durante il disegno

• 5 - l'ottimizzazione delle prestazioni riveste estrema criticità;strumenti per la valutazione delle prestazioni devono essere utilizzatiin fase di progettazione, sviluppo ed installazione

35%

8.-84

6 - Determina il Value Adjustment Factor (VAF)

4 - Heavily used configuration

•L'applicazione dovrà girare su una configurazionepesantemente utilizzata. Nel disegno e nella realizzazionedell'applicazione si dovrà usare un'attenzione particolare persopperire ai limiti imposti.

❏ Valori

•0/3 - l'applicazione opera su sistemi standard di produzionecon nessun tipo di vincoli

•4 - la configurazione del sistema hardware pone vincoliall'applicazione

•5 - in aggiunta, ci sono vincoli per l'applicazione sucomponenti distribuiti del sistema

35%

8.-85

6 - Determina il Value Adjustment Factor (VAF)

5 - Transaction rate

•L'alto volume di transazioni da elaborare influenza laprogettazione, lo sviluppo, l'installazione e le attività disupporto dell'applicazione

❏ Valori

•0/3 - il volume delle transazioni rientra nello standard

•4 - il volume delle transazioni richiede, in fase diprogettazione, particolari accorgimenti

•5 - il volume di transazioni richiede l'adozione di tecniche edi strumenti specifici in fase di progettazione, sviluppo einstallazione

35%

8.-86

6 - Determina il Value Adjustment Factor (VAF)

6 - On-line data entry

•Funzioni di controllo e di data-entry on-line sono presentinell'applicazione

❏ Valori

•0/2 - le transazioni di data-entry interattivo sono meno del16% delle transazioni

•3/4 - le transazioni di data-entry interattivo sono compresetra il 16 ed il 30% del totale

•5 - le transazioni di data-entry interattivo sono oltre il 30%delle transazioni totali

35%

8.-87

6 - Determina il Value Adjustment Factor (VAF)

7 - End user efficiency

•Le funzioni on-line sono progettate per ottenere il massimodell'efficienza per l'utente finale

❏ Valori

•0/3 - ci sono poche richieste speciali per quanto riguardal'efficienza dell'utente

•4 - gli aspetti legati ad un utilizzo efficiente da partedell'utente richiedono attenzione in fase di progettazione

•5 - l'interfaccia utente gioca un ruolo determinante: l'utilizzodi strumenti per il prototyping é indispensabile

35%

8.-88

6 - Determina il Value Adjustment Factor (VAF)

8 - On- line update

•L'applicazione prevede l'aggiornamento on-line delleinformazioni contenute negli Internal Logical File

❏ Valori

•0 - nessuno

•1/2 - il volume degli aggiornamenti é contenuto e il recovery èfacile

•3 - aggiornamento on-line degli Internal Logical File principali

•4 - devono essere previsti meccanismi di protezione dei dati

•5 - il volume degli aggiornamenti on-line tale da portare aconsiderazioni di costo nella scelta del recovery

35%

8.-89

6 - Determina il Value Adjustment Factor (VAF)

9 - Complex Processing

•Il software é caratterizzato da complessità di processocome:

• elaborazioni logiche e matematiche complesse

• meccanismi per garantire la sicurezza dei dati

• meccanismi di input/output complessi

• ...❏ Valori

•0 - nessuna delle caratteristiche citate é presente

•1/3 - alcune delle caratteristiche sopra citate

•4 - quasi tutte le caratteristiche sopra citate

•5 -tutte le caratteristiche sopra citate

35%

8.-90

6 - Determina il Value Adjustment Factor (VAF)

10 - Reusability

•L'applicazione e il codice dell'applicazione sono statiappositamente disegnati e sviluppati per essere utilizzatiin altre applicazioni

❏ Valori

•0/1 - l'applicazione é stata progettata e sviluppata peruno specifico utente

•2/3 - l'applicazione utilizza alcuni moduli checonsiderano le necessità di più di un utente

•4/5 - l'applicazione é progettata e sviluppata perdiventare generalizzata e usabile da diversi utenti

35%

8.-91

6 - Determina il Value Adjustment Factor (VAF)

11 - Installation ease

•La facilità di installazione e di conversione é unacaratteristica dell'applicazione

❏ Valori

•0/1 - nessuna richiesta particolare da parte dell'utenteriguardo all'installazione e la conversione

•2/3 - conversione ed installazione sono criticitàevidenziate dall'utente

•4/5 - devono essere realizzati e testati strumenti diconversione e installazione automatica

35%

8.-92

6 - Determina il Value Adjustment Factor (VAF)

12 - Operation ease

• La semplicità operativa é una caratteristica dell'applicazione, delleprocedure di start-up, di back-up e di recovery sono state provatedurante la fase di collaudo finale. L'applicazione minimizza lanecessità di attività manuali quali i mount di nastri, la gestione ditabulati e gli interventi operativi per proseguire nell'elaborazione

❏ Valori

• 0 - la gestione operativa dell'applicazione non é consideratacritica da parte dell'utente

• 1/2 - dove richieste, sono fornite procedure di start-up, back-up erecovery

• 3/4 - l'applicazione riduce al minimo la necessità di montaggionastri, o gestione di tabulati

• 5 - l'applicazione é stata disegnata in modo che il sistema operisenza l'intervento dell'operatore

35%

8.-93

6 - Determina il Value Adjustment Factor (VAF)

13 - Multiple sites

•L'applicazione é stata progettata sviluppata in modospecifico per essere installata in più ubicazioni perdifferenti organizzazioni

❏ Valori

•0 - nessuna richiesta utente di necessità di più di unainstallazione

•1/2 - la necessità di installazioni diverse é stataconsiderata durante il disegno, ma l'applicazione puòoperare solo in ambienti simili a quello originario

•3 - progettata per operare su diverso hw e/o sw di sistema

•4/5 - sono forniti documentazione e piani per supportarel'applicazione in luoghi diversi

35%

8.-94

6 - Determina il Value Adjustment Factor (VAF)

14 - Facilitate change

•L'applicazione é stata progettata e sviluppata in modospecifico per minimizzare gli impatti di modifiche. Peresempio:

• sono stati forniti strumenti di query generalizzati

• i parametri di controllo utente sono gestiti tramitetabelle aggiornabili dall'utente stesso

❏ Valori

•0 - la facilità di apportare modifiche all'applicazione non éconsiderata essenziale dall'utente

•1/3 - sono fornite facilitazioni per la gestione delle richiestedi query di media complessità

•4/5 - i dati di controllo sono inseriti in tabelle che vengonogestite dall'utente tramite processi on-line interattivi

35%

8.-95

6 - Determina il Value Adjustment Factor (VAF)

■ Inserire il Total Degree of Influence nella seguente formulaper produrre il VAF:

VAF = (TDI * 0.01) + 0.65

■ Il moltiplicatore risultante è un indicatore di complessitàmedia del sistema

35%

x 1.35

x 0.65

8.-96

7 - Calcola il Final Adjusted FP Count

■ Il calcolo finale dei FP dipende del tipo di conteggio:

� Development Project: le funzionalità per la costruzione diun nuovo sistema

� Enhancement Project: le funzionalità per fare aggiunte,variazioni e cancellazioni ad un sistema esistente

� Application: le funzionalità del sistema in esercizio

■ Development ed Enhancement project sono costituiti da:

� Application Functionality: le funzionalità rilasciate

� Conversion Functionality: necessarie per il rilascio delsistema

DFPEFP

AFP

8.-97

7 - Calcola il Final Adjusted FP Count

+Conversion

DEVELOPMENT

PROJECT

DELIVERED

+Conversion

ENHANCEMENT

APPLICATION

Inizializza

Modifica

I rapporti fra i vari tipi di conteggio

8.-98

7 - Calcola il Final Adjusted FP Count

Development Project: le funzionalità per la costruzione di unnuovo sistema

DFP = (UFP + CFP) * VAF

■ DFP: i FP per lo sviluppo del sistema (Development)

■ UFP: gli Unadjusted FP per le Application Functionality

■ CFP: gli Unadjusted FP per le Conversion Functionality

■ VAF: il Value Adjustment Factor

DFP

8.-99

7 - Calcola il Final Adjusted FP CountEnhancement Project: le funzionalità per fare aggiunte, variazioni

e cancellazioni ad un sistema esistente

EFP = ((ADD+CHGA+CFP) * VAFA) + (DEL * VAFB)

■ EFP: i FP di aggiornamento del sistema (Enhancement)

■ ADD: gli Unadjusted FP per le funzioni aggiunte

■ CHGA: gli Unadjusted FP per le funzioni modificate, dopo lamodifica

■ CFP: FP aggiunti per funzioni di conversione

■ VAFA: il VAF dell’applicazione dopo l’enhancement

■ DEL: gli Unadjusted FP delle funzioni cancellate

■ VAFB: il VAF dell’applicazione prima dell’enhancement

DFPEFP

8.-100

7 - Calcola il Final Adjusted FP CountApplication: le funzionalità del sistema in esercizio

■ Calcolo iniziale:

- l’utente riceve un nuovo sistema

- non ci sono variazioni

- il calcolo non include le funzionalità di conversione

AFP = ADD * VAF

■ AFP: i FP di un nuovo sistema

■ ADD: gli UFP delle funzioni realizzate dal progetto di sviluppo

DFPEFP

AFP

8.-101

7 - Calcola il Final Adjusted FP Count

DFPEFP

AFP

Application: le funzionalità del sistema in esercizio

■ (Ri)calcolo dopo un Enhancement Project

AFP = ((UFPB+ADD+CHGA)-(CHGB+DEL)) * VAFA

■ AFP: i FP del sistema modificato

■ UFPB: gli UFP prima delle modifiche

■ ADD: gli UFP delle funzioni aggiunte

■ CHGA: gli UFP delle funzioni modificate, dopo la modifica

■ CHGB: gli UFP delle funzioni modificate, prima dellamodifica

■ DEL: gli UFP delle funzioni cancellate

■ VAFA: il VAF del sistema dopo le variazioni

8.-102

Esempio: Costruzione e revisione di un’applicazione

Creazione applicazioneConversione archiviTotaleAggiunta di un video

CreazioneAggiornamentoModificaInquiry

TotaleCancella 2 tabulati da 5 FPTotaleModifica un tabulato

5 FP all’inizio5 FP finali

Totale

Project FP2.000

200

4444

10

5

Totali

2.200

16

10

5

Application FP2.000

0

4444

-10

0

Totali

2.000

2.016

2.006

2.006

8.-103

Conclusioni e considerazioni

■ Function Point e Produttività

■ Function Point e Qualità

■ Fattori influenzanti

■ Function Point e Ciclo di Vita

■ Obiezioni comuni

■ Function Point e strumenti

■ IFPUG

8.-104

FP e Produttività■ Produttività:

� “beni o servizi prodotti per unità di lavoro o spesa”

+ Definizione con i FP:

Output----------Input

Prodotto------------Sforzo

N° di FP---------------

Sforzo (ore)

8.-105

FP e ProduttivitàMisurazioni della Produttività:

■ Per lo sviluppo:

■ Per l’esercizio:

Project FPs------------------

Ore di sviluppo

Ore di supporto---------------------

Application FPs

8.-106

FP e QualitàMisurazioni della Qualità

■ Indice di Qualità:

■ Densità dei difetti:

Ore per riparare difetti------------------

N° di FP

N° di difetti---------------------

N° di FP

Qualità

8.-107

Fattori influenzanti

■ Produttività e qualità sono influenzate da:

� Persone

� Ambiente di produzione

� Strumenti di sviluppo

� Tecniche

Qualità

8.-108

FP e Ciclo di Vita del Progetto

Analisi eProgettazione

Implementazione Esercizio

Sfo

rzo

Definizionedei

requisitiAnalisifunz.

Analisitecnica

Programmazione Test InstallazioneManutenzione

Tempo

FP

8.-109

FP e linguaggi di programmazione

L i n g u a g g i o / a m b i e n t e N ° s t a t e m e n t p e r 1 F P

A s s e m b l e r ( 1 a g e n . ) 3 2 0C 1 2 8A N S I C O B O L 7 4 1 0 7V S C O B O L I I 9 1P a s c a l / P l - 1 / F o r t r a n 9 0 8 0

A n s i B a s i c 6 4

R P G I I I 5 6

C + + / J a v a 5 3

A D A 9 5 4 9

V i s u a l B a s i c / C l i p p e r 4 0

D b a s e I V / P a r a d o x 3 6

A P L 3 2

D e l p h i / L i s p 2 9S m a l l t a l k 2 1

H T M L 1 6

Capers Jones, 1998 ([email protected])8.-110

Obiezioni

■ L’analisi dei FP costa troppo

� l’1% del progetto (Es: 2 giorni per 1,5 milioni di LOC)

� E’ capìta dall’utente e quindi riduce i costi di negoziazione

■ I FP non stimano lo sforzo

� Vanno usati fattori di produttività che sono specifici dell’ambiente

produttivo, dell’architettura tecnica, del tipo di processo di produzione

■ I FP non danno stime affidabili

� Gli analisti certificati commettono errori minori del’ 1,5%

8.-111

FP e strumenti

8.-112

FP e strumenti

8.-113

FP e strumenti

8.-114

FP e strumenti

8.-115

FP e strumenti

8.-116

FP e strumenti

8.-117

IFPUG

■ Counting Practices Manual

■ Management Guidelines

■ Certification

8.-118

IFPUG

8.-119

IFPUG

8.-120

IFPUG

8.-121

Bibliografia sui Function Points

■ Domenico Natale - Qualità e Quantità nei sistemi software (Franco Angeli -1995)

■ David Garmus - Measuring the software process - (Yourdon PressComputing Series - 1996)

■ Function Point Counting Manual - Release 4.0 - (International FunctionPoint User Group 1994)

■ J.B.Dreger - Function Points Analysis - (Prentice Hall 1989)

■ Capers Jones - Applied Software Measurement - (Mc Graw-Hill 1991)

8.-122

Introduzione• Il controllo verifica se il progetto progredisce rispettando le

specifiche ed i vincoli del progetto• Monitoraggio continuo sulla esecuzione delle attività

Il controllo del progetto

• Poi, revisione di: - - Stime- - Schedulazione- - Incarichi

8.-123

Il controllo del progetto

I passi del processo di controllo1. Definire il sistema di misurazione

2. Raccogliere i dati sul progresso del progetto

3. Confrontare i progressi con il piano

4. Analizzare le discrepanze e le cause

5. Informare le persone coinvolte, MGMT, utente

6. Stabilire le azioni correttive per il prossimo periodo

8.-124

Il controllo del progetto

I passi del processo di controlloSistema di misurazione :

• Definito in pianificazione:- cosa misurare- come- quando

• Per il processo di produzione:- schedulazione- budget- personale

• Per il prodotto:- standard per le specifiche tecniche- standard per le specifiche funzionali

8.-125

Il controllo del progetto

L’analisi delle varianze

• Ogni mese o quindicina

• Dall’inizio del progetto

• Sul periodo contabile

• Sui costi

• Sulla schedulazione

- Le deviazioni sui costi e sul progresso del progetto

BUDGET EFFETTIVO

- Previsioni:

• Sui costi finali

• Sulla data di completamento

Earned Value Analysis8.-126

Il controllo del progetto

Il budget - la stima dei costi• Processo complesso

• Eseguito nella fase di pianificazione

1) - Scomposizione delle attività (WBS)

111 112 113

Attività110

2) - Determinazione delle figure professionali necessarie e relativi costi

Attività Fig. Prof. Costo/MM Mesi

Tecnico 2250 1111 Programm. 2300 1

Programm. 2300 2112 Analista 3000 1

Programm. 2300 2113 Analista 3000 3

(cont.)

8.-127

Il controllo del progetto

Il budget - la stima dei costi

3) - Distribuzione dei costi nel tempo

1 2 3 4 5 6 70

10

20

30

Costimensili

Costicumulativi

4,550

4,550

5,300 7,600 5,300 3,000 XXX

9,850 17,450 22,750 25,700 XXX

MIL

ION

I

8.-128

Il controllo del progetto

Il budget - la stima dei costi

4) - Distribuzione delle attivita’ nel tempo

Mesi0

113

112

111

1 2 3 4 5 6 7

Attività

1 - P

1 - T

1 - A

1 - P 1 - P

1 - P

1 - A

1 - P

1 - A 1 - A

8.-129

I Costi di Progetto

Riepilogo dei costi

I costi elementari di progetto possono essere riepilogati per:

1. attività - secondo gli elementi della WBS

2. classi di costo - secondo gli elementi della CBS

3. centri di responsabilità - secondo gli elementi della OBS

8.-130

Il controllo del progetto

Rilevazione delle attività svolte

• Compilazione dei “rapportini”

Costi effettivi per il lavoro svolto

Attività effettivamente svolte

Attività completate (al 100%!)

8.-131

Il controllo del progetto

Earned Value Analysis

1 - Budget valuecosto programmato inizialmente per un determinato periodo

2 - Actual valuecosto effettivo sostenuto in un determinato periodo

3 - Earned valuecosto di budget delle attività effettivamente svolte in undeterminato periodo

8.-132

Il controllo del progetto

TIMENOW Avanzamento fisico Avanzamento costi

Budget iniziale Budget aggiorn. da Budget Effettivo B E Acosto peso costo diff. cto % attesa %tot. % rilev. % tot. budget earned actual

attività (a) (p) (b) (b-a) (c) (p*c) (d) (p*d) (a*c) (a*d) (b*d)

PA1 19700 21,10 19700 100,00 21,10 100 21,10 19700 19700 19700

PA2 6925 8,10 7625 700 33,33 2,67 33,3 2,67 2308 2308 2541

PB1 16075 17,20 21038 5008 100,00 17,20 100 17,20 16075 16075 21083

PC1 15050 16,10 19750 4700 66,66 10,62 25,0 4,03 10033 3763 4938

SST 672 672 50,00 50,00 336 336 336

tot. 58422 62,50 68830 10408 51,59 45,0 48452 42182 48598

Altre 35050 37,50 35050

Totale 93472 100,0 103880 51,59 45,00 48452 42182 48598(BAC) (EAC)

Earned Value Analysis

8.-133

CONSUNTIVO PREVENTIVO RIMANENTE

base scopeextrawork

giorni 1 11 timenow

budgetiniziale

previsione inizialeprevisione aggiornata

varianzeBCWS

BCWPACWP

analisiscostamenti

azioni correttive simulazioni

feedforwardfeed

back

Il controllo del progetto

Earned Value Analysis

8.-134

Il controllo del progetto

Earned Value AnalysisBCWS = Budgeted Cost of Work Scheduled

The baseline value of a defined portion of the project's Budget at Completion(BAC). This portion is defined as a time period from the Project Start date upthrough the Project As-of date.

ACWP = Actual Cost of Work Performed

The cost of the completed portion of tasks based on the Actual usage (quantoeffettivamente speso alla data)

BCWP = Budgeted Cost of Work Performed

The cost of the completed portion of tasks based on the baseline usage data.Also called Earned Value.

8.-135

Il controllo del progetto

Earned Value Analysis

BAC

TACOGGI

BCWSACWP

BCWP

CV

SV

CV = BCWP - ACWP = Cost Variance

SV = BCWP - BCWS = Schedule Variance

BAC = Budget At CompletionTAC = Time At Completion

(cont.)

8.-136

Il controllo del progetto

Earned Value Analysis

CV : “Ho fatto del lavoro valutato BCWP soldi ed ho invece speso ACWP”.

SV : “Ho fatto del lavoro valutato BCWP soldi, invece avrei dovuto fare lavoro per BCWS”.

“Per riallinearmi con BCWS dovrò spendere SV soldi in più”.

8.-137

Il controllo del progetto

Earned Value Analysis

ECAC = Estimated Cost At Completion

ETAC = Estimated Time At Completion

ECAC =ACWP

BCWPx BAC ETAC =

BCWS

BCWPx TAC

ECAC sara maggiore di BAC (budget al completamento) se stiamo spendendodi più, cioè se ACWP (costi effettivi) e’ già maggiore di BCWP (budget per lavoroeffettivamente eseguito).ETAC dice di quanto il progetto sarà in ritardo quando BCWP è minore di BCWS(budget schedulato inizialmente).

8.-138

Qualità: aderenza alle specifiche1 - Verifiche tecniche

• Guidate dal capo progetto

• Sull’integrità tecnica del progetto

• Spinge il gruppo di lavoro a chiedere aiuto sugli aspetti tecnici

• In ogni momento, su richiesta del capo progetto o del gruppo di lavoro

• Riunioni periodiche prestabilite con partecipazione del MGMT

• Verificano che i deliverables siano:

- - validi- - nei tempi- - usabili per il controllo

Il controllo del progetto

8.-139

Il controllo del progetto

Qualità: aderenza alle specifiche

2 - Validazioni

• Il MGMT che ha commissionato il progetto• In momenti cruciali del progetto: fine fase e altri da stabilire• Sui deliverables cruciali: quelli di fine fase e altri da stabilire• Dicono se il prodotto è conforme alle specifiche (lo validano)• Forniscono l’approvazione a proseguire con la prossima fase

8.-140

Il controllo del progetto

Controllo dei cambiamenti

• Modifiche funzionali (cosa)• Modifiche tecniche (come)• Modifiche al gruppo di lavoro• Nuove funzioni• ... qualsiasi alterazione alla schedulazione iniziale

• Documentare• Rimandare, se possibile, a fine fase• Valutare (costi/benefici)• Chiedere l’approvazione del MGMT

• Quando la schedulazione dei lavori è stata accettata

8.-141

Il controllo del progetto

Controllo dei cambiamenti

I cambiamenti sono inevitabili, bisogna aspettarseli e gestirli

Riconfigurazione dellaschedulazione

Modifica approvata

• Risorse• Tempo• Danaro

Documentare al MGMT leripercussioni su:

8.-142

Il controllo del progetto

Il rapporto sullo stato del progetto

Il miglior rapporto è quello che il MGMTvorrà leggere e comprendere

• Dati in forma di sommario• Problemi di interesse per il MGMT e le possibili cause• Azioni che il MGMT può intraprendere per risolvere i problemi• Discrepanze sul piano• Curve sui consumi (budget, risorse)• Schedulazione delle macro-attività

8.-143

Il controllo del progetto

Controllo sulla documentazione del progetto

• Un valido controllo di progetto include il controllo sui suoi diversi documenti

• Le comunicazioni ufficiali e condivise da molti:

- - descrizione del prodotto- - rapporti sullo stato del progetto- - richieste e autorizzazioni di modifiche- - norme sul controllo qualità- - documentazione tecnica

• Libreria del progetto:- - documenti sul progetto vero e proprio

(specifiche, standard), .....)- - documenti correlati al progetto (autorizzazioni, stato, contratti, .....)

ProgettoXYZ

ProgettoXYZ ?

8.-144

I prodotti software per la gestione dei progetti

Introduzione- Quantità e complessità dei calcoli per:

- - stime- - piani- - consuntivi- - scostamenti- - ricalcoli

- Difficile la gestione manuale- Necessità di strumenti

- Crescita della complessità e dei costi dei progetti- Domanda di un maggior controllo

- Offerta sul mercato di una grande quantità di prodotti- Come orientarsi?

8.-145

I prodotti software per la gestione dei progetti

Quando serve un computer- Non sempre:

- - in piccoli progetti: benefici costi (tempo e danaro)

- Può non bastare:

- - sw molto complesso: il CP non basta, servono specialisti (maggiori costi)

- Che tipo di computer?

- - PC, MF, RETE- - collocazione geografica del progetto- - la sua organizzazione

8.-146

I prodotti software per la gestione dei progetti

Quando serve un computer

- Definizione delle attività (WBS):- - da una base dati precostituita- - legami logici già definiti

- Stime dei tempi:- - calcoli automatici- - sperimentazioni

- Pert e cammini critici:- - grafica- - sperimentazioni

- Schedulazione e incarichi:- - centinaia di dati da trattare!- - stesura del calendario- - disponibilità del personale- - distribuzione degli incarichi (persona-attività-periodo)- - la coerenza interna

VANTAGGI

(Cont.)

8.-147

I prodotti software per la gestione dei progetti

Quando serve un computer

- Centralizzazione delle informazioni:- - reti- - stampe selettive- - multiprogetto/fasi

- Analisi delle discrepanze!

- Controllo sulle modifiche ai piani:- - la natura dinamica dei progetti!

VANTAGGI

8.-148

I prodotti software per la gestione dei progetti

La scelta di un prodotto

- Prerequisito alla scelta:

- - conoscenza dei concetti di pianificazione, schedulazione, controllo

- Aspettative realiste:

- - nessun prodotto è così sofisticato da coprire tutte le esigenze del CP

8.-149

I prodotti software per la gestione dei progetti

La scelta di un prodotto1. Determinare i propri requisiti per la gestione dei progetti (Cosa voglio)

- - chi userà il prodotto ?- un esperto, il CP, tutti- quanto è facile l’apprendimento

- - quali vincoli impongono hw e sw?- sistema operativo- uso distribuito (reti)

- - quali caratteristiche sono essenziali? belle da avere ma non indispensabili ora ?

- funzioni di Project Management- grafica, colore- import/export

- - quanto si intende spendere ?- costi iniziali- hw- costi nascosti: training, supporto

2. Analisi dei fornitori e loro utenti (Cosa esiste)8.-150

RIEPILOGO1. Cosa

si suddivide il progetto in elementi di dettaglio crescente(WBS)

2. Comesi disegna il reticolo delle precedenze

3. Risorse ”chiave”si associano le risorse chiave alle attività

4. Stima del progettoSi stimano i tempi complessivi del progetto e si ripartisconosulle varie attività

5. Vincolisi impongono vincoli sulla disponibilità delle risorse e vincolitemporali

8.-151

RIEPILOGO

6. Quandosi sceglie la schedulazione che rappresenta il migliorprogramma per il progetto

7. Costo delle risorsealle risorse vengono assegnati i costi unitari

8. Quanto costasi redige il budget dei costi diretti