|
Sponsored Links
Resources
Enterprise Java Research Library
Get Java white papers, product information, case studies and webcasts
|
News
News
News
|
Messages: 13
Messages: 13
Messages: 13
Printer friendly
Printer friendly
Printer friendly
Post reply
Post reply
Post reply
XML
XML
XML
|
 |
Top 10 SOA Pitfalls
Over the last 2 months Rik de Groot, Viktor Grgic, Vincent Partington, and Gero Vermaas ran a Top 10 SOA Pitfalls blog series. This top 10 countdown is now completed and it's time to wrap up and step back and see if there is some logical grouping in the top 10.
Putting all pitfalls together in one simple 10 item list quickly reveals a grouping of types pitfalls. Number #1 and #2 are both related to organizational aspect. If the culture, mindset and attitude are not right, these are typically the pitfalls that a SOA endeavor may run in to. The next group covers the items #3 till #7, these are all related to architectural/design skills. And the last group, numbers #8 till #10, relates to implementation issues (although proper design could help to prevent these pitfalls from manifesting themselves).
The complete Top 10 SOA pitfalls list is:
Implementation pitfalls
Architectural/design pitfalls
Organizational pitfalls:
It was great fun to compile this list with the four of us and it also helped us to get a sharper view on why SOA projects or programs are challenging and hard to complete successfully. Hopefully you've learned a thing or two and are able to prevent or at least recognize the pitfalls in your day-to-day work.
|
Threaded replies
| · |
Tuscany?
by
|
Message #261986
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Top 10 SOA Pitfalls
Overall a pretty decent set of articles. I'm not sure about the BDUF vs. agile argument though. Unless a SOA is well thought out and a well-defined process exists for extending and modeling it, I think it can easily become fragmented and begins to lose its value. I think the governance process is not stressed enough.
I think the authors may have confused big up front design with waterfall. The up front design needs to be done, but can be done iteratively. That is, it is ok to model business process A, and move it to implementation while modeling business process B. Contrast that with waterfall, which states that I move nothing to implementation until all design is complete.
I am reading a couple of SOA books from Thomas Erl, who does a great job of breaking down and explaining the SOA space in some of the simplest terms I've seen. Wrapping your mind around SOA is half the battle. Once you've mastered the lexicon and principles, it becomes much easier to carve through the confusion and implement.
You can read some excerpts on his web sites:
http://www.soaprinciples.com and http://www.whatissoa.com
- Joe
|
|
Message #262041
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
COMPLI CATED
I tried a bit of JBI this week. It is tooooooo complicated! With a model like this you don't need a pitfall to actually fall!
|
|
Message #262221
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: COMPLI CATED
I tried a bit of JBI this week. It is tooooooo complicated! With a model like this you don't need a pitfall to actually fall!
You should stick to CSS/JSP/HTML/JavaScript editing then champ.
|
|
Message #262231
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: COMPLI CATED
You should stick to CSS/JSP/HTML/JavaScript editing then champ.
I guess I would. You can make money developing SOA and I will be replacing them by HTML in a couple of years.
|
|
Message #262298
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Top 10 SOA Pitfalls
Good list Gero.
The top two really get at the heart of the matter. According to recent study by Burton Group, the real #1 pitfall is not making SOA part of a larger business initiative.
Apparently there are IT shops out there who have done SOA perfectly right from a technical standpoint and it's not delivering. Why? Because it needs to be about more than the technology in order to succeed. There are also a fair number of folks who think SOA = integration. They're wrong. The ones who get outside the integration/IT mindset seem to be the ones who are succeeding with it.
|
|
Message #262364
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Top SOA Pitfalls
The list doesn't directly highlight the need to align with business initiatives/processes. It also doesn't give due importance to having the appropriate methodology/framework to implement SOA.
|
|
Message #262453
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: COMPLI CATED
You should stick to CSS/JSP/HTML/JavaScript editing then champ.
I guess I would. You can make money developing SOA and I will be replacing them by HTML in a couple of years.
Deal!
|
|
Message #262454
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Top SOA Pitfalls
The list doesn't directly highlight the need to align with business initiatives/processes. It also doesn't give due importance to having the appropriate methodology/framework to implement SOA.
List is far from perfect and complete, but gives nice overview.
|
|
Message #262477
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: COMPLI CATED
I tried a bit of JBI this week. It is tooooooo complicated! With a model like this you don't need a pitfall to actually fall!
Just a suggestion, stay away from JBI. It's caught on just about nowhere and it's roundly panned as an object-oriented approach to service orientation.
Unless you need JBI for a specific project, it probably isn't something you need to know. More importantly, JBI is emblematic of the "SOA = integration" mindset I was referring to. More than learning a specific technology, what you really need to do is learn how to build composable, stateless, contract-based, loosely coupled services (if you're interested in pursuing some SOA skills).
From what I understand, a lot of developers get hung up on composability and statelessness. It's not how they were trained to build things and it requires a major mental adjustment.
Here's a breakdown of basic SOA principles. If you're looking to play around with a specific technology, I'd suggest Apache Tuscany. It's focused on composition instead of integration and it's incredibly uncomplicated. Brushing up on REST skills is probably a sound idea as well.
|
|
Message #262545
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
not just SOA
most of these pitfalls can and have been seen in non-soa development efforts
it is good to see more explict codification of what experience shows does and does not work
|
|
Message #262562
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Tuscany?
Apache Tuscany. It's focused on composition instead of integration and it's incredibly uncomplicated.
I took a quick look, but the URL to the SVN repository is broken, and the user guide seems very incomplete. Kinda hard to figure out what Tuscany actually does for me. I looked at http://tuscany.apache.org/getting-started-with-tuscany.html , but I still couldn't figure out what value Tuscany is adding. It looks like I have to write a verbose "composite" XML file to get something done. And some of the classes are using Tuscany classes, which seems like a no-no for a framework that is supposed to shield the application code from the environment, right?
I didn't look much closer, it just seems like Tuscany has very half-baked (and the broken SVN URL doesn't really inspire confidence!).
|
|
Message #262696
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Top SOA Pitfalls
The list is not expected to be perfect and complete if it were entitled just "Top SOA Pitfalls". But for it to be entitled "Top 10 SOA Pitfalls", it implies that this list highlights the first 10 SOA pitfalls, thus the expectation to be reflective of commonly perceived or observed pitfalls, the first 10 to be exact.
But it's a nice overview indeed.
|
|
 |
