SlideShare a Scribd company logo
Progettazione di Applicazioni Web
corso del Master in Web Technology
a.a. 2017-2018
https://app.schoology.com/course/1511186315/
Henry Muccini
Università degli Studi dell’Aquila
3. Pianificazione del lavoro del team
MWT– Progettazione di Applicazioni Web Henry Muccini
2
Copyright Notice
Il materiale riportato in queste slide puo’ essere
riutilizzato, parziale o totalmente, a patto che le fonti
e gli autori vengano citati
Henry Muccini
MWT– Progettazione di Applicazioni Web Henry Muccini
3
MWT– Progettazione di Applicazioni Web Henry Muccini
4
Principi (da L2)
#principio: selezionare un insieme di tool di
progettazione e sviluppo in modo chiaro e senza
proliferazione
#principio: individuare un unico canale per lo scambio
dei contenuti, definendo regole di classificazione e
nomenclatura
#principio: Priorità nei requisiti, mai partire dalla
comfort-zone, anticipare se possibile i punti 'rischiosi';
MWT– Progettazione di Applicazioni Web Henry Muccini
5
Difficolta’ (da L2)
#difficoltà: la difficoltà a volte è indirizzare il cliente
verso la soluzione corretta
#difficoltà: organizzare il team e pianificare tempi e
scadenze
#difficoltà: interpretazione errata dei messaggi e
conversazione all'interno del team
Project Plan
MWT– Progettazione di Applicazioni Web Henry Muccini
7
The Project Plan
Think to the “Marriage Plan”…
The project plan sets out:
– The resources available to the project
– The work breakdown
– A schedule for the work
Risk
analysis
MWT– Progettazione di Applicazioni Web Henry Muccini
8
VIDEO:https://www.youtube.com/watch?v=qkuUBcmmBpk
MWT– Progettazione di Applicazioni Web Henry Muccini
9
Considerazioni dal Video
Work breakdown
MWT– Progettazione di Applicazioni Web Henry Muccini
11
Work breakdown and Planning
A Work breakdown reflects the decomposition
of a project into subactivities down to a level
needed for effective planning and control
Project planning involves scheduling all
activities such that the constraints are
satisfied and resource limits are not
exceeded.
MWT– Progettazione di Applicazioni Web Henry Muccini
12
Let us model this…
?
MWT– Progettazione di Applicazioni Web Henry Muccini
13
Activities
Have a beginning and end
– Often marked by milestones
– A milestone is a scheduled event for which some person
is held accountable and which is used to measure and
control progress.
Consume resources
– e.g. people and computer time
Have dependencies
– e.g. Can’t code before we have a specification
– Expressed as constraints, a.k.a. precedence relations
– Usually temporal, but sometimes deliverables
MWT– Progettazione di Applicazioni Web Henry Muccini
14
Representing Activities
Work Breakdown Structure (WBS)
– Graphical representation of a project and constituent activities
– Can be abstract or highly detailed
– Different types exist
MWT– Progettazione di Applicazioni Web Henry Muccini
15
Let us use a real example - WBS
MWT– Progettazione di Applicazioni Web Henry Muccini
16
How to represent activities and their
link
PERT
GANTT chart
Activity graph
MWT– Progettazione di Applicazioni Web Henry Muccini
17
PERT Charts
PERT = Program Evaluation and Review Technique
– First used in 1950s on Polaris missile program
Most useful for finding dependencies and minimum
schedule time
MWT– Progettazione di Applicazioni Web Henry Muccini
18
Gantt Chart
Invented by Henry Gantt in 1910
– Engineer and management scientist
– Used on Hoover dam project
Like a bar chart version of PERT chart with extra
features
– Shows activities on a calendar
– Depicts additional temporal dependencies
• Start activity after the start of…
• Start activity before the end of…
– Allocate resources to tasks
• Budgeting
• Can ask what-if questions about allocations
MWT– Progettazione di Applicazioni Web Henry Muccini
19
Example in MS Project: Conference planning
MWT– Progettazione di Applicazioni Web Henry Muccini
20
Tools: some examples
MS Project
GANNT in Excel:
https://www.youtube.com/watch?v=TjxL_hQn5w0
Gantter for Google Drive
MWT– Progettazione di Applicazioni Web Henry Muccini
21
Activity network
A graph, where:
– Arrow = activity
– Node = completion of activity
Picture taken from: http://www.cs.mcgill.ca/~cs251/OldCourses/1997/topic30/images/graph2-2-ff.gif
MWT– Progettazione di Applicazioni Web Henry Muccini
22
Critical Path
A critical path is a sequence of activities without
slack time.
– example
If activities on a critical path are delayed, the total
project is delayed as well.
Found by performing a breadth-first search while
tracking the duration
MWT– Progettazione di Applicazioni Web Henry Muccini
23
Example: Activity network
star t
T2
M3
T6
Finish
T10
M7T5
T7
M2
T4
M5
T8
4/7 /03
8 da ys
14/7 /03 15 da ys
4/8/03
15 da ys
25/8/03
7 da ys
5/9/03
10da ys
19/9/03
15 da ys
11/8/03
25 da ys
10 da ys
20 da ys
5 da ys
25/7 /03
15 da ys
25/7 /03
18/7 /03
10 da ys
T1
M1 T3
T9
M6
T11
M8
T12
M4
Project Tracking
MWT– Progettazione di Applicazioni Web Henry Muccini
25
Project Tracking
Effort
– Individuals record how much time is spent on various
tasks
– Cumulative data can be compared to the plan
Progress
– Milestones
– Reports
Schedule slippage
– Monitor closely on critical path
Changes in activities
– Need to re-plan (and re-schedule?)
MWT– Progettazione di Applicazioni Web Henry Muccini
26
Recall--Why software fails: other reasons
Why (according to developers/testers/customers)
– The programmers did not tell the truth about the real
status of code, and lower than expected productivity
– The management understimated time and did not carefully
plan the project
– The customer did not know what he wanted
We do not produce just
Software, we produce
systems
MWT– Progettazione di Applicazioni Web Henry Muccini
27
Multiple stakeholders,
with different concerns!!
MWT– Progettazione di Applicazioni Web Henry Muccini
28
In the project…
Estimation & project planning
MWT– Progettazione di Applicazioni Web Henry Muccini
30Project plans are based on effort
estimates!
Poor Estimation Techniques
– Guessing
– Parkinson's Law
– Pricing to win
– Budget method
Discuss
MWT– Progettazione di Applicazioni Web Henry Muccini
31
Better Estimation Techniques
Based on experience or hard data collection
– Such techniques requires to “extensively record historical
data”
Informal:
– Expert judgment
– Estimation by analogy
– Variation: Delphi method
Formal:
– Algorithmic cost modeling
MWT– Progettazione di Applicazioni Web Henry Muccini
32
Informal
Expert judgment
+ Relatively cheap estimation method.
+ Can be accurate if (AND ONLY IF) experts have direct
experience with similar systems
- Does not use hard data
Estimation by analogy
+ Accurate if project data available
- Impossible if no comparable project has been undertaken.
- Estimates can be inaccurate if details overlooked.
-Subsequent similar projects can be quicker.
MWT– Progettazione di Applicazioni Web Henry Muccini
33
Informal: Delphi Method
Idea: Create a group expert opinion, while counterbalancing
personality factors in process
Group of expert estimators + moderator
1. Experts independently create estimates.
2. Moderator collects written estimates from individuals.
3. Estimates are distributed to group.
– No names
4. Experts deliver new estimates based on new information
from moderator.
5. Continue until consensus is reached.
MWT– Progettazione di Applicazioni Web Henry Muccini
34
Formal: Algorithmic Cost Modeling
Cost and development time for a project is estimated from an
equation
– E.g., Linear model
• E = a0 + i=1…n aixi [Nelson]
• E = man/months needed
Effort estimates are based on size
– Highly inaccurate at start of project
Size is usually given in lines of code, which not reflect difficulty
– Some short programs are harder to write than long ones
– Lines of code ≠ effort
• Not all activities produce code
– Programming Language: Java vs. assembler
MWT– Progettazione di Applicazioni Web Henry Muccini
35
So, what can I do?
You
– Don’t have a historical database
– Are not an expert (usually)
Generate estimates using multiple models and compare
based on your guesses or assumptions
– Candidate models:
• Walston and Felix (simple and easy to use)
– E = 5.2 KLOC0.91
• COCOMO 2 (complicated and detailed)
• DeMarco (based on UI requirements)
• Brooks, p. 20
– 1/3 planning, 1/6 coding, ¼ component tests and early system test, ¼
system test
MWT– Progettazione di Applicazioni Web Henry Muccini
36
Esempio 1: NdR 2017
► UnivAq Street Science
& SHARPER
► 114 eventi
► Un solo giorno
► Un’unica app
MWT– Progettazione di Applicazioni Web Henry Muccini
37
Esempio 2: Uffizi
MWT– Progettazione di Applicazioni Web Henry Muccini
38
Esempio 3: DNE
Risk Management
MWT– Progettazione di Applicazioni Web Henry Muccini
40
Risk management
Risk management is concerned with identifying risks and
drawing up plans to minimise their effect on a project.
“A risk is a possible future negative event that may affect
the success of an effort” [VV8.3]
– Project risks affect schedule or resources;
– Product risks affect the quality or performance of the software
being developed;
– Business risks affect the organisation developing or procuring the
software.
Analogy with “Software Faults and Software Failures”
MWT– Progettazione di Applicazioni Web Henry Muccini
41The risk management process
[from Sommerville book]
Risk avoidance
and contingency
plans
Risk planning
Prioritised risk
list
Risk analysis
List of potential
risks
Risk
identification
Risk
assessment
Risk
monitoring
MWT– Progettazione di Applicazioni Web Henry Muccini
42
The risk management process [from Sommerville book]
1. Risk identification
– Identify project, product and business risks;
2. Risk analysis
– Assess the likelihood and consequences of these risks;
– Called “Risk Exposure” in VV
3. Risk planning
– Draw up plans to avoid or minimise the effects of the risk;
– From VV:
• risk avoidance, transfer, acceptance
• Like in deadlock handling
4. Risk monitoring
– Monitor the risks throughout the project;
Discuss
In pratica?
MWT– Progettazione di Applicazioni Web Henry Muccini
44
GANTT diagrams tools
Project Management tools
MWT– Progettazione di Applicazioni Web Henry Muccini
45
Project management tools – free
https://zapier.com/blog/free-project-management-software/
MWT– Progettazione di Applicazioni Web Henry Muccini
46
Kanban boards
https://zapier.com/learn/project-management/kanban-board/
MWT– Progettazione di Applicazioni Web Henry Muccini
47
Project management tools
https://www.lifehack.org/articles/technology/the-best-8-project-management-apps.html

