参考答案:
【问题1】(12分)
(1)性能
(2)可修改性
(3)(e)
(4)(j)
(5)(l)
(6)(k)
【问题2】(13分)
系统架构风险是指架构设计中潜在的、存在问题的架构决策所带来的隐患。
敏感点是指为了实现某种特定的质量属性,一个或多个构件所具有的特性。
权衡点是指影响多个质量属性的特性,是多个质量属性的敏感点。
风险点:(i); 敏感点:(g); 权衡点:(f)。
详细解析:
本题主要考查考生对软件架构评估、软件质量属性以及架构评估中相关概念的理解与掌握。考生应该在熟记基础概念的基础上结合实际问题灵活掌握并应用这些概念。在解答本题时,首先需要对题干中的所有软件需求描述进行分析与梳理,区分并找出其中的需求分析、软件质量属性描述,或者可能的风险、权衡点或敏感点描述。具体列举如下:
(a)在正常负载情况下,系统必须在0.5秒内响应用户的交易请求,对应性能属性。
(b)用户的信用卡支付必须保证99.999%的安全性,对应安全性属性。
(c)系统升级后用户名要求至少包含8个字符,对应软件业务需求。
(d)网络失效后,系统需要在2分钟内发现错误并启用备用系统,对应可用性属性。
(e)在高峰负载情况下,用户发起支付请求后系统必须在10秒内完成支付功能,对应性能属性。
(f)系统拟采用新的加密算法,这会提高系统安全性,但同时会降低系统的性能,系统权衡点。
(g)对交易请求处理时间的要求将影响系统数据传输协议和交易处理过程的设计,对应系统敏感点。
(h)需要在30 人月内为系统添加公司新购买的事务处理中间件,对应可修改性属性。
(i)现有架构设计中的支付部分与第三方支付平台紧耦合,当系统需要支持新的支付平台时,这种设计会导致支付部分代码的修改,影响系统的可修改性,对应系统风险。
(j)主站点断电后,需要在3秒内将访问请求重定向到备用站点,对应可用性属性。
(k)用户信息数据库授权必须保证99.999%可用,对应安全性属性。
(l)系统需要对Web界面风格进行修改,修改工作必须在4人月内完成,对应可修改性属性。
(m)系统需要为后端工程师提供远程调试接口,并支持远程调试,对应可测试性属性。
【问题1】
在架构评估过程中,质量属性效用树(utility tree)是对系统质量属性进行识别和优先级排序的重要工具。效用树主要关注性能、可修改性、可用性和安全性4个方面,考生首先必须填入对应的质量属性名称,并根据上述分析依次填入合适的标号。
【问题2】
系统架构风险是指架构设计中潜在的、存在问题的架构决策所带来的隐患。敏感点是指为了实现某种特定质量属性,一个或多个系统组件所具有的特性。权衡点是指影响多个质量属性的特性,并对多个质量属性来说都是敏感点的系统属性。根据上述分析可知题干描述中,(i)描述的是系统架构风险;(g)描述的是敏感点;(f)描述的是权衡点。