Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
ADF Fusion architecture: manage
the modular approach
CON4581
Aino Andriessen, 24 september 2013
2

Aino Andriessen
Technical Consultant
Technical Architect
Training
ADF, Java, PL/SQL, XML, ...
SOA , Integration
Software engineering
Agile
aino.andriessen@amis.nl
http://www.fttech.net
3

•
•
•
•
•

Systems integrator
Consultancy
Oracle, Java, Open Source, ADF, SOA, BPM, Database, Mobile, ...
AMIS Technology School
Pagoni

• http://www.amis.nl
• http://technology.amis.nl/blog/
4

Architectural patterns
5

Simple application
6

Small application
7

Monster application
8

Enterprise
9

ADF Architecture
10

ADF Pattern genealogy

Sum of the
Parts

Two for One
Deal

Cylinder
Monster

Fine Grained
Small
Application

Small and
Simple
Application

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals

Pillar
11

Small application
• One application workspace = one deployment EAR
• Model: ADF Business Components
– Moderate amount of BC's
– One or a few Application Modules

• ViewController
–
–
–
–

One Unbounded Task Flow
Some Bounded Task Flows
Some page fragments
One or a few pages

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals
12

Small application

Application Workspace
Model

View Objects
AppModule

Framework
Extensions

Entity Objects

ViewController

Bounded Task Flow

Fragments

Fragments
Bounded Task Flow
Fragments

Task Flow Template
Page Template
Declarative Components
Skin

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals

EAR

Pages

Bounded Task Flow

ViewController
Extensions

Unbounded Task Flow
13

Small Application
Advantages
• Simple architecture
– Easy to build and deploy

• Suits small teams and/or
small apps
• Bounded Task Flows
– Improved business process to
design mapping
– Improved modularization but not
perfect
– Options such as transaction
features (vs root ADF BC AMs)
– Programming by contract now
possible

• Improved ability to test
modules
• Requires little development
infrastructure

Disadvantages
• Developers can still
accidentally tightly couple
code
• Bounded Task Flows aren’t
externally reusable
• Application tends to grow in
size
14

Monster application
• Synonyms: uber, monolithic
• One application workspace = one deployment EAR

• Model
– Many, many BC's
– Multiple Application Modules

• ViewController
–
–
–
–

One Unbounded Task Flow
Many Bounded Task Flows
Many page fragments
Multiple Pages

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals
15

Monster Application
Application Workspace
Model
Entity Objects

Entity Objects

View Objects

View Objects

View Objects

AppModule

AppModule

AppModule

Framework
Extensions

Entity Objects

AppModule
ViewController

Pages

Fragments
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments

Fragments
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments

Task Flow Templates
Page Templates
Declarative Components
Skins
Bounded Task Flow
Fragments
Bounded Task Flow

Fragments

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals

EAR

Bounded Task Flow

Bounded Task Flow

ViewController
Extensions

Unbounded Task Flow
16

Monster application
Advantages

Disadvantages

•

Relatively simple architecture
still

•
•

•

Bounded Task Flows

•

Requires little development
infrastructure

•
•

Hard to maintain
Size (# of objects)
– Difficult to understand and
oversee everything
– Dependencies
– Developer's don’t dare to
touch existing code
Build is an all or nothing affair
Bounded Task Flows
transaction options can be
complicated

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals
17

Modular ADF
Architectures
Sum of the
Parts

Two for One
Deal

Cylinder
Monster

Fine Grained
Small
Application

Small and
Simple
Application

Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals

Pillar
18

Examples
• Shop
• Insurance application
– Policies, Customers, Cases, Claims, Commission, Financials, …

• Judicial system
• Booking system
• … Business application
• Multiple small applications with repeated functionalities
• Multi-brand application
• Multi channel
– web, desktop, mobile, services
19

Implementation patterns
20

Basic ADF Application

ADF ViewController

ADF Model

DB
21

Modularization 1
Main

Main

Main

EAR
ADF Lib

ADF Lib

ADF Lib

ADF Lib

Party

Policy

Claim

…

ADF Lib

Comm
ons
ADF Lib

Fwkext

DB
22

Modularization 2
Main
EAR
ADF Lib

ADF Lib

ADF Lib

ADF Lib

Party

Policy

Claim

…

ADF Lib

Comm
ons
ADF Lib

ADF Lib

ADF Lib

ADF Lib

ADF Lib

Party

Policy

Claim

…

Fwkext

DB
23

Modularization 2a
Main
EAR
ADF Lib

ADF Lib

ADF Lib

ADF Lib

Party

Policy

Claim

…

ADF Lib

Comm
ons
ADF Lib

Party

Policy

Claim

DB

ADF Lib

…

Fwkext
24

Modularization 2b
Main
EAR
ADF Lib

Taskflows

ADF Lib

ADF Lib

ADF Lib

Party

Policy

Claim

…

Comm
ons

AM
Viewobjects
ADF Lib

Entities / LOV

ADF Lib

Party

ADF Lib

ADF Lib

Policy

Claim

DB

ADF Lib

ADF Lib

…

Fwkext
25

Module interdependencies
Main

Main
ADF Lib

ADF Lib

ADF Lib

ADF Lib

Party

Policy

Party

Policy

PParty

PPolicy

1

Main
ADF Lib

ADF Lib

Main
ADF Lib

ADF Lib

ADF Lib

ADF Lib

ParPol

Party
Party

3

Policy

4

Policy

2

ADF Lib
26

Multi Channel
Mobile

SOA

Browser

ADF Mobile

Consumer

Main

Service
Service
AM, VO

BC

BTF
BTF
AM, VO

Domain
Entities, lov's
27
28

Implementation
29

Goal

Organize the application(s) in manageable components while maintaining
optimal development experience
30

Organization - general
• One workspace for main
• One workspace per 'unit'
• One or more common workspaces
–
–
–
–
–
–

Framework extensions
Declarative components
Taskflow templates
Pagetemplates
Skins
Utilities

• Each 'unit' is delivered as an ADF library
31

General principals
• Each workspace is able to run / tested on its own
• Full debugging must be available everywhere
– sources libraries

• Automated build, test, deliver and deploy process
32

Development Issues
•
•
•
•
•

Every object must be unique, worldwide
UI (page, tf, pagedef) hot deployment is only possible within a project
Libraries cannot be hot-deployed
Taskflows must be delivered in an ADF library to be used elsewhere
Testing taskflows
– Testpages (and pagedefs) and setup
– ADF EMG Taskflow Tester

• Limited ADF library configuration
• Refactoring over projects
• Build automation (with ant) is not easy
33

Single workspace nightmare
• May sound as a good idea: start small and grow bigger
• Use working sets to organize the projects within the workspace
But…
• Boundaries become fuzzy
• Running the application can be slow
• Testing is a problem
• Workspace might grow organically
• Using taskflows is confusing
• Hot deployment issues

• Fighting the framework
• Beware for the monster…
34
35

Challenges
•
•
•
•
•
•

Manage the build
Artifact management
Library management
Versioning
Sources and JavaDoc
Deployment
36

The importance of being
automated
•
•
•
•

Deliver adf libraries and ear
Deploy
Test
…

•
•
•
•
•
•
•
•
•
•
•
•

Consistent
Less mistakes
Easier
Faster
Fun
Everybody's party
Repeatable
Predictable
Transparent
Trackable
Reporting
Reuse
37

Build automation
• 11g: ant
• 12c: Maven
• Tasks
–
–
–
–
–
–

Package
source, javadoc jar
Version / build information
Publish to artifact repository
Release
Deploy to WLS
•
•

latest
version
38

Continuous Integration
Artifact management
• Central environment to store and manage deliverables / artifacts

• Publish and download:
40

Delivery
41

Maven ant tasks
42

Library management
43

Where to store (adf) libraries?
• ant
– project lib directory

• Maven
– local repository

• Internal Application libraries
– Build them locally and then deploy them to lib dir / local repo
– Don't submit then to scm but build them when needed

• External libraries (aka dependencies):
– Download from artifact repository

main -> HR
-> OE
44

ADF library dependencies
•
•
•
•

Dependencies of ADF libraries
Included in the consuming project
Works as a charm
ADF_Library_Dependencies.library

• Multiple versions of
nl/amis/demo/hr/view/DataBindings.cpx appear in
your project run classpath
– Path is not world-wide unique
– Circular dependency: project itself is included as library
because its used by dependent project

main -> HR -> commons
45

Artifact versioning
• Always provide version information
– MANIFEST.MF
•

define in deploy profile

– Filename
– WLS Deployment version
•

Manifest entry: Weblogic-Application-Version

• Remarks
–
–
–
–
–
–
–

OJDeploy failure when manifest file fails
'Internal' libraries could do without version in the file name
max # of redeployments on WLS
Update library definition
Use ojdeploy outputfile parameter for version in filename
Store version in local file to be used in ant build scripts
scm revision
46

ant Manifest
47

Sources and JavaDoc
• Always deliver sources and javadoc
• ant / maven tasks
• sources jar can also be generated with separate deploy profile

• Include as project library
48

Organize the build
• Multiple build files
– Build project
– per application
– per project

• Split build files
– build, artifact mgt, build-info, deploy

• Fix the generated build files
• Consistent naming
– use prefixes

• Externalize properties
• Manage project ant settings
• Reuse using svn externals
• Build scripting is hard
49

• this page is left blank intentionally
50
51

Summary
•
•
•
•
•

Modularization allows for better understandability and manageability
Choose the right architecture
Module autonomy
Build automation
JDeveloper doesn't always provide optimal support
52
53
54

References
• Chris Muir - One size doesn't fit all: Oracle ADF Architecture
Fundamentals - CON2203 - Thursday, Sep 26, 11:00 AM - 12:00 PM
Golden Gate A

• ADF EMG
• Oracle ADF Architecture Square
• ADF Code Guidelines
• ADF Naming and Project Layout Guidelines

- Marriott Marquis -
55
56

More Related Content

What's hot

.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
Karel Zikmund
 
Georgia Tech Drupal Users Group - Local Drupal Development
Georgia Tech Drupal Users Group - Local Drupal DevelopmentGeorgia Tech Drupal Users Group - Local Drupal Development
Georgia Tech Drupal Users Group - Local Drupal Development
Eric Sembrat
 
.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
Karel Zikmund
 
.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
Karel Zikmund
 
Automate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron SwerleinAutomate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron Swerlein
QA or the Highway
 
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic Multi-Cloud PaaS
 
Oracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlOracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version Control
Chris Muir
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
Adam Getchell
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for Internationalization
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural PatternsOracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Chris Muir
 
.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund
Karel Zikmund
 
Browser tools that make web development easier
Browser tools that make web development easierBrowser tools that make web development easier
Browser tools that make web development easier
Alan Seiden
 
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable ArtifactsOracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Chris Muir
 
Ow
OwOw
Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...
Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...
Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...
Steve Kessler
 
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation OptionsOracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Chris Muir
 
Zend Code in ZF 2.0
Zend Code in ZF 2.0Zend Code in ZF 2.0
Zend Code in ZF 2.0
Ralph Schindler
 
Oracle ADF Architecture TV - Development - Programming Best Practices
Oracle ADF Architecture TV - Development - Programming Best PracticesOracle ADF Architecture TV - Development - Programming Best Practices
Oracle ADF Architecture TV - Development - Programming Best Practices
Chris Muir
 
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Nicole Szigeti
 

What's hot (19)

.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
 
Georgia Tech Drupal Users Group - Local Drupal Development
Georgia Tech Drupal Users Group - Local Drupal DevelopmentGeorgia Tech Drupal Users Group - Local Drupal Development
Georgia Tech Drupal Users Group - Local Drupal Development
 
.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET Fringe 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
 
.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Prague 2017 - Challenges of Managing CoreFX repo -- Karel Zikmund
 
Automate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron SwerleinAutomate Your Data, Free Your Mind by Aaron Swerlein
Automate Your Data, Free Your Mind by Aaron Swerlein
 
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
 
Oracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlOracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version Control
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for Internationalization
 
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural PatternsOracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
 
.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund
.NET MeetUp Brno - Challenges of Managing CoreFX repo -- Karel Zikmund
 
Browser tools that make web development easier
Browser tools that make web development easierBrowser tools that make web development easier
Browser tools that make web development easier
 
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable ArtifactsOracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
 
Ow
OwOw
Ow
 
Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...
Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...
Resources for Navigating Drupal Upgrades: Versions 6 Through 8 And What It Me...
 
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation OptionsOracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
 
Zend Code in ZF 2.0
Zend Code in ZF 2.0Zend Code in ZF 2.0
Zend Code in ZF 2.0
 
Oracle ADF Architecture TV - Development - Programming Best Practices
Oracle ADF Architecture TV - Development - Programming Best PracticesOracle ADF Architecture TV - Development - Programming Best Practices
Oracle ADF Architecture TV - Development - Programming Best Practices
 
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
 

Similar to Adf-fusion-architecture_manage-modular-approach_4581

Learn from my Mistakes - Building Better Solutions in SPFx
Learn from my  Mistakes - Building Better Solutions in SPFxLearn from my  Mistakes - Building Better Solutions in SPFx
Learn from my Mistakes - Building Better Solutions in SPFx
Thomas Daly
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
WaveMaker, Inc.
 
DataOps with Project Amaterasu
DataOps with Project AmaterasuDataOps with Project Amaterasu
DataOps with Project Amaterasu
DataWorks Summit/Hadoop Summit
 
SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...
SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...
SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...
Wilco Turnhout
 
Oracle Application Express Introduction
Oracle Application Express  IntroductionOracle Application Express  Introduction
Oracle Application Express Introduction
ssusera8d54f
 
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Vadym Kazulkin
 
Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...
Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...
Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...
Josh Carlisle
 
Oracle APEX or ADF? From Requirements to Tool Choice
Oracle APEX or ADF? From Requirements to Tool ChoiceOracle APEX or ADF? From Requirements to Tool Choice
Oracle APEX or ADF? From Requirements to Tool Choice
Sten Vesterli
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
Karthik Gaekwad
 
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
DuckMa
 
Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)
Camuel Gilyadov
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Nilesh Shah
 
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow ConceptsOracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Chris Muir
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareAsp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech Software
Ritwik Das
 
