This is Penn State

Algorithms and Software for Interactive Discovery and Composition of Web Services

(Funded in part by a grant from the National Science Foundation)

Recent advances in networks, information and computation grids, and WWW have resulted in the proliferation of a multitude of physically distributed and autonomously developed software components and services in various domains including e-Business and e-Science. Real world applications in these domains call for effective tools for developing composite services using available sets of component services. Existing approaches to web service composition suffer from a very significant limitation in that they require the user (or service developer) to provide a specification of the desired behavior of the composite service (goal) in its entirety. More importantly, the current approaches adopt a single-step request-response paradigm to service composition. That is, if a specified goal service is unrealizable (which would be the case if the goal service specification is incomplete), the process simply fails. It is typically difficult for a developer to provide the complete goal service specification that is needed in the absence of a detailed knowledge of the specifications of the component services available. Moreover, most current approaches to service composition do not consider user preferences with regard to non-functional attributes of services (e.g., cost, performance). Against this background, our work focuses on the development of powerful interactive methods for service composition with provable guarantees with respect to user-specified functional and non-functional requirements. Some results of this research include:

  • Algorithms for interactive specification-driven functional assembly of composite services from a repository of available component services (Pathak et al., 2007a; 2007b; 2008)
  • Algorithms for efficient identification of feasible replacement of one or more component services of a composite service while maintaining its functionality (Pathak et al., 2007)
  • Algorithms for incorporating user preferences over non-functional attributes of a service (e.g., cost, security, reliability) in assembling a most preferred composition that achieves the user-specified functionality (Santhanam et al., 2008).