s01_whyprojectsfail

download s01_whyprojectsfail

of 21

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

    [email protected]