What is Business Mapping for Cost Allocation?
The Business Mapping feature is used to create a special type of 'synthetic' dimension that once configured can then be utilised throughout Cloudability. Custom dimensions created using Business Mapping statements are called Business Dimensions. The reason for this name is that these are dimensions that you use to map to concepts within your business, instead of being direct cloud or billing concepts. At the heart of Business Dimensions is providing a means to bucket your cloud cost and usage data beyond what you can with native cloud mechanisms. You can think of Business Dimensions as having similar properties to vendor tags but with far more flexibility - indeed there's a good chance that some of your mappings will partially rely on vendor tags. Business Mapping as a feature has a remarkable amount of inbuilt dexterity and therefore our customers will find a myriad of uses for them. Begin by thinking about concepts that exist within your business that you need to overlay on top of your cloud spend, workout a strategy to map them and then implement within Cloudability.
Here are some example use cases:
- Compliance - For example identify each cost item as compliant or not based on attributes like tags, location or type
- Classify work status as "Project" or "Business As Usual" to deliver visibility to project managers
- Separating cloud cost that are COGS versus operating expenses for our accounting needs
- Providing a dimension that delivers a complete and accurate chargeback for the entire business
- Improving allocation for show back by having rules that allocate costs that aren't or can't be tagged.
The rules engine that drives this feature is equipped with sophisticated logic capabilities and individual rules can be based on pretty much all of the important attributes that vendors supply with the billing and usage data. These attributes include obvious vendor supplied things like tags, account names, region, service names but we also allow you to include attributes like usage family and lease type which are enhanced dimensions provided by Cloudability.
How Does A Business Dimension Work?
Evaluated at Ingestion
When Cloudability ingests the detailed billing data from cloud vendors we evaluate each and every cost line item against the Business Mapping statements for your configured Business Dimensions. For those of you with a programming background you can think of the list of statements as similar to a case statement, as soon as there is a match then the name of the statement itself is evaluated and the resultant value used to populate the Business Dimension for that item. This dimension name can simply be a string that you provide or can also be dynamically set to an attribute of the cost item itself (such as a tag value). Note that when a fresh billing data set is delivered by your cloud vendor (a very regular event) we will automatically pick up any changes/additions you make to your Business Mapping statements. To have historic months reflect the updated rules you can reach out to support or your TAM for this to be actioned.
The name - think of a good one!
Every Business Dimension you setup requires a name. Think deeply about what the business concept is that you are trying to share and a name that people will quickly make sense of. You are giving a name to the dimension as it will appear in reports and throughout the rest of Cloudability.
As well as a name you need to set a default value. This is the value the Business Dimension will inherit if none of the statements you declare match. Some obvious options would be "Unallocated", "Unknown", "Non Compliant" or "Not Set". As you build out your Business Dimensions you'll likely find some patterns emerge that help you with knowing a good default value.
It's about matching with Statements
Every statement has two components 1) what is the name for the statement, i.e the value for the Business Dimension if the cost items happens to match and 2) and an expression for what to match against with the cost line item. This expression can involve complex boolean logic, has a very comprehensive list of operators and can be applied against all the important attributes of the cost items.
Administering Business Dimensions
Listing and reviewing Business Dimensions
From the Business Mappings home page you can see a list of all the Business Dimension you have setup and there are a variety of actions you can take. You can setup a maximum of 10 Business Dimensions.
Editing or creating a Business Dimension
Most of your interactions on this page will be with managing Business Metric statements for your Business Dimensions. That is adding, editing or deleting statements that form the backbone of any mapping. We will cover the key elements of any statement in the following sections.
Options for the Name
As mentioned earlier the name you supply when crafting any statement will become the value for the Business Dimension if the match component returns true. You have two options for the name itself. You could just enter a static string as shown above. You can also create a "Dynamic Dimension Name" by selecting the pencil icon next to the name. Then you'll receive a list of dimensions to chose from which includes tags and many other familiar items. The point of this capability is that on a match the Business Dimension can take the value of any attribute of the cost item itself. A good example of how to use this dynamic aspect would be something like "If Tag A exists, then the Business Dimension should assume Tag A's value". The next statement would then likely involve what to do given Tag A doesn't exist.
Using the Business Mapping UI you'll have a vast array of operators to test the logic of your statement. Below shows some of the examples which include operators like "greater than" which can be very handy for testing against things like dates. Choose an operator which makes your statement as straightforward as possible. Using our API you'll have some additional options including regular expressions.
Within an individual statement you can group expressions together using 'OR' operators and combine with 'AND' operators to get the exact logical outcome to match your business rules. Below is a very basic example: