当前位置: 首页 > news >正文

【软考系统架构设计师】2023年系统架构师冲刺模拟习题之《软件工程》

在软考中软件工程模块主要包含以下考点:

文章目录

    • 软件过程模型🌟🌟🌟🌟
    • 逆向工程🌟
    • 基于构件的软件工程🌟🌟
    • 软件开发与软件设计与维护
    • 净室软件工程
    • 软件模型
    • 软件需求

软件过程模型🌟🌟🌟🌟

【1】以下关于软件开发方法的叙述,正确的是()。
A、结构化开发方法是建立在严格数学基础上的软件开发方法
B、正向工程是指不仅从现有系统中恢复设计信息,而且使用该信息去改变或重构现有系统,以改善其整体质量
C、重构是指借助工具从已有程序中抽象出有关数据设计、总体结构设计和过程设计等方面的 信息
D、面向对象的方法以粗粒度、松散耜合和基于标准的服务为基础,增强了系统的灵活性、可复用性和可演化性

答案选择B
A项是形式化方法、C项重构是同一抽象维度、D项是面向服务
记住正向工程的概念

逆向工程🌟

【2】逆向工程是设计的恢复过程,它包括了多个抽象级别,其中( )反映程序分量或程序诸实体与应用领域概念之问对应关系的信息。
A、实现级
B、结构级
C、领域级
D、功能级

答案选择C
实现级:包括程序的抽象语法树、符号表、过程的设计表示
结构级:包括反映程序分量之问相互依赖关系的信息,例如调用因、结构圈、程序和数据结构
功能级:包括反映程序段功能及程序段之间关系的信息,例如数据和控制流模型
领域级:包括反映程序分量或程序诸实体与应用领域概念之间对应关系的信息,例如实体关系模型
逆向工程是分析程序、力图在比源代码更高抽象层次上建立程序的表示过层。领域级抽象级别最高,完备性最低,实现级抽象级别最低,完备性最高。

【3】() 是在逆向工程所获取信息的基础上修改或重构已有的系统,产生系统的一个新版本。
A、逆向分析 (Reverse Analysis)
B、重组(Restructuring)
C、设计恢复 (Design Recovery)
D 、重构工程 (Re-engineering)

重构已有的系统并产生一个新系统,表示再工程,所以选择D,主要看英文翻译,

【4】以下关于开发模型,说法正确的是( )。
A、统一过程将软件开发流程分成多个阶段,每一个阶段都由目标设定、风险分析、开发和有效性验证以及评审构成
B、用户不能很好地参与到需求分析中时,采用快速应用开发较为合适
C、快速原型法主要由原型开发阶段和目标软件开发阶段构成
D、快速应用开发通过引入原型思想获得快速开发能力

答案选择 C
A项统一过程的阶段是:初始、细化、构建和移交,而A选项中的描述应该是螺旋模型的内容;B项快速应用开发一般是在需求明确的基础上进行;D项并不是引入原型思想而是引入构件化思想

基于构件的软件工程🌟🌟

【4】统一过程开发方法分( )四个阶段,每次通过这四个阶段就会产生一代软件。统一过程
开发方法从另一个维度看,RUP 中有9个核心工作流,分为6个核心过程工作流和3个核心支持工作流,其中不属于核心过程工作流的是( )。
A.初始、细化、构建和移交
B.需求分析、软件设计、编码实现、运行维护
C.需求分析、概要设计、详细设计、编码
D.初始分析、设计、构建和移交
A.需求工作流
B.项目管理工作流
C测试工作流
D.商业建模工作流

答案选择 A、B
9个核心工作流
6个核心过程工作流:业务建模、需求、分析与设计、实现、测试、部署
3个核心支持工作流:配置与变更管理、项目管理、环境

【7】以下关于开发方法与开发模型的说法正确的是( )。
A、统一过程强调用例驱动以架构为中心,在构建阶段将完成架构设计工作
B、敏捷方法强调小步快跑的方式开发软件,所以它是预设性的
C、敏捷方法以瀑布模型开发思想为基础,采用迭代式增量开发
D、功用驱动开发方法(FDD) 中,会把编程开发人员分成两类:“首席”程序员和 “类”程序员

