Transactions without Transactions
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Boris Lublinsky on Nov 18, 2009
As we have reported many times before, one of the main prerequisites of SOA success is alignment of purpose and objectives between IT and business.In their new article,IBM’s Jens Andexer and Willem Bekker from Standard Bank provide some samples of the good, the bad and the ugly business aspects of SOA .
They have structured their SOA business impact analysis in several categories:
Organizations that have traditionally been organized as silos may need to change their structure to take full advantage of becoming services oriented. This shift can be complex, expensive and there is no shortage of opponents to the change.
The organization must learn what it means to be agile and how best to exploit this agility for itself. The ugly truth is that this is one of the most difficult lessons to learn.
This is not a role typically filled by business lines and will make for an uncomfortable change.
Adding technology to an IT landscape does not make it simpler even when the advantages out way the costs. But just because the IT landscape is more complex does not mean it cannot appear simpler. The introduction of the service allows the complexities in the IT to be a secret.
SOA that is too technology focused is unlikely to deliver on that promise since they will not show value in terms business people want to see it. Flexibility is only recognized as business value when it accelerates the operationalising of business requirements or reduces the cost of operational systems by allowing their rationalization. Technology focused initiatives typically do not do this.
- Structure - the structural relationships between elements is the same
- Semantics - semantic refers to the meaning and use of the data. Data must have a consistent meaning and must not be used in a way that can be misleading.
- Format - how data is represented is important.
- Type - A type is determined by the representation of data and the set of behavior that can be performed on it.
- Timing - Timing refers to when an attribute is updated.
- Life cycle - under what circumstances data is add to data bases and when it is updated and when and how it is finally deleted from data bases.
Dealing with the inconsistencies is one of the great challenges of designing service interfaces. The ugly truth is that a uniform service interface is very difficult to build.
In order for SOA to be successful it is not enough for IT to introduce a set of SOA technologies. It has to be driven by a set of concrete business goals and expectations and coupled with a culture of cooperation between business and IT.
The silence on this post is deafening... maybe because there is nothing to argue about. In that case, what conclusions should draw? I see that
1) Few organizations today are positioned to be successful with SOA,
2) Few existing SOA efforts will deliver value to their organizations.
OK swell... what do we do?
1) If I'm a CIO, I want to quickly kill any project or purchase associated with 'building an SOA' that has no direct business unit sponsorship or near term bottom line value.
2) If I'm managing such a project, I need to quickly get close to the business units and the above CIO (probably bypassing my direct management in the process) and convince them of the near term value. I probably have to change the project scope to get there, but at least I have a chance of winning this way.
Paul:
just like anything IT does, SOA is not that easy, not a silver bullet nor does it deliver magical results. If you combine this with the typical vendor games and tricks (Oslo being the last example), the typical analyst ignorance and the usual pundit FUDing dog and ponny show, you probably get quite a bit of fatigue.
Lots of people have done SOA and continue doing SOA and people are tired of this type of discussion. I am.
Jean-Jacques,
>> Lots of people have done SOA and continue doing SOA...
I keep hearing this, but I just haven't seen it. Given the organizational and cultural issues mentioned in this article (all of which I have seen repeatedly) I have to ask who these people are and how their IT organizations work. The fact is, most SOA information comes from vendors, analysts and pundits, not IT customers. Show me a business unit manager or CEO from a large org that says they have obtained value from a SOA effort.
>>...and people are tired of this type of discussion. I am.
I guess if we were seeing only the most backwards of organizations failing at service orientation, then I would agree. But the fact is, tiresome as it may be, most organizations are having difficulty. This isn't a problem with SOA itself, but with the difficulties organizations have with providing what SOA requires to be successful.
Personally, I would like to see more discussion around this topic; if another forum is more appropriate than InfoQ, please point it out.
Paul,
I don't know your background but I speak and contribute to our customer's SOA every day and I don't see much fatigue or doubt there. I do see a lot of things that could have been done far better, if only the analysts, pundits and vendor knew what they were talking about. Vendors could have also helped with better products and not changing direction every release, let alone product names or "branding".
For me the problem is right there, SOA changes many things, yet few people understand the changes. Most people I see are building their SOA at the "data access layer" rather than at the "business service layer". When you combine these two things, you realize that lots of organizations could feel the pain if a) they don't assess these changes correctly (SDLC, Governance, programming model and factoring of the business logic) b) they built their SOA at the wrong level.
Again, nothing I see in the literature, vendors, analysts... would help a company avoid that. I do see some haha moment when I am given the time to explain these issues and some of the possible solutions.
Feel free to continue the discussion: jdubray -at- gmail.com
JJ-
Dubray,
Are you saying that in your experience SOA is more successful as a Data Access Layer rather than that a Business Service layer?
No, I am saying that most people construct their SOA at the level of the DAL rather than the BSL. This is, IMHO, a mistake.
JJ-
I agree..
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.
Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.
7 comments
Watch Thread Reply