0% found this document useful (0 votes)
39 views18 pages

Proactive vs Reactive Risk Strategies in Software

The document discusses risk analysis and reactive vs proactive risk strategies. It describes identifying potential risks, assessing their probability and impact, and developing contingency plans. It also discusses quantifying software risks in terms of uncertainty and potential loss. Risks are identified as project, technical, business, known, predictable, or unpredictable. Methods are presented for risk identification, characterization, projection, and developing a risk table to prioritize risks for further analysis and risk management plans.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views18 pages

Proactive vs Reactive Risk Strategies in Software

The document discusses risk analysis and reactive vs proactive risk strategies. It describes identifying potential risks, assessing their probability and impact, and developing contingency plans. It also discusses quantifying software risks in terms of uncertainty and potential loss. Risks are identified as project, technical, business, known, predictable, or unpredictable. Methods are presented for risk identification, characterization, projection, and developing a risk table to prioritize risks for further analysis and risk management plans.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Risk Analysis and RMMM

REACTIVE VS. PROACTIVE RISK STRATEGIES

 Reactive risk strategies - worrying about problems when they happen

 Proactive risk strategies - begin long before technical work is initiated

o Potential risks are identified

o Their probability and impact are assessed

o They are ranked by importance

 Not all risks can be avoided

 Team works to develop a contingency plan that will enable it to respond in a


controlled and effective manner

SOFTWARE RISKS

Risk always involves two characteristics:

 Uncertainty—the risk may or may not happen; that is, there are no 100%
probable risks

 Loss—if the risk becomes a reality, unwanted consequences or losses will


occur

Must quantify:

 Level of uncertainty

 Degree of loss associated with each risk


Kinds of Risks:

Project risks threaten the project plan.

Identify potential budgetary, schedule, personnel (staffing and organization),


resource, customer, and requirements problems and their impact on a software
project

Technical risks threaten the quality and timeliness of the software to be produced

 Identify potential design, implementation, interface, verification, and


maintenance problems.

 Specification ambiguity, technical uncertainty, technical obsolescence, and


"leading-edge" technology are risk factors.

 Technical risks occur because the problem is harder to solve than we thought
it would be.

Business risks threaten the viability of the software to be built.

Top five business risks :

(1) building an excellent product or system that no one really wants (market risk)

(2) building a product that no longer fits into the overall business strategy for the
company (strategic risk)

(3) building a product that the sales force doesn't understand how to sell

(4) losing the support of senior management due to a change in focus or a change
in people (management risk)

(5) losing budgetary or personnel commitment (budget risks).


Known risks - uncovered after evaluation:

 Project plan

 Business and technical environment in which the project is being developed

 Other reliable information sources (e.g., unrealistic delivery date, lack of


documented requirements or software scope, poor development
environment).

Predictable risks - extrapolated from past project experience

E.g.,

· staff turnover

· poor communication with the customer

· dilution of staff effort as ongoing maintenance requests are serviced

Unpredictable risks - occur, but difficult to identify in advance.

RISK IDENTIFICATION

· Attempt to specify threats to the project plan (estimates, schedule, resource


loading, etc.)

· Two types of risks:

O Generic risks - potential threat to every software project.

O Product-specific risks - identified by: those with a clear understanding of the


technology, the people, and the environment that is specific to the project at hand.

§ Identify by looking at the project plan and the software statement of scope
Risk item checklist

 Product size—risks associated with the overall size of the software to be


built or modified.

 Business impact—risks associated with constraints imposed by management


or the marketplace.

 Customer characteristics—risks associated with the sophistication of the


customer and the developer's ability to communicate with the customer in a
timely manner.

 Process definition—risks associated with the degree to which the software


process has been defined and is followed by the development organization.

 Development environment—risks associated with the availability and quality


of the tools to be used to build the product.

 Technology to be built—risks associated with the complexity of the system


to be built and the "newness" of the technology that is packaged by the
system.

 Staff size and experience—risks associated with the overall technical and
project experience of the software engineers who will do the work.
Risk Components and Drivers

The project manager identify the risk drivers that affect software risk components
—performance, cost, support, and schedule.

· Risk components:

(1) Performance risk—the degree of uncertainty that the product will meet its
requirements and be fit for its intended use.

(2) Cost risk—the degree of uncertainty that the project budget will be maintained.

(3) Support risk—the degree of uncertainty that the resultant software will be easy
to correct, adapt, and enhance.

(4) Schedule risk—the degree of uncertainty that the project schedule will be
maintained and that the product will be delivered on time.

