架构评估的重要概念
系统架构风险:指架构设计中潜在的、存在问题的架构决策所带来的隐患。
敏感点:指为了实现某种特定的质量属性,一个或多个构件所具有的特性。
权衡点:指影响多个质量属性的特性,是多个质量属性的敏感点。
风险点:可能引起风险的因素,可能导致一些问题。
非风险点:如果某件事是可行的、可接受的,则为非风险点。
系统架构风险 | 如果业务逻辑的描述尚未达成共识,可能导致部分业务功能模块规则的矛盾,影响系统的可修改性。 |
敏感点 |
对查询请求处理时间的要求,将影响系统的数据传输协议和处理过程的设计。 |
权衡点 | 更改系统的加密级别将对安全性和性能产生影响。 |
软件系统质量属性
软件系统质量属性(Quality Attribute)是一个系统的可测量或者可测试的属性,用来描述系统满足利益相关者需求的程度。
可维护性: 当修改缺陷、增加功能、提高质量属性时, 识别修改点并实施修改的难易程度。
可修改性:能够快速的以较高的性价比对系统进行变更的能力。
可扩展性:软件因适应新需求或需求变化而增加新功能的能力,也称灵活性。
可伸缩性:当用户数和数量增加是,软件系统维持高服务质量的能力。
可靠性:持续无故障运行的能力。
可用性:正常工作的时间所占的比例。
鲁棒性:在非正常情况下仍能正常运行的能力。
面向架构评估的质量属性
1. 可用性 | |
定义 | 系统能够正常运行的时间比例、两次故障之间的时间长度、出现故障时系统能够恢复正常的速度。MTBF = MTTF + MTTR |
指标 | 平均无故障时间(MTTF)平均故障间隔时间(MTBF)平均故障修复时间(MTTR) |
架构策略 | Ping/Echo、心跳、异常检测、主动冗余、被动冗余、检查点、双机热备 |
质量属性场景 | 1) 系统宕机后,能在10秒内感知错误,并自动启动热备份系统。 3) 系统应7x24小时工作。 4) 主站宕机后,系统能够在10秒内自动切换至备用站点并恢复正常运行。 5) 系统采用双机热备,主备机必须实时监测对方状态,以便完成系统的实时切换。 6)系统出现严重故障不得不停止服务时,修复时间不超过20分钟。 |
2. 可修改性 | |
定义 | 能够快速的以较高的性价比对系统进行变更的能力。 可修改型考虑的内容:可维护、可扩展、结构重构组、可移植 |
指标 | 修改所影响的元素的数量,对其它功能/质量属性所造成影响的程度。 系统在改变功能、质量属性时,需要付出的成 |