Goto is not Evil

Those of you who tried to convert BPMN to BPEL know the “Goto”-Problem which stems from the fact that BPMN is graph oriented while BPEL is block oriented.
This makes it hard to transform one into the other and causes pain in todays BPMN undertakings.
Although goto is banned in modern programming languages, business-like modeling languages definitely need it.
The upcoming version of Windows Workflow Foundation with its Flowchart support gives a good example how this could look like.
In his blog Maurice De Beijer has a nice image how this looks like in the Visual Studio.NET Workflow Designer.

Dehydrating long running Groovy DSLs

In my recent article about Domain Specific Languages (DSLs) published in the 12/2009 issue of Javamagazin I described how to implement DSLs using Groovy.
In the article I mentioned that dehydration (state persistence) could be added to the DSL runtime if needed to support long running processes.
I’ve created a Groovy script dehydration.groovy to illustrate how this could be achieved.
Basically the Groovy script is stopped by terminating the executing thread and the state is pulled out.
Later on the state is injected and the remaining part of the script is executed.
This approach can be used to process any kind of long running scripts, especially if they have to wait for external events.

Biztalk Technology Specialist

I passed the Microsoft Biztalk Server certification (MCTS) with flying colors (985).

An MCTS is:

“A Microsoft Certified Technology Specialist in Microsoft BizTalk Server 2006 (MCTS: BizTalk Server) has a deep and broad understanding of the design and development of distributed applications that use BizTalk Server 2006. The credential holder has also demonstrated expertise in deploying and managing a BizTalk Server 2006 solution and can create a BizTalk orchestration, integrate business rules and human workflow services, manage business processes, troubleshoot BizTalk solutions, and consume and publish Web services.”

I knew that before, but now it is official. 😉

Now I an entitled to deliver the official Biztalk MOC courses (2033 and 2934) in addition to the regular development courses.

Rules, Processes or Services?

Together Services, Business Processes (BPM) and Business Rules (BRM) can be a powerful combination to keep the SOA promise of creating agile business applications.
I often hear questions about how those three can be combined in a reasonable way.
In their article Implementation of business rules and business processes in SOA Boris Lublinsky and Didier Le Tien give some practical advice.

New SOA Workshops

Recently we released the SOA Open Source Reference Platform (OSRP) Workshop.

If you have ever tried to evaluate Open Source technologies you might have experienced that a lot of time is lost in simply integrating all the different tools and products.
The idea behind the workshop is to provide people with an integrated environment which can be used to quickly learn Open source SOA technologies. This environment is called the SOA Open Source Reference Platform (OSRP).
After the workshop the attendees have a sound understanding if and how Open Source products can be used to build a reliable SOA platform.

The OSRP-Workshop is ideal after attending the SOA Workshop which gives an overview about terms and technologies used in the area of Service-oriented Architecture.

SOA without BPM without SOA

Some people argue that SOA and BPM are two different things. That is probably right because it is possible to create a service landscape without having a business process representation. But if you look at the main reason for establishing a service oriented architecture the perspective changes.
The main reason for SOA is business agility. Every technology that helps to achieve that goal is welcome to be integrated in the SOA technology stack.
BPM makes perfect sense as it fosters better aligment on business and IT and helps to shorten development cycles.
Ok understood. But if that is true wouldn’t be be enough to use a BPM only without services? The answer is no because in order to create a flexible BPM solution it must be based on a sound service landscape. If that is not the case changing a business process would require new services to be created or existing to be altered. Sooner or later this would lead to service proliferation which would render the BPM approach useless over time. The result would be anything but hardly an agile system.

My conclusion: Using BPM as part of a SOA makes perfect sense if it is based on reliable and well designed services.

Free BPEL 2.0 Designer

Active Endpoints, Inc., the leading provider of SOA orchestration products and services, today announced the availability of ActiveBPEL 3.0. The ActiveBPEL product family includes open source and commercial SOA orchestration solutions that are standards-compliant and platform-neutral, forming the foundation for fast, cost-effective business and systems integration. Among other important capabilities, ActiveBPEL 3.0 comprehensively supports the forthcoming WS-BPEL 2.0 standard, which will be officially published early in 2007.
The Eclipse based ActiveBPEL Designer is free.