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 3. <strong>Architectural</strong> <strong>Pattern</strong>s 64exist neither in MVC nor in PAC. The connec<strong>to</strong>rs specify more precisely way <strong>of</strong>communication between elements. Summarizing, MVC pattern is the most generalpattern within the category and becomes representative <strong>of</strong> User InteractionView.Representative: Model–View–ControllerComponent Interaction ViewCandidates: Explicit Invocation, Implicit Invocation, Client–Server, Peer–<strong>to</strong> –Peer,Half–Sync / Half–AsyncSelection: <strong>Pattern</strong> descriptions presented in section 3.2.1 underlines similaritiesbetween Explicit invocation, Implicit Invocation and Client–Server. Client–Serverdefines division <strong>of</strong> a system in<strong>to</strong> two parts. Explicit and Implicit Invocations alsomake this division but they also introduce new elements determining communicationdetails between Client–Server parts. They are just variants <strong>of</strong> Client–Serverpattern, therefore Client-Server is more general in terms <strong>of</strong> previously stated criteria.Peer–<strong>to</strong>–Peer pattern describes interaction between elements that are clientsand servers in the same time. In fact, this pattern crates a network <strong>of</strong> modifiedClient-Server entities. The problem appears when a comparison between Client-Server and Half–sync/half–async has <strong>to</strong> be made. The problem is that those twopatterns describe different model <strong>of</strong> connection between components. Responsibilities<strong>of</strong> elements those two patterns are incomparable. Parts <strong>of</strong> Half–Sync/ Half–async pattern in opposite <strong>to</strong> Client–Server take care about two differentaspects <strong>of</strong> communication, therefore those two patterns cannot compared <strong>to</strong> eachother. The Component Interaction view has two representatives.Representative: Half–Sync / Half–Async, Client–ServerDistribution ViewCandidates: Broker,Remote Procedure Call, Message QueueingSelection: Distribution View contains three architectural patterns. The firstin row is Broker. The description <strong>of</strong> Broker pattern underlines similarities betweenthis pattern and previous category. The structure and functionality <strong>of</strong> thispattern matches description <strong>of</strong> Client –Server pattern. In fact, Broker is just amore complex version <strong>of</strong> Client–Server; therefore, this pattern will not be comparedwith patterns from Distribution View and shall be moved <strong>to</strong> ComponentInteraction View. Since this pattern is a more complex version <strong>of</strong> Client–Server,Broker is not a representative <strong>of</strong> Component Interaction View. Remote ProcedureCall does not have fixed structure. It is rather an idea how <strong>to</strong> keep connectionsbetween different parts <strong>of</strong> distributed systems masked. The patterns are incomparable;consequently, this view has also two representatives–both are differentin terms <strong>of</strong> their structure and functionality.Representative: Remote Procedure Call, Message Queueing

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

Saved successfully!

Ooh no, something went wrong!