Take the technology out of SOA, and see what you get

Take the technology out of SOA, and see what you get

Summary: McDonald's launches a human-based SOA, with interchangeable technology underneath.


If you really want to see what service-oriented architecture is all about, build an SOA without technology. JP Morgenthal, principal with Avorcor, always seems to bring a clear-headed perspective to SOA challenges, and suggests exactly that: if you really want to determine the worth of SOA to your business, try setting it up without any particular technology in mind.

'SOA has nothing to do with IT. It is a design pattern that can be applied to any type of system in the world'

SOA planning often gets tangled up with technology, servers, and infrastructure. However, technology actually inhibits service-oriented thinking. Perhaps its time to to think of SOA purely in business process terms, and ignore technology altogether. 

JP seems to be good with food service analogies -- a couple of years back, he coined the phrase "lunchroom Web services" to describe the creation of services of no immediate impact to the business at hand. Think of creating a Web service that makes the daily menu available to employees -- "whoop-de-doo — I can deploy 5,000 lunchroom Web services in one afternoon," he said.

To illustrate his latest point, Morgenthal points to the ultimate food service operation -- McDonald's -- which is setting up what can be considered a "a human-based SOA." This human-based SOA is taking shape at McDonald's drive-up windows. McDonald's has been working on solutions that would improve the quality of the customer experience -- which, as many know, is hampered by background noise and communication problems.

"The solution is pure SOA and the only technology involved is purely telecommunications," JP explains. To improve quality of order fulfillment at the drive-thru window, McDonald's plans to connect its drive-through window ordering system with a call center. McDonald's turned its drive-up order-taking system into service, under which technologies and processes can be swapped out as needed. "They turned order taking into a service... that, if they choose to in the future, they can outsource with no impact to the processes that are in place."

JP observes that such a process fits the description of SOA: "If you design your system as a set of services, such that the service provider can be changed without impact to your processes, then you might be an SOA." He sums it up this way: "SOA has nothing to do with IT. It is a design pattern that can be applied to any type of system in the world."

Topic: Enterprise Software

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • SOA, BPM, Components, Objects proponent's views

    SOA proponents view the world as SOA fabric. BPM proponents tend to look at everything in terms of processes. The proponents of Compnents based design / OO tend to view the world made up of distinct objects / components. All of these views have its merits. We need to leverage SOA to see everything(discrete services) linked together through well defined interfaces and as JP pointed out remove the tight coupling between the service provider and consumer. Each of the services are made up of 1 or more business processes. The services are attached to objects or components. Once we get a clear picture of the merits of each of these school of thoughts it becoms easier to address a problem and provide an effective solution, be it a IT or non-IT scenario.
  • SOA is not the Technology

    Hi Joe,
    Fantastic this is the first article that I have read where technology is not the main factor in SOA! Hopefully there will be more direction along these lines of discussion and design.

    I have seen a lot of discussion pertaining to the actual solutions for implementing SOA and have been trying to pursuade discussions towards not talking technology in reference to SOA until it is time to implement the technology, that is not to say that IT cannot be involve in the process, just that tachnology should not be a determining factor for a SOA.

    From a recent blog of mine, (I quote):
    "Java this and .Net that, it should not come down to these topics for a SOA at all, sure technologists are going to argue until the cows come home as to what technology is the fastest, most reliable and has more security but that is where it should stay, at the technology level during the design to fulfil SOA. SOA is all about interoperability independent of technology, at the end of the day the technology a SOA is implemented on does not matter as far as a SOA is concern, as long as the services are able to be published and consumed."

    Good Article!