Chris’ blog #8 – Business Rule Versioning and Change Management
Posted on , updated on

Business Rule Versioning in OneStream

In this blog, we explore a little-known feature in OneStream that automatically tracks versions of business rules. We show how to visualise the differences from one version to the next, so you don’t have to use third party text-comparison tools. This is particularly important in driver-based planning, where business rules are used more heavily than in straight consolidation. It is often very important from the administration and auditing side. When you get into more complex, tailor-made functionality, how can a customer prove what changes got deployed into production are in-line with what the consultants or developers say has changed, if the change is embedded inside a business rule? 

Out-of-the-box is always best, right? 

In a CPM tool we take for granted out-of-the-box functionality such as intercompany eliminations, currency translation, dimensionality, and putting forecasts and actuals together in one tool. With tools such as OneStream we also take for granted the features useful for FP&A such as generating a forecast baseline form historic data without having to extract or duplicate data across different ‘modules’. We are able to execute driver-based (price * qty) calculations straight from data entry formsenter the calculation logic into a simple formula builder, and trigger allocations and spreading from a data form without writing any code It is no surprise that some other EPM/CPM vendors focus so much on out-of-the-box ‘modules’, because “out of the box” sounds good in their sales message. For such vendors, their credibility may fall apart when the customer realizes they have to purchase extra licences to enable such functionality, and almost always falls apart when they later find out these out-of-the-box modules hit a brick wall when you want to tailor them to specific requirements. 

Pushing the boundaries with Business Rules

One of the consequences of going beyond any pre-built, out-of-the-box components, is that with OneStream you have the option to really tailor-make the application to fit very specific and sophisticated requirementsoften to the extent that it prevents customers having to purchase additional specialist tools. This comes from the power of Business Rules in OneStream, which brings the full power of a .NET development environment into a CPM productand integrate it with financial data, or dashboards, or however else you want to present it. 

Versioning Business Rules 

When using more sophisticated Finance Business Rules (instead of member formula) in a driver-based planning implementationtend to see developers make copies of business rules using copy & paste into offline tools, in case you need to roll it back in a development environment. The other problem is that you can’t compare exactly what’s changed, unless you copy & paste both versions into a 3rd party tool (like Notepad ++) and run a text compare plugin. The popularity of these text-compare tools, as used by many implementation consultants, is what prompted me to create a Onestream visual version management and visual comparer tool, so it’s embedded within OneStream and not dependent on any client tools.  

At the click of the button, the output shows visually what’s changed between the versions of the rules, without doing any copy & paste, and without doing any offline archiving.
You can quickly compare every version of a rule, right back to when the application was first created.

When a customer deploys changes from test to production, they need to know exactly what’s changed, but they want to verify for themselves what’s actually changed. With functionality like this, the customer’s own Financial systems managers can confidently say to their users and prove to auditors exactly what has changed.

If any nerds out there are wondering how this was built, in this case I used the Longest Common Subsequence (LCS) algorithm to find the differences, combined with standard HTML tagging for the highlighting, and a small JavaScript function to synchronize the scrollbars.

About the author

Chris Loran works in the EPM field for over 13 years. From working with Hyperion at Hyperion Solutions, Oracle, Partake and EY to working with OneStream and Oracle HFM at Agium EPM.

Within his Lead Consultant function at Agium EPM he worked on the OneStream implementation at Guardian Industries. They have one of the most extensively used OneStream platforms in which they consolidate, budget and perform advanced driver-based planning.

Disclaimer: These blogs are meant purely for educational use and discussion. The purpose is to raise awareness of the strengths of the Onestream platform and how it could be made even better, as well as approaches to application design and building, and stimulate discussion. Experiences mentioned in these blogs are those specifically of the author and may not be the experience of other CPM consultants. The views expressed are those of the author, and does not necessarily represent the views of any CPM or EPM software vendor, nor their consulting partners.
Back to blog