@conference {523, title = {SmartFixer: Fixing Software Configurations based on Self-adaptive Priorities}, booktitle = {17th International Software Product Line Conference}, year = {2013}, publisher = {ACM}, organization = {ACM}, address = {Tokyo}, abstract = {Large modern software systems are often organized as product lines, requiring specialists to configure variability models before delivering a product. Variability models help detect configuration errors. Unfortunately, fixing configuration errors is known to be time-consuming. Although automated approaches to recommend fixes exist, they lack guidance to help users identify a desirable fix. This paper proposes an approach to provide such guidance using self-adaptive priorities. The basic idea is to first generate one fix, and then to gradually reach the desirable fix based on user feedback. To this end, our approach (1) automatically translates user feedback into a set of implicit priority levels on configuration variables, using five priority assignment and adjustment strategies and (2) efficiently generates potential desirable fixes by calculating new values for the variables with low priority. The experiments on real variability models show that we can reduce up to 89\% of the fixes, and up to 98\% of the variables shown to the user, compared to when no priorities are used.}, attachments = {http://gsd.uwaterloo.ca/sites/default/files/smartfixer.pdf}, author = {Wang, Bo and Passos, Leonardo and Xiong, Yingfei and Krzysztof Czarnecki and Zhao, Haiyan and Zhang, Wei} }