SE考研真题总结(一)

本帖开始分享考研真题中设计【软件工程】的部分,预计会出5期左右,敬请期待~

一.单选题

1.程序编写不是软件质量保障过程~

        静态代码扫描是今年来多数被人提及的软件应用安全解决方案之一,指程序员在编写好代码后无需进行编译,直接通过一些扫描工具发现语义缺陷、安全漏洞的解决方案~

2.确认测试用以验证需求

  • 目的是要表明软件是可以工作的,并且符合需求规格说明书中的全部要求~
  • 通过对组合测试的软件进行的~

3.里氏替换原则体现了子类替换父类不影响程序的逻辑和运行~

4.配置管理的活动:

  • 版本管理
  • 标识配置项
  • 变更控制

5.策略模式定义了一系列算法,并将每个算法封装起来,使他们之间可以相互替换,且算法的变化不会影响使用算法的客户;属于对象行为模式,通过对算法进行封装,把使用算法的责任和算法的实现分割开来,并委派给不同的对象对这些算法进行管理~

6.关于敏捷过程的正确描述:

  • 个体与互动:高于流程和工具
  • 工作的软件:高于详尽的文档
  • 客户合作:高于合同谈判
  • 响应变化:高于遵循计划

也就是说,尽管右项有其价值,敏捷方法更重视左想的价值~

7.持续集成包含如下哪些:

持续集成也是一种增量集成方法,但它提供尽早集成和频繁集成~

  • 尽早集成是指不需要总是等待一个模块开发完成后才把他集成起来,而是在开发之处就利用sub集成起来
  • 频繁集成式指开发者每次完成一些开发任务之后,就可以利用开发结果替换sub中的相应组件,进行集成与测试。一般来说,每人每天至少集成一次,也可以多次~

8.视图的4+1模型

  • 逻辑视图:显示系统中对象和对象类的一些主要抽象~
  • 进程视图:显示在运行时系统是如何组织为一组交互的进程,主要关注非功能系统特征~
  • 开发视图:显示软件是如何为了开发而被分解的~
  • 物理视图:显示系统硬件和系统中软件组件是如何分布在处理器上的~

9.确认测试时需要:需求规格说明文档

确认活动式检验开发者是否建立了正确的系统,确保最终产品符合产品规格,所以是基于需求的~

10.在数据库系统中,开闭原则可以满足不修改源代码的情况下更改数据库驱动程序~

二.简答题

1.功能性需求和非功能性需求的区别?

  • 功能需求:功能需求是和系统主要工作相关的需求,即在不考虑物理约束的情况下,用户希望系统所能够执行的活动~
  • 非功能需求:除功能以外的软件需求,主要包括性能需求、质量属性、对外接口和约束~

2.黑盒测试和白盒测试方法的区别?

  • 黑盒测试:把测试对象看做一个黑色盒子,完全基于输入和输出数据来判断测试对象的正确性~(主要方法有等价类划分、边界值分析、决策表和状态转换等)
  • 白盒测试:白盒测试把测试对象看作是透明的,不关心测试对象的规格,而是按照测试对象内部的程序结构来设计测试用例进行测试工作,最常用的方法有语句覆盖、路径覆盖和信息隐藏等~

3.为什么要使用信息隐藏?

每一个模块都隐藏了这个模块中关宏宇重要设计决策的实现,以至于只有这个模块的每一个组成部分才知道具体的实现细节,信息隐藏就是利用抽象的方法,抽象出每个类的关键细节,也就是模块的职责,外部不需要知道对象内部的复杂程度,信息隐藏的目的就是为了做到模块与模块尽可能独立,便于修改,保证对象数据的一致性、完整性,实现高内聚、低耦合,提高软件的可扩展性和维护性~

4.抽象和分解的关系

  • 分解:横向的将系统分割为几个相对简单的子系统及各子系统之间的关系,分解之后只需要关注经过抽象的相对简单的子系统技巧相互间的关系,从而降低了复杂度~
  • 抽象:在纵向上聚焦给子系统的接口,抽象可以分离接口与实现过程,让人更好地关注系统本质,从而降低复杂度

