a federal agency is taking epm to the next level with
TRANSCRIPT
Session ID:
Prepared by:
Remember to complete your evaluation for this session within the app!
10877
A Federal Agency is taking EPM to the Next Level with Groovy
PBCS
April 10, 2019
Alex RodriguezPatrick Ferraro
Huron Consulting Group
Our Topic for Today• Abstract: While some developers are only leveraging Groovy to dramatically increase
performance, a US Federal Agency has taken Groovy a step further to deliver richer functionality expanding what’s never been possible in Oracle Planning and Budgeting Cloud Services. Complex validations and functionalities required of the Federal Agency's planning system have been implemented. Groovy has enabled outside the box thinking, and the ability to go above and beyond the traditional logic when it comes to building validations, adding functionality, and other behind-the- scenes features that uphold data governance.
• Objective 1: Introduce the additional functionality that can be built using groovy to enhance planning applications.
• Objective 2: Discuss the controls and data governance put in place to manage the Federal Agency.
• Objective 3: Discuss how groovy can significantly increase the user experience beyond just performance.
• Audience: Management
4
• OCM• Remote Delivery• Custom Development• Application and Technical
Support• Private Cloud
• Data Strategy• Financial and Operational
Reporting• Information Strategy• OLAP and Essbase• Big Data and Hadoop
• Financials• Human Capital Management• Supply Chain• Procurement• Projects• Expenses Management
• Process & Systems Diagnostic
• Strategic Roadmap• Vendor Selection• Blueprint Architecture
• Customer Experience Management (CXM)
• Sales Forecasting & Pipeline Management
• Lead, Contact & Opportunity Management• Data Management, Integration & Analytics
• Strategic Planning and Financial Modeling• Planning, Budgeting and Forecasting• Financial Consolidation,
Close and Reporting• Master Data Management
& Data Governance• Profitability and Cost Analysis• Robotic Process Automation
• Organizational Development• Post-Transaction Integration• Benchmarking &
Industry Insight
Huron ES&A Enterprise Solutions & Analytics
• Strategy, Growth and Digital Business Models • End-to-end capabilities to support clients’ successful
transformation programs• Strategy and Solution Selection, Architecture• Implementation and benefits realization
FULL SERVICESTRATEGY THROUGH EXECUTION
Data Governance and Controls in a Federal Agency Setting
B U D G E T F O R M U L A T I O N+ Budget Formulation + Costing & Allocations+ Budget Books
H Y P E R I O N P L A N N I N G
S A L A R Y / S T A F F I N G P L A N+ Salary Projections, WGI increase and projections + Staff Planning – Position and Employee & Integrated Vacancies + Budget vs. Actuals
H Y P E R I O N P L A N N I N G
I N T E G R A T I O N+ Integration with Actuals from GL, HR, and Contract systems + Fully Automated nightly and mid-day processes
O R A C L E D A T A I N T E G R A T O R
S O L U T I O N O V E R V I E Wagency historical
A N A L Y T I C S & R E P O R T I N G
+ Dashboards & KPIs + Budget vs. Actuals + Parameterized and dynamic
O R A C L E B U S I N E S S I N T E L L I G E N C E E N T E R P R I S E E D I T I O N
C O N T R A C T S P E N D I N G+ Contract Spending & Monitoring + Actuals + Forecast+ Commitments, Obligations, and Spend Plan
H Y P E R I O N P L A N N I N G
B U D G E T E X E C U T I O NO R A C L E P L A N N I N G A N D B U D G E T I N G C L O U D S E R V I C E S
S T R A T E G Y & R O A D M A P
CLOUD + Agency Cloud strategy success depends upon timing and approach+ Agency IT internal init iative driving cloud strategy across the
enterprise + Agency End-Users looking for an application with a modern look and
feel, and provides more intuit ive usability and improved solution adoption
4
2
3
1+ Understand overall strategy, current business
processes and models, and long-term strategy+ Conduct applications health check
+ New Budget Execution Application first to cloud
+ Pilot Cloud: net new development in cloud
+ Hybrid integration with on-premapps
I N T E R I M S T R A T E G Y( h y b r i d c l o u d )
C L O U D D E C I S I O N
+ Transition and prioritize current apps basedon life cycle
+ Incorporate added cloud functionality+ Mitigate change management risk
P H A S E D T R A N S I T I ON
+ PCM for Costing and Allocations+ EPRCS for Budget Book Narrative
Process
I N T R O D U C E S P E C I A L I Z E D M O D U L E S
Project Background – Budget Execution• Commissioned by the Executive Director of Operations based on a 2016 Mission Support
Task Force Report
• Required to standardize and streamline budget execution
• Enhanced mechanisms for allowance holders to plan and manage their allowances
• Enhanced mechanisms for lead offices to oversee execution on their business lines
• Specific requirements for IT budget execution
• Solution implemented as a new PBCS+ application
Definition – Budget Execution• Process whereby office create and maintain contract level execution plans during
the fiscal year to:
• Execute their budgeted resources efficiently, effectively and compliantly• Obtain requisite approvals & provide explanation for changes from baseline
plans • Inform the next budget formulation cycle
• Used interchangeably with commitment monitoring
Budget Execution Planning, Monitoring & Reporting Previous State PAIN POINTS
• No clear definition of planning budget for baseline execution plans.
• Data not normalized • Potential data discrepancies • Manual Interfaces• Office specific processes• No clear baseline and change
reporting• Lack of transparency • Lack of integration and automatic
controls (Including IT)• Lack of integrated reporting
Commitment Planning –Cuff Sheets
Data Calls:Office
Spreadsheets
IT ChangeRequests
SharePoint
Formulation Acquisition Execution
Execution Planning & Monitoring
Budget ExecutionPlanning, Monitoring & Reporting Current State
Formulation Acquisition Execution
PBCS+ BI Reporting
BENEFITS
• Clearly defined planning budget at appropriate levels
• Normalized data• Standardized, integrated and
controlled data• Clearly defined baseline plans and
change reporting• Automated interfaces• Integrated reporting• Formulation informed by execution
Execution Planning & Monitoring
Controls and Validations
1. Baseline2. Change Tracking3. IT Approvals4. Continuing Resolution5. Full Budget Upload6. Mid Year Resource Reviews 7. Linked Commitments8. Validation Messages
Benefits
Normalized, reportable data integrating budget formulation with execution
Standardized, controlled processing facilitating optimal resource allocations
Automated & integrated data hand-offs and approvals between program and budget offices
Systematic controls in lieu of key person dependencies
Solutions to capture essential data not available in financial/ acquisition systems
Ability to respond to internal and external questions relating to resource (or planned resource) usage
Implementation Considerations
• Executive Support and Buy-in
• Upfront assessment of processes and applications
• Clearly defined vision
• Change Management
• Dependencies – Technical and Functional
• Core Team – key Subject Matter Experts
• Strategic Decisions
• Transparency and Accountability
• One integrated System (One End to End View)
• Full Integration of Execution and Formulation
• Meeting External Compliance (FITARA)
• Normalized Data and Convention Facilitate Analysis
• Systematic Controls Replace Key Person Dependencies
Value Add:PBCS+
Systems Diagram
ODI OBI
Reporting
RequisitionManagement
System
Requisition(ASO)
Commitment PlanReporting DB
(ASO)
SpendingPlan
CommitmentPlan
ERP GLSystem
METADATA
METADATA
ME
TA
DA
TA
SpendingPlan
Hyperion Planning PBCS+
ODI Oracle Data Integrator
Using Groovy to Enhance User Experience Beyond Performance
The Back Story: Hyperion Planning & Essbase Before Groovy• Hyperion Planning has used Essbase as a calculation engine and database for
a very long time
• Essbase scripting language used to configure business rules and calculations in Hyperion Planning. (ASO notwithstanding)
• My top 6 design challenges:1. Execution order of Smart Push vs. Rules run on save2. Runtime of Downstream Operations / Runtime3. Rule Fix had to align with form layout4. Could not use User Variables in Business Rules5. Long Run Time: Essbase runs each script in it’s entirety6. Limited ability to program “conditions”
Then, in 2017…
What is Groovy?• It’s a Java “helper” language
• Bridges the gap between Essbase and Java
• Enables Java functionality to be used with Hyperion/PBCS & Essbase
• Works with many additional languages, not just Essbase script
So, what does this mean for HP/EPBCS?• Groovy Augments existing Essbase code
• Ability to interact with EPBCS artifacts in real time
• Provides the “Java-based” ability to execute logic based upon the users actions – not just the save button
• Groovy is available in:– EPBCS – PBCS + – On-prem* v11.1.2.4+
• a different API exists between on-prem and cloud
GROOVY CODE{……ESSBASE CODE(
………
)……
}
The Groovy Performance “Headline”• Brought to you by the dataCellIterator
Labor Planning Form
Business Rule will run only for:- JC_498 Plant Maintenance Senior Manager- Sept:Dec- 2019
The Groovy Performance “Headline”
28 secs.
1 sec.
Labor Planning Calc – Runtime
Essbase Business Rule
Groovy-enabled Essbase Business Rule
96% faster
The Groovy Performance “Headline”
Groovy Code
Essbase Code
The Groovy Performance “Headline”
Groovy-EnabledEssbase
CodeEssbase
Code
The Groovy Performance “Headline”• Compounding time savings yield Returns across the system:
Driver Based Planning
Downstream / Dependent Calculations
FX Translations & Data Aggregations
Smart Pushes to ASO
Data Available for Reporting
Groovy - Beyond Performance Gains• dataCellIterator changes the game for:
– Conditional Logic and IF statements
• It allows programming to act specifically depending on form-level events, such as:– Identifying what, if any cells have changed– Whether or not certain cells have changed– Error handling at data input level:
• Error messages• Disables save function
• Increased flexibility of sequencing, and a customizable execution order of:– Business Rules– Smart Pushes
Using Groovy to Enhance Validation Logic
Governance, Controls, and ValidationsHow we define Governance – insinuates a different approach:• Validation = transactional at the contract (transactional) level• Controls = series of validations applied in each budgeting artifact• Governance = All control systems working together in the entire application
• Approximately $1B in budget spending each year:– Need to manage 5,000+ active spending obligations across the agency
• Different validation logic for different departments / offices:– Auto approvals for some– Manual approvals required for IT-related spend
• Different validation logic for “Continuing Resolution” (i.e. Gov’t shutdown) periods
Everything that Groovy enabled us to do:• Input Controls• Contract level validations for each commitment line item • Contract line item activation / deactivation (saving it for later)• Application of Approvals for IT-related items• Conditional validations on Copy Contract feature• Smart Push to reporting cube (data movement between DB’s)• Record transactional history
Input controls using Groovy• Input Controls on Form• If total committed amounts exceed the obligated amount,
highlight the cell Red & display an error message• Prevents user from saving
Input controls using Groovy• Check if UDA = IT
– Copy newly entered amount to “Pending Approval” version
Validation logic for IT approvals• If the line item in question is an IT item, it must be sent for an additional
approval. • Copies the record to the IT approval scenario, prints a flag• Using Groovy to check UDA
Contract Line Item Validations Using Groovy
Up to
1,500Contracts per office
7Validations per Contract
Run Validation Rule only on updated cells
Up to
10,500Data Points validated
on every save, regardless if updated
Agency Data Volumes: Without Groovy: With Groovy:
Line Item Deactivation / Reactivation Using Groovy• Active contracts sometimes do not receive funding• Users may want to “deactivate” or “remove” line items, but not delete them so
that they can be re-used at a later date. • A Smart List populated with “Keep” and “Remove” is added to a “Plan Status”
account on the form for each line item. • Set the Plan Status member to “Remove” for the
line item that you wish to deactivate
Line Item Deactivation / Reactivation Using GroovySTART
Run dataCellIterator
Do any edited cells exist?
END
Does Cell = “Remove” ?
Does commitment ≠
$0 ?
Is IT Dept. Item?
Copy item to “Deactivated”
version
Calculate Delta and log transaction
history
Run Smart Push on item
Does a commitment
exist?
Send Item for Deactivation
Approval
Send Item for Deactivation
Approval
Line item deactivation / reactivation using GroovyDeactivation Routine Runs on Save to checkFor any “edited” cells In the Plan Status column
On Save:+ Runs validations, if passed:
+ Copies line items to “Deactivated” scenario+ Runs Smart Push for selected line items
Line item deactivation / reactivation using GroovyReactivation Routine Runs on Save to checkFor any “edited” cells In the Plan Status column
Copy Contract Feature - Validations• Users required the ability to copy contracts between accounting strings• BUT – this operation should only be permitted under certain situations• Copy Contract is a Business Rule tied to an Action Menu
getSmartPush
• Call the Smart Push in a business rule:
• Dynamically build the Smart Push on the fly using the variables defined earlier by the dataCellIterator:
operation.grid.getSmartPush(“SmartPushName").execute()
operation.grid.getSmartPush(“SmartPushName").execute([“Account":strAccount,"Period":strPeriods,”Year”:strYear])
Transactional History• What EPBCS gives you:
• What we needed:
Huron on Stage:April 8: Unraveling the Mystery of PCMCSApril 9: Rounding in Oracle financial Close and Consolidation (HFM and FCCS)April 9: Add Advanced Analytics into PBCSApril 10: A Little Cloudy on Your Master Data Governance Strategy? Oracle EDMCS vs. DRM/DRGApril 10: Help! I Need my Oracle Cloud Application DataApril 10: A Federal Agency is taking EPM to the Next Level with Groovy
Upcoming Events:April 30, 12pm ESTLIVE WEBINAR: A Modern Approach to Managing Profitability to Cost
May 14, 12pm ESTLIVE WEBINAR: A Modern Approach to Financial Consolidation and Close
June 24-27: Kscope 19
September 15-19: Oracle OpenWorld
Finance Transformation & Innovation at Collaborate 19
Register @huronconsultinggroup.com
Session ID:
Remember to complete your evaluation for this session within the app!
10877
Alex [email protected]
Patrick [email protected]
Thanks for coming to our presentation.We enjoyed sharing with you today.
- Alex & Patrick