Presentation 1 Web--dev
Presentation 1 Web--devPresentation 1 Web--dev
Presentation 1 Web--dev
altsav
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
Siva Rama Krishna Chunduru
 
ADF Basics and Beyond - Alfresco Devcon 2018
ADF Basics and Beyond - Alfresco Devcon 2018ADF Basics and Beyond - Alfresco Devcon 2018
ADF Basics and Beyond - Alfresco Devcon 2018
Mario Romano
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
Florian Roscheck
 
An Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPagesAn Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPages
Ulrich Krause
 
Advanced dev ops governance with terraform
Advanced dev ops governance with terraformAdvanced dev ops governance with terraform
Advanced dev ops governance with terraform
James Counts
 

Similar to Adf-fusion-architecture_manage-modular-approach_4581 (20)

Learn from my Mistakes - Building Better Solutions in SPFx
Learn from my  Mistakes - Building Better Solutions in SPFxLearn from my  Mistakes - Building Better Solutions in SPFx
Learn from my Mistakes - Building Better Solutions in SPFx
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 
DataOps with Project Amaterasu
DataOps with Project AmaterasuDataOps with Project Amaterasu
DataOps with Project Amaterasu
 
SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...
SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...
SharePoint Connections Conference Amsterdam - Pitfalls and success factors of...
 
