This blog contains a wrap up of our presentations at OpenWorld 2012.
Oracle Fusion Middleware Live Application Development (UGF10464)In this three hour show moderated by Duncan Mills and Chris Muir, the audience could experience the dynamics between three different teams that are building an application based on Oracle Fusion Middleware:
- User Interface in ADF;
- Services in SOA Suite and Oracle Database;
- Business processes in BPM Suite.
|Behind the scenes at the presentation|
It's the fourth time Vennster participated in the Live FMW Development sessions after appearances at ODTUG Kaleidoscope, UKOUG, and OBUG. For OpenWorld 2012 the team that prepared the application consisted of Lucas Jellema, Luc Bors, Aino Andriessen, Guido Schmutz, Lonneke Dikmans, and Ronald van Luttikhuizen. This time we tried a different approach in which we pre-built the application and focused on explaining and demoing it in the first part of the session. After that we made several changes and deployed the improved software components.
Some best-practices the team discussed:
- Use Business Rules to allow for runtime modification of fast changing business logic instead of design time modifications and redeployment of services. Encapsulate useful Business Rules as separate services instead of adding them to existing SCA composites.
- Include a heartbeat operation for every Web Service (e.g. by using the Mediator's Echo activity) so you can verify that all technical layers of the Web Service work without triggering a functional side effect.
- Invoke PL/SQL from DB Adapters instead of directly executing CRUD operations for additional decoupling.
- Decouple components and introduce additional reliability and robustness by using events.
Effective fault handling in SOA Suite 11g (CON4832)In this co-presentation with Guido Schmutz we explored how the out-of-the-box frameworks, patterns, and tools that are available in Oracle Service Bus and Oracle SOA Suite can help you to implement fault prevention and handling capabilities.
|360 view during the Fault Handling presentation|
The session was pretty well attended, and with an extended Q&A sessions at the end. I never had so many questions after a presentation; don't know if that's a compliment or not ;-) Some of the questions raised:
- Wrapping asynchronous message exchanges as synchronous exchanges and vice versa.
- Where to execute long-running and statefull processes: SOA Suite rather than OSB.
- Fault handling in fire-and-forget message exchanges: if there's no callback, implement fault handling in the service that is being called.
- Can the Fault Management Framework of SOA Suite be used to catch internal BPEL faults: use catch activities for that purpose.
- Transaction boundaries, dehydration points, and global transaction timeouts.
- Compensation versus rollbacks.
- Chaining exception policies using the Fault Management Framework.
The slides are available from Slideshare and answer some of these questions. A series of articles is underway that dives deeper into these subjects!