FAST Contract Admin System

FAST Contract Admin System

The FAST contract admin system, “Flexible Architecture, Simplified Technology” is a system which enables configuration to be a driving force of the system. Let’s dive into the various configuration elements of the FAST system. The building block of FAST configuration is something called orchestrations.

Orchestrations building blocks that call various configurations within FAST, including other orchestrations. To create and view an orchestration, you navigate to the “Composer” under main menu.

Once there, you will find various categories of orchestrations, but after you navigate through, you will find there are only four different types of orchestrations:

  1. MethodOrchstn (Method Orchestration)
    1. These are simply C# functions. Not a lot of visibility for the FAST client there, since these are in code. It is nice to see what functions are used in the FAST system, I guess.
  2. UIOrchstn (UI Orchestration)
    1. In principle these seem great, although it is unclear how to use them. They seem to be like method orchestrations, since there is no way for a FAST client to see what they are actually doing behind the scenes.
  3. Data Aggregation
    1. This brings FAST data together. These pull data from database tables and convert to xml.
    1. Sometimes referred to as “Data Agg”.
  4. XSLOrchstn (XSL Orchestration)
    1. This seems promising, but not really used in practice. XSLTs can be cumbersome to work with in practice and I personally don’t use them.
  5. WSOrchstn (Web Service Orchestration)
    1. This may call a web service. Can’t you just have a method orchestration for that?
  6. Workflow Orchestration
    1. It seems to me that these are another type of method orchestrations (i.e., based on FAST C# code)
  7. MQOrchestration
    1. For putting messages in Queues
  8. Retrieve API
    1. Unsure of what this does. Retrieves an API definition? Invokes a web request?
  9. Product Orchestration
    1. This is the bread and butter of FAST, and the most useful orchestration by far
  10. Page Workflow Orchestration
    1. This one is my favorite:

It has TumorDetailsDec, TumorOtherDec, PolypDec, and CystDec. This I guess is in FAST base. No, we won’t be needing those. I think this is an easter egg FAST put in there to make sure the client knows that this stuff, aside from the product orchestrations, is to be disregarded.

So, in summary it is best to ignore all these as they are clearly there just to try to sell FAST, with the exception being the product orchestration and calcs.

Product orchestrations and calcs are so useful, sometimes calcs are used to perform validations, which is not what FAST had explicitly envisioned as there are validation orchestrations in the form of method orchestrations and XSLT orchestrations that do that in “out of the box” FAST.

So why is FAST adopted by clients? One reason is these calcs, which can only be called in a product orchestration.

FAST Calculations

Calculations are the simplest (or most complex, depending on the calculation). These are Excel spreadsheets that consist of inputs, outputs, and the calculations in between. Here is an example:

Input:

Output:

Calc:

And there are also auxiliary tables that this calc may reference such as the qualified states lookup, single life table, and joint life IRS table.

Granted, performing an RMD calculation solely in code would not be the best, as the life expectancy of a person may change based on IRS rules. Having this logic in a calc to modify is beneficial.

FAST has been designed to take care of all these different use cases for various products through their configuration. Let’s dive deeper into configuration of a “withdrawal” request of a contract. A “withdrawal” is defined as a transaction in which a customer requests money off of their contract. When a withdrawal occurs, typically in a nightly cycle in the case of annuities, the contract, whether it is a variable contract, fixed contract, fixed indexed contract, many things have to happen.

FAST comes with a handy debugger, so you can see the configuration behind the scenes and how the processing occurred. There is no need to look at code, as you can we a visualization and step through what has occurred:

These calculations are from FASTs base codebase. As you can see from the above screenshots, there is a lot going on there. It is not immediately clear what gets executed, what is important for this contract. This is where FASTs actuarial expertise comes into play, as the lines with the “A” are essentially calcs, or simply excel spreadsheets. I say essentially because these are really attributes, which behind the scenes in another FAST UI can be switch to attached to different calcs. One more level of configuration/indirection! With time and experience, these calculations become more and more familiar and easier to modify and understand, without the need for a developer, in the best-case scenario.