· Impact of each risk driver on the risk component is divided into one of four
impact categories—negligible, marginal, critical, or catastrophic

Figure 1 - Risk Characterization Table


RISK PROJECTION (RISK ESTIMATION)

Attempts to rate each risk in two ways

· The probability that the risk is real

· The consequences of the problems associated with the risk, should it occur.

Project planner, along with other managers and technical staff, performs four risk
projection activities:

(1) establish a measure that reflects the perceived likelihood of a risk

(2) describe the consequences of the risk


(3) estimate the impact of the risk on the project and the product

(4) note the overall accuracy of the risk projection so that there will be no
misunderstandings.

Developing a Risk Table

Risk table provides a project manager with a simple technique for risk projection

Figure 2 - Risk Table

Steps in Setting up Risk Table

(1) Project team begins by listing all risks in the first column of the table.

Accomplished with the help of the risk item checklists.

(2) Each risk is categorized in the second column

(e.g., PS implies a project size risk, BU implies a business risk).


(3) The probability of occurrence of each risk is entered in the next column of the
table.

The probability value for each risk can be estimated by team members
individually.

Assessing Impact of Each Risk

(1) Each risk component is assessed using the Risk Charcterization Table (Figure
1) and impact category is determined.

(2) Categories for each of the four risk components—performance, support, cost,
and schedule—are averaged to determine an overall impact value.

1. A risk that is 100 percent probable is a constraint on the software project.

2. The risk table should be implemented as a spreadsheet model. This enables


easy manipulation and sorting of the entries.

3. A weighted average can be used if one risk component has more significance
for the project.

(3) Once the first four columns of the risk table have been completed, the table is
sorted by probability and by impact.

· High-probability, high-impact risks percolate to the top of the table, and low-
probability risks drop to the bottom.

(4) Project manager studies the resultant sorted table and defines a cutoff line.

· cutoff line (drawn horizontally at some point in the table) implies that only
risks that lie above the line will be given further attention.

· Risks below the line are re-evaluated to accomplish second-order


prioritization.

· Risk impact and probability have a distinct influence on management


concern.
O Risk factor with a high impact but a very low probability of occurrence
should not absorb a significant amount of management time.

O High-impact risks with moderate to high probability and low-impact risks


with high probability should be carried forward into the risk analysis steps that
follow.

· All risks that lie above the cutoff line must be managed.

· The column labeled RMMM contains a pointer into a Risk Mitigation,


Monitoring and Management Plan

Assessing Risk Impact

· Three factors determine the consequences if a risk occur:

O Nature of the risk - the problems that are likely if it occurs.

 e.g., a poorly defined external interface to customer hardware (a technical


risk) will likely result in system integration issues later in a project and will
prevent early design and testing.

O Scope of a risk - combines the severity with its overall distribution (how much
of the project will be affected or how many customers are harmed?).

O Timing of a risk - when and how long the impact will be felt.

· Steps recommended to determine the overall consequences of a risk:

1. Determine the average probability of occurrence value for each risk


component.

2. Using Figure 1, determine the impact for each component based on the
criteria shown.

3. Complete the risk table and analyze the results as described in the preceding
sections.

Overall risk exposure, RE, determined using:


RE = P x C

P is the probability of occurrence for a risk

C is the the cost to the project should the risk occur.

Example

Assume the software team defines a project risk in the following manner:

Risk identification.

· Only 70 percent of the software components scheduled for reuse will be


integrated into the application.

· The remaining functionality will have to be custom developed.

Risk probability. 80% (likely).

Risk impact.

· 60 reusable software components were planned.

· If only 70 percent can be used, 18 components would have to be developed


from scratch (in addition to other custom software that has been scheduled for
development).

· Since the average component is 100 LOC and local data indicate that the
software engineering cost for each LOC is $14.00, the overall cost (impact) to
develop the components would be 18 x 100 x 14 = $25,200.
Risk exposure. RE = 0.80 x 25,200 ~ $20,200.

