Customizing Change Management

Modifying the Risk Calculator and Survey

You can modify the risk calculator and survey so that it reflects your company's processes. This topic describes how to do this.

The Risk Calculator uses a summation field to add the values of the weighted selections. The summation value is then evaluated using a JavaScript that adds a risk level of either Low (0-20), Medium (21-40), or High (>40).

The Risk Level is configured to only display a result when the Risk Analysis Completed field is set to Yes. This field is automatically updated by a JavaScript to Yes if any of the four survey fields contain an answer. After being set to Yes, the weighted values are summed and the results displayed. If not, the Risk Level displays Questionnaire Not Completed.

You can modify the risk survey and calculator, such as the risk level thresholds, the questions, or the weightings of the answers. The modifications are performed in SBM Composer, and then deployed to your server.

The following are some changes that you could make to the survey:
  • Make the survey mandatory by marking all of the fields as Required.
  • Modify the weighted responses to questions by editing the field and setting the weighted values on the Options tab of the Property Editor for the field.
  • Change existing questions and answers by modifying the field names and descriptions in the Property Editor for the field.
  • Add new questions by adding Single Selection fields with weighted values. To add the new questions:
    • Modify the Total Risk Score Summation field to include the weighted value in the result.
    • Add the new field to the Risk tab on every form in the Change Management process application.
    • Add the field name to the JavaScript contained in the calcRisk_Transition HTML/JavaScript widget. This script checks whether the question was answered. The following JavaScript excerpt is an example of how to add a new field:
      AddChangeCallback("ESTIMATED_EFFORT", funcLinkEstimatedEffort); 
      AddChangeCallback("RISK_ANALYSIS_Q1", funcAnalysisCompleted); 
      AddChangeCallback("RISK_ANALYSIS_Q2", funcAnalysisCompleted); 
      AddChangeCallback("RISK_ANALYSIS_Q3", funcAnalysisCompleted); 
      AddChangeCallback("RISK_ANALYSIS_Q4", funcAnalysisCompleted); 
      AddChangeCallback("RISK_ANALYSIS_Q5", funcAnalysisCompleted); 
      AddChangeCallback("NEW_FIELD_NAME", funcAnalysisCompleted); 
  • Change the range for how risk is calculated by editing the JavaScript on the state forms. The JavaScript is contained in the calcRisk_State HTML/JavaScript widget. For example, you would make the following change to add an additional risk category for Medium-High for risk scores between 31 and 40:
    <script type="text/javascript">
    AddLoadCallback(calcRisk);
    function calcRisk() \{
    var answered = GetFieldValue("RISK_ANALYSIS_COMPLETED");
    if(answered == "Yes") \{
    var score = parseInt(GetFieldValue("TOTAL_RISK_SCORE",  0));	
    if(score > 40) \{ SetFieldValue("RiskScoreLabel", "(High Risk)"); }
    else if( score > 30) \{SetFieldValue("RiskScoreLabel", "(Medium-High Risk)"); }
    else if( score > 20) \{SetFieldValue("RiskScoreLabel", "(Medium Risk)"); }
    else \{ SetFieldValue("RiskScoreLabel", "(Low Risk)"); }
    \}
    else \{
    SetFieldValue("RiskScoreLabel", "(Questionnaire Not Completed)"); 
    \}
    \}
    </script>
  • Change how the estimated effort is weighted by modifying the JavaScript on the transition forms. The JavaScript is contained in the calcRisk_Transition HTML/JavaScript widget. For example, to set everything to less than one-half of a day (12 hours) as low impact and everything else as high impact:
    <script type="text/javascript">
    var funcLinkEstimatedEffort = function()\{
    	var effort = GetFieldValue("ESTIMATED_EFFORT", "");
    	var implTimeFld = GetFieldByName("RISK_ANALYSIS_Q5");
    
    	if(effort != "") \{
            //Convert Estimated Effort field from milliseconds to hours
    		var hours = effort / 3600000;
    
    		if(hours > 12) \{ implTimeFld.selectedIndex = 3; \}
    		else \{ implTimeFld.selectedIndex = 1; \}
    		
    		DisableField("ESTIMATED_EFFORT");
    	\}	
    \}

For more information on working with fields, refer to the SBM Composer Guide.

Impact analysis uses an Impact Level field value to determine how a change item is routed. This value is based on the threshold into which an impact analysis score falls. The thresholds are defined in application variables in SBM Composer, but can be overridden using SBM Application Administrator. The default thresholds follow:

To change the default thresholds:

  1. Select the Changes project in Application Administrator.
  2. Select the Variables tab.
  3. Select the High Impact Level Threshold application variable and then click Details.
  4. Select the Allow Overrides check box.
  5. Type the new number in the box.
  6. Save your changes.
  7. Repeat these steps for the Medium Impact Level Threshold application variable.

For details on this feature, refer to 3. RFC Impact Analysis.

Enhancing the Implementation Process

Change Management is designed with the assumption that implementation steps vary between companies, and that the steps will be tailored according to the company's processes.

For example, you can:
  • Add additional states to track the implementation steps.
  • Link the Change Management process to your existing Release Management process using Web services.
  • Use subtasks to track the implementation tasks, automatically transitioning RFCs or proposals when the subtasks are completed.