系统分析师-2025年5月试题四&试题五

目录

试题四案例

【说明】

[【问题 1】](#【问题 1】)

[【问题 2】](#【问题 2】)

[【问题 3】](#【问题 3】)

[【问题 4】](#【问题 4】)

【答案】

[【答案 1】](#【答案 1】)

[【答案 2】](#【答案 2】)

[【答案 3】](#【答案 3】)

[【答案 4】](#【答案 4】)

试题五案例

【说明】

[【问题 1】](#【问题 1】)

[【问题 2】](#【问题 2】)

[【问题 3】](#【问题 3】)

【答案】

[【答案 1】](#【答案 1】)

[【答案 2】](#【答案 2】)

[【答案 3】](#【答案 3】)

相关推荐


试题四案例

阅读以下关于该系统数据库的叙述,回答问题1至问题 3。

【说明】

在某电商系统数据库中设计如下关系模式:

订单表(orders)(订单号,用户编号,用户名称,商品编号,商品名称,优惠券编号,订单时间,订单金额,订单状态,用户vip等级)

用户表(users)(用户编号,用户名称,累计金额,用户vip等级)

【问题 1】

(1)分析订单表存在的函数依赖。

(2)订单表属于第几范式?为什么?

(3)对订单表进行分解,使其满足BCNF范式,给出分解后的关系模式。

【问题 2】

(1)分解是否保持函数依赖?说明理由。

(2)分解是否是无损分解?说明理由。

【问题 3】

补充触发器SQL代码空白:

CREATE TRIGGER update_vip_level

AFTER++(a)++ ON++(b)++

FOR EACH++(c)++

BEGIN

UPDATE订单表

SET用户vip等级=++(d)++

WHERE用户编号=:NEW. ++(e)++ ;

END;

【问题 4】

【答案】

【答案 1】

(1)订单号→用户编号,用户名称,商品编号,商品名称,优惠券编号,订单时间,订单金额,订单状态,用户vip等级

用户编号→用户名称,用户vip等级

商品编号→商品名称

(2)属于1NF(所有属性都是原子的)

不满足2NF:存在部分函数依赖(如用户编号用户vip等级)

(3)BCNF分解后关系模式:

订单表(订单号,用户编号,商品编号,优惠券编号,订单时间,订单金额,订单状态)

商品表(商品编号,商品名称)

【答案 2】

没有保持函数依赖。依赖用户编号一用户vip等级被拆分到不同表,无法通过分解后的表直接推导。

保持了无损分解。因为商品表交订单表=商品编号,能够推出商品表-订单表(商品名称)。

【答案 3】

(a) UPDATE (b)用户表 (c)ROW

(d):NEW.用户vip等级 (e)用户编号

【答案 4】

(1)性能问题

全量更新问题:当用户VIP等级变更时,需更新该用户所有历史订单记录

锁竞争问题:高频更新导致订单表锁争用,影响并发性能

(2)优化方案

方案1:异步批量处理,使用任务队列暂存更新请求,后台定时批处理。

方案2:消除冗余字段,直接删除订单表中的用户vip等级列,查询时实时关联。

试题五案例

阅读以下关于Web应用系统的描述,回答问题1至问题3。

【说明】

为了保障市民出行安全,提高出行效率,建设绿色交通,某城市委托某公司开发一个基于Web的地铁站智慧管理系统。该系统的主要需求分析如下:

(1)智慧指挥。对地铁站日常指挥工作提供所需信息,包括车站端和车辆端。其功能有视频巡检、客流热力图、列车位置、摄像头分布、预案管理和执行结果反馈;
(2)智慧运营。帮助站内调度人员实现各调度角色之间的调度命令,降低劳动强度,提高劳动效率,包括交接班管理、检修工作管理、工作日志显示、文档管理和事件查询等;
(3)系统管理。提供了角色管理、部门管理、摄像头管理、岗位管理、用户管理和联动管理等六个功能;
(4)地铁业务有明显的日常和峰值流量,涉及市民出行安全,应该注意系统和存储的高并发性、可扩展性和安全性。

该公司针对上述需求组建了项目组,经项目组讨论,决定采用MVC架构,使用SSM框架实现该系统。

【问题 1】

请用200字以内文字说明:

(1)什么是MVC架构?

(2)如何利用SSM框架来实现MVC架构。

【问题 2】

请基于对SSM框架的了解,补充完善图1的空白处(1)~(6),完成系统的软件架构图。

【问题 3】

云存储是一种通过互联网将数据存储在远程服务器上的技术,用户可按需访问和管理数据。项目组在讨论采用哪种云存储时,张工建议使用公有云、李工建议使用私有云,经讨论最终决定使用混合云,请比较公有云、私有云和混合云的区别,填写表1中的(1)~(9),并说明选用混合云的理由。

【答案】

【答案 1】

(1)MVC组件定义

Model(模型):业务逻辑与数据操作(如MyBatis处理数据库交互)

View(视图):用户界面展示(如JSP/Thymeleaf渲染页面)

Controller(控制器):接收请求并调度(如SpringMVC的@Controller路由)

(2)SSM实现MVC

SpringMVC实现Controller层:DispatcherServlet分发请求,@RequestMapping定义路由

MyBatis实现Model层:Mapper接口操作数据库,封装SQL逻辑

Spring整合View层:通过ViewResolver解析JSP/HTML模板,注入数据到视图

【答案 2】

(1) 表示层 (2) 数据存储层 (3) 平台层

(4) HTML (5) 系统管理数据 (6)智能决策

【答案 3】

相关推荐

Web应用系统全面解析:从架构设计到测试部署的核心要点https://shuaici.blog.csdn.net/article/details/156718262数据库管理系统&关系数据库&非关系型数据库https://shuaici.blog.csdn.net/article/details/149676562并发控制&数据库安全https://shuaici.blog.csdn.net/article/details/150272219

相关推荐
2501_9249526929 分钟前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
诗酒当趁年华39 分钟前
langchain核心组件1-智能体
数据库·langchain
流星白龙39 分钟前
【MySQL】9.MySQL内置函数
android·数据库·mysql
Leo.yuan1 小时前
ETL是什么?一文讲清ETL和ELT的区别
数据仓库·etl
原来是猿1 小时前
MySQL 在 Centos 7环境安装
数据库·mysql·centos
路小雨~1 小时前
Milvus 向量数据库的官方文档笔记
数据库·学习·milvus
老衲提灯找美女1 小时前
数据库约束
数据库
卷Java1 小时前
Python字典:键值对、get()方法、defaultdict,附通讯录实战
开发语言·数据库·python
wanhengidc1 小时前
跨境云手机适用于哪些场景
大数据·运维·服务器·数据库·科技·智能手机
Bdygsl2 小时前
MySQL(6)—— 视图
数据库·mysql