分解和抽象一般是一起作用的,可以将系统分解为子系统,又通过抽象分离接口与实现~

5.重构是什么,以及在什么情况下回发生

  • 修改软件系统的严谨方法,在不改变代码外部表现(即系统功能)的情况下改进其内部结构(即提升详细设计结构的质量~)
  • 重构发生在新功能增加完成之后,用于消除新功能带来的负面影响~

6.单元测试、系统测试、集成测试的区别 

  • 单元测试:测试一个单元接口,是对软件设计的最小单位进行正确性检验的测试工作
  • 集成测试:测试多个单元接口,即对程序模块一次性或采用增量方式组装起来,对系统的接口进行正确性检验的测试工作
  • 系统测试:测试全部单元接口,测试关注整个系统的行为,但愿测试和集成测试更加关注技术上的正确性,重点在于发现设计缺陷和代码缺陷,系统测试更关注不符合需求的缺陷和需求自身的内在缺陷 

三.代码相关大题 

1.

 

2.

 

 

 

3.

4.

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

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

相关文章

【数据结构】—红黑树(C++实现)

🎬慕斯主页:修仙—别有洞天 💜本文前置知识: AVL树 ♈️今日夜电波:Letter Song—ヲタみん 1:36━━━━━━️💟──────── 5:35 …

深度学习毕设思路--yolov5的使用方法

1. 安装依赖项 确保你已经安装了以下依赖项: pip install -U -r requirements.txt 2. 数据准备 确保你有一个包含训练图像和相应标签的数据集。YOLOv5要求标签文件的格式为 YOLO 格式。 3. 训练模型 使用以下命令进行模型训练: python train.py --i…

WPS开发文档