Oracle Application Express Introduction
Oracle Application Express  IntroductionOracle Application Express  Introduction
Oracle Application Express Introduction
 
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
 
Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...
Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...
Building Resilient Azure Solutions for Office 365 - SharePoint Saturday Atlan...
 
Oracle APEX or ADF? From Requirements to Tool Choice
Oracle APEX or ADF? From Requirements to Tool ChoiceOracle APEX or ADF? From Requirements to Tool Choice
Oracle APEX or ADF? From Requirements to Tool Choice
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
 
Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)
 
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
 
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow ConceptsOracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareAsp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech Software
 
Presentation 1 Web--dev
Presentation 1 Web--devPresentation 1 Web--dev
Presentation 1 Web--dev
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
ADF Basics and Beyond - Alfresco Devcon 2018
ADF Basics and Beyond - Alfresco Devcon 2018ADF Basics and Beyond - Alfresco Devcon 2018
ADF Basics and Beyond - Alfresco Devcon 2018
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
 
An Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPagesAn Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPages
 
Advanced dev ops governance with terraform
Advanced dev ops governance with terraformAdvanced dev ops governance with terraform
Advanced dev ops governance with terraform
 

More from Berry Clemens

Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...
Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...
Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...
Berry Clemens
 
Ebs strategy-roadmap-given
Ebs strategy-roadmap-givenEbs strategy-roadmap-given
Ebs strategy-roadmap-given
Berry Clemens
 
Strategy and erp in-the-cloud
Strategy and erp in-the-cloudStrategy and erp in-the-cloud
Strategy and erp in-the-cloud
Berry Clemens
 
Preparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-fullPreparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-full
Berry Clemens
 
EBS 12.1 and 12.2 strategy-roadmap-given
EBS 12.1 and 12.2 strategy-roadmap-givenEBS 12.1 and 12.2 strategy-roadmap-given
EBS 12.1 and 12.2 strategy-roadmap-given
Berry Clemens
 
Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)
Berry Clemens
 
Oracle Fusion functional setup manager
Oracle Fusion functional setup managerOracle Fusion functional setup manager
Oracle Fusion functional setup manager
Berry Clemens
 
Oracle E-Business Suitre mobile apps ADF
Oracle E-Business Suitre mobile apps ADFOracle E-Business Suitre mobile apps ADF
Oracle E-Business Suitre mobile apps ADF
Berry Clemens
 
Con9437 ad ffor_ebs and mobile
Con9437 ad ffor_ebs and mobileCon9437 ad ffor_ebs and mobile
Con9437 ad ffor_ebs and mobile
Berry Clemens
 
Getting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationGetting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentation
Berry Clemens
 
Fusion_apps extending and customizations
Fusion_apps extending and customizationsFusion_apps extending and customizations
Fusion_apps extending and customizations
Berry Clemens
 
Programming-best practices( beginner) ADF_fusionapps
Programming-best practices( beginner) ADF_fusionappsProgramming-best practices( beginner) ADF_fusionapps
Programming-best practices( beginner) ADF_fusionapps
Berry Clemens
 
EBS-endeca-technical-considerations
EBS-endeca-technical-considerationsEBS-endeca-technical-considerations
EBS-endeca-technical-considerations
Berry Clemens
 
EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2
Berry Clemens
 
Con8289 r12 maintenance tips heisler heisler-con8289
Con8289 r12 maintenance tips heisler heisler-con8289Con8289 r12 maintenance tips heisler heisler-con8289
Con8289 r12 maintenance tips heisler heisler-con8289
Berry Clemens
 
Con8439 fusion apps customs to ebs
Con8439 fusion apps customs to ebsCon8439 fusion apps customs to ebs
Con8439 fusion apps customs to ebs
Berry Clemens
 
Con9534 fusion financials
Con9534 fusion financialsCon9534 fusion financials
Con9534 fusion financials
Berry Clemens
 
Con8442 fusion functional setup manager
Con8442 fusion functional setup managerCon8442 fusion functional setup manager
Con8442 fusion functional setup manager
Berry Clemens
 
Con3928 horton session con3928 fusion app on-premise installation lessons lea...
Con3928 horton session con3928 fusion app on-premise installation lessons lea...Con3928 horton session con3928 fusion app on-premise installation lessons lea...
Con3928 horton session con3928 fusion app on-premise installation lessons lea...
Berry Clemens
 
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partnerCon8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Berry Clemens
 