More Related Content

PPT
Project sheduling
PPTX
Projectmanagement anupama-Amit Payal
PPT
Pert cpm-1226075768298180-8 (1)
PPT
Lecture 6
PDF
Web Engineering L6: Software Architecture for the Web (6/8)
PDF
Web Engineering L8: User-centered Design (8/8)
PPT
project on software industry
PPT
WBS PROJECT
Project sheduling
Projectmanagement anupama-Amit Payal
Pert cpm-1226075768298180-8 (1)
Lecture 6
Web Engineering L6: Software Architecture for the Web (6/8)
Web Engineering L8: User-centered Design (8/8)
project on software industry
WBS PROJECT

Similar to Web Engineering L3: Project Planning (3/8) (20)

PPTX
Lect 1 (Introduction to Web Engineering).pptx
PDF
"We are doing it wrong."
PPT
IWMW 2002: Centralised Control or Departmental Freedom?
PPT
Software Project Management (lecture 4)
PPT
Chapter03
PDF
I progetti nei contesti Lean - Agile Project Management: un caso reale
PDF
The essentials of a digital project
PPTX
Software Engineering Capstone SWE 481 Group 4 Group Project Phase 5
PDF
Programming for Non-programmers PFNP @ Razorfish
PPT
Web engineering cse ru
PPT
1588493433-activity-plannindhiislsksjshsjsjaj
DOC
Outline Dream Presentatie
PDF
Programming for Non-Programmers - SXSW Vegas 2014
PDF
Web Engineering A Practioners Approach 1st Edition Roger Pressman
PDF
UML per il Web: User Centric Design
PPTX
Web Engineering - Web Applications versus Conventional Software
PPT
Best Practice Information Architecture
PPT
APSI - Analisa Perancangan Sistem Informasi
PDF
Introduzione alle metodologie di sviluppo agile
PPT
Web Engineering
Lect 1 (Introduction to Web Engineering).pptx
"We are doing it wrong."
IWMW 2002: Centralised Control or Departmental Freedom?
Software Project Management (lecture 4)
Chapter03
I progetti nei contesti Lean - Agile Project Management: un caso reale
The essentials of a digital project
Software Engineering Capstone SWE 481 Group 4 Group Project Phase 5
Programming for Non-programmers PFNP @ Razorfish
Web engineering cse ru
1588493433-activity-plannindhiislsksjshsjsjaj
Outline Dream Presentatie
Programming for Non-Programmers - SXSW Vegas 2014
Web Engineering A Practioners Approach 1st Edition Roger Pressman
UML per il Web: User Centric Design
Web Engineering - Web Applications versus Conventional Software
Best Practice Information Architecture
APSI - Analisa Perancangan Sistem Informasi
Introduzione alle metodologie di sviluppo agile
Web Engineering
Ad

