Software Engineering Practice
Software Engineering Practice
Geoffrey G. Roy
School of Engineering Science,
Murdoch University, Perth, Australia 6150.
Email: [email protected]
(g) Usability
(h) Correctness
Evaluate risks
(i) Reliability
(j) Personnel Assess risks
Cost (a) to (j) as above
Schedule (a) to (j) as above Treat risks
Risk Process (a) to (j) as above
Categories Product (a) to (j) as above
Pre-requirements (a) to (j) as above
Requirements (a) to (j) as above
Development Design (a) to (j) as above Figure 1: The AS/NZS 4350:1999 Risk Management
Phases Coding (a) to (j) as above Framework
Testing (a) to (j) as above
Delivery and Maintenance (a) to (j) as above Business Domain
Identification (a) to (j) as above Organization
Strategy and Planning (a) to (j) as above
Assessment (a) to (j) as above
Risk Activities
Mitigation and Avoidance (a) to (j) as above
Reporting (a) to (j) as above Project Domain
Group: Environmental
Trans: Transport of Lithium batteries - held in customs, time for shipping,
etc
Imp: Impact on environment - objection to system install due to potential
for negative environmental impact
DisLi: Disposal of Lithium batteries
Group: Resources
Dom: Availability of an suitable Domain Expert throughout the entire
project
Lack: Resources and the lack thereof
Learn: Learning curve for new resources
Key: Assignment of key staff to the project in the timeframe required Figure 6: Exploring the Risk Tree
Once built and calibrated (with organizational or project
specific values) the model can be used to assist with the
A risk model developed with this level of detail can
identification of the key risk factors. Figure 6 shows the
provide the risk manager with a much richer view of the
view of the model within the risk tree; in this case, from
project risks. The risk manager will be able to observe the
the root node for the schedule perspective. Similar graphs
likely range of risk values (rather than just having an
are available to explore the children nodes, their children
average), and thus be able to judge whether the extreme
and so on. Naturally, risk factors can also be ranked
values require further attention (for mitigation purposes).
according to their contributions to the various risk
It is, however, unlikely that this level of information will
perspectives built into the model. Figure 7 shows the top
be available for most software development projects.
10 set of risk factors in order of their contribution to the
4.5. Estimating the Risk Event Probabilities project as a whole.
This is the final step in the model building phase, and
necessary before the model can be used for anything
useful. Each risk factor must be assessed for its likelihood
of occurrence and a probability allocated. Generally these
are represented by values on a 0 to 1 scale.
Adjective scale values using a Likert scale (e.g. XLow,
VLow, Low, Med, High, VHigh, XHigh) can allow users
to think in more descriptive terms rather than numeric
values (which is accepted as being difficult for some
people). In this latter case there must be an underlying
risk-value function that maps the chosen scale to numeric
values. The default mapping will probably be linear (over Figure 7: The Top 10 Risk Factors
the chosen range of values), but nonlinear mappings can be
developed where sufficient knowledge and experience is
available.