Service Manager → Concepts and Processes → Process Apps Overview → Change Management → Change Management Overview → 4. RFC Assessment → Risk Analysis Calculator
The Risk Analysis calculator determines how the change affects business critical services. It uses the change category, the estimated effort, and a group of questions to determine the risk level of the change.
The Risk Analysis calculator appears on the Risk tab of an RFC. The risk level is determined to be either Low, Medium, or High based on the above criteria. The default ranges are: Low is less than or equal to 20; Medium is 21 to 40; High is greater than 40.
On the Risk tab, the risk level is only displayed when the Risk Analysis Completed field is set to Yes. This ensures that users have answered the risk survey before calculating the risk level. If the risk survey has not been completed and Risk Analysis Completed remains set to No, the risk level displays Questionnaire Not Completed.
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 which 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.
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);
<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>
<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.
Copyright © 2012–2014 Serena Software, Inc. All rights reserved.