2022系统分析师下午卷(案例分析)

news2024/11/25 23:36:41

试题一(共 25 分)


阅读以下关于软件系统分析与建模的叙述,在答题纸上回答问题 1 至问题 3。
【说明】
某软件公司拟开发一套博客系统,要求能够向用户提供一个便捷发布自已心得,及时有效的与他人进行交流的平台。新用户发布个人博客之前,需要创建一个新的博客账户,以下为新用户注册的操作行为:
(a)向系统请求创建一个新的博客账户;
(b) 输入个人详细信息;
(c) 使用证件数据库验证个人详细信息:
(d) 选择账户类型:
(e)身份验证成功,创建新的博客账户;
(f)用户身份信息验证不成功:
(g)以电子邮件的方式将账户详细信息发送给用户;
(h)博客账户申请被拒绝。
【问题 1】(6 分)
在结构化和面向对象的软件分析过程中,通常会使用到数据流图、活动图和流程多,请分别描述这三种模型的特点和适用场景。
【问题 2】(9 分)

采用用例图和用例描述建模系统需求,请使用题干给出的(a)~(h),完善“博客账户创建用例描述”中的(1)~(6),如表 1-1 所示。将正确答案填在答题纸上。

 【问题 3】(10 分)
需求评审是通过将需求规格说明书递交给相关人员检查,以发现其中存在缺陷的过程。在需求工程中,需求评审是一个非常重要的过程。结合题干案例,请用 300 字以内的文字简要说明需求评审的内容及作用。

试题二(共 25 分)


阅读以下关于系统设计的叙述,在答题纸上回答问题 1 至问题 3。
【说明】
某软件公司为某企业开发一套在线办公自动化系统,以提升企业管理服务的质量和效率。公司决定采用面向对象方法开发该系统,张工负责对员工请假审批业务进行了分析,具体描述如下:
企业员工通过请假申请页面提出请假申请后,首先由部门经理进行审核,若请假理由不合理,部门经理拒绝请假申请,将申请退回给员工,员工对请假申请表进行修改再次提交,或放弃请假申请。
若请假理由合理,且请假天数小于等于 3 天,则部门经理直接批准请假申请,生成请假批准单,申请结束。若请假天数大于 3 天,则在部门经理批准请假申请后,需要提交给副总经理审核批准。副总经理若认为该申请合理,则审核通过,生成请假批准单,流程结束;若副总经理认为申请不合理,则拒绝请假申请,将请假申请退回给员工。
【问题 1】(11 分)
识别设计类是面向对象设计过程中的重要环节之一,设计类表达了类的职责,即该类所承担的任务。请用 300 字以内的文字说明设计类通常包含哪 3 种类型,以及每种类型的主要职责,并从题干描述案例涉及的具体类为每种类型的设计类举出两个实例。
【问题 2】(6 分)
识别类之间的关系是面向对象分析过程中的重要环节之一,常见的类之间关系包括泛化关系、关联关系、聚合关系、组合关系等。请用 300 字以内的文字对泛化关系和关联关系的内涵进行描述,并根据题干具体类的描述为这两种关系各举出一种实例。
【问题 3】(8 分)
在面向对象的设计过程中,状态图描述了一个实体基于事件反应的动态行为。请根据题干描述,填写图 2-1 中的(a)~(d)空白,完成请假审批的状态图。

试题四(共 25 分)

阅读以下关于微服务架构中的数据管理的叙述,在答题纸上回答问题 1 至问题 3。

某大型电商平台构建了一个在线 B2B 商店系统。该系统采用微服务架构,将系统功能分解为多个松散耦合且可独立部署的较小组件或服务。最终设计的系统包括了电商系统中常见的服务:客户服务、订单服务、支付服务等,其中:
1、客户服务负责对客户相关的信息进行管理和维护;
2、订单服务负责对订单信息的管理和维护;
3、支付服务负责对在线支付功能和信息的管理和维护等。
为了确保微服务之间的松耦合,每个服务都有自己的数据,其中,订单服务使用了 NoSQL 数据库,客户服务和支付服务使用了关系数据库。
李工认为由于不同服务使用了各自的不同数据库,使得跨服务操作可能存在数据不一致。比如订单与支付的数据一致性问题,系统通过订单服务在本地 NoSQL 数据库中创建订单记录,同时在支付服务的关系数据库中创建支付记录,且必须保证订单记录和支付记录的一致性,该问题在系统构建时需要考虑。 

