the design problem in such a way that the user’s satisfaction is maximized.
The designer really needs some composite measure that could be derived for every competing design, which reflects as closely as possible the user’s comparative rating of the attributes for importance and makes due allowance for uncertainty. What the designer really needs , therefore, is a multi-attribute utility function. But we have shied away from this once and we shall do so again. The excuse for being so chicken is that such functions are incredibly difficult to derive in the software design context, so that no designer ever attempts to do so.
However, in very limited circumstances (which we shall explain later) a designer may feel obliged to introduce some objectivity into his or her selection mechanism. This will usually involve a development of the trading off process that we have already encountered and requires the application of what is known as the value function. In the simplest terms this means forming a weighted average of individual attributes. For instance, we might represent the value of a software design V (S), as follows:
{c1 x value of attribute 1}+{c2 x value of attribute 2}+{c3 x value of attribute 3}+
…+{cn x value of attribute n} (1)
Where c1, c2, c3, …, cn are weighting factors.
It is often convenient to represent both the value of any one attribute and the value of the combination of attributes over a standard range, say from 0 to 100. In these circumstance, the condition (c1+c2+c3+…+cn=1) is imposed (Chapman, 1980).
In order to demonstrate the use of the value function let us assume that a designer is due to make a final choice from three candidates designs. We will assume also that the pressures on the designer are limited to three: economy, reliability and robustness. The data relative to the three designs is assembled in Fig.1.6.
The diagram shows for each of the designs, X, Y and Z, the estimated attribute values for each design criterion. You will note that we represent economy by the operating costs of the system in thousands of pounds per year. The measure of reliability is percentage availability, i.e., the proportion of time that the software is expected to be functioning correctly. Robustness is represented by the percentage tolerances on the volume that the system is being designed to handle. Our first move must now be to construct a value function for each attribute.
Value function – single attribute A value function merely expresses the desirability of different ‘quantities’ of a particular attribute. We construct it by ranking all possible values for the attribute in order of desirability, assigning 0 to the least desirable, 100 to the most desirable and appropriate values in the range 0 to 100 to the others. We might thus arrive at value functions for the three criteria of interest to us, as in Fig.1.7.
The functions should represent, as far as can possibly be determined, the values of the attributes to the user. Note that the functions are not necessarily linear although we have shown two of them as being so. Note also that we show the worst result at the left-hand side of the horizontal axis and the best result at the right.
<< 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] 下一页