s01_whyprojectsfail
Transcript of s01_whyprojectsfail
-
8/22/2019 s01_whyprojectsfail
1/21
Why do software projects fail?
Gilberto Pedraza Garca
-
8/22/2019 s01_whyprojectsfail
2/21
GOOD COOKING TAKES TIME. IF YOUARE MADE TO WAIT, IT IS TO SERVE
YOU BETTER, AND TO PLEASE YOU.
MENU OF RESTAURANT ANTOINE.
NEW ORLEANS
-
8/22/2019 s01_whyprojectsfail
3/21
Overview
Context
Software project problems
Mythical man-month
Possible solutions
Lessons learned
-
8/22/2019 s01_whyprojectsfail
4/21
Context
Software improving the quality lifeof people.
Software production is a verycomplex and expensive task.
The global software marketexceeds 541 billion dollars.
Software costs are composed for:
Direct cost related with its
production;
Indirect cost as training, installationand maintenance;
Hidden costs such as those caused
by faults.
-
8/22/2019 s01_whyprojectsfail
5/21
Problem
In 1995 a studyconducted by theconsulting StandishGroup found that
31% of softwareprojects were cancelled
53% challenged
Only 16% successful.
Failures in softwaresystems
Technology evolution
-
8/22/2019 s01_whyprojectsfail
6/21
Problem (2)
Source: Standish Group survey
-
8/22/2019 s01_whyprojectsfail
7/21
Not enough time
Deadline date is defined before the projects
start
-
8/22/2019 s01_whyprojectsfail
8/21
Lack of communication between the participants
-
8/22/2019 s01_whyprojectsfail
9/21
Insufficient budge for the project
Policy: lowest price
most successful
candidate
-
8/22/2019 s01_whyprojectsfail
10/21
The poor quality of software
Gap between software
engineering and software
management
Product oriented
No documentation
No project measurement
-
8/22/2019 s01_whyprojectsfail
11/21
A reactive management policy for defects
.
-
8/22/2019 s01_whyprojectsfail
12/21
Mythical man-month (1)
-
8/22/2019 s01_whyprojectsfail
13/21
Mythical man-month (2)
-
8/22/2019 s01_whyprojectsfail
14/21
Mythical man-month (3)
Adding manpower to a late project makes it later
-
8/22/2019 s01_whyprojectsfail
15/21
Mythical man-month (4)
Brooks' observations are based on his experiences at
IBM while managing the development of OS/360.
The mythical man-month
Brooks discusses several causes of scheduling failures. The most
enduring is demonstrating Brooks's Law:Adding manpower to a late
software project makes it later.
The second-system effect
When an architect designs a second system, it is the most dangeroussystem he will ever design
-
8/22/2019 s01_whyprojectsfail
16/21
Mythical man-month (5)
The tendency towards irreducible number of errors
Any attempt to fix observed errors tends to result in the introduction
of other errors
Progress tracking "Question: How does a large software project get to be one year late?
Answer: One day at a time!"
Conceptual integrity
To make a user-friendly system, the system must have conceptualintegrity, which can only be achieved by separating architecture from
implementation
-
8/22/2019 s01_whyprojectsfail
17/21
Why is software project disaster so common?
1. Estimation techniques are poor & assume things willgo well (an unvoiced assumption)
2. Estimation techniques fallaciously confuse effort withprogress, hiding the assumption that men and months
are interchangeable3. Because of estimation uncertainty, manager lack
courteous stubbornness
4. Schedule progress is poorly monitored
5. When schedule slippage is recognized, the naturalresponse is to add manpower. Which, is like dousing afire with gasoline.
-
8/22/2019 s01_whyprojectsfail
18/21
Solutions
Not enough time Planning should involve project management
activities in addition to the activities of softwareengineering
Lack communication The software architecture is the tool to communicate
decisions that impact on the project and it is the siteto achieve the agreement of stakeholders and project
participants. The poor budgeting of the project
To identify and guide the planning with the functionalrequirements of the project.
-
8/22/2019 s01_whyprojectsfail
19/21
Solutions (2)
Poor quality
Documentation of project activities
Identification and definition of process
Monitoring activities Definition of metrics
Measuring process
Postmortem task to end each cycle of development
A reactive policy for defect management
Software costs decreases when the defects aredetected at early stages
-
8/22/2019 s01_whyprojectsfail
20/21
lessons learned
The process of software development is
complex.
Some proposed solutions can not bequantified and they are developed by people.
Devote more effort in planning offers more
chance of success in the project.
Future projects need to learn from past
mistakes.
-
8/22/2019 s01_whyprojectsfail
21/21
Questions