某公司计划开发一个在线教育平台,在架构设计阶段,识别出以下三个核心质量属性场景。请针对每个场景选择正确的质量属性和相应的架构策略。 场景一:网站在并发用户数量达到10万时,用户请求的平均响应时间应小于3秒。此场景主要与哪个质量属性相关?通常采取什么架构策略来实现? 场景二:主站宕机后,系统需能在10秒内自动切换至备用站点并恢复正常运行。此场景主要与哪个质量属性相关?应如何设计架构策略? 场景三:系统上线后,预计会有少量的外围业务功能和界面的调整与修改,这些工作预计不超过10人·月。此场景主要关注哪个质量属性?
题目中提到的三个场景分别对应软件质量属性中的不同方面。 “网站在并发用户数量10万的负载情况下,用户请求的平均响应时间应小于3秒”这一场景主要与性能(Performance)质量属性相关。为了确保在高并发情况下网站的响应速度,通常可采取提高计算效率、减少计算开销、引入并发控制、控制资源使用、资源调度、负载均衡等架构策略来实现该属性。 “主站宕机后,系统能够在10秒内自动切换至备用站点并恢复正常运行”这一场景主要与可用性(Availability)质量属性相关。为了保障系统的持续可用性,通常可采取Ping/Echo、心跳、异常检测、主动冗余、被动冗余、检查点等架构策略来实现该属性。 “系统完成上线后,少量的外围业务功能和界面的调整与修改不超过10人·月”这一场景主要与可修改性(Modifiability)质量属性相关。为了确保系统上线后的灵活性和可维护性,需要关注软件的可修改性。 因此,正确答案为: 与性能相关的架构策略:B 与可用性相关的架构策略:A 与可修改性相关的质量属性:C