[ Risk Identification:

The software team identifies that only 70 percent of the scheduled software
components for reuse will be integrated into the application.

The remaining functionality will have to be custom developed.

Risk Probability:

The probability of this risk occurring is estimated at 80%, indicating that it is


considered likely.

Risk Impact:

Initially, the plan was to have 60 reusable software components.

If only 70% can be used, this means 30% (100% - 70%) of the components need to
be developed from scratch.

The number of components to be developed from scratch is calculated as 30% of


60, which is 18 components.

It's given that the average component size is 100 lines of code (LOC).

The software engineering cost per LOC is $14.00.

The overall cost to develop the additional components is calculated as 18


(components) x 100 (LOC per component) x $14.00 (cost per LOC) = $25,200.

Risk Exposure:

The risk exposure is calculated by multiplying the risk probability by the estimated
cost impact.
Risk Exposure (RE) = Risk Probability x Impact = 0.80 (80%) x $25,200 =
$20,160 (rounded to the nearest hundred).

Risk Assessment

· Have established a set of triplets of the form:

[ri, li, xi]

Where

Ri is risk

Li is the likelihood (probability) of the risk

Xi is the impact of the risk.

· During risk assessment :

O further examine the accuracy of the estimates that were made during risk
projection

O attempt to rank the risks that have been uncovered

O begins thinking about ways to control and/or avert risks that are likely to
occur.

· Must Define a risk referent level

O performance, cost, support, and schedule represent risk referent levels.


O There is a level for performance degradation, cost overrun, support difficulty,
or schedule slippage (or any combination of the four) that will cause the project to
be terminated.

O A risk referent level has a single point, called the referent point or break
point, at which the decision to proceed with the project or terminate it are equally
weighted.

· Referent level rarely represented as a smooth line on a graph.

· Most cases - a region in which there are areas of uncertainty

· Therefore, during risk assessment, perform the following steps:


1. Define the risk referent levels for the project.

2. Attempt to develop a relationship between each (ri, li, xi) and each of the
referent levels.

3. Predict the set of referent points that define a region of termination, bounded
by a curve or areas of uncertainty.

4. Try to predict how compound combinations of risks will affect a referent


level.

RISK REFINEMENT

· A risk may be stated generally during early stages of project planning.

· With time, more is learned about the project and the risk

O may be possible to refine the risk into a set of more detailed risks

RISK MITIGATION, MONITORING, AND MANAGEMENT

Effective strategy must consider three issues:

 Risk avoidance

 Risk monitoring

 Risk management and contingency planning

· Proactive approach to risk - avoidance strategy.

· Develop risk mitigation plan.

· e.g. Assume high staff turnover is noted as a project risk, r1.


· Based on past history

O the likelihood, l1, of high turnover is estimated to be 0.70

O the impact, x1, is projected at level 2.

O So… high turnover will have a critical impact on project cost and schedule.

· Develop a strategy to mitigate this risk for reducing turnover.

· Possible steps to be taken

o Meet with current staff to determine causes for turnover (e.g., poor working
conditions, low pay, competitive job market).

o Mitigate those causes that are under our control before the project starts.

o Once the project commences, assume turnover will occur and develop
techniques to ensure continuity when people leave.

o Organize project teams so that information about each development activity


is widely dispersed.

o Define documentation standards and establish mechanisms to be sure that


documents are developed in a timely manner.

o Conduct peer reviews of all work (so that more than one person is "up to
speed").

o Assign a backup staff member for every critical technologist.

· Project manager monitors for likelihood of risk

· For high staff turnover, the following factors can be monitored:

o General attitude of team members based on project pressures.


o The degree to which the team has jelled(to work together).

o Interpersonal relationships among team members.

o Potential problems with compensation and benefits.

o The availability of jobs within the company and outside it.

· Project manager should monitor the effectiveness of risk mitigation steps.

· Risk management and contingency planning assumes that mitigation


efforts have failed and that the risk has become a reality.

E.g., the project is underway and a number of people announce that they will be
leaving.

· Mitigation strategy makes sure:

§ backup is available

§ information is documented

§ knowledge has been dispersed across the team.

· RMMM steps incur additional project cost

E.g. Spending time to "backup" every critical technologist costs money.

· Large project - 30 or 40 risks.

· Work performed during earlier risk analysis steps will help the planner to
determine which of the risks that lead to the highest risk exposure).

THE RMMM PLAN

· Risk Mitigation, Monitoring and Management Plan (RMMM) - documents


all work performed as part of risk analysis and is used by the project manager as
part of the overall project plan.
· Alternative to RMMM - risk information sheet (RIS)

RIS is maintained using a database system, so that creation and information entry,
priority ordering, searches, and other analysis may be accomplished easily.

1. Risk monitoring is a project tracking activity

2. Three primary objectives:

1. Assess whether predicted risks do, in fact, occur


2. Ensure that risk aversion steps defined for the risk are being properly
applied

3. Collect information that can be used for future risk analysis.

 Problems that occur during a project can be traced to more than one risk.

o Another job of risk monitoring is to attempt to allocate origin (what


risk(s) caused which problems throughout the project).

Common questions

Powered by AI

Risk quantification involves determining the likelihood (probability) of a risk occurring and estimating the potential impact (loss) should it occur, which allows project managers to prioritize risks effectively . By assessing these factors, managers can focus resources on high-probability, high-impact risks, ensuring that the most significant risks are managed proactively . This systematic assessment aids in developing accurate risk projections and allocation of contingency resources, which are crucial for maintaining project timelines, budgets, and outputs .

A risk table provides a systematic and organized way to project managers to assess and prioritize risks based on impact and probability . It allows for easy evaluation of risks, categorization, and estimation of the likelihood of occurrence. By sorting risks based on these parameters, high-probability, high-impact risks become the focus of mitigation efforts . It helps in efficiently allocating resources and time to the most pressing threats, thus preventing potential project issues from escalating .

Defining risk referent levels is crucial as they establish thresholds for acceptable risk levels concerning performance, cost, support, and schedule . These thresholds help to identify critical points where risks threaten project viability, thereby guiding decisions on whether to continue or terminate a project if certain levels are crossed . They provide clarity in assessing project health and help allocate resources appropriately to manage risks effectively. If referent levels are breached, they signal the possibility of significant project deviation, prompting detailed evaluation to determine whether ongoing effort is justified or adjustments needed .

Project managers often struggle with accurately measuring risk impact and probability due to the inherent uncertainties of software projects and the variability of potential outcomes . Factors such as data limitations or subjective estimates can lead to inaccurate projections. This inability to precisely quantify factors can result in suboptimal resource allocation or misguided prioritization, leading to overlooked risks with severe consequences or over-allocation to low-impact risks . Thus, uncertainties in measurement complicate decision-making, requiring additional attention to validation and calibration of risk projections .

Risk components in software projects include performance risk, cost risk, support risk, and schedule risk, each associated with uncertainty regarding meeting project objectives, budget constraints, maintainability, and delivery timelines . Drivers affect these components, including development environment quality, staff experience, and technological complexity . Understanding these elements enhances management by enabling precise risk assessment, targeted mitigation strategies, and proactive planning to address the most significant potential project disruptions . This risk component knowledge helps prioritize actions that ensure project goals are met, optimizing resource allocation across potential risk areas .

Past project experiences provide data and insights that help predict recurring issues, thereby informing preemptive actions in current projects. For instance, staff turnover, poor customer communication, and resource allocation issues are common predictable risks informed by historical data . Analyzing these experiences allows managers to develop best practices, such as implementing robust communication protocols or instituting retention strategies, to mitigate similar risks in future projects . Recognizing patterns in previous projects helps in refining risk assessment techniques and fine-tuning management strategies to prevent predictable issues from affecting project outcomes .

The RMMM Plan is critical for effective software project risk management by documenting risk analysis outcomes and guiding continuous risk assessment processes . Its core components include proactive risk avoidance strategies, continuous risk monitoring to track evolving conditions, and contingency management plans to minimize impact when risks become realities . The plan facilitates adaptive responses to changing risk scenarios and ensures that resources are in place to handle emergent risks efficiently, helping to maintain project stability and success .

A risk item's nature, scope, and timing significantly influence management strategies. The nature of the risk determines the specific issues it could cause, such as system integration challenges for technical risks . The scope refers to the severity and breadth of the risk's impact, guiding resource allocation to mitigate its effects on the project. Timing determines when and how long the impact will be felt, which informs the scheduling of risk responses and resource allocation . Understanding these characteristics helps managers tailor their strategies, such as prioritizing risks with wide scopes or addressing risks promptly that have immediate impacts .

Reactive risk strategies address problems as they occur, focusing on mitigation after risks have manifested, often resulting in rushed solutions . In contrast, proactive risk strategies commence long before any technical development begins, emphasizing early identification and assessment of potential risks, which allows for better planning and controlled responses . This approach includes evaluating the probability and impact of risks, ranking them, and devising a contingency plan to handle them effectively should they occur .

Project risks are those that endanger the project plan itself, including potential budgetary, scheduling, and personnel issues, which can delay timelines or inflate costs . Technical risks threaten the quality, design, and timeliness of software development, often stemming from design and technical uncertainties . Business risks, however, threaten the viability or market relevance of a software product, such as market demand shifts or strategic alignment issues . Distinguishing among these risks is important because each requires different strategies for mitigation and prevention; for example, technical risks may need technological solutions, while business risks require strategic adjustments .

You might also like