SAP SOA Service Design Principles and Best Practices

By Manish Agarwal, Nagarro, Inc. |  SOA, SAP, web services Add a new comment

For SAP SOA design and development, it is important to understand the best practices for identifying the granularity and technical characteristics of the enterprise service. In this blog, we provide essential design principles and best practices for designing such enterprise services.

Design Principles for service design and identification:

1.Granularity: The service should have a broad level functionality to be sufficiently useful to a large range of consumers. The service should not be too fine-grained i.e. not have a narrow functionality to be of use to a limited set of consumers.

2.True reuse at the Enterprise level: The service should have functionality to be of use across the enterprise by providing generic functionality in its functional domain.

3.Durable (standing the test of time/change in the landscape): A good service would stand the test of time and the test of constant change in the enterprise landscape.

Best Practices for Technical Characteristics

1.Idempotent: The Service should provide the same result when called more than once. In web service operations, due to technical failures, the caller may not get a valid reponse to its service invocation. The caller would invoke the business service again, which would lead to a repeated business transaction (an obvious blunder). Hence, for transactions, we have to ensure that the business transaction happens only once. A design approach is to use a unique GUID in the web service call, which would be used in the service response to correlate the request-response. In case of a repeated service invocation, the duplicate call would get detected due to the repetition of the unique GUID parameter.

2.Security Considerations: Considering the broad appeal of the service across the enterprise, many consumers are expected to invoke the service. Hence, it is important to control the security aspects of calling this business service such as roles, authentication and authorization. Even if the service is not a transaction (not committing any business data) and if it is a read-only service, the security has to be controlled to restrict the data subset being requested by the caller.

3.Error Control: Due to the distributed nature of services and participation in distributed business processes, the service should fail elegantly and provide a human-readable trace to provide an easy method to troubleshoot error causes. Additionally, the service should reverse-compensate any business data transactions on encountering errors and preserve data integrity.

The above are the essential aspects for designing good services that endure the test of time. These learnings are based on our direct experience in identifying enterprise services and establish SOA design and governance principles across customer projects.

Manish Agarwal, SAP Program Manager, Nagarro, Inc.

http://www.nagarro.com/blog/sap-soa-service-design-principles-and-best-p...

ITworld LIVE

SOAWhite Papers & Webcasts

White Paper

Turning Financial Mainframe Applications into SOA Building Blocks

This paper discusses the benefits and challenges of implementing SOA in financial service organizations such as banks or insurance companies. After exploring the characteristics of mainframe-based financial applications, you'll learn various approaches for service-enabling these applications.

White Paper

Get Serious About SOA Governance: A Five-Step Action Plan for Executives

Download this whitepaper, Get Serious About SOA Governance: A Five-Step Action Plan for Executives to see why many organizations are reaping the rewards of successful SOA transformations and what you need to do to make yours one of them.

White Paper

Top Reasons to Implement an SOA Governance Strategy: A List for IT Executives

Download this white paper, Top Reasons to Implement an SOA Governance Strategy: A List for IT Executives, for a guide to governance that will set you on the right path.

White Paper

Oracle SOA vs. IBM SOA - Customer Perspectives on Evaluating Complexity and Business Value

With this white paper, Oracle SOA vs. IBM SOA, you'll get a healthy perspective on SOA and figure out which one is best for your organization.

White Paper

IDC MarketScape: Worldwide Business Process Platforms 2011 Vendor Analysis

This IDC study uses the IDC MarketScape model to assess the capabilities of vendors to support midrange to complex process improvement scenarios using business process management software.

See more White Papers | Webcasts

Ask a question

Ask a Question