【问题 1】(7 分)
李工建议采用两阶段提交协议(2PC)来解决服务数据的一致性问题。请用 200 字以内的文字简要说明2PC;说明 2PC 是否能解决该问题,并简要解释原因。
【问题 2】(8 分)
王工建议采用分布式数据管理方案,用事件驱动架构来解决服务数据的一致性问题,在订单服务和支付服务之间通过可靠的消息队列实现事件的传递,其基本操作步骤如下,请填写其中的空白处。
(1)订单服务接收订购请求,创建一个订单,该记录状态为(a),发布一个“创建订单”事件;
(2)(b)接收“创建订单”事件,记录(c),发布一个“支付完成事件;
(3)订单服务接收“支付完成”事件,修改订单记录状态为(d)
【问题 3】(10 分)
李工提出王工的方案会有数据库更新和发布事件的原子性问题,例如订单服务创建订单记录和发布“创建订单”事件需要原子性保障,否则会出现数据不一致状态。

王工认为可以使用本地事务发布事件的方法来解决该问题。请给出使用本地事务发布事件的基本方法,并说明该方法的缺点。

试题五(共 25 分)


阅读以下关于 web 系统设计的叙述,在答题纸上回答问题 1 至问题 3。
【说明】
某公司拟开发一个食品供应链溯源系统,该系统需要提供从原材料供应商、加工商、物流、分销商、零售商、消费者的食品供应链全流程溯源。该公同组建了项目组,并召开了项目开发讨论会。会上,张工提出适过二维码扫描获取食品信息,采用中心化数数据库作为数据存储媒介;李工提出使用中心化数据库容易产生数据信任、溯源追责困难等问题,建议建立区块链和数据库的映射存储,提供存储和查询操作功能,并提出采用数据接入层、数据核心层、应用表示层三层体系架构实现该食品溯源系统。
【问题 1】(6 分)
去中心化和开放性是区块链的重要特征,请用 200 字以内的文字简要说明什么是区块链的去中心化和开放性。
【问题 2】(7 分)
分布式交易账本、哈希散列函数、公私钥签名、时间戳就是区块链的核心技术,请从上述技术中选择两种最适合解决数据信任问题的技术,并用 300 字以内的文字说明原因。
【问题 3】(12 分)
根据李工的建议,该系统将采用三层架构。请从下面给出的(a)~(m)候选项中进行选择,补充完善图 5-1 中(1)~(6)处空白的内容,完成该系统的架构设计方案。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新手学习3D建模,弯道超车攻略!

你做三四月的事,在八九月自有答案。​ – 余世存 📝学建模最重要的是每天抽时间练习 🌻给大家准备了200天建模打卡攻略练习素材 📔人体解剖雕塑学(骨骼、肌肉等电子版💯) 📒3dmax…

第4季6:图像sensor的寄存器操作

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 一、sensor_write_register函数的解析 在第4季4:图像sensor的驱动源码解析中写到,sensor_register_callback函数的调用关系如下: sensor_register_callback …

英文Paper写作怎么确实合适的介词?

Paper写作中,介词是非常常见的,介词虽是小词,数量也不多,但灵活多变,随处可见,功能强大而且难于掌握。我们不可小看这个角色,不可忽视它在不同句子中的作用,Paper写作过程中应该如何…

读取HDFS数据写入MySQL_大数据培训

