JBoss Workflow JBpm and JBoss Rules (Drools)

Notes from this Post on the Serverside

 I recently wrote an O’Reilly article on one of the related JBoss projects the Drools / JBoss rules engine.

Just to get the difference between jBPM and Drools / JBoss Rules straight in my head:

– Workflow tends to be ‘wide’ where Rule Engines tend to be  ‘deep’.

– Workflow is wide as the flow is spread over different people / actors and over time.

– Rule Engines are ‘deep’ as they apply simple rules to solve complex problems, but in general the rules are applied ‘all at once’.

Some of the confusion (in my head at least) comes from the fact:

– It is possible to implement workflow using a rules engine, much as it is possible to write your own workflow using Java. Of course , you don’t get the graphical designer that JBpm has.

– Both JBoss Rules (Drools) and JBoss Workflow (jBPM) see to
‘externalize’ part of the solution outside of Java. By stepping outside
of Java to use an XML / Graphical based approach, it makes the solution
easier to configure and understand.

Enterprise Java Workshop in Dublin

Link to Enterprise Java Workshop, to be led by Dr. Bruce Martin in Dublin on the 6th – 9th March.

Is anybody going? Is it worth $1995 USD for 4 days? (and I’m not going to get sniffy about us using Euro over here 🙂 ) Who is this course aimed at? In some ways this course is like Corba: very relevant to the very small niche that use these technologies, but the broader line of ‘best practice’ has moved on.

An extract from the Agenda is below. It seem to broadly match what Sun looks for in it’s Enterprise Java Architect Certification. As such it shares the plus and minus of this approach : You get the Orthodox Entreprise Java Approach, or at least the approach being plugged by Sun about 3 years ago.

The trouble with this approach is that the Enterprise Java world has moved on. Hibernate has pushed aside Entity Beans , so much so that Enterprise Java Beans 3.0 is a complete turnaround it it’s direction. Spring has got a lot of traction as an EJB-Lite (and I mean that with the most positive connotations). Enterprise Java Patterns are much better understood (just search the IBM site), if not more widely understood.

Where’s the Ajax and the impact of multiple, small , web requests on application scalability? The JSON (as part of the Web Services)? Does it cover Java Server Faces and the emerging Ajax enabled Java Presentation Frameworks? What about workflow and rule engines and Java Messaging Services (JMS)? How about the tool integration to make your teams life easier when building the designs that you , as an Architect , have come up with? I don’t see Security in there , nor any of the other JSR (Java Specification Requests) that have come out of the broader Java community in the last 3 years.

And that’s before I go on about the only ‘technology alternative’ being offered is .Net – the PHP , Ruby and Oracle guys will have something to say about that! All have strong cases to make on a project by project basis. What about off the shelf products (both open source and commercial) that could , depending on the project, give you most of the functionality you need and you just have to customise the remaining 20%?

Maybe I’m being unfair, and the above is not the aim of the course.

For info, it’s on in the Gresham hotel on Dublin’s O’Connell Street from the 6th to the 9th of March. If you want a good solid foundation in Enterprise Java, and if somebody else is paying for it then it’s probably to be recommended. It might even help you get certified as a ‘Sun Enterprise Java Architect’. But unless you’re in an outstanding group, don’t expect it to be cutting edge.

Are you going – prove me wrong and leave a comment!

Project Module

  • Introduction
  • The Value Propositions of J2EE and EJB
  • J2EE vs..NET
  • Requirements of the Auction Application
  • Group Discusssion: J2EE or not, EJB or not
  • Activity: Identify the Auction Objects
  • Vertical Slices
  • Activity: Identify Vertical Slice
  • Communicating Architectures

Persistence Module

  • Pros and cons of JDBC
  • Object Relational Mapping
  • Java Data Objects (JDO)
  • EJB 2.x CMP Model and Relationships
  • EJB 3
  • Other O-R mapping solutions
  • Group Discussion: Persistence Matrix
  • Activity: Persistence Strategy for the
    Auction
  • Advanced Transaction and Concurrency
    Control topics
  • Activity: Identify the Transactions

Scalability Module

  • Principles of Scalability and Fault
    Tolerance
  • Application Server Clustering solutions
  • Activity: Scaling the Auction

Integration Module

  • Messaging
  • Activity: Messaging in the Auction
  • Connectors
  • XML, Web Services and SOA
  • Activity: Enterprise Application
    Integration
  • Activity: B2B Integration

Application Design Module

  • Top Ten J2EE Design Patterns
  • Activity: Design patterns or not
  • Activity: Complete the design
  • Group Discussion: Custom Consulting

Abba, Ajax and an update on the Web 2.0 presentation

For everybody waiting for the breaking news of the latest of the Web 2.0 presentation that we talked about earlier….

Met Fergal Breen (my Co-Presenter from IrishDev) over lunch – and had a very pleasant conversation about not only Web 2.0 , Ajax but Java Server Faces (JSF) and the latest moves from Oracle regarding Fusion and ADF. Also a couple of eye-opening stories about life in the Media (anybody that can parley a job with IrishDev into an invitation to Stringfellows Dublin opening night definately has character to say the least).

