So A Tutorial
So A Tutorial
Definition
Service Oriented Architecture (SOA) is based on loosely coupled applications that interface with each other typically using web services. Business processes are packaged as a service that can be reused. SOA states that all public software components are developed as services.
SOA is not actually a specific architecture that is why there are lots of different definitions. It is a conceptual architecture that allows distributed applications to communicate with each other without having to worry about the programming language and operating system.
In the above e ample! you can see the high level processes to order a car. ". $. %. #heck Stock Address validation Bank Account &alidation
'. (. *.
,ach of the above processes could be completed by the same company! however! it is usually more efficient and cost effective to have a company that specialises in this service.
. . . . . .
#ost #utting Better #ollaboration with organisations Improved customer Service /oose coupled businesses 0euse data 1 access data without having to store it yourself 2ocus on core competencies 1 focus on what the business is good at.
3ewlett 4ackard implemented an SOA that has seen up to 567 million in savings. 34 says the initial paybacks from SOA came through consolidation! reduction of redundancy and reuse across services through its e8business centre. #omponents of Service Oriented Architecture (SOA)
9he service does not depend on other services to funcion. It has interactions which are loosely coupled! so that they remain independent of other interactions and services. 9he tasks that the service carries out are pre8determined
2or e ample! a service Address &alidation does not need the #heck Stock service to function. 9his means that other applications can call the Address &alidation service and reused it. /oose coupling is good because if a service changes its internal mechanism! other services using the change service will not re:uire ma;or changes.
9he services can be located and invoked dynamically. 9his means if a service moves from one server to another server! it does not matter as its physical location does not matter.
An interface is established of how to access the service. 9his clear interface makes it possible for the
service to change and improve its internal processes without affecting the users of the service.
9his makes it easy to move from one platform (<ava) to another platform (.=,9). 9he interface is kept the same but the mechanisms specific to the platform are updated.
>eb Services are a collection of standards and specifications that enable computer to computer communication. #omputer software functions can be developed to e pose public interfaces which are accessible over the Internet without having to worry about the platform or programming language used.
Aniversal +escription! +iscovery and Integration (A++I) 1 this is how the web service is found.
>eb Services +escription /anguage (>S+/) 1 this describes the web service in a standard way.
Simple Ob;ect Access 4rotocol (SOA4) 8 SOA4 is a lightweight communication protocol based on the e?tensible @arkup /anguage (?@/).
If a website makes use of several different services! should the users of the web site see the services being used.
2or e ample! a website that sells computers may use several services to get the computer product delivered to the customer. 9hey may include-
". payment process and fraud protection $. international devliery company %. notification of the order via te$t messa%e
=ow the customer may not be confident to spend money online unless they see a trusted online payment provider (such as 4ay4alB@astercardB&isa). So in this scenario there may be benefit to the website to show they use 4ay4al as their payment provider. 3owever! if the website sends notification of the order via te t message! this is :uite uni:ue and they might not want the customer (or competitors) to know they are using an e ternal service.
So when creating a service! it is important to understand the re:uirements of the service consumer and end users. In some cases it may be beneficial to make the service a private label. >hat this means is that the service can be re8branded by the consumer but still use the service providers infrastructure.
Another e ample is the use of CahooD email. 2ree email users are willing to have Cahoo add branding (this email was sent via Cahoo) if they do not have to pay. #orporate customers pay a premium for a private label service (with their own company branding)
SOA &overnance
@ost people think of SOA E >eb Services. >ell that is not true. It is correct that >eb Services (covered in the ne t section) are important and play a ma;or part in the implementation of services but there are lots of non8technical issues that need to be considered.
SOA is not ;ust about the technical solutions but also about the correct decisions. ,ach of the SOA services is used for a purpose and some :uality threshold needs to be established.
2or e ample! if a delivery company is using an Address &alidation service from an e ternal supplier then it is critically important that the Address &alidation service keeps on working. 3owever! services need to be updated as well so a Service /evel Agreement between the customer and the service supplier need to be agreed.
If SOA is to create a more dynamic environment for services to interact and to encourage reuse of services! controlling how these services interact with each other then it also needs to be controlled and standardised. 9hese controls and standards help to guide SOA Services and makes agreements with suppliers (providers) and customers (consumers).
$) Standards B 4rocedures
As companies use SOA to better align I9 with the business! they can ideally use SOA governance to improve overall I9 governance. ,mploying SOA governance is key if companies are to realise the benefits of SOA. 2or SOA to be successful! SOA business and technical governance is not optional! it is re:uired.
+efinition (scope! interface! boundaries of the service) +eployment &ersioning @igration B +eprecation +ependencies @essaging @onitoring Ownership 9esting Security