2023年上半年软件设计师下午真题及答案解析

news2025/1/30 16:40:01

试题一(15分)

随着农业领域科学种植的发展,需要对农业基地及农事进行信息化管理,为租户和农户等人员提供种植相关服务,现欲开发农事管理服务平台,其主要功能是:

(1)人员管理:平台管理员管理租户;租户管理农户并为其分配负责的地块,租户和农户以人员类型区分。

(2)基地管理:租户填写基地名称、地域等描述信息,在显示的地图上绘制地块。

(3)种植管理:租户设定作物及其从种植到采收的整个农事过程,包括农事活动及其实施计划。农户根据相应农事过程提醒,进行农事活动并记录。系统会在设定时间向农户进行农事提醒,对逾期未实施活动向租户发出逾期告警。

(4)投入品管理:租户统一维护化肥、杀虫剂等投入品信息。农户在农事活动中设定投入品的实际消耗。

(5)信息服务:农户按查询条件发起农事信息请求,对相关地块农事活动实施情况(如与农事过程比对)等农事信息进行筛选、对比和统计等处理,并将响应信息进行展示。系统也给其他第三方软件提供APP接口,通过接口访问的方式提供账号、密码和查询条件发起农事信息请求,返回特定格式的农事信息,无查询条件时默返回账号下所有信息,多查询条件时返回满足全部条件的信息。

现采用结构化方法对农事管理服务平台进行分析与设计,获得如图所示的上下文数据流图和图2所示的0层数据流图

                            

 

图1-1 上下文数据流图

问题1(4分)

使用说明中的词语,给出图1-1中的实体E1~E4的名称。

问题2(4分)

使用说明中的词语,给出图1-2中数据存储D1~D4的名称。

问题3(4分)

根据说明和图中术语,补充图1-2中缺失的数据流及其起点和终点。

问题4(3分)

根据说明,给出"农事信息请求"数据流的组成。

试题二(15分)

某新能源汽车公司为了提升效率。需开发一个汽车零件采购系统请完成系统的数据库设计

[概念结构设计]

[需求描述]

(1)记录供应商的信息,包括供应商的名称、地址和一个电话。

(2)记录零件的信息,包括零件的编码、名称和价格。

(3)纪录车型信息,包括车型的编号、名称和规格。

(4)记录零件采购信息,某个车型的某种零件可以从多家供应商采购,某种零件也可以被多个车型采用,某家供应商也可以供应多种零件,还包括采购数量和采购日期。

[逻辑结构设计]

根据概念结构设计阶段完成的实体联系图,得出如下关系模式(不完整):

   供应商(名称地址电话)

   零件(编码各称,价格)

   车型(编号各称规格)

   采购(车型编号供应商名称(a),(b),采购日期)

问题1(5分)

根据描述补充图2-1的实体联系图(不增加新的实体)。

问题2(3分)

补充逻结构设计结果中的(a),(b)两处空缺,并标注主键和外键完整性约束。

问题3(7分)

该汽车公司现新增如下需求:记录车型在全国门店的销售情况,门店信息包括门店的编号、地址和电话,销售包括销售数量和销售日期等,对原有设计进行以下修改以实现该需求。

(1)在图2-1中体现门店信息及其车型销售情况、并标明新增的实体和联系及其重要属性。

(2)给出新增加的关系模式并标注主键和外键完整性约束。

试题三(15分)

某高校图书馆购买了若干学术资源的镜像数据库(MinorDB)资源,现要求开发一套数字图书馆(Digitallibrary)系统,面向校内用户(User)提供学术资源(Resoure)的浏览、检索和下载服务,系统的主要要求描述如下:

1.系统中存储了每个镜像数据库的基本信息,包括:数据库名称,访问地址,数据库属性以及数据库简介等信息,用户进入某个镜像数据库后,可以浏览、检索以及下载其中的学术资源。

2.学术资源包括:会议论文(ConferencePaper)、期刊论文(JournalArticle)以及学位论文(Thesis)等。系统中存储了每个学术资源的题名、作者、发表时间、来源(哪个镜像数据库)、被引次数、下载次数等信息。

