软件体系架构课堂测试–架构分析

news/2025/3/19 22:20:34/文章来源:https://www.cnblogs.com/xuan-2004/p/18782014

软件体系架构课堂测试架构分析

阅读下列案例,回答相关问题:

某大银行的一位银行卡办公室的收账经理Liz遇到了一个问题。她每周都收到一份过期未付款的账户名单。这份报告已经从两年前的250个账户增加到现在的1250个账户。

为了确定那些严重拖欠债务的账户,Liz需要通读这份报告。严重拖欠债务的账户由几个不同的规则确定,每个规则都要求Liz检查客户的一项或几项数据。过去半天的工作量现在增加到了每周三天。即使在确定了严重拖欠债务的账户后,如果没有查阅该账户三年内的历史资料,Liz也不能做出最后的信用决定(例如严厉的催款电话、断绝信用或将这个账户转给一个收账代理)。另外,Liz需要报告所有账户中过期未付款的、拖欠债务的、严重拖欠债务的和呆死账的比例。目前的报告中并没有给她提供这个信息。

假设现在需要你来开发一个软件,解决Liz面对的难题。

1、 那么你认为Liz现在遇到的问题有哪些?

1)工作量的增加;

2)客户账户的历史数据;

3)问题账户所占比例没有显示…

2、你希望新的软件应该达成哪些业务目标?

BR1:能够快速查询客户账户;

BR2:能够分析一个客户是否为问题账户;

BR3:能够给出一个问题账户的三年内的历史数据:

BR4:能够计算问题账户所占比例…

2、 你怎样设计软件的高层解决方案?

1)建立一个数据库系统用来存放客户账户信息;

2)根据特定的判定问题账户的算法检索辨别出问题账户;

3)工作人员能够检查该账户的三年内的历史数据;

4)即时显示问题账户所占比例…

4、你怎样设计系统特性?

1)创建客户信息数据库;

2)根据原始数据重新整理并更新;

3)提供提供客户账户基本信息查询和三年历史数据查询;

4)设定欠账规则,创建问题用户计算过程;

5)实时分析各类问题账户所占比例…

问题:

1、 绘制需求层次-需求方面二维矩阵。

 

功能

质量

约束

业务目标

减少过期未付款账户数量,提高收账效率

增加收账数量

与未付款账户之间的沟通,用什么方式加速还账

用户需求

确定未付款账户

高效分辨账户

规则不同

系统需求

整理账户详细信息

快速查询且及时更新数据

系统是否便捷

是否符合现实

 

2、 确定关键功能。

  1. 分辨账户属性:是否为未付款账户
  2. 设定欠账规则
  3. 帮助用户及时还账

3、 确定关键质量。(采用质量矩阵进行分析)

可靠性,安全性,可扩展性

 

性能

安全性

持续安全性

可互操作性

可靠性

鲁棒性

易用性

可测试性

可重视性

可维护性

可扩展性

可移植性

性能

 

-

 

-

-

-

-

-

-

-

-

-

安全性

-

 

 

-

 

 

-

-

-

 

 

 

持续安全性

 

 

 

 

+

+

 

 

 

 

 

 

可互操作性

-

 

 

 

 

 

 

 

 

 

+

+

可靠性

-

 

+

 

 

+

+

+

 

+

+

 

鲁棒性

-

 

+

 

+

 

+

 

 

 

 

 

易用性

-

 

 

 

 

+

 

-

 

 

 

 

可测试性

-

 

+

 

+

 

+

 

 

+

+

 

可重视性

-

 

 

 

 

 

 

+

 

+

+

+

可维护性

-

 

 

 

 

 

 

+

 

 

+

 

可扩展性

-

 

 

 

 

 

 

+

 

+

 

+

可移植性

-

 

 

 

 

 

 

+

+

-

+

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/901739.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

202108032324 - kafka的生产流程

由上图可以看出:KafkaProducer有两个基本线程: 主线程: 负责消息创建,拦截器,序列化器,分区器等操作,并将消息追加到消息收集器 RecoderAccumulator中; 消息收集器RecoderAccumulator为每个分区都维护了一个Deque<ProducerBatch> 类型的双端队列。 ProducerBatch…

