1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
| class RPAFeasibilityEvaluator: def __init__(self): self.evaluation_weights = { 'business': 0.30, 'technical': 0.25, 'organizational': 0.20, 'economic': 0.15, 'risk': 0.10 } def comprehensive_evaluation(self, scenario_data): """综合评估场景适合性""" business_score = self.evaluate_business_dimension(scenario_data['business']) technical_score = self.evaluate_technical_dimension(scenario_data['technical']) organizational_score = self.evaluate_organizational_dimension(scenario_data['organizational']) economic_score = self.evaluate_economic_dimension(scenario_data['economic']) risk_score = self.evaluate_risk_dimension(scenario_data['risk']) weighted_score = ( business_score * self.evaluation_weights['business'] + technical_score * self.evaluation_weights['technical'] + organizational_score * self.evaluation_weights['organizational'] + economic_score * self.evaluation_weights['economic'] + risk_score * self.evaluation_weights['risk'] ) decision = self.generate_decision(weighted_score) return { 'overall_score': weighted_score, 'decision': decision['recommendation'], 'priority': decision['priority'], 'next_steps': decision['next_steps'], 'dimension_breakdown': { 'business': business_score, 'technical': technical_score, 'organizational': organizational_score, 'economic': economic_score, 'risk': risk_score } } def generate_decision(self, score): """生成决策建议""" if score >= 4.5: return { 'recommendation': '立即实施', 'priority': 'high', 'next_steps': ['启动项目', '组建团队', '制定计划'] } elif score >= 3.5: return { 'recommendation': '试点实施', 'priority': 'medium', 'next_steps': ['原型验证', '小规模试点', '评估效果'] } elif score >= 2.5: return { 'recommendation': '条件成熟后实施', 'priority': 'low', 'next_steps': ['改善条件', '培训人员', '优化流程'] } else: return { 'recommendation': '暂不实施', 'priority': 'none', 'next_steps': ['寻找替代方案', '重新评估', '关注技术发展'] }
|