(1)对于会议论文,还需记录会议名称,召开时间以及召开地点;同一次会议的论文被收录在会议集(Proceeding)中。

(2)对于期刊论文,还需记录期刊名称、出版月份、期号以及主办单位;同一期号的论文被收录在一本期刊(Edition)中。

(3)对于学位论文,记录了学位类别(博士/硕士)、毕业学校、专业及指导教师。

3.会议集包含发表在该会议(在某个特定时间段,特定地点召开)上的所有文章。期刊的每一期在特定时间发行,其中包含若干篇文章。

4.系统用户(User)包括:在校学生(Student)、教师(Teacher)以及其他在职人员(Staff)。用户使用学校的统一身份认证登录系统后,使用系统提供的各项服务。

5.系统提供多种资源检索方式,主要包括:按照资源的题名检索(SearchbyTitle)、按照作者名称检票(SearchByAuthor)、按照来源检索(SearchBySource)等。

6.用户可以下载资源,系统记录每个资源被下载的次数。

现采用面向对象分析与设计方法开发该系统,得到如图3-1所示的用例图,以及图3-2所示的初始类图。

                               图3-1 用例图

                               图3-2 类图

问题1(6分)

根据说明中的描述,给出图3-2中的C1~C8所对应的类名。

问题2(5分)

根据说明中的描述,给出图3-2中的类C1~C4的关键属性。

问题3(4分)

在该系统的开发过程中遇到了新的要求:用户能够在系统中对其所关注的数字资源注册他引通知,若该资源的他引次数发生变化,系统可以及时通知该用户。为了实现这个新的要求,可以在图3-2所系的类图中增加哪种设计模式?用150字以内文字解释选择该模式的原因。

试题五(15分)

阅读下列说明和C++代码,将应填入(n)处的字句写在对应栏内

在某系统中,类interval代表由下界(lower bound)和上界(upper bound)定义的区间。要求采用不同的格式显示区间范围。如[lower bound , upper bound];[lower bound...upper bound];[lower bound-upper bound] 等。

现采用策略(strategy)模式实现该要求,得到如图5-1所示的类图。

                           图5-1类图

   

 

 

试题六(15分)

阅读下列说明和Java代码,将应填入 (n)处的字写在答题纸的对应栏内

在某系统中,类interval代表由下界(lower bound)和上界(upper bound)定义的区间。要求采用不同的格式显示区间范围。如[lower bound.upper bound]:[lower bound...upper bound];[lower bound-upper bound]等现采用策略(strategy)模式实现该要求,得到如图6-1所示的类图。

 

 

 

2023年上半年软件设计师下午真题及答案解析

试题一(15分)

问题1(4分) 单击此链接查看真题解析视频2023软考--软件设计师-下午历年真题解析视频(第三期)-学习视频教程-腾讯课堂

E1: 平台管理员   E2: 农户   E3: 租户    E4: 第三方软件

问题2(4分)

D1: 用户信息表   D2: 基地及地块信息表   D3:农事过程信息表   D4: 农事活动记录表

问题3(4分)

  

 

问题4(3分)

地块信息、农事过程信息、农事活动记录。

试题二(15分)

问题1(5分)

 

问题2(3分)

(a)零件的编码    (b)采购数量

主键为组合主键(车型编号,供应商名称,零件编码,采购日期);

外键:车型编号,供应商名称,零件编码。

问题3(7分)

(1)

(2)

门店(门店编号,地址,电话)  主键:门店编号

销售(门店编号,车型编号,销售数量,销售日期) 组合主键:(门店编号,车型编号, 销售日期),外键:门店编号、车型编号

试题三(15分)

问题1(6分)

C1: Resource或学术资源       C2: Conference Paper或会议论文

C3: Journal Article或期刑论文   C4: Thesis或学位论文

C5: User或系统用户      C6: Student或在校学生   C7: Teacher或教师

C8: staff或其他在职人员   (C6-C8可互换)

问题2(5分)

C1: 题名、作者、发表时间、来源、被引次数、下载次数

C2: 会议名称、召开时间、召开地点

