Logo
programming4us
programming4us
programming4us
programming4us
Home
programming4us
XP
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server
programming4us
Windows Phone
 
Windows Azure

SOA with .NET and Windows Azure : Service Composition 101 (part 2)

3/26/2011 3:14:11 PM
- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019

Composition Roles

With the potential for Capability Recomposition  to be applied frequently, a given service can find itself participating in different ways within a given service composition. Therefore, in order to better identify and describe the interaction between services within a service composition architecture, a set of runtime roles exist:

  • composition controller– The service with a capability that is executing the parent composition logic required to compose capabilities within other services.

  • composition member– A service that participates in a service composition by being composed by another service.

  • composition initiator– The program that initiates a service composition by invoking the composition controller. This program may or may not exist as a service.

  • composition sub-controller– A variation of the composition controller role that is assumed by a service carrying out nested composition logic (within a capability that is composing one or more other service capabilities while itself also being composed).

Services assume composition roles within the context of different service compositions, depending on the logic executed by service capabilities. In other words, a service’s capabilities will automatically enlist the service in one or more composition roles.


Service Layers

These service models represent the two most common agnostic functional contexts for services (in other words, they represent the two popular means of further applying the Agnostic Context pattern).

When we abstract common types of logic into collections of services based on the same underlying service model, we end up establishing service layers. These logical layers are the result of the application of the Service Layers pattern, which provides us with an opportunity to organize and classify all services within a given service inventory.

Service Layers requires that at least two layers exist, and these layers are generally based on a fundamental separation of agnostic and non-agnostic service logic. Therefore, we typically end up with a task service layer, followed by a service layer based on one or more agnostic service models, as shown in Figure 6.

Figure 6. At minimum, Service Layers  requires that two logical layers of services be established within a service inventory.


The Three-Layer Inventory  compound pattern essentially indicates that the most common application of Service Layers  is via the combined application of Entity Abstraction , Utility Abstraction, and Process Abstraction. This establishes a logical layered architecture that tends to encompass the natural hierarchy formed by most service compositions (Figure 7).

Figure 7. A composition of services that forms a hierarchy that spans the three service layers represented by the Three-Layer Inventory  pattern.

Note

The top layer shown in Figure 7 is defined via the application of the Process Abstraction pattern, which is explained shortly.


Non-Agnostic Context

When decomposing business process logic as part of a service-oriented analysis, what remains after multi-purpose logic is separated logic that is specific to the business process. Because this logic is considered single-purpose in nature, it is classified as non-agnostic. The encapsulation of non-agnostic logic within a service is the basis of the Non-Agnostic Context  pattern (Figure 8).

Figure 8. Non-Agnostic Context to establish a service context for the separated non-agnostic logic.


Process Abstraction and Task Services

The types of agnostic services are generally (but not always) dependent on the existence of abstracted, non-agnostic business process logic that is encapsulated in task services (Figure 9).

Figure 9. Each task service represents a part of a parent service layer and is responsible for encapsulating logic specific to parent business process logic.


This is the result of the combined application of Non-Agnostic Context and Process Abstraction.

Note

The runtime role that is most commonly associated with the task service model is the composition controller because the functional scope of these services is typically focused on a parent business process. A variation of the task service model, called the orchestrated task service.

Other -----------------
- SOA Security with .NET and Windows Azure Security (part 2) - Windows Azure Platform AppFabric Access Control Overview
- SOA Security with .NET and Windows Azure Security (part 1) - Cloud Computing Security 101
- Running a healthy service in the cloud : Better together for scaling
- Running a healthy service in the cloud : Using the service management API (part 4) - Changing configuration and dynamically scaling your application
- Running a healthy service in the cloud : Using the service management API (part 3) - Automating a deployment
- Running a healthy service in the cloud : Using the service management API (part 2) - Listing your services and containers
- Running a healthy service in the cloud : Using the service management API (part 1) - Setting up the management credentials
- Running a healthy service in the cloud : Transferring diagnostic data
- Running a healthy service in the cloud : Configuring the diagnostic agent (part 3)
- Running a healthy service in the cloud : Configuring the diagnostic agent (part 2) - Diagnostic host configuration
 
 
Top 10
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
 
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server