The execution of a calculated feature includes the generation of observation results for the calculated feature, copying of feature data from a source feature to the calculated feature (optionally), and creating new features (in case of auto versioning calculated features). Figure 1 shows an (abstracted) activity diagram of the execution of a calculated feature.
The execution of calculated features is triggered at specific points in time or by manual advice of a user and is not done on the fly i.e. when the data of the calculated feature is accessed. Therefore the data of a calculated feature will not necessarily represent the latest changes done to the source features. The execution of calculated features is always performed as a job. In order to provide reliable calculation results the execution of calculated features uses feature locking on the source features.
A calculation algorithm of a calculated feature will only use those observations of its source features that were created before the execution was started.
Calculated features marked as deleted are never executed.
The execution of a calculated feature is always performed a s a job, i.e. the execution runs asynchronously as a background process on the Application Server.
The user can either trigger the calculation of a specific calculated feature from the client or create a stored job definition that will recalculate a number of calculated features. A third way of triggering the execution of a calculated feature is using a trigger recalculation action in an observation monitoring definition.
Figure 1: Activity diagram showing the workflow (simplified) of the execution of a calculated feature