Risk management in Software Projects

23
Risk management in Software Projects José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática Aplicada 2003-2004

description

Risk management in Software Projects. José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática Aplicada 2003-2004. Índice . Failure and root causes. Risk Definition Formas en las que se afrontan las causas de las desviaciones - PowerPoint PPT Presentation

Transcript of Risk management in Software Projects

Page 1: Risk management in Software Projects

Risk management in Software

Projects

José Onofre Montesa AndrésUniversidad Politécnica de

ValenciaEscuela Superior de Informática

Aplicada2003-2004

Page 2: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 2

Índice • Failure and root causes.• Risk Definition• Formas en las que se afrontan las causas de

las desviaciones• Elementos de la Gestión de Riesgos

– Identificar los factores de Riesgo– Evaluar la probabilidad y el efecto– Desarrollo de estrategias para mitigar los riesgos

• Monitorizar los factores de riesgo

Page 3: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 3

Failure and root causes.• Software projects fail if:

– Software never runs.– Don’t accomplish same expected functions.– Software isn't delivered on time.– Higher cost than expected.

• Reasons:– High level of complexity (communications,

interrelation with other systems, etc..)– Uncertainty. It wasn’t clear the objective.

Page 4: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 4

Risk Definition (Fairley)• Risk is a potential problem.• Problem is a risk that has materialized.• By a problem, we mean an undesirable

situation that will require time and resources to correct. – (may be uncorrectable).

• A risk is characterized by:– The probability that occur (0<P<1)– A loss associated

Page 5: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 5

Risk factors fall into two categories

– Generic risks, common to all software projects, then we tray to improve the organization to overcome this risks or we have a check list.

– Project specific risks.• This are complementary points of

view we must act on both.

Page 6: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 6

Most Common Software Risks (1) (Caper Jones)

• Ambiguous improvement targets.(4)• Creeping users requirements.(9)• Crowded office conditions.(10)• Excessive schedule pressure.(13)• Excessive time to market.(14)• Inaccurate cost estimating.(19)• Friction between:

– Client and software contractors.(16)– Software management and senior executives.

(17)

Page 7: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 7

Most Common Software Risks (2) (Caper Jones)

• Inadequate compensation plans.(24)• Inadequate configuration control and project

repositories.(25)• Inadequate Curricula (S.E., S.M.)(26, 27).• Inadequate package acquisition methods.(29)• Inadequate software policies and standars.

(31)• Inadequate tolls and methods (project

management, Quality assurance, software engineering, technical documentation…)(34-37)

Page 8: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 8

Most Common Software Risks (3) (Caper Jones)

• Lack of reusable code, data, test, human interfaces.(41-47)

• Lack of specialization (48).• Low user satisfaction(53).• Low productivity.(50)• High maintenance costs.(18)• Partial live cycle definitions.(57)• poor technology investments.• Silver bullet syndrome.(62)

Page 9: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 9

Specific risk causes.• “When a project is successful, it is not

because there are no problems, but because the problems were overcome .”

• We can act:– Reactive: we wait problems and then we

act on them.– Proactive: We identify potential problems

and act in anticipation

Page 10: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 10

Risk management elements• Different techniques to work whit

risk.– The spiral life cycle.– Check lists– Risk management.

• This methods can work all together.

Page 11: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 11

Risk management procedures

• Identify risk factors• Asses risk probabilities and effects on the

project• Develop strategies to mitigate identify risks• Monitoring Risk factors• Invoke a contingence plan.• Manage the crisis.• Recovery from a crisis.

» Fairley, R. IEEE Software Mayo 1994

Page 12: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 12

Identify risk factors• You must visualize the project

development and identify “wrong” things.

• If you have a checklist with problems in other projects you work then revise that list.– “Who don’t know their past is

commended to repeat”

Page 13: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 13

• You must difference cause (risk factors), problems and symptoms.

• Whether you identify a situation as a risk or an opportunity depends on your point of view.

• Is the glass half full or half empty?– Situations with high potential for failure

often have the potential for high pay back.

Page 14: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 14

Asses risk probabilities and effects on the project

• Evaluate the probability of this problem.• Evaluate the effect the problem would

have on the project desired outcome.• Classify risks with the Risk exposure,

calculated as:– Probability * Effect

• As a consecuence we will identify more important risks.

Page 15: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 15

Evaluación de la probabilidad de que se de el

problema.• Not all the problems have the same probability.

• Some times evaluating the probability is something difficult, use– Similar cases .– Optimist, pessimist and more probable.– Remember the Murphy law:

• “if something can go wrong, it will do”• We can use simulation tools.

Page 16: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 16

Develop strategies to mitigate identify risks

• Two types of strategies:– Action planning.

• Addresses risks that can be mitigated by immediate response

– Contingency planning.• We accept the risk and we plan and control

the risk.

Page 17: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 17

Action planning • We minimize or vanish the risk.• We take action before the problem

will materialize.– Example:

• Problem: We can have problem using new tolls.

• Action: We hire a experienced worker whit this tools

Page 18: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 18

Contingency planning• We accept the risk and we prepare a

plan and we will use this if the risk is materialized.

• The actions to take are:– Identify variables to be control in order to

detect that the problem is here.– Create an action plan to be used during the

crisis, as a consequence of this problem.– Planning the crisis recovery.

Page 19: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 19

Monitoring Risk factors• We observe identify symptoms,

grouped.• We must quantify in a precise

manner with objective, timely and accurate metrics.

• We must have a clear control limits• We need a tradability between risk

factors and risks.

Page 20: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 20

Invoke a contingence plan• When a quantitative risk indicator

crosses a predetermined threshold.• Usually you can have different levels,

– At first levels the operative level take action,

– If can’t correct the situation then the contingency plan will start.

Page 21: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 21

Manage the crisis• Despite a team’s best effort, the

contingence plan may fail, in which case project enters crisis mode

Page 22: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 22

Recovery from a crisis• After a crisis certain actions are

required:– Reward personnel who have worked in

burnout mode,– Reevaluating cost and schedule in light

of the drain on resources from managing the crisis.

Page 23: Risk management in Software Projects

GpiI-3C Risk management in Software Projects 23

Bibliografía• Fairley, R. “Risk Management for Software

Development” en Software Engineering editado por Dorffman, M y Thayer, R.H., IEEE Computer Society, 1997

• Fairley, R. “Risk Management for Software Projects”, IEEE Software, Mayo 1994

• Jones, C. Assessment and Control of Software Risks. Yourdon Press, Prentice Hall, 1994.