SlideShare a Scribd company logo
Luc Bors, 26-mar-2013, OBUG Connect Antwerpen
10 lessons learned
Real Life Forms to ADF
Who Am I
• Luc Bors
• Principal Consultant
• AMIS Nieuwegein Netherlands
• Friends of Oracle & Java
• 5 Oracle ACE(D)
• Oracle Partner
Where Are You Now ?
• HUGE Forms investment
• Mission critical, complex systems
• Low maintenance, stable system for over 10 years
• Mostly undocumented systems
• VERY fast productive development
• Trained developer pool
• Looking to leverage the existing investment
Where Do We Want to Go ?
Some Modernization Projects
Most Recent Project
• Ministry of Security and Justice
• Application >20 years old
• Decentralized architecture (19x)
• Approx. 2.000 users
• 1 million cases per year
• 10.000-15.000 letters per day
Modernization Project Triggers
• Very old technical environment(end-of-life)
• Maintenance is expensive
• Staffing is difficult
• Architecture not flexible
• Need to be ready for the future
Distributed Architecture
• 19 distributed implemenations• 1 central implemenation
• Less Hardware
• Less Administrators
• Less Duplicate Data
• More Insight
• More Control
Centralized system
Forms Application
• Forms 4.5 / Reports 2.5
• Character mode
• Terminal Emulation
• Enables Macros !
• Desupport 31 December 2003
• Runs since 1991 …
Not Really Web 2.0 ……………
Web 2.0 !
Web 2.0 !
IST - SOLL
• Character Mode
• Distributed
• Data Duplication
• 250 Modules
• 90 Reports
• 15’’ Monitors
• Application
• Web Technology
• Centralized
• Data Standardization
• < 100 Modules
• 50 Reports
• 24’’ Monitors
• Platform
What did we Learn ?
Lesson 1: The Right Size
• Think Big Start Small.
• Don’t be Tempted.
• Use Small PoC !
Lesson 1: The Right Size
Lesson 1: The Right Size
• Application Architecture
• Taskflow with page fragment and per
Taskflow 1 page with 1 static region
• All in one big workspace
– Or
• Taskflow with page fragment and per
Application 1 page with 1 dynamic
region
• Use separate workspaces
Lesson 2 : Don’t Copy Paste
• Migrate “As-is” …… ??
• Don’t try to copy forms functionality
– Know your ADF Faces Components
• Forms Built-ins are not available in ADF
and PL/SQL is not Java. Your options:
– Whenever possible
• transfer to DB
– Whenever lucky
• Use a declarative or zero code ADF Alternative
– Otherwise
• Code Java Alternative
Lesson 2 : Don’t Copy Paste
• Forms code for:
– Buttons
– Canvasses
– Navigation
• ADF code for:
– None of the above
Lesson 3 : Involve People
• Grumpy Old Men
• Talk with all People involved in
the project
• Let them know what you are
doing
• Let them decide what goes in
and what not
Lesson 3 : Involve People
• Include operational team
• Infrastructure (DTAP) : Ready on Time
• Don’t underestimate WebLogic configuration
• SSO via MS-AD
Lesson 4 : Hire Experts
• Training is not enough.
• Steep learning curve
– Don’t mix in regular work
– Long “Conscious Incompetence”
phase: motivational dip
• Hire Experts 0
1
2
3
4
5
Week
1
Week
20
Week
30
Week
40
Week
52
Next
Year
Even
Later
Imaginary ADF Learning
Curve
Lesson 4 : Hire Experts
“The cheapest ADF Consultant is
the one with the highest hourly rate”
Lesson 5: Planning & Process
• Scrum
• Predictable Results
• Short Cycles
Lesson 5: Planning & Process
• Short Development Cycles
– Easy to Adjust
– Easy to Demo
– Nearby Goals
Sprint 1 Sprint 2 Sprint 3
2 weeks 2 weeks 2 weeks
Demo
Demo
Demo
Lesson 6 : Think Performance
• Performance First, not Last
• Might look good, however….
• Consider Tools
• …. And Watch Now Carefully !
Lesson 6 : Think Performance
• ViewObject queries caused by unintentionally left iterators in pageDefs
• Iterator bindings can still be refreshed and the ViewObject
unnecessary executed - for example when you have Refresh=“ifNeeded”)
Lesson 6 : Think Performance
• Oracle’s Default Values Do Not
Always Rock !
– ViewObject fetchMode and
fetchSize are underestimated
properties and have big
performance impact
– The default value is 1 - will give
poor performance (unless only one
row will be fetched)
Lesson 6 : Think Performance
• Too much data in ADFBC memory…………..
• Try to avoid loading more database rows than you need
• Be careful if you really do need to load a proportional number
of database rows
Lesson 6 : Think Performance
Lesson 7: Business Rules
• The $ 1.000.000 Question
Lesson 7: Business Rules
• Business Components is not Always the Best Place !
• For employees with a Job (attribute value) equal to
SALESMAN the value of the Salary attribute should not be
higher than 2500.
• The difference between the maximum salary for all
employees with the same job and their average salary may
not exceed 30% of the average salary
Lesson 7: Business Rules
Hey, I can do ADF !
We can’t……….
….. But we can do
PL/SQL
Lesson 8: Documentation ?
Lesson 8: Documentation !
• *.fmb are not Documentation !
• Provide proper Documentation
• It is a Valid Investment
• Create a Cookbook
– Architectural issues
– Development How to‘s
Lesson 9: Automated Migration
• Automated migration is not easy.
– You can run into issues that an automated tool cannot handle
– You still need to re-code forms triggers (PL/SQL)
• JHeadstart Forms2ADF ?
– Not Really on Option
• Automated migration doesn’t exist.
Lesson 10: Keep up the Pace
Lesson 10: Keep up the Pace
• Service Oriented Architecture
• Business Process Management
• Service Bus
• Mobile
Lesson 10: Keep up the Pace
Summary
• Lesson 1: The Right Size
• Lesson 2: Don’t Copy Paste
• Lesson 3: Involve People
• Lesson 4: Hire Experts
• Lesson 5: Planning & Process
• Lesson 6: Think Performance
• Lesson 7: Business Rules
• Lesson 8: Documentation
• Lesson 9: No Automation
• Lesson 10: Keep Up the Pace
Luc Bors, AMIS, The Netherlands
Luc.Bors@amis.nl
LucBors@gmail.com
Follow me on : @lucb_

