As winter is now behind us and the annual process of “spring cleaning” begins, I find that it is a good reminder to not only clean and organize my house, but also another area that most likely needs cleansing and organization: my Anaplan models. The beauty of Anaplan’s platform is that it gives the model builder an extremely powerful tool that can be customized exactly the way the model builder would like. Oftentimes, I am either so anxious to produce the result I want, or under such a tight deadline, I forgo best practices and “clean” model building for quick delivery instead. Similar to how I may not dust in every corner or clean every nook during the winter months, I find myself with “dirty” Anaplan models that could use a nice deep cleaning and organizing.
Thankfully, Anaplan has a guide on how a “clean” model should look and function. These practices enhance the sustainability and auditability of the model, while simultaneously increasing the model’s performance. It’s called the D.I.S.C.O. methodology. This handy acronym stands for Data, Input, System, Calculation, and Output. Each word represents a certain function (or responsibility) that each module with an Anaplan model should perform. The D.I.S.C.O. methodology provides an overview of how data should flow between modules and how your model map should look.
At a high level the individual types of modules perform the following functions:
While the D.I.S.C.O. methodology is typically referenced and considered when starting a model build, it’s no less applicable or important in the later stages of a model’s lifecycle. Even the best made models will collect “dust and dirt” over time, in the form of redundant calculations and convoluted data flows.
As I clean my models this spring, I‘d like to share a few quick tips I will be using in the process:
If I haven’t already, I’ll develop a system to tag each module to a specific purpose within D.I.S.C.O. It’s user choice here—you could use Anaplan’s notes feature, data tags, module names, or functional areas. I’ve found that organizing modules into D.I.S.C.O. functional areas helps me keep them organized. I also prefix my modules with DAT/INP/SYS/CAL/OUT and number them to make finding and referencing them much easier.
Once you’ve organized your modules, take a look at your model map. If you can’t make sense of it in ~15 seconds, your model is most likely not adhering to the D.I.S.C.O. methodology, and likely has multiple modules performing the same calculations, deprecated modules, or the same data living in multiple places. A few questions I ask myself are:
Next I’ll reduce module size and unused cells. The easiest way to begin is to address any Output modules that are referenced by other modules. Once I clean those references up, and move the calculations to a Calculation module, any Output modules that are not used on a dashboard and Calculation modules that do not have any modules using them as references are quick wins to delete and reduce my model’s size.
Redundant formulas are also quick model size and performance wins to consolidate to a single calculation module or move to a system module. An example would be to search for PERIOD() functions. If you are calculating the time period on multiple modules, that can be done on a single line item in a time system module, and then referenced as needed by each module that needs the period. Not only does this remove the redundant line items and reduce model size, but it also increases the model’s performance, as it now only needs to calculate the time period once.
Since Calculation modules are not intended to be displayed to end users, model performance can be increased by removing line item summaries on Calculation modules that are not needed downstream in Output modules.
With Spring in full bloom, it is a great reminder to not only clean up your house/apartment/flat etc., but also your Anaplan models. Of course, these tips should not be used to “clean” your models once a year, but rather a guide for ongoing model building, and constantly reviewed on a regular basis. Hopefully you found something useful in this article.
Happy Model Building!
Joey Morisette is a Business Operations Manager on Anaplan’s internal center of excellence team known as “Anaplan on Anaplan”. Previously, Joey worked at an Anaplan customer where he led the development and implementation of the Anaplan platform.