A while back, I interviewed Arnon Rotem-Gal-Oz, author of "SOA Patterns" and the Architecture & Design blogger at Dr. Dobb's Journal, about SOA patterns.
He compared SOA patterns to design patterns in software development, adding they're "repeating solutions to common architectural challenges in distributed systems in general and SOAs in particular."
In other words, it's a way architects noticed you could reliably and repeatedly use to fix certain problems in a service-oriented architecture.
Just as there are design patterns, there are design anti-patterns. And, as a spoiler, let me tell you business readers right now it sounds way more complicated than it is. According to Wikipedia, the term "anti-patterns" was coined in 1995 by Andrew Koenig. Officially, an anti-pattern is a repeated pattern that appears to be beneficial, but actually produces more bad than good. It's supposed to have a documented solution, as well.
But in the popular IT lexicon, anti-pattern has become a bit of slang for common mistakes and bad practices.
By now, some of you may have guessed where I'm going with this. That's right: Today's topic is SOA anti-patterns. Steve Jones of CapGemini documented a slew of SOA anti-patterns for InfoQ in 2006, and Friday, he revisited those anti-patterns on his blog. He continued the series yesterday with a set of posts on new SOA anti-patterns.
It's light reading and some of the titles are pretty humorous, but it manages to tickle that sensitive underbelly of truth. For example, he discusses the ADHD (Attention-Deficit Hyperactivity Disorder) SOA Anti-pattern, which is when architects (or managers or developers or bloggers or pick-your-IT title) continually change what "good" looks like from an SOA perspective.
But he isn't just spouting off a top 10 list of silly names for SOA bad practices. He also offers his analysis about the cause of the problem and advice for beating it. Here's a list of the anti-patterns he's published so far:
- Update of the original, 2006 anti-pattern list
- ADHD SOA Anti-pattern
- The My Way or The Highway Anti-pattern
- Yes Sir, No Sir, Three Service Views Full, Sir! Anti-pattern
- DOA (data-oriented architecture) Anti-pattern
While you're on his blog, you should also check out this post about selling SOA to the business. It also posted Monday and is possibly the briefest business case for SOA I've ever seen.