“…For example, lots of companies shorten their software release cycle from traditional 18-months to a period, like 3 months, to respond to a fast-changing and competitive market (Khomh, 2012). In addition, users are able to perform different tasks through a wide variety of computational device like mobile phones, tablet PCs, laptops, desktops, notebooks, and so on (Gallud, 2012), as the high technology developed. In order to provide ubiquitous access to information and to accomplish more desktop-related tasks, it brings new challenges such as application maintenance, device consistency, and dynamic version settings to the developer (Eisentein, 2001).…”