In service-oriented computing, multiple services often exist to perform similar functions. In these situations, it is essential to have good ways for qualitatively ranking the services. In this paper, we present a new ranking method, ServiceRank, which considers quality of service aspects (such as response time and availability) as well as social perspectives of services (such as how they invoke each other via service composition). With this new ranking method, a service which provides good quality of service and is invoked more frequently by others is more trusted by the community and will be assigned a higher rank. ServiceRank has been implemented on SOAlive, a platform for creating and managing services and situational applications. We present experimental results which show noticeable differences between the quality of service of commonly used mapping services on the Web. We also demonstrate properties of ServiceRank by simulated experiments and analyze its performance on SOAlive.
requirement. Furthermore, programming using sequence constructs normally produce nested structures and The current approach for modeling synchronization in scattered code, especially under the existence of business processes relies on sequencing constructs, such concurrency [21]. As a result, there is no easy way to add as sequence, parallel etc. However, sequencing constructs or delete a constraint in a process without over-specifying obfuscate the true source of dependencies in a business necessary constraints or invalidating existing ones. process. Moreover, because of the nested structure andIn this paper, we describe a synchronization modeling scattered code that results from using sequencing approach for business processes in which dependencies sconsteruct it is hard to add or delete additional are first-class citizens, explicitly modeled to guide activity constructs, ithard ove r netesaryiconal scheduling. This dependency-equal-to-scheduling style is constraints without over-specifying necessary constraints the core feature of dataflow programming, which has the or invalidating existing ones.
well-known advantage of using dependencies to locateWe propose a dataflow programming approach in which dependencies are explicitly modeled to guide potential parallelism to improve performance [14]. We activity scheduling. We first give a systematic assume that the dependency information can be extracted categorization ofdependencies. data, control, service and from design products like activity diagrams in UML [17], cooperation. Each dimension models dependencyfrom its Program Dependency Graph [5] or web service own point of view Then we show that dependencies of description requirements in WSCL [25] etc. Otherwise, various kinds can be first merged and then optimized to they are provided by domain experts, such as high-level generate a minimal dependency set, which guarantees business requirements for exception handling. Classical high concurrency and minimal maintenance cost for examples of dependencies include data dependency and proessnexcurrency and minimal maintenance cost for control dependency [2], which we extend with additional dimensions, service and cooperation, to accommodate the
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.