刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

试题一(共25分)

阅读以下关于软件架构的叙述,在答题纸上回答问题1和问题2。

 

【说明】

某电子商务公司为了更好地管理用户,提升企业销售业绩,拟开发一套用户管理系统。该系统的基本功能是根据用户的消费级别、消费历史、信用情况等指标将用户划分为不同的等级,并针对不同等级的用户提供相应的折扣方案。在需求分析与架构设计阶段,电子商务公司提出的需求、质量属性描述和架构特性如下:

(a)用户目前分为普通用户、银卡用户、金卡用户和白金用户四个等级,后续需要能够根据消费情况进行动态调整;

(b)系统应该具备完善的安全防护措施,能够对黑客的攻击行为进行检测与防御;

(c)在正常负载情况下,系统应在0.5秒内对用户的商品查询请求进行响应;

(d)在各种节假日或公司活动中,针对所有级别用户,系统均能够根据用户实时的消费情况动态调整折扣力度;

(e)系统主站点断电后,应在5秒内将请求重定向到备用站点;

(f)系统支持中文昵称,但用户名要求必须以字母开头,长度不少于8个字符;

(g)当系统发生网络失效后,需要在15秒内发现错误并启用备用网络;

(h)系统在展示商品的实时视频时,需要保证视频画面具有1024x768像素的分辨率,40帧/秒的速率;

(i)系统要扩容时,应保证在10人•月内完成所有的部署与测试工作;

(j)系统应对用户信息数据库的所有操作都进行完整记录;

(k)更改系统的Web界面接口必须在4人•周内完成;

(l)系统必须提供远程调试接口,并支持远程调试。

在对系统需求、质量属性描述和架构特性进行分析的基础上,该系统架构师给出了两种候选的架构设计方案,公司目前正在组织相关专家对系统架构进行评估。

【问题1】(13分)

针对用户级别与折扣规则管理功能的架构设计问题,李工建议采用面向对象的架构风格,而王工则建议采用基于规则的架构风格。请指出该系统更适合采用哪种架构风格,并从用户级别、折扣规则定义的灵活性、可扩展性和性能三个方面对这两种架构风格进行比较与分析,填写表1-1中的(1)~(3)空白处。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

试题一

本题主要考查考生对于软件架构风格和软件质量属性的理解、掌握和运用,在解答该题目时,应认证阅读题干中给出的场景于需求描述,分析业务场景适合采用何种架构风格,然后分析需求描述了何种质量属性,根据质量属性描述对其归类。


【问题1】

答案:

该系统更适合采用基于规则的虚拟机架构风格。

(1)根据用户级别建立用户级别-折扣规则矩阵,在系统启动时加载并支持运行过程中动态更新,灵活性好

(2)加入新的用户级别和折扣规则时需要增加相应的类来扩展,可通过系统重启、动态反射或动态加载扩展,扩展性较差

(3)可根据类型判断或策略模式直接获得用户级别对应的折扣规则对象实时计算,性能很好

解析:

面向对象设计模式中的策略模式和虚拟机中的基于规则的架构风格是动态规则场景中两种组常用的解决方案。从灵活性、可扩展性和性能方面综合比较来看,基于规则的虚拟机风格在灵活性和可扩展性两个方面均具备较大优势,而从性能方面会比面向对象处理速度差一些。

解析:

本题主要考查了软件架构风格和软件质量属性的理解、掌握和运用。针对用户级别与折扣规则管理功能,基于规则的架构风格能够更好地满足系统的需求。从用户级别、折扣规则定义的灵活性和可扩展性来看,基于规则的架构风格具有优势。然而,从性能角度考虑,面向对象架构风格可能具有更好的性能。因此,在实际设计中需要综合考虑各种因素,选择最适合的架构风格。

创作类型:
原创

本文链接:【问题1】(13分) 针对用户级别与折扣规则管理功能的架构设计问题,李工建议采用面向对象的架构风格,

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share