More from Berry Clemens (20)

Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...
Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...
Simplified user experience_design_patterns_for_the_oracle_applications_cloud_...
 
Ebs strategy-roadmap-given
Ebs strategy-roadmap-givenEbs strategy-roadmap-given
Ebs strategy-roadmap-given
 
Strategy and erp in-the-cloud
Strategy and erp in-the-cloudStrategy and erp in-the-cloud
Strategy and erp in-the-cloud
 
Preparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-fullPreparing for EBS R12.2-upgrade-full
Preparing for EBS R12.2-upgrade-full
 
EBS 12.1 and 12.2 strategy-roadmap-given
EBS 12.1 and 12.2 strategy-roadmap-givenEBS 12.1 and 12.2 strategy-roadmap-given
EBS 12.1 and 12.2 strategy-roadmap-given
 
Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)
 
Oracle Fusion functional setup manager
Oracle Fusion functional setup managerOracle Fusion functional setup manager
Oracle Fusion functional setup manager
 
Oracle E-Business Suitre mobile apps ADF
Oracle E-Business Suitre mobile apps ADFOracle E-Business Suitre mobile apps ADF
Oracle E-Business Suitre mobile apps ADF
 
Con9437 ad ffor_ebs and mobile
Con9437 ad ffor_ebs and mobileCon9437 ad ffor_ebs and mobile
Con9437 ad ffor_ebs and mobile
 
Getting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationGetting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentation
 
Fusion_apps extending and customizations
Fusion_apps extending and customizationsFusion_apps extending and customizations
Fusion_apps extending and customizations
 
Programming-best practices( beginner) ADF_fusionapps
Programming-best practices( beginner) ADF_fusionappsProgramming-best practices( beginner) ADF_fusionapps
Programming-best practices( beginner) ADF_fusionapps
 
EBS-endeca-technical-considerations
EBS-endeca-technical-considerationsEBS-endeca-technical-considerations
EBS-endeca-technical-considerations
 
EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2
 
Con8289 r12 maintenance tips heisler heisler-con8289
Con8289 r12 maintenance tips heisler heisler-con8289Con8289 r12 maintenance tips heisler heisler-con8289
Con8289 r12 maintenance tips heisler heisler-con8289
 
Con8439 fusion apps customs to ebs
Con8439 fusion apps customs to ebsCon8439 fusion apps customs to ebs
Con8439 fusion apps customs to ebs
 
Con9534 fusion financials
Con9534 fusion financialsCon9534 fusion financials
Con9534 fusion financials
 
Con8442 fusion functional setup manager
Con8442 fusion functional setup managerCon8442 fusion functional setup manager
Con8442 fusion functional setup manager
 
Con3928 horton session con3928 fusion app on-premise installation lessons lea...
Con3928 horton session con3928 fusion app on-premise installation lessons lea...Con3928 horton session con3928 fusion app on-premise installation lessons lea...
Con3928 horton session con3928 fusion app on-premise installation lessons lea...
 
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partnerCon8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
 

Recently uploaded

Top keywords searches on business in AUS
Top keywords searches on business in AUSTop keywords searches on business in AUS
Top keywords searches on business in AUS
riannecreativetwo
 
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptxFIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Alliance
 
Understanding NFT Marketplace Ecosystem.pptx
Understanding  NFT Marketplace Ecosystem.pptxUnderstanding  NFT Marketplace Ecosystem.pptx
Understanding NFT Marketplace Ecosystem.pptx
NFT Space.
 
Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...
Nohoax Kanont
 
Multimodal Embeddings (continued) - South Bay Meetup Slides
Multimodal Embeddings (continued) - South Bay Meetup SlidesMultimodal Embeddings (continued) - South Bay Meetup Slides
Multimodal Embeddings (continued) - South Bay Meetup Slides
Zilliz
 
UiPath Community Day Amsterdam presentations
UiPath Community Day Amsterdam presentationsUiPath Community Day Amsterdam presentations
UiPath Community Day Amsterdam presentations
UiPathCommunity
 
SuratMeetup-MuleSoft + Salt Security for API Security.pptx
SuratMeetup-MuleSoft + Salt Security for API Security.pptxSuratMeetup-MuleSoft + Salt Security for API Security.pptx
SuratMeetup-MuleSoft + Salt Security for API Security.pptx
nitishjain2015
 
Flame Atomic Emission Spectroscopy.-pptx
Flame Atomic Emission Spectroscopy.-pptxFlame Atomic Emission Spectroscopy.-pptx
Flame Atomic Emission Spectroscopy.-pptx
VaishnaviChavan206944
 
Project management Course in Australia.pptx
Project management Course in Australia.pptxProject management Course in Australia.pptx
Project management Course in Australia.pptx
deathreaper9
 
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptxFIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
FIDO Alliance
 
Securiport Gambia - Intelligent Threat Analysis
Securiport Gambia - Intelligent Threat AnalysisSecuriport Gambia - Intelligent Threat Analysis
Securiport Gambia - Intelligent Threat Analysis
Securiport Gambia
 
