Managing Oracle EBS Customizations
Driving the Efficient Enterprise
Samir Deshpande
- Oracle EBS Technical Architect & Program Manager
Vrishab Kakade Oracle EBS Apps DBA
Agenda
Why manage customizations? Typical customizations for E-Business Suite Challenges managing customizations Four step strategy to manage customizations Implementing the strategy Q&A
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Why manage customizations?
Improve operational Efficiency Reduce operating expenses Process automation Improved production uptime Installing sense of ownership Reduced inconsistencies and risks Brings clarity and transparency to business Better Audit Controls
@Dell (from just - 2 global EBS systems) Over 1500 customizations Over 35 non prod environments Over 200 servers
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Typical Customizations
Reports
Customer facing outputs Management reports Transactional reports Reconciliation reports Custom functionality Integration with various external systems Legacy environments data conversion Data warehousing Addition of new functionality Forms personalization
@Dell (from just - 2 global EBS systems) 500 RICE components
Forms
Interfaces
Conversions
Enhancements/Extensions Personalization
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
IT Challenges
Environment Strategy
Dev/SIT/FIT/Perf Test etc.
System Dynamics Interdependencies
Patch/Code/Setups
Version control Global Teams Documentation Tracking, migrating, testing and certifying
Significant impact of customizations on major upgrades such as 11i to R12
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Environment Strategy
Env 1 Env 2 Env 3 Env 4 Env 5 Env 6 Env 7 Dev env for production support and project 2 FIT Env for project 1 and Dev for project 3 SIT production support then CRP3 for project 2 UAT for project 1 and 2 Dev env for project 1 Perf Test for project 1 SIT production support then CRP3 for project 2
Have Code, Patches & Setups synchronized across all environments?
Production
DR
Env n
Training needs
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
System Dynamics
Business Change Request
New functionality Enhancements
Have Code, Patches & Setups synchronized across all environments?
Oracle Patches
PSU Upgrades
Production Defects
Functionality issues Up/downstream system needs
Project Defects
Std functionality issues Coding issues
7 Oracle OpenWorld 2010 Managing Oracle EBS Customizations
Interdependencies
Have Code, Patches & Setups synchronized across all environments?
Code, Patch, CR, Defects they could be interdependent how to identify and manage these dependencies?
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Version Control
Have Code, Patches & Setups synchronized across all environments?
Why this code works in one environment and not in other? Is this the right version of code for this environment? Who/when migrated this code? Who approved?
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Global teams
Who changed the code? Why? Who provided business requirement? Who owns the code? How the team will communicate? How to track changes?
Have Code, Patches & Setups synchronized across all environments?
10
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Documentation
Have Code, Patches & Setups synchronized across all environments?
Where and how to document? Who owns the documentation? How does it get updated? How do these updates get migrated across?
11
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Tracking, migrating, testing and certifying
How to track dependencies? What to migrate? When? Who migrates? How? How to test and certify the change migration?
Have Code, Patches & Setups synchronized across all environments?
12
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
How to manage EBS customizations?
13
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Strategy
Communicate
Automate
Standardize
Simplify
14
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Strategy - Simplify
People
Environment ownership Code ownership Roles and responsibilities Environment management Code build and deploy Patches/setups migration and tracking Cloning On Boarding/off boarding Servers/environments Code and documentation repository
Processes
Technology
15
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Strategy - Standardize
People
Role based Environment management Code build and deploy Patches/setups migration and tracking Cloning On Boarding/off boarding Audits Servers/environments Code and documentation repository
Processes
Technology
16
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Strategy - Automate
Processes
Standard process flows Environment management
Technology
Cloning Code/Patch/Setup deployment
17
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Strategy - Communicate
People
Stakeholder list and communication plan
Process
Environment strategy Environment management Code/Document repository and Management processes Software configuration management processes Audit controls
Technology
Portal single point of entry
18
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Key Success Factors
Strong support from Management Willingness to change Agreed documentation methodology Adequate communication Periodic reviews and alignment with strategy
19
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Implementing the strategy to address IT Challenges
Environment Strategy
Dev/SIT/FIT/Perf Test etc.
Significant impact of customizations on major upgrades such as 11i to R12
System Dynamics Interdependencies
Patch/Code/Setups
Version control Global Teams Documentation Tracking, migrating, testing and certifying
Managing Oracle EBS Customizations
20
Oracle OpenWorld 2010
Environment Strategy
Env 1 Env 2 Env 3 Env 4 Env 5 Env 6 Env 7 Dev env for production support and project 2 FIT Env for project 1 and Dev for project 3 SIT production support then CRP3 for project 2 UAT for project 1 and 2 Dev env for project 1 Perf Test for project 1 SIT production support then CRP3 for project 2
Have Code, Patches & Setups synchronized across all environments?
Production
DR
Env n
Training needs
21
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Environment Strategy
Production Support
Dev FIT SIT UAT
Periodic refresh from Production Clone Stage
Prod Clone Support (PCS)
Perf Test
Prod Staging
Production DR
Release 1
Dev FIT SIT
Test
Prod
@Dell 300+ interfaces to external systems End to end testing? @Dell Several simultaneous inflight projects
Release 2
Dev FIT SIT
Other Environments
Training
SandBox
Release n
Dev FIT SIT @Dell Virtualization
Conversion
Patch
Each release may have one or more projects/CRs/Patches
DEVELOPMENT
22 Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Environment Strategy 7 Steps
Defined environment purpose
Establish Release management process to manage all CR/patching etc
Develop Environment refresh strategy
Define environment refresh cycles
Establish environment sync up plan
Environment recycling plan
Audit Controls
23 Oracle OpenWorld 2010 Managing Oracle EBS Customizations
Environment Strategy 7 Steps defined
Defined environment purpose Establish Release management process to manage all CR/patching etc Develop Environment refresh strategy Automate cloning from Prod to Production Clone Support(PCS) Perform all critical activities such as scrambling data, password changes, disable production outbound notifications, database links, cleanup etc. on PCS All the environments refresh/cloning to be performed from PCS environment backup Define environment refresh cycles
Production staging refresh weekly - source production PCS refresh periodically source production Release environments refresh initially/on demand source PCS Support environments refresh periodically source PCS Training prior to training start source UAT All TEST environments refresh prior to test cycle/on demand source PCS
Establish environment sync up plan After go-live of every release; within 30-45 days all DEV environments to be synchronized Environment recycling plan
Production support environments not recycled Release 1 environments can be used for Release 3 Release 2 environments can be used for Release 4 Data scrambling, TDE/VPD, password changes, audit documentation etc done in PCS Clearly defined environment management and ownership plans
Audit Controls
24
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Environment Ownership
Env
Patch
Role
DBA Env Owner SCM group Dev Env Owner SCM group FIT Env Owner SCM group SIT Env Owner SCM Group UAT Env Owner SCM Group PT Owner SCM Group DBAs
Owner
Environment ownership Role based Has final say Responsible for any audits Responsible for access control Available in the region
DEV FIT SIT UAT Perf Test
Dev Managers Business Analyst Mgr Enterprise Testing Mgr Business (PDM) Enterprise Testing Mgr
Role
Environment Owner
Responsibility
Decides on environment downtime Authorizes code/patch migration to this environment Approves environment access to users Environment escalation point Implement Change control processes Ensure that the environment is under SCM process
SCM Group
25
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Benefits of Environment Management
OPEX reduction Resource optimization [hardware/people] Predefined Refresh cycles Recycling plan Process simplification and automation Improved cloning times Opportunity to automate cloning Improved production uptime Predefined release cycles Reduction in adhoc downtime requests Well defined communication plan Pre defined release cycles communicated well in advance
Predefined environment ownership and escalation paths
Installing sense of ownership and accountability Better Audit Controls
Well defined environment ownerships Standard environment management process Controlled environment access
Managing Oracle EBS Customizations
26
Oracle OpenWorld 2010
Code migration
Pre Requisites Finalize version control repository for code and documentation Clearly define repository ownership and management processes Version control system directory tree structure similar to EBS app tier
Example
XXPO_TOP structure should be similar to PO_TOP XXPO_TOP directory structure on file systems and version control system should be same
@Dell (from just - 2 global EBS systems) 500+ RICE components
27
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Code Packaging
Code Pack
DDL/DML
Package/Procedures/SQLs
Reports
Forms
Java
Personalization's
Shell scripts
Code Pack is identified by a unique name and version number Code pack contains Code Unit to be migrated Version number of Code Unit Destination directory Destination Schema Migration options Sequence of Code Unit defines inter dependencies Code Packs are created and maintained by developers Developers migrate code to all environments Developer owns one or more Code Packs Every Code Pack has only one owner
Managing Oracle EBS Customizations
28
Oracle OpenWorld 2010
Code Deployment
Checkout Code Pack Developer specifies Code pack version to be migrated Code pack gets checked out by automated process Here on every action in this process gets logged for audit purposes
For every line in Code Pack
Check out specified version of code unit Copy to destination folder Deploy to specified schema Perform migration options as defined in code pack for that code unit
Communicate
At the end of this deployment, a notification email is sent to all stakeholders Deployment logs are maintained for the life of the environment
29
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Code Migration
Dev Environment FIT Environment
Developer approved code? Env Owner Allow code in?
YES
YES
DeveloperMigrate code
Developer Migration successfu l?
YES
FIT testing team
UAT Environment
Repeat till production & retrofitting changes to all other environments
UAT testing team
YES
Migration successfu l?
NO
Env Owner Allow code in?
DeveloperMigrate code
YES
30
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
YES
ON
ON Start
NO
NO
Env Owner Test Successf ul?
Develop Code and code pack- by developer
NO
Code migration
SCM Team defines and manages migration process Developer responsible for code development and building code packs Developer owns code migration to all environments Ensures right version gets migrated Identifies any defects/dependencies Repeatable process Environment owner approves code entry and exit Minimizes accidents Ensures code accuracy Shared Responsibility and ownerships Same process across all releases [refer to environment strategy slide] Audit Process is pre approved by all stakeholders Properly documented for audit purposes
31 Oracle OpenWorld 2010 Managing Oracle EBS Customizations
Benefits
Process standardization and simplification across releases Installing sense of ownership and accountability Opportunity for code migration automation Reduced inconsistencies Better audit control Improved code migration efficiency and reduced risks Reduced downtime Brings clarity and transparency to business Optimize resources
32
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
Patch and setup migration
These processes should be similar to Code migration process
33
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
34
Oracle OpenWorld 2010
Managing Oracle EBS Customizations
THANK YOU!
Authors
Samir Deshpande
Samir_Deshpande@dell.com Cell: 512-466-3822 Cell: 412-89-SAMIR Vrishab_Kakade@dell.com Cell:512-484-6097 Cell:317-292-6047
Managing Oracle EBS Customizations
Vrishab Kakade
35
Oracle OpenWorld 2010
To learn more about how Dell can help you drive an Efficient Enterprise visit:
Dells onsite TSR for a free quote Michael Dells keynote on Wednesday at 8 a.m. One of Dells 20 conference sessions www.dell.com/oracle
36
Oracle OpenWorld 2010
Managing Oracle EBS Customizations