New content on TheServerSide.comNew content on TheServerSide.comNew content on TheServerSide.com |
 |
 |
Reza Rahman explores the features of the proposed JSR 299, Contexts and Dependency Injection for Java EE (CDI). When approved, it promises to be a key feature of Java EE 6.
(November 2, Article)
SAML is an XML-based standard for exchanging authentication and authorization data between security domains. The single most important problem that SAML was created to solve is the Web browser Single Sign-On problem. Many organizations are debating whether to stay with version 1.1 or move to 2.0. This article makes observations about both options.
(September 28, Article)
Joe Ottinger takes a look at how people learn, and applies it to the practice of programming. He notes that understanding how people learn is an essential part of working in a programming team.
(September 22, Article)
Stephen Maryka gave us an article about the Asynchronous Web and posed a number of questions that get examined like an approach to delivering Asynchronous Web capabilities through extensions to existing Java EE technologies.
(July 14, Article)
JavaServer Faces Flex goal is to provide users capability in creating standard Flex components, part of flexSDK which is open sourced through MPL license, as normal JSF components. This article by Ji Hoon Kim will provide an overview of creating a simple multilingual JSF page consisting of JSF Flex tags.
(June 29, Article)
In this session Jeff explores the key characteristics of successful SOA projects. He covers some of the patterns, and anti-patterns, tool sets, and strategies that he himself learned the hard way. Last, he provides a strategy and blueprint for achieving a high likelihood of success in your SOA project.
(June 23, Tech Talk)
Ari Zilka, CTO of Terracotta, Inc., talks about the new features in Terracotta 3.1, announced during JavaOne and available now.
(June 15, Tech Talk)
In this Tech Talk, Josh Long explores an integration challenge using Spring Integration and walks through the implementation, employing and expanding on the basic patterns of Enterprise Application Integration to tie together components into a function integration solution, and then demonstrates how Spring Integration helps address the integration requirements.
(June 15, Tech Talk)
In this Tech Talk, David Geary teaches you: The basics of Google Web Toolkit; How to implement Ajax-enabled applications in Java; Internationalization; Hooking into the browser history mechanism; Remote procedure calls.
(June 4, Tech Talk)
Jon Kern discusses the best architecture/technical solutions and ensure that they are repeated by all developers. By tackling the architecture up-front in a serial manner, subsequent parallel development will be much more manageable and predictable.
(May 28, Tech Talk)
This keynote describes the frustrations of modern knowledge workers in their quest to actually get some work done, and solutions for how to guard yourself against all those distractions. Neal Ford talks about environments, coding, acceleration, automation, and avoiding repetition as ways to defeat the misguided attempts to sap your ability to produce good work.
(May 26, Tech Talk)
Gil demonstrates how new, aggressive uses of already abundant compute capacity by common applications offer competitive value for application designers.
(May 21, Tech Talk)
Chris Keene introduces WaveMaker as a new way to automate the ability to generate Hibernate classes in order to more quickly bring OR mapping into an application.
(May 19, Article)
In this session Nati Shalom demonstrates how to take a standard Java EE web application and scale it out or down dynamically without changes to the application code. Seeing as most web applications are over-provisioned to meet infrequent peak loads, this is a dramatic change because it enables growing your application as needed, when needed, without paying for unutilized resources.
(May 19, Tech Talk)
Download the entire book of Jakarta-Struts Live and learn about Struts MVC, Tiles, the Validator, DynaActionForms, plug-ins, internationalization, and more.
(Book PDF Download)
The Application Server Matrix is a detailed listing of J2EE vendors and their application server products, with information on latest version numbers, J2EE spec support and licensing, pricing, platform support, and links to product downloads and reviews.
(Application Server Comparison Matrix)
|
|
|