C3: 期刊名称、出版月份、期号、主办单位

C4: 学位类别、毕业学校、专业、指导教师

(C1为父类定义公共属性,子类只需定义特有的属性,公共属性从父类继承)

问题3(4分)

观察者模式。观察者模式定义对象间的一对多的关系关系,当一个对象的对象状态发生改变时,所有依赖于它的对象都得到通知并自动更新。符合系统需求。

试题五(15分)

(1) virtual void doPrint(lnterval *val) = 0

(2) prt->doPrint(this);

(3) st = new PrintlntervalsComma()

 (4) st = new PrintlntervalsDots()

(5) st = new PrintlntervalsLine()

试题六(15分)

(1) void doPrint (interval val)

(2) pr.doPrint(this)

(3) st= new PrintIntervalsComma()

(4) st= new PrintIntervalsDots()

(5) st = new PrintIntervalsLine()

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

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

相关文章

msvcp120.dll丢失的解决方法?哪种解决方法比较常用?

msvcp140.dll是Microsoft Visual C Redistributable的一部分,它是Windows操作系统中的一个动态链接库文件。这个文件包含了许多C标准库函数的实现,对于一些依赖C标准库的应用程序来说,msvcp140.dll是非常重要的。msvcp140.dll的主要用途是提供…

python编程中有哪些方便的调试方法

大家好,给大家分享一下一个有趣的事情,很多人还不知道这一点。下面详细解释一下。现在让我们来看看! 对于每个程序开发者来说,调试几乎是必备技能。常用Pycharm编辑器里的方法有Print大法、log大法,但缺少类似Matlab的…

2024浙大MBA/MEM/MPA四个月冲刺备考策略

近期收到很多考生的咨询:距离联考就仅剩四个多月的时间,这个管理类联考的难度如何?主要考些什么内容?现在才开始备考还有希望上岸浙大吗?是不是要等到明年在开始备考比较合适?那么今天在这里小立老师就跟大…

《凤凰架构》第二章——访问远程服务

前言 这章挺难的,感觉离我比较远,不太好懂,简单记录吧。 这章主要讲访问远程服务,主要对比了RPC和REST的区别,可以结合知乎上的文章《既然有 HTTP 请求,为什么还要用 RPC 调用?》 这篇文章进行…

电脑提示丢失(或找不到)msvcp120.dll解决办法

msvcp140.dll是Microsoft Visual C Redistributable的一部分,它是Windows操作系统中的一个动态链接库文件。这个文件包含了许多C标准库函数的实现,对于一些依赖C标准库的应用程序来说,msvcp140.dll是非常重要的。msvcp140.dll的主要用途是提供…

学计算机只能是赛博打灰人?转嵌入式你就已经稳了!

最近有很多大一新生问我,自己不小心被录到计算机专业了,是不是以后最好就只能大厂996,做赛博打灰人,然后三十五岁直接被优化呢? 我说,你这种人正是嵌入式最需要的人,进入嵌入式行业不仅天然具有…

使用EasyExcel实现Excel表格的导入导出

使用EasyExcel实现Excel表格的导入导出 文章目录 使用EasyExcel实现Excel表格的导入导出1.集成easyExcel2.简单导出示例实体与excel列的映射导出excel的代码 3.Excel复杂表头导出与实体的映射导出代码 3.Excel导入 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们…

[uni-app] uview封装Popup组件,处理props及v-model的传值问题

文章目录 需求及效果遇到的问题解决的办法偷懒的写法 需求及效果 uView(1.x版本)中, 有Pop弹出层的组件, 现在有个需求是,进行简单封装,有些通用的设置不想每次都写(比如 :mask-custom-style"{background: rgba(0, 0, 0, 0.7)}"这种) 然后内部内容交给插槽去自己随…

js fetch请求中断的几种方式

