Fondamenti di Project management e Stime di Progetto G. Berio.

36
Fondamenti di Project management e Stime di Progetto G. Berio

Transcript of Fondamenti di Project management e Stime di Progetto G. Berio.

Page 1: Fondamenti di Project management e Stime di Progetto G. Berio.

Fondamenti di Project management e Stime di Progetto

G. Berio

Page 2: Fondamenti di Project management e Stime di Progetto G. Berio.

Gestione dell’Ingegneria del Software

• Project management integrato da

• Stime specializzate di

• Tempi, costi e risorse (umane) necessarie allo sviluppo del prodotto software

Page 3: Fondamenti di Project management e Stime di Progetto G. Berio.

Project management• Gestione del progetto di sviluppo del software• Basato su un modello di processo che indica, in

termini di attività da svolgere, come il software dovrebbe essere sviluppato

• Il progetto è precisato da una serie di Task (compiti) dettagliati che realizzano le attività

• Può includere o meno la fase di definizione dei requisiti

Page 4: Fondamenti di Project management e Stime di Progetto G. Berio.

Project management and SE

Requirement Engineering (RE)

Design Engineering (DE)

Project managementFor RE

Project managementFor DE

Project Management

FeasibilityArchitecture(s) and

Requirement Specifications can be used as the main Input Information

Page 5: Fondamenti di Project management e Stime di Progetto G. Berio.

Project management: Objectives

• To define a detailed net of interrelated tasks (with duration), according to the software product to be delivered (i.e. using a process model, verification and validation, taking into account the risks etc.) --- planning

• To assign estimated times, resources, and costs, global and specific to each task --- scheduling

• To monitor and control (undertake corrective actions) the resources consumptions, actual times and actual costs, during the project execution

Page 6: Fondamenti di Project management e Stime di Progetto G. Berio.

• Project planning objective: to identify the project tasks and to assign duration to them.

• Probably the most time-consuming project management activity.

• Continuous activity from initial concept through to software delivery. Plans must be regularly revised as new information becomes available.

• A project plan can be composed of several specialised plans

Project planning

Project plan is not static!

Page 7: Fondamenti di Project management e Stime di Progetto G. Berio.

Specialised Project Planning

Requirement Engineering (RE)

Design Engineering (DE)

Project managementFor RE

Project managementFor DE

Project Management

FeasibilityArchitecture(s) and

Requirement Specifications can be used as the main Input Information

Qualty Assurance Plan

Add tasks for specific aspects, for instance…

Page 8: Fondamenti di Project management e Stime di Progetto G. Berio.

Project scheduling and monitoring• Project scheduling objectives: given a project plan,

to find out and least one consistent assignment of h-resources to tasks and to evaluate costs of the project

• Project monitoring objectives: given a project scheduling, to monitor duration of tasks and project, to monitor h-resource consumption and costs, and in case of deviation, to activate a ri-planning and ri-scheduling, maybe adding corrective tasks

Page 9: Fondamenti di Project management e Stime di Progetto G. Berio.

Task networks and Bar charts

• Graphical notations used to illustrate the project plan, and then schedule and milestones (and so on) in term of the project breakdown into tasks.

• Task charts show task dependencies and should be acyclic

• Bar charts show schedule against calendar time.

Page 10: Fondamenti di Project management e Stime di Progetto G. Berio.

Task durations and dependencies

Activity Duration (days) Dependencies

T1 8

T2 15

T3 15 T1 (M1)

T4 10

T5 10 T2, T4 (M2)

T6 5 T1, T2 (M3)

T7 20 T1 (M1)

T8 25 T4 (M5)

T9 15 T3, T6 (M4)

T10 15 T5, T7 (M7)

T11 7 T9 (M6)

T12 10 T11 (M8)

with milestones

Page 11: Fondamenti di Project management e Stime di Progetto G. Berio.

Task network: plan and (partial) schedule

start

T2

M3T6

Finish

T10

M7T5

T7

M2T4

M5

T8

4/7/03

8 days

14/7/03 15 days

4/8/03

15 days

25/8/03

7 days

5/9/03

10 days

19/9/03

15 days

11/8/03

25 days

10 days

20 days

5 days25/7/03

15 days

25/7/03

18/7/03

10 days

T1

M1 T3T9

M6

T11

M8

T12

M4

Page 12: Fondamenti di Project management e Stime di Progetto G. Berio.

Tasks con durata nulla• Possono rappresentare milestones (in cui si

sincronizzano eventualmente risultati provenienti da molti tasks)

• Esempio di milestone: “il DFD Esteso parte del modello analitico riguardante i casi d’uso fermare e partire è disponibile”;

• Possono rappresentare Task con durata di ordini di grandezza inferiori alla maggior parte dei Task del progetto

Page 13: Fondamenti di Project management e Stime di Progetto G. Berio.

Task timeline (bar chart)

4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

T4

T1T2

M1

T7T3

M5

T8

M3

M2

T6

T5

M4

T9

M7

T10

M6

T11M8

T12

Start

Finish

Calendar

Page 14: Fondamenti di Project management e Stime di Progetto G. Berio.

Adding H-resources

4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

T4

T1T2

M1

T7T3

M5

T8

M3

M2

T6

T5

M4

T9

M7

T10

M6

T11M8

T12

Start

Finish

Ri is the type of h-resource and

is the task Tj within tmin and tmax

R1 1 1

R2 2 2 2 2

R3 3 3

maxmin

maxmin

ttt,1j