答案选择 D
A选项是在细化阶段完成架构设计工作;B选项小步快跑的方式是适应性的;C选项敏捷方法是以原型开发思想为基础。
另外还需要记住D选项:首席程序员和类程序员

敏捷方法的核心思想内容:

  • 是适应型,而非预测型
  • 是迭代增量式(小步快跑)的开发过程
  • 是以人为本而非过程为本
  • 适合小型项目

软件开发与软件设计与维护

【8】以下关于需求获取方法的叙述中,正确的是( )。
A、问卷调查可以在短时间内,以低廉的价格从大量的回答中收集数据
B、用户访谈是最为灵活、成本最低的一种需求获取方法
C、抽样能够提高需求获取效率,且不会受到系统分析师的主观因素影响
D、用户访谈的成功与否与系统分析师的人际沟通能力无关

答案选择A
B选项:用户访谈是成本最高的一种,毕竟有人力和时间成本
C选项:说法有点绝对,会受到主观因素影响
D选项:用户访问肯定和沟通能力有关系啊

【9】以下关于需求工程的描述中,正确的是( )。
A、需求定义过程结束时会产生SRS, SRS也被称为需求基线,是指导后续开发的重要文档
B、需求变更流程一般包括:问题分析与变更描述、变更分析与成本计算、变更实现等步骤
C、需求本质上来讲是用户对待开发系统的期望,用户提出的所有需求都同等重要
D、需求管理是对需求开发过程进行严格管控的方法论

答案选择B
A项:SRS需求规格说明书,SRS是在需求基线的基础上的产出。
C项:需求也会有优先级
D项:需求管理管的是需求基线。

【10】UML2.0所包含的图中,( )描述由模型本身分解而成的组织单元,以及它们之间的依赖关系。
A 组合结构图
B包图
部署图
D构件图

答案选择B

【11】 用例 (use case)用来描述系统对事件做出响应时所来取的行动。用例之间是具有相关性的。在一个“订单输入子系統”中,创建新订单和更新订单都需要核查用户账号是否正确。用例“创建新订单”、“更新订单” 与用例“核查客户账号”之间是()关系。
A包含 (include)
B扩展 (extend)
C分类 (classification)
D聚集 (aggregation)

答案选择A
都要用到某一种功能,是包含关系
注意区分包含、扩展、泛化概念

  • 包含关系:从多个用例中提取公共行为,提取出来的公共用例称为抽象用例,而把原始用例称为基本用例
  • 扩展关系:一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例。
  • 泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例,子用例继承了父用例所有的结构、行为和关系。

【12】在面向对象系统中,有两个类存在整体与部分的关系,如果部分可能同时属于多个整体,则两者之问的关系称为( );如果部分和整体具有统一的生命周期,则两者之问的关系称为()。
A、聚合关系
B、依赖关系
C、泛化关系
D、组合关系
A、聚合关系
B、依赖关系
C、泛化关系
D、组合关系
答案选择A、D
部分和整体的关系总共有两个:聚合和组合
在这里插入图片描述
在这里插入图片描述
答案选择A
描述的是父子关系即泛化关系

【14】软件测试一般分为两个大类:动态测试和静态测试。以下关于动态测试和静态测试的说法,正确的是()。
A基本路径测试和边界值分析属于动态测试
B逻辑覆盖属于静态测试方法
C外部采购的软件构件一般没有提供完整的原代码,此时采用白盒测试比较合适
D等价类划分法一般通过测试人员的经验和直觉找出软件最容易出错的地方

答案选择:A
B项:逻辑覆盖属于动态测试、
C项:没有源代码就只能黑盒测试
D项:属于错误推测法

【15】需求跟踪是提供了由需求到产品实现整个过程范围的明确查阅到能力。

【16】软件设计过程中,可以用耦合和内聚两个定性标准来衡量模块的独立程度,耦合衡量不同模块彼此间互相依赖的紧密程度,以下关于耦合的说法中正确的是()。
A、公共耦合的耦合性最高,所以要控制使用
B、标记耦合是指一组模块借助参数表传递简单数据
C、高耦合低内聚,耦合性越高越好
D、尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范国,完全不用内容耦合

答案选择:D

内容耦合耦合性最高
在这里插入图片描述

