Content deleted Content added
m clean up, References after punctuation per WP:REFPUNC and WP:CITEFOOT using AWB (8797) |
|||
Line 13:
In order for the service to provide this dual functionality, the service contract<ref name='servicecontract'>[http://www.whatissoa.com/p11.php Service Contract]</ref> needs to be designed in a manner so that it presents functionality based on varying levels of input and output data. In case if it is required to participate as a composition member, then usually the input parameters to the service would be more fine grained as compared to the situation when it is required to participate as a composition controller. A heavily reused service needs to be as stateless as possible ([[service statelessness principle]]) so that it can provide optimum performance when composed within multiple service compositions.
<br/>
The effectiveness of this principle depends upon the extent to which [[Service-orientation design principles|rest of the design principles]] have been applied successfully. The application of the [[standardized service contract]] principle enables the services to be interoperable with other and helps to keep the composition design rather simpler by avoiding the need to perform runtime data model transformation.<ref name='IBMRed'>IBM Red Books [http://www.redbooks.ibm.com/redbooks/pdfs/sg247607.pdf Power Systems and SOA Synergy][Online].Date accessed: 21 April 2010.</ref>
==Considerations==
In order for the service to be an efficient service controller as well as a service member, the underlying technology architecture needs to provide a runtime environment that is scalable and can support the statelessness required by the service. Similarly as the service compositions increase in size, the storage and retrieval of the context data, related to the runtime interaction of the services, may need to be delegated to the runtime environment instead of the services managing this context data in order to make the service composition more efficient.
As more and more service compositions are built, there is a tendency of getting dependent on a service that is highly reused. This requires careful analysis during the design of the service compositions and considering alternate standby services for critical functionality. On the other hand, it may become difficult to evolve a service that is now become a part of multiple service compositions. This could be addressed by the application of the Concurrent Contracts design pattern that advocates maintaining multiple concurrent contracts for a service.<ref name='CC'>[http://www.soapatterns.org/concurrent_contracts.php Concurrent Contracts Pattern]</ref>
Some of the factors that determine the composability potential of a service include<ref name='Reddy'>Reddy. et al.[http://www.springerlink.com/content/36107373037136n2/fulltext.pdf Evaluating legacy assets in the context of migration to SOA][Online].pp 58.Date accessed: 21 April 2010.</ref>:
Line 30:
{{Reflist}}
* Kjell-Sverre Jerijærvi.[http://www.infoq.com/articles/soa-contract-maturity-model SOA Contract Maturity Model][Online].Date accessed: 21 April 2010.
* Mauro. et al. [http://www.computer.org/portal/web/csdl/doi/10.1109/HICSS.2010.336 Service Oriented Device Integration - An Analysis of SOA Design Patterns.] [Online], pp.
* Dino Esposito.[http://msdn.microsoft.com/en-us/magazine/cc699560.aspx The HTML Message Pattern][Online].Date accessed: 21 April 2010.
* [[Service-oriented_architecture#Principles|Service-orientation Principles]]
* Anne Thomas Manes.[http://apsblog.burtongroup.com/2009/11/the-soa-manifesto.htm The SOA Manifesto][Online].Date accessed: 21 April 2010.
* Wojciech Cellary, Sergiusz Strykowski.[http://delivery.acm.org/10.1145/1700000/1693045/p5-cellary.pdf?key1=1693045&key2=3796591721&coll=Portal&dl=GUIDE&CFID=87272569&CFTOKEN=10049575 E-Government Based on Cloud Computing and Service-Oriented Architecture][Online].Date accessed: 22 April 2010.
[[Category:Service-oriented (business computing)]]
|