Skip to content

In A Whimsical Mood

Good morning Class! Welcome back to the Cervantes School of Software Wrangling!

This course is “Tiliting at Windmills 201.”

I’m your lecturer Don Quixote.

We will begin with a snap quiz.

You have two well-established computer systems A and B. In accordance with its original design system B makes use of a small but signifiant proportion of system A’s schema. It is proposed that system B should be enhanced, which will require accessing a few additional tables from system A’s schema.

Do you:

  1. Go ahead and grab the data you need, along the lines of what is already being done?
  2. First espouse the concept of a “common integration language” and then promote the idea of linking the two systems together via some to-be-announced-Real-Soon-Now “integration layer”?
  3. Place a huge purchase order for the latest silver bullet product espoused in last month’s “What’s Next! A busy CIO’s guide to the latest trends in ICT” magazine, mandate that this product is now the “Enterprise Standard”, and require systems A & B should use this product for their new “Enterprise-level Interactions”?

I’ll give you a few seconds to think about it….

…time’s up.

Now: those of you who answered ‘A’…

Sigh. Did you learn nothing last year? Don’t you remember “Complification 101″? Don’t you remember the Three Principles: ‘Complicate’, ‘Obfuscate’, ‘Procrastinate’? I am disappointed in you…you’ll never get ahead in today’s enterprise with a can-do attitude like that.

OK. Who answered B?

That’s more like it! Glad to see you ‘B’s were paying attention in “Elementary Enterprise Operations 101″ last year. Remember that this alternative gives you the advantage of being able to wander around the whole organisation declaiming “Integration Layer” at every opportunity. This may not constitute a successful approach to building working software but it sure is a great way of building visibility with The Powers That Be…and what’s more important, after all, eh?

NO, Mr. “I answered ‘A’…I thought it was all about building software to do something useful”…it isn’t. Really! Maybe you should be rethinking your career path while the year is still young?

Did anybody answer C? Ah. you must be from the “Software and Sales” double degree. I see bright futures ahead for you guys. This is the way to go! Even you ‘B’s need to take notice here. Maybe even consider taking “Hype and Hysteria 204″? There’s always another silver bullet just around the corner and you don’t want to miss out on the opportunities.

Who’s left? You over there…you’re a “Software Law” student aren’t you? Kibitzing, I see…what are you looking so happy about? Wonderful, just wonderful: “Looking forward to all those failed implementations.” This, class, is what you should really be aspiring to if you really want to succeed! The software wrangling business is for mugs…why do you think that I am standing here in front of you and not sitting in front of a computer!

OK. With all this in mind, let’s begin, shall we?

Today’s lecture is entitled “A Picture Paints A Thousand Words. It Also Consumes Many Megabytes, Gives You RSI And Still Ends Up Less Useful Than A Single Line Of Code.” Please open your books to the chapter entitled “Oracle Service Bus”…

I’ve got to go now…some nice men in white coats have come to take me on holiday. How nice of them!

Seriously though…some 2004-vintage food for thought, entitled Jump off the bus, take a cab!:


A lot of companies have expressed the similarities between SOA and the concept of (hardware) Bus….I understand that a bus offers a “common interface infrastructure” and components can use the bus to communicate with each other, this is pretty much where the analogy stops for SOA. SOA requires very little in the middle (other than a standard communication infrastructure, that we already have for free) and is inherently point to point and asynchronous, unlike most bus architectures which require some centralized infrastructure and synchronous behavior. I would agree with the OASIS/BCM group that the only shared component in a SOA is a directory service.

Bear this quote in mind the next time some SOA-totin’ salesman attempts to bale up your checkbook with an order for their latest and greatest centralised server-based product.

Also worth an “honourable mention” is this oldie-but-a-goodie from InfoQ: ESB-Oriented Architectures considered harmful.

A final thought, as directed at the ‘real’ Don Quixote:

And you, Señor Don Quixote, your head is going to end up a stranger to your neck.

Tags: , ,

C, Java Enterprise Edition, JEE, J2EE, JBoss, Application Server, Glassfish, JavaServer Pages, JSP, Tag Libraries, Servlets, Enterprise Java Beans, EJB, Java Messaging Service JMS, BEA Weblogic, JBoss, Application Servers, Spring Framework, Groovy, Grails, Griffon, GPars, GAnt, Spock, Gradle, Seam, Open Source, Service Oriented Architectures, SOA, Java 2 Standard Edition, J2SE, Eclipse, Intellij, Oracle Service Bus, OSB