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

软件工程应试复习(考试折磨版)

针对学校软件工程考试,参考教材《软件工程导论(第6版)》1-8章

学习的艺术:不断地尝试,我一定会找到高效用的方法,让学习变成一门艺术,从应试备考中解救出我的时间同胞们。

好嘞!既然时间紧迫,咱们就用「闪电战」学习法,把知识点当零食一样快速吞下(但记得消化哦🍔)!上攻略👇


🚀 三步速成秘籍(测试版):应试求生指南!

1. 开挂第一步:「抓大放小」狙击战!

  • 🔍 ​锁定BOSS级考点:翻开目录,用荧光笔把老师敲黑板的内容(PPT标⭐的地方)圈成「重点战区」!
  • 🎯 ​二八定律突击:用80%时间死磕20%高频考点(比如需求分析、软件测试),剩下的…随缘吧(佛祖微笑.jpg)

2. 记忆魔法:「戏精学习法」启动!

  • 🎭 ​给知识点加戏
    ✓ 把「白盒测试」想象成给代码做X光体检👨⚕️
    ✓ 用rap节奏背瀑布模型阶段:「需求→设计→编码→测试→维护~耶!」🎤
  • 🧠 ​脑洞联想法
    ✓ 记不住「高内聚低耦合」?想想优秀室友——各自专注学习(内聚),但绝不互相抄作业(低耦合)!

3. 考前48小时:「自救冲刺包」

  • 📝 ​A4纸大法
    1️⃣ 把每章核心概念写成关键词卡片(比如DFD=数据流图+四个元素)
    2️⃣ 贴在镜子/冰箱上,刷牙时瞄两眼,知识偷偷钻进脑子🧠!
  • 🤖 ​AI速问速答
    对Siri喊:「嘿Siri!问我三个软件生命周期阶段!」答错就罚自己吃一颗怪味糖🍬

💡 作弊级工具(合法版!)​

  • B站3倍速网课:直接搜「XX课程救命视频」,弹幕里还有学霸划重点!
  • 表情包笔记:把「黑盒测试」画成蒙眼猜箱子的熊猫🐼,考试时画面自动浮现!

​🚨 避坑!

❌ 别从头啃教材!——直接看课后习题,答案就是知识点GPS!
❌ 拒绝完美主义!——学会「战略性放弃」,60分万岁多一分浪费!(学霸请无视谢谢)
❌ 熬夜达咩!——考前一天疯狂睡觉,让大脑自动整理知识硬盘💤


​✨ 最后鸡汤(加辣版)​

记住:你不是一个人在战斗!
👉 抱紧学霸大腿问押题
👉 和室友成立「夸夸群」:背出一个知识点就互相放彩虹屁🌈
👉 考完立刻奖励自己火锅奶茶!毕竟…你的脑子刚跑完一场知识马拉松🏃♀️

冲鸭!考神附体buff已加载完毕✨

哥们,试过了记得回来说说效果咋样吧。

第一步:BOSS在哪儿? 

📚 ​软件工程考试重点归纳(二八法则版)​​ 🚀


🌟 第一级重点(20%内容 → 80%分数)​

1️⃣ ​软件生命周期与瀑布模型​ 🌊
  • 核心概念:需求分析→设计→编码→测试→维护的线性
  • BOSS记号🔥(可以在自己的书上画上一个这样的小记号哦)
  • 解释
    软件开发就像建造城堡,必须按步骤打地基(需求)、砌墙(设计)、封顶(编码)、检查漏洞(测试),最后定期修缮(维护)。

  • 想象你给朋友画房子,先问他想要几层楼(需求),再画设计图(设计),然后按图纸盖房(编码),完工后检查有没有裂缝(测试),住久了再装修(维护)。
2️⃣ ​需求分析的双核心:功能与非功能​ 💡
  • 核心概念
    • 功能需求(What):系统必须做什么(如购物车功能)
    • 非功能需求(How):系统如何做到(如响应速度<1秒)
  • BOSS记号
  • 解释
    需求是软件的“灵魂”。功能需求是目标,非功能需求是质量标尺。

  • 比如点外卖,功能需求是“送餐到我家”,非功能需求是“30分钟内送达”(否则你会饿死)。
3️⃣ ​数据流图(DFD)与E-R图​ 🧩
  • 核心概念
    • DFD:用箭头表示数据流动(如订单→支付→发货)
    • E-R图:用实体(用户)、属性(姓名)、关系(购买)建模数据
  • BOSS记号📊
  • 解释
    DFD是系统的“血液循环图”,E-R图是数据的“DNA图谱”。

  • 比如电商系统,DFD像河流:用户下单→支付→商家发货;E-R图像家庭树:用户、订单、商品之间有“购买”关系。

💡 第二级重点(30%内容 → 15%分数)​