More from Henry Muccini (20)

PPTX
Human Behaviour Centred Design
PDF
How cultural heritage, cyber-physical spaces, and software engineering can wo...
PDF
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
PDF
Turismo 4.0: l'ICT a supporto del turismo sostenibile
PDF
Sustainable Tourism - IoT and crowd management
PDF
Software Engineering at the age of the Internet of Things
PDF
The influence of Group Decision Making on Architecture Design Decisions
PDF
An IoT Software Architecture for an Evacuable Building Architecture
PDF
Web Engineering L7: Sequence Diagrams and Design Decisions (7/8)
PDF
Web Engineering L5: Content Model (5/8)
PDF
Web Engineering L2: Requirements Elicitation for the Web (2/8)
PDF
Web Engineering L1: introduction to Web Engineering (1/8)
PDF
Web Engineering L4: Requirements and Planning in concrete (4/8)
PDF
Collaborative aspects of Decision Making and its impact on Sustainability
PDF
Engineering Cyber Physical Spaces
PDF
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
PDF
Exploring the Temporal Aspects of Software Architecture
PPTX
EasyLine: call4ideas_2016
PDF
The role of MDE in Software Architecture Descriptions
PDF
Euroweb+ meeting at the University of L'Aquila, Italy
Human Behaviour Centred Design
How cultural heritage, cyber-physical spaces, and software engineering can wo...
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
Turismo 4.0: l'ICT a supporto del turismo sostenibile
Sustainable Tourism - IoT and crowd management
Software Engineering at the age of the Internet of Things
The influence of Group Decision Making on Architecture Design Decisions
An IoT Software Architecture for an Evacuable Building Architecture
Web Engineering L7: Sequence Diagrams and Design Decisions (7/8)
Web Engineering L5: Content Model (5/8)
Web Engineering L2: Requirements Elicitation for the Web (2/8)
Web Engineering L1: introduction to Web Engineering (1/8)
Web Engineering L4: Requirements and Planning in concrete (4/8)
Collaborative aspects of Decision Making and its impact on Sustainability
Engineering Cyber Physical Spaces
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
Exploring the Temporal Aspects of Software Architecture
EasyLine: call4ideas_2016
The role of MDE in Software Architecture Descriptions
Euroweb+ meeting at the University of L'Aquila, Italy
Ad