1、通过AbortController 这是官方标准手段,真正意义的阻止请求(不支持ie) 后端接口设置的两秒返回数据 function myFetch() {const controller new AbortController();const signal controller.signal;fetch(http://localhost:3000/aaa/…

学习笔记|按键原理|消抖|按键点灯的4种模式|STC32G单片机视频开发教程(冲哥)|第七集:按键点灯

文章目录 第六集(下)课后练习解答:SOS求救灯光编写求救信号原理冲哥代码及解析分模块设计:math.h:math.c:while主程序部分 按键点灯(下)1.按键的原理Tips:按键消抖 2.按键的代码实现…

【java安全】Log4j反序列化漏洞

文章目录 【java安全】Log4j反序列化漏洞关于Apache Log4j漏洞成因CVE-2017-5645漏洞版本复现环境漏洞复现漏洞分析 CVE-2019-17571漏洞版本漏洞复现漏洞分析 参考 【java安全】Log4j反序列化漏洞 关于Apache Log4j Log4j是Apache的开源项目,可以实现对System.out…

【新书介绍】数字图像处理——基于OpenCV-Python

新书介绍:《数字图像处理——基于OpenCV-Python》 入手图像处理的小伙伴,应该先学数字图像处理课程,还是直接上手OpenCV呢?《数字图像处理——基于OpenCV-Python》的作者,也曾面临同样的困扰。作者的选择是一边学习理论…

《离散数学及其应用(原书第8版)》ISBN978-7-111-63687-8 第11章 11.1.3 树的性质 节 第664页的例9说明

《离散数学及其应用(原书第8版)》ISBN978-7-111-63687-8 第11章 11.1.3 树的性质 节 第664页的定理3的引申 定理3 带有i个内点的m叉树含有nmi1个顶点 见本人博文 内点定义不同的讨论 如果对于一个m叉正则树,即任意分支节点的儿子恰好有m个&am…

linux第三阶段--第三方软件(一)MySQL的概述和二进制安装(官网版)

MySQL介绍及安装 一、MySQL概述 DB2 POSTGRE-SQL 1、关系型数据库与非关系型数据库 RDBMS(relational database management system),既关系型数据库管理系统。 简单来说,关系型数据库,是指采用了二维表格来组织数…

成为项目经理需要哪些条件或证书?

首先,要成为一个项目经理,需要具备以下几种管理能力,这样公司才会信任你并把项目交给你。 1.人员开发能力 1.作为项目经理,需要创造一个学习的环境,让员工从工作中、从所经历或观察到的情况中获取知识。例如&#xf…

dB(分贝)定义及其应用(音量 dB dBA 计算 调整)

一、dB的诞生背景 dB是英文“decibel”的简写,其中,deci表示十分之一,Bel表示“贝”。Decibel,分贝就是十分之一贝。“贝”是“贝尔”的简称,是以杰出科学家Alexander Graham Bell的名字来命名的单位。贝尔在1876年获…

【3Ds Max】图形合并命令的简单使用

示例(将文字设置在球体上) 1. 首先这里创建一个球体和一个文本 2. 选中球体,在复合对象中点击图形合并按钮 点击“拾取图形”按钮,然后选中文本,此时可以看到球体上已经投射出文本 3. 接下来是一些常用参数的介绍 当…

必看!这篇破万字!国字头研究所,就业无敌!

我不进行报考院校的推荐,但我会做充足客观的数据分析,帮助大家进行报考前的千层博弈。这个择校分析专题会为大家结合:初试复试占比、复试录取规则(是否公平)、往年录取录取名单、招生人数、分数线、专业课难度等进行分…

fastapi发布web配置页面

fastapi发布web配置页面 FastAPI 是一个基于 Python 的快速 Web 开发框架,它提供了许多功能来简化 Web 开发过程。其中一个重要的功能是能够轻松地创建 API 文档页面。 在 FastAPI 中,可以使用 OpenAPI 和 Swagger 来创建 API 文档页面。下面是一个简单…

OLED透明屏与传统显示屏的区别:探索未来视觉体验的新里程碑

OLED透明屏作为一种新兴的显示技术,与传统显示屏相比,具有许多独特的特点和优势。 那么,在这篇文章中,尼伽便通过比较OLED透明屏和传统显示屏的区别,包括透明性、对比度、色彩表现力、节能环保等方面,为读…