4️⃣ ​可行性分析的三大支柱​ 🏛️
  • 核心概念:经济(成本收益)、技术(能否实现)、社会(用户习惯)
  • BOSS记号💰
  • 解释
    开发软件前要问:
    • “钱够不够?”(经济)
    • “技术能搞定吗?”(技术)
    • “用户会用吗?”(社会)

  • 比如开发“AI炒菜机”,需先确认:
    • 公司有钱研发(经济)
    • AI算法能识别食材(技术)
    • 普通人愿意买(社会)
5️⃣ ​模块化与结构化设计​ 🪧
  • 核心概念
    • 模块化:把大程序拆成独立小块(如积木)
    • 结构化设计:避免“意大利面条代码”(一团乱麻)
  • BOSS记号🔧
  • 解释
    好的软件像乐高积木,每个模块清晰且可替换。

  • 想象写文章,如果每段都是独立主题(模块化),修改起来轻松;如果全文混在一起(非结构化),改错时可能删掉整篇。
6️⃣ ​测试方法的金字塔​ 🧩
  • 核心概念
    • 单元测试(模块级)→集成测试(模块组合)→系统测试(整体功能)
    • 黑盒测试(功能验证) vs 白盒测试(代码检查)
  • 特殊记号🔍
  • 解释
    测试从“零件质检”到“整车试驾”。黑盒测试是直接开车,看是否到终点;白盒测试是拆开引擎,看每个零件是否正常。

  • 比如考试作弊检测:
    • 单元测试:检查每个答题卡扫描模块(单元)
    • 系统测试:模拟整个阅卷流程(系统)
    • 黑盒测试:随机抽卷验证总分正确性
    • 白盒测试:检查评分算法是否有漏洞

📌 备考策略(二八法则实践)​

  1. 聚焦一级重点:用80%时间掌握瀑布模型、需求分析、DFD/E-R图。
  2. 速览二级重点:用20%时间理解可行性分析、模块化设计、测试金字塔。
  3. 生动记忆法:把抽象概念比喻成生活场景(如盖房子、点外卖)。

🎯 考试箴言
“用20%的核心知识,撬动80%的分数!剩下的80%内容,考场上遇到再临时发挥~,我不会的别人也不会哈哈”

第二步:亮了血条的BOSS,还能叫BOSS吗?开涮 

📚 ​重点知识详解+实例狂飙!🚀
(用奶茶、网购、追星等超接地气案例,5分钟搞懂抽象概念!)


1️⃣ 软件生命周期与瀑布模型​ 🌊

🔥 核心解释
软件开发就像追星,必须按顺序打call:
1️⃣ ​需求分析:确认爱豆是谁(比如王xx)
2️⃣ ​设计:制定追星计划(买票、做灯牌)
3️⃣ ​编码:实际执行(抢票+现场尖叫)
4️⃣ ​测试:检查是否成功(拍到照片了吗?)
5️⃣ ​维护:长期支持(持续关注新剧)

💡 实例分析

  • 案例1:奶茶店点单系统

    • 需求:顾客要手机选奶茶甜度
    • 设计:设计下单界面和支付流程
    • 编码:程序员写代码
    • 测试:让店员试点击溃系统(疯狂点100杯)
    • 维护:更新新口味(比如香菜奶茶🤢)
  • 案例2:校园二手交易APP

    • 需求:学生想卖旧书
    • 设计:商品发布+私聊功能
    • 测试:故意上传违规内容看是否被屏蔽
  • 案例3:健康码系统

    • 需求:实时显示核酸结果
    • 维护:疫情政策变化时疯狂更新规则

2️⃣ 需求分析:功能vs非功能​ 💡

⚡ 核心解释

  • 功能需求:系统能做什么 → 像菜单上的菜品
  • 非功能需求:系统怎么做到 → 像餐厅环境和服务速度

💡 实例分析

  • 案例1:在线购物车

    • 功能:加购、删除、结算
    • 非功能:结算按钮必须在0.5秒内响应(否则用户暴躁)
  • 案例2:微信朋友圈

    • 功能:发图文、点赞
    • 非功能:1万人同时点赞不卡顿(顶流爱豆发动态时)
  • ​案例3:游戏《原神》

    • 功能:打怪、抽卡
    • 非功能:手机不发烫、加载地图不卡(否则玩家怒删游戏)

3️⃣ 数据流图(DFD)与E-R图​ 🧩

📊 核心解释

  • DFD:展示数据怎么流动 → 像快递物流地图
  • E-R图:定义数据关系 → 像家族族谱图