Recently uploaded (20)

PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPTX
1. Introduction to Computer Programming.pptx
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPT
What is a Computer? Input Devices /output devices
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
Developing a website for English-speaking practice to English as a foreign la...
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Module 1.ppt Iot fundamentals and Architecture
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
1. Introduction to Computer Programming.pptx
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
What is a Computer? Input Devices /output devices
Programs and apps: productivity, graphics, security and other tools
A novel scalable deep ensemble learning framework for big data classification...
Developing a website for English-speaking practice to English as a foreign la...
Group 1 Presentation -Planning and Decision Making .pptx
Hindi spoken digit analysis for native and non-native speakers
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Zenith AI: Advanced Artificial Intelligence
NewMind AI Weekly Chronicles – August ’25 Week III
Enhancing emotion recognition model for a student engagement use case through...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Tartificialntelligence_presentation.pptx
A contest of sentiment analysis: k-nearest neighbor versus neural network
observCloud-Native Containerability and monitoring.pptx
How ambidextrous entrepreneurial leaders react to the artificial intelligence...

Web Engineering L3: Project Planning (3/8)

  • 1. Progettazione di Applicazioni Web corso del Master in Web Technology a.a. 2017-2018 https://app.schoology.com/course/1511186315/ Henry Muccini Università degli Studi dell’Aquila 3. Pianificazione del lavoro del team
  • 2. MWT– Progettazione di Applicazioni Web Henry Muccini 2 Copyright Notice Il materiale riportato in queste slide puo’ essere riutilizzato, parziale o totalmente, a patto che le fonti e gli autori vengano citati Henry Muccini
  • 3. MWT– Progettazione di Applicazioni Web Henry Muccini 3
  • 4. MWT– Progettazione di Applicazioni Web Henry Muccini 4 Principi (da L2) #principio: selezionare un insieme di tool di progettazione e sviluppo in modo chiaro e senza proliferazione #principio: individuare un unico canale per lo scambio dei contenuti, definendo regole di classificazione e nomenclatura #principio: Priorità nei requisiti, mai partire dalla comfort-zone, anticipare se possibile i punti 'rischiosi';
  • 5. MWT– Progettazione di Applicazioni Web Henry Muccini 5 Difficolta’ (da L2) #difficoltà: la difficoltà a volte è indirizzare il cliente verso la soluzione corretta #difficoltà: organizzare il team e pianificare tempi e scadenze #difficoltà: interpretazione errata dei messaggi e conversazione all'interno del team
  • 7. MWT– Progettazione di Applicazioni Web Henry Muccini 7 The Project Plan Think to the “Marriage Plan”… The project plan sets out: – The resources available to the project – The work breakdown – A schedule for the work Risk analysis
  • 8. MWT– Progettazione di Applicazioni Web Henry Muccini 8 VIDEO:https://www.youtube.com/watch?v=qkuUBcmmBpk
  • 9. MWT– Progettazione di Applicazioni Web Henry Muccini 9 Considerazioni dal Video
  • 11. MWT– Progettazione di Applicazioni Web Henry Muccini 11 Work breakdown and Planning A Work breakdown reflects the decomposition of a project into subactivities down to a level needed for effective planning and control Project planning involves scheduling all activities such that the constraints are satisfied and resource limits are not exceeded.
  • 12. MWT– Progettazione di Applicazioni Web Henry Muccini 12 Let us model this… ?
  • 13. MWT– Progettazione di Applicazioni Web Henry Muccini 13 Activities Have a beginning and end – Often marked by milestones – A milestone is a scheduled event for which some person is held accountable and which is used to measure and control progress. Consume resources – e.g. people and computer time Have dependencies – e.g. Can’t code before we have a specification – Expressed as constraints, a.k.a. precedence relations – Usually temporal, but sometimes deliverables
  • 14. MWT– Progettazione di Applicazioni Web Henry Muccini 14 Representing Activities Work Breakdown Structure (WBS) – Graphical representation of a project and constituent activities – Can be abstract or highly detailed – Different types exist
  • 15. MWT– Progettazione di Applicazioni Web Henry Muccini 15 Let us use a real example - WBS
  • 16. MWT– Progettazione di Applicazioni Web Henry Muccini 16 How to represent activities and their link PERT GANTT chart Activity graph
  • 17. MWT– Progettazione di Applicazioni Web Henry Muccini 17 PERT Charts PERT = Program Evaluation and Review Technique – First used in 1950s on Polaris missile program Most useful for finding dependencies and minimum schedule time
  • 18. MWT– Progettazione di Applicazioni Web Henry Muccini 18 Gantt Chart Invented by Henry Gantt in 1910 – Engineer and management scientist – Used on Hoover dam project Like a bar chart version of PERT chart with extra features – Shows activities on a calendar – Depicts additional temporal dependencies • Start activity after the start of… • Start activity before the end of… – Allocate resources to tasks • Budgeting • Can ask what-if questions about allocations
  • 19. MWT– Progettazione di Applicazioni Web Henry Muccini 19 Example in MS Project: Conference planning
  • 20. MWT– Progettazione di Applicazioni Web Henry Muccini 20 Tools: some examples MS Project GANNT in Excel: https://www.youtube.com/watch?v=TjxL_hQn5w0 Gantter for Google Drive
  • 21. MWT– Progettazione di Applicazioni Web Henry Muccini 21 Activity network A graph, where: – Arrow = activity – Node = completion of activity Picture taken from: http://www.cs.mcgill.ca/~cs251/OldCourses/1997/topic30/images/graph2-2-ff.gif
  • 22. MWT– Progettazione di Applicazioni Web Henry Muccini 22 Critical Path A critical path is a sequence of activities without slack time. – example If activities on a critical path are delayed, the total project is delayed as well. Found by performing a breadth-first search while tracking the duration
  • 23. MWT– Progettazione di Applicazioni Web Henry Muccini 23 Example: Activity network star t T2 M3 T6 Finish T10 M7T5 T7 M2 T4 M5 T8 4/7 /03 8 da ys 14/7 /03 15 da ys 4/8/03 15 da ys 25/8/03 7 da ys 5/9/03 10da ys 19/9/03 15 da ys 11/8/03 25 da ys 10 da ys 20 da ys 5 da ys 25/7 /03 15 da ys 25/7 /03 18/7 /03 10 da ys T1 M1 T3 T9 M6 T11 M8 T12 M4
  • 25. MWT– Progettazione di Applicazioni Web Henry Muccini 25 Project Tracking Effort – Individuals record how much time is spent on various tasks – Cumulative data can be compared to the plan Progress – Milestones – Reports Schedule slippage – Monitor closely on critical path Changes in activities – Need to re-plan (and re-schedule?)
  • 26. MWT– Progettazione di Applicazioni Web Henry Muccini 26 Recall--Why software fails: other reasons Why (according to developers/testers/customers) – The programmers did not tell the truth about the real status of code, and lower than expected productivity – The management understimated time and did not carefully plan the project – The customer did not know what he wanted We do not produce just Software, we produce systems
  • 27. MWT– Progettazione di Applicazioni Web Henry Muccini 27 Multiple stakeholders, with different concerns!!
  • 28. MWT– Progettazione di Applicazioni Web Henry Muccini 28 In the project…
  • 30. MWT– Progettazione di Applicazioni Web Henry Muccini 30Project plans are based on effort estimates! Poor Estimation Techniques – Guessing – Parkinson's Law – Pricing to win – Budget method Discuss
  • 31. MWT– Progettazione di Applicazioni Web Henry Muccini 31 Better Estimation Techniques Based on experience or hard data collection – Such techniques requires to “extensively record historical data” Informal: – Expert judgment – Estimation by analogy – Variation: Delphi method Formal: – Algorithmic cost modeling
  • 32. MWT– Progettazione di Applicazioni Web Henry Muccini 32 Informal Expert judgment + Relatively cheap estimation method. + Can be accurate if (AND ONLY IF) experts have direct experience with similar systems - Does not use hard data Estimation by analogy + Accurate if project data available - Impossible if no comparable project has been undertaken. - Estimates can be inaccurate if details overlooked. -Subsequent similar projects can be quicker.
  • 33. MWT– Progettazione di Applicazioni Web Henry Muccini 33 Informal: Delphi Method Idea: Create a group expert opinion, while counterbalancing personality factors in process Group of expert estimators + moderator 1. Experts independently create estimates. 2. Moderator collects written estimates from individuals. 3. Estimates are distributed to group. – No names 4. Experts deliver new estimates based on new information from moderator. 5. Continue until consensus is reached.
  • 34. MWT– Progettazione di Applicazioni Web Henry Muccini 34 Formal: Algorithmic Cost Modeling Cost and development time for a project is estimated from an equation – E.g., Linear model • E = a0 + i=1…n aixi [Nelson] • E = man/months needed Effort estimates are based on size – Highly inaccurate at start of project Size is usually given in lines of code, which not reflect difficulty – Some short programs are harder to write than long ones – Lines of code ≠ effort • Not all activities produce code – Programming Language: Java vs. assembler
  • 35. MWT– Progettazione di Applicazioni Web Henry Muccini 35 So, what can I do? You – Don’t have a historical database – Are not an expert (usually) Generate estimates using multiple models and compare based on your guesses or assumptions – Candidate models: • Walston and Felix (simple and easy to use) – E = 5.2 KLOC0.91 • COCOMO 2 (complicated and detailed) • DeMarco (based on UI requirements) • Brooks, p. 20 – 1/3 planning, 1/6 coding, ¼ component tests and early system test, ¼ system test
  • 36. MWT– Progettazione di Applicazioni Web Henry Muccini 36 Esempio 1: NdR 2017 ► UnivAq Street Science & SHARPER ► 114 eventi ► Un solo giorno ► Un’unica app
  • 37. MWT– Progettazione di Applicazioni Web Henry Muccini 37 Esempio 2: Uffizi
  • 38. MWT– Progettazione di Applicazioni Web Henry Muccini 38 Esempio 3: DNE
  • 40. MWT– Progettazione di Applicazioni Web Henry Muccini 40 Risk management Risk management is concerned with identifying risks and drawing up plans to minimise their effect on a project. “A risk is a possible future negative event that may affect the success of an effort” [VV8.3] – Project risks affect schedule or resources; – Product risks affect the quality or performance of the software being developed; – Business risks affect the organisation developing or procuring the software. Analogy with “Software Faults and Software Failures”
  • 41. MWT– Progettazione di Applicazioni Web Henry Muccini 41The risk management process [from Sommerville book] Risk avoidance and contingency plans Risk planning Prioritised risk list Risk analysis List of potential risks Risk identification Risk assessment Risk monitoring
  • 42. MWT– Progettazione di Applicazioni Web Henry Muccini 42 The risk management process [from Sommerville book] 1. Risk identification – Identify project, product and business risks; 2. Risk analysis – Assess the likelihood and consequences of these risks; – Called “Risk Exposure” in VV 3. Risk planning – Draw up plans to avoid or minimise the effects of the risk; – From VV: • risk avoidance, transfer, acceptance • Like in deadlock handling 4. Risk monitoring – Monitor the risks throughout the project; Discuss
  • 44. MWT– Progettazione di Applicazioni Web Henry Muccini 44 GANTT diagrams tools Project Management tools
  • 45. MWT– Progettazione di Applicazioni Web Henry Muccini 45 Project management tools – free https://zapier.com/blog/free-project-management-software/
  • 46. MWT– Progettazione di Applicazioni Web Henry Muccini 46 Kanban boards https://zapier.com/learn/project-management/kanban-board/
  • 47. MWT– Progettazione di Applicazioni Web Henry Muccini 47 Project management tools https://www.lifehack.org/articles/technology/the-best-8-project-management-apps.html