STKI Israeli IT Market Study v2 August 2024.pdf
STKI Israeli IT Market Study v2 August 2024.pdfSTKI Israeli IT Market Study v2 August 2024.pdf
STKI Israeli IT Market Study v2 August 2024.pdf
Dr. Jimmy Schwarzkopf
 
Getting Started with Azure AI Studio.pptx
Getting Started with Azure AI Studio.pptxGetting Started with Azure AI Studio.pptx
Getting Started with Azure AI Studio.pptx
Swaminathan Vetri
 
Global Collaboration for Space Exploration.pdf
Global Collaboration for Space Exploration.pdfGlobal Collaboration for Space Exploration.pdf
Global Collaboration for Space Exploration.pdf
Sachin Chitre
 
BCC -401-aktu-Cyber-Security Unit-1.docx
BCC -401-aktu-Cyber-Security Unit-1.docxBCC -401-aktu-Cyber-Security Unit-1.docx
BCC -401-aktu-Cyber-Security Unit-1.docx
pubgnewstate1620
 
Network Auto Configuration and Correction using Python.pptx
Network Auto Configuration and Correction using Python.pptxNetwork Auto Configuration and Correction using Python.pptx
Network Auto Configuration and Correction using Python.pptx
saikumaresh2
 
FIDO Munich Seminar: FIDO Tech Principles.pptx
FIDO Munich Seminar: FIDO Tech Principles.pptxFIDO Munich Seminar: FIDO Tech Principles.pptx
FIDO Munich Seminar: FIDO Tech Principles.pptx
FIDO Alliance
 
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptxFIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
FIDO Alliance
 
Scientific-Based Blockchain TON Project Analysis Report
Scientific-Based Blockchain  TON Project Analysis ReportScientific-Based Blockchain  TON Project Analysis Report
Scientific-Based Blockchain TON Project Analysis Report
SelcukTOPAL2
 
Increase Quality with User Access Policies - July 2024
Increase Quality with User Access Policies - July 2024Increase Quality with User Access Policies - July 2024
Increase Quality with User Access Policies - July 2024
Peter Caitens
 

Recently uploaded (20)

Top keywords searches on business in AUS
Top keywords searches on business in AUSTop keywords searches on business in AUS
Top keywords searches on business in AUS
 
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptxFIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptx
 
Understanding NFT Marketplace Ecosystem.pptx
Understanding  NFT Marketplace Ecosystem.pptxUnderstanding  NFT Marketplace Ecosystem.pptx
Understanding NFT Marketplace Ecosystem.pptx
 
Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...Generative AI technology is a fascinating field that focuses on creating comp...
Generative AI technology is a fascinating field that focuses on creating comp...
 
Multimodal Embeddings (continued) - South Bay Meetup Slides
Multimodal Embeddings (continued) - South Bay Meetup SlidesMultimodal Embeddings (continued) - South Bay Meetup Slides
Multimodal Embeddings (continued) - South Bay Meetup Slides
 
UiPath Community Day Amsterdam presentations
UiPath Community Day Amsterdam presentationsUiPath Community Day Amsterdam presentations
UiPath Community Day Amsterdam presentations
 
SuratMeetup-MuleSoft + Salt Security for API Security.pptx
SuratMeetup-MuleSoft + Salt Security for API Security.pptxSuratMeetup-MuleSoft + Salt Security for API Security.pptx
SuratMeetup-MuleSoft + Salt Security for API Security.pptx
 
Flame Atomic Emission Spectroscopy.-pptx
Flame Atomic Emission Spectroscopy.-pptxFlame Atomic Emission Spectroscopy.-pptx
Flame Atomic Emission Spectroscopy.-pptx
 
Project management Course in Australia.pptx
Project management Course in Australia.pptxProject management Course in Australia.pptx
Project management Course in Australia.pptx
 
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptxFIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
 
Securiport Gambia - Intelligent Threat Analysis
Securiport Gambia - Intelligent Threat AnalysisSecuriport Gambia - Intelligent Threat Analysis
Securiport Gambia - Intelligent Threat Analysis
 
STKI Israeli IT Market Study v2 August 2024.pdf
STKI Israeli IT Market Study v2 August 2024.pdfSTKI Israeli IT Market Study v2 August 2024.pdf
STKI Israeli IT Market Study v2 August 2024.pdf
 
Getting Started with Azure AI Studio.pptx
Getting Started with Azure AI Studio.pptxGetting Started with Azure AI Studio.pptx
Getting Started with Azure AI Studio.pptx
 
Global Collaboration for Space Exploration.pdf
Global Collaboration for Space Exploration.pdfGlobal Collaboration for Space Exploration.pdf
Global Collaboration for Space Exploration.pdf
 
BCC -401-aktu-Cyber-Security Unit-1.docx
BCC -401-aktu-Cyber-Security Unit-1.docxBCC -401-aktu-Cyber-Security Unit-1.docx
BCC -401-aktu-Cyber-Security Unit-1.docx
 