【17】以下关于面向对象设计原则的描述中,正确的是()。
A、迪米特原则是指开发过程中应该要依赖于抽象,而不是具体实现
B、李氏替换原则约定父类可以替换子类
C、单一职责原则认为使用多个专门的接口比使用单一总接口要好
D、依赖倒置原则认为应针对接口编程,不要针对实现编程

答案选择:D
七大原则
在这里插入图片描述

【18】软件确认测试也称为有效性测试,主要验证( )。确认测试包括( )。
A、系统中各个单元模块之间的协作性
B、软件与硬件在实际运行环境中能否有效集成
C、软件功能、性能及其他特性是否与用户需求一致
D、程序模块能否正确实现详细设计说明中的功能、性能和设计约束等要求
A 、黑盒测试和白盒测试
B、一次性组装测试和增量式组装测试
C、内部测试、Alpha、Beta 和验收测试
D、功能测试、性能测试、用户界面测试和安全性测试

答案选择:C、C

【19】在静态测试中,主要是对程序代码进行静态分析。“按照结构化程序规则和程序结构的基本要求进行程序结构检查〞 属于静态分析中的( )。
A、接口分析
B、表达式分析
C、控制流分析
D、数据流分析

答案选择:C
A 选项关注的是接口,B项关注的是表达式;C项关注的是程序结构和流程;D项数据流关注的是数据

【20】软件文档是影响软件可维护性的决定因素。软件的文档可以分为用户文档和系统文档两类。以下关于用户文档和系统文档的说法中,错误的是( )。
A、用户文档主要描述所交付系统的功能和使用方法,并不关心这些功能是怎样实现的
B、系统文档是从问题定义、需求说明到验收测试计划这样一系列和系统实现有关的文档
C、系统使用手册属于系统文档
D、用户文档是了解系统的第一步,它可以让用户获得对系统准确的初步印象

答案选择:C
系统使用手册属于用户文档

【21】某搜索引擎在使用过程中,若要增加接受语音输入的功能,使得用户可以通过语音输入来进行搜索,此时应对系统进行( )维护。
A、正确性
B、适应性
C、完善性
D、预防性

答案选择:C
增加功能和改进功能都是完善性维护

【22】某在线教育系统软件在使用过程中,其数据库发生改变,为了适应这种变化,需要对软件进行修改。在这种情况下进行的维护活动称为( )。
A 改正性维护
B完善性维护
C预防性维护
D适应性维护

答案选择:D
常考题,需要区分四种维护活动的概念:
数据库不是应用软件的组成部分,属于环境变化,所以要适应环境而改变

【23】系统输入设计中应尽可能考虑人的因素,以下关于输入设计的一般原理中,错误的是()。
A、只让用户输入变化的数据
B、使用创新的模式吸引用户的眼球
C、表格中各个数据项应有提示信息
D、尽可能使用选择而不是键盘输入的方式获取数据

答案选择B
人机界面模式,B项一般不提供,越稳定越好。

【24】遗留系统的演化可以采用淘汰、继承、改造和集成四种策略。若企业中的遗留系统技术含量较低,但业务价值高,业务模型仍符合现在的应用需求,适合于采用()演化策略。
A、淘汰
B、继承
C、改造
D、集成

答案选择B
遗留系统是常考题,首先要记住横坐标和纵坐标分别是什么,横坐标是价值,纵坐标是技术含量,从第一象限到第四象限依次为:改造、集成、淘汰、继承

净室软件工程

【25】净室软件工程是一种应用数学与统计学理论以经济的方式生产高质量软件工程的技术,力图通过严格的工程化的软件过程达到开发中的零缺陷或接近零缺陷。以下技术手段中,()是净室软件工程的核心。
A、统计控制下的增量式开发
B、基于函数的规范和设计
C、正确性验证
D、统计测试和软件认证

答案选择C
严格基于数学的推理逻辑。

软件模型

【26】假设某软件公司与客户签订合同开发一个软件系统,系统的功能有较清晰的定义,但客户对交付时间有严格要求,则该系统的开发最适宜采用()。
A、瀑布模型
B、原型模型
C、V模型
D、螺旋模型

答案:A
解析:功能清晰,也即需求较明确,有这样的关键字都是考察瀑布模型,牢记总结的记忆关键字。

