Abstract
Recently, green computing has become more and more important in software engineering (SE), which can be achieved by effectively recycling the software system and utilizing the computing resources. However, the requirement change may lead to unnecessary labor and time cost. Moreover, it may also result in the waste of hardware and computing resources once unreasonable requirements are realized. Thus, to perform green computing in SE, it is necessary to propose effective strategies to manage the requirement change. For this decision-making problem, game theoretical methods can be feasible solutions. In this paper, we propose a novel requirement change management approach based on game theory. Specifically, we model the problem as a game between the stakeholders and the developer and devise the payoff matrix between different strategies of the players. We then propose a Nash equilibrium-based game theoretical algorithm to manage requirement change. The evaluation results show that, compared to the exhaustive algorithm, our method not only can achieve almost the same optimal results but also can significantly reduce the computational time complexity. Thus, our method is feasible for a lot of requirement changes and can facilitate the green computing targets from the perspective of software engineering.
Highlights
Software is the fundamental part of the computing system
In order to analyze the performance of the game theoretical algorithm, we use the exhaustive search as a baseline method
The second column and the third column show the maximum values of the evaluation indices Pmax and Pm ax, which can be found by the exhaustive algorithm and the game theoretical algorithm, respectively
Summary
Software is the fundamental part of the computing system. Greenness in the software is an emerging quality attribute that needs to be taken into account in each phase of the software development process involving requirement engineering (RE), the system implementation, testing, and maintenance. To support efficient computing paradigms, it is necessary to design effective software requirements management methods. How to respond to requirement changes is essential for the survival of the software products. In the software developing process, it is necessary to formulate feasible solutions to evaluate the impacts of the requirement change from various aspects such as cost, developing period, quality, and user satisfaction, aiming to provide evidence on making a proper decision. These solutions are essential to ensure the overall success of the software development project
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have