Document toolboxDocument toolbox

Business Logic (Concepts Guide)

What is “Business Logic”?

In the realm of IT we separate between the more technical parts of an application and the Business Logic, which

  • defines business rules (e.g. what brokerage fee does apply to a specific trade)

  • defines the algorithms for data analysis (e.g. Brinson-Fachler performance attribution)

  • defines mappings of external data to consolidated, harmonised data (e.g. map bloomberg security types to core banking types)

What is the role of “Business Logic” in the reporting layer?

There is a architectural principle that we should not have any business logic in the reporting layer. This has to be differentiated:

  • The reporting layer should not have any relevant business logic as described above

  • To generate human readable charts or tables, every reporting layer must have “Reporting Business Logic”

“Reporting Business Logic” functionalities in Cinnamon

Functionality

Description

 

Functionality

Description

 

Segmentations

A Segmentation in Cinnamon is used to generate the optimal structure for a visualisation (e.g. table or chart). A Segmentation supports

  • Sorting/ordering of segments

  • Selection of (mandatory) segments

  • Building of the "Others" segment

  • Grouping of segments into a more coarse segment definition

  • Filtering of segments

Cinnamon distinguishes between two types of segmentations

  • Base Segmentation: delivered by a data source

  • Derived Segmentation: defined within Cinnamon by using above features

 

Aggregation of Figures

When a Segmentation uses grouping to reduce the number of segments and allow for a more readable visualisation, the input data (e.g. positions of a valuation) have to be aggregated. In this process, all Figures can be provided on the grouped level by aggregation as the sum or the weighted average of the underlying positions.

 

Translatable Texts

For a true multi-lingual reporting, Cinnamon supports the concept of a translatable text. A translatable text can be used to

  • translate a label by use of a dictionary

  • translate a parameterised label inserting data or other translated items into the text at specific places

 

Value Types

  • Value types provide standard formatting rules for figures like “Absolute Performance” (using % and two decimals), “Amount” (using no decimals) etc.

  • Value types support translations and regional formatting rules for numbers, dates etc.