学习方法
练习题 -> 关键词 -> 概念 -> 结构 -> 逻辑
练习题
2. 请详细阅读有关软件架构评估方面的说明,回答下列问题。
【说明】某电子商务公司拟升级目前正在使用的在线交易系统,以提高客户网上购物时在线支付环节的效率和安全性。公司研发部门在需求分析的基础上,给出了在线交易系统的架构设计。公司组织相关人员召开了针对架构设计的评估会议,会上用户提出的需求、架构师识别的关键质量属性场景和评估专家的意见等内容部分列举如下:
(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)是对系统质量属性进行识别和优先级排序的重要工具。请给出合适的质量属性,填入下图中(1)、(2)空白处;并选择题干描述的(a)~(m),填入(3)~(6)空白处,完成该系统的效用树。
答案: 在架构评估过程中,质量属性效用树(Utility Tree)是对系统质量属性进行识别和优先级排序的重要工具。效用树主要关注性能、可修改性、可用性和安全4个方面。
编号 | 答案 |
(1) | 性能 |
(2) | 可修改性 |
(3) | (e) |
(4) | (j) |
(5) | (l) |
(6) | (k) |
【问题2】在架构评估过程中,需要正确识别系统的架构风险、敏感点和权衡点,并进行合理的架构决策。请用300字以内的文字给出系统架构风险、敏感点和权衡点的定义,并从题干(a)~(m)中各选出1个对系统架构风险、敏感点和权衡点最为恰当的描述。
答案:系统架构风险是指架构设计中潜在的、存在问题的架构决策所带来的隐患。敏感点是为了实现某种特定质量属性,一个或多个系统组件所具有的特性。权衡点是影响多个质量属性,并对多个质量属性来说都是敏感点的系统属性。根据上述分析可知题干描述中,(i)描述的是系统架构风险:(g)描述的是敏感点;(f)描述的是权衡点。
关键词 - 概念
关键词 | 概念 | 提炼 |
风险 | 是某个存在问题的架构设计决策,可能会导致问题 架构设计中潜在的、存在问题的架构决策所带来的隐患 | 有隐患(问题)的决策 |
非风险 | 与风险相对,是良好的架构设计决策 | 好(合理)的决策 |
敏感点 | 一个或多个构件的特性 为了实现某种特定质量属性,一个或多个系统组件所具有的特性 | 满足质量属性的系统组件的特性(设计) |
权衡点 | 影响多个质量属性的特性,是多个质量属性的敏感点。 权衡点是影响多个质量属性,并对多个质量属性来说都是敏感点的系统属性 | 影响多个质量属性的系统属性(特性/功能) |
关键词 | 概念 | 提炼 |
质量属性效用树 | 对系统质量属性进行识别和优先级排序的重要工具 | |
性能 | 效率指标:处理任务所需时间或单位时间内的处理量 | |
可修改性 |
|
|
可用性 | 正常运行的时间比例 | |
安全 | 系统向合法用户提供服务并阻止非法用户的能力 |