Defining Service Orientation

Service orientation is an architectural approach based on implementing business processes as software services. These business services consist of a set of loosely coupled components — designed to minimize dependencies — assembled to support a well-defined business task. Designing systems with modular business services results in more efficient and flexible IT systems. Systems designed to incorporate service orientation allow organizations to leverage existing assets and easily accommodate the inevitable changes experienced by a dynamic business. In addition, there are situations when a set of services needs to be combined. This ensures that these combined workloads will be able to execute with less latency than would be possible with loosely coupled components.

Service orientation is also a business approach and methodology. Using a service-oriented approach helps businesses adapt to change and makes the scalability of cloud computing possible.

Business services play an essential role in systems designed with a focus on service orientation. These business services cross a number of different IT systems, effectively breaking down the organizational silos that formed around conventional IT systems. We define a business service as the self-contained and reusable software components that you create to carry out your important business processes. Some of these business services may have additional component services. Each service provides a function. Basically, we mean that you wrap up everything you have to do to make a particular business function happen and give that rolled-up something a name and call it a business service. These business services can then be used as building blocks to create other more complicated business services.

Figure 3-1 illustrates how a credit-checking business service is incorporated into an order-processing application. Its service is called on when a new customer places an order to determine whether the customer is credit-worthy. In the figure, we don’t show or even care about how the credit checking is done. For the sake of simplicity, say that the credit-checking business service — software component — is run by an external company and simply provides a service. The company using this credit-checking software is confident that the service conducts a credit check properly.

Figure 3-1: Adding a service-oriented component.

9781118235003-fg0301.eps

The order-processing application simply requests the credit-checking service and passes along the necessary information (a person’s name and Social Security number). The credit-checking service consults its information sources, does some calculations, and passes back a credit rating. The credit-checking service may connect to many computers, consult many different data sources, and use a very sophisticated algorithm to calculate the credit rating, but the details of how the algorithm works are of no concern to the order-processing application. As far as the order-processing application is concerned, credit checking is called on to accomplish a specific business process, and that’s all.

remember.eps Also, we need to emphasize that the credit-checking component does only credit checking. It doesn’t offer a wide range of services. It’s precisely because the components have a narrowly defined scope — that is, they do just one thing — that they can be used and reused as building blocks.

Using a service-oriented approach makes it easier to build new applications as well as change existing applications. Using well-tested and proven components makes testing new applications more efficient.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.139.82.4