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 4. <strong>Service</strong> <strong>Oriented</strong> Architecture 98Project Management or Agile Testing. World is going <strong>to</strong> be Agile <strong>to</strong> the limits<strong>of</strong> technical capabilities, therefore short clarification what is Agile in context <strong>of</strong>SOA is needed. Taking in<strong>to</strong> account business perspective <strong>of</strong> SOA, agility can beexpressed as a sum <strong>of</strong> following fac<strong>to</strong>rs:1. Reuse [46] [31] [59] – reuse is a kind <strong>of</strong> very high level goal that peopletried <strong>to</strong> achieve in many ways, including development <strong>of</strong> Object Orientationor Aspect Programming. High reuse reduces problem <strong>of</strong> inconsistency inbusiness data. SOA reuse is even more powerful because it is supported bytechnology independency that (theoretically) eliminates technical barriers.The most important consequence <strong>of</strong> reusing <strong>of</strong> a huge amount <strong>of</strong> code isreduction <strong>of</strong> risk <strong>of</strong> failure. The most important consequence <strong>of</strong> reusing <strong>of</strong>a huge amount <strong>of</strong> code is reduction <strong>of</strong> risk <strong>of</strong> failure.2. Independence from technology [46] [31] [59] –Technology dependency is amajor barrier for system evolution and development, especially in enterpriselevelapplications that grow with the enterprise. In result <strong>of</strong> the grow andtechnological dependencies, applications become a heterogeneous and composedsystems that were separate applications working for specific departments.SOA does not try <strong>to</strong> convert system <strong>to</strong> homogenous system. Keepingsystem independent from a technology allows <strong>to</strong> introduce new solutions ifthey bring additional value <strong>to</strong> the company. This also reduces cost <strong>of</strong> improvement/ development <strong>of</strong> the system by enabling selection <strong>of</strong> the cheapestvendor on the market.3. More efficient development process [46] [31] [59] – SOA in nature aligns businessprocesses. Identification <strong>of</strong> business processes becomes identification <strong>of</strong>services and relationships among them. <strong>Service</strong>s are self contained by nature,thereupon it is much easier <strong>to</strong> test them and integrate in<strong>to</strong> completeprocesses. Moreover, development teams are smaller because their tasks arelimited <strong>to</strong> a single service or several services that are in a relationship.4. Cost saving [46] [31] [59]–Cost <strong>of</strong> a project is one <strong>of</strong> the most importantfac<strong>to</strong>rs that may cause project <strong>to</strong> fail or reduce its scope. Each possiblesaving is a benefit that cannot be snubbed. Saving gained by introduction<strong>of</strong> SOA is a consequence <strong>of</strong> previously mentioned advantages. High reusereduces costs <strong>of</strong> maintenance and project itself. Technology independenceallows choosing the cheapest vendor available on the market. Efficient developmentprocess shortens development time and reduces effort requiredfor communication between individual teams.Personal perspectiveBusiness does not consist only <strong>of</strong> a set <strong>of</strong> procedures, goals and company logo.Business is people, people who spend their time trying <strong>to</strong> achieve company’s goal

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

Saved successfully!

Ooh no, something went wrong!