Information Technology Reference
In-Depth Information
resonance and applicability when used in the early aspects of the software engi-
neering lifecycle, where the decisions made can have far-reaching implications.
For instance, addressing the need for negotiation and mediation in require-
ments engineering decision making, Finkelstein et al. [31] explored the use of
different notions of fairness to explore the space of requirements assignments
that can be said to be fair according to multiple definitions of 'fairness'. Saliu
and Ruhe [84] used a Pareto optimal approach to explore the balance of con-
cerns between requirements at different levels of abstraction, while Zhang et al,
showed how SBSE could be used to explore the tradeoff among the different
stakeholders in requirements assignment problems [112].
Many of the values used to define a problem for optimisation come from esti-
mates. This is particularly the case in the early stages of the software engineering
lifecycle, where the values available necessarily come from the estimates made by
decision makers. In these situations it is not optimal solutions that the decision
maker requires, so much as guidance on which of the estimates are most likely
to affect the solutions. Ren et al. [46] used this observation to define an SBSE
approach to requirements sensitivity analysis, in which the gaol is to identify
the requirements and budgets for which the managers' estimates of requirement
cost and value have most impact. For these sensitive requirements and budgets,
more care is required. In this way SBSE has been used as a way to provide sen-
sitivity analysis , rather than necessarily providing a proposed set of requirement
assignments.
Similarly, in project planning, the manager bases his or her decisions on esti-
mates of work package duration and these estimates are notoriously unreliable.
Antoniol et al. [5] used this observation to explore the trade off between the
completion time of a software project plan and the risk over overruns due to
misestimation. This was a Pareto ecient, bi-objective approach, in which the
two objectives were the completion time and the risk (measured in terms of over-
run due to misestimation). Using their approach, Antoniol et al., demonstrated
that a decision maker could identify safe budgets for which completion times
could be more assured.
Though most of the work on decision support through SBSE has been con-
ducted at the early stages of the lifecycle, there are still opportunities for using
SBSE to gain insight at later stages in the lifecycle. For example, White et al.
[99] used a bi-objective Pareto optimal approach to explore the trade off between
power consumption and functionality, demonstrating that it was possible to find
knee points on the Pareto front for which a small loss of functionality could
result in a high degree of improved power eciency.
As can be seen from these examples, SBSE is not merely a research programme
in which one seeks to 'solve' software engineering problems; it is a rich source of
insight and decision support. This is a research agenda for SBSE that Harman
has developed through a series of keynotes and invited papers, suggesting SBSE
as a source of additional insight and an approach to decision support for pre-
dictive modelling [38], cognitive aspects of program understanding [37], multiple
objective regression testing [40] and program transformation and refactoring [41].
 
Search WWH ::




Custom Search