💡 实例分析

  • 案例1:图书馆借书系统

    • DFD
      读者→查询图书→系统→显示库存→借阅成功
      (箭头就是数据流动路径)
    • E-R图
      👨🎓读者(属性:学号、姓名)
      📚图书(属性:ISBN、书名)
      🔗关系:借阅(一个读者可借多本书)
  • 案例2:微博热搜系统

    • DFD
      用户发博→系统统计关键词→生成热搜榜→推送给所有人
    • E-R图
      👩💻用户(属性:ID、昵称)
      🔥热搜(属性:关键词、热度值)
      🔗关系:发布(用户→微博)、上榜(微博→热搜)
  • 案例3:外卖平台

    • DFD
      用户下单→商家接单→骑手取餐→送达用户
    • E-R图
      🛵骑手(属性:工号、位置)
      🍔订单(属性:金额、状态)
      🔗关系:配送(骑手→订单)

🎯 重点小结

  • 瀑布模型:按步骤追星,一步都不能跳!
  • 需求分析:功能是「做什么」,非功能是「不能拉胯」
  • DFD/E-R图:DFD看数据怎么跑,E-R图看数据谁和谁搞关系

🔥 灵魂拷问
试着用「外卖系统」的例子,画出:

  1. 瀑布模型的5个阶段
  2. 列出3个功能需求+非功能需求
  3. 用DFD箭头表示订单如何从用户到骑手

(答对奖励自己一杯奶茶,答错就再读一遍案例!)

相关文章:

软件工程应试复习(考试折磨版)

针对学校软件工程考试&#xff0c;参考教材《软件工程导论&#xff08;第6版&#xff09;》1-8章 学习的艺术&#xff1a;不断地尝试&#xff0c;我一定会找到高效用的方法&#xff0c;让学习变成一门艺术&#xff0c;从应试备考中解救出我的时间同胞们。 好嘞&#xff01;既然…...

【JAVAEE】多线程

【JAVAEE】多线程 一、进程1.1 进程的定义1.2 进程和线程的联系 二、线程2.1 JConsole工具2.2 创建线程2.2.1 Thread类&#xff0c;start&#xff08;&#xff09;&#xff0c;run&#xff08;&#xff09;2.2.2 继承Thread类2.2.3 实现Runnable接口2.2.4 匿名内部类2.2.5 使用…...

5.10 P-Tuning v2:多层级提示编码的微调革新

P-Tuning v2:多层级提示编码的微调革新 一、技术架构解析 #mermaid-svg-4Wy6vkXZi67hY9PZ {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-4Wy6vkXZi67hY9PZ .error-icon{fill:#552222;}#mermaid-svg-4Wy6vkXZi67h…...

LLM中的Benchmark是什么

LLM中的Benchmark是什么 “DeepSeek推动价值重估Benchmark” DeepSeek这家公司或其相关技术的发展,促使Benchmark这家机构对相关资产或企业的价值进行重新评估。“Benchmark”在这里是一家研究机构或金融分析机构。 “Benchmark”常见的意思是“基准;水准点,基准点”,作…...

PMP项目管理—整合管理篇—6.实施整体变更控制

文章目录 基本信息4W1HITTO输入工具与技术输出 变更请求请求时间修改内容变更来源变更类型 实施已批准变更的形式纠正措施预防措施缺陷补救更新 变更控制工具 实施整体变更控制规则态度规则项目变更控制委员会&#xff08;CCB&#xff09;变更应对分析计划、执行期后期或收尾 基…...

深度学习之特征提取

前言 深度学习就是把输入转换成一个高维的向量&#xff0c;之后利用这个向量去完成分类、回归等任务。 深度学习特征工程知识图谱 1. 特征提取的本质 核心目标&#xff1a;将原始数据→高维语义特征向量 监督驱动&#xff1a;标签决定特征提取方向 典型架构&#xff1a; …...

Gurobi 并行计算的一些问题

最近尝试用 gurobi 进行并行计算&#xff0c;即同时用多个 cpu 核计算 gurobi 的 model&#xff0c;但是发现了不少问题。总体来看&#xff0c;gurobi 对并行计算的支持并不是那么好。 gurobi 官方对于并行计算的使用在这个网址&#xff0c;并有下面的大致代码&#xff1a; i…...

堆、栈、最小堆

堆是什么 结构属性 堆是一棵完全二叉树&#xff0c;即除最后一层外&#xff0c;其他层节点均填满&#xff0c;且最后一层节点从左到右连续分布。 排序属性&#xff1a; 根据类型不同&#xff0c;堆分为&#xff1a; 最大堆&#xff08;Max-Heap&#xff09; &#xff1a;每…...

基于 Spring AI 的 HIS 系统智能化改造

【Spring AI 的背景与现状】 Spring AI 是 Spring 生态里整的一个新活儿&#xff0c;专门给开发者提供搞 AI 驱动的应用的工具和框架。虽然 Spring AI 已经鼓捣了挺长时间&#xff0c;但截至现在&#xff08;2025年2月&#xff09;&#xff0c;它还没正式发布。不过&#xff0…...

