Author_Institution :
Inf. Syst. Sch., Queensland Univ. of Technol., Brisbane, QLD, Australia
Abstract :
The growth of APIs and Web services on the Internet, especially through larger enterprise systems increasingly being leveraged for Cloud and software-as-a-service opportunities, poses challenges to improving the efficiency of integration with these services. Interfaces of enterprise systems are typically larger, more complex and overloaded, with single operation having multiple data entities and parameter sets, supporting varying requests, and reflecting versioning across different system releases, compared to fine-grained operations of contemporary interfaces. We propose a technique to support the refactoring of service interfaces by deriving business entities and their relationships. In this paper, we focus on the behavioural aspects of service interfaces, aiming to discover the sequential dependencies of operations (otherwise known as protocol extraction) based on the entities and relationships derived. Specifically, we propose heuristics according to these relationships, and in turn, deriving permissible orders in which operations are invoked. As a result of this, service operations can be refactored on business entity CRUD lines, with explicit behavioural protocols as part of an interface definition. This supports flexible service discovery, composition and integration. A prototypical implementation and analysis of existing Web services, including those of commercial logistic systems (Fedex), are used to validate the algorithms proposed through the paper.
Keywords :
Internet; Web services; application program interfaces; cloud computing; software maintenance; APIs; Internet; Web services; behavioural interface discovery; business entity CRUD lines; cloud computing; commercial logistic systems; contemporary interfaces; enterprise systems; flexible service discovery; heuristics; multiple data entity; overloaded Web services; protocol extraction; sequential dependency discovery; service interface behavioural aspects; service interface refactoring; software-as-a-service; Business; Data models; Iron; Ontologies; Protocols; Semantics; Web services; business entity; service behavioural interface derivation; service interface synthesis; web service;