ACM SIGSOFT Software Engineering Notes
Identification and application of Extract Class refactorings in object-oriented systems
Journal of Systems and Software
Using structural and semantic information to support software refactoring
Proceedings of the 34th International Conference on Software Engineering
Identification of generalization refactoring opportunities
Automated Software Engineering
Hi-index | 0.00 |
In software engineering, developers must often find solutions to problems balancing competing goals, e.g., quality versus cost, time to market versus resources, or cohesion versus coupling. Finding a suitable balance between contrasting goals is often complex and recommendation systems are useful to support developers and managers in performing such a complex task. We believe that contrasting goals can be often dealt with game theory techniques. Indeed, game theory is successfully used in other fields, especially in economics, to mathematically propose solutions to strategic situation, in which an individual's success in making choices depends on the choices of others. To demonstrate the applicability of game theory to software engineering and to understand its pros and cons, we propose an approach based on game theory that recommend extract-class refactoring opportunities. A preliminary evaluation inspired by mutation testing demonstrates the applicability and the benefits of the proposed approach.