|
In addition to looking at the effectiveness of the individual strategies in
impacting the qualities, the cost of the individual strategies also needs to
be considered, see next section.
Quality to Cost Ratio: For each individual strategy, calculate the
quality-to-cost ratio (also known as the benefit-to-cost ratio). For
quality, use the estimate calculated in the previous section. For cost, use
the percentage drain on the overall budget of the strategy or use the actual
cost.
The
overall cost figure used should take into account both the cost of
developing or acquiring the strategy and, the cost of operationally running
the strategy over the chosen time scale. Sometimes, specific aspects of
resource utilization also need to be taken into account. For example, maybe
staff utilization is a critical factor and therefore a strategy that doesn’t
utilize scarce programming skills becomes much more attractive.
My
experience is that comparison of the 'bang for the buck' of strategies often
wakes people up dramatically to ideas they have previously under- or
over-valued.
Average Credibility / Risk Analysis: Once we have all the credibility
data (i.e. the credibility’s for all the estimates of the impacts of all the
strategies on all the qualities), we can calculate the average credibility
of each strategy and, the average credibility of achieving each quality.
This information is very powerful, because it helps us understand the risk
involved. For example, "the average credibility, quality controlled, for
this alternative strategy is 0.8". Sounds good! This approach also saves
executive meeting time for those who hold the purse strings.
Principle 3. Design out unacceptable risk
Unacceptable risk needs to be ‘designed out’ of the system consciously at
all stages, at all levels in all areas, e.g. architecture, purchasing,
contracting, development, maintenance and human factors.
Once you
have the completed initial IE table, you are in a position to identify the
unacceptable risks and design them out of the system. Unacceptable risks
include:
-
Any
quality or resource attribute where the sum of the %Impacts of all the
proposed strategies does not total 200%. (A 100% safety factor has been
assumed to reduce the risk of failure.)
-
Any
strategy providing i) a low total for the sum of its %Impacts, ii) very
low credibility or iii) low benefit-to-cost ratio.
New
strategies will have to be found that reduce these risks. In some cases, it
may be decided that the levels set for the objectives are unrealistic and
they may be modified instead.
Within
software engineering, the art of designing a system to meet multiple quality
and cost targets, is almost unknown [GILB88]. However, I have no doubt that
there is great potential in conscious design to reduce risks. For example,
it is a hallowed engineering principle to be conservative and use known
technology. However, this concept has not quite caught on in software
engineering technology, where ‘new is good’, even if we do not know much
about its risks. At least, with the use of an IE table there is a chance of
expressing and comparing the risk involved in following the differing
strategies.
more... |