React进阶之前端业务Hooks库(五)

前端业务Hooks库 Hooks原理useStateuseEffect上述问题useState,useEffect 复用的能力练习:怎样实现一套React过程中的hooks状态 & 副作用Hooks原理 不能在循环中、条件判断、子函数中调用,只能在函数最外层去调用useEffect 中,deps 为空,执行一次useState 使用: imp…...

常见锁类型介绍

下面结合代码详细介绍 Mutex、RW Lock、Futex、自旋锁、信号量、条件变量 和 synchronized&#xff0c;并分析它们的适用场景、特点以及为什么这些锁适用于特定场景。我们将从锁的实现机制和性能特点出发&#xff0c;解释其适用性。 1. Mutex&#xff08;互斥锁&#xff09; 代…...

Java中,Scanner和System.out超时的解决方法及原理

ACM 模式的原理 在输入输出的时候&#xff0c;会先将输入输出的东西放在一个文件里&#xff0c;这个文件也叫做 IO 设备 为什么 Scanner 会慢 new 一个 Scanner &#xff0c;在 Scanner 里面调用 next 的时候&#xff0c;程序会直接访问 IO 设备。在调用一个 next 的时候&…...

一种数据高效具身操作的原子技能库构建方法

25年1月来自京东、中科大、深圳大学、海尔集团、地平线机器人和睿尔曼智能科技的论文“An Atomic Skill Library Construction Method for Data-Efficient Embodied Manipulation”。 具身操控是具身人工智能领域的一项基本能力。尽管目前的具身操控模型在特定场景下表现出一定…...

云创智城YunCharge 新能源二轮、四轮充电解决方案(云快充、万马爱充、中电联、OCPP1.6J等多个私有单车、汽车充电协议)之新能源充电行业系统说明书

云创智城YunCharge 新能源充电行业系统说明书 ⚡官方文档 ⚡官网地址 1. 引言 随着全球环境保护和能源危机的加剧&#xff0c;新能源汽车行业得到了快速发展&#xff0c;充电基础设施建设也随之蓬勃发展。新能源充电行业系统旨在提供高效、便捷的充电服务&#xff0c;满足电…...

JVM垃圾回收器深度底层原理分析与知识体系构建

一、垃圾回收的基本步骤 标记&#xff08;Marking&#xff09; 从GC Roots&#xff08;如虚拟机栈、方法区静态变量、本地方法栈等&#xff09;出发&#xff0c;遍历对象引用链&#xff0c;标记所有可达对象为存活对象&#xff0c;未被标记的则视为垃圾。此阶段需暂停用户线程&…...

30.[前端开发-JavaScript基础]Day07-数组Array-高阶函数-日期Date-DOM

JavaScript的DOM操作 &#xff08;一&#xff09; 1 什么是DOM&#xff1f; 认识DOM和BOM 深入理解DOM 2 认识DOM Tree DOM Tree的理解 3 DOM的整体结构 DOM的学习顺序 DOM的继承关系图 document对象 4 节点、元素导航 节点&#xff08;Node&#xff09;之间的导航&…...

IP、网关、子网掩码、DNS 之间的关系详解

IP、网关、子网掩码、DNS 之间的关系详解 在计算机网络中&#xff0c;IP、网关、子网掩码和 DNS 是几个关键概念&#xff0c;它们协同工作&#xff0c;共同保障网络通信的顺畅。本文将详细探讨它们之间的关系。 一、IP 地址 IP 地址是网络中设备的唯一标识&#xff0c;如同现…...

【Day50 LeetCode】图论问题 Ⅷ

一、图论问题 Ⅷ 1、dijkstra算法 堆优化 采用堆来优化&#xff0c;适合节点多的稀疏图。代码如下&#xff1a; # include<iostream> # include<vector> # include<list> # include<queue> # include<climits>using namespace std;class myco…...

结构体介绍及内存大小分配问题

结构体 一.结构体的介绍1.1结构体的声明1.2匿名结构体1.3结构的自引用1.4使用 typedef 简化结构体类型名 二.结构体内存对齐2.1内存对齐规则2.2结构体内存对齐原因2.3修改默认对齐数 在 C 语言中&#xff0c;结构体&#xff08;struct&#xff09;是一种用户自定义的数据类型&a…...

halcon 条形码、二维码识别、opencv识别

一、条形码 函数介绍 create_bar_code_model * 1.创建条码读取器的模板 * 参数一&#xff1a;通用参数的名称&#xff0c;针对条形码模型进行调整。默认值为空 * 参数二&#xff1a;针对条形码模型进行调整 * 参数三&#xff1a;条形码模型的句柄。 create_bar_code_model (…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...