12.07.2015 Views

Migration of a Chosen Architectural Pattern to Service Oriented ...

Migration of a Chosen Architectural Pattern to Service Oriented ...

Migration of a Chosen Architectural Pattern to Service Oriented ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 5. Guidelines 105DescriptionOrder <strong>of</strong> application <strong>of</strong> the patterns presented in the “Map” section is determinedby impact <strong>of</strong> each pattern on the final architecture. The first patterns set theframe <strong>of</strong> the architecture; the next patterns add new elements <strong>to</strong> the patternlanguage.The pattern that has the largest impact on the architecture <strong>Service</strong> Layerspattern. This pattern defines two basic layers. The first (lower) layer containsbasic services while the second contains process services. At this point, a way <strong>of</strong>communication between layers is needed, so the Canonical Pro<strong>to</strong>col is applied.Those two patterns define <strong>to</strong>gether two layers <strong>of</strong> services and the mean <strong>of</strong> communicationbetween them. Canonical Schema along with Policy Centralisationdefine application wide documents: schemas and policies. Early introduction <strong>of</strong>those patterns is important because all the services will share the same documents.At this point, the main elements (layers,communication pro<strong>to</strong>col, schema andpolicies) are established. Application <strong>of</strong> the next patterns introduce basic servicesin<strong>to</strong> architecture. <strong>Service</strong> belonging <strong>to</strong> Utility Abstraction are the first<strong>to</strong> identify and migrate because they provide functionality that is used by otherservices. The next are services defined by Canonical Resources Those servicesenable usage <strong>of</strong> external resources. Next Entity Abstraction and Rules Centralisationshould be applied. Those two types <strong>of</strong> services provide entity–relatedoperations.Inven<strong>to</strong>ry Endpoints is a pattern that introduces an additional layer aboutbasic services. Endpoints are facades. They are introduced when basic servicesare defined.Process Abstraction introduces process services. This type <strong>of</strong> services requiresbasic services <strong>to</strong> execute processes. Process services are stateful, it meansthat they maintain their state for the whole live <strong>of</strong> the process. This time doesnot have <strong>to</strong> be short. State Reposi<strong>to</strong>ry can be introduced when it is knownwhat services need state deferring mechanism.The last elements that remained are GUI related. Frontends are the first<strong>to</strong> be migrated. Accomplishment <strong>of</strong> migration <strong>of</strong> frontends makes possible identification<strong>of</strong> all the places where continuous feedback <strong>to</strong> user is required andintroduction <strong>of</strong> UI–Media<strong>to</strong>r.<strong>Pattern</strong>s1. Name <strong>Service</strong> LayersProblem <strong>Service</strong>s delivered by different teams may contain inconsistenciesand redundant functionalities.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!