t,tji )T(R

)T( maxmin t,tj

Page 15: Fondamenti di Project management e Stime di Progetto G. Berio.

Global staff (H-resource) allocation

Named h-resources!

4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

P1 T4

P2 T1 P1 T11

P1 T12

P1 T1

P1 T3

P2 T2

P1 T2

P1 T6 P1 T1

P1 T7

P2 T3

Fred

Jane

Anne

Mary

Jim

Usually, not accepted

Page 16: Fondamenti di Project management e Stime di Progetto G. Berio.

Typical steps in project planning and scheduling

• To identify the tasks and their durations• To evaluate consistency of the task net• To evaluate the critical path on the tasks net• Using the critical path, to revise the tasks net

•To evaluate/assign (h-)resources required by tasks

•To move tasks, try to find out at least one consistent assignment of h-resources to tasks

•To assign costs to tasks and (verify the feasibility)

plan

ning

sceh

duli

ng

Page 17: Fondamenti di Project management e Stime di Progetto G. Berio.

previsti 10 task, denotati

i task

task ora

Page 18: Fondamenti di Project management e Stime di Progetto G. Berio.

task

Page 19: Fondamenti di Project management e Stime di Progetto G. Berio.

Sistema Europeo! In USA usano il sistema duale cioè Tasks on Arrow.

task

Page 20: Fondamenti di Project management e Stime di Progetto G. Berio.

Consistency of the task net

• Verify the task net is acyclic

• For instance, use the Marimont algorithm on the net associated matrix

B D

D

C

B

A

DCBA

1

Marimont: eliminare di volta in volta righe e colonne che non contengono 1 (fino ad eliminarle tutte)

Page 21: Fondamenti di Project management e Stime di Progetto G. Berio.
Page 22: Fondamenti di Project management e Stime di Progetto G. Berio.

Critical path: step 1

• To assign the earliest start time to tasks (leading to the earliest time to complete the project)

Page 23: Fondamenti di Project management e Stime di Progetto G. Berio.
Page 24: Fondamenti di Project management e Stime di Progetto G. Berio.

Critical path: step 2

• Starting from the earliest project ending time, to evaluate the latest start time of each task

Page 25: Fondamenti di Project management e Stime di Progetto G. Berio.
Page 26: Fondamenti di Project management e Stime di Progetto G. Berio.

Critical path

• The critical path comprises tasks where earliest start time is the same as latest start time

Page 27: Fondamenti di Project management e Stime di Progetto G. Berio.

task critici

task

Earliest start time

Latest start time

Earliest end time

Latest end time

Page 28: Fondamenti di Project management e Stime di Progetto G. Berio.

taskTask critico

task

task

tutti i taskcritici

Page 29: Fondamenti di Project management e Stime di Progetto G. Berio.

Proprietà del Cammino Critico

• Non è possibile ritardare l’inizio di nessun task del cammino critico senza ritardare l’intero progetto

• Quindi I ed F nell’esempio ne possono essere iniziate in ritardo ne possono essere terminate in ritardo; in una parola, sono critiche!

Page 30: Fondamenti di Project management e Stime di Progetto G. Berio.

To revise the critical path• Un’attività critica di lunga durata e con

molti archi entranti potrebbe essere suddivisa in attività più semplici e di minor durata

• Un’attività critica di lunga durata e con molti archi uscenti potrebbe essere suddivisa in attività più semplici e di minor durata

FF1

F2

15

22

39

Page 31: Fondamenti di Project management e Stime di Progetto G. Berio.

Verifying the consistency of the h-resource assignment

R1 10

(5)

R2 5

H dura 21 e inizia a 0 e finisce dopo 16 gg

B può iniziare tra 7 e 29 e quindi terminare dopo 8: si è deciso di iniziare a 21 per evitare che H e B richiedano troppo risorse di quelle disponibili

Soluzione 1

Soluzione 2

4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

B

H

Start

Finish

B

Page 32: Fondamenti di Project management e Stime di Progetto G. Berio.

CPM e PERT

• La tecnica vista è nota come CPM anche se talvolta è indicata come PERT

• PERT prevede che la durata dei compiti sia distribuita come una v.a. triangolare o beta

• Differisce di poco dal CPM poiché i calcoli fatti usano il valor medio delle durate

• Tuttavia è possibile calcolare anche una deviazione standard e con quale probabilità il progetto viene eseguito con una durata diversa da quella media.

Page 33: Fondamenti di Project management e Stime di Progetto G. Berio.

PERT • Distribuzione triangolare dei tempi dei compiti

• o una sua generalizzazione, distribuzione Beta

Non probabile (A)

Non probabile (C)

+ probabile (B)

Media= (A+B+C)/3

2/(C-A)

Page 34: Fondamenti di Project management e Stime di Progetto G. Berio.

PERT

)T(E)Path(E

))Path(EPath(S

1Path

)T(S

TPath

iin

nnn

*n

ii

2in

n

iin

è una N(0,1) per n

dove E è la media (o speranza matematica)

Le condizioni aggiuntive sono verificate per le distribuzioni beta

Page 35: Fondamenti di Project management e Stime di Progetto G. Berio.

PERT

• Con le precedenti formule è possibile stimare qual è la probabilità di un completamento oltre la data media ovvero prima della data media

)aduratamediPath(obPr *n oltre la data media:

Page 36: Fondamenti di Project management e Stime di Progetto G. Berio.

Generalizzazione

• PERT permette una durata in probabilità

• Nelle tecniche di project-management più sofisticate è possibile avere probabilità di scelta dei cammini nel grafo dei compiti (GAN, GERT etc.)