On this page:
- Vanilla: Analysis setup and configuration
- Import the Assessment Model
- Vanilla: Generate a snapshot and check results
- Project: Analysis setup and configuration
- Configure CAST Management Studio preferences
- Initial actions required when using CAST AIP 8.2.x
- Configure the Assessment Model
- Configure the Content Enrichment - Siebel Vanilla Import
- Manage the Application, accept the delivery and set as current version
- Configure Modules
- Configure a platform variable
- Project: Generate a snapshot and check results
Target audience:
CAST Administrators
The analysis process for your Siebel applications is designed to work with the two analysis service schemas that were created earlier (see Siebel 5.1 - Installation) - note that the names of the schemas are just examples and they can be called anything:
- SIEBEL5_LOCAL: Analysis Service that will store the analysis results for the Project repository
- SIEBEL5_V_LOCAL: Analysis Service that will store the analysis results for the Vanilla repository
Please note that the following document refers to SQL scripts delivered in text files with the extension. These files are located as shown below and are delivered for both Oracle and CAST Storage Service implementations:
- %PROGRAMDATA%\CAST\CAST\Extensions\com.castsoftware.siebel.<version>\CMS_ConfigScripts\CastStorageService
%PROGRAMDATA%\CAST\CAST\Extensions\com.castsoftware.siebel.<version>\CMS_ConfigScripts\Oracle
Vanilla: Analysis setup and configuration
- Run the CAST Management Studio
- Validate and choose the connection profile for the SIEBEL5_V_MNGT Management Service schema (i.e. for the Vanilla repository)
- Click Next to start the setup wizard
- Enter the CAST License Key and click Next:
- Configure the folders (note that the required folders have changed in CAST AIP ≥ 8.3.x):
CAST AIP ≥ 8.3.x | Click to enlarge |
|
---|---|---|
CAST AIP 8.2.x | Click to enlarge |
|
- Click Finish to launch the CAST Management Studio.
Configure CAST Management Studio preferences
Once the CAST Management Studio has launched, open Windows/Preferences:
CAST AIP ≥ 8.3.x | Select Cast General: Click to enlarge |
|
---|---|---|
CAST AIP 8.2.x | Select Cast General: Click to enlarge |
|
Import the Assessment Model
- Open the Dashboard Service editor for the Dashboard Service (SIEBEL5_V_CENTRAL) that is associated to the Management Service you are currently connected to.
- Click the Import Assessment Model option - the Assessment Model will then be displayed in the CAST Management Studio in the Assessment Models view.
Configure the Assessment Model
- Open the imported Assessment Model and check that the parameter settings for the Siebel rules are adapted to your project.
- To do so, go to the Contextual Parameters tab and search for names that start with "Siebel:"
Click to enlarge
- To check or modify a parameter, edit the parameter - this will open the parameter in an editor window. For example, for the naming conventions, edit the parameters "Siebel: Prefix XXX":
Click to enlarge
- Check the following tables and modify each parameter to the value defined in the Project value column.
Multiple values, char: as they are related to naming convention, they must be adapted to the project:
MetricID | Rule name | Parameter name | Default value | Project value |
---|---|---|---|---|
1520380 | Siebel: Applet's name should contain the type | Siebel: Suffix Applet - Association List | Assoc Applet | |
Siebel: Suffix Applet – Detail | Detail Applet or Popup Applet | |||
Siebel: Suffix Applet – MVG | Mvg Applet | MVG Applet | ||
Siebel: Suffix Applet - Pick List | PickList Applet | Pick Applet | ||
Siebel: Suffix Applet - Playbar | Playbar Applet | |||
Siebel: Suffix Applet - Standard | Standard Applet | |||
Siebel: Suffix Applet - Task | Task Applet | Form Applet | ||
1521700 | Siebel: Table's name should have a designated prefix like XX_LABEL | Siebel: Prefix Table | CX_ | |
1521702 | Siebel: Business Component's name should begin with Company prefix | Siebel: Prefix Business Component | AM_ | ACME_ |
1521704 | Siebel: Applet's name should begin with Company prefix | Siebel: Prefix Applet | AM_ | ACME_ |
1521706 | Siebel: View's name should begin with Company prefix | Siebel: Prefix View | AM_ | ACME_ |
1521708 | Siebel: Screen's name should begin with Company prefix | Siebel: Prefix Screen | AM_ | ACME_ |
1521710 | Siebel: Business Object's name should begin with Company prefix | Siebel: Prefix Business Object | AM_ | ACME_ |
1521712 | Siebel: Business Service's name should begin with Company prefix | Siebel: Prefix Business Service | AM_ | ACME_ |
Single value, numerical: As a first approach, you can stick to the default values:
MetricID | Rule name | Parameter name | Default value | Project Value |
---|---|---|---|---|
1520180 | Siebel eScript: Avoid Functions with High Cyclomatic Complexity | Siebel: Max CC | 15 | |
1520442 | Siebel eScript: Avoid Functions with a low comment/code ratio | Siebel: Min comment ratio | 5 | |
1520494 | Siebel eScript: Avoid complex PreGetFieldValue Functions | Siebel: Max LoC for PreGetFieldValue | 50 | |
1520540 | Siebel: Avoid too many MVG on list applet | Siebel: Max MVG Applet | 5 | |
1520726 | Siebel eScript: Avoid putting all code in the Applet_PreInvokeMethod event | Siebel: Max LoC for Service_PreInvokeMethod | 20 | |
1520728 | Siebel eScript: Avoid putting all code in the Service_PreInvokeMethod event | Siebel: Max LoC for Service_PreInvokeMethod | 20 | |
1520730 | Siebel eScript: Prefer SWITCH over nested IF-THEN-ELSE in Functions | Siebel: Max Nested IF | 5 | |
1520734 | Siebel eScript: Avoid using multiple conditions in IF constructions in Functions | Siebel: Max Condition in IF | 5 | |
1520860 | Siebel: Avoid Business Objects referencing too many Business Components | Siebel: Max Buscomp | 50 | |
1520862 | Siebel: Avoid Business Components referencing more than X tables | Siebel: Max Table | 40 | |
1520864 | SiebelReview: Too Many Applets on a View | Siebel: Max Applet | 10 | |
1520866 | SiebelReview: Excessive Number of List Columns in a List Applet | Siebel: Max number of columns | 50 | |
1520868 | Siebel eScript: Avoid Functions with more than X variables | Siebel: Max Variables | 15 | |
1520880 | Siebel eScript: Avoid Functions with more than X Lines of Code | Siebel: Max LoC | 30 |
Manage the Application, accept the delivery and set as current version
- In the CAST Management Studio, Application view, click Manage an Application registered in AIC Portal….
- The wizard displays all available applications. Select the "Vanilla" application:
- Assuming the packages have already been delivered as explained in Siebel 5.1 - Application onboarding, the Application editor will show the delivered Version in the Delivery tab:
- Select the Version and then click the Manage the delivery… option to open the CAST DMT. Check the packaging is correct:
- The Content state of the package should be showing Packaging successful
- In the Package content tab, you should see one project named Vanilla for the Siebel Extractor Project type:
- Quit the CAST Delivery Manager Tool.
- Back in the CAST Management Studio, select the Version and click Accept delivery and use it as current version. You should use the default values in the wizard that is displayed.
Configure Modules
- In the Application editor, click the Modules tab.
- Ensure the option to generate a Full Content module is ticked (this should be the case already):
- You are now ready to generate a snapshot, see below.
Vanilla: Generate a snapshot and check results
Generate a snapshot
- Generate a snapshot for the Vanilla Application - ensure this includes an analysis:
Post snapshot checks
Check log files
You should ensure that no error nor warning messages are reported and that any unusual message recorded in the log file should be reported to CAST Support. When using the GUI, navigate to each analysis execution item and then click the log link:
Analysis warning messages: end of comment '*/' not found
During the analysis, you may see warnings in the analysis log referencing certain scripts when the script is not syntactically valid. Typically, this has been seen in scripts related to the Vanilla standard object "CSSSWEFrameWebCallScriptPlayer". The impact on results is very low since the analyzer will just ignore the content of these invalid scripts. Potential warning messages:
- end of comment '*/' not found
Check the results in the CAST dashboards
In particular, you should use the Benchmarking feature in the legacy CAST Engineering Dashboard - CED to help perform an inventory check:
- Verify the number of objects of major object types (Applet, Business Service, Business Component,...) match the expected numbers.
Please note that the Project application is the sum of ADDED modules and MODIFIED modules. This excludes the standard objects (unchanged from the Vanilla).
Project: Analysis setup and configuration
- Run the CAST Management Studio
- Validate and choose the connection profile for the SIEBEL5_MNGT Management Service schema (i.e. for the Project repository)
- Click Next to start the setup wizard
- Enter the CAST License Key and click Next:
- Configure the folders (note that the required folders have changed in CAST AIP ≥ 8.3.x). You should use the SAME FOLDERS as defined when you setup the analysis for Vanilla:
CAST AIP ≥ 8.3.x | Click to enlarge |
|
---|---|---|
CAST AIP 8.2.x | Click to enlarge |
|
- Click Finish to launch the CAST Management Studio.
Configure CAST Management Studio preferences
Once the CAST Management Studio has launched, open Windows/Preferences:
CAST AIP ≥ 8.3.x | Select Cast General: Click to enlarge |
|
---|---|---|
CAST AIP 8.2.x | Select Cast General: Click to enlarge |
|
Initial actions required when using CAST AIP 8.2.x
Import the Assessment Model
- Open the Dashboard Service editor for the Dashboard Service (SIEBEL5_CENTRAL) that is associated to the Management Service you are currently connected to.
- Click the Import Assessment Model option - the Assessment Model will then be displayed in the CAST Management Studio in the Assessment Models view.
Configure the Assessment Model
- Open the imported Assessment Model and check that the parameter settings for the Siebel rules are adapted to your project.
- To do so, go to the Contextual Parameters tab and search for names that start with "Siebel:"
Click to enlarge
- To check or modify a parameter, edit the parameter - this will open the parameter in an editor window. For example, for the naming conventions, edit the parameters "Siebel: Prefix XXX":
Click to enlarge
- Check the following tables and modify each parameter to the value defined in the Project value column.
Multiple values, char: as they are related to naming convention, they must be adapted to the project:
MetricID | Rule name | Parameter name | Default value | Project value |
---|---|---|---|---|
1520380 | Siebel: Applet's name should contain the type | Siebel: Suffix Applet - Association List | Assoc Applet | |
Siebel: Suffix Applet – Detail | Detail Applet or Popup Applet | |||
Siebel: Suffix Applet – MVG | Mvg Applet | MVG Applet | ||
Siebel: Suffix Applet - Pick List | PickList Applet | Pick Applet | ||
Siebel: Suffix Applet - Playbar | Playbar Applet | |||
Siebel: Suffix Applet - Standard | Standard Applet | |||
Siebel: Suffix Applet - Task | Task Applet | Form Applet | ||
1521700 | Siebel: Table's name should have a designated prefix like XX_LABEL | Siebel: Prefix Table | CX_ | |
1521702 | Siebel: Business Component's name should begin with Company prefix | Siebel: Prefix Business Component | AM_ | ACME_ |
1521704 | Siebel: Applet's name should begin with Company prefix | Siebel: Prefix Applet | AM_ | ACME_ |
1521706 | Siebel: View's name should begin with Company prefix | Siebel: Prefix View | AM_ | ACME_ |
1521708 | Siebel: Screen's name should begin with Company prefix | Siebel: Prefix Screen | AM_ | ACME_ |
1521710 | Siebel: Business Object's name should begin with Company prefix | Siebel: Prefix Business Object | AM_ | ACME_ |
1521712 | Siebel: Business Service's name should begin with Company prefix | Siebel: Prefix Business Service | AM_ | ACME_ |
Single value, numerical: As a first approach, you can stick to the default values:
MetricID | Rule name | Parameter name | Default value | Project Value |
---|---|---|---|---|
1520180 | Siebel eScript: Avoid Functions with High Cyclomatic Complexity | Siebel: Max CC | 15 | |
1520442 | Siebel eScript: Avoid Functions with a low comment/code ratio | Siebel: Min comment ratio | 5 | |
1520494 | Siebel eScript: Avoid complex PreGetFieldValue Functions | Siebel: Max LoC for PreGetFieldValue | 50 | |
1520540 | Siebel: Avoid too many MVG on list applet | Siebel: Max MVG Applet | 5 | |
1520726 | Siebel eScript: Avoid putting all code in the Applet_PreInvokeMethod event | Siebel: Max LoC for Service_PreInvokeMethod | 20 | |
1520728 | Siebel eScript: Avoid putting all code in the Service_PreInvokeMethod event | Siebel: Max LoC for Service_PreInvokeMethod | 20 | |
1520730 | Siebel eScript: Prefer SWITCH over nested IF-THEN-ELSE in Functions | Siebel: Max Nested IF | 5 | |
1520734 | Siebel eScript: Avoid using multiple conditions in IF constructions in Functions | Siebel: Max Condition in IF | 5 | |
1520860 | Siebel: Avoid Business Objects referencing too many Business Components | Siebel: Max Buscomp | 50 | |
1520862 | Siebel: Avoid Business Components referencing more than X tables | Siebel: Max Table | 40 | |
1520864 | SiebelReview: Too Many Applets on a View | Siebel: Max Applet | 10 | |
1520866 | SiebelReview: Excessive Number of List Columns in a List Applet | Siebel: Max number of columns | 50 | |
1520868 | Siebel eScript: Avoid Functions with more than X variables | Siebel: Max Variables | 15 | |
1520880 | Siebel eScript: Avoid Functions with more than X Lines of Code | Siebel: Max LoC | 30 |
Configure the Content Enrichment - Siebel Vanilla Import
- In the CAST Management Studio, Application editor, click the Content Enrichment tab.
- Create an SQL Tool in Tools after analysis to import data from the Vanilla's analysis service.
- In the Parameters tab:
- copy and paste into the SQL section, the SQL from the file "Project_ContentEnrichment_2_SQL_Siebel Vanilla Import.txt" provided in the extension as explained at the top of this page (use the text file that corresponds to your chosen CAST AIP environment - i.e. CSS).
- Now move to the Variables tab and add a variable:
- Name = VANILLA_SCHEMA
- Value = the name of the analysis service (in our example, SIEBEL5_v_local)
Manage the Application, accept the delivery and set as current version
- In the CAST Management Studio, Application view, click Manage an Application registered in AIC Portal….
- The wizard displays all available applications. Select the "Project" application:
- Assuming the packages have already been delivered as explained in Siebel 5.1 - Application onboarding, the Application editor will show the delivered Version in the Delivery tab:
- Select the Version and then click the Manage the delivery… option to open the CAST DMT. Check the packaging is correct:
- The Content state of the package should be showing Packaging successful
- In the Package content tab, you should see one project named Vanilla for the Siebel Extractor Project type:
- Quit the CAST Delivery Manager Tool.
- Back in the CAST Management Studio, select the Version and click Accept delivery and use it as current version. You should use the default values in the wizard that is displayed.
Configure Modules
- In the Application editor, click the Modules tab.
- Untick all options under Generate one module per:
- Now create User Defined Modules as follows (the text files are provided in the extension as explained at the top of this page - use the text file that corresponds to your chosen CAST AIP environment - CSS or Oracle):
Module configuration | Templates to use | What does this measure? |
---|---|---|
Two Modules for the entire Siebel repository named as follows:
|
| The measurement will take all objects, including objects not used by any application. In this context, rules for dead code will be triggered. |
Two Modules for EACH functional Siebel application that was included in the Project extraction in the CAST Delivery Manager Tool (i.e. you may need to create multiple pairs of Modules) named as follows:
|
Note that for <appname>_ADDED and <appname>_MODIFIED Modules, you must also ensure that the relevant Siebel Application name is specified in the SQL you paste in from the template text file by replacing the default sample 'Siebel Sales Enterprise' with your customized Application name, for example 'Siebel Power Communication': select * from §SIEBEL_MODULE_ADDED('$(ModuleName)','Siebel Power Communication') / | The measurement will take only those objects used inside the selected application In this context, rules for dead code are not triggered since all objects are called in the application. Applications you specify for modules must have already been selected in the extraction (if the application has not been selected, the computation will fail in the tools computed at the end of the application by the SDK - note that with AIP, the process is not failing at that level). Using this configuration, some custom objects may not be included. This is why CAST recommends also configuring the REPOSITORY_ADDED / REPOSITORY_MODIFIED modules as well. |
Siebel objects are shared inside a single Siebel repository and if you have multiple applications in this single repository some objects may be counted in multiple different modules. This situation will also occur if you configure both RESPOSITORY_* and <appname>_* modules.
- If you configure both types of modules, this will give you something similar to the list of User Defined Modules shown below:
Edit the modules
For all these manually created User Defined Modules, you must open and edit each one as follows:
- Delete the default Object Filter (called My Object Filter) from the Filters tab:
- Activate the option Build module content using an explicit list of objects in the Explicit content tab for EACH User Defined Module:
- Delete the default SQL query template in the Explicit content tab and copy in the appropriate SQL query provided in the template txt file for EACH User Defined Module (example below shows an <appname>_ADDED module):
Note also that for <appname>_ADDED and <appname>_MODIFIED Modules, you must also ensure that the relevant Siebel Application name is specified in the SQL you paste in from the template text file by replacing the default sample 'Siebel Sales Enterprise' with your customized Application name, for example 'Siebel Power Communication':
select * from §SIEBEL_MODULE_ADDED('$(ModuleName)','Siebel Power Communication') /
Edit the Project_ContentEnrichment_2_SQL_Siebel Vanilla Import_Variables.txt file
- Open the following file (this text file is provided in the extension as explained at the top of this page - use the text file that corresponds to your chosen CAST AIP environment - CSS or Oracle):
Project_ContentEnrichment_2_SQL_Siebel Vanilla Import_Variables.txt
- Edit the file and ensure you change the Value option to match the name of your Analysis Service schema for the Vanilla:
Variables: Name=VANILLA_SCHEMA Value=siebel5_v_local
Configure a platform variable
You now need to configure a new platform variable that defines the name of the CAST Analysis Service schema installed for the Vanilla. In our example this is "SIEBEL5_V_LOCAL":
- In the Technologies view, double click the Common entry to open the Common editor.
- In the Platform tab, add a new variable called SIEBEL_VANILLA_SCHEMA with a value equal to the name of the CAST Analysis Service schema installed for the Vanilla:
Click to enlarge
Note that a check is performed when the analysis/snapshot is executed and if the platform variable SIEBEL_VANILLA_SCHEMA is not defined then a warning will be displayed in the analysis log: SIEBEL-100 Variable SIEBEL_VANILLA_SCHEMA is not defined. Refer to the documentation. This will not block the execution of the analysis/snapshot, however, it is possible to cancel the execution if this message is seen.
Project: Generate a snapshot and check results
Generate a snapshot
- Generate a snapshot for the Project Application - ensure this includes an analysis:
Post snapshot checks
Check log files
You should ensure that no error nor warning messages are reported and that any unusual message recorded in the log file should be reported to CAST Support. When using the GUI, navigate to each analysis execution item and then click the log link:
Check the results in the CAST dashboards. In particular, you should use the Benchmarking feature in the legacy CAST Engineering Dashboard - CED to help perform an inventory check:
- Verify the number of objects of major object types (Applet, Business Service, Business Component,...) match the expected numbers.
Please note that the Project application is the sum of ADDED modules and MODIFIED modules. This excludes the standard objects (unchanged from the Vanilla).