A rather interesting session took place last week during OOW 2006, away from the crowds in a small meeting room in the Mariott hotel. The group that assembled there consisted of various product managers for Oracle Fusion Middleware – Duncan Mills, Mike Lehmann, Ralf Dossman, Sue Vickers, Dave Shaffer and Regis Louis for JDeveloper and ADF, SOA Suite – ESB and BPEL PM, BAM, BPA, WebCenter and other technology components – as well as the Regional Directors for Oracle Fusion Middleware, a group I joined a short while ago. Then there were representatives from OTN and the staff managing the Regional Directors Program.
The meeting was called to inform the RDs4OFM about the state of affairs and plans for the Fusion Middleware components. It was to prove a very interesting afternoon, with a lot of glimpses into the near future and a good overview of the present. Then there were some interesting exchanges of ideas: having a room full of people creating the products on the one hand and really using them on the other makes for good conversations.
In this article I will tell you about some of the interesting things that went on – though I probably should not divulge everything I heardâ€¦
Oracle Application Server
Oracle 10g Application Server release 10.1.3(.1) is providing a few of the key part of the JEE5 specification, just as EJB 3.0 with JPA, JAX-B and WebServices support as well as JSF. The official JEE5 certification will be with the 11(g?) release of the Application Server, some time during 2007. This is merely a theoretical matter for most of us as the stuff that matters is already available.
Other areas where OC4J 10.1.3.1 as well as a soon to be released JDeveloper 10.1.3 extension are providing support is in the area of the Spring Framework. OC4J provides supports for easily managing the JMX MBeans configured through Spring. JDeveloper will have facilities for editing the Spring bean configuration files and deploying Spring powered applications. I have seen the demo for the Bean Config editor, and it is certainly a nice help for Spring developers.
The 10.1.3.1 release also provides a GUI for designing, configuring and creating JMS based on AQ, including setting up the AQs in the database.
By the way, Release 12 of Oracle Applications will be based partially on Oracle AS 10.1.2 – for the Forms Server – and partially on 10.1.3 for the Java Web Applications and stuff like XML Publisher. After that, Oracle Fusion Application will be on Oracle AS Release 11. No Calendar dates set for that release, though it will be some time during 2007 by the time that one goes to production.
Not having used Grid Control before, I was pleasantly surprised and intrigued by the Enterprise Manager. It can manage multiple instances (of various versions) of both Oracle Database instances as well as Application Server instances. It even allows us to configure/install/deploy new application server instances.
Administration of the Application Server will increasingly be made possible through scripting. Oracle is on the verge of releasing some administrative Groovy scripting samples and in release 11 of the Application Server will carry this forward and also adopt Jython as its major scripting language
ADF and JDeveloper
On the ADF Faces Rich Client components – such as the Accordion, the Drag & Drop, the scrollable table with movable and resizable columns – we heard both good and bad news. They are coming along nicely, some are more less complete and we may have an early access release early 2007. However, full production availability will be much further on (towards the end of the first half year 2007?). These components are currently not planned to be part of the Trinidad project in under the Apache MyFaces umbrella.
JDeveloper 10.1.3.1 comes shipped the Toplink Essentials implementation of EJB 3.0 JPA. One very nice, late new feature in JDeveloper is the creation of a Service FaÃ§ade for one ore more Entities. This basically creates a class that deals with the EntityManagerFactory, the EntityManager and presents a number of basic service methods for each entity. It makes for great out of container testing, quick creation of ADF Data Controls as well as rapid deployment as WebService. And for doing demos on JPA it is nice too (once I saw this new feature, I quickly installed JDeveloper 10.1.3.1 production release to use in my presentation on EJB 3.0 JPA yesterday and it worked like a treat).
Though XML support in JDeveloper – we could almost call it XDeveloper – is rich and extensive, we still lack a very useful feature found in specialized XML Development Environments: create a (first cut) XSD based on an actual XML document. JDeveloper can do the other way round – create XML from XSD for easy testing, as well as graphical XSLT development by mapping two XSDs and many more things including debugging XSLT transformations. We may see this feature in a future release of JDeveloper – the RDs4OFM made a strong appeal on the product managers to that effect.
One other very big new thing for JDeveloper is the Oracle WebCenter – a set of components for developing ADF Faces applications that embed Portlets as well as publish ADF Faces as Portlets. With WebCenter, the lines between Portal and WebApplications will blur, developing Portal like applications will become very easy to do and integrating into ADF Faces web applications components providing access to Content Repositories, advanced search capabilities on top of any set of application data as well standard elements such as Discussion Forums and a Wiki is a few wizard based steps away. If you never really liked the Oracle Portal experience, but are interested in Portal like applications anyway, this will be your thing! For a more elaborate discussion read my previous post on WebCenter. WebCenter will be available as a JDeveloper extension for maintenance release 10.1.3.2, as I understand it.
The SOA Suite is of course a major section of Oracle Fusion Middleware. With BPEL and the ESB providing much of the basic infrastructure for Oracle Fusion Applications as well as many custom developed SOA solutions, close attention to the functionality and best practices clearly is a good idea.
The recent release of SOA Suite 10.1.3 brings a great suite of happily integrated functionality. Oracle JDeveloper 10.1.3.1 is – apart from many other things – the iDE Integration Development Environment that provides the design time environment for both BPEL and ESB. Apart from designing BPEL Processes and ESB Services, JDeveloper has extensive facilities for testing and deploying them to the BPEL Process Manager and the Enterprise Service Bus respectively.
An important and hugely revised section of the BPEL product is the Workflow Service. Both tightly integrated with BPEL Design Time and Run Time as well as cleanly separated from it – the Human Workflow Task definition is in its own definition file, external to the bpel document and the Workflow Service is a separate BPEL process running independently and available to other callers besides BPEL processes.
Oracle is working with other parties on a formal extension to the BPEL standard that would make Human Tasks an integrated part of BPEL processes. This initiative is known as BPEL4PEOPLE, specifying a standard way of specifying Workflow Orchestration.
We spent quite some time discussing BPA or Business Process Analysis. The BPEL Design Time currently found in JDeveloper is primarily a Technical Design and Build tool, not an abstract, busine
level analysis tool at all. And there is a clear need for such a tool, as BPEL Process Design typically kicks off – and should kick off – at the business level.
Earlier this year, Oracle announced their collaboration with IDS Scheer for its ARIS tool for BPA. ARIS will be rebranded by Oracle and made available as part of Oracle Fusion Middleware. The new Oracle BPA tool based on ARIS will be shipping in a few weeks time. The first major user of this tool for Modeling, Analyzing and Simulating Business Processes, will be Oracle itself as it has ‘acquired’ some 1500 licenses for staff doing Process Modeling for Oracle Fusion Applications. Ironically, the same tool is used by SAP.
The BPA tool will be integrated with Oracle BPEL in several steps that should result in a ‘closed loop’ experience where in the Abstract Process Definition is synchronized with the detailed Design. Analysts working on the Process will have a business level, fairly abstract view of the process while developers see their familiar BPEL level view of the same process. Both roles are working against a shared set of meta-data.
Another valuable discussion was on dealing with very large BPEL processes and ways of refactoring BPEL processes. In the 11 release of SOA Suite, we will get support for refactoring, with for example the notation of "shared scopes" that allows sequences of BPEL process steps to be reused across different processes. An externalized exception handler pattern could be achieved thus.
Much of what we saw and discussed will be demonstrated, sometimes in less detail or with less room for down-drilling questions, during the remaining days of the OOW conference. Other elements will be rolled out over the next few months and quarters. I found this meeting not just a pleasant one, also very inspiring: there is a lot going on and much of it is very good. Sometimes I would like things to move faster, but then again I am sure that the product managers feel the same way.