Bindings, Platforms, and Innovation
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
Tracking change and innovation in the enterprise software development community
Posted by Jean-Jacques Dubray on Jul 19, 2007 04:23 PM
Innovating at the business process level has become critical for most companies in 2007. In a classical case of the innovator’s dilemma, Google looked at Overture’s processes to publish ads on participating sites and quickly figured out they could do better. Armed with only a few optimized processes, they took over Overture’s business in 18 months and grew the web ads market to unimaginable levels. This is what business process innovation can do.
Overture was unable to react, partly because they did not see it coming and felt little pressure at first to optimize their processes, but mostly because once they were built Overture could not change its systems which involved critical manual steps that Google eliminated or offered in a self-service mode.
It has long been recognized that traditional application models are not geared towards changing business processes easily. In a J2EE or .Net programming model, processes are hard coded. Charles Simonyi –the cosmonaut developer and founder of intentional software- compares this type of coding to an “encryption” process. In most companies, and over time, employees tend to “go around” systems as new process optimizations are discovered or certain exceptions can’t be handled and tracked by the systems. Ultimately, critical pieces of the business process context or analytics are captured in notes or spreadsheets at best.
The effort to create and leverage business process formalisms in software is not new. In his thesis “the state of the art of business process modeling and execution” (2007), Jungmin Ju, is retracing the history of BPM standards. Yet, as of today, the attempts to integrate BPM within the application model are timid to say the least. Microsoft does provide some building blocks with WF and Acropolis, but for the most part, BPM products are developed as solutions and therefore require integration with application models such as JEE or proprietary environments.
This latest survey from Aberdeen confirms that most people indeed need to change their processes often and that they are committed to do it with a BPM infrastructure. The survey reports that:
“51% employ manual processes to get the job done” and “21% say their applications force them to limit service offering”. As a result “50% of those surveyed are turning to BPM in 2007.”
Another interesting fact is how clear the link is between SOA and BPM, which was also noted by Sandy Carter, IBM VP of SOA Strategy, when she said eloquently: “BPM and SOA are the two faces of the same coin”. And, in this article, Alex Cullen, Forrester analyst, shows how SOA is refactoring the application model towards being more process centric (see Figure 1 in the article).
“SOA technology and web services is the glue that 67% indicate they will use to tie BPM to ERP and other enterprise applications”, while 62% acknowledge that the driver of their SOA initiative is “the need to support new, agile business processes”. Aberdeen concludes “Commitment to and interest in both SOA and BPM spells the difference between Best in Class organizations and the rest of the survey pool.”
Based on these numbers, Aberdeen is suggesting that 2007 will be the year of BPM. The BPM market is growing and healthy: BPTrends.com just published their latest survey of BPM products.
Business Benefits of Open Source SOA
Agile Development: A Manager's Roadmap for Success
Free $40 SOA Demystified Book Offer
Intel® SOA Expressway Performance Comparison to IBM® DataPower XI50
Would you enroll in an India Forex Group i.e http://www.indiaforex.com Groups?
As a habitual fence sitter committed to neither REST nor WS-* I wonder at the tight coupling of BPM systems to SOA (typically implemented with the plethora of WS-* standards). Assuming that some mechanism can be put in place to help auto-describe RESTful services (WADL?) it would seem potentially ideal to combine BPM type tools and notation to control access to and flow of REST style services. Most business processes are centered around the consumption and production of documents (concrete, or virtual) - creating, updating, etc. Just food for thought.
Porter: I am not sure I can establish a semantic difference between ROA and SOA, it is rather syntactic IMHO, so I don't see why process engines would be limited to invoking WS-I type services. Representational state transfer does indeed look like an interesting idea to implement a certain class of business processes (I would not call it ideal though). Not all business processes are limited to manage "documents" even conceptually. BPM has long suffered from the lack of a general formalism that could be applied to all kinds of business processes and I am not sure REST would bring any solution to this accute problem. I don't want to revive the REST vs WS debate. I like David Chappell's post on the topic. Debate is over, both are here to stay and great at solving some class of problems. JJ-
I blogged in response to this over on ebizQ. I also think that these posts on InfoQ are useful in this context: Implementation of business rules and business processes in SOA Overview of rules engines Using rules and agile
BPM & SOA are certainly here to stay and we've been implementing an amalgam of both for our customers over last 2 years. We've noticed that the key differentiator tends to be the boundaries set between Process Resources and Process Routing/Transformation. Obviously, how well you set those boundaries is a factor of implementation experience & subject matter expertise. If one distills it down to that level - you are likely to get a solution that isn't skewed towards a "human-centric" or "service-centric" orchestration. Today, real world solutions need a balance of both. Process execution platforms like Websphere Process Server are examples of suites that offer the ability to execute BPM+SOA in a unified environment with BPEL, BPEL4People & SCA assisting. Unlike many things in life, BPM-SOA is not a chicken-egg situation. I believe an SOA mindset makes BPM implementations significantly more successful because they aid process agility & optimization. We've realized a lower ROI for our customers when they have explored process automation without having a service backbone in place. Cheers, Zubin Wadia CTO www.imagework.com "Business Acceleration Through Process Automation"
James: thanks for your comments. I agree with you after reading your book on EDM. This was definitely an eye opener for me. We need to start thinking about the relationship between EDM,BPM and SOA. JJ-
Zubin: we are also in complete agreement. I am happy to see that some practioners are recommending an approach that pushes some orchestration in the service layer as opposed to keep it exclusively in the process layer. I have been recommending this since 2002 (http://www.ebpml.org/ebpml2.2.doc and again in 2004 http://www.ebpml.org/csfsoa.ppt). Most recently I have been working on an abstract SOA framework that establish this design guideline prescriptively (http://www.wsper.org/primer.html) thanks, JJ-
We have a newsletter for the IT professionals on Enterprise Applications like PCM, BPM/SOA, Web Services, Business Intelligence, Datawarehouse, Data and Information Security. Anyone from the industry would like to write for it? We appreaciate such proposals and would like to help the writer by offering specific topics.
You can check the newsletter at http://www.vn4design.com/Cybermediadice/eapps/sept/career_digest_eapps.html
This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.
This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.
This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.
This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.
This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.
After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.
IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.
Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.
8 comments
Watch Thread Reply