Network Auto Configuration and Correction using Python.pptx
Network Auto Configuration and Correction using Python.pptxNetwork Auto Configuration and Correction using Python.pptx
Network Auto Configuration and Correction using Python.pptx
 
FIDO Munich Seminar: FIDO Tech Principles.pptx
FIDO Munich Seminar: FIDO Tech Principles.pptxFIDO Munich Seminar: FIDO Tech Principles.pptx
FIDO Munich Seminar: FIDO Tech Principles.pptx
 
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptxFIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
 
Scientific-Based Blockchain TON Project Analysis Report
Scientific-Based Blockchain  TON Project Analysis ReportScientific-Based Blockchain  TON Project Analysis Report
Scientific-Based Blockchain TON Project Analysis Report
 
Increase Quality with User Access Policies - July 2024
Increase Quality with User Access Policies - July 2024Increase Quality with User Access Policies - July 2024
Increase Quality with User Access Policies - July 2024
 

Adf-fusion-architecture_manage-modular-approach_4581

  • 1. ADF Fusion architecture: manage the modular approach CON4581 Aino Andriessen, 24 september 2013
  • 2. 2 Aino Andriessen Technical Consultant Technical Architect Training ADF, Java, PL/SQL, XML, ... SOA , Integration Software engineering Agile aino.andriessen@amis.nl http://www.fttech.net
  • 3. 3 • • • • • Systems integrator Consultancy Oracle, Java, Open Source, ADF, SOA, BPM, Database, Mobile, ... AMIS Technology School Pagoni • http://www.amis.nl • http://technology.amis.nl/blog/
  • 10. 10 ADF Pattern genealogy Sum of the Parts Two for One Deal Cylinder Monster Fine Grained Small Application Small and Simple Application Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals Pillar
  • 11. 11 Small application • One application workspace = one deployment EAR • Model: ADF Business Components – Moderate amount of BC's – One or a few Application Modules • ViewController – – – – One Unbounded Task Flow Some Bounded Task Flows Some page fragments One or a few pages Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals
  • 12. 12 Small application Application Workspace Model View Objects AppModule Framework Extensions Entity Objects ViewController Bounded Task Flow Fragments Fragments Bounded Task Flow Fragments Task Flow Template Page Template Declarative Components Skin Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals EAR Pages Bounded Task Flow ViewController Extensions Unbounded Task Flow
  • 13. 13 Small Application Advantages • Simple architecture – Easy to build and deploy • Suits small teams and/or small apps • Bounded Task Flows – Improved business process to design mapping – Improved modularization but not perfect – Options such as transaction features (vs root ADF BC AMs) – Programming by contract now possible • Improved ability to test modules • Requires little development infrastructure Disadvantages • Developers can still accidentally tightly couple code • Bounded Task Flows aren’t externally reusable • Application tends to grow in size
  • 14. 14 Monster application • Synonyms: uber, monolithic • One application workspace = one deployment EAR • Model – Many, many BC's – Multiple Application Modules • ViewController – – – – One Unbounded Task Flow Many Bounded Task Flows Many page fragments Multiple Pages Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals
  • 15. 15 Monster Application Application Workspace Model Entity Objects Entity Objects View Objects View Objects View Objects AppModule AppModule AppModule Framework Extensions Entity Objects AppModule ViewController Pages Fragments Bounded Task Flow Fragments Bounded Task Flow Fragments Fragments Bounded Task Flow Fragments Bounded Task Flow Fragments Bounded Task Flow Fragments Task Flow Templates Page Templates Declarative Components Skins Bounded Task Flow Fragments Bounded Task Flow Fragments Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals EAR Bounded Task Flow Bounded Task Flow ViewController Extensions Unbounded Task Flow
  • 16. 16 Monster application Advantages Disadvantages • Relatively simple architecture still • • • Bounded Task Flows • Requires little development infrastructure • • Hard to maintain Size (# of objects) – Difficult to understand and oversee everything – Dependencies – Developer's don’t dare to touch existing code Build is an all or nothing affair Bounded Task Flows transaction options can be complicated Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals
  • 17. 17 Modular ADF Architectures Sum of the Parts Two for One Deal Cylinder Monster Fine Grained Small Application Small and Simple Application Source: Chris Muir, Oracle Corporation - One size doesn't fit all - Oracle ADF Architecture Fundamentals Pillar
  • 18. 18 Examples • Shop • Insurance application – Policies, Customers, Cases, Claims, Commission, Financials, … • Judicial system • Booking system • … Business application • Multiple small applications with repeated functionalities • Multi-brand application • Multi channel – web, desktop, mobile, services
  • 20. 20 Basic ADF Application ADF ViewController ADF Model DB
  • 21. 21 Modularization 1 Main Main Main EAR ADF Lib ADF Lib ADF Lib ADF Lib Party Policy Claim … ADF Lib Comm ons ADF Lib Fwkext DB
  • 22. 22 Modularization 2 Main EAR ADF Lib ADF Lib ADF Lib ADF Lib Party Policy Claim … ADF Lib Comm ons ADF Lib ADF Lib ADF Lib ADF Lib ADF Lib Party Policy Claim … Fwkext DB
  • 23. 23 Modularization 2a Main EAR ADF Lib ADF Lib ADF Lib ADF Lib Party Policy Claim … ADF Lib Comm ons ADF Lib Party Policy Claim DB ADF Lib … Fwkext
  • 24. 24 Modularization 2b Main EAR ADF Lib Taskflows ADF Lib ADF Lib ADF Lib Party Policy Claim … Comm ons AM Viewobjects ADF Lib Entities / LOV ADF Lib Party ADF Lib ADF Lib Policy Claim DB ADF Lib ADF Lib … Fwkext
  • 25. 25 Module interdependencies Main Main ADF Lib ADF Lib ADF Lib ADF Lib Party Policy Party Policy PParty PPolicy 1 Main ADF Lib ADF Lib Main ADF Lib ADF Lib ADF Lib ADF Lib ParPol Party Party 3 Policy 4 Policy 2 ADF Lib
  • 27. 27
  • 29. 29 Goal Organize the application(s) in manageable components while maintaining optimal development experience
  • 30. 30 Organization - general • One workspace for main • One workspace per 'unit' • One or more common workspaces – – – – – – Framework extensions Declarative components Taskflow templates Pagetemplates Skins Utilities • Each 'unit' is delivered as an ADF library
  • 31. 31 General principals • Each workspace is able to run / tested on its own • Full debugging must be available everywhere – sources libraries • Automated build, test, deliver and deploy process
  • 32. 32 Development Issues • • • • • Every object must be unique, worldwide UI (page, tf, pagedef) hot deployment is only possible within a project Libraries cannot be hot-deployed Taskflows must be delivered in an ADF library to be used elsewhere Testing taskflows – Testpages (and pagedefs) and setup – ADF EMG Taskflow Tester • Limited ADF library configuration • Refactoring over projects • Build automation (with ant) is not easy
  • 33. 33 Single workspace nightmare • May sound as a good idea: start small and grow bigger • Use working sets to organize the projects within the workspace But… • Boundaries become fuzzy • Running the application can be slow • Testing is a problem • Workspace might grow organically • Using taskflows is confusing • Hot deployment issues • Fighting the framework • Beware for the monster…
  • 34. 34
  • 35. 35 Challenges • • • • • • Manage the build Artifact management Library management Versioning Sources and JavaDoc Deployment
  • 36. 36 The importance of being automated • • • • Deliver adf libraries and ear Deploy Test … • • • • • • • • • • • • Consistent Less mistakes Easier Faster Fun Everybody's party Repeatable Predictable Transparent Trackable Reporting Reuse
  • 37. 37 Build automation • 11g: ant • 12c: Maven • Tasks – – – – – – Package source, javadoc jar Version / build information Publish to artifact repository Release Deploy to WLS • • latest version
  • 39. Artifact management • Central environment to store and manage deliverables / artifacts • Publish and download:
  • 43. 43 Where to store (adf) libraries? • ant – project lib directory • Maven – local repository • Internal Application libraries – Build them locally and then deploy them to lib dir / local repo – Don't submit then to scm but build them when needed • External libraries (aka dependencies): – Download from artifact repository main -> HR -> OE
  • 44. 44 ADF library dependencies • • • • Dependencies of ADF libraries Included in the consuming project Works as a charm ADF_Library_Dependencies.library • Multiple versions of nl/amis/demo/hr/view/DataBindings.cpx appear in your project run classpath – Path is not world-wide unique – Circular dependency: project itself is included as library because its used by dependent project main -> HR -> commons
  • 45. 45 Artifact versioning • Always provide version information – MANIFEST.MF • define in deploy profile – Filename – WLS Deployment version • Manifest entry: Weblogic-Application-Version • Remarks – – – – – – – OJDeploy failure when manifest file fails 'Internal' libraries could do without version in the file name max # of redeployments on WLS Update library definition Use ojdeploy outputfile parameter for version in filename Store version in local file to be used in ant build scripts scm revision
  • 47. 47 Sources and JavaDoc • Always deliver sources and javadoc • ant / maven tasks • sources jar can also be generated with separate deploy profile • Include as project library
  • 48. 48 Organize the build • Multiple build files – Build project – per application – per project • Split build files – build, artifact mgt, build-info, deploy • Fix the generated build files • Consistent naming – use prefixes • Externalize properties • Manage project ant settings • Reuse using svn externals • Build scripting is hard
  • 49. 49 • this page is left blank intentionally
  • 50. 50
  • 51. 51 Summary • • • • • Modularization allows for better understandability and manageability Choose the right architecture Module autonomy Build automation JDeveloper doesn't always provide optimal support
  • 52. 52
  • 53. 53
  • 54. 54 References • Chris Muir - One size doesn't fit all: Oracle ADF Architecture Fundamentals - CON2203 - Thursday, Sep 26, 11:00 AM - 12:00 PM Golden Gate A • ADF EMG • Oracle ADF Architecture Square • ADF Code Guidelines • ADF Naming and Project Layout Guidelines - Marriott Marquis -
  • 55. 55
  • 56. 56