More Related Content

PPTX
AMIS OOW 2012 Review - Deel 4 ADF - Paco van der Linden
PPTX
AMIS OOW Review 2012 - Deel 5 Coherence - Paco van der Linden
PPTX
Accelerating Devops using Corestack
PDF
Corestack accelerating devops
PPTX
Grails in the Cloud (2013)
PPTX
Spangulumbraco
PPTX
Vitalii Korzh "Managed Workflows or How to Master Data"
PDF
Ohio Devfest - Visual Analysis with GCP
AMIS OOW 2012 Review - Deel 4 ADF - Paco van der Linden
AMIS OOW Review 2012 - Deel 5 Coherence - Paco van der Linden
Accelerating Devops using Corestack
Corestack accelerating devops
Grails in the Cloud (2013)
Spangulumbraco
Vitalii Korzh "Managed Workflows or How to Master Data"
Ohio Devfest - Visual Analysis with GCP

What's hot (20)

PPTX
Azure Cloud Services
PPTX
Can you build a Intranet with Modern SharePoint
PPTX
What is new in pass summit 2014
PDF
The future of cloud programming
PPTX
Lieven Vandegaer from MEDIAGENIX - Orchestrating a video-on-demand pipeline w...
PDF
Windows Azure introduction
PDF
饿了么工作流介绍
PPTX
Introduction To Serverless Architecture
PDF
Lego bricks of cloud applications
PPTX
Architecture - why so serious?
PPTX
Kickstart android development with xamarin
PDF
ASAS 2013 - Space-based architecture: Linear scalability? High throughput? Lo...
PDF
Economia AWS Journey
PPTX
Architecture evolution
PPTX
How to automate the SharePoint Provisioning
PDF
VMware VCP7-DTM: More than just Horizon View
PPTX
Moving to the Cloud: AWS, Zend, RightScale
PDF
The Journey To Serverless At Home24 - reflections and insights
PPT
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
PDF
WebsitePerformance
Azure Cloud Services
Can you build a Intranet with Modern SharePoint
What is new in pass summit 2014
The future of cloud programming
Lieven Vandegaer from MEDIAGENIX - Orchestrating a video-on-demand pipeline w...
Windows Azure introduction
饿了么工作流介绍
Introduction To Serverless Architecture
Lego bricks of cloud applications
Architecture - why so serious?
Kickstart android development with xamarin
ASAS 2013 - Space-based architecture: Linear scalability? High throughput? Lo...
Economia AWS Journey
Architecture evolution
How to automate the SharePoint Provisioning
VMware VCP7-DTM: More than just Horizon View
Moving to the Cloud: AWS, Zend, RightScale
The Journey To Serverless At Home24 - reflections and insights
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
WebsitePerformance
Ad