Cython二进制逆向系列(三)运算符

在这篇文章里,我们会讨论Cython是如何处理运算符的(数学运算符、位运算符、in/not in 运算符、 ==运算符与逻辑运算符)。总的来叔其中大部分是调用虚拟机api来实现的。Cython二进制逆向系列(三)运算符在开始前,先给出本文用到的py源代码 def test1(x, y):# 数学运算符a…

QOJ 9785 Shrooks

曼哈顿距离转切比雪夫距离,对限制的贪心满足,扩宽限制,简化信息首先考虑限制的形式:对于两点 \((x_1, y_1), (x_2, y_2)\),要求 \(|x_1 - x_2| + |y_1 - y_2| \le n\)。 但是这个式子与 \(x_1, x_2, y_1, y_2\) 这 \(4\) 个值都强相关,且这里的绝对值也并不好拆开处理。 …

golang的GC机制

一、垃圾回收 什么是垃圾回收?垃圾回收(GC,garbage collection)是自动内存管理的一种形式,通常由垃圾收集器收集并适时回收或重用不再被对象占用的内存,比如众所周知的Java语言就能很好的支持GC。后起之秀——Go语言也同样支持垃圾回收,它使得Go程序员在编写程序的时候不…

fastjson漏洞复现(fastjson 1.2.47)

原理: Fastjson 的 @type 字段允许反序列化时动态指定类,攻击者可以通过指定带有危险行为的类,并结合 RMI/LDAP 远程加载恶意类,从而实现命令执行。开启vulhub靶场//如何验证是否存在fastjson反序列化漏洞 有json数据传输的地方可能存在 可以尝试使用dnslog带外但是不知道…

基于神经网络逆同步控制方法的两变频调速电机控制系统matlab仿真

1.课题概述两电机变频调速系统是一个多输入多输出非线性强耦合的控制系统。本课题使用神经网络构造原系统的a阶逆系统,设计线性闭环调节器进行控制,通过matlab对系统进行仿真。对两电机变频调速系统更为精确地实现了张力和速度间的解藕控制。2.系统仿真结果 (完整程序运行后…

使用gradio实现实时语音识别

这里通过gradio来实现实时语音识别,通过上传一个文件,当点击提交后则在右侧输出其相应识别的文字。 实现代码比较简单,如下所示: import gradiodef convert(file_bytes):# 语音识别方法,其中file_bytes是采样率与对应numpy.ndarray实例return recognition_func(file_bytes[1])d…

英语四级跟练计划第一天

前言 今天给英语四级报了名,以我以往英语的水平来看,如果不早早开始复习,绝无通过的可能,走投无路的我只好去向deepseek求助,上一次320分的考生,这一次该付出何等的努力才可以考到425分,如此为我制定了90天的四级复习计划。我相信有很多人和我一样,都被英语四级通过给困…

202107191556 - 层次分析法计算流程

构造矩阵 一致性检验计算最大特征值计算一致性指标CI CI = ( λ - n ) / ( n - 1 )随机一致性指标RI取值计算一致性比率CR计算特征向量列向量归一化 求行和后归一化根据特征向量求最大特征值计算过程

crontab 命令

crontab -l 查看所有任务 crontab -e 编辑任务* * * * * /www/server/php/82/bin/php /www/wwwroot/default/1.php >> /www/wwwroot/default/cron_log.log 2>&1cd /www/wwwroot/www.pk777slots.com/ && php think test在那个目录运行 cd /www/wwwroot/www…

python实验一 20241202王凯

课程:《Python程序设计》 班级: 2412 姓名: 王凯 学号:20241202 实验教师:王志强 实验日期:2025年3月12日 必修/选修: 公选课 1.实验内容 (1)提前了解了一下python,了解它的地位排名,并熟悉Python开发环境;(2)练习Python运行、调试技能;(编写书中的程序,并进行…