1. Introduction
Web service is gaining widespread adoption in modern applications. As modular and self-described application, a web service with certain functionality and quality properties can be easily discovered and invoked over the Internet which can satisfy specific consumer requirements [1]. A single web service implementation usually serves multiple service consumers; a popular web service serves thousands or even millions of consumers, such as the web service provided by Amazon [2], eBay [3], and Google [4]. There is a trend that more and more business applications are delivered as web services, e.g. CRM (Customer Relationship Management) services [5], [6] and ERP (Enterprise Resource Planning) services [7]. These web services are named as Software as Service (SaS) by the industry, and usually have larger granularity with complex functions. When subscribed, these services can be accessed by consumers through Internet to support their business requirements. As different consumers usually have special requirements for the business application in terms of user interface, business process and data, it is critical for the SaS services to provide service consumers easy personalization and customization capabilities according to their own requirements. This has been demonstrated by leading SaS services, for example, Salesforce.com CRM service provides CustomForce utility, Intacct.com ERP service provides CustomERP utility.