Viewers also liked (20)

PDF
Oracle 12c Launch Event 04 Niels Gorter Bean Data Control
PPTX
ADF Development Survival Kit
PPT
ADF Value Proposition in 10 key points
PDF
37727897 Oaf Basics
PDF
ORACLE FRAMEWORK ONLINE TRAINING
PPTX
Forms11 presentation at ssuet 05 sep-2012
PDF
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
PPT
Oaf development-guide
PPTX
Tca presentation
DOC
Oracle Application Technical - Hz architecture
PPT
PPTX
ADF Mythbusters UKOUG'14
PDF
PDF
Oaf personalization examples
PPTX
Building customer relationships without being a creep Chris Hayes R2i - Gil...
PPTX
ADF Anti-Patterns: Dangerous Tutorials
PDF
Oaf personaliztion examples
PPTX
Oracle ADF Case Study
PDF
Impact of Trading Community Architecture (TCA) on Oracle Receivables
PPTX
Oracle application framework (oaf) online training
Oracle 12c Launch Event 04 Niels Gorter Bean Data Control
ADF Development Survival Kit
ADF Value Proposition in 10 key points
37727897 Oaf Basics
ORACLE FRAMEWORK ONLINE TRAINING
Forms11 presentation at ssuet 05 sep-2012
Oracle EBS 12.1.3 : Integrate OA Framework BC4J components within java concur...
Oaf development-guide
Tca presentation
Oracle Application Technical - Hz architecture
ADF Mythbusters UKOUG'14
Oaf personalization examples
Building customer relationships without being a creep Chris Hayes R2i - Gil...
ADF Anti-Patterns: Dangerous Tutorials
Oaf personaliztion examples
Oracle ADF Case Study
Impact of Trading Community Architecture (TCA) on Oracle Receivables
Oracle application framework (oaf) online training
Ad

Similar to Real life forms to adf (20)

DOCX
Oracle adf online training
PDF
Oracle ADF Hands-on Lab Practices
PDF
Oracle ADF Tutorial
PPTX
...and thus your forms automagically disappeared
DOC
Resume Chronological
PPT
00CourseIntro_00CourseIntro_00CourseIntro.ppt
DOCX
Best Weblogic Server Online Training
PDF
Guidelines for moving from Oracle Forms to Oracle ADF and SOA
PDF
D17251 gc20 47_us
DOC
Rohit chaturvedi
PDF
Oracle ADF Tutorial/Training Study Guide
PDF
Adf coursecontent(1)
PDF
Build application with adf framework
DOCX
Oracle Application Development Frame Work (ADF) Online Training
PPTX
Making Cool Apps from Kits with Java, Oracle ADF, & UX Design Patterns
PDF
Programming-best practices( beginner) ADF_fusionapps
PPT
PPTX
Oracle Forms Modernization Roadmap
PDF
Oracle ADF Architecture TV - Development - Programming Best Practices
Oracle adf online training
Oracle ADF Hands-on Lab Practices
Oracle ADF Tutorial
...and thus your forms automagically disappeared
Resume Chronological
00CourseIntro_00CourseIntro_00CourseIntro.ppt
Best Weblogic Server Online Training
Guidelines for moving from Oracle Forms to Oracle ADF and SOA
D17251 gc20 47_us
Rohit chaturvedi
Oracle ADF Tutorial/Training Study Guide
Adf coursecontent(1)
Build application with adf framework
Oracle Application Development Frame Work (ADF) Online Training
Making Cool Apps from Kits with Java, Oracle ADF, & UX Design Patterns
Programming-best practices( beginner) ADF_fusionapps
Oracle Forms Modernization Roadmap
Oracle ADF Architecture TV - Development - Programming Best Practices

More from Getting value from IoT, Integration and Data Analytics (20)

PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
PPTX
10 tips voor verbetering in je Linkedin profiel
PPTX
Iot in de zorg the next step - fit for purpose
PPTX
Iot overview .. Best practices and lessons learned by Conclusion Conenct
PPTX
IoT Fit for purpose - how to be successful in IOT Conclusion Connect
PPTX
Industry and IOT Overview of protocols and best practices Conclusion Connect
PPTX
IoT practical case using the people counter sensing traffic density build usi...
PPTX
Introduction overviewmachinelearning sig Door Lucas Jellema
PPTX
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
PPTX
Ethereum smart contracts - door Peter Reitsma
PPTX
Blockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
PPTX
kennissessie blockchain - Wat is Blockchain en smart contracts @Conclusion
PPTX
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
PDF
Omc AMIS evenement 26012017 Dennis van Soest
AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
10 tips voor verbetering in je Linkedin profiel
Iot in de zorg the next step - fit for purpose
Iot overview .. Best practices and lessons learned by Conclusion Conenct
IoT Fit for purpose - how to be successful in IOT Conclusion Connect
Industry and IOT Overview of protocols and best practices Conclusion Connect
IoT practical case using the people counter sensing traffic density build usi...
Introduction overviewmachinelearning sig Door Lucas Jellema
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
Ethereum smart contracts - door Peter Reitsma
Blockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
kennissessie blockchain - Wat is Blockchain en smart contracts @Conclusion
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
Omc AMIS evenement 26012017 Dennis van Soest

Recently uploaded (20)

PDF
Machine learning based COVID-19 study performance prediction
PDF
cuic standard and advanced reporting.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Spectroscopy.pptx food analysis technology
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Machine learning based COVID-19 study performance prediction
cuic standard and advanced reporting.pdf
Review of recent advances in non-invasive hemoglobin estimation
sap open course for s4hana steps from ECC to s4
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation_ Review paper, used for researhc scholars
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Unlocking AI with Model Context Protocol (MCP)
Spectroscopy.pptx food analysis technology
The AUB Centre for AI in Media Proposal.docx
Dropbox Q2 2025 Financial Results & Investor Presentation
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
20250228 LYD VKU AI Blended-Learning.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
NewMind AI Weekly Chronicles - August'25 Week I
Advanced methodologies resolving dimensionality complications for autism neur...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton

