3.28每日总结
软件体系架构课堂测试–架构分析
某公司欲建设一个房屋租赁服务系统,统一管理房主和租赁者的信息,提供快捷的租赁服务。本系统的主要功能描述如下:
1. 登记房主信息。记录房主的姓名、住址、身份证号和联系电话等信息,并写入房主信息文件。
2. 登记房屋信息。记录房屋的地址、房屋类型(如平房、带阳台的楼房、独立式住宅等)、楼层、租金及房屋状态(待租赁、已出租)等信息,并写入房屋信息文件。一名房主可以在系统中登记多套待租赁的房屋。
3. 登记租赁者信息。记录租赁者的个人信息,包括:姓名、性别、住址、身份证号和电话号码等,并写入租赁者信息文件。
4. 安排看房。已经登记在系统中的租赁者,可以从待租赁房屋列表中查询待租赁房屋信息。租赁者可以提出看房请求,系统安排租赁者看房。对于每次看房,系统会生成一条看房记录并将其写入看房记录文件中。
5. 收取手续费。房主登记完房屋后,系统会生成一份费用单,房主根据费用单交纳相应的费用。
6. 变更房屋状态。当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态的请求。系统将根据房主的请求,修改房屋信息文件。
系统要求如下所示:
(a)用户界面支持用户的个性化定制;
(b)系统需要支持当前主流的标准和服务,特别是通信协议和平台接口;
(c)用户操作的响应时间应不大于3秒;
(d)系统具有故障诊断和快速恢复能力;
(e)用户密码需要加密传输;
(f) 系统需要支持不低于2G的数据缓存;
(g)用户操作停滞时间超过一定时限需要重新登录验证;
问题:
1、 绘制需求层次-需求方面二维矩阵。
|
功能 |
质量 |
约束 |
业务目标 |
登记房主房屋信息文件 记录并写入租赁者的信息文件 安排看房并生成看房记录写入看房记录文件 生成费用单 变更房屋状态 |
性能:处理速度快,省时间 正确率高 可拓展性:根据用户需求快速迭代新功能 易用性 |
功能集中 成本控制
|
用户需求 |
一名房主可登记多套带租赁的房屋 租赁者可快速查询带租赁房屋信息 根据房主请求修改房屋信息 |
易用性:上手操作简单 结果准确 可重用性 |
使用环境 用户等级 用户操作停滞时间超过一定时限需要重新登录验证; 支持用户的个性化定制
|
系统需求 |
登记房主,房屋,租赁者信息 租赁者租房需求与房屋信息的自动匹配 安排租赁者看房 收取手续费 变更房屋状态 |
可拓展性:可拓展其他功能 易用性:操作简单 持续可用性 可靠性 安全性:数据安全性高 |
系统具有故障诊断和快速恢复能力 数据安全性 支持当前主流的标准和服务 具有故障诊断和快速恢复能力 支持不低于2G的数据缓存 |
2、 确定关键功能。
登记房主,房屋,租赁者的信息并写入相应的信息文件
安排租赁者看房和生成记录并写入相关信息文件
生成费用单收取费用
变更房屋状态
3、 确定关键质量。(采用质量矩阵进行分析)
|
性能 |
安全性 |
持续可用性 |
可互操作性 |
可靠性 |
鲁棒性 |
易用性 |
可测试性 |
可重用性 |
可维护性 |
可扩展性 |
可移植性 |
性能 |
|
- |
|
- |
- |
- |
- |
- |
- |
- |
- |
- |
安全性 |
- |
|
|
- |
|
|
- |
- |
- |
|
|
|
持续可用性 |
|
|
|
|
+ |
+ |
|
|
|
|
|
|
可互操作性 |
- |
- |
|
|
|
|
|
|
|
|
+ |
+ |
可靠性 |
- |
|
+ |
|
|
+ |
+ |
+ |
|
+ |
+ |
|
鲁棒性 |
- |
|
+ |
|
+ |
|
+ |
|
|
|
|
|
易用性 |
- |
|
|
|
|
+ |
|
- |
|
|
|
|
可测试性 |
- |
|
+ |
|
+ |
|
+ |
|
|
+ |
+ |
|
可重用性 |
- |
|
|
|
- |
|
|
+ |
|
+ |
+ |
+ |
可维护性 |
- |
|
|
|
|
|
|
+ |
|
|
+ |
|
可扩展性 |
- |
|
|
|
|
|
|
+ |
|
+ |
|
+ |
可移植性 |
- |
|
|
|
|
|
- |
+ |
+ |
- |
+ |
|