2023-学习记录11-软件架构设计
试题一
某公司拟开发一套在线软件开发系统,支持用户通过浏览器在线进行软件开发活动。该系统的重要功能,包括我的编辑,语法高亮提示,代码编频,系统调试,代码气库管理等,在需求分析与架构设计阶段,公司提出的需求和质量属性描述如下:
a)根据用户的付费情况对用户进行分类,并根据类别提供相应的开发功能。
b)在正常负载情况下,系统应该在0.2s内对用户的界面操作请求进行响应。
c)系统应该具备完善的安全防护措措施,能够对黑客的攻击行为进行检测和防御。
d)系统主站点断电后应在3s内将请求重定向到备用站点。
e)系统支持中文昵称,但用户名必须以字母开头,长度不少于8个字符。
f)系统宕机后,需要在15s内发现错误,并启用备用系统。
g)在正常负载情况下,户的代码提交请求应在0.5s内完成。
h)系统支持硬件设备灵活扩容,应保证在2人天内完成。
i)系统需要针对代码仓库的所有操作进行详细记录;便于后期查阅与审计。
j)更改系统web界面风格需要在4人天内完成。
k)系统本身需要提供远程调试接口,支持开发团队进行远程排错。
在对系统需求质量属性和架构特性进行分析的基础上,该公司的系统架构给了两种方案:
1、问题1(13分)
请问该需求应该采⽤哪⼀种风格?表1-1是对这两种风格分别从数据处理⽅式、系统拓展⽅式和处理性能三个⽅⾯进⾏了⽐较,请填写表1-1中(1) ~ (4)处的空⽩。
表1-1
管道过滤器
1分类存储数据
2数据和处理高耦合
3数据的堆积导致查询数据效率低
4不需要格式转换
2、质量属性填入(1) (2) ( a-k)填入(3)- (6):
1安全
2可修改性
3 g
4 f
5 k
6 j