Sunday, October 7, 2012

OOW'12: Oracle ADF Implementations Around the Globe: Best Practices

Publishing slides for my OOW'12 session - Oracle ADF Implementations Around the Globe: Best Practices. I really did enjoy presenting this session - was fun to talk about ADF and see so many happy ADF users in the room :)

You can download slides for this session from here:

This session was based on different projects around the globe (total 4 continents):

I presented similarities and differences in ADF projects based on geographical locations:

Red Samurai performance audit tool was presented along with the demo (read more here):

Typical time distribution in ADF projects across technology stack was shown:

From our experience - ADF BC development takes less time and usually is the most smooth development phase in ADF. UI implementation is the most complex one.

If we take a look into ADF Model - ADF BC implementation and check time distribution. Usually it takes longer to implement View Objects (SQL, custom Java), also Application Modules (custom Java). Entity Objects implementation takes less time - because often is implemented as part of common reusable library:

Often people forget about generic classes and common code, its why I included it into this graph with 0% (to indicate its presence, is 0% because is implemented only once).

Similar graph with time distribution was presented for ADF ViewController. As expected, ADF UI implementation is the most complex and it takes longer:

I have presented how to speed up ADF development with completely dynamic forms, generated on runtime (generated: ADF BC (EO, VO, LOV) and ADF UI). I will post sample application for this in my future posts. Now I'm posting architecture diagram:


Ibrahim DEMIR said...

Hi Andrejus;

Thanks for sharing. ı wish I were able to join the OOW.
Is there any recorded version of your session because the slides are not enough without the explanations.

I also really wonder what is dynamic ADF UI. When the word "dynamic" is used it always comes with a performance loss and difficulties with problem determination as most of the things are shaped in runtime.

Andrej Baranovskij said...


Some people were recording on video - I expect to post it, once I get it.

There is no golden bullet, I was describing how to save development time on relatively similar UI's - for example report parameters screens. Instead of developing manually, to generate.

Dynamic solution can be same as static in terms of performance. Because anyway ADF is doing same job for static resources - it loads them on runtime. Same thing can be done dynamically from Java API.


Ramesh said...

I am looking for dynamic solution too, do you have sample application for public?

Andrej Baranovskij said...

Yes, you can check it here:


Ramesh said...

Thank you very much will sometime instead of reinventing wheel and gives us some direction...