Fondamenti di Project management e Stime di Progetto G. Berio.
-
Upload
petronella-marrone -
Category
Documents
-
view
216 -
download
2
Transcript of Fondamenti di Project management e Stime di Progetto G. Berio.
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
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
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
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
• 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!
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…
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
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.
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
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
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
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
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
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
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
previsti 10 task, denotati
i task
task ora
task
Sistema Europeo! In USA usano il sistema duale cioè Tasks on Arrow.
task
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)
Critical path: step 1
• To assign the earliest start time to tasks (leading to the earliest time to complete the project)
Critical path: step 2
• Starting from the earliest project ending time, to evaluate the latest start time of each task
Critical path
• The critical path comprises tasks where earliest start time is the same as latest start time
task critici
task
Earliest start time
Latest start time
Earliest end time
Latest end time
taskTask critico
task
task
tutti i taskcritici
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!
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
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
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.
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)
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
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:
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.)