The upshot of all this is that the slides are now in much better shape. They mightn’t have the pictures of Abba , the 3 bridges and the Berlin Wall attached to them (you’re going to have to go to the presentation on Feb 21st in Dublin to find out). Overall , the slides are at the point where I could do a presentation from them , so that is progress.

Expect more editing as Fergal adds his topics. We decided there was more of a ‘flow’ with going for one presentation with two presenters, rather than trying to do an arbitrary split between slides.

Eclipse Callisto – 10 for the price of 1

I have a colleague who is as much an advocate of the IntelliJ IDE for Java, as I am for Eclipse. So far, in the ‘My Java Tool is better than yours’ game, I can claim the low cost (free), the number of plugins (huge) and number of developers using it (no figures, but I suspect Eclipse is now the development platform of choice). His trump card for Intellij is that ‘you download it and it just works’ – no messing around with installing plugins for stuff like JSP and Enterprise Java editing.

While plugins are always going to be slightly messy (you don’t get the gain of extensibility without some pain in the form of configuration), the Eclipse Callisto release , due in July, is another step in the right direction. It is a simultaneous release of 10 major Eclipse projects, including BIRT (reporting tools), Data Tools, Eclipse Web Tools, the Visual Editor , Test and Performance Tools and the Graphical Modelling Framework.

It may not be a ‘download from one place and it just works’, but by removing any integration issues, it will make your life easier.

Technical Knowledge Base – Just Launched

Our Technical Knowledge base has just been launched.

We found that over the last 5 years , 80% of the solutions we were building were the same. How many ways are there to take information from the web, apply some business rules or logic to it, and then save it into a database?

Currently the knowledge repository contains information on Enterprise Java , XML , Eclipse, Oracle, Architecture, Project Management as well as a lot of useful links for Dublin, Ireland and Technical specific areas.

The public area to the site can be found here. All information is generic, non-client specific, and can probably already be found on the web, although it is much easier to read it here!

Voice is the future of the internet (VOIP)

If somebody took away your web connection, you’d moan a bit, but you’d get on with your life. Lose your email connection, and those nice people in tech support better sort it out, and fast!

Voice over the internet (VOIP) is a similar ‘killer application’. You may have heard of it during the ‘EBay buys Skype for $2.6bn’ deal. One of the best introductory articles on the subject is on O’Reilly
(Slightly Technical).

Even if you don’t have access billons of Euro, here’s a list of things that it can do for your business:

  • Free calls between employees.
  • Reduced cost calls to ‘normal’ telephone numbers.
  • Give your UK and Irish Telephone numbers, diverted to your mobile , at minimum cost.
  • Low cost link in for teleworkers call centres , instead of being in the one building, can be distributed into employees homes.
  • Telephone and Video conferences at a fraction of the cost of specialised equipment.

Do you think Eircom can match 2c a minute calls, not just to Ireland, but most international destinations? Calls to mobiles are currently about 22c, but this is cheaper than many of mobile-to-mobile rates currently on offer. All this for one (very easy to use download) from Skype. There are other products, but this is the easiest to use.

On a more sophisticated level, products like Asterix give you a mini telephone exchange running on your PC. Normally you wouldn’t get too excited about this, but if your telephone system is just another web application, then you could customise it almost as easily as you do your web site. Some of the ideas that the being dreamt up are:

  • Combine it with Voice Recognition software (IBM has a good package) so that users could ‘talk’ to your website.
  • Interactive games, with users phoning in answers
  • Low cost Data Capture (e.g. Sales reps phone in orders direct to SAP, no need for expensive laptops)
  • Outbound calling with premium info – e.g. Horoscopes or Weather forecasts (be careful with this one, or your customers will not thank you for it)

How do you plan to use Voice over the internet?

Up and coming Web 2.0 Companies

Quote from Wired Magazine “Web 1.0 was about commerce, Web 2.0 is about people”

What does this mean for your business? At the ‘endless possbilities’ end of the scale Tim O’Reilly has a good diagram outlining what you can do with the possibilities Ajax, frequent releases, standard interfaces and interaction with your community (all features of Web 2.0) can give you.


What Web 2.0 can do for your business

On the other end of the scale, what are companies actually doing with the new possibilities? Since we tend to be about 6 months behind the curve here in Dublin, a couple of examples from the Bay area in the US are:

  • Rollyo.com – choose which sites you want to search (built on top of Yahoo)
  • Zimba – a web based collaboration suite in the same spaces as Microsoft Outlook and Exchange
  • Upcoming.org – a user driven event site
  • What all of these have in common is that they have both a community (free version to get people on board) and Enterprise (additional features worth paying for) editions. The Community edition acts as marketing and a driver for the Enterprise edition through what economists call ‘Network effects’ – the more people that use a tool , the more useful it is.