Game-theoretic analysis of development practices: Challenges and opportunities

被引:13
作者
Gavidia-Calderon, Carlos [1 ]
Sarro, Federica [1 ]
Harman, Mark [1 ]
Barr, Earl T. [1 ]
机构
[1] UCL, Dept Comp Sci, London, England
关键词
Game theory; Empirical analysis; Technical debt; Software engineering practices; PLAY;
D O I
10.1016/j.jss.2019.110424
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Developers continuously invent new practices, usually grounded in hard-won experience, not theory. Game theory studies cooperation and conflict; its use will speed the development of effective processes. A survey of game theory in software engineering finds highly idealised models that are rarely based on process data. This is because software processes are hard to analyse using traditional game theory since they generate huge game models. We are the first to show how to use game abstractions, developed in artificial intelligence, to produce tractable game-theoretic models of software practices. We present Game Theoretic Process Improvement (GTPI), built on top of empirical game-theoretic analysis. Some teams fall into the habit of preferring "quick-and-dirty" code to slow-to-write, careful code, incurring technical debt. We showcase GTPI's ability to diagnose and improve such a development process. Using GTPI, we discover a lightweight intervention that incentivises developers to write careful code: add a single code reviewer who needs to catch only 25% of kludges. This 25% accuracy is key; it means that a reviewer does not need to examine each commit in depth, making this process intervention cost-effective. (C) 2019 Elsevier Inc. All rights reserved.u
引用
收藏
页数:9
相关论文
共 52 条
[1]  
[Anonymous], 2011, ACM SIGSOFT SOFTW EN
[2]  
[Anonymous], 2008, Essentials of Game Theory: A Concise, Multidisciplinary Introduction
[3]  
Bacon D. F., 2010, P FSE SDP WORKSH FUT, P7
[4]  
Banks J., 2010, Discrete-event system simulation, V5th ed.
[5]  
Bavota Gabriele., 2010, Proceedings of the IEEE International Conference on Software Maintenance ICSM, P1
[6]   THEORY-W SOFTWARE PROJECT-MANAGEMENT - PRINCIPLES AND EXAMPLES [J].
BOEHM, BW ;
ROSS, R .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1989, 15 (07) :902-916
[7]  
Butcher P., 2009, DEBUG IT FIND REPAIR
[8]  
Feijs L., 2001, COMPUTER SCI REPORTS, V1, P65
[9]  
García-Galán J, 2013, IEEE INT CONF AUTOM, P574, DOI 10.1109/ASE.2013.6693115
[10]   The Assessor's Dilemma: Improving Bug Repair via Empirical Game Theory [J].
Gavidia-Calderon, Carlos ;
Sarro, Federica ;
Harman, Mark ;
Barr, Earl T. .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2021, 47 (10) :2143-2161