读取HDFS数据写入MySQL 1)将上个案例上传的文件改名 [atguiguhadoop102 datax]$ hadoop fs -mv /student.txt* /student.txt 2)查看官方模板 [atguiguhadoop102 datax]$ python bin/datax.py -r hdfsreader -w mysqlwriter { “job”: { “content”…

高阶测试开发必备技能: k8s入门

现在稍微有点规模公司都是基于docker容器化部署技巧,K8s现在主流,应用最广的容器集群管理技术。 k8s全称kubernetes(首字母为 k、首字母与尾字母之间有 8 个字符、尾字母为 s,所以简称 k8s),基于Docker容器…

微服务架构10个最重要的设计模式,带你了解,完全熟悉

自从软件开发的早期(1960年代)以来,解决大型软件系统中的复杂性一直是一项艰巨的任务。多年来,软件工程师和架构师为解决软件系统的复杂性进行了许多尝试:David Parnas的模块化和信息隐藏(1972),Edsger W. Dijkstra的关注分离(197…

关于ElasticSearch日期格式不一致的异常,可以这么解决

最近壹哥的一个学生,在利用spring-data-elasticsearch访问ElasticSearch(ES)时,遇到了一个关于日期类型的BUG,困扰了很久。然后他就找壹哥给他解决,接下来壹哥就把解决的过程给大家复现一下,希望本文可以给遇到同样问题…

构建灵活订单系统,B2B撮合管理系统提升光伏企业订单管理效率

光伏系统是利用半导体光生伏特效应将太阳能转化为电能的发电系统。过去20年,我国光伏制造业快速发展,由弱变强。经过20年高速发展,我国在硅片、电池片、组件制造等多领域处于世界领先水平,我国已经成为全球第一大光伏生产国、消费…

深度学习Week9-YOLOv5-C3模块实现(Pytorch)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍦 参考文章:Pytorch实战 | 第P8天:YOLOv5-C3模块实现(训练营内部成员可读)🍖 原作者:K同学啊|接辅导、项目定制了解C3的结构,方便…

前端Gitee + Jenkins自动化实战(转)

# 前端Gitee Jenkins自动化实战 当我们熟悉了Jenkins 的使用后,接下来我们来配置一个基于 vue-element-admin 的实战项目,来感受一下自动化流程带给我们的优势。 首先我们需要创建一个 git 项目,至于代码仓库可以自选,这里为了…

RocketMq: Windows环境-单机部署和多种主从集群场景部署

关于默认端口 broker的默认端口有3个,10911, 10912, 10909。 10911是remotingServer使用的监听端口,remotingServer主要处理以下三类消息: producer发送的消息 conumser在消费失败或者消费超时发送的消息 consumer拉取消息10912是主broker用于监听从broker请求…

HTML学生个人网站作业设计:公益专题扫黑除恶(HTML+CSS)

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

扩散模型Diffusion轻松入门

如果要问最近模型领域什么东西最火,应该非扩散模型莫属,火得我觉得不系统学习一下都不行! 本文是我的学习笔记,只能叫入门文章,因为扩散模型的严谨数学推导公式很多,还没有研究透彻,不敢说一文…

c语言:关键字(二)

关键字一.声明的关键词—extern二.最名不符实的关键字—static一.声明的关键词—extern 首先这里问两个问题 1.变量可以跨文件访问吗? 2.函数可以跨文件访问吗? 答案是都可以 那么什么是跨文件呢? 我在game.c里定义show函数,但…

Vue2基础篇-01-Vue2 入门概述

1. 概述 该教程站在小白的角度,去帮助理解和使用,达到入门的效果;该教程覆盖面比较浅,更多详情请查阅 Vue2文档 ,目前最新是Vue3文档,但是Vue2是公司目前大多数使用的;欢迎大家一起指正并下方留…

Unity 符号表

目录 前言 关于Unity符号表 正文 程序crash日志: 解析 后记 记一次 Bugly 崩溃查找过程 unity-il2cpp: 前言 关于Unity符号表 关于项目真机调试时的崩溃问题,一般可以 logcat 或 xcode 看到相关的crash日志,拿到崩溃时的堆…

Python均匀分布和三角形分布

文章目录均匀分布三角形分布均匀分布和三角形分布之间的关系函数备注triangular(left, mode, right)三角形分布uniform([low, high])均匀分布 均匀分布 所谓均匀分布,就是在事件空间中,所有事件的概率都是相等的连续分布,其概率密度为 f(x)1…

麻省理工人工智能实验室新研究!有远见的机器学习方法:能预知未来行为的AI智能体

原创/文 BFT机器人 近日,麻省理工学院的研究人员开发出一种新技术,让AI智能体能够思考更远的未来,寻找更合适的合作与竞争长期解决方案。 想象一个游戏规则:两支足球队在球场上PK,玩家们可以选择相互合作合作来实现目…

[附源码]Python计算机毕业设计Django学生宿舍管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

web前端期末大作业:云南旅游网页主题网站设计——云南城市旅游5页HTML+CSS+JavaScript

👨‍🎓静态网站的编写主要是用 HTML DⅣV CSSJS等来完成页面的排版设计👩‍🎓,一般的网页作业需要融入以下知识点:div布局、浮动定位、高级css、表格、表单及验证、js轮播图、音频视频Fash的应用、uli、下拉…