当前位置: 首页 > 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 (…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!

简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求&#xff0c;并检查收到的响应。它以以下模式之一…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...