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.
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.
When introducing Scrum in a project it is essential for the team to get used to the terms quickly.
The Scrum Poster gives a nice overview which might help in this regard.
In the current issue of Javamagazin you’ll find my latest article about how to create Domain Specific Languages with Groovy. Unfortunately the article is not yet published online, so that you have to get the printed magazine to read it.
It is often said that software development should be like building cars.
But cars are very different from modern software systems.
Since its invention more that 100 years ago a car is a very stable concept.
This works because the purpose for which it is build (driving on a more or less solid ground) is stable as well.
Software on the other hand needs to be much more flexible because the context changes frequently.
Some examples are markets, organizations, products and the internet.
The concept of software is much more abstract than the concept of a car.
More and more people realize that agility paired with quality is a key success factor.
That’s why a short concept to market cycle is needed.
Automotive is in fact a bad role model. You can see that every day.
The market is demanding for efficient cars with a low carbon footprint.
But the vendors fail to deliver. Why? Because they are too inflexible.
Let us not make the same fault.
In fact the methods and tools are available to establish a fast concept to market cycle.
Some examples are Scrum, Silverlight SketchFlow and Business driven SOA
If the companies have the heart to try those new approaches, they might be with rewarded with competitive advantage and flexibility.
Silverlight is an ideal frontend technology for Java applications as well. This is especially true for line of business applications which we find in enterprises of all sizes.
The whitepaper Using Silverlight for JEE applications explains why.
While testing some advanced features of Silverlight 3 like transformation and dynamic content animation I implemented a credits dialog that many people might know. It is called Silverlight 3 Star Wars Credits.
Feel free to use it as a source of inspiration or to promote your team in your next web or RIA application.
The Oracle SOA Suite Workshop is available now.
In one or two days participants learn how to apply SOA principles from concept to code using Oracle SOA Suite 11g.
The workshop is based on a preinstalled environment which integrates all required products and allows to get started with the technology in no time.
The workshop can be tailored to customers needs.
Recently when I talked to people or read articles about Spring DM Server it was frequently explained that one reason for using it in favour of plain OSGi is to gain independence from OSGi.
Although Spring DM Server comes with a simple to use POJO-based approach to implement OSGi services, the same can be achieved with OSGi declarative services which is part of the OSGi standard services.
With just one configuration file one can turn a POJO into an OSGi service without any OSGi plumbing. This seems to be often overlooked.
There are other reasons why one would want to use Spring DM server instead of plain OSGi, but achieving independence is clearly not.
Rather the opposite is true. Instead if relying on the widely accepted OSGi industry standard another dependency namely Spring DM server is added.
That is ok if it helps to create a better technical solution, but there is a price to pay.
Scrum techniques are more and more used in todays IT projects.
After applying those techniques in several projects I decided to go for a more formal certification.
I got the certification yesterday and now I am a Certified Scrum Master.