Function Point calibration is done at the end of the process and requires the transaction configuration to be completed. Moreover, all the transactions that have been identified in the application must have been validated by the SME. If the transaction review pinpointed issues, then you should go back to the transaction configuration step before starting the Function Point calibration.
Function Point calibration is done by grouping, splitting, and excluding transactional functions and Data Functions in order to adjust the results. A calibration kit is proposed in this cookbook and provides dedicated rules that will help the AI administrator to calibrate Function Points faster.
The following image presents the process related to the Function Point calibration:
Calibrate Data Functions
Adjust the type of Data Functions
The type of Data Functions (EIF and ILF) is determined at computation and is based on the type of links pointing to Data Entities. Types that are taken in account are the following:
- Use Select, Use Insert, Use Delete, and Use Update
- Access Read and Access Write
In case it was not possible to fully determine the type of link (ex: only Use or Access), Data Functions are typed as EIF by default. After investigation, the AI administrator can change the type to ILF if necessary.
A TCC configuration kit provides specific naming conventions to automatically set up the proper types for Data Functions. However, it is often necessary to review the accesses to the data layer to refine the type of links at analysis time.
Adjust the FP value of Data Functions
This action should not be frequent and it is important to review and understand the root cause of improper complexity of Data Functions before adjusting the values.
In case of flat files or elements created by a Universal Analyzer configuration, you will have the default value of the type (column 3 of the figure 3). In this case, and if you have access to additional information, you can overwrite the calculated value of the added components in order to secure the count.
Calibrate Transactional Functions
Adjust the type of Transactional Functions
By default, a Transactional Function is typed as EO_EQ. If it contains at least one Update, Delete, or Insert access to a Data Entity, then this is considered as managing input data flow and typed as EI. Otherwise, if the Transactional Function only contains Select accesses or undefined access links, then it is typed as EO_EQ. In that case, after investigation, the AI administrator can change the type of Transactional Functions.
Adjust the FP value of Transactional Functions
This action should not be frequent and it is important to review and understand the root cause of improper complexity of Transactional Functions before adjusting the values.
Automation: Insert custom treatments during the computation
The computation process allows you to insert custom treatments in dedicated procedures executed at specific steps. This section presents which procedures are available and how some of them can be used.
Enabling custom treatments
The custom procedures will be executed only if the right option is activated in the Analysis Service. By default the custom mode is not activated and it is necessary to execute the following SQL code to enable custom treatments during the computation.
Activating custom mode for CAST Storage Service (CSS)
Execute the following SQL code in PostgreSQL DBMS to activate the custom mode:
select SET_TCC_OPTION_FPCUSTOM (1,1) --to set the option with trace
select SET_TCC_OPTION_FPCUSTOM (1,0) --to set the option with no trace
select SET_TCC_OPTION_FPCUSTOM (0,0) --to disable the custom execution
Activating custom mode for SQL Server
Execute the following SQL code in SQL Server DBMS to activate the custom mode:
exec SET_TCC_OPTION_FPCUSTOM 1,1 --to set the option with trace
exec SET_TCC_OPTION_FPCUSTOM 1,0 --to set the option with no trace
exec SET_TCC_OPTION_FPCUSTOM 0,0 --to disable the custom execution
Activating custom mode for Oracle
Execute the following SQL code in Oracle DBMS to activate the custom mode:
--to set the option with trace you should execute the
RET :=SET_TCC_OPTION_FPCUSTOM ( 1,1);
--to set the option with no trace
RET :=SET_TCC_OPTION_FPCUSTOM ( 1,0);
--to disable the custom execution
RET :=SET_TCC_OPTION_FPCUSTOM ( 0,0);
The table below shows the custom procedures that are available for the transaction calibration:
When it is executed
Customizing calibration Final Filter phase
The table below shows the custom procedures that are available for the transaction calibration Final Filter phase:
When it is executed
Customizing Impact Factor in Enhancement Function Point calculation
The table below shows the custom procedures that are available for customizing the Impact Factor used to adjust the Transactional Functions and Data Functions in Enhancement Function Point computation:
|Item type||Procedure name||When is it executed?|
|Data Function||EFP_USR_IF_DEL_DF_RULE||During snapshot computation|
|Data Function||EFP_USR_IF_MOD_DF_RULE||During snapshot computation|
|Data Function||EFP_USR_IF_ADD_DF_RULE||During snapshot computation|
|Transactional Function||EFP_USR_IF_DEL_TF_RULE||During snapshot computation|
|Transactional Function||EFP_USR_IF_MOD_TF_RULE||During snapshot computation|
|Transactional Function||EFP_USR_IF_ADD_TF_RULE||During snapshot computation|