service-orientation
{{Short description|Software design paradigm}}
Service-orientation is a design paradigm for computer software in the form of services. The principles of service-oriented design stress the separation of concerns in the software. Applying service-orientation results in units of software partitioned into discrete, autonomous, and network-accessible units, each designed to solve an individual concern. These units qualify as services.{{Cite web | title = SOA Principles | url=http://www.soaprinciples.com/p3.php | last = Erl | first = Thomas}}{{Cite web | title = Service-Oriented Software Engineering | url=http://www.s-cube-network.eu/km/terms/s/service-oriented-software-engineering}}
History of service-orientation principles and tenets
Service-orientation has received a lot of attention since 2003{{Cite web | title = Gartner's Hype Cycle Special Report for 2005 | url = http://www.gartner.com/resources/130100/130115/gartners_hype_c.pdf}} due to the benefits it promises. These include increased return on investment, organisational agility and interoperability as well as a better alignment between business and IT. It builds heavily on earlier design paradigms and enhances them with standardisation, loose coupling and business involvement.{{Cite web | title = What Is SOA? - Introduction | url=http://www.whatissoa.com/p16.php | last = Erl | first = Thomas}} The paradigm lost momentum in 2009;{{cite web|url=http://apsblog.burtongroup.com/2009/01/soa-is-dead-long-live-services.html|title=SOA is Dead; Long Live Services|website=Application Platform Strategies Blog}} since 2014, renewed interest can be observed under the Microservices moniker. In technology, different vendor SOA platforms have used different definitions of service-orientation. Some vendors promote different principles and tenets over others, but a fair amount of commonality exists.Liebhart, Daniel. SOA goes real. Hanser, 2007, p. 22
Service-orientation inherits a small number of principles from earlier paradigms including object-oriented programming, component-based software engineering and open distributed processing. It is commonly acknowledged that several service-orientation principles have their roots in the object-oriented design paradigm: the two are complementary paradigms and there will always be a need for both.{{cite web|url=http://www.ibm.com/developerworks/library/ws-soad1/index.html|title=Elements of Service-Oriented Analysis and Design|date=2 June 2004|website=www.ibm.com}} Services also inherit a number of features of software components, including
- Multiple-use
- Non-context-specific
- Composable
- Encapsulated i.e., non-investigable through its interfaces
- A unit of independent deployment and versioning
Open Distributed Processing (ODP) combines the concepts of open systems and distributed computing, which are essential characteristics of service-orientation. The key features of ODP are all inherited by service-orientation, including federation, interoperability, heterogeneity, transparency and trading/broking.
Essential characteristics
Don Box was one of the first to provide a set of design guidelines referred to as his "four tenets of service-orientation", which he described primarily in relation to the Microsoft Indigo (subsequently Windows Communication Foundation) platform that was emerging at the time:
- Boundaries are explicit
- Services are autonomous
- Services share schema and contract, not class
- Service compatibility is based on policy
Other vendors and independent consultants have published their definitions of service-orientation and SOA, for instance, N. Josuttis in "SOA in Practice" and D: Krafzig et al. in "Enterprise SOA". An article in the December 2005 edition of the IBM System Journal{{cite web|url=http://www.research.ibm.com/journal/sj/|title=IBM Journal of Research & Development|date=23 October 2017|website=www.research.ibm.com|archive-url=https://archive.today/20060312002405/http://www.research.ibm.com/journal/sj/|archive-date=2006-03-12}} entitled "Impact of service orientation at the business level"{{cite web|url=http://www.research.ibm.com/journal/sj/444/cherbakov.html|title=Impact of service orientation at the business level|date=23 October 2017|website=www.research.ibm.com|archive-url=https://archive.today/20060312024514/http://www.research.ibm.com/journal/sj/444/cherbakov.html|archive-date=2006-03-12}} provided a study of how the service-orientation paradigm relates to fundamental componentization and the IBM Component Business Model (CBM).
Paul Allen defines service orientation as a (business) paradigm, with three main components: business architecture, Service-oriented architecture and software oriented management. Allen's book defines seven Service-Oriented Viewpoints (labelled SOV7): {{Cite book|last=Allen|first=Paul|title= Service Orientation Winning Strategies and Best Practices|publisher=Cambridge University Press|year=2006|isbn=978-0521843362}}
- Transparence
- *Smoothness of customer's experience in using the service.
- Customer fit
- *Ability to tailor offerings to variations in customer needs.
- Partner connectivity
- *Ability to use 3rd parties for performing commodity services
- *Ability to offer a service to different partners
- Adaptation
- *Adapting to the changes in the marketplace.
- Multi-channel capability
- *Support the customer end-to-end through process, using different channels to achieve continuity.
- *Offering same service through different channels.
- Optimization
- *Offering services in real time at high performance levels.
- One-stop experience
- *Catering to different needs of the customers through one set of services.
Allen uses the viewpoints as starting point for stating questions during the design process.
Service-orientation has continued to receive increased recognition as an important part of the service-oriented computing landscape and a valid design approach to achieving service-oriented architecture.
See also
References
{{reflist}}
Further reading
- {{Cite book
| last=Allen | first=Paul
| title= Service Orientation, winning strategies and best practices
| publisher= Cambridge University Press
| year=2006
| location= Cambridge, UK
| isbn=9780521843362
}}
- Luba Cherbakov et al. (2005). "[http://ieeexplore.ieee.org/search/freesrchabstract.jsp?tp=&arnumber=5386696&queryText%3Dcherbakov%26openedRefinements%3D*%26searchField%3DSearch+All Impact of service orientation at the business level]{{dead link|date=January 2025|bot=medic}}{{cbignore|bot=medic}}". IBM Systems Journal Oct 2005
- {{Cite book |last = Josuttis
|first = Nicolai
|title = SOA in Practice
|publisher = O'Reilly
|year = 2007
|location = Sebastopoal, CA, USA
|isbn = 978-0-596-52955-0
|url-access = registration
|url = https://archive.org/details/soainpractice00josu
}}
- {{Cite book
| last=Rotem-Gal-Oz | first=Arnon
| title= SOA Patterns
| publisher= Mannikng Publications
| year=2012
| isbn=978-1933988269
}}
- Jenny Ang, Luba Cherbakov, Mamdouh Ibrahim (2005). "[http://www.ibm.com/developerworks/webservices/library/ws-antipatterns/ SOA antipatterns]". IBM Online article, Nov 2005.
- Ali Arsanjani (2004). "[http://www.ibm.com/developerworks/library/ws-soa-design1/ Service-Oriented Modeling & Architecture]". IBM Online article, 09 Nov 2004.
External links
- {{Commonscatinline|Service-oriented (business computing)}}
{{DEFAULTSORT:Service-Orientation}}