【27】以下关于螺旋模型的叙述中,不正确的是(
A.它是风险驱动的,要求开发人员必须具有丰富的风险评估知识和经验
B.它可以降低过多测试或测试不足带来的风险
C.它包含维护周期,因此维护和开发之间没有本质区别
D.它不适用于大型软件开发

答案:D
解析:螺旋模型的特点是风险分析,应对风险的都正确,螺旋模型适合大型软件开发。

软件需求

  • 业务需求:反映企业或客户对系统高层次的目标要求
  • 用户需求:描述的是用户的具体目标,或用户要求系统必须能完成的任务,即描述了用户能使用系统来做什么。
  • 系统需求:从系统的角度来说明软件的需求。
    • 功能需求:规定了开发人员必须在系统中实现的软件功能。
    • 非功能需求:系统必须具备的属性或品质。
    • 设计约束 :对系统的一些约束说明。

软件需求开发是指从情况收集、分析和评价到编写文档、评审等一系列产生需求的活动,分为获取情況、分析、(制订规格说明)和评审四个阶段。

某软件公司正在承担开发一个字处理器的任务。在需求分析阶段,公司的相关人员整理出一些相关的系统需求,其中,“找出文档中的拼写错误井提供一个替换项列表来供选择替换拼错的词”,属于(用户需求);显示提供替换词的对话框以及实现整个文档范围的替换,属于(功能需求);用户能有效地纠正文档中的拼写错位属于( 业务需求

相关文章:

【软考系统架构设计师】2023年系统架构师冲刺模拟习题之《软件工程》

在软考中软件工程模块主要包含以下考点: 文章目录 软件过程模型🌟🌟🌟🌟逆向工程🌟基于构件的软件工程🌟🌟软件开发与软件设计与维护净室软件工程软件模型软件需求 软件过程模型&am…...

非遗主题网站的设计与实现基于PHP实现

包括源码参考论文 下载地址: https://juzhendongli.store/commodity/details/18...

YOLO目标检测——红外人员数据集【含对应voc、coco和yolo三种格式标签+划分脚本】

实际项目应用:红外热像仪进行安全监控数据集说明:红外人员检测数据集,真实场景的高质量图片数据标签说明:使用lableimg标注软件标注,标注框质量高,含voc(xml)、coco(json)和yolo(txt)三种格式标签&#xff…...

C++项目——云备份-⑧-客户端各模块实现

文章目录 专栏导读1.客户端数据管理模块实现2.客户端文件检测模块实现3.客户端文件备份模块设计4.客户端文件备份模块实现 专栏导读 🌸作者简介:花想云 ,在读本科生一枚,C/C领域新星创作者,新星计划导师,阿…...

分享一款基于 AI 的 Chrome 插件

最近使用大模型比较多,公司虽然提供了免费的 ChatGPT 但是需要跳转特定页面才能访问,比较麻烦,于是就想到是否可以开发一款类似于有道词典一样的 Chrome 插件,可以在任意页面使用,虽然市面上也有类似的插件&#xff0c…...

Spring Authorization Server 1.1 扩展实现 OAuth2 密码模式与 Spring Cloud 的整合实战

目录 前言无图无真相创建数据库授权服务器maven 依赖application.yml授权服务器配置AuthorizationServierConfigDefaultSecutiryConfig 密码模式扩展PasswordAuthenticationTokenPasswordAuthenticationConverterPasswordAuthenticationProvider JWT 自定义字段自定义认证响应认…...

第二证券:AIGC概念活跃,焦点科技、三维通信涨停,万兴科技大涨

AIGC概念24日盘中走势生动,到发稿,万兴科技、三态股份涨超10%,焦点科技、三维通讯、我国科传等涨停,中文在线涨超9%,果麦文明、新国都涨约7%。 消息面上,各大电商途径于10月18-24日先后发动“双11”大促或…...

7-4、S加减速转动实现【51单片机控制步进电机-TB6600系列】

摘要:本节介绍实现步进电机S曲线运动的代码 一、目标功能 实现步进电机转动总角度720,其中加减速各90 加速段:加速类型:S曲线   加速角度:角度为90   起步速度:30RPM,   终止速度&#x…...

RK3568-pcie接口

pcie接口与sata接口 pcie总线pcie总线pcie控制器sata控制器nvme设备sata设备nvme协议ahci协议m-key接口b-key接口RC模式和EP模式 RC和EP分别对应主模式和从模式,普通的PCI RC主模式可以用于连接PCI-E以太网芯片或PCI-E的硬盘等外设。 RC模式使用外设一般都有LINUX驱动程序,安…...

spring监听请求执行结束,移除当前ThreadLocal数据两种方法

在开发过程中,很多时候我们会使用ThreadLocal来临时缓存数据,当一次数据请求执行完成后需要主动执行释放当前ThreadLocal缓存数据资源,防止未能及时释放导致下一次访问时候ThreadLocal依然保持上一次缓存的数据。 spring提供两种方式去监听一…...

知识图谱--Jena基础操作和检索推理应用

在上一篇读书笔记中讲到知识图谱存储主要有基于开源的Jena方式和基于图数据库(Neo4j)方式,本次主要对Jena的基础操作和如何应用进行了实践总结,同时结合了D2R,将结构化数据转换成Jena可以加载的格式(即RDF,后缀是.nt),Apache Jena作为一种开源的Java语义网框架,主要功…...

GEE python——将GEE ASSETS中存储的影像或者矢量转化为数据格式XEE()

数据转换器是内置于 getPixels、computePixels、listFeatures 和 computeFeatures 中的客户端转换能力。通过指定兼容的文件格式,这些方法可以返回 Python 原生格式的数据,如用于栅格的结构化 NumPy 数组和用于矢量的 Pandas DataFrames 或 GeoPandas GeoDataFrames。对于矢量…...

Java集合框架:List、Set、Map类型及泛型详解

文章目录 📕我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文创造者、技术文章评审老师、问卷调查设计师、个人社区创始人、开源项目贡献者。🌎跑过十五…...

Ubuntu 安装 docker

一.添加Docker官方GPG密钥 curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - 如果出现: The program curl is currently not installed. You can install it by typing: sudo apt install curl 先安装 curl : sudo apt inst…...

BUUCTF zip伪加密 1

BUUCTF:https://buuoj.cn/challenges 题目描述: 下载附件,得到一个zip压缩包。 密文: 解题思路: 1、刚开始尝试解压,看到了flag.txt文件,但需要解压密码。结合题目,确认这是zip伪加密&#…...

p5.js 到底怎么设置背景图?

本文简介 点赞 关注 收藏 学会了 在 《p5.js 光速入门》 里我们学过加载图片元素,学过过背景色的用法,但当时没提到背景图要怎么使用。 本文就把背景图这部分内容补充完整,并且会提到在 p5.js 里使用背景图的一些注意点。 背景图的用法…...

python+unittest+requests+HTMLRunner编写接口自动化测试集

问题描述: 搭建接口测试框架,执行用例请求多个不同请求方式的接口 实现步骤: ① 创建配置文件config.ini,写入部分公用参数,如接口的基本url、测试报告文件路径、测试数据文件路径等配置项 1 [DATABASE] 2 data_addre…...

Vue---监听div元素宽高改变时echart图表重新resize

一、需求描述 当点击上图的红色框时,echart的div元素宽会改变但是无法触发echarts图表的resize重新渲染,对于浏览器而言,浏览器具有window.resize方法监听浏览器窗口大小的改变,而div元素没有监听宽高改变的方法。 二、解决方案 …...

Kubernetes Etcd不可用日志:NOSPACE 的问题修复

两套k8s集群同一天同时出现etcd集群空间超过配额,kubectl get cs时发现所有的etcd均返回503报错,查看etcd的告警发现有NO SPACE的信息且 etcdctl --endpoints${ETCD_ENDPOINT} --cert${ETCD_CERTFILE} --key${ETCD_KEYFILE} --cacert${ETCD_CAFILE} endp…...

分组卷积的思想神了

大家好啊,我是董董灿。 最近,分组卷积帮我解决了一个大忙,事情是这样的。 这几天遇到一个头疼的问题,就是要在某一芯片上完成一个神经网络的适配,这个神经网络中卷积居多,并且有一些卷积的通道数很大&…...

后进先出(LIFO)详解

LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子&#xff08…...

synchronized 学习

学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

#Uniapp篇:chrome调试unapp适配

chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...

nnUNet V2修改网络——暴力替换网络为UNet++

更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...