Real life forms to adf

  • 1. Luc Bors, 26-mar-2013, OBUG Connect Antwerpen 10 lessons learned Real Life Forms to ADF
  • 2. Who Am I • Luc Bors • Principal Consultant • AMIS Nieuwegein Netherlands • Friends of Oracle & Java • 5 Oracle ACE(D) • Oracle Partner
  • 3. Where Are You Now ? • HUGE Forms investment • Mission critical, complex systems • Low maintenance, stable system for over 10 years • Mostly undocumented systems • VERY fast productive development • Trained developer pool • Looking to leverage the existing investment
  • 4. Where Do We Want to Go ?
  • 6. Most Recent Project • Ministry of Security and Justice • Application >20 years old • Decentralized architecture (19x) • Approx. 2.000 users • 1 million cases per year • 10.000-15.000 letters per day
  • 7. Modernization Project Triggers • Very old technical environment(end-of-life) • Maintenance is expensive • Staffing is difficult • Architecture not flexible • Need to be ready for the future
  • 8. Distributed Architecture • 19 distributed implemenations• 1 central implemenation • Less Hardware • Less Administrators • Less Duplicate Data • More Insight • More Control
  • 10. Forms Application • Forms 4.5 / Reports 2.5 • Character mode • Terminal Emulation • Enables Macros ! • Desupport 31 December 2003 • Runs since 1991 …
  • 11. Not Really Web 2.0 ……………
  • 14. IST - SOLL • Character Mode • Distributed • Data Duplication • 250 Modules • 90 Reports • 15’’ Monitors • Application • Web Technology • Centralized • Data Standardization • < 100 Modules • 50 Reports • 24’’ Monitors • Platform
  • 15. What did we Learn ?
  • 16. Lesson 1: The Right Size • Think Big Start Small. • Don’t be Tempted. • Use Small PoC !
  • 17. Lesson 1: The Right Size
  • 18. Lesson 1: The Right Size • Application Architecture • Taskflow with page fragment and per Taskflow 1 page with 1 static region • All in one big workspace – Or • Taskflow with page fragment and per Application 1 page with 1 dynamic region • Use separate workspaces
  • 19. Lesson 2 : Don’t Copy Paste • Migrate “As-is” …… ?? • Don’t try to copy forms functionality – Know your ADF Faces Components • Forms Built-ins are not available in ADF and PL/SQL is not Java. Your options: – Whenever possible • transfer to DB – Whenever lucky • Use a declarative or zero code ADF Alternative – Otherwise • Code Java Alternative
  • 20. Lesson 2 : Don’t Copy Paste • Forms code for: – Buttons – Canvasses – Navigation • ADF code for: – None of the above
  • 21. Lesson 3 : Involve People • Grumpy Old Men • Talk with all People involved in the project • Let them know what you are doing • Let them decide what goes in and what not
  • 22. Lesson 3 : Involve People • Include operational team • Infrastructure (DTAP) : Ready on Time • Don’t underestimate WebLogic configuration • SSO via MS-AD
  • 23. Lesson 4 : Hire Experts • Training is not enough. • Steep learning curve – Don’t mix in regular work – Long “Conscious Incompetence” phase: motivational dip • Hire Experts 0 1 2 3 4 5 Week 1 Week 20 Week 30 Week 40 Week 52 Next Year Even Later Imaginary ADF Learning Curve
  • 24. Lesson 4 : Hire Experts “The cheapest ADF Consultant is the one with the highest hourly rate”
  • 25. Lesson 5: Planning & Process • Scrum • Predictable Results • Short Cycles
  • 26. Lesson 5: Planning & Process • Short Development Cycles – Easy to Adjust – Easy to Demo – Nearby Goals Sprint 1 Sprint 2 Sprint 3 2 weeks 2 weeks 2 weeks Demo Demo Demo
  • 27. Lesson 6 : Think Performance • Performance First, not Last • Might look good, however…. • Consider Tools • …. And Watch Now Carefully !
  • 28. Lesson 6 : Think Performance • ViewObject queries caused by unintentionally left iterators in pageDefs • Iterator bindings can still be refreshed and the ViewObject unnecessary executed - for example when you have Refresh=“ifNeeded”)
  • 29. Lesson 6 : Think Performance • Oracle’s Default Values Do Not Always Rock ! – ViewObject fetchMode and fetchSize are underestimated properties and have big performance impact – The default value is 1 - will give poor performance (unless only one row will be fetched)
  • 30. Lesson 6 : Think Performance • Too much data in ADFBC memory………….. • Try to avoid loading more database rows than you need • Be careful if you really do need to load a proportional number of database rows
  • 31. Lesson 6 : Think Performance
  • 32. Lesson 7: Business Rules • The $ 1.000.000 Question
  • 33. Lesson 7: Business Rules • Business Components is not Always the Best Place ! • For employees with a Job (attribute value) equal to SALESMAN the value of the Salary attribute should not be higher than 2500. • The difference between the maximum salary for all employees with the same job and their average salary may not exceed 30% of the average salary
  • 34. Lesson 7: Business Rules Hey, I can do ADF ! We can’t………. ….. But we can do PL/SQL
  • 36. Lesson 8: Documentation ! • *.fmb are not Documentation ! • Provide proper Documentation • It is a Valid Investment • Create a Cookbook – Architectural issues – Development How to‘s
  • 37. Lesson 9: Automated Migration • Automated migration is not easy. – You can run into issues that an automated tool cannot handle – You still need to re-code forms triggers (PL/SQL) • JHeadstart Forms2ADF ? – Not Really on Option • Automated migration doesn’t exist.
  • 38. Lesson 10: Keep up the Pace
  • 39. Lesson 10: Keep up the Pace • Service Oriented Architecture • Business Process Management • Service Bus • Mobile
  • 40. Lesson 10: Keep up the Pace
  • 41. Summary • Lesson 1: The Right Size • Lesson 2: Don’t Copy Paste • Lesson 3: Involve People • Lesson 4: Hire Experts • Lesson 5: Planning & Process • Lesson 6: Think Performance • Lesson 7: Business Rules • Lesson 8: Documentation • Lesson 9: No Automation • Lesson 10: Keep Up the Pace
  • 42. Luc Bors, AMIS, The Netherlands Luc.Bors@amis.nl LucBors@gmail.com Follow me on : @lucb_