Introduction
In a service-oriented architecture (SOA), a business service (Business service) represents a set of business functions that can be adapted to meet the needs of service consumers based on the policies and runtime contexts that they create.
Business services have the following characteristics:
1. Design business functions from a business level
2. Achieve flexible, adaptive business practices through business policies and meta data
3. Simplify interoperability between systems by referencing industry models
4. Build on Web service and industry standards
Thus, building it applications through business services makes it implementations consistent with business requirements, a good indication of SOA concepts such as low-cost, flexible, adaptive solutions, maximizing the reusability of IT assets, and reducing development risk through incremental solutions.
IBM WebSphere Business Services Fabric (WBSF) is a software platform for modeling, assembling, deploying, managing, and monitoring business services. The product package consists of three parts:
IBM WebSphere Business Services Foundation Pack: Business Service Management and run-time environments built on the WebSphere Process Server.
IBM WebSphere Business Services Tool Pack: An Eclipse plug-in based on the WID (WebSphere integration Developer) that provides the design and assembly tools for business services.
Industry Content packs (optional): A set of SOA assets based on industry standards and industry experience, such as industry models, rules, and common services, can accelerate the development of industry SOA solutions.
Specifically, WBSF is able to dynamically invoke business services that are registered in its Service Model library (services Repository) based on the context information of the service, as shown in Figure 1. At runtime, WBSF calculates and checks the associated policy (Policy) with the service context information, and obtains a set of assertions (assertion) that the business services should satisfy to select the best physical service to meet the business service request.
Figure 1 WBSF Dynamic Service selection Working principle
The most important enhancement of WBSF in version 6.02 is the introduction of the SCA programming model support in the design and assembly of business services. WBSF introduced a new SCA component to model and assemble business services. When the business services are assembled in WID, the business services can be assembled through dynamic assembler (DA), and for the dynamic combination of business services, WBSF provides 5 SCA extensions to make it easier for developers to customize calls to business services. We introduce these 5 types of SCA extensions in the following sections.
What is context
Context is contextual information, which is a set of metadata associated with a service at run time. In WBSF, the context information for a service consists mainly of the following:
Service Interface (required): The URI,WBSF of the Services Interface name will select the endpoint to match this interface as a candidate at run time.
Subscription ID (optional): The user's ID for the business service registration. This ID associates the user with a set of contextual information for the service (application suite,application, Business service, Services Interface, Channel,role,user, etc.) to which it belongs. In WBSF, the Application Suite (Application suite) is the broadest concept, including one or more applications (application), where the application includes one or more business services related to a particular business function (Business service), A business service generation represents a specific business function, including a specific set of services. Channels (Channel) are the channels through which users use business services, and role and user are groups of users and users who use business services through a specific channel. WBSF at run time from the top to the next set of contextual information that corresponds to this caller according to the Subscription ID.
Additional Properties (optional): All content based attributes, for content-based assertions (content based assertion) extensions. For example, in a business service that applies for a loan, the user's credit value is a service content (service parameter) and can also be used as context information for a business service to select different levels of service.
All the context properties are represented in the form of a "first-value" pair.
There are two types of context properties, one based on contextual properties, including service Interface, and a set of non-functional properties related to the subscription ID that are not part of the services content, and can be owned by any service. The other is a property based on service content that is owned by a particular type of service and is generally related to service functionality or content. For example, a user credit value attribute is specific to a service of a loan application-related type.