Nagarro, Inc. – SAP SOA and Web Services – what determines an Enterprise Service?
By Manish Agarwal
January 26th, 2010
SAP SOA is now a mainstream architectural strategy being followed by SAP customers for providing future proof integration to SAP and non-SAP systems. However, customers are not clear on the SAP SOA guidelines, and how to truly model, design and develop enterprise level services.
What is SOA:
Service Oriented Architecture (SOA) is a software design strategy in which there is a service provider and many service consumers. SOA is similar to the distributed computing principles of loosely coupled architecture. SOA differs from the traditional client server architecture in terms of distributing the functionality over separate business objects exposed through service interfaces, loose coupling through independent business objects, durable interface contracts and promoting reuse of functionality through a loosely coupled architecture.
What is a Web Service:
A web service is an interface implementing the industry standards of SOAP and WSDL (and usually HTTP) to expose functionality to a web service consumer. It is a technical implementation to expose functionality through a standards based protocol.
The use of web services has enabled a tremendous leap in enterprise integration. Till a few years back, most applications provided proprietary or rudimentary methods of integration, such as SAP provided SAP RFC, BAPI, IDOC based integrations. Such integrations warranted the use of middleware adapters to provide integration with SAP.
The use of web services now allows a direct integration between applications with the SAP business suite.
Hence, we recommend the usage of web services as a central integration strategy for all integration initiatives.
With the proliferation of web services, it is a challenge to catalog and manage the usage of services in the enterprise. Hence, SAP has provided a robust set of SOA toolsets to manage the usage of services in the enterprise.
What is an SAP Enterprise Service:
An SAP Enterprise service is technically a web service, and it has the following attributes:
•Based on web services standards of WSDL and SOAP
•Based on SAP global data types
•The service has been modeled within SAP ESR using business objects, process components and the SAP enterprise model
•Published in the SAP SR (service registry)
•Guarantee on the availability and functional correctness
What if my Web Service does not qualify to be an Enterprise Service
There are scenarios where the web service interface exposed by an enterprise application is not globally relevant, and is really a technical interface to a localized business functionality. The usage of such a web service may be limited to the department in the organization and its particular IT applications having its own semantics.
Such web services are not Enterprise Services. However, SAP SOA tools can be used to manage and catalog such localized and non enterprise services as well. The SAP SR provides rich taxonomy capabilities to catalog and manage all such services.
Web services should be the central integration strategy for all integration initiatives to provide a standards based integration to applications. However, not all web services are meant to be used at an enterprise level across the organization.
The SOA Governance body should approve all enterprise service candidates based on the above mentioned criteria, and use the SAP SOA toolset for cataloging and managing all service in the enterprise.
Manish Agarwal, SAP Program Manager, Nagarro, Inc.