Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) is an approach to building business applications by representing solution logic as loosely coupled black-box components known as “services” (Limaye, 2013). These services must have well defined business objectives and perform discrete units of work. The provider and consumer of the service need to communicate by using same language, and the service has to be available and discoverable.

“SOA is not a luxury, the soup of the day, or a flash in the pan. It enables and is enabled by the biggest waves of technical innovation in the last three decades such as digitization, polymorphic objects, and the Internet. As a paradigm, SOA has the flexibility to transform innovations that are unknown today but will be known tomorrow into profit and growth” (Wik, 2016).

According to (Erl, et al., 2015) Gartner analyst Yefim V. Natis was the one who coined the term SOA in 1996, defining it as “a software architecture that starts with an interface definition and builds the entire application topology as a topology of interfaces, interface implementations, and interface calls.”

Ideally SOA pretends to transform for better, poorly planned systems and fragile chains of dependency. The following service types mentioned by (Limaye, 2013) are very useful to understand the idea of services and how they fit into the SOA paradigm:

  • Process Services
  • Composite Services
  • Atomic Services

Services

SOA focuses on application reuse tied to business processes, advocates loose coupling to compose business objects without restricting who the consumer is.

“In a 2008 study, The Burton Group found that SOA projects in half of the 20 companies that took part in the study failed. On the other hand, some projects were “wildly successful”, significantly contributing to the company’s profile and profits. Another 30% were neither successful nor wholly failed. Failure was a tipping point where the company spent money and time with little return on investment (ROI). Technical success sometimes had no payoff. “Some users had executed nearly perfectly in terms of doing SOA on the IT side, but the initiative had not yielded increased agility, quicker time to market, or project savings because the business remained completely oblivious to the initiative”” (Wik, 2016).

Fifty percent of failure for SOA projects, compared to other similar IT efforts is high. What is needed? Framework, Governance, Management, Principles, Patterns? I may say all of them and more.

“SOA is at the apex of that trend of change over the last half century, from a low-level assembler of moving bit strings from one register to another register to high-level integration of moving services into clouds. “Give me a place to stand on,” the Greek mathematician Archimedes said, “and I will move the Earth.” SOA promises to move enterprises in a better direction. But if change is the changeless reality of our lives, where should we stand? Where is our security? Machines become obsolete because they cannot learn, but we can learn. Basic suitcase skills of reading, writing, analyzing, speaking, and interacting that let people excel in the Renaissance and the Industrial Revolution are the same skills that we need today and tomorrow. And, as we learn, we’ll find that seeking security in a firm or in wages or in a position is a mirage and that the only real security is that which lies within” (Wik, 2016).

Adopting SOA needs long-term commitment and a substantial reconsideration of the business, culture, technology and priorities of the organization. The next factors, are mentioned as fundamental and critical for achieving that success (Erl, et al., 2015):

  • Teamwork
  • Education
  • Discipline
  • Balanced Scope

Balance scope

“The concept of SOA provides an architectural style that is specifically intended to simplify the business and the interoperability of different parts of that business. By structuring capability as meaningful, granular services as opposed to opaque, silo’ed business units, it becomes possible to quickly identify functional capabilities of an organization, avoid duplicating similar capabilities across the organization and quickly assemble new capabilities.” (The Open Group, 2014)

Enterprise Architecture is vital to help an organization becoming service-oriented, by linking stakeholders together ensuring awareness of their appropriate context and helping to meet the needs of the stakeholder’s community.

References

Erl, T. (n.d.). Service-Oriented Architecture. 2005: Prentice Hall.

Erl, T., Gee, C., Kress, J., Maier, B., Normann, H., Raj, P., . . . Winterberg, T. (2015). Next Generation SOA. Prentice Hall .

Limaye, M. (2013, April). SOA Fundamentals & Governance. Denver.

The Open Group. (2014). TOGAF Version 9.1. Van Haren Publishing.

Wik, P. (2016). Service-Oriented Architecture. Blue Kitten.

This entry was posted in Main. Bookmark the permalink.

3 Responses to Service Oriented Architecture (SOA)

  1. Nick Bongiovanni's avatar Nick Bongiovanni says:

    As someone without SOA experience I found your post to be very informative and interesting. I really enjoyed the quote in your second paragraph from the Wik source. The more I learn about SOA, the more I can picture the architecture in my everyday work life. I also plan on reading more into the sources you provided as well as they seem very informative as well!

    Like

  2. This is an excellent overview of SOA. The one thing I have found is that most people within the company do not fully understand this architectural principle. They think that SOA is just web-services. But, in fact, it is a much older concept of modularity with a new moniker. It is a way of looking at the functionality to create a system that can be easily worked and is very agile.

    Excellent post. I will be sharing this one with some of the people I work with.

    Like

  3. SOA has been an interesting topic for me for a while even though I have not had an opportunity to work in fashion on this till now. You have explained SOA very well and there are more details I understood on SOA from your post. You have very well brought the complete SOA concept and architecture together. For me the simplest way to understand SOA has been understanding the payment service that is called for online purchases. A service that is called to fulfill the immediate need. Thanks for providing the insights on SOA and I am sure I will be referring to this post any time I need information on SOA.

    Like

Leave a comment