WPS官网的WPS开放平台开发文档,摘抄一些以记录及作为文档的入口记录,以后对WPS表格的操作编程再也不是从网上搜索到的只字片语了^_^。 Workbook.SaveAs 在另一不同文件中保存对工作簿所做的更改。 语法 express.SaveAs(Filename, FileFormat, Passwo…

基于SpringBoot的大学活动平台

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍: 随着互联网技术的不断…

【C++】时间time库

time 文章目录 timetime_tstruct tm示例 linux下存储时间常见的有两种存储方式,一个是从1970年到现在经过了多少秒,一个是用一个结构来分别存储年月日时分秒的。 time_t 这种类型就是用来存储从1970年到现在经过了多少秒,要想更精确一点&…

天池SQL训练营(二)-SQL基础查询与排序

-天池龙珠计划SQL训练营 Task02:SQL基础查询与排序 SQL训练营页面地址:https://tianchi.aliyun.com/specials/promotion/aicampsql 一、SELECT语句基础 1.1 从表中选取数据 SELECT语句 从表中选取数据时需要使用SELECT语句,也就是只从表…

扩散模型diffusion model用于图像恢复任务详细原理 (去雨,去雾等皆可),附实现代码

文章目录 1. 去噪扩散概率模型2. 前向扩散3. 反向采样3. 图像条件扩散模型4. 可以考虑改进的点5. 实现代码 话不多说,先上代码: 扩散模型diffusion model用于图像恢复完整可运行代码,附详细实验操作流程 令外一篇简化超分扩散模型SR3来实现图…

红队系列-内网横向

内网横向 渗透测试-内网横向MS-17010利用方法总结原理介绍漏洞利用MSFLadon 渗透测试-从公有云到内网漫游RCE-反序列化-frp0x01 前言0x02 前期打点0x03 想办法打内网0x04对上面的IP进行渗透0x05 愉快的内网漫游 windows凭据窃取MimikatzProcdumpGet-PassHashes.ps1 Windows远程…

75 内建函数对象-关系仿函数

#include <iostream> #include <string> #include <functional> #include <vector> #include <algorithm>using namespace std;//内建仿函数-关系仿函数 // 使用内建函数对象的时候&#xff0c;需要引入头文件 functionalvoid printVector(vecto…

08-中介者模式-C语言实现

中介者模式&#xff1a; Define an object that encapsulates how a set of objects interact.Mediator promotes loose coupling by keeping objects from referring to each other explicitly,and it lets you vary their interaction independently.&#xff08;用一个中介对…

04 ECharts基础入门

文章目录 一、ECharts介绍1. 简介2. 相关网站3. HTML引入方式4. 基本概念 二、常见图表1. 柱状图2. 折线图3. 饼图4. 雷达图5. 地图 三、应用1. 动画2. 交互 一、ECharts介绍 1. 简介 ECharts是一个使用JavaScript实现的开源可视化库&#xff0c;用于生成各种图表和图形。 EC…

Mysql多表查询 思路 ——示例——sql顺序

参考练习题&#xff1a;https://blog.csdn.net/weixin_49627122/article/details/126380916 SQL顺序 在 SQL 查询中&#xff0c;SELECT 语句的执行顺序不是按照查询语句的书写顺序执行的&#xff0c;而是按照逻辑执行阶段来进行。一般来说&#xff0c;SQL 查询的执行顺序可以…

北斗网格二维编码

东经为 E —— east:东方 西经为 W —— west:西方 南纬为 S —— south:南方 北纬为 N —— north 将计算好的编码添加到列表中 my_list [1, 2, 3] my_list.append(4) 参考文献 一级北斗网格计算 高等地图学作业_已知经纬度求图幅编号_.Vector的博客-CSDN博客 其他级别…

spring面试题—— 事务

一&#xff1a;Spring事物是什么&#xff1f; spring事务的本质是底层数据库对事务的支持&#xff0c;spring并不直接管理事物&#xff0c;而是提供了多种事务管理器&#xff0c;具体的实现由持久化框架自己来做。 二&#xff1a;Spring为什么需要事物&#xff1f; add方法&…

如何使用jszip文件格式转换与批量打包成zip下载

文章目录 概要技术细节文件下载小结 概要 在前端开发中&#xff0c;我们经常需要处理文件的格式转换和下载。本文将介绍如何通过 JavaScript 实现将文件 URL 转换为 Blob 类型格式或者 arraybuffer 格式&#xff0c;并通过 JSZip 库实现文件的压缩和下载。 技术细节 先安装所…

数据清洗、特征工程和数据可视化、数据挖掘与建模的主要内容

1.4 数据清洗、特征工程和数据可视化、数据挖掘与建模的内容 视频为《Python数据科学应用从入门到精通》张甜 杨维忠 清华大学出版社一书的随书赠送视频讲解1.4节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。内容涵盖数据科学…

vue3.2版本setup语法糖

setup语法糖&#xff1a; 一、Vue3.0 <script>里定义的变量、属性和方法必须 return 出来&#xff0c;<template>中才能使用&#xff1b;这样会导致在页面上变量会出现很多次。vue3.2只需在script标签中添加setup&#xff0c;就可以帮助我们解决这个问题,无需再写…

JVM 对象内存布局篇

对象的实例化 创建对象有哪些方式&#xff1f; 1、new对象 最常见的方式 变形1:X的静态方法 变形2:XxxBuilder/XxxFactory的静态方法 2、Class的newlnstance0:反射的方式&#xff0c;只能调用空参的构造器&#xff0c;权限必须是public 3、Constructor的newinstance(X):反射的…

软件多开助手的创新使用:在同一设备上玩转多个游戏

软件多开助手&#xff1a;在同一设备上玩转多个游戏的创新使用 随着科技的不断发展&#xff0c;手机和电脑已经成为我们生活中必不可少的工具。众多游戏爱好者也越来越追求在同一设备上同时体验多个游戏的乐趣。而软件多开助手的出现为这一需求提供了创新的解决方案。 传统上…

可视化监管云平台EasyCVR宠物粮食食品厂智能视频监控方案

由于我国养宠物群体的不断膨胀&#xff0c;宠物市场也占据了经济的很大一部分&#xff0c;宠物做为人类的好朋友&#xff0c;可以给人们带来极高的精神抚慰&#xff0c;作为“毛孩子”家长&#xff0c;爱宠人士自然不会亏待自家宠物&#xff0c;都会选择最好的口粮以供宠物食用…